Add etcd environment definition

Instead of requiring the user to define an env.d override to deploy
etcd when Calico is used, we can provide a default etcd environment
definition that will only deploy etcd containers if 'etcd_hosts'
are defined in the openstack_user_config.

There is no upgrade impact because users who already use calico
will have an out of tree environment defintion in
/etc/openstack_deploy/env.d which overrides the in-tree version.

Change-Id: Id395ae972ea821b36f3b4ae09f4c72280256e676
This commit is contained in:
Logan V 2017-07-27 19:33:55 -05:00
parent 9220d693e9
commit 05f36014c2
3 changed files with 48 additions and 0 deletions

View File

@ -0,0 +1,9 @@
# The infra nodes that will be running the etcd containers (only used if the
# calico plugin is enabled for Neutron)
etcd_hosts:
infra1:
ip: 172.20.236.111
infra2:
ip: 172.20.236.112
infra3:
ip: 172.20.236.113

View File

@ -0,0 +1,34 @@
---
# Copyright 2017, Logan Vig <logan2211@gmail.com>
#
# 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.
component_skel:
etcd:
belongs_to:
- etcd_all
container_skel:
etcd_container:
belongs_to:
- etcd_containers
contains:
- etcd
physical_skel:
etcd_containers:
belongs_to:
- all_containers
etcd_hosts:
belongs_to:
- hosts

View File

@ -192,6 +192,11 @@ class TestAnsibleInventoryFormatConstraints(unittest.TestCase):
'designate_worker',
'designate_producer',
'designate_sink',
'etcd',
'etcd_all',
'etcd_container',
'etcd_containers',
'etcd_hosts',
'galera',
'galera_all',
'galera_container',