Azure AD を Azure Kubernetes Service (プレビュー) に統合するIntegrate Azure AD in Azure Kubernetes Service (Preview)

注意

AAD (Azure Active Directory) と統合された既存の AKS クラスターは、新しい AKS マネージド AAD エクスペリエンスの影響を受けません。Existing AKS clusters with AAD (Azure Active Directory) integration are not affected by the new AKS-managed AAD experience.

Azure AD と AKS マネージド AAD の統合は、Azure AD の統合エクスペリエンスを簡素化するように設計されています。これまでユーザーは、クライアント アプリとサーバー アプリを作成し、Azure AD テナントでディレクトリの読み取りアクセス許可を付与する必要がありました。Azure AD integration with AKS-managed AAD is designed to simplify the Azure AD integration experience, where users were previously required to create a client app, a server app, and required the Azure AD tenant to grant Directory Read permissions. 新しいバージョンでは、クライアント アプリとサーバー アプリは AKS リソース プロバイダーで管理されます。In the new version, the AKS resource provider manages the client and server apps for you.

制限事項Limitations

  • 現在、既存の AKS AAD 統合クラスターを、新しい AKS マネージド AAD エクスペリエンスにアップグレードすることはできません。You can't currently upgrade an existing AKS AAD-Integrated cluster to the new AKS-managed AAD experience.

重要

AKS のプレビュー機能は、セルフサービスのオプトイン単位で利用できます。AKS preview features are available on a self-service, opt-in basis. プレビューは、"現状有姿のまま" および "利用可能な限度" で提供され、サービス レベル契約および限定保証から除外されるものとします。Previews are provided "as-is" and "as available," and are excluded from the Service Level Agreements and limited warranty. AKS プレビューは、ベストエフォート ベースでカスタマー サポートによって部分的にカバーされます。AKS previews are partially covered by customer support on a best-effort basis. そのため、これらの機能は、運用環境での使用を意図していません。As such, these features are not meant for production use. 詳細については、次のサポート記事を参照してください。For more information, see the following support articles:

開始する前にBefore you begin

重要

最小バージョンが 1.18 の Kubectl を使用する必要があります。You must use Kubectl with a minimum version of 1.18

次のリソースがインストールされている必要があります。You must have the following resources installed:

  • Azure CLI バージョン 2.5.1 以降The Azure CLI, version 2.5.1 or later
  • aks-preview 0.4.38 拡張機能The aks-preview 0.4.38 extension
  • 最小バージョンが 1.18 の KubectlKubectl with a minimum version of 1.18

aks-preview 以降の拡張機能をインストールまたは更新するには、次の Azure CLI コマンドを使用します。To install/update the aks-preview extension or later, use the following Azure CLI commands:

az extension add --name aks-preview
az extension list
az extension update --name aks-preview
az extension list

Kubectl をインストールするには、次の Azure CLI コマンドを使用します。To install kubectl, use the following:

sudo az aks install-cli
kubectl version --client

他のオペレーティング システムでは、これらの手順を使用します。Use these instructions for other operating systems.

注意事項

サブスクリプションで機能を登録した後、現時点ではその機能を登録解除することはできません。After you register a feature on a subscription, you can't currently unregister that feature. 一部のプレビュー機能を有効にすると、サブスクリプションで後で作成されたすべての AKS クラスターに対して既定値が使用される場合があります。When you enable some preview features, defaults might be used for all AKS clusters created afterward in the subscription. 運用サブスクリプションではプレビュー機能を有効にしないでください。Don't enable preview features on production subscriptions. 代わりに、プレビュー機能をテストし、フィードバックを集めるには、別のサブスクリプションを使用してください。Instead, use a separate subscription to test preview features and gather feedback.

az feature register --name AAD-V2 --namespace Microsoft.ContainerService

状態が "登録済み" と表示されるまでに数分かかることがあります。It might take several minutes for the status to show as Registered. az feature list コマンドを使用して登録状態を確認できます。You can check the registration status by using the az feature list command:

az feature list -o table --query "[?contains(name, 'Microsoft.ContainerService/AAD-V2')].{Name:name,State:properties.state}"

状態が登録済みと表示されたら、az provider register コマンドを使用して、Microsoft.ContainerService リソース プロバイダーの登録を更新します。When the status shows as registered, refresh the registration of the Microsoft.ContainerService resource provider by using the az provider register command:

az provider register --namespace Microsoft.ContainerService

Azure AD が有効になっている AKS クラスターを作成するCreate an AKS cluster with Azure AD enabled

次の CLI コマンドを使用し、AKS クラスターを作成できるようになりました。You can now create an AKS cluster by using the following CLI commands.

最初に、Azure リソース グループを作成します。First, create an Azure resource group:

# Create an Azure resource group
az group create --name myResourceGroup --location centralus

次に、AKS クラスターを作成します。Then, create an AKS cluster:

az aks create -g MyResourceGroup -n MyManagedCluster --enable-aad

上記のコマンドでは、3 ノードの AKS クラスターが作成されますが、クラスターを作成したユーザーは、既定では、このクラスターへのアクセス権を持つグループのメンバーではありません。The above command creates a three node AKS cluster, but the user, who created the cluster, by default, is not a member of a group that has access to this cluster. このユーザーは、Azure AD グループを作成し、そのグループのメンバーとして自身を追加した後、次のようにクラスターを更新する必要があります。This user needs to create an Azure AD group, add themselves as a member of the group, and then update the cluster as shown below. こちらで説明されている手順に従いますFollow instructions here

グループを作成して自身 (およびその他の人を) メンバーとして追加したら、次のコマンドを使用して、Azure AD グループでクラスターを更新できます。Once you've created a group and added yourself (and others) as a member, you can update the cluster with the Azure AD group using the following command

az aks update -g MyResourceGroup -n MyManagedCluster [--aad-admin-group-object-ids <id>] [--aad-tenant-id <id>]

また、最初にグループを作成してメンバーを追加した場合は、次のコマンドを使用して作成時に Azure AD グループを有効にすることもできます。Alternatively, if you first create a group and add members, you can enable the Azure AD group at create time using the following command,

az aks create -g MyResourceGroup -n MyManagedCluster --enable-aad [--aad-admin-group-object-ids <id>] [--aad-tenant-id <id>]

正常に作成された AKS マネージド AAD クラスターの応答本文には、次のセクションが含まれますA successful creation of an AKS-managed AAD cluster has the following section in the response body

"Azure ADProfile": {
    "adminGroupObjectIds": null,
    "clientAppId": null,
    "managed": true,
    "serverAppId": null,
    "serverAppSecret": null,
    "tenantId": "72f9****-****-****-****-****d011db47"
  }

クラスターは数分以内に作成されます。The cluster is created within a few minutes.

Azure AD が有効なクラスターへのアクセスAccess an Azure AD enabled cluster

クラスターにアクセスするための管理者資格情報を取得するには、次のようにします。To get the admin credentials to access the cluster:

az aks get-credentials --resource-group myResourceGroup --name MyManagedCluster --admin

次に、kubectl get nodes コマンドを使用して、クラスターのノードを表示します。Now use the kubectl get nodes command to view nodes in the cluster:

kubectl get nodes

NAME                       STATUS   ROLES   AGE    VERSION
aks-nodepool1-15306047-0   Ready    agent   102m   v1.15.10
aks-nodepool1-15306047-1   Ready    agent   102m   v1.15.10
aks-nodepool1-15306047-2   Ready    agent   102m   v1.15.10

クラスターにアクセスするためのユーザー資格情報を取得するには、次のようにします。To get the user credentials to access the cluster:

 az aks get-credentials --resource-group myResourceGroup --name MyManagedCluster

手順に従ってサインインします。Follow the instructions to sign in.

次のようなメッセージが表示された場合:You must be logged in to the server (Unauthorized)You receive: You must be logged in to the server (Unauthorized)

上記のユーザーはクラスターへのアクセス権を持つグループに属していないため、エラーが発生しています。The user above gets an error because the user is not a part of a group that has access to the cluster.

次のステップNext steps