Detaillierte Verfahren zur Einrichtung einer Dual-Tier- oder Service-Mesh-Lite-Topologie
Softwareanforderungen
| Kubernetes-Distribution | Kubernetes-Version | Container Network Interfaces (CNI) | CPX-Version | CIC-Version | NetScaler ADM-Version | NetScaler Agent-Version |
|---|---|---|---|---|---|---|
| Open Source | v1.16.3 | Flannel | 13.0–41.28 | 1.5.25 | 13.0–47.22 | 13.0–47.22 |
Bevor Sie beginnen
Sie können den Service-Graph in den folgenden Szenarien anzeigen:
-
NetScaler ADM und Kubernetes-Cluster im selben Netzwerk (z. B. NetScaler ADM und Kubernetes-Cluster, die auf Citrix Hypervisor™ gehostet werden).
-
NetScaler ADM und Kubernetes-Cluster in einem anderen Netzwerk. In diesem Szenario müssen Sie einen On-Prem-Agenten konfigurieren und den Agenten in dem Netzwerk registrieren, in dem der Kubernetes-Cluster gehostet wird.
Um den Service-Graph in NetScaler® ADM zu verwenden, stellen Sie sicher, dass Sie Folgendes haben:
-
Kubernetes-Cluster mit NetScaler CPX als Proxy. Weitere Informationen finden Sie unter NetScaler Ingress Controller.
-
Statische Routen in NetScaler ADM konfiguriert, um die Kommunikation zwischen NetScaler ADM und NetScaler CPX zu ermöglichen.
-
Die Beispiel-Bereitstellungsdateien aus dem GitHub-Repository heruntergeladen.
-
Erforderliche Parameter in der CPX-YAML-Datei hinzugefügt, um eine erfolgreiche CPX-Registrierung bei NetScaler ADM sicherzustellen.
-
Kubernetes-Cluster in NetScaler ADM hinzugefügt.
-
Eine Beispiel-Microservice-Anwendung bereitgestellt.
-
NetScaler CPX bereitgestellt und CPX bei ADM registriert.
-
Virtuelle Server automatisch auswählen aktiviert, um die virtuellen Server zu lizenzieren.
-
Die Web-Transaktionseinstellungen auf Alle geändert, damit der NetScaler-Agent HTTP-Transaktionen abrufen kann.
-
Die Datei Istream.conf aktualisiert und die TCP-Einstellung auf Alle geändert, damit der NetScaler-Agent TCP-Metriken abrufen kann.
Softwareanforderungen
| Kubernetes-Distribution | Kubernetes-Version | Container Network Interfaces (CNI) | CPX-Version | CIC-Version | NetScaler ADM-Version | NetScaler Agent-Version |
|---|---|---|---|---|---|---|
| Open Source | v1.16.3 | Flannel | 13.0–41.28 | 1.5.25 | 13.0–47.22 | 13.0–47.22 |
Bevor Sie beginnen
Sie können den Service-Graph in den folgenden Szenarien anzeigen:
-
NetScaler ADM und Kubernetes-Cluster im selben Netzwerk (z. B. NetScaler ADM und Kubernetes-Cluster, die auf Citrix Hypervisor gehostet werden).
-
NetScaler ADM und Kubernetes-Cluster in einem anderen Netzwerk. In diesem Szenario müssen Sie einen On-Prem-Agenten konfigurieren und den Agenten in dem Netzwerk registrieren, in dem der Kubernetes-Cluster gehostet wird.
Um den Service-Graph in NetScaler ADM zu verwenden, stellen Sie sicher, dass Sie Folgendes haben:
-
Kubernetes-Cluster mit NetScaler CPX als Proxy. Weitere Informationen finden Sie unter NetScaler Ingress Controller.
-
Statische Routen in NetScaler ADM konfiguriert, um die Kommunikation zwischen NetScaler ADM und NetScaler CPX zu ermöglichen.
-
Die Beispiel-Bereitstellungsdateien aus dem GitHub-Repository heruntergeladen.
-
Erforderliche Parameter in der CPX-YAML-Datei hinzugefügt, um eine erfolgreiche CPX-Registrierung bei NetScaler ADM sicherzustellen.
-
Kubernetes-Cluster in NetScaler ADM hinzugefügt.
-
Eine Beispiel-Microservice-Anwendung bereitgestellt.
-
NetScaler CPX bereitgestellt und CPX bei ADM registriert.
-
Virtuelle Server automatisch auswählen aktiviert, um die virtuellen Server zu lizenzieren.
-
Die Web-Transaktionseinstellungen auf Alle geändert, damit der NetScaler-Agent HTTP-Transaktionen abrufen kann.
-
Die Datei Istream.conf aktualisiert und die TCP-Einstellung auf Alle geändert, damit der NetScaler-Agent TCP-Metriken abrufen kann.
Statische Routen in NetScaler ADM konfigurieren
Innerhalb des Kubernetes-Clusters verwenden alle containerisierten Pods ein Overlay-Netzwerk. Eine direkte Kommunikation über diese privaten IP-Adressen ist nicht möglich. Um die Kommunikation von NetScaler ADM zum Kubernetes-Cluster zu ermöglichen, müssen Sie statisches Routing in NetScaler ADM konfigurieren.
Hinweis
Wenn Sie einen On-Prem-Agenten verwenden, stellen Sie sicher, dass Sie statische Routen auf dem Agenten konfigurieren. Melden Sie sich mit einem SSH-Client beim NetScaler-Agenten an und konfigurieren Sie die statischen Routen.
Angenommen, Sie haben die folgenden IP-Adressen für Ihren Kubernetes-Cluster:
-
Kubernetes Master – 101.xx.xx.112
-
Kubernetes Worker 1 – 101.xx.xx.111
-
Kubernetes Worker 2 – 101.xx.xx.110
Führen Sie auf dem Kubernetes Master den folgenden Befehl aus, um das Pod-Netzwerk für das statische Routing zu identifizieren:
kubectl get nodes -o jsonpath="{range .items[*]}{'podNetwork: '}{.spec.podCIDR}{'\t'}{'gateway: '}{.status.addresses[0].address}{'\n'}{end}"
Das Folgende ist ein Beispiel für die Ausgabe nach Ausführung des Befehls:

-
Melden Sie sich mit einem SSH-Client bei NetScaler ADM an.
-
Konfigurieren Sie das statische Routing mit dem Befehl
route add -net <IP-Adressbereich des öffentlichen Netzwerks> <Kubernetes-IP-Adresse>Zum Beispiel:
route add -net 192.168.0.0/24 101.xx.xx.112route add -net 192.168.1.0/24 101.xx.xx.111route add -net 192.168.2.0/24 101.xx.xx.110 -
Überprüfen Sie die Konfiguration mit
netstat -rn
-
Fügen Sie diese Routenbefehle in die Datei
/mpsconfig/svm.confein.-
Greifen Sie in NetScaler ADM mit dem folgenden Befehl auf die Datei svm.conf zu:
vim /mpsconfig/svm.conf -
Fügen Sie die statischen Routen in die Datei svm.conf ein.
Zum Beispiel:
route add -net 192.168.0.0/24 101.xx.xx.112.
-
Beispiel-Bereitstellungsdateien von GitHub herunterladen
-
Verwenden Sie den Befehl git clone
https://github.com/citrix/citrix-k8s-ingress-controller.git, um das GitHub-Repository auf dem Master-Knoten zu klonen. -
Um auf die YAMLs zuzugreifen:
cd citrix-k8s-ingress-controller/example/servicegraph-demo/
Parameter in der CPX-YAML-Datei hinzufügen
Hinweis
Wenn Sie CPX 58.x oder höher verwenden, müssen Sie das Nicht-nsroot-Passwort verwenden, wenn Sie sich beim ADM-Agenten registrieren. Um die Sicherheit zu gewährleisten, erfordern NetScaler Agent 61.x oder spätere Versionen eine obligatorische Passwortänderung. Wenn Ihr NetScaler-Agent auf 61.x oder die neueste Version aktualisiert wurde, müssen Sie sicherstellen, dass Sie CPX 58.x oder höher verwenden.
Sie müssen die folgenden Parameter in die Datei cpx.yaml aufnehmen, um die CPX-Registrierung bei NetScaler ADM sicherzustellen:
- name: "NS_MGMT_SERVER"
value: "xx.xx.xx.xx"
- name: "NS_MGMT_FINGER_PRINT"
value: "xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx"
- name: "NS_HTTP_PORT"
value: "9080"
- name: "NS_HTTPS_PORT"
value: 9443"
- name: "NS_MGMT_USER"
value: "nsroot"
- name: "NS_MGMT_PASS"
value: <Ihr Passwort>
- name: "LOGSTREAM_COLLECTOR_IP"
value: "xx.xx.xx.xx"
<!--NeedCopy-->
-
NS_MGMT_SERVER – Gibt die IP-Adresse des NetScaler ADM an.
Hinweis
Wenn ein ADM-Agent verwendet wird, gibt dies die IP-Adresse des On-Prem-Agenten an.
-
NS_MGMT_FINGER_PRINT – Gibt die Authentifizierung für CPX in NetScaler ADM an. Um den Fingerabdruck zu erhalten:
-
Navigieren Sie in NetScaler ADM zu Einstellungen > Administration.
-
Klicken Sie unter Systemkonfigurationen auf ADM-Fingerabdruck anzeigen.

Hinweis:
Wenn Sie einen On-Prem-Agenten konfiguriert haben, navigieren Sie zu Infrastruktur > Instanzen > Agenten, wählen Sie den Agenten aus und klicken Sie dann auf Fingerabdruck anzeigen.

-
-
NS_HTTP_PORT – Gibt den HTTP-Port für die Kommunikation an.
-
NS_HTTPS_PORT – Gibt den HTTPS-Port für die Kommunikation an.
-
NS_MGMT_USER – Gibt den Benutzernamen an.
-
NS_MGMT_PASS – Gibt das Passwort an. Geben Sie ein Passwort Ihrer Wahl ein.
-
LOGSTREAM_COLLECTOR_IP – Gibt die IP-Adresse des NetScaler-Agenten an, auf dem das Logstream-Protokoll aktiviert sein muss, um Protokolldaten von CPX an ADM zu übertragen.
VPX- oder SDX- oder MPX- oder BLX-Instanz in NetScaler ADM hinzufügen
Um die Analysedaten der Tier-1-ADC-Instanz im Service-Graph zu erhalten, müssen Sie die VPX/SDX/MPX/BLX-Instanz in NetScaler ADM hinzufügen und Web Insight aktivieren.
-
Navigieren Sie zu Infrastruktur > Instanzen > NetScaler.
-
Klicken Sie auf die Option Hinzufügen, um die Instanz hinzuzufügen. Weitere Informationen finden Sie unter Instanzen in NetScaler ADM hinzufügen.
-
Nach dem Hinzufügen der Instanz wählen Sie den virtuellen Server aus und aktivieren Web Insight. Weitere Informationen finden Sie unter Lizenzierung verwalten und Analysen auf virtuellen Servern aktivieren.
Kubernetes-Cluster in NetScaler ADM hinzufügen
So fügen Sie den Kubernetes-Cluster hinzu:
-
Melden Sie sich mit Administratoranmeldeinformationen bei NetScaler ADM an.
-
Navigieren Sie zu Orchestrierung > Kubernetes > Cluster. Die Seite “Cluster” wird angezeigt.
-
Klicken Sie auf Hinzufügen.
-
Geben Sie auf der Seite Cluster hinzufügen die folgenden Parameter an:
-
Name – Geben Sie einen Namen Ihrer Wahl an.
-
API-Server-URL – Sie können die Details der API-Server-URL vom Kubernetes Master-Knoten abrufen.
-
Führen Sie auf dem Kubernetes Master-Knoten den Befehl
kubectl cluster-infoaus.
-
Geben Sie die URL ein, die für „Kubernetes master is running at.“ angezeigt wird.
-
-
Authentifizierungstoken – Geben Sie das Authentifizierungstoken an. Das Authentifizierungstoken ist erforderlich, um den Zugriff für die Kommunikation zwischen dem Kubernetes-Cluster und NetScaler ADM zu validieren. So generieren Sie ein Authentifizierungstoken:
Auf dem Kubernetes Master-Knoten:
-
Verwenden Sie die folgende YAML, um ein Servicekonto zu erstellen:
apiVersion: v1 kind: ServiceAccount metadata: name: <Name> namespace: <Namespace> <!--NeedCopy--> -
Führen Sie
kubectl create -f <YAML-Datei>aus.Das Servicekonto wird erstellt.
-
Führen Sie
kubectl create clusterrolebinding <Name> --clusterrole=cluster-admin --serviceaccount=<Namespace>:<Name>aus, um die Clusterrolle an das Servicekonto zu binden.Das Servicekonto hat nun clusterweiten Zugriff.
Ein Token wird automatisch generiert, wenn das Servicekonto erstellt wird.
-
Führen Sie
kubectl describe sa <Name>aus, um das Token anzuzeigen. -
Um die geheime Zeichenfolge zu erhalten, führen Sie
kubectl describe secret <Token-Name>aus.
-
-
Wählen Sie den Agenten aus der Liste aus.
Hinweis
Wenn Sie einen On-Prem-Agenten verwenden, stellen Sie sicher, dass Sie denselben Agenten auswählen, den Sie in der CPX-YAML hinzugefügt haben.
-
Klicken Sie auf Erstellen.

-
Eine Beispiel-Microservice-Anwendung bereitstellen
Auf dem Master-Knoten:
-
Führen Sie
kubectl create -f namespace.yamlaus, um einen Namespace zu erstellen. -
Stellen Sie
hotdrink-Microservices, Ingress und Secrets mit den folgenden Befehlen bereit:kubectl create -f team_hotdrink.yaml -n sg-demokubectl create -f hotdrink-secret.yaml -n sg-demo
CPX bereitstellen und CPX in ADM registrieren
-
Führen Sie
kubectl create -f rbac.yamlaus, um die Clusterrolle und die Clusterbindung bereitzustellen. -
Führen Sie
kubectl create -f cpx.yaml -n sg-demoaus, um CPX bereitzustellen.
Nach der Bereitstellung erfolgt die CPX-Registrierung automatisch.
Virtuelle Server für die Lizenzierung automatisch auswählen aktivieren
Hinweis
Stellen Sie sicher, dass Sie über ausreichende Lizenzen für virtuelle Server verfügen. Weitere Informationen finden Sie unter Lizenzierung.
Nachdem Sie den Kubernetes-Cluster in NetScaler ADM hinzugefügt haben, müssen Sie sicherstellen, dass virtuelle Server für die Lizenzierung automatisch ausgewählt werden. Virtuelle Server müssen lizenziert sein, um Daten im Service-Graph anzuzeigen. So wählen Sie virtuelle Server automatisch aus:
-
Navigieren Sie zu Einstellungen > Lizenzierungs- und Analysekonsfiguration.
-
Aktivieren Sie unter Zusammenfassung der virtuellen Serverlizenzen die Optionen Virtuelle Server automatisch auswählen und Nicht adressierbare virtuelle Server automatisch auswählen.

Web-Transaktions- und TCP-Transaktionseinstellungen aktivieren
Nachdem Sie den Kubernetes-Cluster hinzugefügt und die automatische Auswahl virtueller Server aktiviert haben, ändern Sie die Web-Transaktionseinstellungen und TCP-Transaktionseinstellungen auf Alle.
-
Navigieren Sie zu Einstellungen > Analyseeinstellungen.
Die Seite Analyseeinstellungen wird angezeigt.
-
Klicken Sie auf Funktionen für Analysen aktivieren.
-
Wählen Sie unter Web-Transaktionseinstellungen die Option Alle.
-
Wählen Sie unter TCP-Transaktionseinstellungen die Option Alle.

-
Klicken Sie auf OK.
Traffic an Microservices senden
Als Nächstes müssen Sie Traffic an Microservices senden, damit der Service-Graph in NetScaler ADM gefüllt wird.
-
Führen Sie
kubectl get svc -n sg-demoaus, um CPX über NodePort freizugeben.
-
Bearbeiten Sie die Datei etc/host und erstellen Sie einen Domänen-IP-Eintrag für
hotdrink.beverages.com.Sie können den Microservice nun über
https://hotdrink.beverages.comaufrufen.
In diesem Artikel
- Softwareanforderungen
- Bevor Sie beginnen
- Softwareanforderungen
- Bevor Sie beginnen
- Statische Routen in NetScaler ADM konfigurieren
- Beispiel-Bereitstellungsdateien von GitHub herunterladen
- Parameter in der CPX-YAML-Datei hinzufügen
- VPX- oder SDX- oder MPX- oder BLX-Instanz in NetScaler ADM hinzufügen
- Kubernetes-Cluster in NetScaler ADM hinzufügen
- Eine Beispiel-Microservice-Anwendung bereitstellen
- CPX bereitstellen und CPX in ADM registrieren
- Virtuelle Server für die Lizenzierung automatisch auswählen aktivieren
- Web-Transaktions- und TCP-Transaktionseinstellungen aktivieren
- Traffic an Microservices senden