Zum Inhalt springen
_CORE
KI & Agentensysteme Unternehmensinformationssysteme Cloud & Platform Engineering Datenplattform & Integration Sicherheit & Compliance QA, Testing & Observability IoT, Automatisierung & Robotik Mobile & Digitale Produkte Banken & Finanzen Versicherungen Öffentliche Verwaltung Verteidigung & Sicherheit Gesundheitswesen Energie & Versorgung Telko & Medien Industrie & Fertigung Logistik & E-Commerce Retail & Treueprogramme
Referenzen Technologien Blog Know-how Tools
Über uns Zusammenarbeit Karriere
CS EN DE
Lassen Sie uns sprechen

Container Networking in Kubernetes

28. 07. 2024 1 Min. Lesezeit intermediate

DevOps Fortgeschritten

Container Networking in Kubernetes

KubernetesNetworkingCNIIngress 6 Min. Lesezeit

Kubernetes-Netzwerkmodell. CNI-Plugins, Service-Typen, Ingress-Controller und DNS.

K8s-Netzwerkmodell

Jeder Pod hat eine eigene IP-Adresse. Grundregeln:

  • Jeder Pod kann mit jedem anderen Pod kommunizieren (ohne NAT)
  • Nodes können mit Pods kommunizieren (ohne NAT)
  • Die IP, die ein Pod bei sich selbst sieht = die für andere sichtbare IP

CNI-Plugins

  • Calico — BGP Routing, Network Policies, weit verbreitet
  • Cilium — eBPF-basiert, hochleistungsfähig, erweiterte Network Policies
  • Flannel — einfaches Overlay, geeignet für Einsteiger
  • Weave — Mesh-Netzwerk, verschlüsselt
# Cilium Installation
helm install cilium cilium/cilium \
  --namespace kube-system \
  --set hubble.enabled=true \
  --set hubble.relay.enabled=true \
  --set hubble.ui.enabled=true

Service-Typen

# ClusterIP — intern (Standard)
apiVersion: v1
kind: Service
spec:
  type: ClusterIP
  selector:
    app: api
  ports:
    - port: 80
      targetPort: 8080

# NodePort — Zugriff über Port am Node
spec:
  type: NodePort
  ports:
    - port: 80
      nodePort: 30080

# LoadBalancer — Cloud LB
spec:
  type: LoadBalancer
  ports:
    - port: 443

Ingress

apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
  name: api-ingress
  annotations:
    cert-manager.io/cluster-issuer: letsencrypt
spec:
  ingressClassName: nginx
  tls:
    - hosts: [api.example.com]
      secretName: api-tls
  rules:
    - host: api.example.com
      http:
        paths:
          - path: /
            pathType: Prefix
            backend:
              service:
                name: api-server
                port:
                  number: 80

Zusammenfassung

K8s Networking ist ein flaches Modell mit Pod-zu-Pod-Kommunikation. Wählen Sie das CNI-Plugin nach Bedarf: Cilium für eBPF-Performance, Calico für Network Policies.

Brauchen Sie Hilfe bei der Implementierung?

Unser Team hat Erfahrung mit dem Entwurf und der Implementierung moderner Architekturen. Wir helfen Ihnen gerne.

Kostenlose Beratung

Teilen:

CORE SYSTEMS Team

Wir bauen Kernsysteme und KI-Agenten, die den Betrieb am Laufen halten. 15 Jahre Erfahrung mit Enterprise-IT.