Detaillierte Verfahren zur Einrichtung einer Dual-Tier- oder Service-Mesh-Topologie
Die Voraussetzungen für die Bereitstellung der Dual-Tier- oder Service Mesh Lite-Topologie finden Sie unter Service-Diagramm einrichten.
Einen NetScaler Agent konfigurieren
Um die Kommunikation zwischen Kubernetes-Cluster und NetScaler Console zu ermöglichen, müssen Sie einen Agenten installieren und konfigurieren. Sie können einen Agent mit einem Hypervisor, öffentlichen Cloud-Services (wie Microsoft Azure, AWS) oder einem integrierten Agent konfigurieren, der auf NetScaler-Instanzen verfügbar ist (ideal für HA-Bereitstellungen).
Folgen Sie den Anweisungen, um einen Agent zu konfigurieren.
Hinweis
Sie können auch einen vorhandenen Agent verwenden.
Die Agents werden standardmäßig automatisch auf den neuesten Build von NetScaler Console aktualisiert. Sie können die Agentdetails auf der Seite Infrastruktur > Instanzen > Agents anzeigen. Sie können auch den Zeitpunkt angeben, zu dem die Agent-Upgrades durchgeführt werden sollen. Weitere Informationen finden Sie unter Konfigurieren der Agent-Upgrade-Einstellungen.
Konfigurieren Sie statische Routen im Agenten
Innerhalb des Kubernetes-Clusters verwenden alle containerisierten Pods ein Overlay-Netzwerk. Der direkte Aufbau der Kommunikation über diese privaten IP-Adressen ist nicht möglich. Um die Kommunikation von NetScaler Console zum Kubernetes-Cluster zu ermöglichen, müssen Sie statisches Routing im Agenten konfigurieren.
Beachten Sie, dass Sie die folgenden IP-Adressen für Ihren Kubernetes-Cluster haben:
-
Kubernetes-Meister — 101.xx.xx.112
-
Kubernetes Arbeiter 1 — 101.xx.xx.111
-
Kubernetes Arbeiter 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 eine Beispielausgabe, nachdem Sie den Befehl ausgeführt haben:
Nach erfolgreicher Konfiguration eines Agenten:
-
Melden Sie sich mit einem SSH-Client beim Agenten an
-
Tippe
shell
und drücke die Eingabetaste, um zubash
-
Konfigurieren Sie das statische Routing mit dem Befehl
route add -net <public IP address range> <Kubernetes IP address>
Beispiel:
route add -net 192.168.0.0/24 101.xx.xx.112
route add -net 192.168.1.0/24 101.xx.xx.111
route add -net 192.168.2.0/24 101.xx.xx.110
-
Überprüfen Sie die Konfiguration mit
netstat -rn
-
Hängen Sie diese Route-Befehle an die Datei
/mpsconfig/svm.conf
an.-
Greifen Sie im NetScaler Agent 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.
Beispiel:
route add -net 192.168.0.0/24 101.xx.xx.112
.
-
Laden Sie die Beispielbereitstellungsdateien von GitHub herunter
-
Verwenden Sie den Befehl git clone
https://github.com/citrix/citrix-k8s-ingress-controller.git
, um das Git-Hub-Repository im Master-Knoten zu klonen. -
Um auf die YAMLs zuzugreifen:
cd citrix-k8s-ingress-controller/example/servicegraph-demo/
Hinzufügen von Parametern in der CPX-YAML-Datei
Hinweis
Wenn Sie CPX 58.x oder höher verwenden, müssen Sie bei der Registrierung beim Agenten das Nicht-NSROOT-Kennwort verwenden. Um die Sicherheit zu gewährleisten, ist für NetScaler Agent 61.x oder höhere Versionen eine obligatorische Kennwortänderung erforderlich. Wenn Ihr NetScaler Agent auf 6.1.x oder die neueste Version aktualisiert wird, müssen Sie sicherstellen, dass Sie CPX 58.x oder ein späteres Build verwenden.
Sie müssen die folgenden Parameter in die cpx.yaml
Datei aufnehmen, um die CPX-Registrierung bei NetScaler Console 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: <your password>
- name: "LOGSTREAM_COLLECTOR_IP"
value: "xx.xx.xx.xx"
<!--NeedCopy-->
-
NS_MGMT_SERVER— Gibt die Agenten-IP-Adresse an
-
NS_MGMT_FINGER_PRINT— Gibt die Authentifizierung für CPX im Agenten an. So erhalten Sie den Fingerabdruck:
-
Navigieren Sie in der NetScaler Console zu Infrastruktur > Instanzen > Agents
-
Wählen Sie den Agent aus und klicken Sie 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 Kennwort an. Geben Sie ein Kennwort Ihrer Wahl an
-
LOGSTREAM_COLLECTOR_IP— Gibt die Agenten-IP-Adresse an, an der das Logstream-Protokoll aktiviert sein muss, um Protokolldaten von CPX zur NetScaler Console zu übertragen
Fügen Sie eine VPX- oder SDX- oder MPX- oder BLX-Instanz in der NetScaler Console hinzu
Um die Tier-1-NetScaler-Instanzanalysen in Service Graph abzurufen, müssen Sie die VPX/SDX/MPX/BLX-Instanz in der NetScaler Console hinzufügen und Web Insight aktivieren. Sie müssen Web Insight for NetScaler Console aktivieren, um die Web-Transaktionsdetails von der VPX/SDX/MPX/BLX-Instanz anzuzeigen.
-
Navigieren Sie zu Infrastruktur > Instanzen > NetScaler
-
Klicken Sie auf die Option Hinzufügen, um die Instanz hinzuzufügen. Weitere Informationen finden Sie unter Hinzufügen von Instanzen in NetScaler Console
-
Nachdem Sie die Instanz hinzugefügt haben, wählen Sie den virtuellen Server aus und aktivieren Sie Web Insight. Weitere Informationen finden Sie unter Verwalten der Lizenzierung und Aktivieren von Analysen auf virtuellen Servern
Kubernetes-Cluster in NetScaler Console hinzufügen
So fügen Sie den Kubernetes-Cluster hinzu:
-
Melden Sie sich mit Administratoranmeldeinformationen an der NetScaler Console an.
-
Navigieren Sie zu Infrastruktur > Orchestration> 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 API-Server-URL-Details vom Kubernetes-Master-Knoten abrufen.
-
Führen Sie auf dem Kubernetes-Masterknoten den Befehl aus
kubectl cluster-info
. -
Geben Sie die URL ein, die für Kubernetes Master läuft unter angezeigt wird.
-
-
Authentifizierungstoken — Geben Sie das Authentifizierung Das Authentifizierungstoken ist erforderlich, um den Zugriff für die Kommunikation zwischen Kubernetes-Cluster und NetScaler Console zu validieren. So generieren Sie ein Authentifizierungstoken:
Auf dem Kubernetes-Master-Knoten:
-
Verwenden Sie die folgende YAML, um ein Dienstkonto zu erstellen:
apiVersion: v1 kind: ServiceAccount metadata: name: <name> namespace: <namespace> <!--NeedCopy-->
-
Führen Sie
kubectl create -f <yaml file>
aus.Das Dienstkonto wird erstellt.
-
Wird ausgeführt
kubectl create clusterrolebinding <name> --clusterrole=cluster-admin --serviceaccount=<namespace>:<name>
, um die Clusterrolle an das Dienstkonto zu binden.Das Dienstkonto hat jetzt den clusterweiten Zugriff.
Beim Erstellen des Dienstkontos wird automatisch ein Token generiert.
-
Lauf
kubectl describe sa <name>
, um das Token anzuzeigen. -
Um die geheime Zeichenfolge zu erhalten, führen Sie aus
kubectl describe secret <token-name>
.
-
-
Wählen Sie den Agent aus der Liste aus.
Hinweis
Stellen Sie sicher, dass Sie denselben Agent auswählen, den Sie in der CPX-YAML hinzugefügt haben.
-
Klicken Sie auf Erstellen.
-
Bereitstellen einer Microservice-Beispielanwendung
Auf dem Master-Knoten:
-
Führen Sie aus
kubectl create -f namespace.yaml
, um einen Namespace zu erstellen. -
Stellen Sie
hotdrink
Microservices, Ingress und Secrets mithilfe der folgenden Befehle bereit:kubectl create -f team_hotdrink.yaml -n sg-demo
kubectl create -f hotdrink-secret.yaml -n sg-demo
Bereitstellen von CPX und Registrieren von CPX in NetScaler Console
-
Wird ausgeführt
kubectl create -f rbac.yaml
, um Clusterrolle und Clusterbindung bereitzustellen. -
Führen Sie
kubectl create -f cpx.yaml -n sg-demo
die Bereitstellung von CPX aus.
Nach der Bereitstellung erfolgt die CPX-Registrierung automatisch.
Aktivieren der automatischen Auswahl virtueller Server für die Lizenzierung
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 Console hinzugefügt haben, müssen Sie sicherstellen, dass virtuelle Server für die Lizenzierung automatisch ausgewählt werden. Virtuelle CPX-Server müssen lizenziert sein, um Daten im Service Graph anzeigen zu können. So wählen Sie virtuelle Server automatisch aus:
-
Navigieren Sie zu Einstellungen > NetScaler Console Licensing & Analytics Config.
-
Aktivieren Sie unter Virtual Server License Summarydie Option Automatische Auswahl virtueller Server und Automatische Auswahl nicht adressierbarer virtueller Server.
Web-Transaktion und TCP-Transaktionseinstellungen aktivieren
Nachdem Sie den Kubernetes-Cluster hinzugefügt und die automatische Auswahl virtueller Server aktiviert haben, ändern Sie die Einstellungen für Webtransaktionen und TCP-Transaktionen in Alle.
-
Navigieren Sie zu Einstellungen > Analytics-Einstellungen.
Die Seite “Einstellungen “ wird angezeigt.
-
Klicken Sie auf Features für Analytics aktivieren.
-
Wählen Sie unter Web-Transaktionseinstellungendie Option Alleaus.
-
Wählen Sie unter TCP-Transaktionseinstellungendie Option Alle.
-
Klicken Sie auf OK.
Traffic an Microservices senden
Als Nächstes müssen Sie Datenverkehr an Microservices senden, um das Service-Diagramm in der NetScaler Console auszufüllen.
-
Wird ausgeführt
kubectl get svc -n sg-demo
, um CPX über NodePort verfügbar zu machen. -
Bearbeiten Sie die Datei etc/host und erstellen Sie einen Domänen-IP-Eintrag für
hotdrink.beverages.com
Sie können jetzt auf den Microservice zugreifen, indem Sie
https://hotdrink.beverages.com
In diesem Artikel
- Einen NetScaler Agent konfigurieren
- Konfigurieren Sie statische Routen im Agenten
- Laden Sie die Beispielbereitstellungsdateien von GitHub herunter
- Hinzufügen von Parametern in der CPX-YAML-Datei
- Fügen Sie eine VPX- oder SDX- oder MPX- oder BLX-Instanz in der NetScaler Console hinzu
- Kubernetes-Cluster in NetScaler Console hinzufügen
- Bereitstellen einer Microservice-Beispielanwendung
- Bereitstellen von CPX und Registrieren von CPX in NetScaler Console
- Aktivieren der automatischen Auswahl virtueller Server für die Lizenzierung
- Web-Transaktion und TCP-Transaktionseinstellungen aktivieren
- Traffic an Microservices senden