Skip to content

Commit dc46d74

Browse files
Updating docs
1 parent e8afbcd commit dc46d74

2 files changed

Lines changed: 78 additions & 68 deletions

File tree

deployment/dual-tier/README.md

Lines changed: 61 additions & 58 deletions
Original file line numberDiff line numberDiff line change
@@ -15,104 +15,107 @@ The Citrix ingress controller [repo](https://github.com/citrix/citrix-k8s-ingres
1515

1616
Perform the following:
1717

18-
1. Create a Kubernetes cluster in cloud or on-premises. The Kubernetes cluster in cloud can be a managed Kubernetes (for example: GKE, EKS, or AKS) or a custom created Kubernetes deployment.
18+
1. Create a Kubernetes cluster in cloud or on-premises. The Kubernetes cluster in cloud can be a managed Kubernetes (for example: GKE, EKS, or AKS) or a custom created Kubernetes deployment.
1919

20-
2. Deploy Citrix ADC MPX or VPX on a multi-NIC deployment mode outside the Kubernetes cluster.
21-
- For instructions to deploy Citrix ADC MPX, see [Citrix ADC documentation](https://docs.citrix.com/en-us/citrix-adc/13).
20+
2. Deploy Citrix ADC MPX or VPX on a multi-NIC deployment mode outside the Kubernetes cluster.
21+
- For instructions to deploy Citrix ADC MPX, see [Citrix ADC documentation](https://docs.citrix.com/en-us/citrix-adc/13).
2222

23-
- For instructions to deploy Citrix ADC VPX, see [Deploy a Citrix ADC VPX instance](https://docs.citrix.com/en-us/citrix-adc/13/deploying-vpx.html).
23+
- For instructions to deploy Citrix ADC VPX, see [Deploy a Citrix ADC VPX instance](https://docs.citrix.com/en-us/citrix-adc/13/deploying-vpx.html).
2424

25-
Perform the following after you deploy Citrix ADC VPX or MPX:
25+
Perform the following after you deploy Citrix ADC VPX or MPX:
2626

27-
1. Configure an IP address from the subnet of the Kubernetes cluster as SNIP on the Citrix ADC. For information on configuring SNIPs in Citrix ADC, see [Configuring Subnet IP Addresses (SNIPs)](https://docs.citrix.com/en-us/citrix-adc/13/networking/ip-addressing/configuring-citrix-adc-owned-ip-addresses/configuring-subnet-ip-addresses-snips.html).
27+
1. Configure an IP address from the subnet of the Kubernetes cluster as SNIP on the Citrix ADC. For information on configuring SNIPs in Citrix ADC, see [Configuring Subnet IP Addresses (SNIPs)](https://docs.citrix.com/en-us/citrix-adc/13/networking/ip-addressing/configuring-citrix-adc-owned-ip-addresses/configuring-subnet-ip-addresses-snips.html).
2828

29-
2. Enable management access for the SNIP that is the same subnet of the Kubernetes cluster. The SNIP should be used as `NS_IP` variable in the [Citrix ingress controller YAML](https://github.com/citrix/citrix-k8s-ingress-controller/blob/master/deployment/dual-tier/manifest/tier-1-vpx-cic.yaml) file to enable Citrix ingress controller to configure the Tier-1 Citrix ADC.
29+
2. Enable management access for the SNIP that is the same subnet of the Kubernetes cluster. The SNIP should be used as `NS_IP` variable in the [Citrix ingress controller YAML](https://github.com/citrix/citrix-k8s-ingress-controller/blob/master/deployment/dual-tier/manifest/tier-1-vpx-cic.yaml) file to enable Citrix ingress controller to configure the Tier-1 Citrix ADC.
3030

31-
>**Note:**
32-
>It is not mandatory to use SNIP as `NS_IP`. If the management IP address of the Citrix ADC is reachable from Citrix ingress controller then you can use the management IP address as `NS_IP`.
31+
> **Note:**
32+
> It is not mandatory to use SNIP as `NS_IP`. If the management IP address of the Citrix ADC is reachable from Citrix ingress controller then you can use the management IP address as `NS_IP`.
3333
34-
3. In cloud deployments, enable [MAC-Based Forwarding mode](https://docs.citrix.com/en-us/citrix-adc/13/networking/interfaces/configuring-mac-based-forwarding.html) on the Tier-1 Citrix ADC VPX. As Citrix ADC VPX is deployed in multi-NIC mode, it would not have the return route to reach the POD CNI network or the Client network. Hence, you need to enable MAC-Based Forwarding mode on the Tier-1 Citrix ADC VPX to handle this scenario.
34+
3. In cloud deployments, enable [MAC-Based Forwarding mode](https://docs.citrix.com/en-us/citrix-adc/13/networking/interfaces/configuring-mac-based-forwarding.html) on the Tier-1 Citrix ADC VPX. As Citrix ADC VPX is deployed in multi-NIC mode, it would not have the return route to reach the POD CNI network or the Client network. Hence, you need to enable MAC-Based Forwarding mode on the Tier-1 Citrix ADC VPX to handle this scenario.
3535

36-
4. The user name and password of the Citrix ADC VPX or MPX appliance used as the Ingress device. The Citrix ADC appliancemust have a system user account (non-default) with certain privileges so that the Citrix ingress controller can configure the Citrix ADC VPX or MPX appliance. For instructions to create the system user account on Citrix ADC, see [Create System User Account for Citrix ingress controller in Citrix ADC](https://docs.citrix.com/en-us/citrix-k8s-ingress-controller/deploy/cic-yaml.html#create-system-user-account-for-citrix-ingress-controller-in-citrix-adc)
36+
4. The user name and password of the Citrix ADC VPX or MPX appliance used as the Ingress device. The Citrix ADC appliancemust have a system user account (non-default) with certain privileges so that the Citrix ingress controller can configure the Citrix ADC VPX or MPX appliance. For instructions to create the system user account on Citrix ADC, see [Create System User Account for Citrix ingress controller in Citrix ADC](https://docs.citrix.com/en-us/citrix-k8s-ingress-controller/deploy/cic-yaml.html#create-system-user-account-for-citrix-ingress-controller-in-citrix-adc)
3737

38-
You can directly pass the user name and password as environment variables to the controller, or use Kubernetes secrets (recommended). If you want to use Kubernetes secrets, create a secret for the user name and password using the following command:
39-
```
40-
kubectl create secret generic nslogin --from-literal=username='cic' --from-literal=password='mypassword'
41-
```
38+
You can directly pass the user name and password as environment variables to the controller, or use Kubernetes secrets (recommended). If you want to use Kubernetes secrets, create a secret for the user name and password using the following command:
39+
```
40+
kubectl create secret generic nslogin --from-literal=username='cic' --from-literal=password='mypassword'
41+
```
4242
43-
5. Configure your on-premises firewall or security groups on your cloud to allow inbound traffic to the ports required for Citrix ADC. The Setup process uses port 80 and port 443, you can modify these ports based on your requirement.
43+
5. Configure your on-premises firewall or security groups on your cloud to allow inbound traffic to the ports required for Citrix ADC. The Setup process uses port 80 and port 443, you can modify these ports based on your requirement.
4444
45-
3. Deploy a sample microservice. Use the following command:
45+
3. Deploy a sample microservice. Use the following command:
4646
47-
kubectl create -f https://raw.githubusercontent.com/citrix/citrix-k8s-ingress-controller/master/deployment/dual-tier/manifest/apache.yaml
47+
kubectl create -f https://raw.githubusercontent.com/citrix/citrix-k8s-ingress-controller/master/deployment/dual-tier/manifest/apache.yaml
4848
49-
4. Deploy Citrix ADC CPX as Tier-2 ingress. Use the following command:
49+
4. Deploy Citrix ADC CPX as Tier-2 ingress. Use the following command:
5050
5151
kubectl create -f https://raw.githubusercontent.com/citrix/citrix-k8s-ingress-controller/master/deployment/dual-tier/manifest/tier-2-cpx.yaml
5252
53-
5. Create an ingress object for the Tier-2 Citrix ADC CPX. Use the following command:
53+
5. Create an ingress object for the Tier-2 Citrix ADC CPX. Use the following command:
5454
55-
kubectl create -f https://raw.githubusercontent.com/citrix/citrix-k8s-ingress-controller/master/deployment/dual-tier/manifest/ingress-tier-2-cpx.yaml
55+
kubectl create -f https://raw.githubusercontent.com/citrix/citrix-k8s-ingress-controller/master/deployment/dual-tier/manifest/ingress-tier-2-cpx.yaml
5656
57-
6. Deploy the Citrix ingress controller for Tier-1 Citrix ADC. Perform the following:
57+
6. Deploy the Citrix ingress controller for Tier-1 Citrix ADC. Perform the following:
5858
59-
1. Download the Citrix ingress controller manifest file. Use the following command:
59+
1. Download the Citrix ingress controller manifest file. Use the following command:
6060
61-
wget https://raw.githubusercontent.com/citrix/citrix-k8s-ingress-controller/master/deployment/dual-tier/manifest/tier-1-vpx-cic.yaml
61+
wget https://raw.githubusercontent.com/citrix/citrix-k8s-ingress-controller/master/deployment/dual-tier/manifest/tier-1-vpx-cic.yaml
6262
63-
2. Edit the Citrix ingress controller manifest file and enter the values for the following environmental variables:
63+
2. Edit the Citrix ingress controller manifest file and enter the values for the following environmental variables:
6464
65-
| Environment Variable | Mandatory or Optional | Description |
66-
| ---------------------- | ---------------------- | ----------- |
67-
| NS_IP | Mandatory | The IP address of the Citrix ADC appliance. For more details, see [Prerequisites](/docs/deploy/deploy-cic-yaml.md#prerequisites). |
68-
| NS_USER and NS_PASSWORD | Mandatory | The user name and password of the Citrix ADC VPX or MPX appliance used as the Ingress device. For more details, see [Prerequisites](/docs/deploy/deploy-cic-yaml.md#prerequisites). |
69-
| EULA | Mandatory | The End User License Agreement. Specify the value as `Yes`.|
70-
| LOGLEVEL | Optional | The log levels to control the logs generated by Citrix ingress controller. By default, the value is set to DEBUG. The supported values are: CRITICAL, ERROR, WARNING, INFO, and DEBUG. For more information, see [Log Levels](../configure/log-levels.md)|
71-
| NS_PROTOCOL and NS_PORT | Optional | Defines the protocol and port that must be used by Citrix ingress controller to communicate with Citrix ADC. By default, Citrix ingress controller uses HTTPS on port 443. You can also use HTTP on port 80. |
72-
| ingress-classes | Optional | If multiple ingress load balancers are used to load balance different ingress resources. You can use this environment variable to specify Citrix ingress controller to configure Citrix ADC associated with specific ingress class. For information on Ingress classes, see [Ingress class support](../configure/ingress-classes.md)|
73-
| NS_VIP | Optional | Citrix ingress controller uses the IP address provided in this environment variable to configure a virtual IP address to the Citrix ADC that receives Ingress traffic. **Note:** NS_VIP acts as a fallback when the [frontend-ip](https://github.com/citrix/citrix-k8s-ingress-controller/blob/master/docs/configure/annotations.md) annotation is not provided in Ingress yaml. Not supported for Type Loadbalancer service. |
65+
| Environment Variable | Mandatory or Optional | Description |
66+
| ---------------------- | ---------------------- | ----------- |
67+
| NS_IP | Mandatory | The IP address of the Citrix ADC appliance. For more details, see [Prerequisites](/docs/deploy/deploy-cic-yaml.md#prerequisites). |
68+
| NS_USER and NS_PASSWORD | Mandatory | The user name and password of the Citrix ADC VPX or MPX appliance used as the Ingress device. For more details, see [Prerequisites](/docs/deploy/deploy-cic-yaml.md#prerequisites). |
69+
| EULA | Mandatory | The End User License Agreement. Specify the value as `Yes`.|
70+
| LOGLEVEL | Optional | The log levels to control the logs generated by Citrix ingress controller. By default, the value is set to DEBUG. The supported values are: CRITICAL, ERROR, WARNING, INFO, and DEBUG. For more information, see [Log Levels](../configure/log-levels.md)|
71+
| NS_PROTOCOL and NS_PORT | Optional | Defines the protocol and port that must be used by Citrix ingress controller to communicate with Citrix ADC. By default, Citrix ingress controller uses HTTPS on port 443. You can also use HTTP on port 80. |
72+
| ingress-classes | Optional | If multiple ingress load balancers are used to load balance different ingress resources. You can use this environment variable to specify Citrix ingress controller to configure Citrix ADC associated with specific ingress class. For information on Ingress classes, see [Ingress class support](../configure/ingress-classes.md)|
73+
| NS_VIP | Optional | Citrix ingress controller uses the IP address provided in this environment variable to configure a virtual IP address to the Citrix ADC that receives Ingress traffic. **Note:** NS_VIP acts as a fallback when the [frontend-ip](https://github.com/citrix/citrix-k8s-ingress-controller/blob/master/docs/configure/annotations.md) annotation is not provided in Ingress yaml. Not supported for Type Loadbalancer service. |
7474
75-
3. Deploy the updated Citrix ingress controller manifest file. Use the following command:
75+
3. Deploy the updated Citrix ingress controller manifest file. Use the following command:
7676
77-
kubectl create -f tier-1-vpx-cic.yaml
77+
kubectl create -f tier-1-vpx-cic.yaml
7878
79-
7. Create an ingress object for the Tier-1 Citrix ADC. Use the following command:
79+
7. Create an ingress object for the Tier-1 Citrix ADC. Use the following command:
8080
81-
kubectl create -f https://raw.githubusercontent.com/citrix/citrix-k8s-ingress-controller/master/deployment/dual-tier/manifest/ingress-tier-1-vpx.yaml
81+
kubectl create -f https://raw.githubusercontent.com/citrix/citrix-k8s-ingress-controller/master/deployment/dual-tier/manifest/ingress-tier-1-vpx.yaml
8282
83-
8. Update DNS server details in the cloud or on-premises to point your website to the VIP of the Tier-1 Citrix ADC.
83+
8. Update DNS server details in the cloud or on-premises to point your website to the VIP of the Tier-1 Citrix ADC.
8484
85-
For example: `citrix-ingress.com 192.10.2.16`
85+
For example: `citrix-ingress.com 192.10.2.16`
8686
87-
Where `192.10.2.16` is the VIP of the Tier-1 Citrix ADC and `citrix-ingress.com` is the microservice running in your Kubernetes cluster.
87+
Where `192.10.2.16` is the VIP of the Tier-1 Citrix ADC and `citrix-ingress.com` is the microservice running in your Kubernetes cluster.
8888
89-
9. Access the URL of the microservice to verify the deployment.
89+
9. Access the URL of the microservice to verify the deployment.
90+
```
91+
curl http://citrix-ingress.com
92+
```
9093
9194
## Set up dual-tier deployment using one step deployment manifest file
9295
9396
For easy deployment, the Citrix ingress controller [repo](https://github.com/citrix/citrix-k8s-ingress-controller) includes an all-in-one deployment manifest. You can download the file and update it with values for the following environmental variables and deploy the manifest file.
9497
95-
>**Note:**
96-
>Ensure that you have completed step 1 and 2 in the [Setup process](#setup-process).
98+
> **Note:**
99+
> Ensure that you have completed step 1 and 2 in the [Setup process](#setup-process).
97100
98101
Perform the following:
99102
100-
1. Download the all-in-one deployment manifest file. Use the following command:
103+
1. Download the all-in-one deployment manifest file. Use the following command:
101104
102-
wget https://raw.githubusercontent.com/citrix/citrix-k8s-ingress-controller/master/deployment/dual-tier/manifest/all-in-one-dual-tier-demo.yaml
105+
wget https://raw.githubusercontent.com/citrix/citrix-k8s-ingress-controller/master/deployment/dual-tier/manifest/all-in-one-dual-tier-demo.yaml
103106
104-
2. Edit the all-in-one deployment manifest file and enter the values for the following environmental variables:
107+
2. Edit the all-in-one deployment manifest file and enter the values for the following environmental variables:
105108
106-
| Environment Variable | Mandatory or Optional | Description |
107-
| ---------------------- | ---------------------- | ----------- |
108-
| NS_IP | Mandatory | The IP address of the Citrix ADC appliance. For more details, see [Prerequisites](/docs/deploy/deploy-cic-yaml.md#prerequisites). |
109-
| NS_USER and NS_PASSWORD | Mandatory | The user name and password of the Citrix ADC VPX or MPX appliance used as the Ingress device. For more details, see [Prerequisites](/docs/deploy/deploy-cic-yaml.md#prerequisites). |
110-
| EULA | Mandatory | The End User License Agreement. Specify the value as `Yes`.|
111-
| LOGLEVEL | Optional | The log levels to control the logs generated by Citrix ingress controller. By default, the value is set to DEBUG. The supported values are: CRITICAL, ERROR, WARNING, INFO, and DEBUG. For more information, see [Log Levels](../configure/log-levels.md)|
112-
| NS_PROTOCOL and NS_PORT | Optional | Defines the protocol and port that must be used by Citrix ingress controller to communicate with Citrix ADC. By default, Citrix ingress controller uses HTTPS on port 443. You can also use HTTP on port 80. |
113-
| ingress-classes | Optional | If multiple ingress load balancers are used to load balance different ingress resources. You can use this environment variable to specify Citrix ingress controller to configure Citrix ADC associated with specific ingress class. For information on Ingress classes, see [Ingress class support](../configure/ingress-classes.md)|
114-
| NS_VIP | Optional | Citrix ingress controller uses the IP address provided in this environment variable to configure a virtual IP address to the Citrix ADC that receives Ingress traffic. **Note:** NS_VIP acts as a fallback when the [frontend-ip](https://github.com/citrix/citrix-k8s-ingress-controller/blob/master/docs/configure/annotations.md) annotation is not provided in Ingress yaml. Not Supported for Type Loadbalancer service. |
109+
| Environment Variable | Mandatory or Optional | Description |
110+
| ---------------------- | ---------------------- | ----------- |
111+
| NS_IP | Mandatory | The IP address of the Citrix ADC appliance. For more details, see [Prerequisites](/docs/deploy/deploy-cic-yaml.md#prerequisites). |
112+
| NS_USER and NS_PASSWORD | Mandatory | The user name and password of the Citrix ADC VPX or MPX appliance used as the Ingress device. For more details, see [Prerequisites](/docs/deploy/deploy-cic-yaml.md#prerequisites). |
113+
| EULA | Mandatory | The End User License Agreement. Specify the value as `Yes`.|
114+
| LOGLEVEL | Optional | The log levels to control the logs generated by Citrix ingress controller. By default, the value is set to DEBUG. The supported values are: CRITICAL, ERROR, WARNING, INFO, and DEBUG. For more information, see [Log Levels](../configure/log-levels.md)|
115+
| NS_PROTOCOL and NS_PORT | Optional | Defines the protocol and port that must be used by Citrix ingress controller to communicate with Citrix ADC. By default, Citrix ingress controller uses HTTPS on port 443. You can also use HTTP on port 80. |
116+
| ingress-classes | Optional | If multiple ingress load balancers are used to load balance different ingress resources. You can use this environment variable to specify Citrix ingress controller to configure Citrix ADC associated with specific ingress class. For information on Ingress classes, see [Ingress class support](../configure/ingress-classes.md)|
117+
| NS_VIP | Optional | Citrix ingress controller uses the IP address provided in this environment variable to configure a virtual IP address to the Citrix ADC that receives Ingress traffic. **Note:** NS_VIP acts as a fallback when the [frontend-ip](https://github.com/citrix/citrix-k8s-ingress-controller/blob/master/docs/configure/annotations.md) annotation is not provided in Ingress yaml. Not Supported for Type Loadbalancer service. |
115118
116-
3. Deploy the updated all-in-one deployment manifest file. Use the following command:
119+
3. Deploy the updated all-in-one deployment manifest file. Use the following command:
117120
118-
kubectl create -f all-in-one-dual-tier-demo.yaml
121+
kubectl create -f all-in-one-dual-tier-demo.yaml

0 commit comments

Comments
 (0)