노드 OS 이미지 자동 업그레이드
AKS는 적시에 노드 수준 OS 보안 업데이트 전용의 여러 자동 업그레이드 채널을 제공합니다. 이 채널은 클러스터 수준 Kubernetes 버전 업그레이드와 다르며 이를 대체합니다.
노드 OS 자동 업그레이드와 클러스터 자동 업그레이드 간의 상호 작용
노드 수준 OS 보안 업데이트는 Kubernetes 패치 또는 부 버전 업데이트보다 빠른 속도로 릴리스됩니다. 노드 OS 자동 업그레이드 채널은 유연성을 제공하고 노드 수준 OS 보안 업데이트를 위한 사용자 지정 전략을 지원합니다. 그런 다음 클러스터 수준 Kubernetes 버전 자동 업그레이드에 대한 별도의 계획을 선택할 수 있습니다.
클러스터 수준 자동 업그레이드와 노드 OS 자동 업그레이드 채널을 함께 사용하는 것이 좋습니다. 클러스터 자동 업그레이드 채널에 대한 유지 관리 기간 - aksManagedAutoUpgradeSchedule
과 노드 OS 자동 업그레이드 채널에 대한 aksManagedNodeOSUpgradeSchedule
의 두 가지 별도 집합을 적용하여 일정을 세부적으로 조정할 수 있습니다.
노드 OS 이미지 업그레이드를 위한 채널
선택한 채널에 따라 업그레이드 시기가 결정됩니다. 노드 OS 자동 업그레이드 채널을 변경할 때 변경 내용이 적용되는 데 최대 24시간이 걸릴 수 있습니다. 한 채널에서 다른 채널로 변경하면 이미지로 다시 설치가 트리거되어 노드 롤링으로 이어집니다.
참고 항목
노드 OS 이미지 자동 업그레이드는 클러스터의 Kubernetes 버전에 영향을 미치지 않습니다. API 버전 2023-06-01부터 만든 새 클러스터의 기본값은 .입니다 NodeImage
.
다음과 같은 채널이 지원됩니다. 다음 옵션 중 하나를 선택할 수 있습니다.
채널 | 설명 | OS별 동작 |
---|---|---|
None |
노드에 보안 업데이트가 자동으로 적용되지 않습니다. 즉, 보안 업데이트에 대한 책임은 전적으로 사용자에게 있습니다. | 해당 없음 |
Unmanaged |
OS 업데이트는 OS 기본 제공 패치 인프라를 통해 자동으로 적용됩니다. 새로 할당된 컴퓨터는 처음에는 패치가 해제됩니다. OS의 인프라는 언젠가 이를 패치합니다. | Ubuntu 및 Azure Linux(CPU 노드 풀)는 대략 하루에 한 번씩 오전 6시(UTC)경에 무인 업그레이드/dnf-automatic을 통해 보안 패치를 적용합니다. Windows는 보안 패치를 자동으로 적용하지 않으므로 이 옵션은 None 과 동등하게 작동합니다. kured와 같은 도구를 사용하여 재부팅 프로세스를 관리해야 합니다. |
SecurityPatch |
AKS 테스트를 거치고 안전한 배포 방식을 적용하는 완전 관리형 OS 보안 패치입니다. AKS는 정기적으로 노드의 VHD(가상 하드 디스크)를 "보안 전용"이라는 레이블이 지정된 이미지 유지 관리자의 패치로 업데이트합니다. 보안 패치가 노드에 적용될 때 중단이 있을 수 있습니다. 그러나 AKS는 특정 커널 보안 패키지와 같이 필요한 경우에만 노드를 다시 설치하여 중단을 제한하고 있습니다. 패치가 적용되면 VHD가 업데이트되고 기존 컴퓨터가 해당 VHD로 업그레이드되어 유지 관리 기간과 급증 설정이 적용됩니다. AKS가 노드를 이미지로 다시 설치할 필요가 없다고 결정한 경우 Pod를 드레이닝하지 않고 노드를 라이브로 패치하고 VHD 업데이트를 수행하지 않습니다. 이 옵션을 사용하면 노드 리소스 그룹에서 VHD를 호스팅하는 데 추가 비용이 발생합니다. 이 채널을 사용하면 Linux 자동 업그레이드가 기본적으로 사용하지 않도록 설정됩니다. | Azure Linux는 GPU 지원 VM에서 이 채널을 지원하지 않습니다. SecurityPatch 는 Kubernetes 부 버전이 계속 지원되는 한 사용되지 않는 Kubernetes 패치 버전에서 작동합니다. |
NodeImage |
AKS는 주별 보안 수정 사항과 버그 수정 사항이 포함된 새로 패치된 VHD로 노드를 업데이트합니다. 새 VHD에 대한 업데이트는 유지 관리 기간 및 급증 설정에 따라 중단됩니다. 이 옵션을 선택하면 추가 VHD 비용이 발생하지 않습니다. 이 채널을 사용하면 Linux 자동 업그레이드가 기본적으로 사용하지 않도록 설정됩니다. 노드 이미지 업그레이드는 보조 Kubernetes 버전이 계속 지원되는 한 더 이상 사용되지 않는 패치 버전을 지원합니다. 노드 이미지는 AKS 테스트를 거치고, 완전히 관리되며, 안전한 배포 방식이 적용됩니다. |
새 클러스터에 노드 OS 자동 업그레이드 채널 설정
--node-os-upgrade-channel
매개 변수와 함께az aks create
명령을 사용하여 새 클러스터에 노드 OS 자동 업그레이드 채널을 설정합니다. 다음 예에서는 노드 OS 자동 업그레이드 채널을SecurityPatch
로 설정합니다.az aks create \ --resource-group myResourceGroup \ --name myAKSCluster \ --node-os-upgrade-channel SecurityPatch \ --generate-ssh-keys
기존 클러스터에 노드 OS 자동 업그레이드 채널 설정
--node-os-upgrade-channel
매개 변수와 함께az aks update
명령을 사용하여 기존 클러스터에 노드 OS 자동 업그레이드 채널을 설정합니다. 다음 예에서는 노드 OS 자동 업그레이드 채널을SecurityPatch
로 설정합니다.az aks update --resource-group myResourceGroup --name myAKSCluster --node-os-upgrade-channel SecurityPatch
소유권 및 일정 업데이트
기본 주기는 계획된 유지 관리 기간이 적용되지 않음을 의미합니다.
채널 | 업데이트 소유권 | 기본 주기 |
---|---|---|
Unmanaged |
OS 기반 보안 업데이트. AKS는 이러한 업데이트를 제어할 수 없습니다. | Ubuntu 및 Azure Linux의 경우 오전 6시(UTC)입니다. Windows의 경우 매월. |
SecurityPatch |
AKS에서 테스트하고, 완전히 관리되며, 안전한 배포 사례를 사용하여 적용됩니다. 자세한 내용은 Azure에서 정식 워크로드의 보안 및 복원력 향상을 참조하세요. | 매주 |
NodeImage |
AKS에서 테스트하고, 완전히 관리되며, 안전한 배포 사례를 사용하여 적용됩니다. 릴리스에 관한 실시간 정보는 릴리스 추적기의 AKS 노드 이미지를 확인하세요. | 매주 |
참고 항목
Windows 보안 업데이트는 매월 릴리스되지만 Unmanaged
채널을 사용하면 Windows 노드에 이러한 업데이트가 자동으로 적용되지 않습니다. Unmanaged
채널을 선택하는 경우 Windows 노드에 대한 재부팅 프로세스를 관리해야 합니다.
노드 채널 알려진 제한 사항
현재 클러스터 자동 업그레이드 채널을
node-image
로 설정하면 노드 OS 자동 업그레이드 채널도 자동으로NodeImage
로 설정됩니다. 클러스터 자동 업그레이드 채널이node-image
인 경우 노드 OS 자동 업그레이드 채널 값을 변경할 수 없습니다. 노드 OS 자동 업그레이드 채널 값을 설정하려면 클러스터 자동 업그레이드 채널 값이node-image
가 아닌지 확인합니다.SecurityPatch
채널은 Windows OS 노드 풀에서 지원되지 않습니다.
참고 항목
SecurityPatch
채널에 CLI 버전 2.61.0 이상을 사용합니다.
노드 OS 계획된 유지 관리 기간
노드 OS 자동 업그레이드에 대한 계획된 유지 관리는 지정된 유지 관리 기간에 시작됩니다.
참고 항목
적절한 기능을 보장하려면 유지 관리 기간을 4시간 이상으로 설정합니다.
계획된 유지 관리에 대한 자세한 내용은 계획된 유지 관리를 사용하여 AKS(Azure Kubernetes Service) 클러스터의 유지 관리 기간 예약을 참조하세요.
노드 OS 자동 업그레이드 FAQ
클러스터에서 현재 nodeOsUpgradeChannel 값을 어떻게 확인할 수 있나요?
az aks show
명령을 실행하고 "autoUpgradeProfile"을 확인하여 nodeOsUpgradeChannel
이 어떤 값으로 설정되어 있는지 확인합니다.
az aks show --resource-group myResourceGroup --name myAKSCluster --query "autoUpgradeProfile"
노드 OS 자동 업그레이드 상태를 어떻게 모니터링할 수 있나요?
노드 OS 자동 업그레이드 상태를 보려면 클러스터에서 활동 로그를 찾아보세요. AKS 클러스터 업그레이드에 언급된 대로 특정 업그레이드 관련 이벤트를 찾아볼 수도 있습니다. AKS는 업그레이드 관련 Event Grid 이벤트도 내보냅니다. 자세한 내용은 Event Grid 원본의로서의 AKS를 참조하세요.
내 클러스터 자동 업그레이드 채널이 node-image
로 설정된 경우 노드 OS 자동 업그레이드 채널 값을 변경할 수 있나요?
아니요. 현재 클러스터 자동 업그레이드 채널을 node-image
로 설정하면 노드 OS 자동 업그레이드 채널도 자동으로 NodeImage
로 설정됩니다. 클러스터 자동 업그레이드 채널이 node-image
인 경우 노드 OS 자동 업그레이드 채널 값을 변경할 수 없습니다. 노드 OS 자동 업그레이드 채널 값을 변경하려면 클러스터 자동 업그레이드 채널이 node-image
가 아닌지 확인합니다.
Unmanaged
채널에서 SecurityPatch
이(가) 권장되는 이유는 무엇인가요?
Unmanaged
채널에서 AKS는 보안 업데이트가 제공되는 방법과 시기를 제어할 수 없습니다. SecurityPatch
와(과) 함께 보안 업데이트는 완전히 테스트되고 안전한 배포 사례를 따릅니다. SecurityPatch
은(는) 또한 유지 관리 기간을 적용합니다. 자세한 내용은 Azure에서 정식 워크로드의 보안 및 복원력 향상을 참조하세요.
SecurityPatch
로 인해 항상 내 노드가 이미지로 다시 설치되나요?
AKS는 완전한 적용을 위해 이미지로 다시 설치가 필요한 특정 커널 패키지와 같이 반드시 필요한 경우로 이미지로 다시 설치를 제한합니다. SecurityPatch
는 가능한 한 중단을 최소화하도록 설계되었습니다. AKS가 노드에 이미지로 다시 설치가 필요 없다고 판단하면 Pod를 드레이닝하지 않고 노드를 실시간으로 패치하며, 이러한 경우 VHD 업데이트를 수행하지 않습니다.
채널이 SecurityPatch
엔드포인트에 도달 snapshot.ubuntu.com
해야 하는 이유는 무엇인가요?
SecurityPatch
이 채널을 통해 Linux 클러스터 노드는 ubuntu-snapshots-on-azure-ensuring-predictability-and-consistency-in-cloud-deployments에 설명된 ubuntu 스냅샷 서비스에서 필요한 보안 패치 및 업데이트를 다운로드해야 합니다.
SecurityPatch
또는 NodeImage
업그레이드가 노드에 적용되는지 어떻게 알 수 있나요?
다음 명령을 실행하여 노드 레이블을 가져옵니다.
kubectl get nodes --show-labels
반환된 레이블 중에는 다음 출력과 유사한 선이 표시됩니다.
kubernetes.azure.com/node-image-version=AKSUbuntu-2204gen2containerd-202311.07.0
여기서 기본 노드 이미지 버전은 AKSUbuntu-2204gen2containerd
입니다. 해당하는 경우 보안 패치 버전은 일반적으로 다음과 같습니다. 위의 예제에서는 202311.07.0
입니다.
노드 레이블 보기 아래의 Azure Portal에서도 동일한 세부 정보를 조회합니다.
다음 단계
업그레이드 모범 사례 및 기타 고려 사항에 대한 자세한 내용은 AKS 패치 및 업그레이드 지침을 참조하세요.
Azure Kubernetes Service