LinuxのKindでKubernetesを使うとネットワークがローカルホスト前提になるため、リモートからしずらい。
だったら中に入ってやればいい。LinuxとかMacでも同じことができるのだろうが、一番簡単なのはWindows。
結構重いので物理マシンをお勧めする。メモリ8GB程度を積んだノートでも動く。
Docker Desktop for Windows
https://docs.docker.jp/docker-for-windows/install.html
事前にここからLinuxカーネル更新をダウンロードしてインストール
https://docs.microsoft.com/ja-jp/windows/wsl/install-win10#step-4—download-the-linux-kernel-update-package
これでdockerとkubectl v1.19コマンドがインストールされる
Kind-コンテナ基盤
https://github.com/kubernetes-sigs/kind/releases
最新版をダウンロードして、C:\binなどにおく。パスを通しておくと便利
dockerにもKubernetesが入っているのだが、Kindを使う。
Minio -オブジェクトストレージ
https://docs.min.io/docs/minio-docker-quickstart-guide.html
C:Minioにバイナリを置いておく。オプションを入れなくても単に実行するだけで
http://localhost:9000
KeyとSecretは共にminioadminnで動作する
chocolatey – パッケージ管理ツール
https://chocolatey.org/install#installing-chocolatey
Windowsのhomebrewみたいなもの。これがあると簡単にパッケージがインストールできる。
PowerShellを起動してインストール文字列をコピペしておわり。
kubectl (最新版。必要かどうかは作成するkubernetesバージョンによる。1.21以上のときは必須)
https://kubernetes.io/ja/docs/tasks/tools/install-kubectl/
choco install -y kubernetes-cli
helm
https://helm.sh/ja/
choco install -y kubernetes-helm
Skaffold
https://skaffold.dev/docs/install/
choco install -y skaffold
ここまでできたら、コマンドプロンプトで
kind create cluster
でおしまい。
kubectl get nodeで1つだけノードがでてくる。
消すときはkind delete clusterで削除。
ちなみにdockerを入れなくてもVMware WorkstationとKindとkubectlがあればvctlコマンドでkubernetes環境はできる。
https://docs.vmware.com/jp/VMware-Workstation-Pro/16.0/com.vmware.ws.using.doc/GUID-1CA929BB-93A9-4F1C-A3A8-7A3A171FAC35.html
これでコンテナ関連で最低限必要なツールは揃ったのではと思う。まぁあとはgit、SidekickやVisual Studio Codeがあれば十分かなと。
以下のレポジトリにLinuxとWindowsでKubernetes環境ができるようになった。Linuxは特に準備はいらないが、Windows10は、Docker/KIND/Ubuntu 2004がインストールされていればロードバランサーやCSIストレージが動作する。ただし、ロードバランサーは、Docker内つまりローカルホストからしかアクセスできない。Windows10はともかくLinuxもウィンドウシステムをいれてブラウザが利用できるようにしてあると便利。
https://github.com/masezou/k8s-study