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