まとめ

完了

このモジュールでは、Azure Kubernetes Service (AKS) のコンピューティング コストを最適化する戦略を検証しました。 あなたは、顧客の要求に応え、ポリシーを適用するために、多数のワークロードをコスト効率よくデプロイして管理する方法を探していました。 プロセスを自動化し、組織での AKS コンピューティング リソースの使用方法を開発チームがどのように決定するかを管理するビジネス ポリシーを導入しました。

AKS クラスターに複数のノード プールを構成することで、特定のワークロードを実行する特定のユーザー ノード プールを識別しました。 使用間隔を制御できるシナリオで、これらのノード プールを構成し、手動でノード数をスケーリングする方法について説明しました。

次に、使用されていない Azure のコンピューティング容量を割引価格で使用できるよう、スポット ユーザー ノード プールを構成しました。 ノード プールで実行するようにスケジュールされたワークロードを作成しました。 必要なコンピューティング リソースに応じてノード数を増減できるように、クラスター自動スケーラーを構成しました。 この構成によって、使用しない数多くのノードを作成せずに、顧客の需要の増加に対応できます。

最後に、AKS 用の Azure Policy アドオンを有効にして構成しました。 このアドオンによって、AKS のコンピューティング リソースのデプロイを管理する、リソース クォータを管理できます。 CPU とメモリのリソース制限を確保するための組み込みのポリシーを有効にしました。 このポリシーにより、事前定義された CPU とメモリのリソース制限を超えるワークロードを拒否するようにパラメーターが構成されます。

AKS を使用すると、Azure でマネージド Kubernetes クラスターを簡単にデプロイでき、多数のワークロードが実行されるときのコンピューティング コストを最適化できます。

有料リソースをクリーンアップする

このモジュールでは、ご自分の Azure サブスクリプションで課金されるリソースを作成しました。 次のステップでは、アカウントに対して継続的な料金が発生しないように、これらのリソースをクリーンアップする方法を示します。

  1. Azure portal を開きます。

  2. [リソース グループ] を選択します。

  3. rg-akscostsaving リソース グループ、または使用したリソース グループ名を探し、それを選択します。

  4. リソース グループの [概要] タブで、[リソース グループの削除] を選択します。

  5. リソース グループの名前を入力して確定します。 [削除] を選択して、このモジュールで作成したすべてのリソースを削除します。 [削除] をもう一度選択し、削除を確定します。

  6. 最後に、kubectl config delete-context コマンドを実行して、削除されたクラスターのコンテキストを削除します。 次に完全なコマンドの例を示します。 クラスターの名前は必ずご自分のクラスター名に置き換えてください。

    kubectl config delete-context akscostsaving-17835
    

    コマンドが成功した場合には、次のような出力が返されます。

    deleted context akscostsaving-17835 from /home/user/.kube/config
    

省略可能:サービスをクリーンアップする

このモジュールでは、機能にアクセスするために Azure 内のサービス プロバイダーも登録しました。 プロバイダーまたは機能の登録に追加料金はかかりません。 登録を解除するには、次の手順に従います。

  1. 次のコマンドを実行して、AKS の Azure Policy 機能の登録を解除します。

    az feature unregister --namespace Microsoft.ContainerService --name AKS-AzurePolicyAutoApprove
    
  2. Azure プロバイダーに対して繰り返します。

    az provider unregister --namespace Microsoft.PolicyInsights
    az provider unregister --namespace Microsoft.ContainerService
    

    重要

    登録解除を選択した場合、学習モジュールで説明されている最適化機能は、登録するまで実行できません。

詳細情報

このモジュールで説明した各概念の詳細については、以下の記事とサイトを参照してください。