System requirements for installing CloudBees CI on modern cloud platforms on EKS

The following items are required to install CloudBees CI on EKS:

Amazon Web Services (AWS) requirements

The following items are required:

  • An AWS account.

  • An AWS EKS cluster with the following requirements:

    • Runs a currently supported version of Kubernetes. See Supported platforms for CloudBees CI on modern cloud platforms.

    • Has nodes that have at least 2 CPUs and 4 GiBs of memory. Be sure that the cluster meets the sizing and scaling requirements in CloudBees CI Reference Architecture - Kubernetes on AWS EKS. NOTE: Having fewer masters on each VM means that losing a VM unexpectedly does not impact service.

    • Has N+1 worker nodes, where N is the number of Managed Masters and +1 is the CloudBees operations center.

    • Has network access to container images, either a public Docker Hub or a private Docker Registry.

When installing CloudBees CI on EKS on AWS Outposts, there are some additional considerations:

  • Your EKS nodes must be created in the Outpost subnet.

  • You are unable to create an ELB in the same subnet as the Outpost, but it needs to be in the same VPC.

  • You must pre-create the volumes you intend to use and create the persistent volumes that connect to them.

Requirements for the machine where the installation is performed

You must have the following on the machine where you plan to perform the installation:

  • The kubectl application. Follow the instructions on the Kubernetes website to install it.

  • helm. Follow the instructions in the Helm Quickstart Guide to install the Helm client.

  • A valid kubernetes context to interact with the EKS cluster (link).

Validating system requirements

  • Run the command

kubectl version

and ensure the server version is displayed.

Client Version: version.Info{Major:"1", Minor:"19", GitVersion:"v1.19.3", GitCommit:"1e11e4a2108024935ecfcb2912226cedeafd99df", GitTreeState:"clean", BuildDate:"2020-10-14T12:50:19Z", GoVersion:"go1.15.2", Compiler:"gc", Platform:"darwin/amd64"}
Server Version: version.Info{Major:"1", Minor:"19", GitVersion:"v1.19.3", GitCommit:"1e11e4a2108024935ecfcb2912226cedeafd99df", GitTreeState:"clean", BuildDate:"2020-10-14T12:41:49Z", GoVersion:"go1.15.2", Compiler:"gc", Platform:"linux/amd64"}
  • Ensure you can run the helm command, for example by calling helm version.

After you ensure that your environment is ready to install CloudBees CI on modern cloud platforms, be sure to set up the prerequisites for using Helm to install CloudBees CI.