Ограничить потребление класса приоритета в Kubernetes/AKS

#kubernetes #azure-aks

Вопрос:

Какие варианты доступны для меня, если я хочу ограничить использование классов приоритета, если я запускаю управляемую службу Kubernetes (AKS)?

Пример использования здесь заключается в том, что я, как администратор кластера, хочу ограничить их использование. Чтобы разработчики не использовали те, которые должны использоваться критическими компонентами.

Многопользовательский кластер, политика полу-0-доверия. Это то, чем можно «злоупотреблять».

Могу ли я добиться этого с помощью квот ресурсов, даже если я запускаю службу Azure Kubernetes? https://kubernetes.io/docs/concepts/policy/resource-quotas/#limit-priority-class-consumption-by-default

Ответ №1:

Облачный управляемый кластер не позволяет настраивать api-сервер. В этом случае вы можете использовать opa gatekeeper или kyverno для написания правил, которые отклоняют ненужные настройки класса приоритета.

Комментарии:

1. Отличное предложение, попробуем это с привратником

Ответ №2:

В службе Azure Kubernetes есть надстройка под названием azure-policy . Когда вы включите это…вы будете Gatekeper установлены в своем кластере. С помощью этого вы можете использовать контроль допуска и проверять или изменять запросы к API-серверу. Большим преимуществом здесь является то, что у вас также есть визуальная отчетность о соответствии политике Azure на портале.

 # Existing Cluster
az aks enable-addons 
  --addons azure-policy 
  --name MyAKSCluster 
  --resource-group MyResourceGroup

# New Cluster
az aks create 
  --name MyAKSCluster 
  --resource-group MyResourceGroup 
  --enable-addons azure-policy
 

Для ваших целей теперь вы можете создать пользовательскую политику Azure. Существуют также существующие определения политики или инициативы Azure, которые вы можете использовать.

Комментарии:

1. Отличное предложение, и я также думаю, что это замечательно, что вы можете использовать визуальную отчетность. Проблема здесь (не упомянутая в моем вопросе) заключается в том, что нам нужно свести к минимуму блокировку поставщиков в Azure. Так что начнем с ванильного привратника

2. вы можете использовать аддон привратника из AKS, но развертывать политики с помощью конвейеров или gitops….я не вижу блокировки поставщика…. преимущество здесь в том, что вам не нужно заботиться о развертывании привратника в вашем кластере