Azure Kubernetes Service (AKS) についてよく寄せられる質問Frequently asked questions about Azure Kubernetes Service (AKS)

この記事では、Azure Kubernetes Service (AKS) についてよく寄せられる質問にお答えします。This article addresses frequent questions about Azure Kubernetes Service (AKS).

現在はどの Azure リージョンで AKS が提供されていますか?Which Azure regions currently provide AKS?

利用可能なリージョンの完全な一覧については、AKS の利用可能なリージョンに関するページを参照してください。For a complete list of available regions, see AKS regions and availability.

AKS はノードの自動スケールをサポートしていますか?Does AKS support node autoscaling?

はい、AKS でエージェント ノードを自動的に水平方向にスケーリングする機能は、現在プレビューで利用できます。Yes, the ability to automatically scale agent nodes horizontally in AKS is currently available in preview. 手順については、AKS でアプリケーションの需要を満たすためのクラスターの自動スケーリングに関するページを参照してください。See Automatically scale a cluster to meet application demands in AKS for instructions. AKS の自動スケーリングは、Kubernetes autoscaler に基づきます。AKS autoscaling is based on the Kubernetes autoscaler.

既存の仮想ネットワークに AKS をデプロイできますか?Can I deploy AKS into my existing virtual network?

はい、高度なネットワーク機能を使用して、既存の仮想ネットワークに AKS クラスターをデプロイできます。Yes, you can deploy an AKS cluster into an existing virtual network by using the advanced networking feature.

Kubernetes API サーバーにアクセスできるユーザーを制限できますか?Can I limit who has access to the Kubernetes API server?

はい、現在プレビュー中の API サーバーの許可された IP 範囲を使用して、Kubernetes API サーバーへのアクセスを制限できます。Yes, you can limit access to the Kubernetes API server using API Server Authorized IP Ranges, which is currently in preview.

Kubernetes API サーバーを仮想ネットワーク内でのみアクセスできるようにできますか?Can I make the Kubernetes API server accessible only within my virtual network?

現時点ではできませんが、計画されています。Not at this time, but this is planned. 進捗状況は、AKS GitHub リポジトリで追跡できます。You can track progress on the AKS GitHub repo.

1 つのクラスター内で、異なる VM サイズを設定できますか?Can I have different VM sizes in a single cluster?

はい、現在プレビュー中の複数のノード プールを作成することで、AKS クラスター内で異なる仮想マシン サイズを使用できます。Yes, you can use different virtual machine sizes in your AKS cluster by creating multiple node pools, which is currently in preview.

AKS エージェント ノードにセキュリティ更新プログラムは適用されますか?Are security updates applied to AKS agent nodes?

Azure では、セキュリティ更新プログラムが夜間スケジュールでご利用のクラスター内の Linux ノードに自動的に適用されます。Azure automatically applies security patches to the Linux nodes in your cluster on a nightly schedule. ただし、必要な場合は、それらの Linux ノードが確実に再起動されるようにする必要があります。However, you are responsible for ensuring that those Linux nodes are rebooted as required. ノードを再起動するにはいくつかのオプションがあります。You have several options for rebooting nodes:

  • Azure Portal または Azure CLI から手動で行います。Manually, through the Azure portal or the Azure CLI.
  • AKS クラスターをアップグレードします。By upgrading your AKS cluster. クラスターでは、cordon ノードと drain ノードが自動的にアップグレードされてから、最新の Ubuntu イメージと、新しいパッチ バージョンまたは Kubernetes のマイナー バージョンで、新しいノードがオンラインにされます。The cluster upgrades cordon and drain nodes automatically and then bring a new node online with the latest Ubuntu image and a new patch version or a minor Kubernetes version. 詳細については、「AKS クラスターのアップグレード」を参照してください。For more information, see Upgrade an AKS cluster.
  • Kubernetes 用のオープン ソースの再起動デーモンである Kured を使用します。By using Kured, an open-source reboot daemon for Kubernetes. Kured は DaemonSet として実行され、再起動が必要であることを示すファイルの存在が各ノードで監視されます。Kured runs as a DaemonSet and monitors each node for the presence of a file that indicates that a reboot is required. クラスター全体で、クラスターのアップグレードと同じ cordon および drain プロセスによって OS の再起動が管理されます。Across the cluster, OS reboots are managed by the same cordon and drain process as a cluster upgrade.

Kured の使用の詳細については、AKS 上のノードへのセキュリティおよびカーネルの更新プログラムの適用に関する記事を参照してください。For more information about using kured, see Apply security and kernel updates to nodes in AKS.

Windows Server ノードWindows Server nodes

Windows Server ノードでは (現在、AKS ではプレビュー中)、Windows Update が自動的に実行されたり、最新の更新プログラムが適用されたりすることはありません。For Windows Server nodes (currently in preview in AKS), Windows Update does not automatically run and apply the latest updates. Windows Update のリリース サイクルと独自の検証プロセス周辺の定期的スケジュールで、AKS クラスター内の Windows Server ノード プールでアップグレードを実行する必要があります。On a regular schedule around the Windows Update release cycle and your own validation process, you should perform an upgrade on the Windows Server node pool(s) in your AKS cluster. このアップグレード プロセスでは、最新の Windows Server イメージと修正プログラムを実行するノードが作成されて、古いノードが削除されます。This upgrade process creates nodes that run the latest Windows Server image and patches, then removes the older nodes. このプロセスの詳細については、AKS でのノード プールのアップグレードに関するページを参照してください。For more information on this process, see Upgrade a node pool in AKS.

AKS と一緒にリソース グループが 2 つ作成されるのはなぜでしょうか?Why are two resource groups created with AKS?

各 AKS デプロイは、2 つのリソース グループにまたがります。Each AKS deployment spans two resource groups:

  1. 最初のリソース グループを作成します。You create the first resource group. このグループには、Kubernetes サービスのリソースのみが含まれます。This group contains only the Kubernetes service resource. AKS リソース プロバイダーにより、デプロイの間に 2 番目のリソース グループが自動的に作成されます。The AKS resource provider automatically creates the second resource group during deployment. 2 番目のリソース グループの例は、MC_myResourceGroup_myAKSCluster_eastus です。An example of the second resource group is MC_myResourceGroup_myAKSCluster_eastus. この 2 つ目のリソース グループの名前を指定する方法については、次のセクションをご覧ください。For information on how to specify the name of this second resource group, see the next section.
  2. ノード リソース グループと呼ばれる 2 つ目のリソース グループには、クラスターに関連付けられたインフラストラクチャ リソースがすべて含まれます。The second resource group, known as the node resource group, contains all of the infrastructure resources associated with the cluster. これらのリソースには、Kubernetes ノードの VM、仮想ネットワー キング、およびストレージが含まれます。These resources include the Kubernetes node VMs, virtual networking, and storage. 既定では、ノード リソース グループには MC_myResourceGroup_myAKSCluster_eastus のような名前が付いています。By default, the node resource group has a name like MC_myResourceGroup_myAKSCluster_eastus. AKS は、クラスターが削除されるたびにノード リソースを自動的に削除するため、クラスターのライフサイクルを共有するリソースにのみ使用する必要があります。AKS automatically deletes the node resource whenever the cluster is deleted, so it should only be used for resources which share the cluster's lifecycle.

AKS ノード リソース グループに独自の名前を指定できますか?Can I provide my own name for the AKS node resource group?

はい。Yes. 既定では、AKS はノード リソース グループに MC_clustername_resourcegroupname_location という名前を設定しますが、独自の名前を指定することもできます。By default, AKS will name the node resource group MC_clustername_resourcegroupname_location, but you can also provide your own name.

独自のリソース グループ名を指定するには、aks-preview Azure CLI 拡張機能バージョン 0.3.2 以降をインストールします。To specify your own resource group name, install the aks-preview Azure CLI extension version 0.3.2 or later. az aks create コマンドを使用して AKS クラスターを作成するときに、 --node-resource-group パラメーターを使用してリソース グループの名前を指定します。When you create an AKS cluster by using the az aks create command, use the --node-resource-group parameter and specify a name for the resource group. Azure Resource Manager テンプレートを使用して AKS クラスターをデプロイする場合は、nodeResourceGroup プロパティを使用してリソース グループ名を定義できます。If you use an Azure Resource Manager template to deploy an AKS cluster, you can define the resource group name by using the nodeResourceGroup property.

  • セカンダリ リソース グループは、自分のサブスクリプションの Azure リソース プロバイダーによって自動的に作成されます。The secondary resource group is automatically created by the Azure resource provider in your own subscription.
  • カスタム リソース グループの名前を指定できるのは、クラスターを作成するときだけです。You can specify a custom resource group name only when you're creating the cluster.

ノード リソース グループを使うときは、次のことができないので注意してください。As you work with the node resource group, keep in mind that you cannot:

  • ノード リソース グループに対して既存のリソース グループを指定すること。Specify an existing resource group for the node resource group.
  • ノード リソース グループに対して異なるサブスクリプションを指定すること。Specify a different subscription for the node resource group.
  • クラスターが作成された後で、ノード リソース グループ名を変更すること。Change the node resource group name after the cluster has been created.
  • ノード リソース グループ内の管理対象リソースに名前を指定すること。Specify names for the managed resources within the node resource group.
  • ノード リソース グループ内の管理対象リソースのタグを変更または削除すること。Modify or delete tags of managed resources within the node resource group. (詳しくは、次のセクションで追加の情報を参照してください。)(See additional information in the next section.)

ノード リソース グループ内の AKS リソースのタグや他のプロパティを変更できますか?Can I modify tags and other properties of the AKS resources in the node resource group?

ノード リソース グループ内の Azure で作成されたタグや他のリソース プロパティを変更または削除する場合、スケーリングやアップグレードのエラーなど、予期しない結果になる可能性があります。If you modify or delete Azure-created tags and other resource properties in the node resource group, you could get unexpected results such as scaling and upgrading errors. AKS では、カスタム タグを作成および変更できます。AKS allows you to create and modify custom tags. たとえばビジネス単位やコスト センターを割り当てるために、カスタム タグを作成または変更することがあります。You might want to create or modify custom tags, for example, to assign a business unit or cost center. AKS クラスター内のノード リソース グループの下にあるリソースを変更すると、サービス レベル目標 (SLO) が中断されます。By modifying the resources under the node resource group in the AKS cluster, you break the service-level objective (SLO). 詳細については、「AKS でサービス レベル アグリーメントは提供されますか?」を参照してください。For more information, see Does AKS offer a service-level agreement?

AKS ではどのような Kubernetes アドミッション コントローラーがサポートされますか?What Kubernetes admission controllers does AKS support? アドミッション コントローラーの追加や削除はできますか?Can admission controllers be added or removed?

AKS では、以下のアドミッション コントローラーがサポートされています。AKS supports the following admission controllers:

  • NamespaceLifecycleNamespaceLifecycle
  • LimitRangerLimitRanger
  • ServiceAccountServiceAccount
  • DefaultStorageClassDefaultStorageClass
  • DefaultTolerationSecondsDefaultTolerationSeconds
  • MutatingAdmissionWebhookMutatingAdmissionWebhook
  • ValidatingAdmissionWebhookValidatingAdmissionWebhook
  • ResourceQuotaResourceQuota
  • DenyEscalatingExecDenyEscalatingExec
  • AlwaysPullImagesAlwaysPullImages

現在は、AKS でアドミッション コントローラーの一覧を変更することはできません。Currently, you can't modify the list of admission controllers in AKS.

AKS には Azure Key Vault が統合されているのですか?Is Azure Key Vault integrated with AKS?

AKS は現在、Azure Key Vault とネイティブに統合されていません。AKS isn't currently natively integrated with Azure Key Vault. ただし、Kubernetes プロジェクト用の Azure Key Vault FlexVolume を使用して、Kubernetes ポッドから Key Vault のシークレットに直接統合することはできます。However, the Azure Key Vault FlexVolume for Kubernetes project enables direct integration from Kubernetes pods to Key Vault secrets.

AKS で Windows Server コンテナーを実行できますか?Can I run Windows Server containers on AKS?

はい、Windows Server コンテナーはプレビューでご利用になれます。Yes, Windows Server containers are available in preview. AKS で Windows Server コンテナーを実行するには、Windows Server をゲスト OS として実行するノード プールを作成します。To run Windows Server containers in AKS, you create a node pool that runs Windows Server as the guest OS. Windows Server コンテナーでは、Windows Server 2019 のみを使用できます。Windows Server containers can use only Windows Server 2019. 開始するには、Windows Server ノード プールでの AKS クラスターの作成に関するページを参照してください。To get started, see Create an AKS cluster with a Windows Server node pool.

Window Server によるノード プールのサポートには、Kubernetes プロジェクトの上流の Windows Server の一部であるいくつかの制限が含まれます。Window Server support for node pool includes some limitations that are part of the upstream Windows Server in Kubernetes project. これらの制限の詳細については、AKS での Windows Server コンテナーの制限事項に関するページを参照してください。For more information on these limitations, see Windows Server containers in AKS limitations.

AKS でサービス レベル アグリーメントは提供されますか?Does AKS offer a service-level agreement?

サービス レベル アグリーメント (SLA) では、プロバイダーは、公開されたサービス レベルが満たされない場合に、サービスの費用を顧客に払い戻すことに同意します。In a service-level agreement (SLA), the provider agrees to reimburse the customer for the cost of the service if the published service level isn't met. AKS は無料であり、払い戻す費用がないため、AKS には正式な SLA はありません。Because AKS is free, no cost is available to reimburse, so AKS has no formal SLA. ただし、AKS では、Kubernetes API サーバーの 99.5 パーセント以上の可用性を維持できるようにしています。However, AKS seeks to maintain availability of at least 99.5 percent for the Kubernetes API server.

maxPods を 30 未満に設定できないのはなぜですか?Why can't I set maxPods below 30?

AKS では、Azure CLI および Azure Resource Manager テンプレートを使ってクラスターを作成するときに、maxPods の値を設定することができます。In AKS, you can set the maxPods value when you create the cluster by using the Azure CLI and Azure Resource Manager templates. ただし、Kubenet と Azure CNI の両方で、"最小限の値" が必要です(作成時に検証されます)。However, both Kubenet and Azure CNI require a minimum value (validated at creation time):

ネットワークNetworking 最小値Minimum 最大値Maximum
Azure CNIAzure CNI 3030 250250
KubenetKubenet 3030 110110

AKS はマネージド サービスであるため、クラスターの一部としてアドオンとポッドをデプロイして管理します。Because AKS is a managed service, we deploy and manage add-ons and pods as part of the cluster. 以前は、ユーザーはマネージド ポッドが実行するために必要な値より小さい値に maxPods を定義できました (たとえば 30)。In the past, users could define a maxPods value lower than the value that the managed pods required to run (for example, 30). 現在は、AKS では "((maxPods または (maxPods * vm_count)) > マネージド アドオン ポッドの最小値" という式を使って、ポッドの最小数が計算されるようになりました。AKS now calculates the minimum number of pods by using this formula: ((maxPods or (maxPods * vm_count)) > managed add-on pods minimum.

ユーザーは、最小の maxPods の検証をオーバーライドできません。Users can't override the minimum maxPods validation.

自分の AKS エージェント ノードに Azure の予約割引を適用できますか?Can I apply Azure reservation discounts to my AKS agent nodes?

AKS エージェント ノードは、標準の Azure 仮想マシンとして課金されます。したがって、AKS で使用している VM サイズに対して Azure の予約を購入している場合、それらの割引が自動的に適用されます。AKS agent nodes are billed as standard Azure virtual machines, so if you've purchased Azure reservations for the VM size that you are using in AKS, those discounts are automatically applied.

Azure テナント間でクラスターを移動/移行することはできますか?Can I move/migrate my cluster between Azure tenants?

az aks update-credentials コマンドを使用して、Azure テナント間で AKS クラスターを移動できます。The az aks update-credentials command can be used to move an AKS cluster between Azure tenants. サービス プリンシパルの更新または作成の選択」の指示に従って、AKS クラスターを新しい資格情報で更新しますFollow the instructions in Choose to update or create a service principal and then update aks cluster with new credentials.

サブスクリプション間でクラスターを移動/移行することはできますか?Can I move/migrate my cluster between subscriptions?

サブスクリプション間でのクラスターの移動は現在サポートされていません。Movement of clusters between subscriptions is currently unsupported.

AKS クラスターを現在の Azure サブスクリプションから別のサブスクリプションへ移動することはできますか?Can I move my AKS clusters from the current azure subscription to another?

Azure サブスクリプション間での AKS クラスターおよびそれに関連付けられているリソースの移動はサポートされていません。Moving your AKS cluster and it's associated resources between Azure subscriptions is not supported.

クラスターの削除に時間がかかるのはなぜですか?Why is my cluster delete taking so long?

ほとんどのクラスターはユーザーの要求に応じて削除されます。場合によっては、特に顧客が独自のリソース グループを持ち込んでいたり、リソース グループ間のタスクの削除を行っている場合に、さらに時間がかかったり、失敗することがあります。Most clusters are deleted upon user request; in some cases, especially where customers are bringing their own Resource Group, or doing cross-RG tasks deletion can take additional time or fail. 削除に関する問題が発生した場合は、リソース グループをロックしていないこと、リソース グループ外のリソースのリソース グループとの関連付けが解除されていることなどを再確認してください。If you have an issue with deletes, double-check that you do not have locks on the RG, that any resources outside of the RG are disassociated from the RG, etc.

'NodeLost' または 'Unknown' の状態のポッドまたはデプロイがある場合でも、クラスターをアップグレードできますか?If I have pod / deployments in state 'NodeLost' or 'Unknown' can I still upgrade my cluster?

可能ですが、AKS ではお勧めしていません。You can, but AKS does not recommend this. アップグレードは、クラスターの状態がわかっており正常な場合に実行することが理想的です。Upgrades should ideally be performed when the state of the cluster is known and healthy.

異常な状態のノードやシャットダウンしているノードを 1 つ以上含むクラスターがある場合に、アップグレードを実行できますか?If I have a cluster with one or more nodes in an Unhealthy state or shut down, can I perform an upgrade?

できません。エラー状態や、それ以外にクラスターから取り除かれているノードはすべて、アップグレード前に削除/除去してください。No, please delete/remove any nodes in a failed state or otherwise removed from the cluster prior to upgrading.

クラスターの削除を実行しましたが、[Errno 11001] getaddrinfo failed のエラーが表示されますI ran a cluster delete, but see the error [Errno 11001] getaddrinfo failed

最も一般的な原因は、まだ使用中でクラスターに関連付けられている 1 つ以上のネットワーク セキュリティ グループ (NSG) をユーザーが保持していることです。Most commonly, this is caused by users having one or more Network Security Groups (NSGs) still in use and associated with the cluster. これらのグループを取り除いてから、もう一度削除を試してください。Please remove them and attempt the delete again.

アップグレードを実行しましたが、ポッドがクラッシュ ループの状態になりました。準備プローブが失敗していますか?I ran an upgrade, but now my pods are in crash loops, and readiness probes fail?

サービス プリンシパルの有効期限が切れていないことを確認してください。Please confirm your service principal has not expired. 詳細については、AKS サービス プリンシパルAKS の資格情報の更新に関するページを参照してください。Please see: AKS service principal and AKS update credentials.

クラスターは動作していましたが、突然、LoadBalancers のプロビジョニングや PVC のマウントなどができなくなりました。My cluster was working, but suddenly can not provision LoadBalancers, mount PVCs, etc.?

サービス プリンシパルの有効期限が切れていないことを確認してください。Please confirm your service principal has not expired. 詳細については、AKS サービス プリンシパルAKS の資格情報の更新に関するページを参照してください。Please see: AKS service principal and AKS update credentials.

仮想マシン スケール セット API を使用して手動でスケーリングできますか?Can I use the virtual machine scale set APIs to scale manually?

いいえ、仮想マシン スケール セット API を使用したスケール操作はサポートされていません。No, scale operations by using the virtual machine scale set APIs aren't supported. AKS API (az aks scale) を使用してください。Use the AKS APIs (az aks scale).

仮想マシン スケール セットを使用して、0 ノードに手動でスケーリングできますか?Can I use virtual machine scale sets to manually scale to 0 nodes?

いいえ、仮想マシン スケール セット API を使用したスケール操作はサポートされていません。No, scale operations by using the virtual machine scale set APIs aren't supported.

すべての VM を停止したり、その割り当てを解除したりできますか?Can I stop or de-allocate all my VMs?

AKS には、このような構成に耐え、そこから復旧するための回復性メカニズムがありますが、これは推奨する構成ではありません。While AKS has resilience mechanisms to withstand such a config and recover from it, this is not a recommended configuration.

カスタム VM 拡張機能を使用できますか?Can I use custom VM extensions?

マネージド サービスである AKS はなく、IaaS リソースの操作はサポートされていません。No AKS is a managed service, and manipulation of the IaaS resources is not supported. カスタム コンポーネントなどをインストールするには、To install custom components, etc. Kubernetes の API およびメカニズムを活用してください。please leverage the kubernetes APIs and mechanisms. たとえば、必要なコンポーネントをインストールするには、DaemonSet を活用します。For example, leverage DaemonSets to install required components.