Шифрование по узлам в Службе Azure Kubernetes (AKS)

При шифровании по узлам данные, хранящиеся на виртуальной машине, располагающейся на узле агента AKS, шифруются в состоянии хранения и передаются в зашифрованном виде в службу хранилища. Это означает, что временные диски шифруются в состоянии хранения с использованием ключей с управлением на уровне платформы. Кэш ОС и диски данных шифруются в состоянии хранения с использованием ключей с управлением на уровне платформы или ключей с управлением на уровне клиента в зависимости от типа шифрования, заданного для этих дисков.

По умолчанию при использовании AKS ОС и диски данных шифруются на стороне сервера с использованием ключей, управляемых платформой. Кэши для этих дисков также шифруются в состоянии хранения с использованием ключей, управляемых платформой. Можно задать свои собственные управляемые ключи, следуя инструкциям в статье Использование собственных ключей (BYOK) для дисков Azure в службе Azure Kubernetes. Кэш для этих дисков будет также зашифрован с помощью ключа, который указан в этом шаге.

Шифрование на основе узла отличается от шифрования на стороне сервера (SSE), которое использует служба хранилища Azure. Диски, управляемые Azure, используют функции службы хранилища Azure для автоматического шифрования неактивных данных при их сохранении. При шифровании на основе узла для шифрования данных перед их передачей через службу хранилища Azure используется узел виртуальной машины.

Подготовка к работе

Эта функция может быть настроена только при создании кластера или пула узлов.

Примечание

Шифрование по узлам доступно в регионах Azure, которые поддерживают шифрование на стороне сервера для управляемых дисков Azure, и только для определенных поддерживаемых размеров виртуальных машин.

Предварительные требования

  • Убедитесь, что установлено расширение CLI 2.23 или более поздней версии.
  • Убедитесь, что установлен флаг функции EncryptionAtHost в разделе Microsoft.Compute.

Регистрация функции EncryptionAtHost

Чтобы создать кластер AKS, использующий шифрование на основе узла, необходимо включить флаги функций EncryptionAtHost в подписке.

Зарегистрируйте флаг компонента EncryptionAtHost, используя команду az feature register, как показано в следующем примере:

az feature register --namespace "Microsoft.Compute" --name "EncryptionAtHost"

Через несколько минут отобразится состояние Registered (Зарегистрировано). Состояние регистрации можно проверить с помощью команды az feature list.

az feature list -o table --query "[?contains(name, 'Microsoft.Compute/EncryptionAtHost')].{Name:name,State:properties.state}"

Когда все будет готово, обновите регистрацию поставщика ресурсов Microsoft.Compute с помощью команды az provider register.

az provider register --namespace Microsoft.Compute

Ограничения

  • Можно включить только в новых пулах узлов.
  • Можно включить только в регионах Azure, которые поддерживают шифрование на стороне сервера для управляемых дисков Azure, и только для определенных поддерживаемых размеров виртуальных машин.
  • Требуется кластер AKS и пул узлов, в основе которых используются масштабируемые наборы виртуальных машин (VMSS) как тип набора виртуальных машин.

Использование шифрования по узлам в новых кластерах

Выполните конфигурацию узлов агента кластера для использования шифрования по узлам при создании кластера.

az aks create --name myAKSCluster --resource-group myResourceGroup -s Standard_DS2_v2 -l westus2 --enable-encryption-at-host

Если требуется создать кластеры без шифрования по узлам, можно это сделать, опустив параметр --enable-encryption-at-host.

Использование шифрования по узлам в существующих кластерах

Можно включить шифрование по узлам в существующих кластерах, добавив новый пул узлов в свой кластер. Выполните конфигурацию нового пула узлов для использования шифрования по узлам с использованием параметра --enable-encryption-at-host.

az aks nodepool add --name hostencrypt --cluster-name myAKSCluster --resource-group myResourceGroup -s Standard_DS2_v2 -l westus2 --enable-encryption-at-host

Если требуется создать новые пулы узлов без функции шифрования по узлам, можно это сделать, опустив параметр --enable-encryption-at-host.

Дальнейшие шаги

Ознакомьтесь с рекомендациями по обеспечению безопасности кластера AKS, прочтите дополнительные сведения о шифровании по узлам.