のべラボ.blog

Tech Blog | AWS や サーバーレスやコンテナ などなど

Amazon Linux 2 に minikube をインストールする方法

この記事に記載されている方法は、minikube 1.26 以降のバージョンでは適用できませんのでご注意ください。 詳細は、下記の v1.26.0 のリリース情報をご参照ください。

Releases · kubernetes/minikube · GitHub


こちら minikube start の内容を参考に実施しました。 minikube start の記載だけでは不十分な箇所があったので、迷わずインストールできるよう手順をこの記事に書いていきます。

まずは、AWS で EC2 インスタンスを作成します。

この時、minikube start に記載されている次の要件を満たすため、インスタンスタイプは t3.small で EBSボリュームの容量も 20 GB 以上にしておきます。(このスペックは AWS の 無料枠 ではありませんのでご注意ください。)

  • 2 CPUs or more
  • 2GB of free memory
  • 20GB of free disk space

インスタンスが作成されたら、接続します。 私は Session Manager で接続しましたが、ssh を使って ec2-user で接続してもかまいません。

接続後、次の手順を実施していきます。

Docker をインストールする

sudo yum update -y
sudo amazon-linux-extras install -y docker
sudo systemctl enable docker
sudo systemctl start docker

OSユーザーをdockerグループに追加

次の例では OSユーザーを ssm-user にしています。

sudo gpasswd -a ssm-user docker

この後、いったんログアウトして、もう一度ログインします。

minikube のインストール

いよいよ minikube をインストールします。 conntrack のインストールも必要です。

curl -LO https://github.com/kubernetes/minikube/releases/download/v1.25.2/minikube-linux-amd64
sudo install minikube-linux-amd64 /usr/local/bin/minikube
sudo yum install -y conntrack

minikubeの起動

インストールが終了したら、起動します。 次の例では --vm-driver=none で起動しています。

minikube start --vm-driver=none

kubectl の設定

次の例では、minikube の handbook の kubectl の内容を参考に、シンボリックリンクを使って kubectl を使うようにしています。

sudo ln -s $(which minikube) /usr/local/bin/kubectl

kubectl を試してみます。

kubectl get all

結果の例:

NAME                 TYPE        CLUSTER-IP   EXTERNAL-IP   PORT(S)   AGE
service/kubernetes   ClusterIP   10.96.0.1    <none>        443/TCP   2m

これで、完了です。 一度手順が確立できれば、簡単に、いつでもすぐに再構築できますね。


/* -----codeの行番号----- */