Convert kro lab to managed Amazon EKS Capabilities for kro and ACK#1874
Open
nameprabhat wants to merge 1 commit into
Open
Convert kro lab to managed Amazon EKS Capabilities for kro and ACK#1874nameprabhat wants to merge 1 commit into
nameprabhat wants to merge 1 commit into
Conversation
…he self-managed Helm/IRSA ACK controllers and the in-cluster helm install of kro with fully managed Amazon EKS Capabilities (type=ACK and type=KRO). Updates English and Japanese docs to reflect the managed model.
✅ Deploy Preview for eks-workshop ready!
To edit notification comments on pull requests, go to your Netlify project configuration. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
PR Description
What
Converts the
automation/controlplanes/krolab from self-managed controllers to fully managed Amazon EKS Capabilities:helm install krostep with a managed capability (type = KRO). Amazon EKS runs the kro controller and installs the kro CRDs; there is no controller to install, patch, or scale in-cluster.aws-ia/eks-ack-addonsHelm/IRSA controllers with a managed capability (type = ACK) for the DynamoDB, IAM, and EKS controllers this lab's ResourceGraphDefinition uses.This follows the pattern established for the ACK lab in #1870, extended to also cover kro itself.
Why
EKS Capabilities let Amazon manage the availability, patching, and scaling of kro and ACK, removing the Helm/IRSA setup and version pinning the lab previously maintained. It also showcases the managed capability model that this lab is meant to teach.
Changes
Terraform (
manifests/modules/automation/controlplanes/kro/.workshop/terraform/)main.tf— remove theeks_ack_addonsmodule; add twoaws_eks_capabilityresources (ACK + KRO), each with a capability IAM role trusted bycapabilities.eks.amazonaws.com, cluster access entries, and IAM-propagation waits. The ACK capability role carries the DynamoDB/IAM/EKS permissions the RGD's controllers need; the KRO capability role needs no IAM permissions and is grantedAmazonEKSKROPolicy+AmazonEKSClusterAdminPolicyso kro can create the resources its RGDs define.vars.tf— removedynamo_ack_versionandkro_version; addcarts_dynamo_table_name.outputs.tf— drop the removed version variables.Content (English + Japanese)
index.md— update the prepare-environment summary to describe the managed ACK capability.introduction.md— remove thehelm install krostep; explain kro is now provided by the managed EKS Capability.Testing
Validated end-to-end on a workshop cluster created with
make create-infrastructure:prepare-environment automation/controlplanes/krocompletes successfully; both capabilities reach ACTIVE (ack,kro).kro-system.WebApplicationDynamoDBRGD instance provisions all four ACK resources (DynamoDBTable, IAMPolicy+Role, EKSPodIdentityAssociation), all reachingACK.ResourceSynced=True, and the carts application connects to the DynamoDB table.terraform fmtandterraform validatepass.Notes
AmazonEKSClusterAdminPolicygranted to the kro capability role follows the AWS "getting started / development" guidance for kro capabilities. Happy to scope this to a narrower custom policy if preferred for the workshop.