第22章 ConfigMap
22.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
- 1
- 設定データが含まれます。
設定データはさまざまな方法で Pod 内で使用できます。ConfigMap
は以下を実行するために使用できます。
- 環境変数の値の設定
- コンテナーのコマンドライン引数の設定
- ボリュームの設定ファイルの設定
ユーザーとシステムコンポーネントの両方が設定データを ConfigMap
に保存できます。