You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: docs/deployment-topologies.md
+43-12Lines changed: 43 additions & 12 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -2,17 +2,17 @@
2
2
3
3
Citrix ADCs can be combined in powerful and flexible topologies that complement organizational boundaries. Dual-tier deployments employ high-capacity hardware or virtualized Citrix ADCs (Citrix ADC MPX and VPX) in the first tier to offload security functions and implement relatively static organizational policies while segmenting control between network operators and Kubernetes operators.
4
4
5
-
In Dual-tier deployments, the second tier is within the Kubernetes Cluster (using the Citrix ADC CPX) and is under control of the service owners. This setup provides stability for network operators, while allowing Kubernetes users to implement high-velocity changes. Single-tier topologies are suited to organizations that need to handle high rates of change.
5
+
In Dual-tier deployments, the second tier is within the Kubernetes Cluster (using the Citrix ADC CPX) and is under the control of the service owners. This setup provides stability for network operators, while allowing Kubernetes users to implement high-velocity changes. Single-tier topologies are suited to organizations that need to handle high rates of change.
6
6
7
7
## Single-Tier topology
8
8
9
-
In a Single-Tier topology, Citrix ADC MPX or VPX devices proxy the (North-South) traffic from the clients to microservices inside the cluster. The Citrix ingress controller is deployed as a standalone pod in the Kubernetes cluster. The controller automates the configuration of Citrix ADCs (MPX or VPX) based on the changes to the microservices or the Ingress resources.
9
+
In a Single-Tier topology, Citrix ADC MPX or VPX devices proxy the (north-south) traffic from the clients to microservices inside the cluster. The Citrix ingress controller is deployed as a standalone pod in the Kubernetes cluster. The controller automates the configuration of Citrix ADCs (MPX or VPX) based on the changes to the microservices or the Ingress resources.
10
10
11
11

12
12
13
13
## Dual-Tier topology
14
14
15
-
In Dual-Tier topology, Citrix ADC MPX or VPX devices in Tier-1 proxy the traffic (North-South) from the client to Citrix ADC CPXs in Tier-2. The Tier-2 Citrix ADC CPX then routes the traffic to the microservices in the Kubernetes cluster. The Citrix ingress controller deployed as a standalone pod configures the Tier-1 devices. And, the sidecar controller in one or more Citrix ADC CPX pods configures the associated Citrix ADC CPX in the same pod.
15
+
In Dual-Tier topology, Citrix ADC MPX or VPX devices in Tier-1 proxy the traffic (north-south) from the client to Citrix ADC CPXs in Tier-2. The Tier-2 Citrix ADC CPX then routes the traffic to the microservices in the Kubernetes cluster. The Citrix ingress controller deployed as a standalone pod configures the Tier-1 devices. And, the sidecar controller in one or more Citrix ADC CPX pods configures the associated Citrix ADC CPX in the same pod.
16
16
17
17

18
18
@@ -28,21 +28,29 @@ Kubernetes clusters in public clouds such as [Amazon Web Services (AWS)](https:/
28
28
29
29
## Service mesh lite
30
30
31
-
An Ingress solution (either hardware or virtualized or containerized) typically performs L7 proxy functions for north-south (N-S) traffic. The Service Mesh lite architecture uses the same Ingress solution to manage east-west traffic as well.
31
+
An Ingress solution typically performs layer 7 proxy functions for traffic from client to microservices inside the Kubernetes cluster (north-south traffic). The Service mesh lite architecture uses the same Ingress solution to manage the traffic across services with in the Kubernetes cluster (east-west traffic) as well. Typically a service mesh solution is used for managing east-west traffic, but it is heavier and complex to manage. Service mesh lite solution is a simplified version of the service mesh architecture and ideal when there is a need to manage both north-south and east-west traffic management. In a service mesh, there are as many sidecar proxies as the number of applications. But, in the service mesh lite architecture, a proxy is deployed as a standalone proxy managing multiple East-West connections. Hence, the Service mesh lite solution is lighter compared to a service mesh
32
+
because the number of proxies required are less.
32
33
33
-
In a standard Kubernetes deployment, east-west (E-W) traffic traverses the built-in KubeProxy deployed in each node. [Kube-proxy](https://kubernetes.io/docs/concepts/overview/components/#kube-proxy) being a L4 proxy can only do TCP/UDP based load balancing without the benefits of L7 proxy.
34
+
In a standard Kubernetes deployment, east-west traffic traverses the built-in kube-proxy deployed in each node. [Kube-proxy](https://kubernetes.io/docs/concepts/overview/components/#kube-proxy) being a L4 proxy can only do TCP/UDP based load balancing without the benefits of L7 proxy.
34
35
35
-
Citrix ADC (MPX, VPX, or CPX) can provide such benefits for E-W traffic such as:
36
+
Citrix ADC (MPX, VPX, or CPX) can provide such benefits for east-west traffic such as:
36
37
37
38
- Mutual TLS or SSL offload
38
-
- Content based routing, allow or block traffic based on HTTP or HTTPS header parameters
39
+
- Content based routing, allow, or block traffic based on HTTP or HTTPS header parameters
39
40
- Advanced load balancing algorithms (for example, least connections, least response time and so on.)
40
41
- Observability of east-west traffic through measuring golden signals (errors, latencies, saturation, or traffic volume). [Citrix ADM’s](https://docs.citrix.com/en-us/citrix-application-delivery-management-service.html) Service Graph is an observability solution to monitor and debug microservices.
41
42
42
43
For more information, see [Service mesh lite](deploy/service-mesh-lite.md).
Following are some of the scenarios when service mesh lite topology is recommended:
48
+
49
+
- When you need both the north-south and the east-west traffic management for microservices.
50
+
- When you need the east-west traffic management through a proxy deployed as a standalone proxy and not as sidecar proxies to microservices.
51
+
- When you need the proxy inside the Kubernetes cluster to perform both north-south and east-west traffic management.
52
+
- When you need the benefits of service mesh, but wants a lighter and simpler solution.
53
+
46
54
## Services of type LoadBalancer
47
55
48
56
Services of type `LoadBalancer` in Kubernetes enables you to directly expose services to the outside world without using an ingress resource. It is made available only by cloud providers, who spin up their own native cloud load balancers and assign an external IP address through which the service is accessed. This helps you to deploy microservices easily and expose them outside the Kubernetes cluster.
@@ -65,6 +73,28 @@ For more information, see [Expose services of type NodePort](network/nodeport.md
65
73
66
74

67
75
76
+
## Guidelines for choosing the topology
77
+
78
+
The following information helps you to choose the right deployment among the topologies Single-Tier and Dual-tier based on your needs.
79
+
80
+
### Single-Tier (Unified Ingress)
81
+
82
+
Following are some of the scenarios when Single-Tier (unified ingress) topology is recommended and the benefits:
83
+
84
+
- Easy to start and adopt because you can use the existing NetScaler as the ingress proxy in front of the Kubernetes cluster.
85
+
- When the Network team manages both NetScaler and the Kubernetes deployment.
86
+
- Your workload running as microservices is less and a Kubernetes proxy inside the Kubernetes cluster is not required.
87
+
- More suitable for north-south traffic deployments.
88
+
89
+
### Dual-Tier
90
+
91
+
Following are some of the scenarios when Dual-Tier ingress topology is preferred and the benefits:
92
+
93
+
- When you have significant workload running as microservices there is a need for a proxy inside the Kubernetes cluster.
94
+
- When the external proxy (managed by the network team) and Kubernetes proxies (managed by platform team) are managed by two different teams.
95
+
- You need segregation of functions for proxies external to Kubernetes and for proxies inside Kubernetes. For example, WAF, and SSL offload on external NetScaler and policy enforcement and rate limiting on the Kubernetes proxy.
96
+
- The proxy inside the Kubernetes cluster performs north-south traffic management only.
97
+
68
98
## Deployment using Helm charts and the Citrix deployment builder
69
99
70
100
For deploying Citrix cloud native topologies, there are various options available using YAML and Helm charts. Helm charts are one of the easiest ways for deployment in a Kubernetes environment. When you deploy using the Helm charts, you can use a `values.yaml` file to specify the values of the configurable parameters instead of providing each parameter as an argument.
@@ -76,17 +106,18 @@ The following topologies are supported by the Citrix deployment builder:
76
106
- Single-Tier
77
107
78
108
- Ingress
79
-
109
+
80
110
- Service type LoadBalancer
81
111
82
112
- Dual-Tier
83
-
113
+
84
114
- Citrix ADC CPX as NodePort
85
-
115
+
86
116
- Citrix ADC CPX as service of type LoadBalancer
87
-
117
+
88
118
- Multi-cluster Ingress
89
119
90
120
- Service mesh
91
121
92
-
For detailed information on how to use the Citrix deployment builder, see the [Citrix deployment builder blog](https://www.citrix.com/blogs/2021/03/02/citrix-deployment-builder-simplifying-citrix-cloud-native-deployments/#).
122
+
For detailed information on how to use the Citrix deployment builder, see the [Citrix deployment builder blog](https://www.citrix.com/blogs/2021/03/02/citrix-deployment-builder-simplifying-citrix-cloud-native-deployments/#).
0 commit comments