Convert to Managed
Users can optionally allow the controller to takeover lifecycle management of an "Imported" Amazon EKS cluster. This allows the controller to perform all cluster lifecycle management offers capabilities: i.e. scale, add node groups, upgrade and perform any post-provision operations on the imported EKS clusters. The controller retrieves information about the imported EKS clusters to make the cluster’s infrastructure equivalent to the managed EKS clusters provisioned through the controller.
Explore our blog for deeper insights on Takeover Lifecycle Management of Amazon EKS Clusters, available here!
Requirements¶
Currently, only EKS clusters with "managed node groups" can be converted to managed clusters and the self managed node groups are ignored for lifecycle management. Customers are recommended to migrate their Kubernetes resources from the self managed node group to a new managed node group before attempting the conversion.
Important
Self Managed node groups can be added back to the EKS cluster after the conversion to managed is complete.
Unsupported Resources¶
The following resources are currently not supported for "takeover" of lifecycle management. Support for these will be added in upcoming releases.
- Node Group Taints
- Managed Add-ons
- Fargate Profiles
Convert To Managed¶
Users are allowed to convert the "imported EKS cluster" to a Managed Cluster at any point its life.
- On successful import, a clickable label Convert to Managed is available next to the imported cluster as shown in the example below. Tthis option provides a workflow for the administrators to initiate the conversion of the cluster from "imported" to "managed".
Clicking on the label, the below screen appears
- Select the Cloud Credentials and Region of the imported cluster
- Select the source cluster name from the provider to link to the imported cluster and click Convert to Managed Cluster
The system shows the below message and the user must click Yes to confirm the conversion process
Now the system saves the provided credentials against the cluster and changes the cluster type to "Amazon EKS". The managed and imported property is set to True and a declarative cluster specification gets generated for the cluster. Once complete, the controller declares the cluster as being ready for performing "lifecycle management" operations.
- On successful conversion, you will receive a success message as shown below
You can see the cluster type as Imported + Managed and the list of operations allowed on the clusters page
Refer Import EKS Cluster for more information on Convert To Managed clusters
Nodegroup Availability¶
Once the conversion is complete, the details about the managed node group and actions are available for the users.
Post Conversion Operations¶
Following are the post conversion (Day 2) operations supported on imported Amazon EKS clusters that are converted to managed:
-
Kubernetes and AMI Upgrades
- Control Plane
- Managed/self-managed node group (including custom amis)
-
Node Groups
- Add managed node groups
- Add self-managed node groups
- Scale/Drain managed node groups
- Scale/Drain self-managed node groups
-
Update
- Blueprints
- Cloud providers
- Control Plane Endpoints
- cloudwatchlogging
- Control plane labels
- Control plane tags
- Update Managed Node-group Labels, Taints, and Tags
- Rafay labels
- Toleration, Node-Selectors, and Daemonset override
-
Delete
- Cluster
- Managed node group
- Self-managed node group
Delete imported managed cluster(s)¶
When the user deletes the imported managed cluster, the controller deletes the following resources in the AWS account.
- managed and self managed nodegroups created through controller and the underlying resources
- managed nodegroups that got imported with the cluster and its underlying resources
- EKS cluster itself
The below resources are not deleted:
- The self managed nodegroups and their underlying resources that were not created through the controller
- All underlying cluster resources not created via the controller (CloudFormation Stack, VPCs, IAM roles etc.)
Refer IAM policy to review the required permission for the IAM role to convert the imported EKS cluster to managed
RCTL to Convert EKS Imported Cluster(s)¶
Users can also use RCTL CLI to convert imported EKS clusters to managed.
./rctl convert2managed cluster eks <controller-cluster-name> --source-cluster <imported-cluster> --region <region-name> --credential <credential_name>
The name of the imported cluster on controller is referred as the controller-cluster-name
The name of the cluster on AWS that you wish to import is referred to as the imported cluster
Wait Flag¶
When a user attempts to convert an imported EKS cluster to managed, they can utilize the --wait
flag to ascertain the success or failure of the operation. By incorporating the --wait
flag, the RCTL command will patiently wait for the conversion process to conclude, only returning control once the process is finished or if an error is encountered. This ensures that the command precisely communicates whether the conversion process was successful or not, delivering the essential error messages required for effective detection and resolution.
```
./rctl convert2managed cluster eks <controller-cluster-name> --source-cluster <imported-cluster> --region <region-name> --credential <credential_name> --wait