finished draft of nlb prodecdure. Also updated procedure titles

This commit is contained in:
Mark Bishop
2018-04-27 14:13:15 -07:00
committed by Denise
parent 0d2da74e50
commit bd8c6d17ee
5 changed files with 61 additions and 82 deletions
@@ -1,59 +1,8 @@
---
title: Load Balancing Configuration
layout: single-docs
title: Load Balancer Configuration
weight: 300
---
# External Load Balancer Configuration
Following {{< product >}} installation, you have the option of configuring an external load balancer to direct cluster traffic.
## Option 1: Amazon ELB (Recommended)
Amazon Elastic Load Balancer (ELB) is the load balancer most tested by {{< product >}}. You can set one up at Amazon Web Services (AWS). You have the option of using either an Application Load Balancer (ALB) or a Network Load Balancer (NLB).
## Create Target Groups
Regardless of your choice, ALB or ELB, your first load balancer configuration step is to create two target groups: one for HTTP, the other for HTTPS.
The document below will guide you through this process. Use the data in the tables below to complete the procedure.
[Amazon Documentation: Create a Target Group](https://docs.aws.amazon.com/elasticloadbalancing/latest/application/create-target-group.html)
### Target Group 1 (HTTP)
Option | Setting
----------------------------|------------------------------------
Target Group Name | `rancher-ha-http-80`
Protocol | For ALB: `HTTP`<br/>For NLB: `TCP`
Port | `80`
Target type | `instance`
VPC | Choose your VPC
Protocol<br/>(Health Check) | For ALB: `HTTPS`<br/>For NLB: `TCP`
### Target Group 2 (HTTPS)
Option | Setting
----------------------------|------------------------------------
Target Group Name | `rancher-ha-http-443`
Protocol | For ALB: `HTTP`<br/>For NLB: `TCP`
Port | `443`
Target type | `instance`
VPC | Choose your VPC
Protocol<br/>(Health Check) | For ALB: `HTTPS`<br/>For NLB: `TCP`
## Register Targets
Next, add your Kubernetes nodes assigned either the `controlplane` or `worker` role to _both_ of your target groups.
[Amazon Documentation: Register Targets with Your Target Group](https://docs.aws.amazon.com/elasticloadbalancing/latest/application/target-group-register-targets.html)
## Option 3: NGINX
NGINX is a popular application platform that can be used as a load balancer.
## Option 2: HAProxy
Hey, guess what. You can use HAProxy too.
@@ -1,8 +1,8 @@
---
title: Configuring Amazon ALB
weight:
title: Option 1—Amazon ALB
weight: 305
---
# Configuring Amazon ALB
# Option 1-Amazon ALB
## Objectives
@@ -123,7 +123,7 @@ The load balancer is created, but you still need to add your second target group
2. From the grid of load balancers, select your load balancer.
3. Select the **Listeners** tab. Select the `HTTPS: 43` **Listener ID**. Then click **Edit**.
3. Select the **Listeners** tab. Select the `HTTPS: 443` **Listener ID**. Then click **Edit**.
4. From the **Default target group** drop-down, select `rancher-https-443`. Click **Save**.
@@ -1,8 +1,8 @@
---
title: Configuring Amazon NLB
weight:
title: Option 2—Amazon NLB
weight: 310
---
# Configuring Amazon NLB
# Option 2-Amazon NLB
## Objectives
@@ -27,17 +27,19 @@ Configuring an Amazon NLB is a multistage process. We've broken it down into mul
## Create Target Groups
Your first NLB configuration step is to create two target groups: one for HTTP, the other for HTTPS.
Your first NLB configuration step is to create two target groups for the TCP protocol: one on port 80, the other on port 443.
Log into the [Amazon AWS Console](https://console.aws.amazon.com/ec2/) to get started.
The document below will guide you through this process. Use the data in the tables below to complete the procedure.
[Amazon Documentation: Create a Target Group](https://docs.aws.amazon.com/elasticloadbalancing/latest/application/create-target-group.html)
### Target Group 1 (HTTP)
### Target Group 1 (TCP)
Option | Setting
----------------------------|------------------------------------
Target Group Name | `rancher-http-80`
Target Group Name | `rancher-tcp-80`
Protocol | `TCP`
Port | `80`
Target type | `instance`
@@ -45,11 +47,11 @@ VPC | Choose your VPC
Protocol<br/>(Health Check) | `TCP`
### Target Group 2 (HTTPS)
### Target Group 2 (TCP)
Option | Setting
----------------------------|------------------------------------
Target Group Name | `rancher-http-443`
Target Group Name | `rancher-tcp-443`
Protocol | `TCP`
Port | `443`
Target type | `instance`
@@ -64,38 +66,57 @@ Next, add your Kubernetes nodes assigned either the `controlplane` or `worker` r
### Create Your NLB
1. From your web browser, navigate to the [Amazon Elastic Load Balancing Console](https://aws.amazon.com/elasticloadbalancing/).
1. From your web browser, navigate to the [Amazon EC2 Console](https://console.aws.amazon.com/ec2/).
2. Click **Get Started with Elastic Load Balancing** and sign in.
2. From the navigation pane, choose **LOAD BALANCING** > **Load Balancers**.
3. Choose **Application Load Balancer**.
3. Click **Create Load Balancer**.
4. Complete the **Step 1: Configure Load Balancer** form.
4. Choose **Network Load Balancer**.
5. Complete the **Step 1: Configure Load Balancer** form.
- **Basic Configuration**
- Name: `rancher-ha-http-https`
- Name: `rancher-http-https`
- Scheme: `internet-facing`
- IP address type: `ipv4`
- **Listeners**
Add the **Load Balancer Protocols** and **Load Balancer Ports** below.
- `HTTP`: `80`
- `HTTPS`: `443`
- `TCP`: `80`
- `TCP`: `443`
- **Availability Zones**
- Select Your **VPC** and **Availability Zone**.
- Select Your **VPC** and **Availability Zones**.
5. Complete the **Step 2: Configure Security Settings** form.
6. Complete the **Step 2: Configure Routing** form.
>**Installing in a High-Availability Configuration?**
> - If you are using self-signed certificates, the certificate and key must be signed by the same certificate authority that signed `cattle-keys-server`.
> - If you are using SSL passthrough, you must use a certificate signed by a public certificate authority.
1. From the **Target Group** drop-down, choose **Existing target group**.
6. Complete the **Step 3: Configure Security Groups** form.
2. Add target group `rancher-tcp-80`.
7. Complete the **Step 4: Configure Routing** form. Add one of your [target groups](#create-target-groups) using the form.
>**Note:** The wizard lets you add only one group. You will add your second group in the next procedure, [Add Your Second Target Group](#add-your-second-target-group).
>**User Action:** You must add _both_ target groups to your routing configuration, but Amazon's NLB Wizard limits you to add a single target group.
7. Complete **Step 3: Register Targets**. Since you registered your targets earlier, all you have to do it click **Next: Review**.
8. Complete **Step 4: Review**. Look over the load balancer details and click **Create** when you're satisfied.
9. After AWS creates the ALB, click **Close**.
### Add Your Second Target Group
The load balancer is created, but you still need to add your second target group. Use the Amazon EC2 Console and add the second target group manually.
1. From the navigation pane, choose **LOAD BALANCING** > **Load Balancers**.
2. From the grid of load balancers, select your load balancer.
3. Select the **Listeners** tab. Select the `TCP: 443` **Listener ID**. Then click **Edit**.
4. From the **Default target group** drop-down, select `rancher-tcp-443`. Click **Save**.
5. Review the **Listeners** tab to make sure the protocols for the **Listener ID**s and **Rules** match. The following **Listener ID**s should be matched to the following **Rules**:
- `TCP: 80`: `rancher-tcp-80`
- `TCP:443`: `rancher-tcp-443`
@@ -0,0 +1,7 @@
---
title: Option 4—HAProxy
weight:
---
# Option 4-HAProxy
Yeah, you can use HAProxy too.
@@ -1,5 +1,7 @@
---
title: Configuring NGINX
weight:
title: Option 3—NGINX
weight: 315
---
# Configuring NGINX
# Option 3-NGINX
NGINX is a popular application platform that can be used as a load balancer.