はじめに
以下の記事でWindows機にminikubeをインストールした続きです。
同様の環境からk8sを操作するコマンドであるkubectlをインストールする流れです。
環境情報
- Microsoft Windows 10 Enterprise
- VirtulBox 5.1
- CYGWIN_NT-10.0
- Kubernetes v1.17
kubectlをインストールする
Windows機に搭載されているcurlコマンドを利用します。
$ which curl /cygdrive/c/WINDOWS/system32/curl
インストール用リンクは以下に記載がありました。
curlコマンドを押下すると
$ curl -LO https://storage.googleapis.com/kubernetes-release/release/v1.17.0/bin/windows/amd64/kubectl.exe ...
インストールが完了しました。
パスを通す
そのままではホームディレクトリ配下にあるので
$ ls kubectl.exe $ file kubectl.exe kubectl.exe: PE32+ executable (console) x86-64 (stripped to external PDB), for MS Windows
今回はminikube.exeがある場所に配置しました。(既にパスを通しているので)
$ cp -r kubectl.exe /cygdrive/c/Program\ Files/Kubernetes/Minikube/
上記ディレクトリにコピーするためには管理者権限が必要なのでご注意ください。
パスが通ったことが確認できます。
$ which kubectl /cygdrive/c/Program Files/Kubernetes/Minikube/kubectl
kubectlコマンドの利用
現在利用中のコンテキストを確認するとminikubeが選択されています。
$ kubectl config get-contexts CURRENT NAME CLUSTER AUTHINFO NAMESPACE * minikube minikube minikube
この状態でサンプルのポッド(k8sでの最小単位)を起動します。
$ kubectl run hello-minikube --image=gcr.io/google_containers/echoserver:1.4 --port=8080 ... deployment.apps/hello-minikube created
確認すると以下のようにポッドが作成されています。
$ kubectl get pod NAME READY STATUS RESTARTS AGE hello-minikube-5688c64fd7-b9wbt 1/1 Running 0 Xs
これを以下コマンドで外部に公開し
$ kubectl expose deployment hello-minikube --type=NodePort service/hello-minikube exposed
以下コマンドでURLを取得すれば
$ minikube service hello-minikube --url http://192.168.99.100:30140
ブラウザ上で
終わり
minikube service hello-minikube --url
にて標準出力に何も表示されない場合は以下のように停止して
$ minikube stop * Stopping "minikube" in virtualbox ... * "minikube" stopped.
再起動をかけるとうまくいくことがあります。
minikubeとkubectlが利用できれば、一通りのことはできるのでぜひ色々試してみてください。
以上、ご参考になれば幸いです。