Kubernetes - Politique de réseau

La stratégie réseau définit la manière dont les pods du même espace de noms communiqueront entre eux et avec le point de terminaison du réseau. Cela demandeextensions/v1beta1/networkpoliciesà activer dans la configuration d'exécution du serveur API. Ses ressources utilisent des étiquettes pour sélectionner les pods et définir des règles pour autoriser le trafic vers un pod spécifique en plus de celui défini dans l'espace de noms.

Tout d'abord, nous devons configurer la stratégie d'isolation d'espace de noms. Fondamentalement, ce type de règles de mise en réseau est requis sur les équilibreurs de charge.

kind: Namespace
apiVersion: v1
metadata:
   annotations:
      net.beta.kubernetes.io/network-policy: |
      {
         "ingress": 
         {
            "isolation": "DefaultDeny"
         }
      }
$ kubectl annotate ns <namespace> "net.beta.kubernetes.io/network-policy = 
{\"ingress\": {\"isolation\": \"DefaultDeny\"}}"

Une fois l'espace de noms créé, nous devons créer la stratégie réseau.

Politique de réseau Yaml

kind: NetworkPolicy
apiVersion: extensions/v1beta1
metadata:
   name: allow-frontend
   namespace: myns
spec:
   podSelector:
      matchLabels:
         role: backend
   ingress:
   - from:
      - podSelector:
         matchLabels:
            role: frontend
   ports:
      - protocol: TCP
         port: 6379