MinikubeでKubernetesクラスタが動く環境を作る
Minikubeではローカル環境にKubernetesクラスタを作成することができます。
GKE等のサービスと変わらない感覚でkubectl
コマンドを叩けるので結構便利でした。
マルチノードに対応しているわけではないので、それなりに本番環境とはマニフェストの差異が出るとは思いますが、とりあえず動かしてみる目的であればローカルで動くというのは大きなメリットだと思います。
準備
- VirtualBoxのインストール
ここからインストールできる。
6.0.4である程度の動作は確認済み。 - minikubeのインストール
Macなら以下で入る。その他はこちら。
$ brew cask install minikube
minikubeの起動
$ minikube --vm-driver virtualbox start
vm-driverの指定が必須。面倒なのでaliasを指定してある。
alias 'minikube start'='minikube --vm-driver virtualbox start'
この時点ではリモートのDockerイメージを利用する設定になっているので、以下のコマンドを叩いておきます。
$ eval $(minikube docker-env)
これを行うことによって、ホストマシンの docker
コマンドでminikube VM内のDockerデーモンと通信できるようになり、ローカルでビルドしたイメージがそのまま使えるようになります。
以下のコマンドで戻せます。
$ eval $(minikube docker-env -u)
停止
$ minikube stop
kubernetes contextの切り替え
# 一覧 $ kubectl config view # minikubeに切り替え $ kubectl config use-context minikube