gMSA on Azure Kubernetes Service

認証の目的で Active Directory を必要とするアプリケーションをサポートするために、グループの管理されたサービス アカウント (gMSA) を Azure Kubernetes Service (AKS) で使用できます。 gMSA on AKS の構成では、次のサービスと設定を適切にセットアップする必要があります: AKS、Azure Key Vault、Active Directory、資格情報の仕様など。このプロセスを合理化するには、下の PowerShell モジュールを使用できます。 このモジュールは、さまざまなサービスを設定する手間を省くことで、gMSA on AKS を構成するプロセスを簡略化するように設計されました。

環境要件

gMSA on AKS をデプロイするには、以下が必要です。

  • Windows ノードが稼働している AKS クラスター。 AKS クラスターの準備がない場合は、Azure Kubernetes Service のドキュメントを参照してください。
  • gMSA 向けに適切に構成された Active Directory 環境。 ドメインの構成方法の詳細については、以下を参照してください。
    • AKS 上の Windows ノードは、Active Directory ドメイン コントローラーに接続できる必要があります。
  • gMSA と標準ドメイン ユーザーを設定するための、委任された承認を持つ Active Directory ドメイン資格情報。 このタスクは、(必要に応じて) 承認されたユーザーに委任できます。

AKS PowerShell モジュールに gMSA をインストールする

開始するには、PowerShell モジュールを PowerShell ギャラリーからダウンロードします。

Install-Module -Name AksGMSA -Repository PSGallery -Force

Note

gMSA on AKS PowerShell モジュールは継続的に更新されます。 このチュートリアルの手順を以前に実行し、今回新しい構成を確認している場合は、モジュールを最新バージョンに更新してください。 モジュールの詳細については、PowerShell ギャラリー ページを参照してください。

モジュールの要件

gMSA on AKS の PowerShell モジュールは、さまざまなモジュールやツールに依存します。 これらの要件をインストールするには、管理者特権で次のコマンドを実行します。

Install-ToolingRequirements

Azure 資格情報でログインする

AKS クラスターを適切に構成するには、gMSA on AKS の PowerShell モジュールに対して資格情報を使用して Azure にログインする必要があります。 PowerShell を使って Azure にログインするには、以下を実行します。

Connect-AzAccount -DeviceCode -Subscription "<SUBSCRIPTION_ID>"

また、Azure CLI を使用してログインする必要もあります。これは、PowerShell モジュールでもバックグラウンドでそれが使用されるためです。

az login --use-device-code
az account set --subscription "<SUBSCRIPTION_ID>"

gMSA on AKS モジュールに必要な入力をセットアップする

gMSA on AKS の構成全体にわたり、次のような多くの入力が必要になります: お使いの AKS クラスター名、Azure リソース グループ名、必要な資産をデプロイするリージョン、Active Directory ドメイン名など。 プロセスを効率化するために、すべての必要な値を集め、以下のコマンドで使用される変数に格納する入力コマンドを用意しました。

開始するには、次のコマンドを実行します

$params = Get-AksGMSAParameters

コマンドを実行したら、コマンドが完了するまで、必要な入力を指定します。 以降、このページに示されているようにコマンドを単にコピーして貼り付けるだけで済みます。

ご利用の AKS クラスターに接続する

gMSA on AKS の PowerShell モジュールの使用時には、構成する AKS クラスターに接続します。 gMSA on AKS の PowerShell モジュールは、kubectl 接続に依存します。 クラスターを接続するには、以下を実行します (上で入力を指定したため、下のコマンドをコピーし、PowerShell セッションに貼り付けるだけで済むことに注意してください)。

 Import-AzAksCredential -Force `
 -ResourceGroupName $params["aks-cluster-rg-name"] `
 -Name $params["aks-cluster-name"]

次のステップ