SOLUTION BRIEFMySQL Databaseas a Service(DBaaS) withAstra ControlSimplified day 2 operations

IntroductionKubernetes has become the standard IT infrastructurefor businesses of all sizes. Production applicationsare being deployed on or migrated to Kubernetes.Running a stateful application like MySQL requireslots of planning, understanding the challenges, andidentifying the right solutions.Key benefits Facilitate application- consistent snapshotsand backup Recover the entire MySQL application andKubernetes resources in a disaster scenario Migrate applications to another KubernetesclusterThe journey of implementing DBaaS for MySQLrequires the following actions on day 1, whether it’sa managed Kubernetes service or vanilla Kubernetes:1. Identify or build your own registry.2. Identify the right storage and the ContainerStorage Interface (CSI) provisioner.3. Find the performance requirements and defineappropriate storage classes.4. Create your own manifest or identify a helmchart that meets your requirements.5. Deploy the MySQL application.Day 1Choose orbuild registryDB Owner2Solution BriefDefinestorage classCreatemanifestDeploydatabaseDay 2Data corruptionand securityFigure 1) Build your own DBaaS.Identify thestorage and CSIBackup andrecoveryDisasterrecoveryApplicationportability

Kubernetes offers solutions for all of the day 1requirements. When it comes to day 2 operations,you need a strategy and solution for:1. Data corruption and security2. Backup and recovery3. Disaster recovery4. Application portabilityKubernetes natively doesn’t have any solutionsto address the day 2 challenges.DB OwnerChoose orbuild registryAstra Control simplifies and automates the day 1operations by simply registering the Kubernetescluster. The day 1 operations are simplified to1. Identify or build your own registry.2. Create your own manifest or identify a helmchart that meets your requirements.3. Register the Kubernetes cluster with Astra.4. Deploy the MySQL applicationAstra Control managing your application addressesthe following day 2 challanges1. Data corruption and security2. Backup and recovery3. Disaster recovery4. Application portabilityCreatemanifestAdd K8scluster AstraDeploydatabaseManage yourappsFigure 2) Day 1 operations with Astra.Astra Control overviewAstra Control is a solution that makes it easierfor our customers to manage, protect, and movetheir data-rich containerized workloads running onKubernetes within and across public clouds and on-premises. Astra provides persistent container storagethat leverages NetApp’s proven and expansive storageportfolio in the public cloud and on premises. It alsooffers a rich set of advanced application-aware datamanagement functionality (like snapshot -revert, backupand -restore, activity log, and active cloning) for yourdata protection, disaster recovery, data audit, andmigration use -cases for your modern apps.Astra Control offers a fully managed application-awaredata management service in Cloud, Astra ControlService. Astra Control offers a fully managed applicationaware data management service in Cloud, Astra ControlService. And Astra Control Center provides applicationaware data management for on-premises Kubernetesclusters. Astra control center is delivered as a customermanaged Kubernetes application from NetApp.3Solution BriefManaging MySQL with AstraSimply register your Azure Kubernetes Service (AKS)and Google Kubernetes Engine(GKE) clusters in AstraControl Service. Upon registration Astra: Installs NetApp Trident, NetApp’s open-sourceKubernetes storage orchestrator. Creates a bucket on the cloud object store forsaving application backups. Creates a service account on your cluster for itself.The following example shows two Kubernetesclusters, one AKS (Azure Kubernetes Service) clusterlocated in Azure East US (Virginia) region and anotherGKE (Google Kubernetes Engine) cluster located inthe GCP europe-west2 region.With Astra control center you provide to kubeconfigfile of the kubernetes cluster to register a cluster. AstraControl center for on-premises uses your existingTrident installation, Trident based storage classes,ONTAP backend, and allows you to import your ownobject storage bucket for backups and cloning.Astra Control Centers have the same view and optionsafter you register an on-premises Kubernetes cluster.

HeadlineBody textFigure 3) Registered clusters.Install MySQL on cluster longboat-cluster-1 usingthe current Bitnami Helm chart or a custom manifest.Trident automatically provisions the KubernetesPersistent Volume Claims from Azure NetAppFiles for MySQL. Astra Control discovers theapplications on your registered clusters and you caneasily manage either just the application or all theresources in the entire namespace as one unit.Figure 4) Managing the MySQL application.After managing the application, Astra Controlcan take snapshots, backups, and clones of thatapplication, its Kubernetes resources, and itsassociated Persistent Volumes.4Solution BriefIn Astra Control Center the Persistent Volume Claimswill be from your on-premises ONTAP storagebackend. You can choose any Trident StorageClasses supported by Astra Control Center.

HeadlineBody textFigure 5) Managed application overview.Figure 6) Kubernetes resources for the application.5Solution Brief

All the data generated by MySQL database clientscan be automatically protected by using snapshotsand backups. Astra Control snapshots and backupspreserve the application state, its Kubernetesresources, and its volumes in one easily manageableunit. Astra understands the MySQL application andis quiesced before a snapshot or backup so that anapplication-consistent snapshot or backup can betaken. Quiesce operations take no longer than 60seconds. All application backups are stored in anFigure 7a) On-demand application snapshot .Figure 7b) On-demand application snapshot .6Solution Briefobject store.Both on-demand and scheduled snapshots andbackups are supported. When taking on-demandbackup, there is an option to choose any existingsnapshot. Otherwise, the backup will be from thecurrent state of the application.In Astra Control Service the backup will be stored inan object store bucket created by Astra. With AstraControl Service, you can select any Object Storebucket configured when taking a backup.

Figure 8a) On-demand application backup.Figure 8b) On-demand application backup.Set up a snapshot and backup schedule for thevolume and all the Kubernetes objects that areassociated with it. You need to choose any of theconfigured object store bucket to save the backupswith Astra Control Center.7Solution Brief

Figure 9) Configure protection policy.After reviewing the information, set the protectionpolicy. Astra automatically takes snapshots andbackups based on the schedule and follows theretention policy defined.Migrating MySQL application to anotherKubernetes clusterAfter a successful backup, the MySQL applicationis protected against disasters like losing theKubernetes cluster or a human error like deletingthe namespace. You can use the Clone option toredeploy MySQL to a new namespace within thecluster or to the new cluster. When choosing theoption, you can also select an existing snapshotor backup to go back to a point in time copy ofthe MySQL application.8Solution BriefFor example, suppose that you have a new teamin a different location that is going to take over theresponsibility of managing the MySQL database.But they are using a GCP ( Google Cloud Platform)project to run the application. You want to migratethe MySQL applications to a GKE cluster usingthe new team. MySQL is currently running on thelongboat-cluster-1 (AKS) cluster located in theAzure East US (Virginia) region.Similarly, with Astra Control Center you can migratethe MySQL application from one on-premisesKubernetes cluster to another namespace within thecluster or to another on-premises Kubernetes clusterwithin the same datacenter or in another data center.

Figure 1: Auctor orci, sit amet pretium nisl laoreet ut. Ali sit amet pretium nisllaoreet atid sed quam erat volutpat sed nisiamet atid sed quam erat volutpat.HeadlineBody textFigure 10) Current state of the MySQL application.Clone MySQL to longboat-cluster-2, in Google CloudPlatform region, Europe-west2 using its current state.You could also clone from an existing backup orsnapshot. When cloning from the current state, Astrafirst creates a backup and then uses that backup formigrating to the destination cluster. This brings up anew instance of MySQL, running at the same stateas in the source cluster.9Solution Brief

Figure 11a) Migrating MySQL from the current state.Figure 11b) Migrating MySQL from the current state.A new MySQL clone is provisioned in the destinationcluster and the application is automatically managedby Astra.10Solution Brief

Figure 12) Provisioning a new MySQL instance in the destination cluster.After the migration, the MySQL application hasthe same Kubernetes resources and data as inthe source cluster.Figure 13a) MySQL application after migration.11Solution Brief

Figure 13b) MySQL application after migration.Where can I learn more?To learn more, visit the Astra websiteand the documentation on Astra.About NetAppIn a world full of generalists, NetApp is a specialist.We’re focused on one thing, helping your businessget the most out of your data. NetApp brings theenterprise-grade data services you rely on into thecloud, and the simple flexibility of cloud into the datacenter. Our industry-leading solutions work acrossdiverse customer environments and the world’sbiggest public clouds.As a cloud-led, data-centric software company,only NetApp can help build your unique data fabric,simplify and connect your cloud, and securely deliverthe right data, services and applications to the rightpeople—anytime, anywhere. 2021 NetApp, Inc. All Rights Reserved. NETAPP, the NETAPP logo, and the marks listed at are trademarks of NetApp, Inc.Other company and product names may be trademarks of their respective owners. SB-4110-0721

Astra Control is a solution that makes it easier for our customers to manage, protect, and move . Set up a snapshot and backup schedule for the volume and all the Kubernetes objects that are associated with it. You need to choose any of the . data-centric software com