1# Cloud Foundry Load Balancers
2
3## AWS
4`bbl` creates 3 load balancers on AWS.
5
61. **cf-ssh-lb**
7
8    * In the cloud-config, this lb is referenced with the vm extension `diego-ssh-proxy-network-properties`.
9    * In cf-deployment, this vm extension will be associated with the `scheduler` vm.
10    * It forwards `TCP:2222` to `TCP:2222`.
11
121. **cf-tcp-lb**
13
14    * In the cloud-config, this lb is referenced with the vm extension `cf-tcp-router-network-properties`.
15    * In cf-deployment, this vm extension will be associated with the `tcp-router` vm.
16    * It forwards `TCP:1024-1123` to `TCP:1024-1123`.
17
181. **cf-router-lb**
19
20    * In the cloud-config, this lb is referenced with the vm extension `cf-router-network-properties`.
21    * In cf-deployment, this vm extension will be associated with the `router` vm.
22    * It forwards:
23        - `HTTP:80`   to `HTTP:80`
24        - `HTTPS:443` to `HTTP:80`
25        - `TLS:4443`  to `TCP:80`
26
27## GCP
28`bbl` creates 4 load balancers on GCP.
29
301. **cf-router-lb**
31
32    * In the cloud-config, this lb is referenced with the vm extension `cf-router-network-properties`.
33    * In cf-deployment, this vm extension will be associated with the `router` vm.
34    * Configuration:
35        - Compute address
36        - Backend service with an instance group per availability zone
37        - Instance group per availability zone allowing `https:443`
38        - Firewall rule allowing `tcp:80` & `tcp:443` to the backend service
39        - Health check for `tcp:8080` & `tcp:80`
40
411. **cf-ws-lb**
42    * In the cloud-config, this lb is referenced with the vm extension `cf-router-network-properties`.
43    * In cf-deployment, this vm extension will be associated with the `router` vm.
44    * Configuration:
45        - Compute address
46        - Target pool
47        - Forwarding rule allowing `tcp:443` to the target pool
48        - Forwarding rule allowing `tcp:80` to the target pool
49
501. **cf-tcp-router-lb**
51    * In the cloud-config, this lb is referenced with the vm extension `cf-tcp-router-network-properties`.
52    * In cf-deployment, this vm extension will be associated with the `tcp-router` vm.
53    * Configuration:
54        - Compute address
55        - Target pool
56        - Firewall rule allowing `tcp:1024-32768` to the target pool
57        - Forwarding rule for `tcp:1024-32768` to the target pool
58
591. **cf-ssh-proxy-lb**
60    * In the cloud-config, this lb is referenced with the vm extension `diego-ssh-proxy-network-properties`.
61    * In cf-deployment, this vm extension will be associated with the `scheduler` vm.
62    * Configuration:
63        - Compute address
64        - Target pool
65        - Firewall rule allowing `tcp:2222` to the target pool
66        - Forwarding rule for `tcp:2222` to the target pool
67
68## Microsoft Azure
69`bbl` creates an application gateway on Microsoft Azure.
70
711. **cf-app-gateway**
72    * In the cloud-config, this lb is referenced with the vm extension `cf-router-network-properties`.
73    * In cf-deployment, this vm extension will be associated with the `router` vm.
74    * Configuration:
75        - Public IP
76        - Application Gateway
77        - Network Security Rules
78        - Network Security Group
79
80## vSphere
81N/A.
82
83## OpenStack
84N/A.
85