- Newest
- Most votes
- Most comments
Kube Resource Orchestrator (kro) would be a better choice than traditional Infrastructure-as-Code (IaC) tools like CloudFormation or Terraform in scenarios that are specifically focused on Kubernetes-based environments and require complex, multi-resource API extensions.
KRO is designed to simplify the creation and management of custom resources within Kubernetes clusters. It's particularly useful when:
-
You need to define complex, multi-resource API extensions for reuse in Kubernetes clusters. KRO allows you to create custom resources as fundamental building blocks, including those that manage the lifecycle of cloud resources.
-
You want to encode default configurations aligned with your organizational best practices for Kubernetes resources.
-
You're looking to reduce the complexity of writing and maintaining custom controller code for Kubernetes extensions. KRO handles resource dependencies and configuration ordering under the hood, allowing developers to focus more on building applications and services rather than managing infrastructure.
-
You want to simplify the management of custom resources in Kubernetes without having to build and maintain multiple bespoke controllers.
-
Your team is working primarily within Kubernetes environments and wants to leverage Kubernetes-native approaches for resource management.
However, it's important to note that KRO is still an evolving project and not yet intended for production use. It's not integrated into Amazon EKS or any other AWS product or service.
In contrast, traditional IaC tools like CloudFormation and Terraform are more suitable for broader infrastructure management across multiple cloud providers or when dealing with resources outside of Kubernetes clusters. They offer more mature and production-ready solutions for managing a wide range of cloud resources beyond just Kubernetes workloads.
The choice between KRO and traditional IaC tools ultimately depends on your specific use case, the complexity of your Kubernetes-based infrastructure, and your team's expertise. If your focus is primarily on Kubernetes and you're looking for ways to simplify custom resource management within that ecosystem, KRO could be a promising option to explore.
Sources
Introducing kro: Kube Resource Orchestrator | AWS Open Source Blog
Kube Resource Orchestrator, From Experiment to Community Project | AWS Open Source Blog
Choosing a modern application strategy - Choosing a modern application strategy
