Merge pull request #640 from rawmind0/master

Updated avi package to external_lb:v0.3.4
This commit is contained in:
Denise 2017-10-09 15:43:49 -07:00 committed by GitHub
commit 1dccf899ab
4 changed files with 101 additions and 1 deletions

32
templates/avi/1/README.md Normal file
View File

@ -0,0 +1,32 @@
Avi Vantage Platform Load Balancer Provider
========
## About Avi Vantage Platform
The [Avi Vantage Platform](https://avinetworks.com/software-load-balancer-for-any-cloud/) is built on software-defined architectural principles to create a centrally managed pool of distributed load balancers to deliver application services close to the applications.
## About this provider
This provider load balances Rancher services using Avi Vantage Platform Load Balancer. It uses REST API to update the Avi controller which enables the Avi Service Engines to load balance the Rancher Services.
## Usage
1. Deploy the stack for this provider from Rancher Community Catalog.
While deploying, you need to give the username, password (optional,
read below), Avi Controller IP address, Avi Controller Port, the
Cloud name where Virtual Services and Pools are created.
2. Create Virtual Services using Avi Controller console. Make sure you
create VS in given cloud in Avi. Leave the Virtual Service pool as
empty. Configure any policies or rules for Virtual Service.
3. Create services in Rancher with public host port mapping and adding
label `io.rancher.service.external_lb.endpoint` with value as Virtual
Service name created in previous step. You can scale out/in the
service or stop the service and the changes will get reflected on Avi
Controller and Service Engine.
### Using Rancher Secrets for Avi Password
Optionally, you can use the Rancher Secrets to pass the Avi controller
password instead of using environment variable.
1. Run the Rancher Secrets service before deploying this provider stack.
2. Create a secret named "avi-creds".
3. While deploying the Avi provider stack, use the "avi-creds" secret
for Avi Provider service.

View File

@ -0,0 +1,16 @@
avi:
image: rancher/external-lb:v0.3.4
command: -provider=Avi
expose:
- 1000
environment:
AVI_USER: ${AVI_USER}
AVI_PASSWORD: ${AVI_PASSWORD}
AVI_CONTROLLER_ADDR: ${AVI_CONTROLLER_ADDR}
AVI_CONTROLLER_PORT: ${AVI_CONTROLLER_PORT}
AVI_SSL_VERIFY: ${AVI_SSL_VERIFY}
AVI_CLOUD_NAME: ${AVI_CLOUD_NAME}
LB_TARGET_RANCHER_SUFFIX: ${LB_TARGET_RANCHER_SUFFIX}
labels:
io.rancher.container.create_agent: "true"
io.rancher.container.agent.role: "external-lb"

View File

@ -0,0 +1,52 @@
.catalog:
name: Avi Vantange Platform Load Balancer
version: "v0.3.4-rancher1"
description: "External LB service powered by Avi Vantage Platform"
minimum_rancher_version: v1.1.0
questions:
- variable: "AVI_USER"
label: "Avi account username"
description: "User name for your account on Avi Controller"
type: "string"
required: true
- variable: "AVI_PASSWORD"
label: "Avi user account password"
description: "Password for your account on Avi Controller"
type: "string"
required: false
- variable: "AVI_CONTROLLER_ADDR"
label: "Avi Controller IP Address"
description: "IP Address of the Avi Controller"
type: "string"
required: true
- variable: "AVI_CONTROLLER_PORT"
label: "Avi Controller Port (Optional)"
description: "Port on which Avi Controller is listening for API requests"
type: "string"
required: false
- variable: "AVI_CLOUD_NAME"
label: "Avi Cloud Name (Optional)"
description: "Name of Avi Cloud in which Virtual Services are created"
required: false
type: "string"
- variable: "AVI_SSL_VERIFY"
label: "Avi SSL Verify (Optional)"
description: "SSL certificate validation while connecting to Avi Controller"
required: false
type: "boolean"
default: false
- variable: "LB_TARGET_RANCHER_SUFFIX"
label: "Avi pool name suffix"
description: "Pool names in Avi created/updated by Rancher will have this suffix"
type: "string"
required: true
default: rancher.internal
avi:
health_check:
port: 1000
interval: 5000
unhealthy_threshold: 2
request_line: GET / HTTP/1.0
healthy_threshold: 2
response_timeout: 2000

View File

@ -1,5 +1,5 @@
name: Avi Vantage Platform
description: |
External LB service powered by Avi Vantage Platform
version: v0.3.2-rancher1
version: v0.3.4-rancher1
category: Load Balancing