すべてのプロダクト
Search
ドキュメントセンター

Enterprise Distributed Application Service:シークレットの管理

最終更新日:Apr 01, 2025

Enterprise Distributed Application Service(EDAS)で Kubernetes クラスタを使用する場合は、パスワードや証明書などの機密情報を保存するためにシークレットを使用することをお勧めします。このトピックでは、シークレットの管理方法について説明します。

前提条件

背景情報

パスワードや証明書など、機密にしておく必要のある機密情報を保存するために、シークレットを使用できます。アプリケーションの作成時またはデプロイ時に、シークレットをコンテナに渡すことができます。シークレットを変更した場合、変更は関連アプリケーションを再デプロイした後に有効になります。

以下のシナリオでシークレットを使用できます。

  • コンテナの環境変数を設定するためにシークレットを使用する。詳細については、「環境変数の設定」をご参照ください。

  • コンテナのディレクトリにシークレットをファイルとしてマウントする。詳細については、「設定のマウント」をご参照ください。

  • HTTPS 証明書情報をシークレットに保存し、そのシークレットを使用してアプリケーションの Ingress を設定する。詳細については、「アプリケーションの NGINX Ingress の作成」をご参照ください。

シークレットの作成

  1. にログインします。

  2. 左側のナビゲーションペインで、[構成管理] > [kubernetes 構成] > [シークレット] を選択します。

  3. [シークレット] ページで、上部のナビゲーションバーでリージョンを選択します。

  4. [シークレット] ページで、[シークレットの作成] をクリックします。

  5. [シークレットの作成] パネルで、必要に応じてパラメータを設定し、[はい] をクリックします。

    Create Secrets panel

    パラメータ

    説明

    シークレット辞書名

    シークレットの名前。名前には、小文字、ハイフン(-)、数字を含めることができます。名前は文字で始まり、ハイフン(-)で終わることはできません。

    クラスタ名

    シークレットを作成する Kubernetes クラスタ。ドロップダウンリストから Kubernetes クラスタを選択します。

    K8s 名前空間

    クラスタの Kubernetes 名前空間。内部システムオブジェクトは、論理的に分離されたプロジェクト、グループ、またはユーザーグループを形成するために、異なる Kubernetes 名前空間に割り当てられます。これにより、異なるグループを個別に管理しながら、クラスタ全体のリソースを共有できます。有効な値:

    • default:デフォルトの Kubernetes 名前空間。オブジェクトに Kubernetes 名前空間が指定されていない場合は、デフォルトの Kubernetes 名前空間が使用されます。

    • kube-system:システムによって作成されたオブジェクトの Kubernetes 名前空間。

    • kube-public:自動的に作成され、認証されていないユーザーを含むすべてのユーザーが読み取ることができる Kubernetes 名前空間。

    タイプ

    シークレットのタイプ。有効な値:Opaque および TLS 証明書

    • Opaque:シークレットはカスタム情報を保存するために使用されます。Opaque を選択すると、[base64 エンコードデータ] チェックボックスが表示されます。

      バイナリデータから変換された Base64 エンコードデータをアップロードする場合は、[base64 エンコードデータ] チェックボックスをオンにします。この場合、シークレットに Base64 エンコードデータを入力する必要があります。EDAS は入力したデータをエンコードしません。

    • TLS 証明書:シークレットは、Transport Layer Security(TLS)証明書と関連するキーを保存するために使用されます。このタイプのシークレットは、一般的にアプリケーションの Ingress を設定するために使用されます。EDAS では、Ingress は外部 HTTPS リクエストを内部サービスにルーティングするために使用されるルーティング規則のコレクションです。

    Opaque

    [タイプ] パラメータを Opaque に設定し、[追加] をクリックすると、次のパラメータが表示されます。

    • マッピングパラメータ:

      • キー:機密情報のキー。キーには、文字、数字、ハイフン(-)、アンダースコア(_)、ピリオド(.)を含めることができます。

      • :機密情報の値。

      または、[構成のインポート] をクリックし、オプションを選択してオンプレミス構成ファイルをインポートできます。ファイルサイズは最大 1,024 KB で、JSON、YAML、または .properties 形式である必要があります。

    • バイナリデータから変換された Base64 エンコードデータをアップロードする場合は、[base64 エンコードデータ] チェックボックスをオンにします。この場合、シークレットに Base64 エンコードデータを入力する必要があります。EDAS は入力したデータをエンコードしません。

    TLS 証明書

    [タイプ] パラメータを TLS 証明書 に設定すると、自己署名証明書を作成するか、TLS 証明書のキーを手動で指定できます。

    • TLS 証明書のキーを手動で指定するには、[証明書] パラメータを設定して公開キーを指定し、[キー] パラメータを設定して秘密キーを指定します。

    • 自己署名証明書を作成するには、[自己署名証明書の作成] をクリックし、ドメインキーの長さ証明書の開始時刻証明書の有効期限 パラメータを設定します。

シークレットの表示

  1. にログインします。

  2. 左側のナビゲーションペインで、[構成管理] > [kubernetes 構成] > [シークレット] を選択します。

  3. [シークレット] ページで、上部のナビゲーションバーでリージョンを選択します。

  4. [シークレット] ページで、表示するシークレットを見つけ、[詳細] をクリックします。

    [シークレット辞書名][クラスタ名][クラスタ ID]、または [k8s 名前空間] パラメータで必要なシークレットを検索できます。

  5. シークレットの詳細ページで、シークレットの基本情報とシークレットに含まれるキーと値のペアデータを表示します。

    シークレットに TLS 証明書に関する情報が保存されている場合は、証明書に関連付けられたドメイン名、証明書のステータス、証明書を発行したサービスプロバイダーなど、証明書の詳細もページで表示できます。

シークレットの変更

  1. にログインします。

  2. 左側のナビゲーションペインで、[構成管理] > [kubernetes 構成] > [シークレット] を選択します。

  3. [シークレット] ページで、上部のナビゲーションバーでリージョンを選択します。

  4. [シークレット] ページで、変更するシークレットを見つけ、[編集] をクリックします。

    [シークレット辞書名][クラスタ名][クラスタ ID]、または [k8s 名前空間] パラメータで必要なシークレットを検索できます。

  5. 編集パネルで、要件に基づいてシークレットのキーと値を変更し、[はい] をクリックします。

    説明

    シークレットがアプリケーションで使用されている場合は、シークレットを変更した後にアプリケーションを再デプロイします。そうしないと、シークレットの変更はアプリケーションに反映されません。

シークレットに関連付けられた Ingress の表示

  1. にログインします。

  2. 左側のナビゲーションペインで、[構成管理] > [kubernetes 構成] > [シークレット] を選択します。

  3. [シークレット] ページで、上部のナビゲーションバーでリージョンを選択します。

  4. [シークレット] ページで、必要なシークレットを見つけ、[関連アプリの表示] をクリックします。

    [シークレット辞書名][クラスタ名][クラスタ ID]、または [k8s 名前空間] パラメータで必要なシークレットを検索できます。

  5. 表示されたページで、シークレットに関連付けられた Ingress を表示します。Ingress の名前をクリックして詳細を表示します。

シークレットの削除

  1. にログインします。

  2. 左側のナビゲーションペインで、[構成管理] > [kubernetes 構成] > [シークレット] を選択します。

  3. [シークレット] ページで、上部のナビゲーションバーでリージョンを選択します。

  4. [シークレット] ページで、削除するシークレットを見つけ、[削除] をクリックします。

    [シークレット辞書名][クラスタ名][クラスタ ID]、または [k8s 名前空間] パラメータで必要なシークレットを検索できます。

  5. 表示されるメッセージで、[はい] をクリックします。

    説明

    シークレットがアプリケーションで使用されている場合は、シークレットをアプリケーションから関連付けを解除した後に削除することをお勧めします。