자습서: Azure Linux 컨테이너 호스트 클러스터에서 원격 분석 및 모니터링 사용
이 자습서의 5부 중 4부에서 Azure Linux 컨테이너 호스트 클러스터를 모니터링하도록 Container Insights를 설정합니다. 이 문서에서 배울 내용은 다음과 같습니다.
- 기존 클러스터에 대한 모니터링 사용
- 에이전트가 배포되었는지 확인
- 솔루션이 사용되는지 확인
다음 자습서와 마지막 자습서에서는 Azure Linux 노드를 업그레이드하는 방법을 알아봅니다.
필수 조건
- 이전 자습서에서는 Azure Linux 컨테이너 호스트 클러스터를 만들고 배포했습니다. 이 자습서를 완료하려면 기존 클러스터가 필요합니다. 이 단계를 수행하지 않고 계속 진행하려면 자습서 1: Create a cluster with the Azure Linux Container Host for AKS(AKS용 Azure Linux 컨테이너 호스트를 사용하여 클러스터 만들기)부터 시작하세요.
- 기존 AKS 클러스터를 다른 구독의 Log Analytics 작업 영역에 연결하는 경우 Microsoft.ContainerService 리소스 공급자를 Log Analytics 작업 영역이 있는 구독에 등록해야 합니다. 자세한 내용은 리소스 공급자 등록을 참조하세요.
- 최신 버전의 Azure CLI가 필요합니다.
az --version
을 실행하여 버전을 찾습니다. 설치 또는 업그레이드해야 하는 경우 Azure CLI 설치를 참조하세요.
1 - 모니터링 사용
옵션 1: 기본 Log Analytics 작업 영역 사용
다음 단계에서는 Azure CLI를 사용하여 Azure Linux 컨테이너 호스트 클러스터를 모니터링할 수 있습니다. 이 예제에서는 기존 작업 영역을 미리 만들거나 지정할 필요가 없습니다. 이 명령은 AKS 클러스터 구독의 기본 리소스 그룹에 기본 작업 영역을 만들어 프로세스를 간소화합니다. 해당 영역에 아직 없는 경우 만들어진 기본 작업 영역은 DefaultWorkspace-< GUID >-< Region > 형식과 유사합니다.
az aks enable-addons -a monitoring -n testAzureLinuxCluster -g testAzureLinuxResourceGroup
출력의 처음 몇 줄에는 addonProfiles
구성에 다음 내용이 포함되어야 합니다.
{
"aadProfile": null,
"addonProfiles": {
"omsagent": {
"config": {
"logAnalyticsWorkspaceResourceID": "/subscriptions/<WorkspaceSubscription>/resourceGroups/DefaultResourceGroup-EUS2/providers/Microsoft.OperationalInsights/workspaces/DefaultWorkspace-<WorkspaceSubscription>-EUS2",
"useAADAuth": "true"
},
"enabled": true,
"identity": null
}
},
}
옵션 2: Log Analytics 작업 영역 지정
이 예제에서는 Log Analytics 작업 영역을 지정하여 Azure Linux 컨테이너 호스트 클러스터에서 모니터링을 사용할 수 있습니다. 작업 영역의 리소스 ID는 "/subscriptions/<SubscriptionId>/resourceGroups/<ResourceGroupName>/providers/Microsoft.OperationalInsights/workspaces/<WorkspaceName>"
형식입니다.
az aks enable-addons -a monitoring -n testAzureLinuxCluster -g testAzureLinuxResourceGroup --workspace-resource-id <workspace-resource-id>
출력은 다음 예시와 유사합니다.
provisioningState : Succeeded
2 - 에이전트 및 솔루션 배포 확인
다음 명령을 실행하여 에이전트가 성공적으로 배포되었는지 확인합니다.
kubectl get ds ama-logs --namespace=kube-system
출력은 다음 예제와 유사해야 하며, 이 출력은 제대로 배포된 것을 나타냅니다.
User@aksuser:~$ kubectl get ds ama-logs --namespace=kube-system
NAME DESIRED CURRENT READY UP-TO-DATE AVAILABLE NODE SELECTOR AGE
ama-logs 3 3 3 3 3 <none> 3m22s
솔루션의 배포를 확인하려면 다음 명령을 실행합니다.
kubectl get deployment ama-logs-rs -n=kube-system
출력은 다음 예제와 유사해야 하며, 이 출력은 제대로 배포된 것을 나타냅니다.
User@aksuser:~$ kubectl get deployment ama-logs-rs -n=kube-system
NAME DESIRED CURRENT UP-TO-DATE AVAILABLE AGE
ama-logs-rs 1 1 1 1 3h
3 - 솔루션 구성 확인
aks show
명령을 사용하여 솔루션의 사용 여부, Log Analytics 작업 영역 리소스 ID의 정의 및 클러스터에 대한 요약 정보를 확인합니다.
az aks show -g testAzureLinuxResourceGroup -n testAzureLinuxCluster
몇 분 후 명령이 완료되고 솔루션에 대한 JSON 형식 정보가 반환됩니다. 명령의 결과에는 모니터링 추가 항목 프로필이 표시되며 다음 예제 출력과 유사합니다.
"addonProfiles": {
"omsagent": {
"config": {
"logAnalyticsWorkspaceResourceID": "/subscriptions/<WorkspaceSubscription>/resourceGroups/<DefaultWorkspaceRG>/providers/Microsoft.OperationalInsights/workspaces/<defaultWorkspaceName>"
},
"enabled": true
}
}
다음 단계
이 자습서에서는 Azure Linux 컨테이너 호스트 클러스터의 원격 분석 및 모니터링을 사용했습니다. 다음 방법에 대해 알아보았습니다.
- 기존 클러스터에 대한 모니터링 사용
- 에이전트가 배포되었는지 확인
- 솔루션이 사용되는지 확인
다음 자습서에서는 Azure Linux 노드를 업그레이드하는 방법을 알아봅니다.