Attribuer des groupes de sécurité à des pods individuels - Amazon EKS

Aidez à améliorer cette page

Vous souhaitez contribuer à ce guide de l'utilisateur ? Faites défiler cette page vers le bas et sélectionnez Modifier cette page sur GitHub. Vos contributions aideront à améliorer notre guide de l'utilisateur pour tous.

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Attribuer des groupes de sécurité à des pods individuels

S'applique aux Linux nœuds dotés d'EC2instances Amazon

S'applique à : sous-réseaux privés

Groupes de sécurité auxquels Pods intégrer les groupes EC2 de sécurité Amazon KubernetesPods. Vous pouvez utiliser les groupes EC2 de sécurité Amazon pour définir des règles qui autorisent le trafic réseau entrant et sortant à destination et en provenance de celui-ci Pods que vous déployez vers des nœuds exécutés sur de nombreux types d'EC2instances Amazon et sur Fargate. Pour obtenir une explication détaillée de cette capacité, consultez l'article de blog Présentation des groupes de sécurité pour les Pods.

Compatibilité avec les Amazon VPC CNI plugin for Kubernetes fonctionnalités

Vous pouvez utiliser des groupes de sécurité pour Pods les fonctionnalités suivantes :

Considérations

Avant de déployer des groupes de sécurité pour les Pods, tenez compte des limites et conditions suivantes :

  • Les groupes de sécurité pour les Pods ne peuvent pas être utilisés avec les nœuds Windows.

  • Les groupes de sécurité pour Pods peuvent être utilisés avec des clusters configurés pour la IPv6 famille contenant des EC2 nœuds Amazon à l'aide de la version 1.16.0 ou ultérieure du plugin Amazon VPCCNI. Vous pouvez utiliser des groupes de sécurité pour configurer des clusters Pods IPv6 contenant uniquement des nœuds Fargate en utilisant la version 1.7.7 ou ultérieure du plugin Amazon. VPC CNI Pour plus d’informations, consultez Attribuer IPv6 des adresses aux clusters, pods, et services.

  • Les groupes de sécurité pour Pods sont pris en charge par la plupart des familles d'EC2instances Amazon basées sur Nitro, mais pas par toutes les générations d'une famille. Par exemplem5, la famille et les générations c5 r5m6g,,c6g,, et d'r6ginstance sont prises en charge. Aucun type d'instance de la famille t n'est pris en charge. Pour obtenir la liste complète des types d'instances pris en charge, consultez le fichier limits.go sur. GitHub Vos nœuds doivent être l'un des types d'instance répertoriés qui ont IsTrunkingCompatible: true dans ce fichier.

  • Si vous utilisez également des politiques de sécurité Pod pour restreindre l'accès à la mutation de Pod, l'utilisateur eks:vpc-resource-controller Kubernetes doit être spécifié dans le Kubernetes ClusterRoleBinding du role auquel votre psp est assigné. Si vous utilisez Amazon par défaut EKS psp roleClusterRoleBinding, et qu'il s'agit du eks:podsecuritypolicy:authenticatedClusterRoleBinding. Par exemple, vous ajoutez l'utilisateur à la section subjects:, comme le montre l'exemple suivant :

    [...] subjects: - kind: Group apiGroup: rbac.authorization.k8s.io name: system:authenticated - apiGroup: rbac.authorization.k8s.io kind: User name: eks:vpc-resource-controller - kind: ServiceAccount name: eks-vpc-resource-controller
  • Si vous utilisez les réseaux personnalisés et les groupes de sécurité pour Pods ensemble, le groupe de sécurité spécifié par les groupes de sécurité pour les Pods est utilisé à la place du groupe de sécurité spécifié dans le paramètre ENIConfig.

  • Si vous utilisez la version 1.10.2 ou une version antérieure du VPC CNI plugin Amazon et que vous incluez le terminationGracePeriodSeconds paramètre dans vos Pod spécifications, la valeur du paramètre ne peut pas être zéro.

  • Si vous utilisez la version 1.10 ou une version antérieure du VPC CNI plugin Amazon, ou la version 1.11 avec POD_SECURITY_GROUP_ENFORCING_MODE =strict, qui est le paramètre par défaut, les Kubernetes services de type NodePort et ceux LoadBalancer utilisant des cibles d'instance avec un externalTrafficPolicy set de Local ne sont pas pris en charge dans la mesure Pods où vous attribuez des groupes de sécurité. Pour plus d'informations sur l'utilisation d'un équilibreur de charge avec des cibles d'instance, consultez Acheminement TCP and UDP trafic avec Network Load Balancers.

  • Si vous utilisez la version 1.10 ou une version antérieure du VPC CNI plugin Amazon ou la version 1.11 avec POD_SECURITY_GROUP_ENFORCING_MODE =strict, qui est le paramètre par défaut, la source NAT est désactivée pour le trafic sortant provenant de groupes de sécurité Pods assignés afin que les règles des groupes de sécurité sortants soient appliquées. Pour accéder à Internet, Pods les groupes de sécurité assignés doivent être lancés sur des nœuds déployés dans un sous-réseau privé configuré avec une NAT passerelle ou une instance. Podsauxquels des groupes de sécurité ont été assignés et déployés sur des sous-réseaux publics ne sont pas en mesure d'accéder à Internet.

    Si vous utilisez une version 1.11 ou une version ultérieure du plugin avec POD_SECURITY_GROUP_ENFORCING_MODE =standard, le Pod trafic destiné à l'extérieur VPC est traduit vers l'adresse IP de l'interface réseau principale de l'instance. Pour ce trafic, les règles des groupes de sécurité de l'interface réseau principale sont utilisées, plutôt que les règles des groupes de sécurité de Pod's.

  • Pour utiliser la politique Calico réseau avec Pods des groupes de sécurité associés, vous devez utiliser la version 1.11.0 ou une version ultérieure du VPC CNI plugin Amazon et définir POD_SECURITY_GROUP_ENFORCING_MODE =standard. Dans le cas contraire, le flux de trafic à destination et en provenance des groupes de sécurité Pods associés n'est pas soumis à l'application de la politique Calico réseau et est limité à l'application des groupes de EC2 sécurité Amazon uniquement. Pour mettre à jour votre VPC CNI version d'Amazon, consultez Attribuer IPs à Pods avec Amazon VPC CNI

  • Podss'exécutant sur EC2 des nœuds Amazon qui utilisent des groupes de sécurité dans des clusters qui NodeLocalDNSCacheles utilisent ne sont pris en charge qu'avec la version 1.11.0 ou une version ultérieure du VPC CNI plugin Amazon et avec POD_SECURITY_GROUP_ENFORCING_MODE =standard. Pour mettre à jour la version de votre VPC CNI plugin Amazon, consultez Attribuer IPs à Pods avec Amazon VPC CNI

  • Des groupes de sécurité pour les Pods peuvent entraîner une augmentation de la latence de démarrage des Pod pour des Pods avec un taux de désabonnement élevé. Cela est dû à la limitation du débit dans le contrôleur de ressources.

  • L'étendue du groupe de EC2 sécurité se situe au Pod niveau --Pour plus d'informations, voir Groupe de sécurité.

    Si vous définissez POD_SECURITY_GROUP_ENFORCING_MODE=standard etAWS_VPC_K8S_CNI_EXTERNALSNAT=false, le trafic destiné à des points de terminaison extérieurs à VPC celui-ci utilise les groupes de sécurité du nœud, et non les groupes Pod de sécurité.