Come posso configurare un gruppo di sicurezza per i pod AWS Fargate nel mio cluster Amazon EKS?
Desidero configurare un gruppo di sicurezza per i miei pod AWS Fargate nel mio cluster Amazon Elastic Kubernetes Service (Amazon EKS). Desidero utilizzare il gruppo di sicurezza per controllare il traffico di rete in entrata e in uscita.
Breve descrizione
Puoi collegare i gruppi di sicurezza personalizzati di Amazon Elastic Compute Cloud (Amazon EC2) ai pod Fargate nel cluster Amazon EKS utilizzando i gruppi di sicurezza per singoli pod. I gruppi di sicurezza collegati limitano il traffico di rete in entrata e in uscita da e verso i pod Fargate.
Per impostazione predefinita, i pod Fargate sono configurati automaticamente per utilizzare il gruppo di sicurezza del cluster per comunicare con il piano di controllo (control-plane) di Kubernetes. Puoi utilizzare i gruppi di sicurezza per configurare le regole per il traffico di rete in entrata e in uscita da e verso i pod Fargate.
I gruppi di sicurezza specificati per i pod Fargate devono soddisfare i seguenti criteri:
- Devono avere regole che consentano ai pod di comunicare con il piano di controllo (control-plane) di Kubernetes. Assicurati di specificare il gruppo di sicurezza del cluster come uno dei gruppi di sicurezza.
- Devono avere le regole in entrata e in uscita necessarie per comunicare con altri pod o endpoint. Ad esempio, devono avere una regola in uscita per i pod CoreDNS con porta TCP/UDP 53 per la risoluzione dei nomi.
Risoluzione
Per applicare i gruppi di sicurezza ai pod Fargate, completa i seguenti passaggi:
-
Distribuisci una policy del gruppo di sicurezza Amazon EKS nel cluster.
Esempio:apiVersion: vpcresources.k8s.aws/v1beta1 kind: SecurityGroupPolicy metadata: name: my-security-group-policy namespace: my-namespace spec: podSelector: matchLabels: role: my-role securityGroups: groupIds: - my_pod_security_group_idNota: sostituisci my-security-group-policy, my-namespace, my-role e my-pod-security-group-id con i valori della tua configurazione. Puoi utilizzare serviceAccountSelector invece di podSelector.
-
Distribuisci l'applicazione con un'etichetta che corrisponda a SecurityGroupPolicy.
Esempio:apiVersion: apps/v1 kind: Deployment metadata: name: my-deployment namespace: my-namespace labels: app: my-app spec: replicas: 4 selector: matchLabels: app: my-app template: metadata: labels: app: my-app role: my-role spec: terminationGracePeriodSeconds: 120 containers: - name: nginx image: public.ecr.aws/nginx/nginx:1.23 ports: - containerPort: 80 -
Verifica che i pod utilizzino i gruppi di sicurezza per i pod. In tal caso, fargate.amazonaws.com/pod-sg è incluso nell'annotazione. Esegui questo comando:
kubectl describe pod pod name -n <namespace> | grep fargate.amazonaws.com/pod-sg fargate.amazonaws.com/pod-sg: my_pod_security_group_id,...Nota: sostituisci pod-name con il nome del tuo pod e my_pod_security_group_id con l'ID del gruppo di sicurezza del tuo pod.
Informazioni correlate
Introducing security groups for pods (Gruppi di sicurezza per i pod)
- Argomenti
- Containers
- Lingua
- Italiano

Contenuto pertinente
AWS UFFICIALEAggiornata 9 mesi fa
AWS UFFICIALEAggiornata 2 anni fa