このトピックでは、Container Service for Kubernetes(ACK)コンソールでシークレットを管理する方法について説明します。
前提条件
ACK クラスタが作成されていること。詳細については、「ACK マネージドクラスターを作成する」をご参照ください。
背景情報
Kubernetes クラスタの機密情報を保存するには、シークレットを使用することをお勧めします。機密情報には、パスワードと証明書が含まれます。
シークレットは、次のタイプに分類されます。
サービスアカウント:サービスアカウントは Kubernetes によって自動的に作成され、ポッドの /run/secrets/kubernetes.io/serviceaccount ディレクトリに自動的にマウントされます。サービスアカウントは、ポッドが API サーバーと対話するための ID を提供します。
Opaque:このタイプのシークレットは Base64 でエンコードされ、パスワードや証明書などの機密情報を保存するために使用されます。
デフォルトでは、ACK コンソールで作成できるのは Opaque シークレットのみです。Opaque シークレットはマップ型のデータを保存します。したがって、値は Base64 でエンコードする必要があります。 ACK コンソールでは、数回クリックするだけでシークレットを作成できます。プレーンテキストは自動的に Base64 でエンコードされます。
CLI を使用してシークレットを作成することもできます。
シークレットの作成
ACK コンソール にログインします。左側のナビゲーションウィンドウで、[クラスター] をクリックします。
[クラスター] ページで、変更するクラスターの名前をクリックします。左側のペインで、 を選択します。
[シークレット] ページで、[名前空間] ドロップダウンリストから名前空間を選択します。[シークレット] ページの右上隅にある [作成] をクリックし、表示されるパネルでシークレットを構成します。
パラメーター
説明
名前
シークレットの名前を入力します。名前は 1 ~ 253 文字で、小文字、数字、ハイフン(-)、およびピリオド(.)のみを含めることができます。
タイプ
Opaque、プライベートリポジトリログインシークレット、または TLS 証明書 を選択できます。
Opaque
タイプ を Opaque に設定した場合は、次のパラメーターを構成します。
オプション: シークレットデータをプレーンテキストで入力するには、[base64 を使用してデータ値をエンコードする] を選択します。
キーと値のペアでシークレットを構成します。 [+ 追加] をクリックします。 [名前] フィールドと [値] フィールドに、シークレットのキーと値を入力します。
プライベートリポジトリログインシークレット
タイプ を プライベートリポジトリログインシークレット に設定した場合は、次のパラメーターを構成します。
Docker レジストリ URL:シークレットが保存されている Docker レジストリのアドレスを入力します。
ユーザー名:Docker レジストリにログインするために使用するユーザー名を入力します。
パスワード:Docker レジストリにログインするために使用するパスワードを入力します。
TLS 証明書
タイプ を TLS 証明書 に設定した場合は、次のパラメーターを構成します。
証明書:TLS 証明書を入力します。
キー:TLS 証明書のキーを入力します。
次の手順
シークレットを作成した後、[シークレット] ページで次の操作を実行できます。
シークレットの名前をクリックして、シークレットの基本情報と詳細を表示します。
説明
アイコンをクリックして、プレーンテキストで値を表示します。[アクション] 列の [編集] をクリックして、シークレットの情報を変更します。
[アクション] 列の [削除] をクリックして、シークレットを削除します。
重要クラスターの作成時に生成されたシークレットは削除しないでください。