在 Azure Kubernetes 服务 (AKS) 群集上禁用容器见解
启用对 Azure Kubernetes 服务 (AKS) 群集的监视后,如果决定不再监视它,可以停止监视群集。 本文介绍如何使用 Azure CLI 或提供的 Azure 资源管理器模板(ARM 模板)来执行此任务。
Azure CLI
使用 az aks disable-addons 命令禁用容器见解。 该命令从群集节点中删除代理。 它不会删除解决方案或已收集并存储在 Azure Monitor 资源中的数据。
az aks disable-addons -a monitoring -n MyExistingManagedCluster -g MyExistingManagedClusterRG
若要重新启用对群集的监视,请参阅使用 Azure CLI 启用监视。
Azure 资源管理器模板
提供了两个 ARM 模板,以支持在资源组中一致且重复地删除解决方案资源。 一个是 JSON 模板,用于指定用于停止监视的配置。 另一个模板包含配置的参数值,用于指定 AKS 群集资源 ID 和在其中部署群集的资源组。
如果不熟悉使用模板部署资源的概念,请参阅:
注意
模板必须部署在群集的同一资源组中。 如果在使用此模板时省略任何其他属性或加载项,它们可能会从群集中删除。 例如 enableRBAC
(用于群集中实施的 Kubernetes RBAC 策略)或 aksResourceTagValues
(如果为 AKS 群集指定了标记)。
如果选择使用 Azure CLI,必须在本地安装和使用 CLI。 必须运行 Azure CLI 2.0.27 版或更高版本。 若要确定版本,请运行 az --version
。 如果需要安装或升级 Azure CLI,请参阅安装 Azure CLI。
创建模板
将以下 JSON 语法复制并粘贴到文件中:
{ "$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#", "contentVersion": "1.0.0.0", "parameters": { "aksResourceId": { "type": "string", "metadata": { "description": "AKS Cluster Resource ID" } }, "aksResourceLocation": { "type": "string", "metadata": { "description": "Location of the AKS resource e.g. \"China East2\"" } }, "aksResourceTagValues": { "type": "object", "metadata": { "description": "Existing all tags on AKS Cluster Resource" } } }, "resources": [ { "name": "[split(parameters('aksResourceId'),'/')[8]]", "type": "Microsoft.ContainerService/managedClusters", "location": "[parameters('aksResourceLocation')]", "tags": "[parameters('aksResourceTagValues')]", "apiVersion": "2018-03-31", "properties": { "mode": "Incremental", "id": "[parameters('aksResourceId')]", "addonProfiles": { "omsagent": { "enabled": false, "config": null } } } } ] }
将此文件以“OptOutTemplate.json”文件名保存到本地文件夹 。
将以下 JSON 语法粘贴到文件中:
{ "$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentParameters.json#", "contentVersion": "1.0.0.0", "parameters": { "aksResourceId": { "value": "/subscriptions/<SubscriptionID>/resourcegroups/<ResourceGroup>/providers/Microsoft.ContainerService/managedClusters/<ResourceName>" }, "aksResourceLocation": { "value": "<aksClusterRegion>" }, "aksResourceTagValues": { "value": { "<existing-tag-name1>": "<existing-tag-value1>", "<existing-tag-name2>": "<existing-tag-value2>", "<existing-tag-nameN>": "<existing-tag-valueN>" } } } }
使用可在选定群集的“属性”页面上找到的 AKS 群集的值,编辑 aksResourceId 和 aksResourceLocation 的值 。
位于“属性”页时,另请复制“工作区资源 ID”。 如果决定稍后删除 Log Analytics 工作区,则需要此值。 不在此流程中执行删除 Log Analytics 工作区的操作。
编辑 aksResourceTagValues 的值,以匹配为 AKS 群集指定的现有标记值。
将此文件以“OptOutParam.json”文件名保存到本地文件夹 。
现在,你已做好部署此模板的准备。
使用 Azure CLI 删除解决方案
若要删除解决方案并清除 AKS 群集上的配置,请在 Linux 上使用 Azure CLI 运行以下命令:
az cloud set --name AzureChinaCloud
az login
az account set --subscription "Subscription Name"
az deployment group create --resource-group <ResourceGroupName> --template-file ./OptOutTemplate.json --parameters ./OptOutParam.json
配置更改可能需要几分钟才能完成。 结果将在类似于以下示例的消息中返回:
ProvisioningState : Succeeded
使用 PowerShell 删除解决方案
注意
建议使用 Azure Az PowerShell 模块与 Azure 交互。 请参阅安装 Azure PowerShell 以开始使用。 若要了解如何迁移到 Az PowerShell 模块,请参阅 将 Azure PowerShell 从 AzureRM 迁移到 Az。
若要删除解决方案并从 AKS 群集中清除配置,请在包含模板的文件夹中运行以下 PowerShell 命令:
Connect-AzAccount -Environment AzureChinaCloud
Select-AzSubscription -SubscriptionName <yourSubscriptionName>
New-AzResourceGroupDeployment -Name opt-out -ResourceGroupName <ResourceGroupName> -TemplateFile .\OptOutTemplate.json -TemplateParameterFile .\OptOutParam.json
配置更改可能需要几分钟才能完成。 结果将在类似于以下示例的消息中返回:
ProvisioningState : Succeeded
后续步骤
如果创建的工作区仅用于支持监视群集且不再被需要,则必须手动删除它。 如果不熟悉如何删除工作区,请参阅使用 Azure 门户删除 Azure Log Analytics 工作区。 不要忘记之前在步骤 4 中复制的“工作区资源 ID”。 你将需要该信息。