Kubernetes 클러스터의 모니터링 사용 안 함

다음 방법을 사용하여 Kubernetes 클러스터에서 Container insights 또는 Prometheus를 제거합니다.

필요한 사용 권한

  • 클러스터에 대한 기여자 이상의 액세스 권한이 필요합니다.

컨테이너 인사이트 사용 안 함

AKS 클러스터

az aks disable-addons CLI 명령을 사용하여 클러스터에서 컨테이너 인사이트를 사용하지 않도록 설정합니다. 이 명령은 클러스터 노드에서 에이전트를 제거합니다. 클러스터의 Log Analytics 작업 영역에 이미 수집 및 저장된 데이터는 제거되지 않습니다.

az aks disable-addons -a monitoring -n MyExistingManagedCluster -g MyExistingManagedClusterRG

또는 아래 ARM 템플릿을 사용하여 컨테이너 인사이트를 제거할 수 있습니다.

{
  "$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. \"East US\""
            }
        },
      "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
        }
        }
      }
    }
  ]
}

Arc 지원 Kubernetes 클러스터

다음 PowerShell 및 Bash 스크립트는 Arc 지원 Kubernetes 클러스터에서 컨테이너 인사이트를 제거하는 데 사용할 수 있습니다. kubectl config get-contexts 명령을 실행하여 클러스터의 kube-context를 가져올 수 있습니다. 현재 컨텍스트를 사용하려면 이 매개 변수를 지정하지 마세요.

PowerShell: disable-monitoring.ps1

# Use current context
.\disable-monitoring.ps1 -clusterResourceId <cluster-resource-id>

# Specify kube-context
.\disable-monitoring.ps1 -clusterResourceId <cluster-resource-id> -kubeContext <kube-context>

Bash: disable-monitoring.sh

# Use current context
bash disable-monitoring.sh --resource-id $AZUREARCCLUSTERRESOURCEID 

# Specify kube-context
bash disable-monitoring.sh --resource-id $AZUREARCCLUSTERRESOURCEID --kube-context $KUBECONTEXT

Helm으로 컨테이너 인사이트 제거

다음 단계는 다음 환경에 적용됩니다.

  • Azure 및 Azure Stack의 AKS 엔진
  • OpenShift 버전 4 이상
  1. 다음 helm 명령을 실행하여 클러스터에 설치된 컨테이너 인사이트 helm 차트 릴리스를 식별합니다.

    helm list
    

    출력은 다음과 유사합니다.

    NAME                            NAMESPACE       REVISION        UPDATED                                 STATUS          CHART                           APP VERSION
    azmon-containers-release-1      default         3               2020-04-21 15:27:24.1201959 -0700 PDT   deployed        azuremonitor-containers-2.7.0   7.0.0-1
    

    azmon-containers-release-1는 컨테이너 인사이트에 대한 helm 차트 릴리스를 나타냅니다.

  2. 차트 릴리스를 삭제하려면 다음 helm 명령을 실행합니다.

    helm delete <releaseName>

    예시:

    helm delete azmon-containers-release-1

    이렇게 하면 클러스터에서 릴리스가 제거됩니다. helm list 명령을 실행하여 확인할 수 있습니다.

    NAME                            NAMESPACE       REVISION        UPDATED                                 STATUS          CHART                           APP VERSION
    

구성 변경을 완료하려면 몇 분 정도 걸릴 수 있습니다. Helm은 릴리스를 삭제한 후에도 해당 릴리스를 추적하므로 클러스터의 기록을 감사할 수 있으며, helm rollback으로 릴리스를 삭제 취소할 수도 있습니다.

Prometheus 사용 안 함

--disable-azure-monitor-metrics 매개 변수와 함께 다음 az aks update Azure CLI 명령을 사용하여 AKS 클러스터에서 메트릭 추가 기능을 제거하거나 --name azuremonitor-metrics 매개 변수와 함께 az k8s-extension delete Azure CLI 명령을 사용하여 Arc 지원 클러스터에서 메트릭 추가 기능을 제거하고 Prometheus용 Azure Monitor 관리 서비스로 Prometheus 메트릭 전송을 중지합니다. 이 경우 클러스터의 Azure Monitor 작업 영역에 이미 수집 및 저장된 데이터는 제거되지 않습니다.

AKS 클러스터:

az aks update --disable-azure-monitor-metrics -n <cluster-name> -g <cluster-resource-group>

Azure Arc 지원 클러스터:

az k8s-extension delete --name azuremonitor-metrics --cluster-name <cluster-name> --resource-group <cluster-resource-group> --cluster-type connectedClusters 

이 명령을 실행하면 다음 작업이 수행됩니다.

  • 클러스터 노드에서 ama-metrics 에이전트를 제거합니다.
  • 해당 클러스터에 대해 만들어진 기록 규칙을 삭제합니다.
  • DCE(데이터 수집 엔드포인트)를 삭제합니다.
  • DCR(데이터 수집 규칙)을 삭제합니다.
  • 온보딩의 일부로 만들어진 DCRA(데이터 수집 규칙 연결) 및 기록 규칙 그룹을 삭제합니다.

다음 단계

클러스터 모니터링을 지원하기 위해서만 작업 영역을 만들었으며 더 이상 필요하지 않은 경우 수동으로 삭제해야 합니다. 작업 영역을 삭제하는 방법을 모를 경우 Azure Portal에서 Azure Log Analytics 작업 영역 삭제를 참조하세요. 이전에 4단계에서 복사한 작업 영역 리소스 ID를 기억해두세요. 나중에 해당 정보가 필요합니다.