Difference between revisions of "Kubernetes network policies"

From wikieduonline
Jump to navigation Jump to search
Line 5: Line 5:
 
https://kubernetes.io/docs/concepts/services-networking/network-policies/#networkpolicy-resource
 
https://kubernetes.io/docs/concepts/services-networking/network-policies/#networkpolicy-resource
 
Official example:
 
Official example:
<pre>
+
 
apiVersion: networking.k8s.io/v1
+
 
kind: NetworkPolicy
+
apiVersion: networking.k8s.io/v1
metadata:
+
kind: NetworkPolicy
  name: test-network-policy
+
metadata:
  namespace: default
+
  name: test-network-policy
spec:
+
  namespace: default
  podSelector:
+
spec:
    matchLabels:
+
  podSelector:
      role: db
+
    matchLabels:
  policyTypes:
+
      role: db
    - Ingress
+
  policyTypes:
    - Egress
+
    - Ingress
  ingress:
+
    - Egress
    - from:
+
  ingress:
        - ipBlock:
+
    - from:
            cidr: 172.17.0.0/16
+
        - ipBlock:
            except:
+
            cidr: 172.17.0.0/16
              - 172.17.1.0/24
+
            except:
        - namespaceSelector:
+
              - 172.17.1.0/24
            matchLabels:
+
        - namespaceSelector:
              project: myproject
+
            matchLabels:
        - podSelector:
+
              project: myproject
            matchLabels:
+
        - podSelector:
              role: frontend
+
            matchLabels:
      ports:
+
              role: frontend
        - protocol: TCP
+
      ports:
          port: 6379
+
        - protocol: TCP
  egress:
+
          port: 6379
     - to:
+
  egress:
        - ipBlock:
+
     - to:  
 +
      - ipBlock:
 
             cidr: 10.0.0.0/24
 
             cidr: 10.0.0.0/24
 
       ports:
 
       ports:
Line 41: Line 42:
 
           port: 5978
 
           port: 5978
  
</pre>
 
  
 
== Related ==
 
== Related ==

Revision as of 16:29, 9 July 2022

https://kubernetes.io/docs/concepts/services-networking/network-policies/#networkpolicy-resource Official example:


apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
  name: test-network-policy
  namespace: default
spec:
  podSelector:
    matchLabels:
      role: db
  policyTypes:
    - Ingress
    - Egress
  ingress:
    - from:
        - ipBlock:
            cidr: 172.17.0.0/16
            except:
              - 172.17.1.0/24
        - namespaceSelector:
            matchLabels:
              project: myproject
        - podSelector:
            matchLabels:
              role: frontend
      ports:
        - protocol: TCP
          port: 6379
  egress:
   - to: 
     -  ipBlock:
           cidr: 10.0.0.0/24
     ports:
       - protocol: TCP
         port: 5978


Related

See also

Advertising: