Skip to content

Commit

Permalink
New Blog Post: Day02 in Kubernetes application lifecycle (#843)
Browse files Browse the repository at this point in the history
  • Loading branch information
edithturn authored Nov 20, 2023
1 parent a6365eb commit 2dbe6da
Show file tree
Hide file tree
Showing 3 changed files with 57 additions and 0 deletions.
Binary file added assets/blog/2023/11/day2.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added assets/blog/2023/11/pmm.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
57 changes: 57 additions & 0 deletions content/blog/2023/2023-11-20-kubernetes-application-lifecycle.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,57 @@
---
title: "Day 02: The Kubernetes Application Lifecycle"
date: "2023-11-20T00:00:00+00:00"
draft: false
tags: ["kubernetes", "operators", "day02", "percona"]
authors:
- edith_puclla
images:
- blog/2023/11/day2.png
slug: day-02-the-kubernetes-application-lifecycle
---

If you are in the world of application development, you know that every application has a lifecycle. An application lifecycle refers to the stages that our application goes through from initial planning, building, deployment, monitoring, and maintenance in different environments where our application can be executed.

On the other hand, the **Kubernetes Application Lifecycle** refers exclusively to applications deployed and managed in Kubernetes clusters. This differs from the normal application lifecycle because Kubernetes introduces new principles, practices, and tools for managing applications on containers.

In this blog post, we will talk about these phases **Day 0**, **Day 1** and **Day 2** in the lifecycle of an
application in Kubernetes and we will focus specifically on the phase of **Day 2**.

![day02](blog/2023/11/day2.png)

**Image 1**: Day 0, Day 1 and Day 2 in the Kubernetes Application Lifecycle

**Day 0** refers to the preparation stage before deploying applications in Kubernetes. It's the stage of identifying goals, planning the infrastructure. Ensuring that the development team has knowledge about Kubernetes and best practices. It's a stage for investment in training. And the evaluation of the application components to determine which are suitable for use within **containers** and **Kubernetes**.

**Day 1** is the stage that involves deploying the application in Kubernetes clusters and the creation of Kubernetes resources: deployments, pods, services. Additionally, it includes configuration management and the implementation of basic monitoring following the decisions made on **Day 0**.

Finally **Day 2**, our application is already running in Kubernetes clusters by reaching this stage. Day 2 refers to the management, monitoring, and optimization of our Kubernetes clusters over the long term.

Day 2 involves:

- Gathering information from our Kubernetes clusters through monitoring and logging.
- Scaling our application, either horizontally or vertically.
- Application of security best practices and compliance with policies.
- Establishing backups and recovery processes to protect our data and application from future disasters.

Day 2, activities focus on sustainability, efficiency, and long-term continuous improvement to ensure the stability of our application and meet customer expectations.

Let's see how [Percona](https://www.percona.com/) takes charge of **Day 2**

For Percona, a company specializing in the management of open source databases like MySQL, PostgreSQL, MongoDB, Day 2 refers to the ongoing efforts to ensure that database systems are running efficiently securely, and in alignment with business objectives.

Here are some examples of how Percona handles this phase:

To achieve Performance Monitoring, if you use our [Percona Kubernetes Operators](https://www.percona.com/software/percona-kubernetes-operators), you can integrate it with Percona Monitoring and Management (PMM) to check the performance of your databases in real time. Monitor query execution times, resource utilization, and server health. PMM helps to identify bottlenecks and inefficiencies, allowing for timely optimization and tuning.

![pmm](blog/2023/11/pmm.png)

Image 2: this is what the PMM Dashboard interface looks like when monitoring your database resources.

If we discuss data protection and disaster recovery, using [Percona XtraBackup](https://docs.percona.com/percona-xtrabackup/innovation-release/), an open-source backup utility for MySQL-based servers. In that case, you can ensure that your database remains fully accessible during scheduled maintenance periods.

As for scaling strategy and high availability, adopting solutions such as [Percona XtraDB Cluster](https://www.percona.com/mysql/software/percona-xtradb-cluster) or [Percona Server for MySQL](https://www.percona.com/mysql/software/percona-server-for-mysql) enables us to secure the database and efficiently manage increased workloads, all while keeping downtime to a minimum.

These were just some examples of what **Percona does for Day 2** to maintain tasks crucial for the business and that relies on databases to keep critical applications and services running.

​​Are you interested in learning more about Kubernetes or need assistance with your cloud-native strategy? With Percona Kubernetes Operators, you can manage database workloads on any supported Kubernetes cluster running in private, public, hybrid, or multi-cloud environments. They are 100% open source, free from vendor lock-in, usage restrictions, and expensive contracts, and include enterprise-ready features by default. Learn more about [Percona Kubernetes Operators](https://www.percona.com/software/percona-kubernetes-operators)

0 comments on commit 2dbe6da

Please sign in to comment.