Skip to content

Commit 3af8738

Browse files
subashdapoorvak-citrix
authored andcommitted
CNC_ROUTER_IMAGE env variable support
1 parent e788359 commit 3af8738

File tree

2 files changed

+27
-3
lines changed

2 files changed

+27
-3
lines changed

deploy/README.md

Lines changed: 26 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -36,8 +36,8 @@ Perform the following:
3636
| REMOTE_VTEPIP | Mandatory | The Ingress Citrix ADC SNIP. This IP address is used to establish an overlay network between the Kubernetes clusters.|
3737
| CNI_TYPE | Mandatory | The CNI used in kubernetes cluster. Valid values: flannel,calico,canal,weave,cilium|
3838
| DSR_IP_RANGE | Optional | This IP address range is used for DSR Iptable configuration on nodes. Both IP and subnet must be specified in format : "xx.xx.xx.xx/xx" |
39-
| CLUSTER_NAME | Optional | N/A | Unique identifier for the kubernetes cluster on which CNC is deployed. If Provided CNC will configure PolicyBasedRoutes instead of static Routes. For details, see [CNC-PBR-SUPPORT](https://github.com/citrix/citrix-k8s-ingress-controller/tree/master/docs/how-to/pbr.md#configure-pbr-using-the-citrix-node-controller) |
40-
39+
| CLUSTER_NAME | Optional | Unique identifier for the kubernetes cluster on which CNC is deployed. If Provided CNC will configure PolicyBasedRoutes instead of static Routes. For details, see [CNC-PBR-SUPPORT](https://github.com/citrix/citrix-k8s-ingress-controller/tree/master/docs/how-to/pbr.md#configure-pbr-using-the-citrix-node-controller) |
40+
| CNC_ROUTER_IMAGE | Optional | Specifies the internal repository image to be used for `kube-cnc-router` helper pods when Internet access is disabled on cluster nodes. For more details, see [running-cnc-without-internet-access](#running-citrix-node-controller-without-internet-access) |
4141
4242
1. After you have updated the Citrix k8s node controller deployment YAML file, deploy it using the following command:
4343
@@ -88,3 +88,27 @@ On each of the worker nodes, a interface "cncvxlan<hash-of-namespace>" and iptab
8888
1. Delete the Citrix node controller using the following command:
8989
9090
kubectl delete -f citrix-k8s-node-controller.yaml
91+
92+
## Running Citrix Node Controller without Internet access
93+
94+
Citrix node controller internally creates helper pods (`kube-cnc-router` pods) on each Kubernetes cluster node. The image used by default is `quay.io/citrix/cnc-router:1.1.0` which requires Internet access. If the Kubernetes nodes do not have internet access, creation of `kube-cnc-router` pods fails.
95+
96+
However, Citrix provides a way to access the image from your internal repository so that you can run the Citrix node controller without internet access. Using the `CNC_ROUTER_IMAGE` environment variable, you can point to the internal repository image of `quay.io/citrix/cnc-router:1.1.0`.
97+
98+
### Configuring Citrix node controller to use an image from the internal repository
99+
100+
When you deploy Citrix node controller specify the ` CNC_ROUTER_IMAGE` environment variable and set the value of the variable as your internal repository path for the image `quay.io/citrix/cnc-router:1.1.0`.
101+
102+
When you specify this environment variable, Citrix node controller uses the internal repository image provided via the `CNC_ROUTER_IMAGE` environment variable to create the `kube-cnc-router` helper pods. If the environment variable is not provided, it uses the default image ` quay.io/citrix/cnc-router:1.1.0` which requires internet access.
103+
104+
Following example shows how to specify the `CNC_ROUTER_IMAGE` environment variable while deploying Citrix node controller.
105+
106+
- While deploying Citrix node controller using the YAML file, set the value of the environment variable in the YAML file as follows:
107+
108+
- name: CNC_ROUTER_IMAGE
109+
value: "docker.xyz.com/adc/citrix/cnc-router:1.1.0"
110+
111+
- While deploying Citrix node controller using Helm charts, provide the following in values.yaml:
112+
113+
cncRouterImage: "docker.xyz.com/adc/citrix/cnc-router:1.1.0"
114+

deploy/citrix-k8s-node-controller.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -99,7 +99,7 @@ spec:
9999
serviceAccountName: citrix-node-controller
100100
containers:
101101
- name: citrix-node-controller
102-
image: "quay.io/citrix/citrix-k8s-node-controller:2.2.3"
102+
image: "quay.io/citrix/citrix-k8s-node-controller:2.2.4"
103103
imagePullPolicy: Always
104104
env:
105105
- name: NS_IP

0 commit comments

Comments
 (0)