Creating a ConfigMap

Scenario

A ConfigMap is a type of resource that stores configuration information required by a workload. Its content is user-defined. After creating ConfigMaps, you can use them as files or environment variables in a containerized workload.

ConfigMaps allow you to decouple configuration files from container images to enhance the portability of workloads.

Benefits of ConfigMaps:

  • Manage configurations of different environments and services.
  • Deploy workloads in different environments. Multiple versions are supported for configuration files so that you can update and roll back workloads easily.
  • Quickly import configurations in the form of files to containers.

Procedure

  1. Log in to the CCE console and access the cluster details page.
  2. Choose ConfigMaps and Secrets in the navigation pane and click Create ConfigMap in the upper right corner.
  3. Set parameters.

    Table 1 Parameters for creating a ConfigMap

    Parameter

    Description

    Name

    Name of a ConfigMap, which must be unique in a namespace.

    Namespace

    Namespace to which the ConfigMap belongs. If you do not specify this parameter, the value default is used by default.

    Description

    Description of the ConfigMap.

    Data

    Data of a ConfigMap, in the key-value pair format.

    Click to add data. The value can be in string, JSON, or YAML format.

    Label

    Label of the ConfigMap. Enter a key-value pair and click Add.

  4. After the configuration is complete, click OK.

    The new ConfigMap is displayed in the ConfigMap list.

ConfigMap Requirements

A ConfigMap resource file must be in YAML format, and the file size cannot exceed 2 MB.

The file name is configmap.yaml and the following shows a configuration example.
apiVersion: v1
kind: ConfigMap
metadata:
  name: test-configmap
data:
  data-1: value-1
  data-2: value-2

Creating a ConfigMap Using kubectl

  1. Configure the kubectl command to connect an ECS to the cluster. For details, see Connecting to a Cluster Using kubectl.
  2. Create and edit the cce-configmap.yaml file.

    vi cce-configmap.yaml

    apiVersion: v1
    kind: ConfigMap
    metadata:
      name: cce-configmap
    data:
      SPECIAL_LEVEL: Hello
      SPECIAL_TYPE: CCE

  3. Run the following commands to create a ConfigMap.

    kubectl create -f cce-configmap.yaml

    kubectl get cm

    NAME               DATA            AGE
    cce-configmap      3               3h
    cce-configmap1     3               7m

Related Operations

After creating a configuration item, you can update or delete it as described in Table 2.
Table 2 Related operations

Operation

Description

Viewing a YAML file

Click View YAML next to the ConfigMap name to view the YAML file corresponding to the current ConfigMap.

Updating a ConfigMap

  1. Select the name of the ConfigMap to be updated and click Update.
  2. Modify the secret data. For more information, see Table 1.
  3. Click Update.

Deleting a ConfigMap

Select the configuration you want to delete and click Delete.

Follow the prompts to delete the ConfigMap.