13.2. Thorntail の外部化設定の例

重要

以下の例は、実稼働環境での実行を目的としていません。

上達度レベルの例: Foundational

外部化設定は、ConfigMap を使用して設定を外部化する基本的な例を提供します。ConfigMap は、コンテナーを OpenShift に依存しないようにする一方で、単純なキーと値のペアとして設定データを 1 つ以上の Linux コンテナーに挿入するために OpenShift で使用されるオブジェクトです。

この例では、以下の方法を示しています。

  • ConfigMap をセットアップし、設定します。
  • アプリケーション内で ConfigMap によって提供される設定を使用します。
  • 実行中のアプリケーションの ConfigMap 設定に変更をデプロイします。

13.2.1. 外部化された設定設計パターン

可能な場合は、アプリケーション設定を外部化し、アプリケーションコードから分離します。これにより、異なる環境を通過する際にアプリケーション設定を変更できますが、コードは変更されません。設定の外部化により、機密情報や内部情報がコードベースやバージョン管理から除外されます。多くの言語およびアプリケーションサーバーは、アプリケーション設定の外部化をサポートする環境変数を提供します。

マイクロサービスアーキテクチャーおよび多言語 (polyglot) 環境は、アプリケーションの設定を管理する複雑な層を追加します。アプリケーションは独立した分散サービスで構成され、それぞれ独自の設定を持つことができます。すべての設定データを同期し、アクセス可能な状態に維持すると、メンテナンスの課題が発生します。

ConfigMap により、アプリケーション設定を外部化でき、OpenShift 上の個別の Linux コンテナーおよび Pod で使用できます。YAML ファイルの使用を含むさまざまな方法で ConfigMap オブジェクトを作成し、これを Linux コンテナーに挿入できます。ConfigMap を使用すると、設定データの分類およびスケーリングが可能です。これにより、基本的な DevelopmentStage、および Production 以外の多くの環境を設定できます。ConfigMap の詳細は、OpenShift ドキュメント を参照してください。