5 Reasons to Back Up Kubernetes Applications

Software containers are at the heart of cloud-native business transformation initiatives, and they are a natural evolution from virtual machines to a more granular and portable application environment in clouds. Containers are designed to support rapid development and deployment of cloud-native applications in a DevOps model, a set of practices that combines software development and IT operations.

As applications grew to span multiple containers across multiple servers, Kubernetes emerged to become the de facto container orchestration platform to automate the life cycle of deploying, scaling and managing containers, in what are called clusters. Kubernetes enables clusters of containerized applications to run at scale while eliminating the maddening complexities of infrastructure management, deployment and scalability of cloud applications.

However, as with any new technology platform, Kubernetes has its weaknesses, including in the areas of data protection and disaster recovery. While Kubernetes is designed to provide a zero-downtime deployment environment, service interruptions or human error can occur that result in data loss. To protect the containerized applications from certain failures, traditional data protection methods including snapshots, replication and backup copies of the application data and the underlying Kubernetes clusters configurations are frequently used. The snapshots and backup copies act as a form of insurance when a natural disaster or ransomware strikes, but they can be useful in other situations, as well.

Let’s go through the top five reasons why backups, and more importantly, data recovery, can come in handy for containerized applications running in multiple Kubernetes clusters.

Human or Programmatic Error

Errors, whether or not they’re unintentional, and accidental deletion or overwriting of data happens all the time. Whether it is application data or Kubernetes configuration data such as the namespace where deployments reside, it may be difficult to quickly recover the data or the environment. If you claim you have never forgotten to save a file, deleted a vital file or had a program accidentally erase data, you are an extraordinary human.

Security Breaches and Ransomware

Security breaches can result in the deletion or modification of configuration and application data. More recently, ransomware attacks can strike and encrypt data; requiring the payment of a ransom to unlock it. Unlike problems caused by failures or human error, changes caused by security breaches can be subtle, difficult to detect and long-lasting, leaving IT teams to the unenviable task of trying to figure out what changed and when.

Natural disaster and service failures

Natural calamities such as hurricanes, flooding, wildfires, earthquakes and the like can destroy built-in redundancy and protection against isolated hardware or cloud service failures. Backups are required to bring back the lost data and, in turn, the application, to its original state. Even for cloud environments, best practices recommend having copies of data in different regions, even with different cloud providers. They, too, are subject to disasters, hardware and software failures and security breaches.

Application and Environment Migrations

Backups are critical from an application migration preparedness perspective. Whether moving physical equipment or just the bits, make sure there are comprehensive backups in place of the current application data and environment. An application may span multiple Kubernetes clusters and have persistent data outside of Kubernetes in cloud databases or other cloud repositories. Even if an old environment is left in place, don’t rely on it being the “source of truth” for the new one. It wouldn’t be the first time that an ops person with too much work and too little sleep made a change to the old environment instead of the new.

Backups, especially in the form of application-consistent snapshots with Kubernetes resource data, can facilitate replication of existing production environments to development, test or disaster recovery environments.

Compliance

Last but not least, maintaining backups of application data and resource configurations are necessary not just for operational purposes, but for regulatory guidelines and compliance reasons such as PCI DSS, HIPAA and SOX. Backups should support retention locks to make them immutable to support retention requirements.

Kubernetes has done a lot to automate cloud application development and deployment life cycles and ensure the high availability and scalability of application services, but it doesn’t address all business protection use cases. That’s why we must still rely on and incorporate traditional data protection methods including snapshots, replication and backup copies into standard DevOps procedures.

Mike Miracle

Mike Miracle is the Chief Strategy Officer for Catalogic Software and its new venture CloudCasa.io. Mike is a strategy, marketing, and operations executive with extensive experience in technology infrastructure including storage, virtualization, networking, and cybersecurity. He has built and led global marketing operations as the CMO for multiple companies including BlackRidge and SevOne, and consulted and advised over 25 high tech companies on strategy, operations, and M&A. As the head of corporate development at VERITAS Software, Mike led M&A, licensing and investments during its high growth years completing 11 acquisitions and 10 investments that propelled the company's dramatic growth to $1.5B in revenue. He has held senior management and software development positions at AT&T Bell Labs, and Unix Labs, Novell, and HP, and board positions at Precise Software, Connected Corp, and others. Mike holds an MS EE from Stanford University and a BS in Computer Engineering from the University of Wisconsin.

Mike Miracle has 1 posts and counting. See all posts by Mike Miracle