はじめに
自分用のメモです。
ローカルのMacからEKSに繋げられるようにしたかったので、kubectlとeksctlの導入手順をメモとして記載します。
実行環境
ローカル
- macOS Catalina(10.15.3)
- zhs + prezto
- aws-cli/1.18.24 Python/3.8.2 Darwin/19.3.0 botocore/1.15.24
- Homebrew 2.2.10
EKS
- 1.14
kubectlインストール
書いて気づきました。。eksctlをインストールすれば、kubectlが自動的に入ることを。。。
eksctlを入れる方はここはスキップでOKです。
kubectlインストール
ここの手順に従います。
バイナリはK8s公式のものでもいいようです。
落としたバイナリは~/$HOME/.local/binにインストールしたい派なのでAWSの手順とは少し変えます。
$ curl -o kubectl https://amazon-eks.s3-us-west-2.amazonaws.com/1.14.6/2019-08-22/bin/darwin/amd64/kubectl
$ chmod +x ./kubectl
$ mkdir -p $HOME/.local/bin && cp ./kubectl $HOME/.local/bin/kubectl
(オプション).zshrcにまだ~/$HOME/.local/binへのパスが通ってない場合は以下を実行
$ echo 'export PATH=$PATH:$HOME/.local/bin' >> ~/.zshrc
$ zsh -l
ちゃんと使えるか確認します。大丈夫ですね。
$ kubectl version --short --client
Client Version: v1.14.7-eks-1861c5
kubeconfigの作成
kubeconfigを作成します。region-codeとcluster_nameは自分の環境にあわせます。
aws eks --region region-code update-kubeconfig --name cluster_name
インストールできたか確認します。おっけーですね。
kubectl get svc
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
kubernetes ClusterIP 10.100.0.1 <none> 443/TCP 44h
kubectlコマンドの補完
K8s公式に載ってました。
echo "if [ $commands[kubectl] ]; then source <(kubectl completion zsh); fi" >> ~/.zshrc
K8s初心者の私にはすごい便利です。
$ kubectl get n
namespaces networkpolicies.networking.k8s.io
networkpolicies.extensions nodes
eksctlのインストール
eksctlのインストール
ここに従ってインストールしていきます。
Weaveworks Homebrew tap をインストールします。
$ brew tap weaveworks/tap
eksctl をインストールします。
$ brew install weaveworks/tap/eksctl
インストールできたか確認します。おっけーですね。
$ eksctl version
0.15.0
インストール後の設定
kubectlをインストールした際に行ったことをやればおっけーです。
kubectlコマンドの補完も必要に応じてどうぞ。
まとめ
最初にeksctlのインストール手順調べればよかった。。。みなさんはお気をつけを!