Datenverkehrsmanagement für externe Dienste

Last published : Oct 02, 2026
Manchmal werden nicht alle verfügbaren Dienste einer Anwendung vollständig auf einem einzigen Kubernetes-Cluster bereitgestellt. Möglicherweise verfügen Sie auch über Anwendungen, die auf Dienste außerhalb eines Clusters angewiesen sind. In diesem Fall müssen Microservices einen ExternalName-Dienst definieren, um den Domänennamen aufzulösen. Bei diesem Ansatz könnten Sie jedoch keine Funktionen wie Datenverkehrsmanagement, Richtliniendurchsetzung, Failover-Management usw. nutzen. Alternativ können Sie NetScaler so konfigurieren, dass es die Domänennamen auflöst und die Funktionen von NetScaler nutzt.

NetScaler für den Zugriff auf externe Dienste konfigurieren

Sie können NetScaler als Domänennamen-Resolver mit dem NetScaler Ingress Controller konfigurieren. Wenn Sie NetScaler als Domänennamen-Resolver konfigurieren, müssen Sie Folgendes auflösen:
  • Erreichbarkeit von NetScaler von Microservices aus
  • Domänennamenauflösung auf NetScaler, um externe Dienste zu erreichen

Einen Dienst für die Erreichbarkeit vom Kubernetes-Cluster zu NetScaler konfigurieren

Um NetScaler von Microservices aus zu erreichen, müssen Sie einen Headless-Dienst definieren, der in einen NetScaler-Dienst aufgelöst wird und so die Konnektivität zwischen Microservices und NetScaler herstellt.
apiversion: v1
kind: Service
metadata: 
  name: external-svc
spec:
  selector:
    app: cpx
  ports:
    - protocol: TCP
      port: 80

NetScaler als Domänennamen-Resolver mit dem NetScaler Ingress Controller konfigurieren

Sie können NetScaler über den NetScaler Ingress Controller konfigurieren, um eine domänenbasierte Dienstgruppe mithilfe der Ingress-Annotation ingress.citrix.com/external-service zu erstellen. Der Wert für ingress.citrix.com/external-service ist eine Liste externer Namensdienste mit ihren entsprechenden Domänennamen. Für NetScaler VPX werden Namensserver auf NetScaler mithilfe der ConfigMap konfiguriert.
Hinweis:
ConfigMaps werden verwendet, um Namensserver auf NetScaler nur für NetScaler VPX zu konfigurieren. Für NetScaler CPX leitet CoreDNS die Namensauflösungsanfrage an den Upstream-DNS-Server weiter.

Datenverkehrsmanagement mit NetScaler CPX

Das folgende Diagramm erläutert die NetScaler CPX-Bereitstellung, um externe Dienste zu erreichen. Ein Ingress wird bereitgestellt, wobei die Annotation für externe Dienste angegeben wird, um DNS auf NetScaler CPX zu konfigurieren.
Hinweis: Eine ConfigMap wird verwendet, um Namensserver auf NetScaler VPX zu konfigurieren.
Datenverkehrsmanagement mit NetScaler CPX
Bei dieser Bereitstellung:
  1. Ein Microservice sendet die DNS-Abfrage für www.externalsvc.com, die in den NetScaler CPX-Dienst aufgelöst würde.
  2. NetScaler CPX löst www.externalsvc.com auf und erreicht den externen Dienst.
Im Folgenden sind die Schritte aufgeführt, um NetScaler CPX für den Lastausgleich externer Dienste zu konfigurieren:
  1. Definieren Sie einen Headless-Dienst, um NetScaler zu erreichen.
    apiVersion: v1
    kind: Service
    metadata:
      name: external-svc
    spec:
      selector:
        app: cpx
      ports:
        - protocol: TCP
          port: 80
  2. Definieren Sie einen Ingress und geben Sie die Annotation für externe Dienste an, wie in der Datei dbs-ingress.yaml angegeben. Wenn Sie diese Annotation angeben, erstellt der NetScaler Ingress Controller DNS-Server auf NetScaler und bindet die Server an die entsprechende Dienstgruppe.
    annotations:
      ingress.citrix.com/external-service: '{"external-svc": {"domain": "www.externalsvc.com"}}'
  3. Fügen Sie die IP-Adresse des DNS-Servers auf NetScaler mithilfe von ConfigMap hinzu.
    Hinweis:
    Dieser Schritt ist nur für NetScaler VPX anwendbar.
    apiVersion: v1
    kind: ConfigMap
    metadata:
      name: nameserver-cmap
      namespace: default
    data:
      NS_DNS_NAMESERVER: '[]'