Secret (Kubernetes Secret) は、キーや証明書といった、アプリケーションの機密性の高いランタイム情報を格納します。アプリケーションイメージを再ビルドすることなく、デプロイ後に Secret の値を更新できます。
設定センターから動的に設定データを取得する方法については、MSE の Nacos の使用 または 分散設定の管理 (ACM) をご参照ください。
機密性の低いランタイム環境変数を格納する場合は、ConfigMap (Kubernetes ConfigMap) の管理と使用 をご参照ください。
Secret の作成
-
[SAE シークレット] ページで、上部で対象のリージョンと名前空間を選択し、[作成] をクリックします。対象アプリケーションが配置されている名前空間を選択していることを確認してください。
-
Secret の任意の [Name] を入力します。
-
[Type] を選択し、その設定を構成します。
-
Opaque:パスワードや API キーなど、非構造化の機密データをキーと値のペアとして格納します。
-
[Key-value Pair]:[Key] と [Value] を入力します。Add をクリックして、複数のペアを定義します。
重要[Value] は Base64 エンコード形式で格納されます。値は、次のいずれかの方法で入力できます。
-
元の [値] を入力し、The value is automatically Base64-encoded. を有効にします。
-
Base64 でエンコードされた [値] を入力し、二重エンコードを防ぐために The value is automatically Base64-encoded. を無効にします。
-
-
-
[プライベートリポジトリ用のイメージプル Secret]:プライベートイメージリポジトリにアクセスするための認証情報を格納します。これにより、SAE はアプリケーションのデプロイ時にプライベートイメージをプルできます。
-
[Image Repository Address]:
<domain_name_or_ip>:<service_port>形式を使用します。SAE がリポジトリに接続できることを確認してください。Alibaba Cloud Container Registry (ACR) Enterprise Edition インスタンスについては、Enterprise Edition インスタンスを使用したイメージのプッシュとプル を参照し、ネットワークアクセスの設定方法とリポジトリアドレスの取得方法を確認してください。 -
[ユーザー名] と [パスワード]。
-
-
[TLS 証明書]:アプリケーションで HTTPS を有効にするための TLS 証明書を格納します。
-
[Cert] と [Key]:TLS 証明書の公開鍵 (Cert) と秘密鍵 (Key) です。内容は Base64 でエンコードされている必要があります。
-
-
-
-
[Create a Secret] のリストで、作成した Secret を見つけます。必要に応じて、[Edit]、[Copy]、または [Delete] を実行できます。
重要-
Secret を変更した場合、その変更を適用するには、Secret を参照しているアプリケーションをすべて手動で再デプロイする必要があります。
-
Secret を削除すると、それを参照しているアプリケーションに支障が出ます。Secret を削除する前に、アプリケーションからその Secret へのすべての参照を削除してください。
-
Secret を使用したイメージのプル
アプリケーションをデプロイする際にイメージをプルする方法については、別アカウントに属する ACR インスタンスのイメージを使用したアプリケーションのデプロイ または ACR 以外のインスタンスのイメージを使用したアプリケーションのデプロイ をご参照ください。
Secret のアプリケーション環境変数としての使用
-
アプリケーションの作成
SAE アプリケーションリスト ページで、上部のナビゲーションバーでターゲットリージョンと名前空間を選択し、次に [アプリケーションの作成] をクリックします。[アプリケーションの基本情報] ページで、パラメーターを設定し、[次へ: 詳細設定] をクリックします。
実行中のアプリケーションの変更
警告アプリケーションを再デプロイすると、アプリケーションは再起動されます。業務の中断などの予測不能なエラーを防ぐため、オフピーク時にアプリケーションをデプロイすることをお勧めします。
SAE アプリケーションリスト ページで、上部のナビゲーションバーでターゲットリージョンと名前空間を選択します。ターゲット [アプリケーション] の ID をクリックして、アプリケーションの詳細ページを開きます。左側のナビゲーションウィンドウで、[基本情報] をクリックします。右上隅で、[アプリケーションのデプロイ] をクリックします。
停止中のアプリケーションの変更
SAE アプリケーションリスト ページで、上部のナビゲーションバーでターゲットリージョンと名前空間を選択します。ターゲット [アプリケーション] の ID をクリックして、アプリケーションの詳細ページを開きます。[基本情報] をクリックし、次に [アプリケーション構成の変更] をクリックします。
-
[Environment Variables] セクションで、[Type] を Reference the Secret に設定します。アプリケーションで使用する任意の [Variable Name] を入力します。Secret からすべてのキーを参照する場合、変数名を指定する必要はありません。デフォルトでキー名が変数名として使用されます。次に、参照する [The name of the Secret] と [キー] を選択します。Secret のすべてのキーを参照することもできます。Add をクリックして、Secret から複数の環境変数を追加します。
-
アプリケーションがデプロイされるまで待ちます。設定を検証するには、アプリケーションインスタンスの Web Shell にログオンし、
env | grep <variable_name>コマンドを実行します。<variable_name>を、設定した実際の名前に置き換えてください。変数とその値が返された場合、設定は成功です。
Secret のファイルとしてのマウント
Secret をアプリケーションコンテナのファイルシステムにマウントできます。Secret 内の各キーの値が、個別のファイルの内容になります。ファイルパスとファイル名はカスタマイズできます。マウントパスに同名のファイルが既に存在する場合、Secret ファイルがそれを上書きします。
-
アプリケーションの作成
SAE アプリケーションリスト ページで、上部のナビゲーションバーでターゲットリージョンと名前空間を選択し、次に [アプリケーションの作成] をクリックします。[アプリケーションの基本情報] ページで、パラメーターを設定し、[次へ: 詳細設定] をクリックします。
実行中のアプリケーションの変更
警告アプリケーションを再デプロイすると、アプリケーションは再起動されます。業務の中断などの予測不能なエラーを防ぐため、オフピーク時にアプリケーションをデプロイすることをお勧めします。
SAE アプリケーションリスト ページで、上部のナビゲーションバーでターゲットリージョンと名前空間を選択します。ターゲット [アプリケーション] の ID をクリックして、アプリケーションの詳細ページを開きます。左側のナビゲーションウィンドウで、[基本情報] をクリックします。右上隅で、[アプリケーションのデプロイ] をクリックします。
停止中のアプリケーションの変更
SAE アプリケーションリスト ページで、上部のナビゲーションバーでターゲットリージョンと名前空間を選択します。ターゲット [アプリケーション] の ID をクリックして、アプリケーションの詳細ページを開きます。[基本情報] をクリックし、次に [アプリケーション構成の変更] をクリックします。
-
[Secret] セクションで、+ Add をクリックします。マウントする [The name of the Secret] と [キー] を選択します。すべてのキーをマウントすることもできます。次に、任意の [Mount Path] を入力します。単一のキーをマウントする場合は、ファイル名を含む絶対パスを入力します。すべてのキーをマウントする場合は、絶対ディレクトリパスを入力します。SAE は Secret の各キーをそのディレクトリ内のファイル名として自動的に使用します。
-
アプリケーションがデプロイされるまで待ちます。設定を検証するには、アプリケーションインスタンスの Web Shell にログオンし、指定されたマウントパスにあるファイルの内容を表示します。