Getting started
Network administrators who have access to NetScaler (MPX/VPX/BLX) and Kubernetes environment can deploy NetScaler Kubernetes Gateway Controller in Kubernetes.
Prerequisites
- You have installed the Kubernetes cluster.
- You have installed Helm version 3.x or later. To install Helm, see Helm charts.
- You have Installed the Gateway API CRDs from the official standard channel.
How to deploy NetScaler® Kubernetes Gateway Controller in a Kubernetes cluster
To deploy NetScaler Kubernetes Gateway Controller in a Kubernetes Cluster configuring NetScaler MPX, VPX, or BLX, perform the following steps:
-
Generate
values.yamlbased on your use case. For information about the mandatory and optional parameters that you can configure during NetScaler Kubernetes Gateway Controller installation, see Configurations.netscaler: adcCredentialSecret: "nslogin" nsIP: "<nsIP>" # NetScaler Management IP or SNIP with management access enabled for HAor CLIP for # NetScaler Cluster gatewayController: entityPrefix: gwy gatewayControllerName: "citrix.com/nsgw-controller" license: accept: yes <!--NeedCopy-->The user name and password of a system user account on NetScaler MPX or NetScaler VPX are required for the Kubernetes Gateway. Ensure that NetScaler has a non-default system user account with the necessary privileges to allow the NetScaler Kubernetes Gateway Controller to configure NetScaler MPX or VPX. For instructions on creating a system user account on NetScaler, refer Create a system user account for NetScaler Ingress Controller in NetScaler.
You can provide the user name and password directly or use Kubernetes secrets. To use Kubernetes secrets, create a secret for the user name and password with the following command:
kubectl create secret generic nslogin --from-literal=username=<username> --from-literal=password=<password> <!--NeedCopy-->Note:
entityPrefixandgatewayControllerNameare mandatory and must be unique for every deployment of NetScaler Kubernetes Gateway Controller. -
Deploy the NetScaler Kubernetes Gateway controller using the Helm charts and the
values.yamlgenerated in previous step. For more information, see NetScaler Kubernetes Gateway Controller deployment using Helm Chart.helm repo add netscaler https://netscaler.github.io/netscaler-helm-charts/ helm install gateway-controller netscaler/netscaler-kubernetes-gateway-controller -f values.yaml <!--NeedCopy--> -
Verify the installation.
kubectl get pods <!--NeedCopy--> -
(Optional) View the summary of the NetScaler Kubernetes Gateway Controller pod.
kubectl describe pod <pod name> <!--NeedCopy-->Example:
kubectl describe pod netscaler-kubernetes-gateway-controller-5678d66d9b-nqp6p <!--NeedCopy--> -
(Optional) Check the NetScaler Kubernetes Gateway Controller logs.
kubectl logs -f <pod name> <!--NeedCopy-->Example:
kubectl logs -f netscaler-kubernetes-gateway-controller-5678d66d9b-nqp6p <!--NeedCopy--> -
(Optional) Delete the installation.
helm uninstall netscaler-kubernetes-gateway-controller <!--NeedCopy-->
How to deploy NetScaler CPX with NetScaler Kubernetes Gateway Controller in a Kubernetes cluster
To deploy NetScaler Kubernetes Gateway Controller in a Kubernetes Cluster configuring NetScaler CPX, perform the following steps:
-
Generate
values.yamlbased on your use case. For information about the mandatory and optional parameters that you can configure during NetScaler CPX with Kubernetes Gateway Controller installation, see Configurations.gatewayController: entityPrefix: gwy gatewayControllerName: "citrix.com/nscpxgw-controller" license: accept: yes service: annotations: {} spec: type: NodePort ports: - port: 80 targetPort: 80 protocol: TCP name: http - port: 443 targetPort: 443 protocol: TCP name: https <!--NeedCopy-->Note:
entityPrefixandgatewayControllerNameare mandatory and must be unique for every deployment of NetScaler CPX with Kubernetes Gateway Controller. -
Deploy the NetScaler CPX with Kubernetes Gateway controller using the Helm charts and the
values.yamlgenerated in previous step. For more information, see NetScaler CPX with Kubernetes Gateway Controller deployment using Helm Chart.helm repo add netscaler https://netscaler.github.io/netscaler-helm-charts/ helm install cpx-gateway-controller netscaler/netscaler-cpx-with-gateway-controller -f values.yaml <!--NeedCopy--> -
Verify the installation.
kubectl get pods <!--NeedCopy--> -
(Optional) View the summary of the NetScaler Kubernetes Gateway Controller pod.
kubectl describe pod <pod name> <!--NeedCopy-->Example:
kubectl describe pod cpx-gateway-controller-netscaler-cpx-with-gateway-controllz6ghg <!--NeedCopy--> -
(Optional) Check the NetScaler Kubernetes Gateway Controller logs.
kubectl logs -f <pod name> -c nskgwc <!--NeedCopy-->Example:
kubectl logs -f cpx-gateway-controller-netscaler-cpx-with-gateway-controllz6ghg -c nskgwc <!--NeedCopy--> -
(Optional) Delete the installation.
helm uninstall cpx-gateway-controller <!--NeedCopy-->