EKSとは?

K8sのマネージドサービス

K8sとは?

eksctlとは?

AWS公式のeksクラスター構築コマンドラインツール

開始方法

  • EKSサービスロール作成
  • EKSクラスター用VPC作成

要素

  • EKSコントロールプレーン:VPCに紐づく 多:1の関係

hanson

Cloud9上で作業

eksctl,kubectl導入

curl -L "https://github.com/weaveworks/eksctl/releases/latest/download/eksctl_$(uname -s)_amd64.tar.gz" | tar xz -C /tmp
sudo mv /tmp/eksctl /usr/local/bin

sudo curl -L -o /usr/local/bin/kubectl https://amazon-eks.s3.us-west-2.amazonaws.com/1.17.7/2020-07-08/bin/linux/amd64/kubectl

クラスター作成

eksctl create cluster \
   --name=ekshandson \
   --version 1.17 \
   --nodes=3 --managed \
   --region us-east-1 --zones us-east-1a,us-east-1c
sudo yum -y install jq bash-completion
sudo curl -L -o /etc/bash_completion.d/docker https://raw.githubusercontent.com/docker/cli/master/contrib/completion/bash/docker
sudo curl -L -o /usr/local/bin/docker-compose "https://github.com/docker/compose/releases/download/1.26.2/docker-compose-$(uname -s)-$(uname -m)"

eksctl create cluster \
   --name=ekshandson \
   --version 1.17 \
   --nodes=3 --managed \
   --region us-east-1 --zones us-east-1a,us-east-1c

HELP

eksctl create --help
eksctl create cluster --help


eksctl create cluster \
--name=ekshandson \
--version 1.17 \
--node-type t3.small


kubectl get namespace
NAME              STATUS   AGE
default           Active   12m
kube-node-lease   Active   12m
kube-public       Active   12m
kube-system       Active   12m

kubectl get pod -A
NAMESPACE     NAME                       READY   STATUS    RESTARTS   AGE
kube-system   aws-node-94k4g             1/1     Running   0          10m
kube-system   aws-node-x7jhq             1/1     Running   0          10m
kube-system   coredns-75b44cb5b4-bvqdz   1/1     Running   0          18m
kube-system   coredns-75b44cb5b4-pnzmp   1/1     Running   0          18m
kube-system   kube-proxy-5dfbq           1/1     Running   0          10m
kube-system   kube-proxy-8p2ps           1/1     Running   0          10m

coredns : core dns つまり名前解決関連のコンポーネント kube-proxy : Kubernetes サービスを提供する aws-node : Podにネットワーク機能を提供