Поделиться через


Включение шифрования секретов в кластере AKS Edge Essentials (предварительная версия)

В соответствии с лучшими практиками безопасности Kubernetes, рекомендуется зашифровать хранилище секретов Kubernetes в кластерах AKS Edge Essentials. Это шифрование можно выполнить, активировав подключаемый модуль службы управления ключами (KMS) для AKS Edge Essentials, который позволяет шифрование неактивных данных для секретов, хранящихся в хранилище ключей и т. д. Он позволяет выполнять это шифрование, создавая ключ для шифрования ключей (KEK) и автоматически обновляя его каждые 30 дней. KEK защищен учетными данными администратора и доступен только администраторам.

Дополнительные сведения об использовании KMS см. в официальной документации поставщика KMS .

В этой статье показано, как активировать подключаемый модуль KMS для кластеров AKS Edge Essentials.

Важный

Подключаемый модуль KMS для AKS Edge Essentials в настоящее время находится в предварительной версии. Дополнительные условия использования для предварительных версий Microsoft Azure для юридических условий, применимых к функциям Azure, которые находятся в бета-версии, предварительной версии или в противном случае еще не выпущены в общедоступную версию.

Необходимые условия

Подключаемый модуль 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-providersОК:

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.

При возникновении ошибок см. раздел Устранение неполадок.

Устранение неполадок

Если с подключаемым модулем KMS возникают ошибки, выполните следующую процедуру:

  1. Убедитесь, что версия AKS 1.10.868.0 или более поздняя. Используйте следующую команду, чтобы проверить текущую версию AKS Edge Essentials:

    Get-Command -Module AKSEdge | Format-Table Name, Version
    

    Если версия более ранняя, обновите ее до последней версии. Дополнительные сведения см. в статье Обновление кластера AKS.

  2. Просмотрите API readyz. Если проблема сохраняется, убедитесь, что плагин KMS включен. См. раздел Убедитесь, что подключаемый модуль KMS включен.

    Если вы получаете "[-]" перед полем kms-providers, соберите журналы диагностики для отладки. Дополнительные сведения см. в разделе Получение журналов kubelet из узлов кластера.

  3. Восстановление KMS. Если по-прежнему возникают ошибки, компьютер под управлением кластера AKS Edge Essentials может быть приостановлен или отключен в течение длительного периода времени (более 30 дней). Чтобы вернуть KMS в работоспособное состояние, можно использовать команду Repair-Kms для восстановления всех необходимых маркеров:

    Repair-AksEdgeKms
    
  4. Если по-прежнему возникают ошибки, обратитесь в службу поддержки клиентов Майкрософт, и соберите журналы.

Дальнейшие действия