11章ConfigMapとSecret

コンテナイメージをできる限り再利用可能にしておくのは重要です。同じイメージを開発環境にも、ステージング環境にも、本番環境にも使用可能にしておくべきです。アプリケーションやサービスが違っても使用できるように、イメージを一般化しておくのも同じく重要です。イメージが環境ごとに違うと、テストやバージョン管理がやりにくく、より複雑になります。では、イメージを実行環境に応じて特殊化したい時はどうしたらよいのでしょうか。

そんな時こそ、ConfigMapとSecretを使うべきです。ConfigMapは、ワークロードに応じた設定情報を保存します。その情報は、細かい情報(短い文字列)でも、ファイル形式の複合的な値でも構いません。SecretはConfigMapに似ていますが、ワークロードに応じた機密情報を保存するためにあります。パスワードや、TLS証明書などを保存するのに向いています。

11.1 ConfigMap

ConfigMapは、小さなファイルシステムを作るKubernetesオブジェクトです。または、環境ごとやコマンドラインでコンテナを定義する際に使用できる、変数の集まりだとも言えます。重要なのは、ConfigMapは直前に作られたPodと組み合わせて使うものだということです。使用するConfigMapを変更するだけで、コンテナイメージとPodの定義をさまざまなアプリケーションで再利用できます。

11.1.1 ConfigMapの作成

では、ConfigMapを作ってみましょう。Kubernetes上の他のオブジェクトと同じく、命令的な方法でも、マニフェストファイルからでも作成できます。まずは命令的な方法を使います。

例11-1にあるように、Podから参照可能にしたいmy-config.txtというファイルがディスク上にあるとします。 ...

Get 入門 Kubernetes now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.