AKS の Azure Policy 適用設定の確認

ポリシーの割り当てと効果を設定し、必要な違反検出・拒否が機能することを確認してください。

説明

Azure Policy アドオンは、割り当てたポリシーを AKS ワークロードに適用するために使います。有効にするだけですべての違反が拒否されるわけではなく、実際の動作は割り当て、効果、除外によって決まります。監査の効果は違反を記録しますが、デプロイは拒否しません。

想定される影響

  • 必要なポリシーが適用されず、組織の基準を外れた構成がデプロイされる場合があります。
  • 監査結果があるだけでデプロイが拒否されたと判断すると、運用判断を誤る場合があります。

対処方法

  • Azure Policy を使うクラスターでは、現在の AzureRM の azure_policy_enabled = true を設定し、必要なポリシーを割り当ててください。他のポリシーエンジンを使う場合は、同じ要件を満たすことを確認してください。
  • 監査・拒否の効果と除外範囲を確認し、正当なデプロイと禁止する構成をテストしてください。既存ワークロードへの影響を確認してから適用してください。

例

過去の AzureRM 2.x の addon_profile 形式でアドオンを比較する抜粋です。現在の AzureRM では azure_policy_enabled を使います。省略したノードプールや ID などの必須設定も必要です。

変更前

hcl
resource "azurerm_kubernetes_cluster" "example" {
  name                = "example-aks1"
  location            = azurerm_resource_group.example.location
  resource_group_name = azurerm_resource_group.example.name
  dns_prefix          = "exampleaks1"

  addon_profile {
    azure_policy {
      enabled = false
    }
  }
}

変更後

hcl
resource "azurerm_kubernetes_cluster" "example" {
  name                = "example-aks1"
  location            = azurerm_resource_group.example.location
  resource_group_name = azurerm_resource_group.example.name
  dns_prefix          = "exampleaks1"

  addon_profile {
    azure_policy {
      enabled = true
    }
  }
}

補足:

  • 変更前: Azure Policy アドオンを無効にします。
  • 変更後: アドオンを有効にします。実際の検査・拒否範囲は、別途割り当てるポリシーと効果によって決まります。

参考資料