github.com/imran-kn/cilium-fork@v1.6.9/Documentation/gettingstarted/k8s-install-eks.rst (about) 1 .. only:: not (epub or latex or html) 2 3 WARNING: You are looking at unreleased Cilium documentation. 4 Please use the official rendered version released here: 5 http://docs.cilium.io 6 7 .. _k8s_install_eks: 8 9 *********************** 10 Installation on AWS EKS 11 *********************** 12 13 Create an EKS Cluster 14 ===================== 15 16 The first step is to create an EKS cluster. This guide will use `eksctl 17 <https://github.com/weaveworks/eksctl>`_ but you can also follow the `Getting 18 Started with Amazon EKS 19 <https://docs.aws.amazon.com/eks/latest/userguide/getting-started.html>`_ guide. 20 21 Prerequisites 22 ------------- 23 24 Ensure your AWS credentials are located in ``~/.aws/credentials`` or are stored 25 as `environment variables <https://docs.aws.amazon.com/cli/latest/userguide/cli-environment.html>`_ . 26 27 Next, install `eksctl <https://github.com/weaveworks/eksctl>`_ : 28 29 .. tabs:: 30 .. group-tab:: Linux 31 32 .. parsed-literal:: 33 34 curl --silent --location "https://github.com/weaveworks/eksctl/releases/download/latest_release/eksctl_$(uname -s)_amd64.tar.gz" | tar xz -C /tmp 35 sudo mv /tmp/eksctl /usr/local/bin 36 37 .. group-tab:: MacOS 38 39 .. parsed-literal:: 40 41 brew install weaveworks/tap/eksctl 42 43 Ensure that aws-iam-authenticator is installed and in the executable path: 44 45 .. parsed-literal:: 46 47 which aws-iam-authenticator 48 49 If not, install it based on the `AWS IAM authenticator documentation 50 <https://docs.aws.amazon.com/eks/latest/userguide/install-aws-iam-authenticator.html>`_ . 51 52 Create the cluster 53 ------------------ 54 55 Create an EKS cluster with ``eksctl`` see the `eksctl Documentation 56 <https://github.com/weaveworks/eksctl>`_ for details on how to set credentials, 57 change region, VPC, cluster size, etc. 58 59 .. code:: bash 60 61 eksctl create cluster -n test-cluster -N 0 62 63 You should see something like this: 64 65 .. code:: bash 66 67 [ℹ] using region us-west-2 68 [ℹ] setting availability zones to [us-west-2b us-west-2a us-west-2c] 69 [...] 70 [✔] EKS cluster "test-cluster" in "us-west-2" region is ready 71 72 73 Prepare & Deploy Cilium 74 ======================= 75 76 .. include:: k8s-install-download-release.rst 77 78 Generate the required YAML file and deploy it: 79 80 .. code:: bash 81 82 helm template cilium \ 83 --namespace kube-system \ 84 --set global.cni.chainingMode=aws-cni \ 85 --set global.masquerade=false \ 86 --set global.tunnel=disabled \ 87 --set global.nodeinit.enabled=true \ 88 > cilium.yaml 89 kubectl create -f cilium.yaml 90 91 Scale up the cluster 92 ==================== 93 94 .. code:: bash 95 96 eksctl get nodegroup --cluster test-cluster 97 CLUSTER NODEGROUP CREATED MIN SIZE MAX SIZE DESIRED CAPACITY INSTANCE TYPE IMAGE ID 98 test-cluster ng-25560078 2019-07-23T06:05:35Z 0 2 0 m5.large ami-0923e4b35a30a5f53 99 100 .. code:: bash 101 102 eksctl scale nodegroup --cluster test-cluster -n ng-25560078 -N 2 103 [ℹ] scaling nodegroup stack "eksctl-test-cluster-nodegroup-ng-25560078" in cluster eksctl-test-cluster-cluster 104 [ℹ] scaling nodegroup, desired capacity from 0 to 2 105 106 .. include:: k8s-install-validate.rst