Cet article explique comment GKE sur AWS gère les règles des groupes de sécurité AWS pour le cluster, et comment modifier les règles de pare-feu pour les pools de nœuds et les instances dupliquées du plan de contrôle.
Groupes de sécurité et DNS hébergé
Si vous utilisez un serveur DNS hébergé plutôt que le DNS fourni par AWS, vos groupes de sécurité de plan de contrôle et de pool de nœuds doivent autoriser le trafic sortant sur les ports TCP et UDP 53.
Groupes de sécurité du plan de contrôle
Les groupes de sécurité du plan de contrôle définissent les règles de pare-feu pour le trafic TCP entrant et sortant pour chaque instance dupliquée du plan de contrôle.
Le plan de contrôle est constitué de trois instances EC2 situées derrière un équilibreur de charge réseau AWS (NLB, Network Load Balancer). Ces instances acceptent les connexions à partir d'instances etcd sur d'autres nœuds, les nœuds de pool de nœuds et le NLB. Les instances de plan de contrôle établissent également des connexions HTTPS sortantes avec les services Google et AWS.
GKE sur WS crée et associe un groupe de sécurité du plan de contrôle géré à toutes les instances de plan de contrôle. Vous ne devez pas modifier les règles de ce groupe. Si vous devez ajouter d'autres règles de groupe de sécurité, vous pouvez spécifier des ID de groupe de sécurité supplémentaires à associer au plan de contrôle lorsque vous créez un cluster.
Règles de groupe de sécurité du plan de contrôle par défaut
Il s'agit des règles par défaut que GKE sur AWS associe au plan de contrôle. Ces règles ne correspondent pas exactement à vos groupes de sécurité. Chaque ligne du tableau peut contenir plusieurs règles de groupe de sécurité AWS.
Type | Protocol (Protocole) | Port | Plages d'adresses ou SG | Description |
---|---|---|---|---|
Entrant | TCP (version du cluster < 1.26) | 443 | Plage CIDR principale du VPC | Autorise HTTPS à partir des nœuds de pool de nœuds |
Entrant | TCP (version de cluster 1.26 ou ultérieure) | 443 | Plage CIDR de sous-réseau du pool de nœuds | Autoriser HTTPS à partir des nœuds de pool de nœuds (une règle par sous-réseau utilisé par les pools de nœuds) |
Entrant | TCP | 2380 | SG du plan de contrôle | Autorise la duplication etcd du plan de contrôle |
Entrant | TCP | 2381 | SG du plan de contrôle | Autorise la duplication d'événements etcd du plan de contrôle |
Entrant | TCP (version du cluster < 1.26) | 8132 | Plage CIDR principale du VPC | Autorise les connexions Ktonctivity à partir de pools de nœuds |
Entrant | TCP (version de cluster 1.26 ou ultérieure) | 8132 | Plage CIDR de sous-réseau du pool de nœuds | Autoriser les connexions Konnectivity depuis les nœuds des pools de nœuds (une règle par sous-réseau utilisée par les pools de nœuds) |
Entrant | TCP | 11872 | Plages CIDR du plan de contrôle | Vérification de l'état HTTP de l'équilibreur de charge |
Sortant | TCP | 443 | 0.0.0.0/0 | Autorise le trafic HTTPS sortant |
Sortant | TCP | 2380 | SG du plan de contrôle | Autorise la duplication etcd du plan de contrôle |
Sortant | TCP | 2381 | SG du plan de contrôle | Autorise la duplication d'événements etcd du plan de contrôle |
Groupes de sécurité du pool de nœuds
Les groupes de sécurité de pool de nœuds définissent les règles de pare-feu pour le trafic TCP entrant et sortant pour les VM des pools de nœuds.
GKE sur AWS crée et associe un groupe de sécurité de pool de nœuds géré à toutes les instances de pool de nœuds. Vous ne devez pas modifier les règles de ce groupe. Si vous devez ajouter d'autres règles de groupe de sécurité, vous pouvez spécifier des ID de groupe de sécurité supplémentaires à associer aux instances lorsque vous créez un pool de nœuds.
Par défaut, les VM de pool de nœuds n'ont pas de ports ouverts. Pour autoriser le trafic entrant, vous ajoutez un groupe de sécurité de pool de nœuds lors de la création du pool de nœuds, et vous gérez les règles entrantes/sortantes souhaitées pour le pool de nœuds via ce groupe de sécurité.
Règles par défaut des groupes de sécurité du pool de nœuds
Voici les règles par défaut que GKE sur AWS associe aux pools de nœuds. Ces règles ne correspondent pas exactement à vos groupes de sécurité. Chaque ligne du tableau peut contenir plusieurs règles de groupe de sécurité AWS.
Type | Protocol (Protocole) | Port | Plage d'adresses ou SG | Description |
---|---|---|---|---|
Entrant | TCP | Tous | SG du pool de nœuds | Autorise la communication entre pods |
Sortant | TCP | Tous | SG du pool de nœuds | Autorise la communication entre pods |
Sortant | TCP | 443 | 0.0.0.0/0 | Autorise le trafic HTTPS sortant |
Sortant | TCP | 8132 | SG du plan de contrôle | Autorise les connexions Ktonctivity au plan de contrôle |
Sortant | TCP | 8132 | Plages CIDR du plan de contrôle | Autorise les connexions Ktonctivity au plan de contrôle |
Pools de nœuds dans les blocs CIDR secondaires du VPC
GKE sur AWS version 1.26 ou ultérieure crée et gère les règles de groupe de sécurité nécessaires pour prendre en charge les pools de nœuds utilisant des sous-réseaux dans les blocs CIDR de VPC secondaires. Si vous utilisez l'une de ces versions, vous n'avez pas besoin de créer de groupes de sécurité personnalisés ni de les mettre à jour manuellement.
Toutefois, lors de la création de groupes de sécurité gérés pour le plan de contrôle, les versions antérieures de GKE sur AWS ne créent pas de règles compatibles avec les pools de nœuds avec sous-réseaux d'un bloc CIDR du VPC secondaire.
Pour contourner cette limitation, créez un groupe de sécurité personnalisé pour votre plan de contrôle. Vous transmettez l'ID du groupe de sécurité lors de la création d'un cluster à l'aide de la propriété
--security-group-ids
.
. Vous pouvez également mettre à jour les groupes de sécurité de votre cluster.
Créez le groupe de sécurité à l'aide des règles suivantes :
Type | Protocol (Protocole) | Port | Plages d'adresses ou SG | Description |
---|---|---|---|---|
Entrant | TCP | 443 | Plages de pools de nœuds (dans les blocs CIDR secondaires du VPC) | Autorise HTTPS à partir des nœuds de pool de nœuds |
Entrant | TCP | 8132 | Plages de pools de nœuds (dans les blocs CIDR secondaires du VPC) | Autorise les connexions Ktonctivity à partir de pools de nœuds |