Open2

Minikubeを使用してローカル環境でKubernetesを動かしてべんきょ

Kumamoto-HamachiKumamoto-Hamachi

Minikubeってなに?

Minikubeはローカル環境でKubernetesを簡単に実行するためのツール

minikube start
[kumamoto ~]$ minikube start
😄  Ubuntu 22.04 上の minikube v1.31.2
✨  docker ドライバーが自動的に選択されました
📌  root 権限を持つ Docker ドライバーを使用
👍  minikube クラスター中のコントロールプレーンの minikube ノードを起動しています
🚜  ベースイメージを取得しています...
💾  ロード済み Kubernetes v1.27.4 をダウンロードしています...
    > gcr.io/k8s-minikube/kicbase...:  447.62 MiB / 447.62 MiB  100.00% 21.62 M
    > preloaded-images-k8s-v18-v1...:  393.21 MiB / 393.21 MiB  100.00% 19.58 M
🔥  docker container (CPUs=2, Memory=7900MB) を作成しています...
🐳  Docker 24.0.4 で Kubernetes v1.27.4 を準備しています...
    ▪ 証明書と鍵を作成しています...
    ▪ コントロールプレーンを起動しています...
    ▪ RBAC のルールを設定中です...
🔗  bridge CNI (コンテナーネットワークインターフェース) を設定中です...
    ▪ gcr.io/k8s-minikube/storage-provisioner:v5 イメージを使用しています
🔎  Kubernetes コンポーネントを検証しています...
🌟  有効なアドオン: storage-provisioner, default-storageclass

❗  /usr/local/bin/kubectl のバージョンは 1.22.2 で、Kubernetes 1.27.4 と互換性がないかもしれません。
    ▪ kubectl v1.27.4 が必要ですか? 'minikube kubectl -- get pods -A' を試してみてください
🏄  終了しました!kubectl がデフォルトで「minikube」クラスターと「default」ネームスペースを使用するよう設定されました
[kumamoto ~]$ 

Deploymentをつくってみる

単純なHTTPサーバーであるechoserverという既存のイメージを使用して、Kubernetes Deploymentを作る。

kubectl create deployment hello-minikube --image=registry.k8s.io/echoserver:1.10

Serviceとして公開する

kubectl expose deployment hello-minikube --type=NodePort --port=8080

※--type=NodePortオプションで、Serviceのタイプを指定。

Podが起動しているか確認

kubectl get pod