Kubernetes環境をローカルに作成する
ローカル環境にKubernetesを試すことができる環境を用意し、実践的にKubernetesを学びたい方向けの記事です。
CKADなどKubernetesに関する資格は全て、実践型のテストなので、実現したいことに対して、スラスラコマンドを打つことが必要になります。
てか、スラスラ打てないと、時間が足りなくなっちゃいます。。。泣
インストール
では、早速必要なツールの minikube をインストールしていきましょう。
Windowsユーザーの方は、こちらからインストーラーを取得してインストールしてください。
# Brew Package Managerを利用している場合
brew install minikube
# その他(for x86 = Intel)
curl -LO https://storage.googleapis.com/minikube/releases/latest/minikube-darwin-amd64
sudo install minikube-darwin-amd64 /usr/local/bin/minikube
# その他(for ARM = M1)
curl -LO https://storage.googleapis.com/minikube/releases/latest/minikube-darwin-arm64
sudo install minikube-darwin-arm64 /usr/local/bin/minikube
以下のコマンドを実行し、同様のアウトプットが返ってくればインストールができています。
minikube version
#-- output ---#
minikube version: v1.20.0
commit: c61663e942ec43b20e8e70839dcca52e44cd85ae
では、次にVMドライバーをインストールします。
※今回はdockerを利用します。
brew install --cask docker
brew install docker
※Windowsユーザーは VirtualBoxをご利用ください。dockerをvirtualboxに読み替えて実施してください。
インストール後の動作確認
インストールが完了したらDockerを立ち上げるため「Command」+ 「スペース」を押下して、「Docker」と入力し、Enterキーを押下してください。
Dockerが立ち上がりましたら、Terminalより、以下のコマンドを実行することでminikubeを立ち上げてください。
minikube start --driver=docker
#-- output ---#
😄 Darwin 11.2.3 (arm64) 上の minikube v1.20.0
✨ プロフィールを元に、 docker ドライバを使用します
👍 コントロールプレーンのノード minikube を minikube 上で起動しています
🚜 Pulling base image ...
💾 Kubernetes v1.20.2 のダウンロードの準備をしています
> preloaded-images-k8s-v10-v1...: 514.95 MiB / 514.95 MiB 100.00% 10.33 Mi
> gcr.io/k8s-minikube/kicbase...: 324.50 MiB / 324.50 MiB 100.00% 4.27 MiB
> gcr.io/k8s-minikube/kicbase...: 324.50 MiB / 324.50 MiB 100.00% 9.13 MiB
🔄 既存の docker container を "minikube" のために再起動しています...
🐳 Docker 20.10.5 で Kubernetes v1.20.2 を準備しています...
🔎 Kubernetes コンポーネントを検証しています...
▪ Using image gcr.io/k8s-minikube/storage-provisioner:v5
▪ Using image kubernetesui/dashboard:v2.1.0
▪ Using image kubernetesui/metrics-scraper:v1.0.4
🌟 有効なアドオン: storage-provisioner, default-storageclass, dashboard
🏄 Done! kubectl is now configured to use "minikube" cluster and "default" namespace by default
上記のoutputのようにコマンド実行後に出力された場合、minikubeは起動されています。kubectl コマンドを利用してローカル環境で Kubernetesクラスターが起動していることを確認してください。
kubectl cluster-info
#-- output ---#
Kubernetes control plane is running at https://127.0.0.1:50117
KubeDNS is running at https://127.0.0.1:50117/api/v1/namespaces/kube-system/services/kube-dns:dns/proxy
To further debug and diagnose cluster problems, use 'kubectl cluster-info dump'.
上記のようにクラスターの情報が返ってくれば、ローカルのKubernetes環境が準備完了になります。
私の方でCKADの試験を用意しましたので、もしよければCKAD対策に利用してみてください。