Recommended setup for utilizing EFS with CloudBees Core running on Kubernetes

Issue

Recommended setup for utilizing EFS with CloudBees Core running on Kubernetes

Environment

Resolution

As stated in the Supported platforms:

CloudBees does not recommend running CloudBees CI on Amazon EFS. CloudBees customers have observed multiple severe performance issues that have been confirmed by Amazon Support as expected behavior on EFS.

CloudBees recommends using Amazon Elastic Block Store (Amazon EBS) as an alternative. The EBS StorageClass handles the failover of a single machine, if enough spare capacity is available in the cluster, or auto-scaling is enabled and allowed for scale-up.

The following KB guides you in using your EFS storage with CloudBees CI even if it is not a recommended storage for the product to work correctly.

Create an EFS filesystem from the AWS console

Step 1 - Configure file system access

  • VPC
  • Availability Zones

### Step 2 - Choose optional settings

  1. Choose the performance mode. It is recommended that you use General Purpose to achieve best performance with CloudBees Core.
  2. Choose the throughput mode. It is recommended that you use the following settings to achieve best performance with CloudBees Core:
  3. Provisioned
  4. Throughput (MiB/s) 160

Step 3 - Review and create

It is recommended that you choose the Create File System setting for CloudBees Core.

Configure NFS as your desired storage for Kubernetes

The efs-provisioner, which has been used for a while, has been deprecated. At the moment of writing this article, there is a new Amazon EFS CSI driver, but the problem with this solution is that it does not dynamically create a PV from a PVC. CloudBees Core CI expects your StorageClass to automatically create a PV once a PVC is created. This is a requeriment for the product to work correctly with the volume provisioning.

In the current state, CloudBees CI recommends to deploy nfs-subdir-external-provisioner. When deploying ensure that nfs.server is filled with the DNS of the EFS server.

Have more questions?

0 Comments

Please sign in to leave a comment.