Red Hat Training

A Red Hat training course is available for OpenShift Container Platform

21장. ConfigMaps

21.1. 개요

많은 애플리케이션에서는 구성 파일, 명령줄 인수 및 환경 변수를 조합한 구성이 필요합니다. 컨테이너화된 애플리케이션을 이식할 수 있도록 이러한 구성 아티팩트는 이미지 콘텐츠와 분리되어야 합니다.

ConfigMap 오브젝트는 OpenShift Container Platform과 관계없이 컨테이너를 구성 데이터로 삽입하는 메커니즘을 제공합니다. ConfigMap 은 개별 속성 또는 전체 구성 파일 또는 JSON Blob과 같은 세분화된 정보를 저장하는 데 사용할 수 있습니다.

ConfigMap API 오브젝트에는 Pod에서 사용하거나 컨트롤러와 같은 시스템 구성 요소의 구성 데이터를 저장하는 데 사용할 수 있는 구성 데이터의 키-값 쌍이 있습니다. ConfigMap 은 보안과 유사하지만 민감한 정보가 포함되지 않은 문자열 작업을 보다 편리하게 지원하도록 설계되었습니다.

예를 들면 다음과 같습니다.

ConfigMap 오브젝트 정의

kind: ConfigMap
apiVersion: v1
metadata:
  creationTimestamp: 2016-02-18T19:14:38Z
  name: example-config
  namespace: default
data: 1
  example.property.1: hello
  example.property.2: world
  example.property.file: |-
    property.1=value-1
    property.2=value-2
    property.3=value-3
binaryData:
  bar: L3Jvb3QvMTAw 2

1
구성 데이터를 포함합니다.
2
UTF8이 아닌 데이터를 포함한 파일을 가리킵니다(예: 바이너리 Java 키 저장소 파일). Base 64에 파일 경로를 입력합니다.

다양한 방법으로 Pod에서 구성 데이터를 사용할 수 있습니다. ConfigMap 은 다음을 수행하는 데 사용할 수 있습니다.

  1. 환경 변수 값을 채웁니다.
  2. 컨테이너에서 명령줄 인수를 설정합니다.
  3. 볼륨에서 구성 파일을 채웁니다.

사용자와 시스템 구성 요소 모두 구성 데이터를 ConfigMap 에 저장할 수 있습니다.