The application management service provides Kubernetes-based complete lifecycle management of applications to simplify management. This service contains the application group, application list, and application configuration functions.
An application group contains multiple applications that offer the same service. Application groups allow for isolation of the applications used for different purposes. When you create an application by deploying a software image, you must assign the application to an application group. You can perform lifecycle management operations on the applications in an application group, such as adding, deleting, starting, stopping, upgrading, and rolling back applications. You also can perform service governance, such as load balancing, circuit breaking, and request throttling, on the applications in a Spring Cloud or Istio application group.
The application list displays all the applications that have been created. You can view details about an existing application and manage the applications on the application list page.
Applications are classified into container applications and host applications, depending on the resource type:
Container applications
Container applications are deployed on container clusters. Container images and Helm packages can only be deployed as container applications. JAR packages, WAR packages, and front-end resources packages can be deployed as container applications or host applications.
Host applications
Host applications are deployed on cloud hosts. Legacy packages can only be deployed as host applications.
The Kubernetes configuration system includes ConfigMaps and secrets. The aim of configuring applications is to separate configuration from containers so that the configuration information does not disappear or change when containers are destroyed or restarted. Containers can be directly used after they are created. Additionally, you can manage and maintain the configuration information through a unified configuration center.
A container application runs in the form of a container. The smallest unit in Kubernetes is pod. A pod contains one or more containers. In essence, managing applications is managing containers. |
ConfigMap—Kubernetes ConfigMap object that defines common container service settings, such as the log storage path and pod dependencies.
Secret—Kubernetes secret that stores sensitive data of pods, such as passwords, tokens, and keys.
For a container application, you can place the configuration files of ConfigMaps in a directory used by the application. For example, you can place YAML or properties files for the spring boot application in the directory where the application's JAR package is saved. Those configuration files will be preferred by the JAR package during startup of a new instance.
As a best practice to facilitate configuration editing for applications, do not package configuration files into JAR files. Instead, place the configuration files in a directory independent of the directories used for storing JAR packages. For container applications, you can add configuration by creating ConfigMaps or from the configuration center.
As a best practice, add configuration for host applications from the configuration center.