Sobes.tech
Middle

Πώς μπορεί να περιοριστεί η αλληλεπίδραση μεταξύ εφαρμογών που βρίσκονται σε διαφορετικά namespace;

sobes.tech AI

Απάντηση από AI

Χρησιμοποιήστε Πολιτικές Δικτύου.

apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
  name: allow-from-namespace
  namespace: default # Ο namespace όπου βρίσκεται η υπηρεσία, περιορίζουμε την αλληλεπίδραση
spec:
  podSelector: {} # Εφαρμόζεται σε όλους τους pods σε αυτόν τον namespace
  ingress:
  - from:
    - namespaceSelector:
        matchLabels:
          project: internal # Επιτρέπεται η κυκλοφορία μόνο από namespace με ετικέτα project: internal
    ports:
    - protocol: TCP
      port: 80 # Επιτρέπεται η κυκλοφορία μόνο στην πόρτα 80

Άλλες προσεγγίσεις περιλαμβάνουν:

  • Service Mesh (Istio, Linkerd): Παρέχουν πιο λεπτομερή έλεγχο της κυκλοφορίας, συμπεριλαμβανομένης της αμοιβαίας αυθεντικοποίησης (mTLS).
  • Τείχη προστασίας: Σε επίπεδο κόμβου (iptables) ή παρόχου cloud.
  • Ενσωματωμένοι μηχανισμοί στις εφαρμογές: Για παράδειγμα, εξουσιοδότηση σε επίπεδο API Gateway.