Compare commits
1 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 868f933e50 |
@@ -1,40 +0,0 @@
|
|||||||
## Alibaba Cloud DNS
|
|
||||||
|
|
||||||
Rancher External DNS service powered by Alibaba Cloud DNS
|
|
||||||
|
|
||||||
#### Usage
|
|
||||||
|
|
||||||
##### Supported host labels
|
|
||||||
|
|
||||||
`io.rancher.host.external_dns_ip`
|
|
||||||
Override the IP address used in DNS records for containers running on the host. Defaults to the IP address the host is registered with in Rancher.
|
|
||||||
|
|
||||||
`io.rancher.host.external_dns`
|
|
||||||
Accepts 'true' (default) or 'false'
|
|
||||||
When this is set to 'false' no DNS records will ever be created for containers running on this host.
|
|
||||||
|
|
||||||
##### Supported service labels
|
|
||||||
|
|
||||||
`io.rancher.service.external_dns`
|
|
||||||
Accepts 'always', 'never' or 'auto' (default)
|
|
||||||
- `always`: Always create DNS records for this service
|
|
||||||
- `never`: Never create DNS records for this service
|
|
||||||
- `auto`: Create DNS records for this service if it exposes ports on the host
|
|
||||||
|
|
||||||
`io.rancher.service.external_dns_name_template`
|
|
||||||
Custom DNS name template that overrides global custom DNS name template (see below) of default DNS name template for a specific service
|
|
||||||
|
|
||||||
##### Custom DNS name template
|
|
||||||
|
|
||||||
By default DNS entries are named `<service>.<stack>.<environment>.<domain>`.
|
|
||||||
You can specify a custom name template used to construct the subdomain part (left of the domain/zone name) of the DNS records. The following placeholders are supported:
|
|
||||||
|
|
||||||
* `%{{service_name}}`
|
|
||||||
* `%{{stack_name}}`
|
|
||||||
* `%{{environment_name}}`
|
|
||||||
|
|
||||||
**Example:**
|
|
||||||
|
|
||||||
`%{{stack_name}}-%{{service_name}}.statictext`
|
|
||||||
|
|
||||||
Make sure to only use characters in static text and separators that your provider allows in DNS names.
|
|
||||||
@@ -1,14 +0,0 @@
|
|||||||
alidns:
|
|
||||||
image: rancher/external-dns:v0.7.4
|
|
||||||
command: -provider=alidns
|
|
||||||
expose:
|
|
||||||
- 1000
|
|
||||||
environment:
|
|
||||||
ALICLOUD_ACCESS_KEY_ID: ${ALICLOUD_ACCESS_KEY_ID}
|
|
||||||
ALICLOUD_ACCESS_KEY_SECRET: ${ALICLOUD_ACCESS_KEY_SECRET}
|
|
||||||
ROOT_DOMAIN: ${ROOT_DOMAIN}
|
|
||||||
NAME_TEMPLATE: ${NAME_TEMPLATE}
|
|
||||||
TTL: ${TTL}
|
|
||||||
labels:
|
|
||||||
io.rancher.container.create_agent: "true"
|
|
||||||
io.rancher.container.agent.role: "external-dns"
|
|
||||||
@@ -1,49 +0,0 @@
|
|||||||
# notemplating
|
|
||||||
.catalog:
|
|
||||||
name: "Alibaba Cloud DNS"
|
|
||||||
version: "v0.1.0"
|
|
||||||
description: "Rancher External DNS service powered by Alibaba Cloud"
|
|
||||||
minimum_rancher_version: v1.6.8-rc1
|
|
||||||
maximum_rancher_version: v1.9.99
|
|
||||||
questions:
|
|
||||||
- variable: "ALICLOUD_ACCESS_KEY_ID"
|
|
||||||
label: "Access Key ID"
|
|
||||||
description: "Access key id for your Alibaba Cloud account"
|
|
||||||
type: "string"
|
|
||||||
required: true
|
|
||||||
- variable: "ALICLOUD_ACCESS_KEY_SECRET"
|
|
||||||
label: "Access Key Secret"
|
|
||||||
description: "Access key secret for your Alibaba Cloud account"
|
|
||||||
type: "string"
|
|
||||||
required: true
|
|
||||||
- variable: "ROOT_DOMAIN"
|
|
||||||
label: "Domain"
|
|
||||||
description: "The DNS zone (domain) managed by Alibaba Cloud. DNS entries will be created for <service>.<stack>.<environment>.<domain>"
|
|
||||||
type: "string"
|
|
||||||
required: true
|
|
||||||
- variable: "TTL"
|
|
||||||
label: "TTL"
|
|
||||||
description: "The resource record cache time to live (TTL), in seconds"
|
|
||||||
type: "int"
|
|
||||||
default: 600
|
|
||||||
min: 1
|
|
||||||
max: 86400
|
|
||||||
required: false
|
|
||||||
- variable: "NAME_TEMPLATE"
|
|
||||||
label: "DNS Name Template"
|
|
||||||
description: |
|
|
||||||
Name template used to construct the subdomain part (left of the domain) of the DNS record names.
|
|
||||||
Supported placeholders: %{{service_name}}, %{{stack_name}}, %{{environment_name}}.
|
|
||||||
By default DNS entries will be named '<service>.<stack>.<environment>.<domain>'.
|
|
||||||
type: "string"
|
|
||||||
default: "%{{service_name}}.%{{stack_name}}.%{{environment_name}}"
|
|
||||||
required: false
|
|
||||||
|
|
||||||
alidns:
|
|
||||||
health_check:
|
|
||||||
port: 1000
|
|
||||||
interval: 5000
|
|
||||||
unhealthy_threshold: 3
|
|
||||||
request_line: GET / HTTP/1.0
|
|
||||||
healthy_threshold: 2
|
|
||||||
response_timeout: 2000
|
|
||||||
Binary file not shown.
|
Before Width: | Height: | Size: 18 KiB |
@@ -1,7 +0,0 @@
|
|||||||
name: Alibaba Cloud DNS
|
|
||||||
description: |
|
|
||||||
Rancher External DNS service powered by Alibaba Cloud
|
|
||||||
version: v0.1.0
|
|
||||||
category: External DNS
|
|
||||||
labels:
|
|
||||||
io.rancher.orchestration.supported: 'cattle,mesos,swarm,kubernetes'
|
|
||||||
@@ -3,7 +3,6 @@
|
|||||||
version: "v1.0.0-rancher1"
|
version: "v1.0.0-rancher1"
|
||||||
description: "Domain Name Server powered by Bind9"
|
description: "Domain Name Server powered by Bind9"
|
||||||
minimum_rancher_version: v1.2.0-pre4-rc1
|
minimum_rancher_version: v1.2.0-pre4-rc1
|
||||||
maximum_rancher_version: v1.9.99
|
|
||||||
questions:
|
questions:
|
||||||
- variable: "BIND9_ROOTDOMAIN"
|
- variable: "BIND9_ROOTDOMAIN"
|
||||||
label: "The root domain to manage in bind9"
|
label: "The root domain to manage in bind9"
|
||||||
|
|||||||
@@ -3,7 +3,6 @@
|
|||||||
version: "v0.1.9-rancher1"
|
version: "v0.1.9-rancher1"
|
||||||
description: "Rancher External DNS service powered by CloudFlare. Requires Rancher version 0.44.0"
|
description: "Rancher External DNS service powered by CloudFlare. Requires Rancher version 0.44.0"
|
||||||
minimum_rancher_version: v1.2.0-pre4-rc1
|
minimum_rancher_version: v1.2.0-pre4-rc1
|
||||||
maximum_rancher_version: v1.2.0-pre4-rc1
|
|
||||||
questions:
|
questions:
|
||||||
- variable: "CLOUDFLARE_EMAIL"
|
- variable: "CLOUDFLARE_EMAIL"
|
||||||
label: "CloudFlare email address"
|
label: "CloudFlare email address"
|
||||||
|
|||||||
@@ -3,7 +3,6 @@
|
|||||||
version: "v0.2.1-rancher1"
|
version: "v0.2.1-rancher1"
|
||||||
description: "Rancher External DNS service powered by CloudFlare. Requires Rancher version 0.44.0"
|
description: "Rancher External DNS service powered by CloudFlare. Requires Rancher version 0.44.0"
|
||||||
minimum_rancher_version: v1.2.0-pre4-rc1
|
minimum_rancher_version: v1.2.0-pre4-rc1
|
||||||
maximum_rancher_version: v1.2.0-pre4-rc1
|
|
||||||
questions:
|
questions:
|
||||||
- variable: "CLOUDFLARE_EMAIL"
|
- variable: "CLOUDFLARE_EMAIL"
|
||||||
label: "CloudFlare email address"
|
label: "CloudFlare email address"
|
||||||
|
|||||||
@@ -3,7 +3,6 @@
|
|||||||
version: "v0.4.0-rancher1"
|
version: "v0.4.0-rancher1"
|
||||||
description: "Rancher External DNS service powered by CloudFlare. Requires Rancher version 0.44.0"
|
description: "Rancher External DNS service powered by CloudFlare. Requires Rancher version 0.44.0"
|
||||||
minimum_rancher_version: v1.2.0-pre4-rc1
|
minimum_rancher_version: v1.2.0-pre4-rc1
|
||||||
maximum_rancher_version: v1.2.0-pre4-rc1
|
|
||||||
questions:
|
questions:
|
||||||
- variable: "CLOUDFLARE_EMAIL"
|
- variable: "CLOUDFLARE_EMAIL"
|
||||||
label: "CloudFlare email address"
|
label: "CloudFlare email address"
|
||||||
|
|||||||
@@ -3,7 +3,6 @@
|
|||||||
version: "v0.6.0-rancher1"
|
version: "v0.6.0-rancher1"
|
||||||
description: "Rancher External DNS service powered by CloudFlare. Requires Rancher version v1.1.0"
|
description: "Rancher External DNS service powered by CloudFlare. Requires Rancher version v1.1.0"
|
||||||
minimum_rancher_version: v1.2.0-pre4-rc1
|
minimum_rancher_version: v1.2.0-pre4-rc1
|
||||||
maximum_rancher_version: v1.5.99
|
|
||||||
questions:
|
questions:
|
||||||
- variable: "CLOUDFLARE_EMAIL"
|
- variable: "CLOUDFLARE_EMAIL"
|
||||||
label: "CloudFlare email address"
|
label: "CloudFlare email address"
|
||||||
|
|||||||
@@ -1,36 +0,0 @@
|
|||||||
## CloudFlare DNS
|
|
||||||
|
|
||||||
Rancher External DNS service powered by CloudFlare DNS
|
|
||||||
|
|
||||||
#### Changelog
|
|
||||||
|
|
||||||
##### v0.6.0
|
|
||||||
|
|
||||||
* Reduces the overall rate of API requests to the DNS provider
|
|
||||||
* Adds support for custom DNS naming convention
|
|
||||||
* Stack, service and environment names used in service DNS names are now sanitized to conform with RFC 1123. Characters other than `a-z`, `A-Z`, `0-9` or `dash` are replaced by dashes.
|
|
||||||
* For internal use the service creates TXT records to track the FQDNs it manages. These TXT records are named `external-dns-<environemntUUID>.<domain>` and should not be deleted.
|
|
||||||
|
|
||||||
#### Usage
|
|
||||||
|
|
||||||
##### Upgrade Notes
|
|
||||||
While upgrading from a version lower than v0.6.0 the TTL configuration value should not be changed. You may change it once the upgrade has been completed.
|
|
||||||
|
|
||||||
##### Limitation when running the service on multiple Rancher servers
|
|
||||||
|
|
||||||
When running multiple instances of the External DNS service configured to use the **same** domain name, then only one of them can run in the "Default" environment of a Rancher server instance.
|
|
||||||
|
|
||||||
##### Custom DNS name template
|
|
||||||
|
|
||||||
By default DNS entries are named `<service>.<stack>.<environment>.<domain>`.
|
|
||||||
You can specify a custom name template used to construct the subdomain part (left of the domain name) of the DNS records. The following placeholders are supported:
|
|
||||||
|
|
||||||
* `%{{service_name}}`
|
|
||||||
* `%{{stack_name}}`
|
|
||||||
* `%{{environment_name}}`
|
|
||||||
|
|
||||||
**Example:**
|
|
||||||
|
|
||||||
`%{{stack_name}}-%{{service_name}}.statictext`
|
|
||||||
|
|
||||||
Make sure to only use characters in static text and separators that are allowed by your provider in DNS names.
|
|
||||||
@@ -1,14 +0,0 @@
|
|||||||
cloudflare:
|
|
||||||
image: rancher/external-dns:v0.6.0
|
|
||||||
command: -provider=cloudflare
|
|
||||||
expose:
|
|
||||||
- 1000
|
|
||||||
environment:
|
|
||||||
CLOUDFLARE_EMAIL: ${CLOUDFLARE_EMAIL}
|
|
||||||
CLOUDFLARE_KEY: ${CLOUDFLARE_KEY}
|
|
||||||
ROOT_DOMAIN: ${ROOT_DOMAIN}
|
|
||||||
NAME_TEMPLATE: ${NAME_TEMPLATE}
|
|
||||||
TTL: ${TTL}
|
|
||||||
labels:
|
|
||||||
io.rancher.container.create_agent: "true"
|
|
||||||
io.rancher.container.agent.role: "external-dns"
|
|
||||||
@@ -1,49 +0,0 @@
|
|||||||
# notemplating
|
|
||||||
.catalog:
|
|
||||||
name: "CloudFlare DNS"
|
|
||||||
version: "v0.6.0-rancher2"
|
|
||||||
description: "Rancher External DNS service powered by CloudFlare. Requires Rancher version v1.1.0"
|
|
||||||
minimum_rancher_version: v1.6.0-rc1
|
|
||||||
maximum_rancher_version: v1.9.99
|
|
||||||
questions:
|
|
||||||
- variable: "CLOUDFLARE_EMAIL"
|
|
||||||
label: "CloudFlare email address"
|
|
||||||
description: "Email address associated with your CloudFlare account"
|
|
||||||
type: "string"
|
|
||||||
required: true
|
|
||||||
- variable: "CLOUDFLARE_KEY"
|
|
||||||
label: "CloudFlare API key"
|
|
||||||
description: "API key for your CloudFlare account"
|
|
||||||
type: "string"
|
|
||||||
required: true
|
|
||||||
- variable: "ROOT_DOMAIN"
|
|
||||||
label: "Domain Name"
|
|
||||||
description: "The domain name managed by CloudFlare."
|
|
||||||
type: "string"
|
|
||||||
required: true
|
|
||||||
- variable: "TTL"
|
|
||||||
label: "TTL"
|
|
||||||
description: "The resource record cache time to live (TTL), in seconds (minimum 120)"
|
|
||||||
type: "int"
|
|
||||||
default: 120
|
|
||||||
min: 120
|
|
||||||
max: 3600
|
|
||||||
required: false
|
|
||||||
- variable: "NAME_TEMPLATE"
|
|
||||||
label: "DNS Name Template"
|
|
||||||
description: |
|
|
||||||
Name template used to construct the subdomain part (left of the domain) of the DNS record names.
|
|
||||||
Supported placeholders: %{{service_name}}, %{{stack_name}}, %{{environment_name}}.
|
|
||||||
By default DNS entries will be named '<service>.<stack>.<environment>.<domain>'.
|
|
||||||
type: "string"
|
|
||||||
default: "%{{service_name}}.%{{stack_name}}.%{{environment_name}}"
|
|
||||||
required: false
|
|
||||||
|
|
||||||
cloudflare:
|
|
||||||
health_check:
|
|
||||||
port: 1000
|
|
||||||
interval: 5000
|
|
||||||
unhealthy_threshold: 3
|
|
||||||
request_line: GET / HTTP/1.0
|
|
||||||
healthy_threshold: 2
|
|
||||||
response_timeout: 2000
|
|
||||||
@@ -1,7 +1,7 @@
|
|||||||
name: CloudFlare DNS
|
name: CloudFlare DNS
|
||||||
description: |
|
description: |
|
||||||
Rancher External DNS service powered by CloudFlare
|
Rancher External DNS service powered by CloudFlare
|
||||||
version: v0.6.0-rancher2
|
version: v0.6.0-rancher1
|
||||||
category: External DNS
|
category: External DNS
|
||||||
labels:
|
labels:
|
||||||
io.rancher.orchestration.supported: 'cattle,mesos,swarm,kubernetes'
|
io.rancher.orchestration.supported: 'cattle,mesos,swarm,kubernetes'
|
||||||
|
|||||||
@@ -3,7 +3,6 @@
|
|||||||
version: "v0.6.2-rancher1"
|
version: "v0.6.2-rancher1"
|
||||||
description: "Rancher External DNS service powered by DigitalOcean"
|
description: "Rancher External DNS service powered by DigitalOcean"
|
||||||
minimum_rancher_version: v1.2.0-pre4-rc1
|
minimum_rancher_version: v1.2.0-pre4-rc1
|
||||||
maximum_rancher_version: v1.4.99
|
|
||||||
questions:
|
questions:
|
||||||
- variable: "DO_PAT"
|
- variable: "DO_PAT"
|
||||||
label: "DigitalOcean Personal Access Token"
|
label: "DigitalOcean Personal Access Token"
|
||||||
|
|||||||
@@ -1,48 +0,0 @@
|
|||||||
## DigitalOcean DNS
|
|
||||||
|
|
||||||
Rancher External DNS service powered by DigitalOcean
|
|
||||||
|
|
||||||
#### Changelog
|
|
||||||
|
|
||||||
Initial version
|
|
||||||
|
|
||||||
#### Usage
|
|
||||||
|
|
||||||
##### DigitalOcean DNS record TTL
|
|
||||||
The DigitalOcean API currently does not support per-record TTL setting. You should configure the global TTL setting for the domain manually and set it to a low value (e.g. 60).
|
|
||||||
|
|
||||||
##### Limitation when running the service on multiple Rancher servers
|
|
||||||
|
|
||||||
When running multiple instances of the External DNS service configured to use the same domain name, then only one of them can run in the "Default" environment of a Rancher server instance.
|
|
||||||
|
|
||||||
##### Supported host labels
|
|
||||||
|
|
||||||
`io.rancher.host.external_dns_ip`
|
|
||||||
Override the IP address used in DNS records for containers running on the host. Defaults to the IP address the host is registered with in Rancher.
|
|
||||||
|
|
||||||
`io.rancher.host.external_dns`
|
|
||||||
Accepts 'true' (default) or 'false'
|
|
||||||
When this is set to 'false' no DNS records will ever be created for containers running on this host.
|
|
||||||
|
|
||||||
##### Supported service labels
|
|
||||||
|
|
||||||
`io.rancher.service.external_dns`
|
|
||||||
Accepts 'always', 'never' or 'auto' (default)
|
|
||||||
- `always`: Always create DNS records for this service
|
|
||||||
- `never`: Never create DNS records for this service
|
|
||||||
- `auto`: Create DNS records for this service if it exposes ports on the host
|
|
||||||
|
|
||||||
##### Custom DNS name template
|
|
||||||
|
|
||||||
By default DNS entries are named `<service>.<stack>.<environment>.<domain>`.
|
|
||||||
You can specify a custom name template used to construct the subdomain part (left of the domain/zone name) of the DNS records. The following placeholders are supported:
|
|
||||||
|
|
||||||
* `%{{service_name}}`
|
|
||||||
* `%{{stack_name}}`
|
|
||||||
* `%{{environment_name}}`
|
|
||||||
|
|
||||||
**Example:**
|
|
||||||
|
|
||||||
`%{{stack_name}}-%{{service_name}}.statictext`
|
|
||||||
|
|
||||||
Make sure to only use characters in static text and separators that your provider allows in DNS names.
|
|
||||||
@@ -1,13 +0,0 @@
|
|||||||
digitalocean:
|
|
||||||
image: rancher/external-dns:v0.6.3
|
|
||||||
command: -provider=digitalocean
|
|
||||||
expose:
|
|
||||||
- 1000
|
|
||||||
environment:
|
|
||||||
DO_PAT: ${DO_PAT}
|
|
||||||
ROOT_DOMAIN: ${ROOT_DOMAIN}
|
|
||||||
NAME_TEMPLATE: ${NAME_TEMPLATE}
|
|
||||||
TTL: 300
|
|
||||||
labels:
|
|
||||||
io.rancher.container.create_agent: "true"
|
|
||||||
io.rancher.container.agent.role: "external-dns"
|
|
||||||
@@ -1,35 +0,0 @@
|
|||||||
.catalog:
|
|
||||||
name: "DigitalOcean DNS"
|
|
||||||
version: "v0.6.3"
|
|
||||||
description: "Rancher External DNS service powered by DigitalOcean"
|
|
||||||
minimum_rancher_version: v1.5.0
|
|
||||||
maximum_rancher_version: v1.5.0
|
|
||||||
questions:
|
|
||||||
- variable: "DO_PAT"
|
|
||||||
label: "DigitalOcean Personal Access Token"
|
|
||||||
description: "Enter your personal access token"
|
|
||||||
type: "string"
|
|
||||||
required: true
|
|
||||||
- variable: "ROOT_DOMAIN"
|
|
||||||
label: "Domain Name"
|
|
||||||
description: "The domain name managed by DigitalOcean."
|
|
||||||
type: "string"
|
|
||||||
required: true
|
|
||||||
- variable: "NAME_TEMPLATE"
|
|
||||||
label: "DNS Name Template"
|
|
||||||
description: |
|
|
||||||
Name template used to construct the subdomain part (left of the domain) of the DNS record names.
|
|
||||||
Supported placeholders: %{{service_name}}, %{{stack_name}}, %{{environment_name}}.
|
|
||||||
By default DNS entries will be named '<service>.<stack>.<environment>.<domain>'.
|
|
||||||
type: "string"
|
|
||||||
default: "%{{service_name}}.%{{stack_name}}.%{{environment_name}}"
|
|
||||||
required: false
|
|
||||||
|
|
||||||
digitalocean:
|
|
||||||
health_check:
|
|
||||||
port: 1000
|
|
||||||
interval: 5000
|
|
||||||
unhealthy_threshold: 3
|
|
||||||
request_line: GET / HTTP/1.0
|
|
||||||
healthy_threshold: 2
|
|
||||||
response_timeout: 2000
|
|
||||||
@@ -1,53 +0,0 @@
|
|||||||
## DigitalOcean DNS
|
|
||||||
|
|
||||||
Rancher External DNS service powered by DigitalOcean
|
|
||||||
|
|
||||||
#### Changelog
|
|
||||||
|
|
||||||
##### v0.6.4
|
|
||||||
|
|
||||||
* Adds support for overriding name template for specific services by setting io.rancher.service.external_dns_name_template label to it in docker-compose.yml
|
|
||||||
|
|
||||||
#### Usage
|
|
||||||
|
|
||||||
##### DigitalOcean DNS record TTL
|
|
||||||
The DigitalOcean API currently does not support per-record TTL setting. You should configure the global TTL setting for the domain manually and set it to a low value (e.g. 60).
|
|
||||||
|
|
||||||
##### Limitation when running the service on multiple Rancher servers
|
|
||||||
|
|
||||||
When running multiple instances of the External DNS service configured to use the same domain name, then only one of them can run in the "Default" environment of a Rancher server instance.
|
|
||||||
|
|
||||||
##### Supported host labels
|
|
||||||
|
|
||||||
`io.rancher.host.external_dns_ip`
|
|
||||||
Override the IP address used in DNS records for containers running on the host. Defaults to the IP address the host is registered with in Rancher.
|
|
||||||
|
|
||||||
`io.rancher.host.external_dns`
|
|
||||||
Accepts 'true' (default) or 'false'
|
|
||||||
When this is set to 'false' no DNS records will ever be created for containers running on this host.
|
|
||||||
|
|
||||||
##### Supported service labels
|
|
||||||
|
|
||||||
`io.rancher.service.external_dns`
|
|
||||||
Accepts 'always', 'never' or 'auto' (default)
|
|
||||||
- `always`: Always create DNS records for this service
|
|
||||||
- `never`: Never create DNS records for this service
|
|
||||||
- `auto`: Create DNS records for this service if it exposes ports on the host
|
|
||||||
|
|
||||||
`io.rancher.service.external_dns_name_template`
|
|
||||||
Custom DNS name template that overrides global custom DNS name template (see below) of default DNS name template for a specific service
|
|
||||||
|
|
||||||
##### Custom DNS name template
|
|
||||||
|
|
||||||
By default DNS entries are named `<service>.<stack>.<environment>.<domain>`.
|
|
||||||
You can specify a custom name template used to construct the subdomain part (left of the domain/zone name) of the DNS records. The following placeholders are supported:
|
|
||||||
|
|
||||||
* `%{{service_name}}`
|
|
||||||
* `%{{stack_name}}`
|
|
||||||
* `%{{environment_name}}`
|
|
||||||
|
|
||||||
**Example:**
|
|
||||||
|
|
||||||
`%{{stack_name}}-%{{service_name}}.statictext`
|
|
||||||
|
|
||||||
Make sure to only use characters in static text and separators that your provider allows in DNS names.
|
|
||||||
@@ -1,13 +0,0 @@
|
|||||||
digitalocean:
|
|
||||||
image: rancher/external-dns:v0.6.4
|
|
||||||
command: -provider=digitalocean
|
|
||||||
expose:
|
|
||||||
- 1000
|
|
||||||
environment:
|
|
||||||
DO_PAT: ${DO_PAT}
|
|
||||||
ROOT_DOMAIN: ${ROOT_DOMAIN}
|
|
||||||
NAME_TEMPLATE: ${NAME_TEMPLATE}
|
|
||||||
TTL: 300
|
|
||||||
labels:
|
|
||||||
io.rancher.container.create_agent: "true"
|
|
||||||
io.rancher.container.agent.role: "external-dns"
|
|
||||||
@@ -1,35 +0,0 @@
|
|||||||
.catalog:
|
|
||||||
name: "DigitalOcean DNS"
|
|
||||||
version: "v0.6.4"
|
|
||||||
description: "Rancher External DNS service powered by DigitalOcean"
|
|
||||||
minimum_rancher_version: v1.5.0
|
|
||||||
maximum_rancher_version: v1.5.99
|
|
||||||
questions:
|
|
||||||
- variable: "DO_PAT"
|
|
||||||
label: "DigitalOcean Personal Access Token"
|
|
||||||
description: "Enter your personal access token"
|
|
||||||
type: "string"
|
|
||||||
required: true
|
|
||||||
- variable: "ROOT_DOMAIN"
|
|
||||||
label: "Domain Name"
|
|
||||||
description: "The domain name managed by DigitalOcean."
|
|
||||||
type: "string"
|
|
||||||
required: true
|
|
||||||
- variable: "NAME_TEMPLATE"
|
|
||||||
label: "DNS Name Template"
|
|
||||||
description: |
|
|
||||||
Name template used to construct the subdomain part (left of the domain) of the DNS record names.
|
|
||||||
Supported placeholders: %{{service_name}}, %{{stack_name}}, %{{environment_name}}.
|
|
||||||
By default DNS entries will be named '<service>.<stack>.<environment>.<domain>'.
|
|
||||||
type: "string"
|
|
||||||
default: "%{{service_name}}.%{{stack_name}}.%{{environment_name}}"
|
|
||||||
required: false
|
|
||||||
|
|
||||||
digitalocean:
|
|
||||||
health_check:
|
|
||||||
port: 1000
|
|
||||||
interval: 5000
|
|
||||||
unhealthy_threshold: 3
|
|
||||||
request_line: GET / HTTP/1.0
|
|
||||||
healthy_threshold: 2
|
|
||||||
response_timeout: 2000
|
|
||||||
@@ -1,53 +0,0 @@
|
|||||||
## DigitalOcean DNS
|
|
||||||
|
|
||||||
Rancher External DNS service powered by DigitalOcean
|
|
||||||
|
|
||||||
#### Changelog
|
|
||||||
|
|
||||||
##### v0.6.4
|
|
||||||
|
|
||||||
* Adds support for overriding name template for specific services by setting io.rancher.service.external_dns_name_template label to it in docker-compose.yml
|
|
||||||
|
|
||||||
#### Usage
|
|
||||||
|
|
||||||
##### DigitalOcean DNS record TTL
|
|
||||||
The DigitalOcean API currently does not support per-record TTL setting. You should configure the global TTL setting for the domain manually and set it to a low value (e.g. 60).
|
|
||||||
|
|
||||||
##### Limitation when running the service on multiple Rancher servers
|
|
||||||
|
|
||||||
When running multiple instances of the External DNS service configured to use the same domain name, then only one of them can run in the "Default" environment of a Rancher server instance.
|
|
||||||
|
|
||||||
##### Supported host labels
|
|
||||||
|
|
||||||
`io.rancher.host.external_dns_ip`
|
|
||||||
Override the IP address used in DNS records for containers running on the host. Defaults to the IP address the host is registered with in Rancher.
|
|
||||||
|
|
||||||
`io.rancher.host.external_dns`
|
|
||||||
Accepts 'true' (default) or 'false'
|
|
||||||
When this is set to 'false' no DNS records will ever be created for containers running on this host.
|
|
||||||
|
|
||||||
##### Supported service labels
|
|
||||||
|
|
||||||
`io.rancher.service.external_dns`
|
|
||||||
Accepts 'always', 'never' or 'auto' (default)
|
|
||||||
- `always`: Always create DNS records for this service
|
|
||||||
- `never`: Never create DNS records for this service
|
|
||||||
- `auto`: Create DNS records for this service if it exposes ports on the host
|
|
||||||
|
|
||||||
`io.rancher.service.external_dns_name_template`
|
|
||||||
Custom DNS name template that overrides global custom DNS name template (see below) of default DNS name template for a specific service
|
|
||||||
|
|
||||||
##### Custom DNS name template
|
|
||||||
|
|
||||||
By default DNS entries are named `<service>.<stack>.<environment>.<domain>`.
|
|
||||||
You can specify a custom name template used to construct the subdomain part (left of the domain/zone name) of the DNS records. The following placeholders are supported:
|
|
||||||
|
|
||||||
* `%{{service_name}}`
|
|
||||||
* `%{{stack_name}}`
|
|
||||||
* `%{{environment_name}}`
|
|
||||||
|
|
||||||
**Example:**
|
|
||||||
|
|
||||||
`%{{stack_name}}-%{{service_name}}.statictext`
|
|
||||||
|
|
||||||
Make sure to only use characters in static text and separators that your provider allows in DNS names.
|
|
||||||
@@ -1,13 +0,0 @@
|
|||||||
digitalocean:
|
|
||||||
image: rancher/external-dns:v0.6.4
|
|
||||||
command: -provider=digitalocean
|
|
||||||
expose:
|
|
||||||
- 1000
|
|
||||||
environment:
|
|
||||||
DO_PAT: ${DO_PAT}
|
|
||||||
ROOT_DOMAIN: ${ROOT_DOMAIN}
|
|
||||||
NAME_TEMPLATE: ${NAME_TEMPLATE}
|
|
||||||
TTL: 300
|
|
||||||
labels:
|
|
||||||
io.rancher.container.create_agent: "true"
|
|
||||||
io.rancher.container.agent.role: "external-dns"
|
|
||||||
@@ -1,36 +0,0 @@
|
|||||||
# notemplating
|
|
||||||
.catalog:
|
|
||||||
name: "DigitalOcean DNS"
|
|
||||||
version: "v0.6.4.1"
|
|
||||||
description: "Rancher External DNS service powered by DigitalOcean"
|
|
||||||
minimum_rancher_version: v1.6.0-rc1
|
|
||||||
maximum_rancher_version: v1.9.99
|
|
||||||
questions:
|
|
||||||
- variable: "DO_PAT"
|
|
||||||
label: "DigitalOcean Personal Access Token"
|
|
||||||
description: "Enter your personal access token"
|
|
||||||
type: "string"
|
|
||||||
required: true
|
|
||||||
- variable: "ROOT_DOMAIN"
|
|
||||||
label: "Domain Name"
|
|
||||||
description: "The domain name managed by DigitalOcean."
|
|
||||||
type: "string"
|
|
||||||
required: true
|
|
||||||
- variable: "NAME_TEMPLATE"
|
|
||||||
label: "DNS Name Template"
|
|
||||||
description: |
|
|
||||||
Name template used to construct the subdomain part (left of the domain) of the DNS record names.
|
|
||||||
Supported placeholders: %{{service_name}}, %{{stack_name}}, %{{environment_name}}.
|
|
||||||
By default DNS entries will be named '<service>.<stack>.<environment>.<domain>'.
|
|
||||||
type: "string"
|
|
||||||
default: "%{{service_name}}.%{{stack_name}}.%{{environment_name}}"
|
|
||||||
required: false
|
|
||||||
|
|
||||||
digitalocean:
|
|
||||||
health_check:
|
|
||||||
port: 1000
|
|
||||||
interval: 5000
|
|
||||||
unhealthy_threshold: 3
|
|
||||||
request_line: GET / HTTP/1.0
|
|
||||||
healthy_threshold: 2
|
|
||||||
response_timeout: 2000
|
|
||||||
@@ -1,7 +1,7 @@
|
|||||||
name: DigitalOcean DNS
|
name: DigitalOcean DNS
|
||||||
description: |
|
description: |
|
||||||
Rancher External DNS service powered by DigitalOcean
|
Rancher External DNS service powered by DigitalOcean
|
||||||
version: v0.6.4.1
|
version: v0.6.2-rancher1
|
||||||
category: External DNS
|
category: External DNS
|
||||||
labels:
|
labels:
|
||||||
io.rancher.orchestration.supported: 'cattle,mesos,swarm,kubernetes'
|
io.rancher.orchestration.supported: 'cattle,mesos,swarm,kubernetes'
|
||||||
|
|||||||
@@ -3,7 +3,6 @@
|
|||||||
version: "v0.1.9-rancher1"
|
version: "v0.1.9-rancher1"
|
||||||
description: "Rancher External DNS service powered by DNSimple. Requires Rancher version 0.44.0"
|
description: "Rancher External DNS service powered by DNSimple. Requires Rancher version 0.44.0"
|
||||||
minimum_rancher_version: v1.2.0-pre4-rc1
|
minimum_rancher_version: v1.2.0-pre4-rc1
|
||||||
maximum_rancher_version: v1.2.0-pre4-rc1
|
|
||||||
questions:
|
questions:
|
||||||
- variable: "DNSIMPLE_EMAIL"
|
- variable: "DNSIMPLE_EMAIL"
|
||||||
label: "DNSimple account email address"
|
label: "DNSimple account email address"
|
||||||
|
|||||||
@@ -3,7 +3,6 @@
|
|||||||
version: "v0.2.1-rancher1"
|
version: "v0.2.1-rancher1"
|
||||||
description: "Rancher External DNS service powered by DNSimple. Requires Rancher version 0.44.0"
|
description: "Rancher External DNS service powered by DNSimple. Requires Rancher version 0.44.0"
|
||||||
minimum_rancher_version: v1.2.0-pre4-rc1
|
minimum_rancher_version: v1.2.0-pre4-rc1
|
||||||
maximum_rancher_version: v1.2.0-pre4-rc1
|
|
||||||
questions:
|
questions:
|
||||||
- variable: "DNSIMPLE_EMAIL"
|
- variable: "DNSIMPLE_EMAIL"
|
||||||
label: "DNSimple account email address"
|
label: "DNSimple account email address"
|
||||||
|
|||||||
@@ -3,7 +3,6 @@
|
|||||||
version: "v0.6.0-rancher1"
|
version: "v0.6.0-rancher1"
|
||||||
description: "Rancher External DNS service powered by DNSimple. Requires Rancher version v1.1.0"
|
description: "Rancher External DNS service powered by DNSimple. Requires Rancher version v1.1.0"
|
||||||
minimum_rancher_version: v1.2.0-pre4-rc1
|
minimum_rancher_version: v1.2.0-pre4-rc1
|
||||||
maximum_rancher_version: v1.5.99
|
|
||||||
questions:
|
questions:
|
||||||
- variable: "DNSIMPLE_EMAIL"
|
- variable: "DNSIMPLE_EMAIL"
|
||||||
label: "DNSimple Account Email Address"
|
label: "DNSimple Account Email Address"
|
||||||
|
|||||||
@@ -1,36 +0,0 @@
|
|||||||
## DNSimple DNS
|
|
||||||
|
|
||||||
Rancher External DNS service powered by DNSimple DNS
|
|
||||||
|
|
||||||
#### Changelog
|
|
||||||
|
|
||||||
##### v0.6.0
|
|
||||||
|
|
||||||
* Reduces the overall rate of API requests to the DNS provider
|
|
||||||
* Adds support for custom DNS naming convention
|
|
||||||
* Stack, service and environment names used in service DNS names are now sanitized to conform with RFC 1123. Characters other than `a-z`, `A-Z`, `0-9` or `dash` are replaced by dashes.
|
|
||||||
* For internal use the service creates TXT records to track the FQDNs it manages. These TXT records are named `external-dns-<environemntUUID>.<domain>` and should not be deleted.
|
|
||||||
|
|
||||||
#### Usage
|
|
||||||
|
|
||||||
##### Upgrade Notes
|
|
||||||
While upgrading from a version lower than v0.6.0 the TTL configuration value should not be changed. You may change it once the upgrade has been completed.
|
|
||||||
|
|
||||||
##### Limitation when running the service on multiple Rancher servers
|
|
||||||
|
|
||||||
When running multiple instances of the External DNS service configured to use the **same** domain name, then only one of them can run in the "Default" environment of a Rancher server instance.
|
|
||||||
|
|
||||||
##### Custom DNS name template
|
|
||||||
|
|
||||||
By default DNS entries are named `<service>.<stack>.<environment>.<domain>`.
|
|
||||||
You can specify a custom name template used to construct the subdomain part (left of the domain/zone name) of the DNS records. The following placeholders are supported:
|
|
||||||
|
|
||||||
* `%{{service_name}}`
|
|
||||||
* `%{{stack_name}}`
|
|
||||||
* `%{{environment_name}}`
|
|
||||||
|
|
||||||
**Example:**
|
|
||||||
|
|
||||||
`%{{stack_name}}-%{{service_name}}.statictext`
|
|
||||||
|
|
||||||
Make sure to only use characters in static text and separators that your provider allows in DNS names.
|
|
||||||
@@ -1,14 +0,0 @@
|
|||||||
dnsimple:
|
|
||||||
image: rancher/external-dns:v0.6.0
|
|
||||||
command: -provider=dnsimple
|
|
||||||
expose:
|
|
||||||
- 1000
|
|
||||||
environment:
|
|
||||||
DNSIMPLE_TOKEN: ${DNSIMPLE_TOKEN}
|
|
||||||
DNSIMPLE_EMAIL: ${DNSIMPLE_EMAIL}
|
|
||||||
ROOT_DOMAIN: ${ROOT_DOMAIN}
|
|
||||||
NAME_TEMPLATE: ${NAME_TEMPLATE}
|
|
||||||
TTL: ${TTL}
|
|
||||||
labels:
|
|
||||||
io.rancher.container.create_agent: "true"
|
|
||||||
io.rancher.container.agent.role: "external-dns"
|
|
||||||
@@ -1,47 +0,0 @@
|
|||||||
# notemplating
|
|
||||||
.catalog:
|
|
||||||
name: "DNSimple DNS"
|
|
||||||
version: "v0.6.0-rancher2"
|
|
||||||
description: "Rancher External DNS service powered by DNSimple. Requires Rancher version v1.1.0"
|
|
||||||
minimum_rancher_version: v1.6.0-rc1
|
|
||||||
maximum_rancher_version: v1.9.99
|
|
||||||
questions:
|
|
||||||
- variable: "DNSIMPLE_EMAIL"
|
|
||||||
label: "DNSimple Account Email Address"
|
|
||||||
description: "Email address associated with your DNSimple account"
|
|
||||||
type: "string"
|
|
||||||
required: true
|
|
||||||
- variable: "DNSIMPLE_TOKEN"
|
|
||||||
label: "DNSimple API Token"
|
|
||||||
description: "API token for your DNSimple account"
|
|
||||||
type: "string"
|
|
||||||
required: true
|
|
||||||
- variable: "ROOT_DOMAIN"
|
|
||||||
label: "Root Domain"
|
|
||||||
description: "The domain name managed by DNSimple."
|
|
||||||
type: "string"
|
|
||||||
required: true
|
|
||||||
- variable: "TTL"
|
|
||||||
label: "TTL"
|
|
||||||
description: "The resource record cache time to live (TTL), in seconds"
|
|
||||||
type: "int"
|
|
||||||
default: 60
|
|
||||||
required: false
|
|
||||||
- variable: "NAME_TEMPLATE"
|
|
||||||
label: "DNS Name Template"
|
|
||||||
description: |
|
|
||||||
Name template used to construct the subdomain part (left of the root domain name) of the DNS record names.
|
|
||||||
Supported placeholders: %{{service_name}}, %{{stack_name}}, %{{environment_name}}.
|
|
||||||
By default DNS entries will be named '<service>.<stack>.<environment>.<domain>'.
|
|
||||||
type: "string"
|
|
||||||
default: "%{{service_name}}.%{{stack_name}}.%{{environment_name}}"
|
|
||||||
required: false
|
|
||||||
|
|
||||||
dnsimple:
|
|
||||||
health_check:
|
|
||||||
port: 1000
|
|
||||||
interval: 15000
|
|
||||||
unhealthy_threshold: 2
|
|
||||||
request_line: GET / HTTP/1.0
|
|
||||||
healthy_threshold: 2
|
|
||||||
response_timeout: 2000
|
|
||||||
@@ -1,7 +1,7 @@
|
|||||||
name: DNSimple DNS
|
name: DNSimple DNS
|
||||||
description: |
|
description: |
|
||||||
Rancher External DNS service powered by DNSimple
|
Rancher External DNS service powered by DNSimple
|
||||||
version: v0.6.0-rancher2
|
version: v0.6.0-rancher1
|
||||||
category: External DNS
|
category: External DNS
|
||||||
labels:
|
labels:
|
||||||
io.rancher.orchestration.supported: 'cattle,mesos,swarm,kubernetes'
|
io.rancher.orchestration.supported: 'cattle,mesos,swarm,kubernetes'
|
||||||
|
|||||||
@@ -3,7 +3,6 @@
|
|||||||
version: "v0.5.0-rancher1"
|
version: "v0.5.0-rancher1"
|
||||||
description: "Rancher External DNS service powered by any RFC2136 compatible DNS"
|
description: "Rancher External DNS service powered by any RFC2136 compatible DNS"
|
||||||
minimum_rancher_version: v1.2.0-pre4-rc1
|
minimum_rancher_version: v1.2.0-pre4-rc1
|
||||||
maximum_rancher_version: v1.2.0-pre4-rc1
|
|
||||||
questions:
|
questions:
|
||||||
- variable: "RFC2136_HOST"
|
- variable: "RFC2136_HOST"
|
||||||
label: "Domain Name Server IP"
|
label: "Domain Name Server IP"
|
||||||
|
|||||||
@@ -3,7 +3,6 @@
|
|||||||
version: "v0.6.0-rancher1"
|
version: "v0.6.0-rancher1"
|
||||||
description: "Rancher External DNS service powered by any RFC2136 compatible DNS server. Requires Rancher version v1.1.0"
|
description: "Rancher External DNS service powered by any RFC2136 compatible DNS server. Requires Rancher version v1.1.0"
|
||||||
minimum_rancher_version: v1.2.0-pre4-rc1
|
minimum_rancher_version: v1.2.0-pre4-rc1
|
||||||
maximum_rancher_version: v1.2.0-pre4-rc1
|
|
||||||
questions:
|
questions:
|
||||||
- variable: "RFC2136_HOST"
|
- variable: "RFC2136_HOST"
|
||||||
label: "DNS Server IP"
|
label: "DNS Server IP"
|
||||||
|
|||||||
@@ -3,7 +3,6 @@
|
|||||||
version: "v0.6.2-rancher1"
|
version: "v0.6.2-rancher1"
|
||||||
description: "Rancher External DNS service powered by any RFC2136 compatible DNS server. Requires Rancher version v1.1.0"
|
description: "Rancher External DNS service powered by any RFC2136 compatible DNS server. Requires Rancher version v1.1.0"
|
||||||
minimum_rancher_version: v1.2.0-pre4-rc1
|
minimum_rancher_version: v1.2.0-pre4-rc1
|
||||||
maximum_rancher_version: v1.5.99
|
|
||||||
questions:
|
questions:
|
||||||
- variable: "RFC2136_HOST"
|
- variable: "RFC2136_HOST"
|
||||||
label: "DNS Server IP"
|
label: "DNS Server IP"
|
||||||
|
|||||||
@@ -1,52 +0,0 @@
|
|||||||
## DNS Update (RFC2136)
|
|
||||||
|
|
||||||
Rancher External DNS service powered by any RFC2136 compatible DNS server
|
|
||||||
|
|
||||||
#### Changelog
|
|
||||||
|
|
||||||
##### v0.6.2
|
|
||||||
|
|
||||||
* Adds support for disabling/enforcing external DNS on the host and service level using labels
|
|
||||||
* Adds support for insecure DNS Updates
|
|
||||||
* Fixes an issue with lingering TCP keep-alive connections to the Rancher Metadata service
|
|
||||||
|
|
||||||
#### Usage
|
|
||||||
|
|
||||||
##### Upgrade Notes
|
|
||||||
While upgrading from a version lower than v0.6.0 the TTL configuration value should not be changed. You may change it once the upgrade has been completed.
|
|
||||||
|
|
||||||
##### Limitation when running the service on multiple Rancher servers
|
|
||||||
|
|
||||||
When running multiple instances of the External DNS service configured to use the same domain name, then only one of them can run in the "Default" environment of a Rancher server instance.
|
|
||||||
|
|
||||||
##### Supported host labels
|
|
||||||
|
|
||||||
`io.rancher.host.external_dns_ip`
|
|
||||||
Override the IP address used in DNS records for containers running on the host. Defaults to the IP address the host is registered with in Rancher.
|
|
||||||
|
|
||||||
`io.rancher.host.external_dns`
|
|
||||||
Accepts 'true' (default) or 'false'
|
|
||||||
When this is set to 'false' no DNS records will ever be created for containers running on this host.
|
|
||||||
|
|
||||||
##### Supported service labels
|
|
||||||
|
|
||||||
`io.rancher.service.external_dns`
|
|
||||||
Accepts 'always', 'never' or 'auto' (default)
|
|
||||||
- `always`: Always create DNS records for this service
|
|
||||||
- `never`: Never create DNS records for this service
|
|
||||||
- `auto`: Create DNS records for this service if it exposes ports on the host
|
|
||||||
|
|
||||||
##### Custom DNS name template
|
|
||||||
|
|
||||||
By default DNS entries are named `<service>.<stack>.<environment>.<domain>`.
|
|
||||||
You can specify a custom name template used to construct the subdomain part (left of the domain/zone name) of the DNS records. The following placeholders are supported:
|
|
||||||
|
|
||||||
* `%{{service_name}}`
|
|
||||||
* `%{{stack_name}}`
|
|
||||||
* `%{{environment_name}}`
|
|
||||||
|
|
||||||
**Example:**
|
|
||||||
|
|
||||||
`%{{stack_name}}-%{{service_name}}.statictext`
|
|
||||||
|
|
||||||
Make sure to only use characters in static text and separators that your provider allows in DNS names.
|
|
||||||
@@ -1,17 +0,0 @@
|
|||||||
rfc2136dns:
|
|
||||||
image: rancher/external-dns:v0.6.2
|
|
||||||
command: -provider=rfc2136
|
|
||||||
expose:
|
|
||||||
- 1000
|
|
||||||
environment:
|
|
||||||
RFC2136_HOST: ${RFC2136_HOST}
|
|
||||||
RFC2136_PORT: ${RFC2136_PORT}
|
|
||||||
RFC2136_TSIG_KEYNAME: ${RFC2136_TSIG_KEYNAME}
|
|
||||||
RFC2136_TSIG_SECRET: ${RFC2136_TSIG_SECRET}
|
|
||||||
RFC2136_INSECURE: ${RFC2136_INSECURE}
|
|
||||||
ROOT_DOMAIN: ${ROOT_DOMAIN}
|
|
||||||
NAME_TEMPLATE: ${NAME_TEMPLATE}
|
|
||||||
TTL: ${TTL}
|
|
||||||
labels:
|
|
||||||
io.rancher.container.create_agent: "true"
|
|
||||||
io.rancher.container.agent.role: "external-dns"
|
|
||||||
@@ -1,64 +0,0 @@
|
|||||||
# notemplating
|
|
||||||
.catalog:
|
|
||||||
name: "DNS Update (RFC2136)"
|
|
||||||
version: "v0.6.2-rancher2"
|
|
||||||
description: "Rancher External DNS service powered by any RFC2136 compatible DNS server. Requires Rancher version v1.1.0"
|
|
||||||
minimum_rancher_version: v1.6.0-rc1
|
|
||||||
maximum_rancher_version: v1.6.0-rc1
|
|
||||||
questions:
|
|
||||||
- variable: "RFC2136_HOST"
|
|
||||||
label: "DNS Server IP"
|
|
||||||
description: "Server IP or Hostname"
|
|
||||||
type: "string"
|
|
||||||
required: true
|
|
||||||
- variable: "RFC2136_PORT"
|
|
||||||
label: "DNS Server Port"
|
|
||||||
description: "Server port"
|
|
||||||
type: "string"
|
|
||||||
required: true
|
|
||||||
default: "53"
|
|
||||||
- variable: "RFC2136_INSECURE"
|
|
||||||
description: "Disables TSIG authentication for DNS Update requests"
|
|
||||||
label: "Insecure DNS Update"
|
|
||||||
required: true
|
|
||||||
default: false
|
|
||||||
type: "boolean"
|
|
||||||
- variable: "RFC2136_TSIG_KEYNAME"
|
|
||||||
label: "TSIG Key Name"
|
|
||||||
description: "Name of the TSIG key used for authenticating with the DNS server"
|
|
||||||
type: "string"
|
|
||||||
required: false
|
|
||||||
- variable: "RFC2136_TSIG_SECRET"
|
|
||||||
label: "TSIG Key"
|
|
||||||
description: "TSIG secret key used for authenticating with the DNS server (HMAC-MD5, base64 encoded)"
|
|
||||||
type: "string"
|
|
||||||
required: false
|
|
||||||
- variable: "TTL"
|
|
||||||
label: "TTL"
|
|
||||||
description: "The resource record cache time to live (TTL), in seconds"
|
|
||||||
type: "int"
|
|
||||||
default: 60
|
|
||||||
required: false
|
|
||||||
- variable: "ROOT_DOMAIN"
|
|
||||||
label: "Zone name"
|
|
||||||
description: "The name of an existing zone in which to create the records."
|
|
||||||
type: "string"
|
|
||||||
required: true
|
|
||||||
- variable: "NAME_TEMPLATE"
|
|
||||||
label: "DNS Name Template"
|
|
||||||
description: |
|
|
||||||
Name template used to construct the subdomain part (left of the zone/domain name) of the DNS record names.
|
|
||||||
Supported placeholders: %{{service_name}}, %{{stack_name}}, %{{environment_name}}.
|
|
||||||
By default DNS entries will be named '<service>.<stack>.<environment>.<domain>'.
|
|
||||||
type: "string"
|
|
||||||
default: "%{{service_name}}.%{{stack_name}}.%{{environment_name}}"
|
|
||||||
required: false
|
|
||||||
|
|
||||||
rfc2136dns:
|
|
||||||
health_check:
|
|
||||||
port: 1000
|
|
||||||
interval: 5000
|
|
||||||
unhealthy_threshold: 3
|
|
||||||
request_line: GET / HTTP/1.0
|
|
||||||
healthy_threshold: 2
|
|
||||||
response_timeout: 2000
|
|
||||||
@@ -1,60 +0,0 @@
|
|||||||
## DNS Update (RFC2136)
|
|
||||||
|
|
||||||
Rancher External DNS service powered by any RFC2136 compatible DNS server
|
|
||||||
|
|
||||||
#### Changelog
|
|
||||||
|
|
||||||
##### v0.6.2
|
|
||||||
|
|
||||||
* Adds support for disabling/enforcing external DNS on the host and service level using labels
|
|
||||||
* Adds support for insecure DNS Updates
|
|
||||||
* Fixes an issue with lingering TCP keep-alive connections to the Rancher Metadata service
|
|
||||||
|
|
||||||
#### Usage
|
|
||||||
|
|
||||||
##### Upgrade Notes
|
|
||||||
While upgrading from a version lower than v0.6.0 the TTL configuration value should not be changed. You may change it once the upgrade has been completed.
|
|
||||||
|
|
||||||
##### Limitation when running the service on multiple Rancher servers
|
|
||||||
|
|
||||||
When running multiple instances of the External DNS service configured to use the same domain name, then only one of them can run in the "Default" environment of a Rancher server instance.
|
|
||||||
|
|
||||||
##### Supported host labels
|
|
||||||
|
|
||||||
`io.rancher.host.external_dns_ip`
|
|
||||||
Override the IP address used in DNS records for containers running on the host. Defaults to the IP address the host is registered with in Rancher.
|
|
||||||
|
|
||||||
`io.rancher.host.external_dns`
|
|
||||||
Accepts 'true' (default) or 'false'
|
|
||||||
When this is set to 'false' no DNS records will ever be created for containers running on this host.
|
|
||||||
|
|
||||||
##### Supported service labels
|
|
||||||
|
|
||||||
`io.rancher.service.external_dns`
|
|
||||||
Accepts 'always', 'never' or 'auto' (default)
|
|
||||||
- `always`: Always create DNS records for this service
|
|
||||||
- `never`: Never create DNS records for this service
|
|
||||||
- `auto`: Create DNS records for this service if it exposes ports on the host
|
|
||||||
|
|
||||||
|
|
||||||
`io.rancher.service.external_dns_name_template`
|
|
||||||
Accepts valid DNS name template
|
|
||||||
|
|
||||||
By default DNS entries are named based on default template defined on dnsupdate service.
|
|
||||||
You can customize it per service by assigning `io.rancher.service.external_dns_name_template` label to each service.
|
|
||||||
dnsupdate will use this template instead of default one when creating dns record for related service.
|
|
||||||
|
|
||||||
##### Custom DNS name template
|
|
||||||
|
|
||||||
By default DNS entries are named `<service>.<stack>.<environment>.<domain>`.
|
|
||||||
You can specify a custom name template used to construct the subdomain part (left of the domain/zone name) of the DNS records. The following placeholders are supported:
|
|
||||||
|
|
||||||
* `%{{service_name}}`
|
|
||||||
* `%{{stack_name}}`
|
|
||||||
* `%{{environment_name}}`
|
|
||||||
|
|
||||||
**Example:**
|
|
||||||
|
|
||||||
`%{{stack_name}}-%{{service_name}}.statictext`
|
|
||||||
|
|
||||||
Make sure to only use characters in static text and separators that your provider allows in DNS names.
|
|
||||||
@@ -1,17 +0,0 @@
|
|||||||
rfc2136dns:
|
|
||||||
image: rancher/external-dns:v0.7.2
|
|
||||||
command: -provider=rfc2136
|
|
||||||
expose:
|
|
||||||
- 1000
|
|
||||||
environment:
|
|
||||||
RFC2136_HOST: ${RFC2136_HOST}
|
|
||||||
RFC2136_PORT: ${RFC2136_PORT}
|
|
||||||
RFC2136_TSIG_KEYNAME: ${RFC2136_TSIG_KEYNAME}
|
|
||||||
RFC2136_TSIG_SECRET: ${RFC2136_TSIG_SECRET}
|
|
||||||
RFC2136_INSECURE: ${RFC2136_INSECURE}
|
|
||||||
ROOT_DOMAIN: ${ROOT_DOMAIN}
|
|
||||||
NAME_TEMPLATE: ${NAME_TEMPLATE}
|
|
||||||
TTL: ${TTL}
|
|
||||||
labels:
|
|
||||||
io.rancher.container.create_agent: "true"
|
|
||||||
io.rancher.container.agent.role: "external-dns"
|
|
||||||
@@ -1,64 +0,0 @@
|
|||||||
# notemplating
|
|
||||||
.catalog:
|
|
||||||
name: "DNS Update (RFC2136)"
|
|
||||||
version: "v0.7.2-rancher1"
|
|
||||||
description: "Rancher External DNS service powered by any RFC2136 compatible DNS server. Requires Rancher version v1.1.0"
|
|
||||||
minimum_rancher_version: v1.6.0-rc1
|
|
||||||
maximum_rancher_version: v1.9.99
|
|
||||||
questions:
|
|
||||||
- variable: "RFC2136_HOST"
|
|
||||||
label: "DNS Server IP"
|
|
||||||
description: "Server IP or Hostname"
|
|
||||||
type: "string"
|
|
||||||
required: true
|
|
||||||
- variable: "RFC2136_PORT"
|
|
||||||
label: "DNS Server Port"
|
|
||||||
description: "Server port"
|
|
||||||
type: "string"
|
|
||||||
required: true
|
|
||||||
default: "53"
|
|
||||||
- variable: "RFC2136_INSECURE"
|
|
||||||
description: "Disables TSIG authentication for DNS Update requests"
|
|
||||||
label: "Insecure DNS Update"
|
|
||||||
required: true
|
|
||||||
default: false
|
|
||||||
type: "boolean"
|
|
||||||
- variable: "RFC2136_TSIG_KEYNAME"
|
|
||||||
label: "TSIG Key Name"
|
|
||||||
description: "Name of the TSIG key used for authenticating with the DNS server"
|
|
||||||
type: "string"
|
|
||||||
required: false
|
|
||||||
- variable: "RFC2136_TSIG_SECRET"
|
|
||||||
label: "TSIG Key"
|
|
||||||
description: "TSIG secret key used for authenticating with the DNS server (HMAC-MD5, base64 encoded)"
|
|
||||||
type: "string"
|
|
||||||
required: false
|
|
||||||
- variable: "TTL"
|
|
||||||
label: "TTL"
|
|
||||||
description: "The resource record cache time to live (TTL), in seconds"
|
|
||||||
type: "int"
|
|
||||||
default: 60
|
|
||||||
required: false
|
|
||||||
- variable: "ROOT_DOMAIN"
|
|
||||||
label: "Zone name"
|
|
||||||
description: "The name of an existing zone in which to create the records."
|
|
||||||
type: "string"
|
|
||||||
required: true
|
|
||||||
- variable: "NAME_TEMPLATE"
|
|
||||||
label: "DNS Name Template"
|
|
||||||
description: |
|
|
||||||
Name template used to construct the subdomain part (left of the zone/domain name) of the DNS record names.
|
|
||||||
Supported placeholders: %{{service_name}}, %{{stack_name}}, %{{environment_name}}.
|
|
||||||
By default DNS entries will be named '<service>.<stack>.<environment>.<domain>'.
|
|
||||||
type: "string"
|
|
||||||
default: "%{{service_name}}.%{{stack_name}}.%{{environment_name}}"
|
|
||||||
required: false
|
|
||||||
|
|
||||||
rfc2136dns:
|
|
||||||
health_check:
|
|
||||||
port: 1000
|
|
||||||
interval: 5000
|
|
||||||
unhealthy_threshold: 3
|
|
||||||
request_line: GET / HTTP/1.0
|
|
||||||
healthy_threshold: 2
|
|
||||||
response_timeout: 2000
|
|
||||||
@@ -1,7 +1,7 @@
|
|||||||
name: DNS Update (RFC2136)
|
name: DNS Update (RFC2136)
|
||||||
description: |
|
description: |
|
||||||
Rancher External DNS service powered by any RFC2136 compatible DNS
|
Rancher External DNS service powered by any RFC2136 compatible DNS
|
||||||
version: v0.7.2-rancher1
|
version: v0.6.2-rancher1
|
||||||
category: External DNS
|
category: External DNS
|
||||||
labels:
|
labels:
|
||||||
io.rancher.orchestration.supported: 'cattle,mesos,swarm,kubernetes'
|
io.rancher.orchestration.supported: 'cattle,mesos,swarm,kubernetes'
|
||||||
|
|||||||
@@ -1,13 +0,0 @@
|
|||||||
gandidns:
|
|
||||||
image: rancher/external-dns:v0.7.2
|
|
||||||
command: -provider=gandi
|
|
||||||
expose:
|
|
||||||
- 1000
|
|
||||||
environment:
|
|
||||||
GANDI_APIKEY: ${GANDI_APIKEY}
|
|
||||||
ROOT_DOMAIN: ${ROOT_DOMAIN}
|
|
||||||
NAME_TEMPLATE: ${NAME_TEMPLATE}
|
|
||||||
TTL: ${TTL}
|
|
||||||
labels:
|
|
||||||
io.rancher.container.create_agent: "true"
|
|
||||||
io.rancher.container.agent.role: "external-dns"
|
|
||||||
@@ -1,43 +0,0 @@
|
|||||||
# notemplating
|
|
||||||
.catalog:
|
|
||||||
name: "Gandi DNS"
|
|
||||||
version: "v0.1.0"
|
|
||||||
description: "Rancher External DNS service powered by Gandi. Requires Rancher version v1.1.0"
|
|
||||||
maintainer: "Frederic Leger <contact@webofmars.com>"
|
|
||||||
minimum_rancher_version: v1.6.0-rc1
|
|
||||||
maximum_rancher_version: v1.9.99
|
|
||||||
questions:
|
|
||||||
- variable: "GANDI_APIKEY"
|
|
||||||
label: "Gandi API key"
|
|
||||||
description: "API key for your Gandi account"
|
|
||||||
type: "string"
|
|
||||||
required: true
|
|
||||||
- variable: "ROOT_DOMAIN"
|
|
||||||
label: "Root Domain"
|
|
||||||
description: "The domain name managed by Gandi."
|
|
||||||
type: "string"
|
|
||||||
required: true
|
|
||||||
- variable: "TTL"
|
|
||||||
label: "TTL"
|
|
||||||
description: "The resource record cache time to live (TTL), in seconds (minimum 300)"
|
|
||||||
type: "int"
|
|
||||||
default: 300
|
|
||||||
required: false
|
|
||||||
- variable: "NAME_TEMPLATE"
|
|
||||||
label: "DNS Name Template"
|
|
||||||
description: |
|
|
||||||
Name template used to construct the subdomain part (left of the root domain name) of the DNS record names.
|
|
||||||
Supported placeholders: %{{service_name}}, %{{stack_name}}, %{{environment_name}}.
|
|
||||||
By default DNS entries will be named '<service>.<stack>.<environment>.<domain>'.
|
|
||||||
type: "string"
|
|
||||||
default: "%{{service_name}}.%{{stack_name}}.%{{environment_name}}"
|
|
||||||
required: false
|
|
||||||
|
|
||||||
gandidns:
|
|
||||||
health_check:
|
|
||||||
port: 1000
|
|
||||||
interval: 15000
|
|
||||||
unhealthy_threshold: 2
|
|
||||||
request_line: GET / HTTP/1.0
|
|
||||||
healthy_threshold: 2
|
|
||||||
response_timeout: 2000
|
|
||||||
Binary file not shown.
|
Before Width: | Height: | Size: 17 KiB |
@@ -1,7 +0,0 @@
|
|||||||
name: GANDI DNS
|
|
||||||
description: |
|
|
||||||
Rancher External DNS service powered by Gandi.net
|
|
||||||
version: v0.1.0
|
|
||||||
category: External DNS
|
|
||||||
labels:
|
|
||||||
io.rancher.orchestration.supported: 'cattle,mesos,swarm,kubernetes'
|
|
||||||
@@ -1,7 +1,6 @@
|
|||||||
.catalog:
|
.catalog:
|
||||||
version: v0.28.1
|
version: v0.28.1
|
||||||
minimum_rancher_version: v1.2.0-pre4-rc1
|
minimum_rancher_version: v1.2.0-pre4-rc1
|
||||||
maximum_rancher_version: v1.9.99
|
|
||||||
questions:
|
questions:
|
||||||
- variable: ZOOKEEPER_SCALE
|
- variable: ZOOKEEPER_SCALE
|
||||||
label: ZooKeeper Count
|
label: ZooKeeper Count
|
||||||
|
|||||||
@@ -3,7 +3,6 @@
|
|||||||
version: "v0.2.0-rancher1"
|
version: "v0.2.0-rancher1"
|
||||||
description: "Rancher External DNS service powered by PointHQ. Requires Rancher version 0.44.0"
|
description: "Rancher External DNS service powered by PointHQ. Requires Rancher version 0.44.0"
|
||||||
minimum_rancher_version: v1.2.0-pre4-rc1
|
minimum_rancher_version: v1.2.0-pre4-rc1
|
||||||
maximum_rancher_version: v1.9.99
|
|
||||||
questions:
|
questions:
|
||||||
- variable: "POINTHQ_EMAIL"
|
- variable: "POINTHQ_EMAIL"
|
||||||
label: "PointHQ account email address"
|
label: "PointHQ account email address"
|
||||||
|
|||||||
@@ -3,7 +3,6 @@
|
|||||||
version: "v0.2.1-rancher1"
|
version: "v0.2.1-rancher1"
|
||||||
description: "Rancher External DNS service powered by PointHQ. Requires Rancher version 0.44.0"
|
description: "Rancher External DNS service powered by PointHQ. Requires Rancher version 0.44.0"
|
||||||
minimum_rancher_version: v1.2.0-pre4-rc1
|
minimum_rancher_version: v1.2.0-pre4-rc1
|
||||||
maximum_rancher_version: v1.9.99
|
|
||||||
questions:
|
questions:
|
||||||
- variable: "POINTHQ_EMAIL"
|
- variable: "POINTHQ_EMAIL"
|
||||||
label: "PointHQ account email address"
|
label: "PointHQ account email address"
|
||||||
|
|||||||
@@ -1,46 +0,0 @@
|
|||||||
**_Portainer_** is a lightweight management UI which allows you to **easily** manage your Docker host or Swarm cluster.
|
|
||||||
|
|
||||||
**_Portainer_** is meant to be as **simple** to deploy as it is to use. It consists of a single container that can run on any Docker engine (Docker for Linux and Docker for Windows are supported).
|
|
||||||
|
|
||||||
**_Portainer_** allows you to manage your Docker containers, images, volumes, networks and more ! It is compatible with the *standalone Docker* engine and with *Docker Swarm*.
|
|
||||||
|
|
||||||
## Getting started
|
|
||||||
|
|
||||||
Once you have deploy the stack you can access the Portainer UI at `http://<RANCHER SERVER>/r/projects/<PROJECT ID>/portainer/`.
|
|
||||||
For example
|
|
||||||
|
|
||||||
http://rancher-server:8080/r/projects/1a5/portainer/
|
|
||||||
|
|
||||||
Note, the trailing / is important in the URL
|
|
||||||
|
|
||||||
## Demo
|
|
||||||
|
|
||||||
<img src="http://portainer.io/images/screenshots/portainer.gif" width="77%"/>
|
|
||||||
|
|
||||||
You can try out the public demo instance: http://demo.portainer.io/ (login with the username **demo** and the password **tryportainer**).
|
|
||||||
|
|
||||||
Please note that the public demo cluster is **reset every 15min**.
|
|
||||||
|
|
||||||
## Getting help
|
|
||||||
|
|
||||||
* Documentation: https://portainer.readthedocs.io
|
|
||||||
* Issues: https://github.com/portainer/portainer/issues
|
|
||||||
* FAQ: https://portainer.readthedocs.io/en/latest/faq.html
|
|
||||||
* Gitter (chat): https://gitter.im/portainer/Lobby
|
|
||||||
* Slack: http://portainer.io/slack/
|
|
||||||
|
|
||||||
## Reporting bugs and contributing
|
|
||||||
|
|
||||||
* Want to report a bug or request a feature? Please open [an issue](https://github.com/portainer/portainer/issues/new).
|
|
||||||
* Want to help us build **_portainer_**? Follow our [contribution guidelines](https://portainer.readthedocs.io/en/latest/contribute.html) to build it locally and make a pull request. We need all the help we can get!
|
|
||||||
|
|
||||||
## Limitations
|
|
||||||
|
|
||||||
**_Portainer_** has full support for the following Docker versions:
|
|
||||||
|
|
||||||
* Docker 1.10 to Docker 1.12 (including `swarm-mode`)
|
|
||||||
* Docker Swarm >= 1.2.3
|
|
||||||
|
|
||||||
Partial support for the following Docker versions (some features may not be available):
|
|
||||||
|
|
||||||
* Docker 1.9
|
|
||||||
@@ -1,15 +0,0 @@
|
|||||||
portainer:
|
|
||||||
labels:
|
|
||||||
io.rancher.sidekicks: ui
|
|
||||||
io.rancher.container.create_agent: true
|
|
||||||
io.rancher.container.agent.role: environment
|
|
||||||
image: rancher/portainer-agent:v0.1.0
|
|
||||||
volumes:
|
|
||||||
- /config
|
|
||||||
|
|
||||||
ui:
|
|
||||||
image: portainer/portainer:pr572
|
|
||||||
command: --no-auth --external-endpoints=/config/config.json --sync-interval=5s -p :80
|
|
||||||
volumes_from:
|
|
||||||
- portainer
|
|
||||||
net: container:portainer
|
|
||||||
@@ -1,7 +0,0 @@
|
|||||||
.catalog:
|
|
||||||
name: "Portainer"
|
|
||||||
version: "1.11.4"
|
|
||||||
description: Open-source lightweight management UI for a Docker host or Swarm cluster
|
|
||||||
minimum_rancher_version: v1.5.0-rc1
|
|
||||||
maximum_rancher_version: v1.9.99
|
|
||||||
|
|
||||||
Binary file not shown.
|
Before Width: | Height: | Size: 23 KiB |
@@ -1,5 +0,0 @@
|
|||||||
name: portainer
|
|
||||||
description: |
|
|
||||||
Portainer is an open-source lightweight management UI which allows you to easily manage your Docker host or Swarm cluster
|
|
||||||
version: 1.11.4
|
|
||||||
category: Management
|
|
||||||
@@ -3,7 +3,6 @@
|
|||||||
version: "v0.5.0-rancher1"
|
version: "v0.5.0-rancher1"
|
||||||
description: Rancher External DNS service for PowerDNS.
|
description: Rancher External DNS service for PowerDNS.
|
||||||
minimum_rancher_version: v1.2.0-pre4-rc1
|
minimum_rancher_version: v1.2.0-pre4-rc1
|
||||||
maximum_rancher_version: v1.9.99
|
|
||||||
uuid: powerdns-external-dns:v0.5.0-rancher1
|
uuid: powerdns-external-dns:v0.5.0-rancher1
|
||||||
questions:
|
questions:
|
||||||
- variable: POWERDNS_URL
|
- variable: POWERDNS_URL
|
||||||
|
|||||||
@@ -1,14 +0,0 @@
|
|||||||
powerdns:
|
|
||||||
image: rancher/external-dns:v0.7.1
|
|
||||||
command: "-provider=powerdns"
|
|
||||||
expose:
|
|
||||||
- 1000
|
|
||||||
environment:
|
|
||||||
POWERDNS_API_KEY: ${POWERDNS_API_KEY}
|
|
||||||
POWERDNS_URL: ${POWERDNS_URL}
|
|
||||||
ROOT_DOMAIN: ${ROOT_DOMAIN}
|
|
||||||
TTL: ${TTL}
|
|
||||||
labels:
|
|
||||||
io.rancher.container.pull_image: always
|
|
||||||
io.rancher.container.create_agent: "true"
|
|
||||||
io.rancher.container.agent.role: "external-dns"
|
|
||||||
@@ -1,39 +0,0 @@
|
|||||||
.catalog:
|
|
||||||
name: "PowerDNS External"
|
|
||||||
version: "v0.7.1"
|
|
||||||
description: Rancher External DNS service for PowerDNS.
|
|
||||||
minimum_rancher_version: v1.2.0-pre4-rc1
|
|
||||||
maximum_rancher_version: v1.9.99
|
|
||||||
uuid: powerdns-external-dns:v0.7.1
|
|
||||||
questions:
|
|
||||||
- variable: POWERDNS_URL
|
|
||||||
label: PowerDNS URL
|
|
||||||
type: string
|
|
||||||
description: http[s] base url to PowerDNS
|
|
||||||
required: true
|
|
||||||
default: http://powerdns:8100
|
|
||||||
- variable: POWERDNS_API_KEY
|
|
||||||
label: PowerDNS API Key
|
|
||||||
type: password
|
|
||||||
description: API Key for PowerDNS
|
|
||||||
required: true
|
|
||||||
- variable: TTL
|
|
||||||
label: TTL
|
|
||||||
description: "The resource record cache time to live (TTL), in seconds"
|
|
||||||
type: int
|
|
||||||
default: 299
|
|
||||||
required: false
|
|
||||||
- variable: "ROOT_DOMAIN"
|
|
||||||
label: "Hosted zone name"
|
|
||||||
description: "Hosted zone name (zone has to be pre-created). DNS entries will be created for <service>.<stack>.<environment>.<hosted zone>"
|
|
||||||
type: "string"
|
|
||||||
required: true
|
|
||||||
|
|
||||||
powerdns:
|
|
||||||
health_check:
|
|
||||||
port: 1000
|
|
||||||
interval: 30000
|
|
||||||
unhealthy_threshold: 3
|
|
||||||
request_line: GET / HTTP/1.0
|
|
||||||
healthy_threshold: 2
|
|
||||||
response_timeout: 2000
|
|
||||||
@@ -1,7 +1,7 @@
|
|||||||
name: PowerDNS External
|
name: PowerDNS External
|
||||||
description: |
|
description: |
|
||||||
Rancher External DNS service for PowerDNS
|
Rancher External DNS service for PowerDNS
|
||||||
version: v0.7.1
|
version: v0.5.0-rancher1
|
||||||
category: External DNS
|
category: External DNS
|
||||||
labels:
|
labels:
|
||||||
io.rancher.orchestration.supported: 'cattle,mesos,swarm,kubernetes'
|
io.rancher.orchestration.supported: 'cattle,mesos,swarm,kubernetes'
|
||||||
|
|||||||
@@ -1,7 +1,6 @@
|
|||||||
.catalog:
|
.catalog:
|
||||||
version: v1.12.3
|
version: v1.12.3
|
||||||
minimum_rancher_version: 1.2.0-pre4-rc1
|
minimum_rancher_version: 1.2.0-pre4-rc1
|
||||||
maximum_rancher_version: v1.9.99
|
|
||||||
questions:
|
questions:
|
||||||
- variable: MANAGER_SCALE
|
- variable: MANAGER_SCALE
|
||||||
label: Number of Managers
|
label: Number of Managers
|
||||||
|
|||||||
@@ -1,7 +1,6 @@
|
|||||||
.catalog:
|
.catalog:
|
||||||
version: v1.12.3-2
|
version: v1.12.3-2
|
||||||
minimum_rancher_version: 1.2.0-pre4-rc1
|
minimum_rancher_version: 1.2.0-pre4-rc1
|
||||||
maximum_rancher_version: v1.9.99
|
|
||||||
questions:
|
questions:
|
||||||
- variable: MANAGER_SCALE
|
- variable: MANAGER_SCALE
|
||||||
label: Number of Managers
|
label: Number of Managers
|
||||||
|
|||||||
@@ -1,7 +1,6 @@
|
|||||||
.catalog:
|
.catalog:
|
||||||
version: v1.12.3-3
|
version: v1.12.3-3
|
||||||
minimum_rancher_version: 1.2.2
|
minimum_rancher_version: 1.2.2
|
||||||
maximum_rancher_version: v1.9.99
|
|
||||||
questions:
|
questions:
|
||||||
- variable: MANAGER_SCALE
|
- variable: MANAGER_SCALE
|
||||||
label: Number of Managers
|
label: Number of Managers
|
||||||
|
|||||||
@@ -1,7 +1,6 @@
|
|||||||
.catalog:
|
.catalog:
|
||||||
version: v1.13.0-beta.1
|
version: v1.13.0-beta.1
|
||||||
minimum_rancher_version: 1.2.2
|
minimum_rancher_version: 1.2.2
|
||||||
maximum_rancher_version: v1.9.99
|
|
||||||
questions:
|
questions:
|
||||||
- variable: MANAGER_SCALE
|
- variable: MANAGER_SCALE
|
||||||
label: Number of Managers
|
label: Number of Managers
|
||||||
|
|||||||
@@ -9,42 +9,23 @@ spec:
|
|||||||
template:
|
template:
|
||||||
spec:
|
spec:
|
||||||
containers:
|
containers:
|
||||||
- image: husseingalal/mongo-k8s-config:v0.2.0
|
|
||||||
name: mongo-config
|
|
||||||
volumeMounts:
|
|
||||||
- mountPath: /opt/rancher/bin
|
|
||||||
name: utility
|
|
||||||
stdin: true
|
|
||||||
tty: true
|
|
||||||
- name: mongo-sec
|
- name: mongo-sec
|
||||||
image: mongo:3.4
|
image: husseingalal/mongo-k8s
|
||||||
ports:
|
ports:
|
||||||
- containerPort: 27017
|
- containerPort: 27017
|
||||||
volumeMounts:
|
volumeMounts:
|
||||||
- name: mongo-datadir
|
- name: mongo-ephermal-storage
|
||||||
mountPath: /data/db
|
mountPath: /data/db
|
||||||
- mountPath: /opt/rancher/bin
|
|
||||||
name: utility
|
|
||||||
command:
|
command:
|
||||||
- /opt/rancher/bin/run.sh
|
- /run.sh
|
||||||
- mongod
|
- mongod
|
||||||
- "--replSet"
|
- "--replSet"
|
||||||
- rs0
|
- rs0
|
||||||
- "--smallfiles"
|
- "--smallfiles"
|
||||||
- "--noprealloc"
|
- "--noprealloc"
|
||||||
env:
|
|
||||||
- name: PRIMARY
|
|
||||||
value: "false"
|
|
||||||
- name: POD_IP
|
|
||||||
valueFrom:
|
|
||||||
fieldRef:
|
|
||||||
fieldPath: status.podIP
|
|
||||||
volumes:
|
volumes:
|
||||||
- name: mongo-datadir
|
- name: mongo-ephermal-storage
|
||||||
hostPath:
|
emptyDir: {}
|
||||||
path: ${mongo_volume}
|
|
||||||
- name: utility
|
|
||||||
emptyDir: {}
|
|
||||||
metadata:
|
metadata:
|
||||||
labels:
|
labels:
|
||||||
secondary: "true"
|
secondary: "true"
|
||||||
|
|||||||
@@ -9,49 +9,33 @@ spec:
|
|||||||
- port: 27017
|
- port: 27017
|
||||||
targetPort: 27017
|
targetPort: 27017
|
||||||
selector:
|
selector:
|
||||||
name: mongo-primary
|
name: mongo-master
|
||||||
---
|
---
|
||||||
apiVersion: v1
|
apiVersion: v1
|
||||||
kind: Pod
|
kind: Pod
|
||||||
metadata:
|
metadata:
|
||||||
labels:
|
labels:
|
||||||
name: mongo-primary
|
name: mongo-master
|
||||||
name: mongo-primary
|
name: mongo-master
|
||||||
spec:
|
spec:
|
||||||
containers:
|
containers:
|
||||||
- name: mongo-config
|
- name: mongo-master
|
||||||
image: husseingalal/mongo-k8s-config:v0.2.0
|
image: "husseingalal/mongo-k8s"
|
||||||
volumeMounts:
|
|
||||||
- mountPath: /opt/rancher/bin
|
|
||||||
name: utility
|
|
||||||
stdin: true
|
|
||||||
tty: true
|
|
||||||
- name: mongo-primary
|
|
||||||
image: mongo:3.4
|
|
||||||
env:
|
env:
|
||||||
- name: PRIMARY
|
- name: PRIMARY
|
||||||
value: "true"
|
value: "true"
|
||||||
- name: POD_IP
|
|
||||||
valueFrom:
|
|
||||||
fieldRef:
|
|
||||||
fieldPath: status.podIP
|
|
||||||
ports:
|
ports:
|
||||||
- containerPort: 27017
|
- containerPort: 27017
|
||||||
command:
|
command:
|
||||||
- /opt/rancher/bin/run.sh
|
- /run.sh
|
||||||
- mongod
|
- mongod
|
||||||
- "--replSet"
|
- "--replSet"
|
||||||
- rs0
|
- rs0
|
||||||
- "--smallfiles"
|
- "--smallfiles"
|
||||||
- "--noprealloc"
|
- "--noprealloc"
|
||||||
volumeMounts:
|
volumeMounts:
|
||||||
- mountPath: /opt/rancher/bin
|
|
||||||
name: utility
|
|
||||||
- mountPath: /data/db
|
- mountPath: /data/db
|
||||||
name: mongo-datadir
|
name: mongo-primary-ephermal-storage
|
||||||
volumes:
|
volumes:
|
||||||
- name: mongo-datadir
|
- name: mongo-primary-ephermal-storage
|
||||||
hostPath:
|
emptyDir: {}
|
||||||
path: ${mongo_volume}
|
|
||||||
- name: utility
|
|
||||||
emptyDir: {}
|
|
||||||
|
|||||||
@@ -2,7 +2,6 @@
|
|||||||
name: MongoDB
|
name: MongoDB
|
||||||
version: 3.2-rancher1
|
version: 3.2-rancher1
|
||||||
description: MongoDB Replica Set
|
description: MongoDB Replica Set
|
||||||
maximum_rancher_version: v1.3.99
|
|
||||||
questions:
|
questions:
|
||||||
- variable: "sec_no"
|
- variable: "sec_no"
|
||||||
label: "Number of Secondary nodes"
|
label: "Number of Secondary nodes"
|
||||||
@@ -10,8 +9,3 @@
|
|||||||
type: int
|
type: int
|
||||||
default: 2
|
default: 2
|
||||||
description: "should be even number"
|
description: "should be even number"
|
||||||
- variable: "mongo_volume"
|
|
||||||
label: "hostpath volume for mongodb"
|
|
||||||
required: true
|
|
||||||
type: string
|
|
||||||
default: "/data/db"
|
|
||||||
|
|||||||
@@ -4,7 +4,6 @@
|
|||||||
description: "Prometheus Monitoring Solution"
|
description: "Prometheus Monitoring Solution"
|
||||||
uuid: prometheus-1
|
uuid: prometheus-1
|
||||||
minimum_rancher_version: v0.56.0
|
minimum_rancher_version: v0.56.0
|
||||||
maximum_rancher_version: v1.3.99
|
|
||||||
questions:
|
questions:
|
||||||
- variable: "cattle_config_url"
|
- variable: "cattle_config_url"
|
||||||
label: "Rancher Server URL"
|
label: "Rancher Server URL"
|
||||||
|
|||||||
@@ -2,7 +2,6 @@
|
|||||||
name: "K8s Example Cassandra"
|
name: "K8s Example Cassandra"
|
||||||
version: "1.0.0"
|
version: "1.0.0"
|
||||||
description: ""
|
description: ""
|
||||||
maximum_rancher_version: v1.3.99
|
|
||||||
questions:
|
questions:
|
||||||
- variable: "NODE_COUNT"
|
- variable: "NODE_COUNT"
|
||||||
label: "Initial number of Cassandra nodes"
|
label: "Initial number of Cassandra nodes"
|
||||||
|
|||||||
@@ -4,7 +4,6 @@
|
|||||||
(Experimental) Cloud 9 SDK
|
(Experimental) Cloud 9 SDK
|
||||||
version: 3.0-k8s1
|
version: 3.0-k8s1
|
||||||
minimum_rancher_version: v1.0.0
|
minimum_rancher_version: v1.0.0
|
||||||
maximum_rancher_version: v1.3.99
|
|
||||||
maintainer: "Raul Sanchez <rawmind@gmail.com>"
|
maintainer: "Raul Sanchez <rawmind@gmail.com>"
|
||||||
uuid: cloud9-0
|
uuid: cloud9-0
|
||||||
questions:
|
questions:
|
||||||
|
|||||||
@@ -2,7 +2,6 @@
|
|||||||
name: Ghost
|
name: Ghost
|
||||||
version: 0.7.8-rancher1
|
version: 0.7.8-rancher1
|
||||||
description: Open source publishing platform
|
description: Open source publishing platform
|
||||||
maximum_rancher_version: v1.3.99
|
|
||||||
questions:
|
questions:
|
||||||
- variable: "mysql_root_pass"
|
- variable: "mysql_root_pass"
|
||||||
label: "MySQL root password"
|
label: "MySQL root password"
|
||||||
|
|||||||
@@ -2,7 +2,6 @@
|
|||||||
name: "K8s Guestbook"
|
name: "K8s Guestbook"
|
||||||
version: "1.0.0"
|
version: "1.0.0"
|
||||||
description: "It's a guestbook, I guess"
|
description: "It's a guestbook, I guess"
|
||||||
maximum_rancher_version: v1.3.99
|
|
||||||
questions:
|
questions:
|
||||||
- variable: "SERVICE_NAME"
|
- variable: "SERVICE_NAME"
|
||||||
label: "Service Name"
|
label: "Service Name"
|
||||||
|
|||||||
@@ -2,7 +2,6 @@
|
|||||||
name: Heapster Grafana InfluxDB
|
name: Heapster Grafana InfluxDB
|
||||||
version: canary-rancher1
|
version: canary-rancher1
|
||||||
description: A cluster-wide aggregator of monitoring and event data.
|
description: A cluster-wide aggregator of monitoring and event data.
|
||||||
maximum_rancher_version: v1.3.99
|
|
||||||
questions:
|
questions:
|
||||||
- variable: "GRAFANA_PORT"
|
- variable: "GRAFANA_PORT"
|
||||||
label: "Node port for Grafana"
|
label: "Node port for Grafana"
|
||||||
|
|||||||
@@ -4,7 +4,6 @@
|
|||||||
description: |
|
description: |
|
||||||
(Experimental) Apache Kafka cluster.
|
(Experimental) Apache Kafka cluster.
|
||||||
minimum_rancher_version: v0.59.0
|
minimum_rancher_version: v0.59.0
|
||||||
maximum_rancher_version: v1.3.99
|
|
||||||
maintainer: "Raul Sanchez <rawmind@gmail.com>"
|
maintainer: "Raul Sanchez <rawmind@gmail.com>"
|
||||||
uuid: kafka-0
|
uuid: kafka-0
|
||||||
questions:
|
questions:
|
||||||
|
|||||||
@@ -1,33 +0,0 @@
|
|||||||
# Apache Kafka (Experimental)
|
|
||||||
|
|
||||||
### Info:
|
|
||||||
|
|
||||||
This template creates, scale in and scale out a multinodes kafka broker cluster on top of k8s. The configuration is generated with confd from k8s.
|
|
||||||
Cluster size are variable after deployment, and get reconfigured.
|
|
||||||
|
|
||||||
|
|
||||||
### Usage:
|
|
||||||
|
|
||||||
Select Apache Kafka from catalog.
|
|
||||||
|
|
||||||
Enter the number of nodes, mem and refresh interval for the kafka cluster.
|
|
||||||
|
|
||||||
Change the following kafka default parameters, if you need:
|
|
||||||
|
|
||||||
- kafka_name="kafka" # kafka k8s service and rc name.
|
|
||||||
- kafka_namespace="kafka" # kafka k8s namespace
|
|
||||||
- kafka_scale=3 # kafka scale to deploy.
|
|
||||||
- kafka_mem=512 # kafka broker memory.
|
|
||||||
- kafka_log_dir="/opt/kafka/logs" # Kafka log dir.
|
|
||||||
- kafka_log_retention="168" # kafka log retention.
|
|
||||||
- kafka_num_partitions="1" # Kafka partitions number
|
|
||||||
- kafka_delete_topics="false" # kafka delete topics
|
|
||||||
- kafka_pub_ip= < true | false > # Advertise public ip to zookeeper.
|
|
||||||
- zk_link="kafka-zk/zk" # zookeeper namespace/service to connect to.
|
|
||||||
|
|
||||||
Click deploy.
|
|
||||||
|
|
||||||
Kafka can now be accessed over the Rancher network.
|
|
||||||
|
|
||||||
Note: When you scale the cluster, zero downtime is not guaranteed..yet..
|
|
||||||
|
|
||||||
@@ -1,77 +0,0 @@
|
|||||||
apiVersion: v1
|
|
||||||
kind: ReplicationController
|
|
||||||
metadata:
|
|
||||||
name: "${kafka_name}"
|
|
||||||
namespace: "${kafka_namespace}"
|
|
||||||
labels:
|
|
||||||
name: "${kafka_name}"
|
|
||||||
spec:
|
|
||||||
replicas: ${kafka_scale}
|
|
||||||
selector:
|
|
||||||
name: "${kafka_name}"
|
|
||||||
template:
|
|
||||||
metadata:
|
|
||||||
labels:
|
|
||||||
name: "${kafka_name}"
|
|
||||||
spec:
|
|
||||||
containers:
|
|
||||||
- name: "broker-conf"
|
|
||||||
image: "rawmind/k8s-kafka:0.10.2.0-1"
|
|
||||||
volumeMounts:
|
|
||||||
- mountPath: "/opt/tools"
|
|
||||||
name: "broker-conf"
|
|
||||||
ports:
|
|
||||||
imagePullPolicy: "IfNotPresent"
|
|
||||||
- name: "broker-volume"
|
|
||||||
image: "rawmind/alpine-volume:0.0.2-1"
|
|
||||||
env:
|
|
||||||
- name: SERVICE_UID
|
|
||||||
value: "10003"
|
|
||||||
- name: SERVICE_GID
|
|
||||||
value: "10003"
|
|
||||||
- name: SERVICE_VOLUME
|
|
||||||
value: "${kafka_log_dir}"
|
|
||||||
- name: KEEP_ALIVE
|
|
||||||
value: "1"
|
|
||||||
volumeMounts:
|
|
||||||
- mountPath: "${kafka_log_dir}"
|
|
||||||
name: "broker-data"
|
|
||||||
ports:
|
|
||||||
imagePullPolicy: "IfNotPresent"
|
|
||||||
- name: "broker-service"
|
|
||||||
image: "rawmind/alpine-kafka:0.10.2.0-2"
|
|
||||||
env:
|
|
||||||
- name: JVMFLAGS
|
|
||||||
value: "-Xmx${kafka_mem}m -Xms${kafka_mem}m"
|
|
||||||
- name: CONFD_INTERVAL
|
|
||||||
value: "${kafka_interval}"
|
|
||||||
- name: KAFKA_ZK_SERVICE
|
|
||||||
value: "${zk_link}"
|
|
||||||
- name: KAFKA_DELETE_TOPICS
|
|
||||||
value: "${kafka_delete_topics}"
|
|
||||||
- name: KAFKA_LOG_DIRS
|
|
||||||
value: "${kafka_log_dir}"
|
|
||||||
- name: KAFKA_LOG_RETENTION_HOURS
|
|
||||||
value: "${kafka_log_retention}"
|
|
||||||
- name: KAFKA_NUM_PARTITIONS
|
|
||||||
value: "${kafka_num_partitions}"
|
|
||||||
- name: ADVERTISE_PUB_IP
|
|
||||||
value: "${kafka_pub_ip}"
|
|
||||||
- name: POD_NAMESPACE
|
|
||||||
value: "${kafka_namespace}"
|
|
||||||
volumeMounts:
|
|
||||||
- mountPath: "${kafka_log_dir}"
|
|
||||||
name: "broker-data"
|
|
||||||
- mountPath: "/opt/tools"
|
|
||||||
name: "broker-conf"
|
|
||||||
ports:
|
|
||||||
- containerPort: 9092
|
|
||||||
name: "broker-client"
|
|
||||||
protocol: "TCP"
|
|
||||||
imagePullPolicy: "IfNotPresent"
|
|
||||||
restartPolicy: "Always"
|
|
||||||
volumes:
|
|
||||||
- name: "broker-data"
|
|
||||||
emptyDir: {}
|
|
||||||
- name: "broker-conf"
|
|
||||||
emptyDir: {}
|
|
||||||
@@ -1,15 +0,0 @@
|
|||||||
apiVersion: v1
|
|
||||||
kind: Service
|
|
||||||
metadata:
|
|
||||||
name: "${kafka_name}"
|
|
||||||
labels:
|
|
||||||
name: "${kafka_name}"
|
|
||||||
spec:
|
|
||||||
ports:
|
|
||||||
- port: 9092
|
|
||||||
targetPort: 9092
|
|
||||||
name: "broker-client"
|
|
||||||
protocol: "TCP"
|
|
||||||
selector:
|
|
||||||
name: "${kafka_name}"
|
|
||||||
clusterIP: "None"
|
|
||||||
@@ -1,95 +0,0 @@
|
|||||||
.catalog:
|
|
||||||
name: Kafka
|
|
||||||
version: 0.10.2.0-k8s
|
|
||||||
description: |
|
|
||||||
(Experimental) Apache Kafka cluster.
|
|
||||||
minimum_rancher_version: v0.59.0
|
|
||||||
maintainer: "Raul Sanchez <rawmind@gmail.com>"
|
|
||||||
uuid: kafka-0
|
|
||||||
questions:
|
|
||||||
- variable: "kafka_name"
|
|
||||||
description: "Name of kafka rc and service."
|
|
||||||
label: "K8s rc name:"
|
|
||||||
required: true
|
|
||||||
default: "kafka"
|
|
||||||
type: "string"
|
|
||||||
- variable: "kafka_namespace"
|
|
||||||
description: "Name of kafka namespace."
|
|
||||||
label: "K8s namespace:"
|
|
||||||
required: true
|
|
||||||
default: "default"
|
|
||||||
type: "string"
|
|
||||||
- variable: "kafka_scale"
|
|
||||||
description: "Number of brokers nodes. Note: Recommended an odd number"
|
|
||||||
label: "Broker Nodes:"
|
|
||||||
required: true
|
|
||||||
default: 3
|
|
||||||
type: "int"
|
|
||||||
- variable: "kafka_mem"
|
|
||||||
description: "Amount of memory to config brokers."
|
|
||||||
label: "Broker Memory (mb):"
|
|
||||||
required: true
|
|
||||||
default: 1024
|
|
||||||
type: "string"
|
|
||||||
- variable: "kafka_log_dir"
|
|
||||||
description: "Broker volume to log data"
|
|
||||||
label: "Broker log volume:"
|
|
||||||
required: true
|
|
||||||
default: "/opt/kafka/logs"
|
|
||||||
type: "string"
|
|
||||||
- variable: "kafka_log_retention"
|
|
||||||
description: "Broker log retention in hours"
|
|
||||||
label: "Broker log retention (h):"
|
|
||||||
required: true
|
|
||||||
default: "168"
|
|
||||||
type: "int"
|
|
||||||
- variable: "kafka_num_partitions"
|
|
||||||
description: "Number of broker partitions"
|
|
||||||
label: "Broker partitions:"
|
|
||||||
required: true
|
|
||||||
default: "1"
|
|
||||||
type: "int"
|
|
||||||
- variable: "kafka_delete_topics"
|
|
||||||
label: "Kafka delete topics:"
|
|
||||||
description: |
|
|
||||||
Enable delete topics in kafka.
|
|
||||||
default: false
|
|
||||||
required: true
|
|
||||||
type: enum
|
|
||||||
options:
|
|
||||||
- false
|
|
||||||
- true
|
|
||||||
- variable: "kafka_interval"
|
|
||||||
description: "Interval to poll/apply configuration changes. 0 to disable"
|
|
||||||
label: "Broker Interval (s):"
|
|
||||||
required: true
|
|
||||||
default: 60
|
|
||||||
type: "int"
|
|
||||||
- variable: "kafka_pub_ip"
|
|
||||||
description: "Advertise local and host public ip"
|
|
||||||
label: "Broker public ip:"
|
|
||||||
default: false
|
|
||||||
required: true
|
|
||||||
type: enum
|
|
||||||
options:
|
|
||||||
- false
|
|
||||||
- true
|
|
||||||
- variable: "zk_link"
|
|
||||||
description: |
|
|
||||||
Choose the Zookeeper service to use.
|
|
||||||
It's really recommended a dedicated zookeeper service just for Kafka.
|
|
||||||
label: "Zookeeper stack/service"
|
|
||||||
default: "default/zookeeper"
|
|
||||||
required: true
|
|
||||||
type: "service"
|
|
||||||
broker:
|
|
||||||
scale: ${kafka_scale}
|
|
||||||
retain_ip: true
|
|
||||||
health_check:
|
|
||||||
port: 9092
|
|
||||||
interval: 5000
|
|
||||||
unhealthy_threshold: 3
|
|
||||||
request_line: ''
|
|
||||||
healthy_threshold: 2
|
|
||||||
response_timeout: 5000
|
|
||||||
|
|
||||||
@@ -1,33 +0,0 @@
|
|||||||
# Apache Kafka (Experimental)
|
|
||||||
|
|
||||||
### Info:
|
|
||||||
|
|
||||||
This template creates, scale in and scale out a multinodes kafka broker cluster on top of k8s. The configuration is generated with confd from k8s.
|
|
||||||
Cluster size are variable after deployment, and get reconfigured.
|
|
||||||
|
|
||||||
|
|
||||||
### Usage:
|
|
||||||
|
|
||||||
Select Apache Kafka from catalog.
|
|
||||||
|
|
||||||
Enter the number of nodes, mem and refresh interval for the kafka cluster.
|
|
||||||
|
|
||||||
Change the following kafka default parameters, if you need:
|
|
||||||
|
|
||||||
- kafka_name="kafka" # kafka k8s service and rc name.
|
|
||||||
- kafka_namespace="kafka" # kafka k8s namespace
|
|
||||||
- kafka_scale=3 # kafka scale to deploy.
|
|
||||||
- kafka_mem=512 # kafka broker memory.
|
|
||||||
- kafka_log_dir="/opt/kafka/logs" # Kafka log dir.
|
|
||||||
- kafka_log_retention="168" # kafka log retention.
|
|
||||||
- kafka_num_partitions="1" # Kafka partitions number
|
|
||||||
- kafka_delete_topics="false" # kafka delete topics
|
|
||||||
- kafka_pub_ip= < true | false > # Advertise public ip to zookeeper.
|
|
||||||
- zk_link="kafka-zk/zk" # zookeeper namespace/service to connect to.
|
|
||||||
|
|
||||||
Click deploy.
|
|
||||||
|
|
||||||
Kafka can now be accessed over the Rancher network.
|
|
||||||
|
|
||||||
Note: When you scale the cluster, zero downtime is not guaranteed..yet..
|
|
||||||
|
|
||||||
@@ -1,77 +0,0 @@
|
|||||||
apiVersion: v1
|
|
||||||
kind: ReplicationController
|
|
||||||
metadata:
|
|
||||||
name: "${kafka_name}"
|
|
||||||
namespace: "${kafka_namespace}"
|
|
||||||
labels:
|
|
||||||
name: "${kafka_name}"
|
|
||||||
spec:
|
|
||||||
replicas: ${kafka_scale}
|
|
||||||
selector:
|
|
||||||
name: "${kafka_name}"
|
|
||||||
template:
|
|
||||||
metadata:
|
|
||||||
labels:
|
|
||||||
name: "${kafka_name}"
|
|
||||||
spec:
|
|
||||||
containers:
|
|
||||||
- name: "broker-conf"
|
|
||||||
image: "rawmind/k8s-kafka:0.10.2.0-1"
|
|
||||||
volumeMounts:
|
|
||||||
- mountPath: "/opt/tools"
|
|
||||||
name: "broker-conf"
|
|
||||||
ports:
|
|
||||||
imagePullPolicy: "IfNotPresent"
|
|
||||||
- name: "broker-volume"
|
|
||||||
image: "rawmind/alpine-volume:0.0.2-1"
|
|
||||||
env:
|
|
||||||
- name: SERVICE_UID
|
|
||||||
value: "10003"
|
|
||||||
- name: SERVICE_GID
|
|
||||||
value: "10003"
|
|
||||||
- name: SERVICE_VOLUME
|
|
||||||
value: "${kafka_log_dir}"
|
|
||||||
- name: KEEP_ALIVE
|
|
||||||
value: "1"
|
|
||||||
volumeMounts:
|
|
||||||
- mountPath: "${kafka_log_dir}"
|
|
||||||
name: "broker-data"
|
|
||||||
ports:
|
|
||||||
imagePullPolicy: "IfNotPresent"
|
|
||||||
- name: "broker-service"
|
|
||||||
image: "rawmind/alpine-kafka:0.10.2.1"
|
|
||||||
env:
|
|
||||||
- name: JVMFLAGS
|
|
||||||
value: "-Xmx${kafka_mem}m -Xms${kafka_mem}m"
|
|
||||||
- name: CONFD_INTERVAL
|
|
||||||
value: "${kafka_interval}"
|
|
||||||
- name: KAFKA_ZK_SERVICE
|
|
||||||
value: "${zk_link}"
|
|
||||||
- name: KAFKA_DELETE_TOPICS
|
|
||||||
value: "${kafka_delete_topics}"
|
|
||||||
- name: KAFKA_LOG_DIRS
|
|
||||||
value: "${kafka_log_dir}"
|
|
||||||
- name: KAFKA_LOG_RETENTION_HOURS
|
|
||||||
value: "${kafka_log_retention}"
|
|
||||||
- name: KAFKA_NUM_PARTITIONS
|
|
||||||
value: "${kafka_num_partitions}"
|
|
||||||
- name: ADVERTISE_PUB_IP
|
|
||||||
value: "${kafka_pub_ip}"
|
|
||||||
- name: POD_NAMESPACE
|
|
||||||
value: "${kafka_namespace}"
|
|
||||||
volumeMounts:
|
|
||||||
- mountPath: "${kafka_log_dir}"
|
|
||||||
name: "broker-data"
|
|
||||||
- mountPath: "/opt/tools"
|
|
||||||
name: "broker-conf"
|
|
||||||
ports:
|
|
||||||
- containerPort: 9092
|
|
||||||
name: "broker-client"
|
|
||||||
protocol: "TCP"
|
|
||||||
imagePullPolicy: "IfNotPresent"
|
|
||||||
restartPolicy: "Always"
|
|
||||||
volumes:
|
|
||||||
- name: "broker-data"
|
|
||||||
emptyDir: {}
|
|
||||||
- name: "broker-conf"
|
|
||||||
emptyDir: {}
|
|
||||||
@@ -1,15 +0,0 @@
|
|||||||
apiVersion: v1
|
|
||||||
kind: Service
|
|
||||||
metadata:
|
|
||||||
name: "${kafka_name}"
|
|
||||||
labels:
|
|
||||||
name: "${kafka_name}"
|
|
||||||
spec:
|
|
||||||
ports:
|
|
||||||
- port: 9092
|
|
||||||
targetPort: 9092
|
|
||||||
name: "broker-client"
|
|
||||||
protocol: "TCP"
|
|
||||||
selector:
|
|
||||||
name: "${kafka_name}"
|
|
||||||
clusterIP: "None"
|
|
||||||
@@ -1,95 +0,0 @@
|
|||||||
.catalog:
|
|
||||||
name: Kafka
|
|
||||||
version: 0.10.2.1-k8s
|
|
||||||
description: |
|
|
||||||
(Experimental) Apache Kafka cluster.
|
|
||||||
minimum_rancher_version: v0.59.0
|
|
||||||
maintainer: "Raul Sanchez <rawmind@gmail.com>"
|
|
||||||
uuid: kafka-0
|
|
||||||
questions:
|
|
||||||
- variable: "kafka_name"
|
|
||||||
description: "Name of kafka rc and service."
|
|
||||||
label: "K8s rc name:"
|
|
||||||
required: true
|
|
||||||
default: "kafka"
|
|
||||||
type: "string"
|
|
||||||
- variable: "kafka_namespace"
|
|
||||||
description: "Name of kafka namespace."
|
|
||||||
label: "K8s namespace:"
|
|
||||||
required: true
|
|
||||||
default: "default"
|
|
||||||
type: "string"
|
|
||||||
- variable: "kafka_scale"
|
|
||||||
description: "Number of brokers nodes. Note: Recommended an odd number"
|
|
||||||
label: "Broker Nodes:"
|
|
||||||
required: true
|
|
||||||
default: 3
|
|
||||||
type: "int"
|
|
||||||
- variable: "kafka_mem"
|
|
||||||
description: "Amount of memory to config brokers."
|
|
||||||
label: "Broker Memory (mb):"
|
|
||||||
required: true
|
|
||||||
default: 1024
|
|
||||||
type: "string"
|
|
||||||
- variable: "kafka_log_dir"
|
|
||||||
description: "Broker volume to log data"
|
|
||||||
label: "Broker log volume:"
|
|
||||||
required: true
|
|
||||||
default: "/opt/kafka/logs"
|
|
||||||
type: "string"
|
|
||||||
- variable: "kafka_log_retention"
|
|
||||||
description: "Broker log retention in hours"
|
|
||||||
label: "Broker log retention (h):"
|
|
||||||
required: true
|
|
||||||
default: "168"
|
|
||||||
type: "int"
|
|
||||||
- variable: "kafka_num_partitions"
|
|
||||||
description: "Number of broker partitions"
|
|
||||||
label: "Broker partitions:"
|
|
||||||
required: true
|
|
||||||
default: "1"
|
|
||||||
type: "int"
|
|
||||||
- variable: "kafka_delete_topics"
|
|
||||||
label: "Kafka delete topics:"
|
|
||||||
description: |
|
|
||||||
Enable delete topics in kafka.
|
|
||||||
default: false
|
|
||||||
required: true
|
|
||||||
type: enum
|
|
||||||
options:
|
|
||||||
- false
|
|
||||||
- true
|
|
||||||
- variable: "kafka_interval"
|
|
||||||
description: "Interval to poll/apply configuration changes. 0 to disable"
|
|
||||||
label: "Broker Interval (s):"
|
|
||||||
required: true
|
|
||||||
default: 60
|
|
||||||
type: "int"
|
|
||||||
- variable: "kafka_pub_ip"
|
|
||||||
description: "Advertise local and host public ip"
|
|
||||||
label: "Broker public ip:"
|
|
||||||
default: false
|
|
||||||
required: true
|
|
||||||
type: enum
|
|
||||||
options:
|
|
||||||
- false
|
|
||||||
- true
|
|
||||||
- variable: "zk_link"
|
|
||||||
description: |
|
|
||||||
Choose the Zookeeper service to use.
|
|
||||||
It's really recommended a dedicated zookeeper service just for Kafka.
|
|
||||||
label: "Zookeeper stack/service"
|
|
||||||
default: "default/zookeeper"
|
|
||||||
required: true
|
|
||||||
type: "service"
|
|
||||||
broker:
|
|
||||||
scale: ${kafka_scale}
|
|
||||||
retain_ip: true
|
|
||||||
health_check:
|
|
||||||
port: 9092
|
|
||||||
interval: 5000
|
|
||||||
unhealthy_threshold: 3
|
|
||||||
request_line: ''
|
|
||||||
healthy_threshold: 2
|
|
||||||
response_timeout: 5000
|
|
||||||
|
|
||||||
@@ -1,7 +1,7 @@
|
|||||||
name: Apache Kafka
|
name: Apache Kafka
|
||||||
description: |
|
description: |
|
||||||
(Experimental) Kafka cluster
|
(Experimental) Kafka cluster
|
||||||
version: 0.10.2.1-k8s
|
version: 0.10.0.1-k8s
|
||||||
category: Clustering
|
category: Clustering
|
||||||
maintainer: "Raul Sanchez <rawmind@gmail.com>"
|
maintainer: "Raul Sanchez <rawmind@gmail.com>"
|
||||||
minimum_rancher_version: v0.59.0
|
minimum_rancher_version: v0.59.0
|
||||||
|
|||||||
@@ -6,7 +6,6 @@
|
|||||||
re-assembling of raw materials. It may be an elaborate parody of the
|
re-assembling of raw materials. It may be an elaborate parody of the
|
||||||
Australian economy.
|
Australian economy.
|
||||||
maintainer: "Rancher"
|
maintainer: "Rancher"
|
||||||
maximum_rancher_version: v1.3.99
|
|
||||||
questions:
|
questions:
|
||||||
- variable: REPLICAS
|
- variable: REPLICAS
|
||||||
default: 1
|
default: 1
|
||||||
|
|||||||
@@ -2,7 +2,6 @@
|
|||||||
name: RabbitMQ
|
name: RabbitMQ
|
||||||
version: 3.6.0-rancher1
|
version: 3.6.0-rancher1
|
||||||
description: A reliable, distributed messaging broker
|
description: A reliable, distributed messaging broker
|
||||||
maximum_rancher_version: v1.3.99
|
|
||||||
questions:
|
questions:
|
||||||
- variable: REPLICAS
|
- variable: REPLICAS
|
||||||
default: 1
|
default: 1
|
||||||
|
|||||||
@@ -2,7 +2,6 @@
|
|||||||
name: Redis
|
name: Redis
|
||||||
version: 2.8.23-rancher1
|
version: 2.8.23-rancher1
|
||||||
description: A highly-available in-memory data structure store
|
description: A highly-available in-memory data structure store
|
||||||
maximum_rancher_version: v1.3.99
|
|
||||||
questions:
|
questions:
|
||||||
- variable: "REDIS_REPLICAS"
|
- variable: "REDIS_REPLICAS"
|
||||||
label: "Initial number of Redis nodes"
|
label: "Initial number of Redis nodes"
|
||||||
|
|||||||
@@ -3,7 +3,6 @@
|
|||||||
version: 0.1.0-rancher1
|
version: 0.1.0-rancher1
|
||||||
description: "Spark cluster"
|
description: "Spark cluster"
|
||||||
maintainer: "Rancher"
|
maintainer: "Rancher"
|
||||||
maximum_rancher_version: v1.3.99
|
|
||||||
questions:
|
questions:
|
||||||
- variable: "SPARK_WORKER_REPLICAS"
|
- variable: "SPARK_WORKER_REPLICAS"
|
||||||
type: "string"
|
type: "string"
|
||||||
|
|||||||
@@ -2,7 +2,6 @@
|
|||||||
name: "Sysdig Cloud"
|
name: "Sysdig Cloud"
|
||||||
version: "0.1"
|
version: "0.1"
|
||||||
description: "Container-Native Application and Infrastructure Monitoring"
|
description: "Container-Native Application and Infrastructure Monitoring"
|
||||||
maximum_rancher_version: v1.3.99
|
|
||||||
questions:
|
questions:
|
||||||
- variable: "SDC_ACCESS_KEY"
|
- variable: "SDC_ACCESS_KEY"
|
||||||
label: "Sysdig Cloud access key"
|
label: "Sysdig Cloud access key"
|
||||||
|
|||||||
@@ -4,7 +4,6 @@
|
|||||||
description: |
|
description: |
|
||||||
Traefik load balancer.
|
Traefik load balancer.
|
||||||
minimum_rancher_version: v0.59.0
|
minimum_rancher_version: v0.59.0
|
||||||
maximum_rancher_version: v1.3.99
|
|
||||||
maintainer: "German Ramos <german.ramos@gmail.com>"
|
maintainer: "German Ramos <german.ramos@gmail.com>"
|
||||||
uuid: traefik-0
|
uuid: traefik-0
|
||||||
questions:
|
questions:
|
||||||
|
|||||||
@@ -3,7 +3,6 @@
|
|||||||
description: |
|
description: |
|
||||||
Weave Cloud is a add-on to Kubernetes which provides Continuous Delivery, along with hosted Prometheus Monitoring and a visual dashboard for exploring & debugging microservices
|
Weave Cloud is a add-on to Kubernetes which provides Continuous Delivery, along with hosted Prometheus Monitoring and a visual dashboard for exploring & debugging microservices
|
||||||
version: "latest"
|
version: "latest"
|
||||||
maximum_rancher_version: v1.3.99
|
|
||||||
questions:
|
questions:
|
||||||
- variable: "WEAVE_CLOUD_SERVICE_TOKEN"
|
- variable: "WEAVE_CLOUD_SERVICE_TOKEN"
|
||||||
description: "Service token for your Weave Cloud instance, get one at https://cloud.weave.works"
|
description: "Service token for your Weave Cloud instance, get one at https://cloud.weave.works"
|
||||||
|
|||||||
@@ -2,7 +2,6 @@
|
|||||||
name: "K8s Example Wordpress"
|
name: "K8s Example Wordpress"
|
||||||
version: "1.0.0"
|
version: "1.0.0"
|
||||||
description: ""
|
description: ""
|
||||||
maximum_rancher_version: v1.3.99
|
|
||||||
questions:
|
questions:
|
||||||
- variable: "WP_PASSWORD"
|
- variable: "WP_PASSWORD"
|
||||||
label: "Mysql database password"
|
label: "Mysql database password"
|
||||||
|
|||||||
@@ -4,7 +4,6 @@
|
|||||||
description: |
|
description: |
|
||||||
(Experimental) Apache Zookeeper cluster.
|
(Experimental) Apache Zookeeper cluster.
|
||||||
minimum_rancher_version: v0.59.0
|
minimum_rancher_version: v0.59.0
|
||||||
maximum_rancher_version: v1.3.99
|
|
||||||
maintainer: "Raul Sanchez <rawmind@gmail.com>"
|
maintainer: "Raul Sanchez <rawmind@gmail.com>"
|
||||||
uuid: zk-0
|
uuid: zk-0
|
||||||
questions:
|
questions:
|
||||||
|
|||||||
@@ -4,7 +4,6 @@
|
|||||||
description: |
|
description: |
|
||||||
(Experimental) Apache Zookeeper cluster.
|
(Experimental) Apache Zookeeper cluster.
|
||||||
minimum_rancher_version: v0.59.0
|
minimum_rancher_version: v0.59.0
|
||||||
maximum_rancher_version: v1.3.99
|
|
||||||
maintainer: "Raul Sanchez <rawmind@gmail.com>"
|
maintainer: "Raul Sanchez <rawmind@gmail.com>"
|
||||||
uuid: zk-0
|
uuid: zk-0
|
||||||
questions:
|
questions:
|
||||||
|
|||||||
@@ -17,7 +17,7 @@ spec:
|
|||||||
spec:
|
spec:
|
||||||
containers:
|
containers:
|
||||||
- name: "zk-conf"
|
- name: "zk-conf"
|
||||||
image: "rawmind/k8s-zk:3.4.9"
|
image: "rawmind/k8s-zk:3.4.8-10"
|
||||||
volumeMounts:
|
volumeMounts:
|
||||||
- mountPath: "/opt/tools"
|
- mountPath: "/opt/tools"
|
||||||
name: "zk-conf"
|
name: "zk-conf"
|
||||||
@@ -40,7 +40,7 @@ spec:
|
|||||||
ports:
|
ports:
|
||||||
imagePullPolicy: "IfNotPresent"
|
imagePullPolicy: "IfNotPresent"
|
||||||
- name: "zk-service"
|
- name: "zk-service"
|
||||||
image: "rawmind/alpine-zk:3.4.9-3"
|
image: "rawmind/alpine-zk:3.4.9"
|
||||||
env:
|
env:
|
||||||
- name: JVMFLAGS
|
- name: JVMFLAGS
|
||||||
value: "-Xmx${zk_mem}m -Xms${zk_mem}m"
|
value: "-Xmx${zk_mem}m -Xms${zk_mem}m"
|
||||||
|
|||||||
@@ -21,4 +21,3 @@ spec:
|
|||||||
protocol: "TCP"
|
protocol: "TCP"
|
||||||
selector:
|
selector:
|
||||||
name: "${zk_name}"
|
name: "${zk_name}"
|
||||||
|
|
||||||
|
|||||||
Binary file not shown.
|
Before Width: | Height: | Size: 37 KiB |
@@ -1 +0,0 @@
|
|||||||
bea9144384d543353b75ed0bea872fbe
|
|
||||||
@@ -1,3 +0,0 @@
|
|||||||
.catalog:
|
|
||||||
name: cloudca
|
|
||||||
version: "v1.0.1"
|
|
||||||
@@ -1 +0,0 @@
|
|||||||
https://objects-east.cloud.ca/v1/5ef827605f884961b94881e928e7a250/rancher-ui-driver/v1.0.0/component.js
|
|
||||||
@@ -1 +0,0 @@
|
|||||||
https://objects-east.cloud.ca/v1/5ef827605f884961b94881e928e7a250/docker-machine-driver-cloudca/v1.0.1/docker-machine-driver-cloudca_v1.0.1_linux-amd64.zip
|
|
||||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user