Skip to content

Commit 896cc18

Browse files
authored
Merge pull request #251 from oracle/RMvoyager
review/edit Voyager doc
2 parents 6d22ac8 + 950392d commit 896cc18

File tree

1 file changed

+28
-27
lines changed

1 file changed

+28
-27
lines changed

site/voyager.md

Lines changed: 28 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,12 @@
11
# Load balancing with Voyager/HAProxy
22

3-
This document explains how to set up Voyager to use HAProxy as load balancer to WebLogic domain(s) running in Kubernetes.
3+
This document explains how to set up Voyager to use the HAProxy as a load balancer for WebLogic domains running in Kubernetes.
44

5-
Voyager is a HAProxy backed ingress controller for Kubernetes. More information about Voyager ingress controller can be found at: https://appscode.com/products/voyager/6.0.0/concepts/.
5+
Voyager is an HAProxy-backed Ingress controller for Kubernetes. For more information about the Voyager Ingress controller, see https://appscode.com/products/voyager/6.0.0/concepts/.
66

7-
## Set up Voyager/HAProxy automatically
8-
To set up Voyager/HAProxy automatically you can run the create-weblogic-domain.sh script to create a WebLogic domain in Kubernetes. You need to change the domain inputs YAML file first. There are three related properties.
7+
## Set up the Voyager/HAProxy automatically
8+
9+
To set up the Voyager/HAProxy automatically, run the `create-weblogic-domain.sh` script to create a WebLogic domain in Kubernetes. However, first you need to change the domain inputs YAML file. There are three load balancer related properties:
910

1011
```
1112
...
@@ -19,37 +20,37 @@ loadBalancerWebPort: 30305
1920
loadBalancerDashboardPort: 30315
2021
```
2122

22-
* The `loadBalancer` property needs to be changed to `VOYAGER`.
23-
* The `loadBalancerWebPort` property is to specify the `NodePort` number to access the HAProxy load balancer itself.
24-
* The `loadBalancerDashboardPort` property is to specify the `NodePort` number to access the HAPRoxy stats webpage.
23+
* The `loadBalancer` property needs to be changed to `VOYAGER`.
24+
* The `loadBalancerWebPort` property is used to specify the `NodePort` number to access the HAProxy load balancer itself.
25+
* The `loadBalancerDashboardPort` property is used to specify the `NodePort` number to access the HAPRoxy stats web page.
2526

26-
Then after running create-weblogic-domain.sh script, the WebLogic domain is created and the Voyager/HAProxy is also installed and configured properly.
27-
You can access the HAProxy stats webpage via `http://<hostIP>:30315/` and you'll get a webpage like below.
27+
Then, after running the `create-weblogic-domain.sh script`, the WebLogic domain is created and the Voyager/HAProxy is also installed and configured properly.
28+
You can access the HAProxy stats web page using `http://<hostIP>:30315/` and will see a web page like the following:
2829

2930
![HAProxy stats](images/haproxy-stats.png)
3031

31-
After you deploy some application to the WebLogic cluster, you can send requests to the application via `http://<hostIP>:30305/<ctx>/`. The requests are sent to the HAProxy load balancer and the HAProxy will distribute the requests to managed servers of the WebLogic cluster.
32+
After you deploy an application to the WebLogic cluster, you can send requests to the application using `http://<hostIP>:30305/<ctx>/`. The requests are sent to the HAProxy load balancer and HAProxy will distribute the requests to the Managed Servers of the WebLogic cluster.
3233

3334
### What happens underground?
3435
#### 1. Install the Voyager operator
35-
The Voyager operator is installed in `voyager` namespace if it hasn't been done before.
36+
If it hasn't been done before, the Voyager operator is installed in the `voyager` namespace.
3637

37-
You should have a voyager-operator-*** pod running in the `voyager` namespace.
38+
You should have a `voyager-operator-***` pod running in the `voyager` namespace.
3839
```
3940
$ kubectl get pod -n voyager
4041
NAME READY STATUS RESTARTS AGE
4142
voyager-operator-86bcd6f656-jj2t6 1/1 Running 1 8d
4243
```
43-
And new CRD groups are registered by the Voyager operator.
44+
New CRD groups are registered by the Voyager operator.
4445
```
4546
$ kubectl get crd -l app=voyager
4647
NAME AGE
4748
certificates.voyager.appscode.com 8d
4849
ingresses.voyager.appscode.com 8d
4950
```
50-
Now the Voyager operator watches Ingress resources in any namespace.
51+
Now the Voyager operator watches the Ingress resources in any namespace.
5152

52-
#### 2. Create an Voyager Ingress resource
53+
#### 2. Create a Voyager Ingress resource
5354
An Ingress resource is generated based on the WebLogic domain configuration and deployed to Kubernetes. Here is an example of what the Voyager Ingress resource might look like for a WebLogic cluster named `cluster-1`, in a domain named `base_domain` with domainUID `domain1`.
5455

5556
```yaml
@@ -75,14 +76,14 @@ spec:
7576
servicePort: '8001'
7677
```
7778
78-
The Kubernetes service named `domain1-cluster-cluster-1` referred by the Ingress resource is also created by create-weblogic-domain.sh which dynamically includes all the managed servers in the cluster.
79+
The Kubernetes service named `domain1-cluster-cluster-1`, referred to by the Ingress resource, is also created by the `create-weblogic-domain.sh` script, which dynamically includes all the Managed Servers in the cluster.
7980

8081
```bash
81-
$ kubectl get endpoints domain1-cluster-cluster-1
82+
$ kubectl get endpoints domain1-cluster-cluster-1
8283
NAME ENDPOINTS AGE
8384
domain1-cluster-cluster-1 10.244.0.170:8001,10.244.0.171:8001,10.244.0.172:8001 2d
8485
```
85-
When the Ingress resource is deployed, following Kubernetes resources are created by the Voyager operator:
86+
When the Ingress resource is deployed, the following Kubernetes resources are created by the Voyager operator:
8687
```bash
8788
$ kubectl get deploy,pod,svc | awk '/voyager/ || /NAME/'
8889
NAME DESIRED CURRENT UP-TO-DATE AVAILABLE AGE
@@ -96,7 +97,8 @@ svc/voyager-domain1-voyager NodePort 10.109.137.41 <no
9697
svc/voyager-domain1-voyager-stats ClusterIP 10.105.160.124 <none> 56789/TCP 1d
9798
```
9899
#### 3. Create a NodePort service
99-
A NodePort service is created to expose the HAProxy stats. Following are the example yaml file for the service.
100+
A NodePort service is created to expose the HAProxy stats. The following is an example YAML file for the service.
101+
100102
```yaml
101103
apiVersion: v1
102104
kind: Service
@@ -119,12 +121,11 @@ spec:
119121
origin: voyager
120122
origin-name: domain1-voyager
121123
```
122-
123-
## Set up Voyager manually to WebLogic domain running in Kubernetes
124-
You may want to manually set up Voyager to WebLogic domain running in Kubernetes, in cases when some of the default settings of the automatic steps don't meet your requirements, or your WebLogic domain is not created by the WebLogic Operator.
125-
You need to refer to Voyager documents to do the setup: https://appscode.com/products/voyager/6.0.0/setup/.
126-
### 1. Install the Voyager operator
127-
Refer to install guide of Voyager here: install guide: https://appscode.com/products/voyager/6.0.0/setup/install/.
128-
### 2. Create an Voyager Ingress resource
129-
Refer to the detail here: https://appscode.com/products/voyager/6.0.0/concepts/overview/. You can choose different types for your Ingress: LoadBalancer, NodePort, HostPort and Internal.
130124

125+
## Set up Voyager manually to load balance a WebLogic domain running in Kubernetes
126+
You may want to manually set up Voyager to load balance a WebLogic domain running in Kubernetes, in cases when some of the default settings of the automatic steps don't meet your requirements, or your WebLogic domain is not created by the WebLogic Operator.
127+
To do the setup, refer to the Voyager documents at https://appscode.com/products/voyager/6.0.0/setup/.
128+
### 1. Install the Voyager operator
129+
Refer to Voyager install guide at https://appscode.com/products/voyager/6.0.0/setup/install/.
130+
### 2. Create a Voyager Ingress resource
131+
Refer to the details at https://appscode.com/products/voyager/6.0.0/concepts/overview/. You can choose different types for your Ingress: LoadBalancer, NodePort, HostPort, and Internal.

0 commit comments

Comments
 (0)