AWS Controllers for Kubernetes (ACK) lets you define and use AWS service resources directly from Kubernetes. With ACK, you can take advantage of AWS managed services for your Kubernetes applications without needing to define resources outside of the cluster or run services that provide supporting capabilities like databases or message queues within the cluster.
ACK is an open source project built with ❤️ by AWS. The project is composed of many source code repositories containing a common runtime, a code generator, common testing tools and Kubernetes custom controllers for individual AWS service APIs.
IMPORTANT Please be sure to read our documentation about release versioning and maintenance phases and note that ACK service controllers in the
Preview
maintenance phase are not recommended for production use. Use of ACK controllers inPreview
maintenance phase is subject to the terms and conditions contained in the AWS Service Terms, particularly the Beta Service Participation Service Terms, and apply to any service controllers in aPreview
maintenance phase.
Kubernetes applications often require a number of supporting resources like databases, message queues, and object stores. AWS provides a set of managed services that you can use to provide these resources for your apps, but provisioning and integrating them with Kubernetes was complex and time consuming. ACK lets you define and consume AWS services and resources directly from a Kubernetes cluster. It gives you a unified way to manage your application and its dependencies.
ACK is a collection of Kubernetes custom resource definitions (CRDs) and custom controllers working together to extend the Kubernetes API and manage AWS resources on your behalf.
Please see the list of ACK service controllers currently in one of our project stages.
You can install any of the controllers in the RELEASED
project stage using
Helm (recommended) or manually using the raw Kubernetes manifests contained in
the individual ACK service controller's source repository.
Once installed, Kubernetes users may apply a custom resource (CR) corresponding to one of the resources exposed by the ACK service controller for the service.
To view the list of custom resources and each CR's schema, visit our reference documentation.
For help, please consider the following venues (in order):
#aws-controllers-k8s
channel in the Kubernetes Slack community.We welcome community contributions and pull requests.
See our contribution guide for more information on how to report issues, set up a development environment, and submit code.
We adhere to the Amazon Open Source Code of Conduct.
You can also learn more about our Governance structure.
ACK Community meeting is held every week. Everyone is welcome to participate.
This project is licensed under the Apache-2.0 License.