演習 - Azure Kubernetes Service クラスターを作成する
この演習では、このサービスを使用する多くの顧客の需要を満たすために、複数のノードを使用する AKS クラスターを作成します。 ワークロード リソースを作成および管理するための最適な方法が提供されるため、"単一のコントロール プレーンと複数のノード" のアーキテクチャを使用することにします。
AKS では、ポータルまたは Azure CLI を介して Linux と Windows の両方のノード プールがサポートされていますが、Windows ノード プールを使用する場合は、追加の前提条件とコマンドによってクラスターを作成する必要があります。 追加するノード プールの種類に基づいて、OS を選択します。
重要
この演習を行うには、独自の Azure サブスクリプションが必要です。また、料金が発生することがあります。 Azure サブスクリプションをお持ちでない場合は、開始する前に無料アカウントを作成してください。
リソースをデプロイするアカウントで Azure Cloud Shell にサインインします。
重要
すべてのスクリプトを Bash で実行します。そのため、まだ Cloud Shell を作成していない場合は、実行中のシェルとして Bash を選択してください。
演習全体で再利用する構成値の変数を作成します。
export RESOURCE_GROUP=rg-contoso-video export CLUSTER_NAME=aks-contoso-video export LOCATION=eastus
LOCATION 変数を自分に最も近いリージョンに更新します。 この例では、
eastus
を使います。az group create
コマンドを実行して、リソース グループを作成します。 この新しいリソース グループにすべてのリソースをデプロイします。az group create --name=$RESOURCE_GROUP --location=$LOCATION
az aks create
コマンドを実行して、AKS クラスターを作成します。az aks create \ --resource-group $RESOURCE_GROUP \ --name $CLUSTER_NAME \ --node-count 2 \ --generate-ssh-keys \ --node-vm-size Standard_B2s \ --network-plugin azure
このコマンドにより、
rg-contoso-video
リソース グループ内にaks-contoso-video
という名前の新しい AKS クラスターが作成されます。 このクラスターには、--node-count
パラメーターを使用して定義したノードが 2 つあります。 この演習では、コストを考慮して 2 つのノードのみを使用しています。--node-vm-size
パラメーターを使用すると、クラスター ノードが Standard_B2s サイズの VM として構成されます。 これらのノードは、システム モードの一部です。重要
ノード プールを作成するには Standard B2s VM が必要ですが、Free レベルのサブスクリプションでは使用できません。 制限を受けている場合は、Standard アップグレードにアップグレードする必要があります。
az aks nodepool add
コマンドを実行し、既定の Linux オペレーティング システムを使用する別のノード プールを追加します。az aks nodepool add \ --resource-group $RESOURCE_GROUP \ --cluster-name $CLUSTER_NAME \ --name userpool \ --node-count 2 \ --node-vm-size Standard_B2s
このコマンドにより、(前のコマンドで作成した) 既存の AKS クラスターに新しいノード プール (ユーザー モード) が追加されます。 この新しいノード プールは、システム ノード プールとは異なり、アプリケーションとワークロードをホストするために使われます。
kubectl でリンクする
Cloud Shell で次のコマンドを実行し、
kubectl
で Kubernetes クラスターをリンクします。az aks get-credentials --name $CLUSTER_NAME --resource-group $RESOURCE_GROUP
このコマンドにより、クラスターにアクセスするためのすべての情報を保持する
~/.kube/config
ファイルにエントリが追加されます。 kubectl を使用すると、単一のコマンドライン インターフェイスから複数のクラスターを管理できます。kubectl get nodes
コマンドを実行して、クラスターに接続できることを確認し、その構成を確かめます。kubectl get nodes
出力には、2 つのノード プールで使用可能な 4 つのノードが一覧表示されます。
NAME STATUS ROLES AGE VERSION
aks-nodepool1-21895026-vmss000000 Ready agent 245s v1.23.12
aks-nodepool1-21895026-vmss000001 Ready agent 245s v1.23.12
aks-userpool-21895026-vmss000000 Ready agent 105s v1.23.12
aks-userpool-21895026-vmss000001 Ready agent 105s v1.23.12