The Kubernetes Current Blog

How to Standardize Kubernetes Clusters with EKS Blueprints and Rafay

EKS Blueprints helps companies configure Amazon Elastic Kubernetes Service (Amazon EKS) clusters that are fully bootstrapped with the operational software that is needed to deploy and operate workloads. Once an EKS blueprint is configured, you can use it to deploy clusters consistently across multiple AWS accounts and regions. EKS Blueprints build on existing work from the EKS open source community, including using the terraform-aws-eks module for cluster provisioning.

Rafay is excited to work with Amazon to lower the effort associated with bootstrapping software into an Amazon EKS cluster with proper configuration. We’ve built add-ons that allow customers to use the Rafay Kubernetes Operations Platform (KOP) with EKS Blueprints.

This add-on deploys KOP for Amazon EKS management and operations. With KOP, your platform and site reliability engineering (SRE) teams can deploy, operate, and manage the lifecycle of Kubernetes clusters and containerized applications in both AWS Cloud and on-premises environments.

With the Rafay KOP, enterprises use a single operations platform to manage the lifecycle of Amazon EKS clusters and containerized applications. You can speed up the deployment of new applications to production, reduce application downtimes, and reduce security and compliance risks associated with your infrastructure.

Rafay automates the deployment of containerized applications and enables access to Kubernetes clusters through a zero-trust connectivity model. A unified dashboard provides enterprise-grade capabilities, such as monitoring across AWS accounts and regions, role-based access control, and governance.

How to Install the Rafay Add-On for EKS Blueprints

The add-on itself is a typescript package hosted in npm.

You can install it using npm and use it in your implementation of the EKS Blueprints for CDK. But there are some prerequisites:

  • An email address which will be used to create your account on Rafay Platform
  • Organization name which will be used to create your tenant
  • First name
  • Last name
  • Name of the EKS Cluster
  • Rafay Blueprint to be associated with the EKS Cluster
  • Password (Optional) – If not specified, a random password will be generated and sent to the email. The Password can also be specified as a defined secret in AWS Secret Manager (get started here). The secret must contain the following key: password, which is the password to be used when creating the account in Rafay.

Using the Rafay Add-On in your EKS Blueprints for CDK

Before you can use the Rafay add-on with your EKS Blueprints for CDK implementation, please follow the instructions in the AWS Quickstart Repo to initialize your CDK project and include the cdk-eks-blueprint dependency.

Add the @rafaysystems/rafay-eks-blueprints-addon package to your project and save it in your package.json file by running the following command:

npm install @rafaysystems/rafay-eks-blueprints-addon

Import the add-on in your bin/<your-main-file>.ts file, create a rafayConfigobject and use that to create a new RafayClusterAddOn object to the array of AddOns to include in your cluster:

import * as rafayCluster from '@rafaysystems/rafay-eks-blueprints-addon';

let rafayConfig = {
    organizationName: "",
    email: "",
    firstName: "",
    lastName: "",
    password: "",
    passwordSecret: ""
    blueprintName: ""
 } as rafayCluster.RafayConfig

const RafayCluster = new rafayCluster.RafayClusterAddOn(rafayConfig)

const app = new cdk.App();

// AddOns for the cluster.
const addOns: Array= [
    new blueprints.addons.ArgoCDAddOn,
    new blueprints.addons.CalicoAddOn,
    new blueprints.addons.ClusterAutoScalerAddOn,
    new blueprints.addons.ContainerInsightsAddOn,
    new blueprints.addons.AwsLoadBalancerControllerAddOn(),
    new blueprints.addons.VpcCniAddOn(),
    new blueprints.addons.CoreDnsAddOn(),
    new blueprints.addons.KubeProxyAddOn(),
    new blueprints.addons.XrayAddOn(),
    RafayCluster // Add the instance of the AddOn to the array of cluster AddOns you wish to install
];

This is all you need to do to take advantage of Rafay’s centralized multi-cluster management, monitoring, security, and governance withEKS Blueprints for CDK!

Streamline Amazon EKS Operations with Rafay

Rafay’s Kubernetes Operations Platform delivers the deepest EKS integration in the market, enabling enterprises to operate Amazon EKS clusters across accounts, cloud regions, and data centers. KOP delivers the automation, security, visibility, and governance that enterprise platform teams expect in production-grade EKS environments running mission-critical, containerized apps. For enterprises looking for a fully-managed platform, the Rafay KOP provides an automated approach to cluster standardization through a managed cluster blueprint feature with drift detection and policy management.

To see how to use Rafay to easily create and apply cluster blueprints across your fleet of EKS and EKS-D clusters across AWS, data centers, and the edge, sign up for a free trial today!

Author

Trusted by leading companies