Azure Linux 컨테이너 호스트는 업데이트된 Azure Linux 노드 이미지와 자동 패키지 업데이트라는 두 가지 메커니즘을 통해 업데이트를 제공합니다.
애플리케이션 및 클러스터 수명 주기의 일환으로, 클러스터에 대한 업그레이드를 사용하도록 설정하여 클러스터를 최신 상태로 유지하고 보호하는 것이 좋습니다. 자동 노드 이미지 업그레이드를 사용하도록 설정하여 클러스터가 확장할 때 최신 Azure Linux 컨테이너 호스트 이미지를 사용하도록 할 수 있습니다. 클러스터에서 노드 이미지를 수동으로 업그레이드할 수도 있습니다.
이 자습서에서는 5부 중 5부에서 다음 방법을 알아봅니다.
- 클러스터에서 노드 이미지를 수동으로 업그레이드합니다.
- Azure Linux 컨테이너 호스트 클러스터를 자동으로 업그레이드합니다.
- Azure Linux 컨테이너 호스트 클러스터에 Kured를 배포합니다.
이 자습서의 명령은 Tutorial 1에 설정된 환경 변수를 사용합니다. AKS 및 Tutorial 2용 Azure Linux 컨테이너 호스트를 사용하여 클러스터 만들기: 기존 AKS 클러스터에 Azure Linux 노드 풀 추가.
메모
수동으로 수행하든 자동으로 수행하든 업그레이드 작업은 노드 이미지가 아직 최신 버전이 아닌 경우 해당 버전을 업그레이드합니다. 최신 버전은 전체 AKS 릴리스에 따라 결정되며 AKS 릴리스 추적기를 방문하여 확인할 수 있습니다.
사전 요구 사항
- 이전 자습서에서는 Azure Linux 컨테이너 호스트 클러스터를 만들고 배포했습니다. 이 자습서를 완료하려면 기존 클러스터가 필요합니다. 이 단계를 수행하지 않고 계속 진행하려면 자습서 1: AKS용 Azure Linux 컨테이너 호스트를 사용하여 클러스터 만들기부터 시작합니다.
- 최신 버전의 Azure CLI가 필요합니다.
az --version명령을 사용하여 버전을 확인합니다. 설치 또는 업그레이드해야 하는 경우 Azure CLI 설치를 참조하세요.
수동으로 클러스터 업그레이드
명령을 사용하여 클러스터의 노드 이미지를 수동으로 업그레이드합니다 az aks nodepool upgrade .
az aks nodepool upgrade --resource-group $RESOURCE_GROUP --name $CLUSTER_NAME --name $NODE_POOL_NAME
자동으로 클러스터 업그레이드
자동 업그레이드는 수동 업그레이드와 기능적으로 동일합니다. 선택한 채널에 따라 업그레이드 시기가 결정됩니다. 자동 업그레이드를 변경할 때 변경 내용이 적용되도록 24시간을 허용합니다.
az aks update 매개 변수와 함께 --auto-upgrade-channel 명령을 사용하여 기존 클러스터에서 자동 업그레이드 채널을 설정합니다. 다음 예제에서는 기존 클러스터에 대한 자동 업그레이드 채널을 stable 설정합니다.
az aks update --resource-group $RESOURCE_GROUP --name $CLUSTER_NAME --auto-upgrade-channel stable
예시 출력:
{
"id": "/subscriptions/xxxxx/resourceGroups/testAzureLinuxResourceGroup",
"location": "WestUS2",
"name": "testAzureLinuxCluster",
"properties": {
"autoUpgradeChannel": "stable",
"provisioningState": "Succeeded"
}
}
업그레이드 채널에 대한 자세한 내용은 클러스터 자동 업그레이드 사용을 참조하세요.
자동 패키지 업그레이드 사용
자동 패키지 업그레이드를 사용하도록 설정할 수도 있습니다. 자동 패키지 업그레이드를 사용하도록 설정하면 dnf 자동 시스템 서비스가 매일 실행되고 게시된 업데이트된 패키지를 설치합니다.
매개 변수와 함께 az aks update 명령을 사용하여 기존 클러스터에서 --node-os-upgrade-channel 노드 OS 업그레이드 채널을 설정합니다. 다음 예제에서는 노드 OS 업그레이드 채널을 기존 클러스터에 Unmanaged 대해 설정합니다.
az aks update --resource-group $RESOURCE_GROUP --name $CLUSTER_NAME --node-os-upgrade-channel Unmanaged
예시 출력:
{
"id": "/subscriptions/xxxxx/resourceGroups/testAzureLinuxResourceGroup",
"location": "WestUS2",
"name": "testAzureLinuxCluster",
"properties": {
"nodeOsUpgradeChannel": "Unmanaged",
"provisioningState": "Succeeded"
}
}
자동 다시 부팅 디먼 사용
클러스터를 보호하기 위해 보안 업데이트가 Azure Linux 노드에 자동으로 적용됩니다. 이러한 업데이트에는 OS 보안 수정, 커널 업데이트 및 패키지 업그레이드가 포함됩니다. 이러한 업데이트의 일부는 프로세스를 완료하도록 노드를 다시 부팅해야 합니다. AKS는 업데이트 프로세스를 완료하기 위해 이러한 노드를 자동으로 다시 부팅하지 않습니다.
클러스터에서 커널 업데이트를 수행한 노드를 다시 부팅할 수 있도록 Kured와 같은 자동 다시 부팅 디먼을 사용하도록 설정하는 것이 좋습니다. Azure Linux 컨테이너 호스트 클러스터에 Kured DaemonSet을 배포하려면 AKS 클러스터에 kured 배포를 참조하세요.
자원을 정리하세요
이 자습서는 시리즈의 마지막 부분이므로 Azure Linux 컨테이너 호스트 클러스터를 삭제할 수 있습니다. Kubernetes 노드는 Azure VM(가상 머신)에서 실행되며 클러스터를 사용하지 않더라도 요금이 계속 발생합니다.
az group delete 명령을 사용하여 Azure 리소스 그룹 및 모든 관련 리소스를 삭제합니다.
az group delete --name $RESOURCE_GROUP --yes --no-wait
다음 단계
이 자습서에서는 Azure Linux 컨테이너 호스트 클러스터를 업그레이드했습니다.
Azure Linux 컨테이너 호스트에 대한 자세한 내용은 Azure Linux 컨테이너 호스트 개요를 참조하세요.