Employing Kubernetes for Provision and Control of Database Instances with ACK

Kubernetes is an open source platform, upheld for its extensibility and portable quality for managing containerized workloads and services. While beneficial, there are areas that can be improved when employed—such as instances of deep technology stack troubleshooting, contrasting workload requirements, and efficient database management.

DBTA hosted a webinar, “Managing Your Amazon RDS Database Instances From Kubernetes,” featuring speakers Jonathan Katz, principal PMT for Amazon RDS at AWS, and Chirag Dave, senior database specialist solutions architect at AWS, to discuss and demo the AWS Controller for Kubernetes (ACK) to streamline development and production workloads and expand the capabilities of the Kubernetes API.

Katz illustrated the ways in which Kubernetes has room for additional efficiencies, highlighting its need for custom-built operators, incorporating deep tech stacks that cause issues in troubleshooting, and opposing workload/production requirements that slow productivity; with ACK, Katz argued, users can better leverage all the advantages of Kubernetes underpinned by Amazon services and capabilities.

ACK is an open source project for managing AWS services directly from the Kubernetes API, manifesting as a collection of Kubernetes Operators that interact directly with AWS APIs. Within ACK, users can specify what services and tools they want, and ACK reconciles states to match specifications. Controllers included with ACK are Amazon EC2, Amazon S3, Amazon RDS, Amazon SageMaker, Amazon DynamoDB, Amazon ElastiCache, and more, according to Katz.

The functionality of ACK is designed to adapt to existing AWS resources and manage them declaratively. Users can dynamically retrieve information from a service resource, such as an Amazon RDS database host, and inject that into an application. ACK has cross-region and cross-account management options available, enhancing accessibility of the Kubernetes API.

ACK for Amazon RDS, which will be generally available in Q3 of 2022, manages Amazon RDS and Amazon Aurora databases directly from Kubernetes, enabling the availability of Kubernetes applications. This additionally allows applications to be connected to data while adhering to GitOps best practices, as well as providing the ability to create, manage, scale, and delete Amazon RDS instances. ACK for Amazon RDS can manage database replicas, create clusters from snapshots, and supports Amazon Aurora Serverless v2 and Amazon RDS Proxy. Supporting all relational database engines on Amazon RDS and Amazon Aurora, such as Amazon RDS for PostgreSQL, Amazon RDS for MySQL, Amazon RDS for MariaDB, Amazon RDS for Oracle, and Amazon RDS for SQL Server, ACK provides comprehensive management of a variety of relational databases.

To view a demo of ACK’s ability to manage and provision instances, and to learn more about its functionalities for Amazon RDS and Kubernetes, you can view an archived version of this webinar here.