LoginSignup
0
0

More than 3 years have passed since last update.

minikubeをmacOSにインストールする[2020年1月版]

Posted at

去年の年末あたりからそろそろk8sから逃れられないと感じ始めたので2020年は遂にk8sを始めます。
ということで今年最初の記事はmacOSにminikubeをインストールするところまでです。

macOSにminikubeをインストールする流れは以下の通りです。

  1. kubectlのインストール
  2. minikubeのインストール

kubectlのインストール

以下にドキュメントに従うと最新バージョンがインストールされることになるが
最初からkubectlもバージョン管理した方がいいと思うのでkubectlのバージョンを管理するツールを探すところから始めましょう

それで見つかった記事がこれ
https://medium.com/faun/using-different-kubectl-versions-with-multiple-kubernetes-clusters-a3ad8707b87b

上記の記事で紹介されてたのがasdf

asdf

asdfを使って最新の安定バージョン(2020年1月4日現在v1.17.0)のkubectlをインストールします。
※厳密にいうとasdfのkubectlプラグインを使ってになります。

ちなみに最新の安定バージョンの情報はここにあります
https://storage.googleapis.com/kubernetes-release/release/stable.txt

$ git clone https://github.com/asdf-vm/asdf.git ~/.asdf --branch v0.7.6
$ echo -e '\n. $HOME/.asdf/asdf.sh' >> ~/.bashrc
$ echo -e '\n. $HOME/.asdf/completions/asdf.bash' >> ~/.bashrc
$ source ~/.bashrc
$ asdf plugin-add kubectl
$ asdf install kubectl 1.17.0
$ asdf list kubectl
  1.17.0

とりあえずグローバルでv1.17.0を使うようにします

$ asdf global kubectl 1.17.0
$ kubectl version --short --client
Client Version: v1.17.0

minikubeのインストール

minikubeは単一のバイナリファイルとして用意されているのでhomebrewを使わずに以下のコマンドでインストールします

ちなみに2020年1月4月現在以下のコマンドだとv1.6.2のminikubeがインストールされます

$ curl -LO https://storage.googleapis.com/minikube/releases/latest/minikube-darwin-amd64 && sudo install minikube-darwin-amd64 /usr/local/bin/minikube
$ minikube version
minikube version: v1.6.2
commit: 54f28ac5d3a815d1196cd5d57d707439ee4bb392

kubectlのバージョンとk8sのバージョンには以下のようの関係性があるので注意が必要です!!
※だからこそkubectlのバージョン管理が必要になってきます

You must use a kubectl version that is within one minor version difference of your cluster. For example, a v1.2 client should work with v1.1, v1.2, and v1.3 master. Using the latest version of kubectl helps avoid unforeseen issues.

つまり今回kubectlのバージョンがv1.17.0なのでk8sのバージョンはv1.16.x 〜 v1.18.xであるべきということです。

とりあえずminikubeのv1.6.2のk8sのバージョンは確認します

$ kubectl get nodes
NAME       STATUS   ROLES    AGE     VERSION
minikube   Ready    master   5m45s   v1.17.0

単純にminikube startしたらv1.17.0が入ってくれました。

ただ少し調べてみるとminikube start時にk8sのバージョンを指定することができるようなので以下のコマンドでminikubeで作られるk8sのバージョンをv1.17.0に指定しました

$ minikube start --kubernetes-version v1.17.0
$ kubectl get nodes
NAME       STATUS   ROLES    AGE   VERSION
minikube   Ready    master   28m   v1.17.0

とりあえずmacOS上にk8sクラスタ環境ができました。
この環境を使って今後色々試していきたいと思います。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0