Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
В соответствии с лучшими практиками безопасности Kubernetes, рекомендуется зашифровать хранилище секретов Kubernetes в кластерах AKS Edge Essentials. Вы можете выполнить это шифрование, активировав поставщика службы управления ключами (KMS) для AKS Edge Essentials, который позволяет шифрование данных в состоянии покоя для секретов, хранимых в хранилище ключей и значений etcd. Он позволяет выполнять это шифрование, создавая ключ для шифрования ключей (KEK) и автоматически обновляя его каждые 30 дней. KEK защищен учетными данными администратора и доступен только администраторам.
Дополнительные сведения об использовании KMS см. в официальной документации поставщика KMS .
В этой статье описывается активация поставщика KMS для кластеров AKS Edge Essentials.
Необходимые условия
Поставщик KMS поддерживается для всех кластеров AKS Edge Essentials версии 1.10.868.0 и более поздних версий.
Заметка
Поставщик KMS может использоваться только для кластеров с одним узлом. Поставщик не может использоваться с экспериментальными функциями, такими как многоузловые.
Включение поставщика KMS
В файле aksedge-config.jsonв разделе Init задайте для Init.KmsPlugin.Enable значение true:
"Init": {
"KmsPlugin": {
"Enable": true
}
}
Во время развертывания отображаются следующие выходные данные, показывающие, что поставщик KMS включен:
Preparing to install kms-plugin as encryption provider...
Инструкции по развертыванию см. в Развертывание на одном компьютере.
Заметка
Вы можете включить или отключить поставщик KMS только при создании нового развертывания. После установки флага его нельзя изменить.
Убедитесь, что поставщик KMS включен
Чтобы убедиться, что поставщик KMS включен, выполните следующую команду и убедитесь, что состояние работоспособности поставщиков kms-provider является ОК:
kubectl get --raw='/readyz?verbose'
[+]ping ok
[+]Log ok
[+]etcd ok
[+]kms-providers ok
[+]poststarthook/start-encryption-provider-config-automatic-reload ok
Для создания секретов в кластерах AKS Edge Essentials см. раздел Управление секретами с помощью kubectl в документации Kubernetes.
При возникновении ошибок см. раздел Устранение неполадок.
Как обновить секреты после смены KEK
KEK автоматически обновляется каждые 30 дней. На этом этапе каждый секрет остается зашифрованным с помощью KEK, который использовался при его создании. При следующем обновлении секрета он повторно шифруется с помощью текущего KEK. Если вы не регулярно обновляете значения секретов в рамках обычных процессов, попробуйте повторно писать их (с одинаковым значением) каждые 30 дней в любом случае. Это гарантирует, что вы используете рекомендации Kubernetes и что каждый секрет шифруется с помощью последней версии KEK. Для больших кластеров рассмотрите возможность обновления секретов каждого пространства имен, в свою очередь, или разработки скрипта или другой автоматизации для упрощения процесса:
kubectl get secrets --all-namespaces -o json | kubectl replace -f -
Устранение неполадок
Если у поставщика KMS возникают ошибки, выполните следующую процедуру:
Убедитесь, что версия AKS 1.10.868.0 или более поздняя. Используйте следующую команду, чтобы проверить текущую версию AKS Edge Essentials:
Get-Command -Module AKSEdge | Format-Table Name, VersionЕсли версия более ранняя, обновите ее до последней версии. Дополнительные сведения см. в статье Обновление кластера AKS.
Просмотрите API
readyz. Если проблема сохранится, убедитесь, что поставщик KMS включен. См. раздел "Проверка включения поставщика KMS ".Если вы получаете "[-]" перед полем
kms-providers, соберите журналы диагностики для отладки. Дополнительные сведения см. в разделе Получение журналов kubelet из узлов кластера.Если по-прежнему возникают ошибки, компьютер под управлением кластера AKS Edge Essentials может быть приостановлен или отключен в течение длительного периода времени (более 30 дней). Чтобы вернуть KMS в работоспособное состояние, можно использовать команду
Repair-Kmsдля восстановления всех необходимых маркеров:Repair-AksEdgeKmsЕсли по-прежнему возникают ошибки, обратитесь в службу поддержки клиентов Майкрософт, и соберите журналы.