Notes
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
La gouvernance fait référence à la capacité d’une organisation à appliquer et valider des règles pour garantir la conformité aux normes d’entreprise. La gouvernance aide les organisations à atténuer les risques, à se conformer aux normes d’entreprise et aux réglementations externes et à réduire les interruptions d’adoption ou d’innovation.
La gouvernance comprend la planification des initiatives, l’établissement de priorités stratégiques et l’utilisation de mécanismes et de processus pour contrôler les applications et les ressources. Pour les clusters Kubernetes dans un environnement cloud, la gouvernance signifie implémenter des stratégies sur les clusters Kubernetes et les applications qui s’exécutent dans ces clusters.
La gouvernance Kubernetes inclut l’environnement cloud, l’infrastructure de déploiement de cluster, les clusters eux-mêmes et les applications des clusters. Ce guide se concentre sur la gouvernance au sein des clusters Kubernetes. L'article compare la gouvernance des clusters Kubernetes dans Amazon Elastic Kubernetes Service (EKS) et Azure Kubernetes Service (AKS).
Remarque
Cet article fait partie d’une série d’articles qui aident les professionnels qui connaissent Amazon EKS à comprendre Azure Kubernetes Service (AKS).
Dimensions de gouvernance Kubernetes
Trois aspects définissent une stratégie de gouvernance Kubernetes cohérente :
Les cibles définissent les objectifs de stratégie de sécurité et de conformité pour votre stratégie de gouvernance. Par exemple, les cibles peuvent spécifier quels utilisateurs peuvent accéder à un cluster, un espace de noms ou une application Kubernetes. Ils peuvent également spécifier les registres de conteneurs et les images à utiliser dans les clusters. Votre équipe des opérations de sécurité définit généralement ces cibles comme première étape pour définir la stratégie de gouvernance de votre entreprise.
Les étendues détaillent les éléments auxquels les stratégies cibles s’appliquent. Les étendues doivent traiter tous les composants visibles par Kubernetes. Les étendues incluent des unités organisationnelles telles que des services, des équipes et des groupes ou des environnements tels que les clouds, les régions ou les espaces de noms.
Les directives de stratégie utilisent des fonctionnalités Kubernetes pour appliquer les règles cibles dans les étendues spécifiées, ce qui permet d’appliquer des stratégies de gouvernance.
Pour plus d’informations, consultez gouvernance Kubernetes.
Gouvernance dans EKS et AKS
Les clients Amazon Web Services (AWS) utilisent généralement Kyverno, Gatekeeper ou d’autres solutions partenaires pour définir et implémenter une stratégie de gouvernance pour leurs clusters Amazon EKS. Le dépôt GitHub aws-eks-best-practices/policies contient une collection d’exemples de stratégies pour Kyverno et Gatekeeper.
Les clients Azure peuvent également utiliser Kyverno ou Gatekeeper. Pour étendre Gatekeeper pour une stratégie de gouvernance AKS, vous pouvez utiliser le module complémentaire Azure Policy pour Kubernetes.
Gardien
Cloud Native Computing Foundation (CNCF) parraine l’outil Gatekeeper open source, qui permet d’appliquer des stratégies dans des clusters Kubernetes. Gatekeeper est un contrôleur d’admission Kubernetes qui permet d’appliquer des stratégies que vous créez avec Open Policy Agent (OPA), un moteur de stratégie à usage général.
OPA utilise un langage déclaratif de haut niveau appelé Rego pour créer des stratégies qui peuvent exécuter des pods à partir de locataires sur des instances distinctes ou selon des priorités différentes. Pour obtenir une collection de stratégies OPA courantes, consultez la bibliothèque OPA Gatekeeper.
Kyverno
CNCF parraine également le projet open source Kyverno , qui permet d’appliquer des stratégies dans des clusters Kubernetes. Kyverno est un moteur de stratégie natif Kubernetes qui peut utiliser des stratégies pour valider, muter et générer des configurations de ressources Kubernetes.
Utilisez Kyverno pour définir et gérer des stratégies en tant que ressources Kubernetes sans utiliser de nouveau langage. Vous pouvez gérer des stratégies à l’aide d’outils familiers, tels que kubectl, git et kustomize.
Kyverno présente les fonctionnalités suivantes :
- Utilise des superpositions de style
kustomize
pour la validation - Prise en charge des patches JSON et des patches de fusion stratégique pour les mutations
- Clonage des ressources dans les espaces de noms sur la base de déclencheurs flexibles
Pour déployer des stratégies individuellement, utilisez les manifestes YAML de stratégie. Pour empaqueter et déployer des stratégies, utilisez des graphiques Helm.
Contrairement à Gatekeeper ou Azure Policy pour AKS, Kyverno peut utiliser des stratégies pour générer de nouveaux objets Kubernetes, au lieu de valider ou de muter uniquement les ressources existantes. Par exemple, vous pouvez définir une stratégie Kyverno pour automatiser la création d’une stratégie réseau par défaut pour les nouveaux espaces de noms.
- Pour plus d’informations, consultez le guide d’installation de Kyverno.
- Pour obtenir la liste des stratégies prêtes à l’emploi ou personnalisables, consultez la bibliothèque de stratégies Kyverno.
- Pour des conseils de dépannage, tels que l'échec des appels de webhook d'APIServer, voir le dépannage de Kyverno.
Si vous le souhaitez, vous pouvez déployer l’implémentation de Kyverno des normes de sécurité des pods Kubernetes en tant que stratégies Kyverno. Les contrôles de normes de sécurité des pods fournissent un point de départ pour la sécurité opérationnelle générale du cluster Kubernetes.
Module complémentaire Azure Policy pour AKS
Le module complémentaire Azure Policy pour AKS étend Gatekeeper, qui est un webhook de contrôleur d'admission pour OPA. Ce module complémentaire s’applique à grande échelle et protège les composants de votre cluster de manière centralisée et cohérente. Les composants de cluster incluent des pods, des conteneurs et des espaces de noms. Azure Policy fournit la gestion et la création de rapports de conformité centralisées pour plusieurs clusters Kubernetes. Cette fonctionnalité simplifie la gestion et la gouvernance des environnements multicluster par rapport au déploiement et à la gestion de Kyverno ou Gatekeeper pour chaque cluster.
Le module complémentaire Azure Policy pour AKS effectue les fonctions suivantes :
Il utilise Azure Policy pour vérifier les affectations de stratégie au cluster.
Il déploie les définitions de stratégies dans le cluster sous la forme de ressources de type contrainte-modèle et contrainte-personnalisée.
Il signale les détails de l’audit et de la conformité à Azure Policy.
Le module complémentaire Azure Policy est compatible avec les environnements de cluster AKS et Kubernetes activé par Azure Arc. Pour plus d’informations, consultez Comprendre Azure Policy pour les clusters Kubernetes.
Pour installer le module complémentaire sur des clusters nouveaux et existants, suivez les instructions d’installation.
Après avoir installé le module complémentaire Azure Policy pour AKS, vous pouvez appliquer des définitions de stratégie individuelles ou des groupes de définitions de stratégie, appelés initiatives, à votre cluster AKS. Vous pouvez appliquer des définitions intégrées de stratégie et d’initiative Azure Policy à partir du début. Vous pouvez également créer et affecter vos propres définitions de stratégie personnalisées en effectuant les étapes nécessaires. Les stratégies de sécurité intégrées Azure Policy améliorent la posture de sécurité de votre cluster AKS, appliquent les normes organisationnelles et évaluent la conformité à grande échelle.
Contributeurs
Microsoft gère cet article. Les contributeurs suivants ont écrit cet article.
Auteurs principaux :
- Paolo Salvatori | Ingénieur des services principaux
- Martin Gjoshevski | Ingénieur service senior
Autres contributeurs :
- Chad Kittel | Ingénieur logiciel principal - Modèles et pratiques Azure
- Ed Price | Responsable de programme senior
- Theano Petersen | Rédacteur technique
Pour afficher les profils LinkedIn non publics, connectez-vous à LinkedIn.
Étapes suivantes
- Policy pour Kubernetes
- Sécuriser votre cluster AKS à l’aide d’Azure Policy
- Disciplines de gouvernance pour AKS
- OPA Gatekeeper : Stratégie et gouvernance pour Kubernetes