Files
k8s-docker-suite-app-murano/Kubernetes/KubernetesCluster/package/UI/ui.yaml
Stan Lagun dfa22c8d20 Fixes availability zone selection
Availability zone was present for master node but not for
minion and gateway nodes which caused error when AZ was
not "nova"

Change-Id: I5b223f20223c2d4d1f2d797f94cd366e206773da
Closes-Bug: #1490575
2015-08-31 18:46:34 +03:00

202 lines
7.1 KiB
YAML

# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
Version: 2
Templates:
masterNode:
?:
type: io.murano.apps.docker.kubernetes.KubernetesMasterNode
instance:
?:
type: io.murano.resources.LinuxMuranoInstance
name: generateHostname($.appConfiguration.unitNamingPattern, 1)
flavor: $.instanceConfiguration.flavor
image: 'ubuntu14.04-x64-kubernetes'
assignFloatingIp: $.appConfiguration.assignFloatingIP
keyname: $.instanceConfiguration.keyPair
availabilityZone: $.instanceConfiguration.availabilityZone
minionNode:
?:
type: io.murano.apps.docker.kubernetes.KubernetesMinionNode
instance:
?:
type: io.murano.resources.LinuxMuranoInstance
name: generateHostname($.appConfiguration.unitNamingPattern, $index + 1)
flavor: $.instanceConfiguration.flavor
image: 'ubuntu14.04-x64-kubernetes'
assignFloatingIp: $.appConfiguration.assignFloatingIP
keyname: $.instanceConfiguration.keyPair
availabilityZone: $.instanceConfiguration.availabilityZone
exposeCAdvisor: $.appConfiguration.exposeCAdvisor
gatewayNode:
?:
type: io.murano.apps.docker.kubernetes.KubernetesGatewayNode
instance:
?:
type: io.murano.resources.LinuxMuranoInstance
name: generateHostname($.appConfiguration.gatewayNamingPattern, $index)
flavor: $.instanceConfiguration.flavor
image: 'ubuntu14.04-x64-kubernetes'
assignFloatingIp: $.appConfiguration.assignGatewayFloatingIP
keyname: $.instanceConfiguration.keyPair
availabilityZone: $.instanceConfiguration.availabilityZone
Application:
?:
type: io.murano.apps.docker.kubernetes.KubernetesCluster
name: $.appConfiguration.name
masterNode: $masterNode
minionNodes: repeat($minionNode, $.appConfiguration.maxMinionCount)
nodeCount: $.appConfiguration.minionCount
gatewayCount: $.appConfiguration.gatewayCount
gatewayNodes: repeat($gatewayNode, $.appConfiguration.maxGatewayCount)
dockerRegistry: $.appConfiguration.dockerRegistry
Forms:
- appConfiguration:
fields:
- name: license
type: string
description: Apache License, Version 2.0
hidden: true
required: false
- name: name
type: string
label: Cluster Name
initial: KubernetesCluster
description: >-
Enter a desired name for the application. Just A-Z, a-z, 0-9, dash and
underline are allowed
- name: minionCount
type: integer
label: Initial/current number of minions
initial: 2
minValue: 1
required: true
description: >-
Select number of minions
- name: maxMinionCount
type: integer
label: Maximum number of minions
initial: 3
required: true
minValue: 1
description: >-
Select maximum number of minions
- name: assignFloatingIP
type: boolean
initial: true
label: Assign floating IP to Kubernetes nodes
description: >-
Check to assign floating IP to Kubernetes nodes
required: false
- name: unitNamingPattern
type: string
initial: kube-#
helpText: "# expands to machine sequence number"
required: false
description: >-
For your convenience instance hostname can be specified.
Enter a name or leave blank for random name generation.
regexpValidator: '^[a-zA-z][-_\w#]*$'
maxLength: 64
errorMessages:
invalid: Just letters, numbers, underscores, sharps and hyphens are allowed.
label: Kubernetes node hostname pattern
- name: exposeCAdvisor
type: boolean
initial: true
required: false
label: Expose cAdvisor UI
description: >-
Opens external access to cAdvisor interface
- name: gatewayCount
type: integer
label: Initial/current number of gateway nodes
initial: 1
minValue: 0
required: true
description: >-
External traffic will be routed through gateway nodes.
Increasing gateways count allows to set up complex and HA clusters.
- name: maxGatewayCount
type: integer
label: Maximum number of gateway nodes
initial: 2
required: true
minValue: 0
description: >-
Maximum number of gateway nodes.
Taken into account when performing scalability actions.
- name: assignGatewayFloatingIP
type: boolean
initial: true
label: Assign floating IP to gateway nodes
description: >-
Check to assign floating IP to gateway nodes
required: false
- name: gatewayNamingPattern
type: string
initial: gateway-#
required: false
maxLength: 64
regexpValidator: '^[a-zA-z][-_\w#]*$'
errorMessages:
invalid: Just letters, numbers, underscores, sharps and hyphens are allowed.
label: Gateway hostname pattern
helpText: "# expands to gateway sequence number"
description: >-
Check to assign floating IP to gateway nodes
- name: dockerRegistry
type: string
label: Custom Docker registry URL
description: >-
URL of docker repository mirror to use.
Leave empty to use Docker default.
required: false
- instanceConfiguration:
fields:
- name: title
type: string
required: false
hidden: true
description: Specify some instance parameters on which application would be created.
- name: flavor
type: flavor
label: Instance flavor
description: >-
Select one of the existing flavors. Consider that application performance
depends on this parameter.
required: false
requirements:
min_disk: 10
min_memory_mb: 1024
min_vcpus: 1
- name: keyPair
type: keypair
label: Key Pair
description: >-
Select the Key Pair to control access to instances. You can login to
instances using this KeyPair after the deployment.
required: false
- name: availabilityZone
type: azone
label: Availability zone
description: Select an availability zone where the application would be installed.
required: false