はじめに
kubeadmでクラスタを作って試したことがありまして、そのときにload-balancerだったりIngressだったりを使うのに、オンプレだと面倒だなと感じたのでEKSを試してみようというエントリーです。EKS、いーかーすーです。
試すんならGKEの方が知見も多いのでは、という気持ちもあるのですが、いろいろ事情もありまして…
環境
Linux Mint19.1 Mate 64-bit
あまり手を加えてない割とクリーンな環境です。
手順
とりあえず公式に従ってやってみます。
EKSユーザガイド
https://docs.aws.amazon.com/ja_jp/eks/latest/userguide/what-is-eks.html
awscli のインストール
ここは書いてるとおりにささっと。venv で閉じてあるので、–userはつけませんでした。
awscli のインストール
ここは書いてるとおりにささっと。venv で閉じてあるので、–userはつけませんでした。
pip install awscli --upgrade
aws configure
eksctl のインストール
ここも書いてあるとおりに。curlのところがそこそこ時間かかって不安だったのでsilentにしないほうが良いかも、という気がしました。
帯域の問題だと思いますけど…
$ curl --silent --location "https://github.com/weaveworks/eksctl/releases/download/latest_release/eksctl_$(uname -s)_amd64.tar.gz" | tar xz -C /tmp
$ sudo mv /tmp/eksctl /usr/local/bin/
$ eksctl version
[ℹ] version.Info{BuiltAt:"", GitCommit:"", GitTag:"0.6.0"}
kubectlのインストール
これも公式の通りです。
$ curl -o kubectl https://amazon-eks.s3-us-west-2.amazonaws.com/1.13.8/2019-08-14/bin/linux/amd64/kubectl
$ chmod +x ./kubectl
$ mkdir -p $HOME/bin && cp ./kubectl $HOME/bin/kubectl && export PATH=$HOME/bin:$PATH
クラスタの作成
手順通りでできてしまう。が、–nameのあと、”\”をつけずにEnterしてしまい、クラスタ構築が始まってしまう。結果としては、ちゃんと動きましたが、ワーカーノードのEC2として、m5.largeが2台起動してしまうという憂き目に。とほほ。
$ eksctl create cluster \
--name xxxx
後で確認してみたら、m5.largeが約1hourで$0.13かかっていました。その他、NAT Gatewayが2hourで$0.12というのもありましたが、これもEKS関係なのかな??
また、このときに、慌ててしまってkubeconfigを上書きしてしまい、最初にアクセスした際にエラーを出してしまいました。update-kubeconfigを実行して、ちゃんとアクセスできました。
$ aws eks update-kubeconfig
後片付け
LoadBalancerに関連付けしたサービスはないので、クラスタを削除すれば良さそうです。
$ eksctl delete cluster --name xxxx