add ceph adapter config and templates
Change-Id: Ia4f8871ef337fb712f9721d1488fbba18766336a
This commit is contained in:
parent
f1f3860ee7
commit
784e6d7887
@ -110,12 +110,11 @@ class BaseConfigManager(object):
|
||||
return {}
|
||||
|
||||
deploy_config = self.get_cluster_deployed_package_config()
|
||||
mapping = deploy_config.setdefault(const.ROLES_MAPPING, {})
|
||||
|
||||
if const.ROLES_MAPPING not in deploy_config:
|
||||
if not mapping:
|
||||
mapping = self._get_cluster_roles_mapping_helper()
|
||||
deploy_config[const.ROLES_MAPPING] = mapping
|
||||
else:
|
||||
mapping = deploy_config[const.ROLES_MAPPING]
|
||||
|
||||
return mapping
|
||||
|
||||
@ -332,6 +331,7 @@ class BaseConfigManager(object):
|
||||
"""The ouput format will be as below, for example:
|
||||
{
|
||||
"controller": {
|
||||
"hostname": "xxx",
|
||||
"management": {
|
||||
"interface": "eth0",
|
||||
"ip": "192.168.1.10",
|
||||
@ -361,16 +361,18 @@ class BaseConfigManager(object):
|
||||
|
||||
def _get_host_roles_mapping_helper(self, host_id):
|
||||
"""The format will be the same as cluster roles mapping."""
|
||||
mapping = {}
|
||||
network_mapping = self.get_host_network_mapping(host_id)
|
||||
if not network_mapping:
|
||||
return {}
|
||||
|
||||
hostname = self.get_hostname(host_id)
|
||||
roles = self.get_host_roles(host_id)
|
||||
interfaces = self.get_host_interfaces(host_id)
|
||||
temp = {}
|
||||
|
||||
mapping = {}
|
||||
temp = {const.HOSTNAME: hostname}
|
||||
for key in network_mapping:
|
||||
nic = network_mapping[key]
|
||||
nic = network_mapping[key][const.NIC]
|
||||
if nic in interfaces:
|
||||
temp[key] = self.get_host_interface_config(host_id, nic)
|
||||
temp[key][const.NIC] = nic
|
||||
|
@ -102,7 +102,7 @@ class BaseInstaller(object):
|
||||
if meta_key.startswith("$"):
|
||||
return (False, metadata[meta_key])
|
||||
|
||||
raise KeyError("'%s' is an invalid metadata!" % key)
|
||||
raise KeyError("'%s' is invalid in metadata '%s'!" % (key, metadata))
|
||||
|
||||
def _get_tmpl_vars_helper(self, metadata, config, output):
|
||||
for key, config_value in sorted(config.iteritems()):
|
||||
|
@ -222,6 +222,7 @@ class TestChefInstaller(unittest2.TestCase):
|
||||
},
|
||||
"roles_mapping": {
|
||||
"os_controller": {
|
||||
"hostname": "server01",
|
||||
"management": {
|
||||
"interface": "vnet0",
|
||||
"ip": "12.234.32.100",
|
||||
@ -240,6 +241,7 @@ class TestChefInstaller(unittest2.TestCase):
|
||||
}
|
||||
},
|
||||
"os_compute_worker": {
|
||||
"hostname": "server02",
|
||||
"management": {
|
||||
"interface": "eth0",
|
||||
"ip": "12.234.32.101",
|
||||
@ -258,6 +260,7 @@ class TestChefInstaller(unittest2.TestCase):
|
||||
}
|
||||
},
|
||||
"os_network": {
|
||||
"hostname": "server03",
|
||||
"management": {
|
||||
"interface": "eth0",
|
||||
"ip": "12.234.32.103",
|
||||
@ -291,6 +294,7 @@ class TestChefInstaller(unittest2.TestCase):
|
||||
"deployed_package_config": {
|
||||
"roles_mapping": {
|
||||
"os_controller": {
|
||||
"hostname": "server01",
|
||||
"management": {
|
||||
"interface": "vnet0",
|
||||
"ip": "12.234.32.100",
|
||||
@ -321,6 +325,7 @@ class TestChefInstaller(unittest2.TestCase):
|
||||
"deployed_package_config": {
|
||||
"roles_mapping": {
|
||||
"os_compute_worker": {
|
||||
"hostname": "server02",
|
||||
"management": {
|
||||
"interface": "eth0",
|
||||
"ip": "12.234.32.101",
|
||||
@ -351,6 +356,7 @@ class TestChefInstaller(unittest2.TestCase):
|
||||
"deployed_package_config": {
|
||||
"roles_mapping": {
|
||||
"os_network": {
|
||||
"hostname": "server03",
|
||||
"management": {
|
||||
"interface": "eth0",
|
||||
"ip": "12.234.32.103",
|
||||
@ -377,6 +383,7 @@ class TestChefInstaller(unittest2.TestCase):
|
||||
}
|
||||
},
|
||||
"os_compute_worker": {
|
||||
"hostname": "server03",
|
||||
"management": {
|
||||
"interface": "eth0",
|
||||
"ip": "12.234.32.103",
|
||||
|
@ -64,6 +64,7 @@ class TestConfigManager(unittest2.TestCase):
|
||||
def test_get_cluster_roles_mapping(self):
|
||||
expected_output = {
|
||||
"os_controller": {
|
||||
"hostname": "server01",
|
||||
"management": {
|
||||
"interface": "vnet0",
|
||||
"ip": "12.234.32.100",
|
||||
@ -82,6 +83,7 @@ class TestConfigManager(unittest2.TestCase):
|
||||
}
|
||||
},
|
||||
"os_compute_worker": {
|
||||
"hostname": "server02",
|
||||
"management": {
|
||||
"interface": "eth0",
|
||||
"ip": "12.234.32.101",
|
||||
@ -100,6 +102,7 @@ class TestConfigManager(unittest2.TestCase):
|
||||
}
|
||||
},
|
||||
"os_network": {
|
||||
"hostname": "server03",
|
||||
"management": {
|
||||
"interface": "eth0",
|
||||
"ip": "12.234.32.103",
|
||||
@ -139,6 +142,7 @@ class TestConfigManager(unittest2.TestCase):
|
||||
def test_get_host_role_mapping(self):
|
||||
expected_output = {
|
||||
"os_network": {
|
||||
"hostname": "server03",
|
||||
"management": {
|
||||
"interface": "eth0",
|
||||
"ip": "12.234.32.103",
|
||||
@ -165,6 +169,7 @@ class TestConfigManager(unittest2.TestCase):
|
||||
}
|
||||
},
|
||||
"os_compute_worker": {
|
||||
"hostname": "server03",
|
||||
"management": {
|
||||
"interface": "eth0",
|
||||
"ip": "12.234.32.103",
|
||||
|
@ -228,9 +228,15 @@ cluster_test_config = {
|
||||
}
|
||||
},
|
||||
"network_mapping": {
|
||||
"management": "eth0",
|
||||
"public": "eth2",
|
||||
"tenant": "eth1"
|
||||
"management": {
|
||||
"interface": "eth0"
|
||||
},
|
||||
"public": {
|
||||
"interface": "eth2"
|
||||
},
|
||||
"tenant": {
|
||||
"interface": "eth1"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -276,8 +282,12 @@ hosts_test_config = {
|
||||
},
|
||||
"package_config": {
|
||||
"network_mapping": {
|
||||
"management": "vnet0",
|
||||
"tenant": "vnet1"
|
||||
"management": {
|
||||
"interface": "vnet0"
|
||||
},
|
||||
"tenant": {
|
||||
"interface": "vnet1"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
|
7
conf/adapter/chef_ceph_openstack.conf
Normal file
7
conf/adapter/chef_ceph_openstack.conf
Normal file
@ -0,0 +1,7 @@
|
||||
NAME = 'ceph_openstack_icehouse'
|
||||
DISPLAY_NAME = 'Ceph + OpenStack Icehouse'
|
||||
PARENT = 'openstack'
|
||||
PACKAGE_INSTALLER = 'chef_installer'
|
||||
OS_INSTALLER = 'cobbler'
|
||||
SUPPORTED_OS_PATTERNS = ['(?i)centos.*', '(?i)ubuntu.*']
|
||||
DEPLOYABLE = True
|
9
conf/flavor/ceph_firefly.conf
Normal file
9
conf/flavor/ceph_firefly.conf
Normal file
@ -0,0 +1,9 @@
|
||||
ADAPTER_NAME = 'ceph_firefly'
|
||||
FLAVORS = [
|
||||
{
|
||||
'flavor': 'ceph_firefly',
|
||||
'display_name': 'Ceph Cluster (Firefly)',
|
||||
'template': 'ceph_firefly.tmpl',
|
||||
'roles': ['ceph-mon', 'ceph-osd', 'ceph-mds', 'ceph-radosgw']
|
||||
}
|
||||
]
|
15
conf/flavor/chef_ceph_openstack.conf
Normal file
15
conf/flavor/chef_ceph_openstack.conf
Normal file
@ -0,0 +1,15 @@
|
||||
ADAPTER_NAME = 'ceph_openstack_icehouse'
|
||||
FLAVORS = [
|
||||
{
|
||||
'flavor': 'ceph_openstack_multinodes',
|
||||
'display_name': 'Multi-node Ceph+OpenStack Cluster',
|
||||
'template': 'multinodes.tmpl',
|
||||
'roles': [
|
||||
'os-ops-database', 'os-ops-messaging', 'os-identity', 'os-compute-controller',
|
||||
'ceph-mon', 'ceph-osd', 'ceph-mds', 'ceph-radosgw', 'os-compute-worker',
|
||||
'os-network-worker', 'os-network-server', 'os-block-storage-controller',
|
||||
'os-block-storage-volume', 'os-image', 'os-dashboard',
|
||||
'ceph-os-block-config', 'ceph-os-compute-config', 'ceph-os-object-config',
|
||||
'ceph-os-image-config', 'openstack_config_mon', 'openstack_config_radosgw'
|
||||
]
|
||||
}]
|
@ -18,10 +18,8 @@ FLAVORS = [{
|
||||
'template': 'multinodes.tmpl',
|
||||
'roles': [
|
||||
'os-ops-database', 'os-identity', 'os-ops-messaging',
|
||||
'os-compute-controller',
|
||||
'os-compute-worker', 'os-network-server',
|
||||
'os-network-worker', 'os-block-storage-volume',
|
||||
'os-block-storage-controller', 'os-image', 'os-dashboard',
|
||||
'ha-proxy'
|
||||
'os-compute-controller', 'os-compute-worker', 'os-network-worker',
|
||||
'os-network-server', 'os-block-storage-controller', 'os-block-storage-volume',
|
||||
'os-image', 'os-dashboard'
|
||||
]
|
||||
}]
|
||||
|
79
conf/package_metadata/ceph.conf
Normal file
79
conf/package_metadata/ceph.conf
Normal file
@ -0,0 +1,79 @@
|
||||
ADAPTER = 'ceph'
|
||||
METADATA = {
|
||||
'global_config': {
|
||||
'_self': {
|
||||
'required_in_whole_config': True,
|
||||
'mapping_to': 'global'
|
||||
},
|
||||
'osd_pool_pg_num': {
|
||||
'_self': {
|
||||
'is_required': True,
|
||||
'field': 'general',
|
||||
'default_value': '1024',
|
||||
'mapping_to': 'osd_pool_pg_num'
|
||||
}
|
||||
},
|
||||
'osd_pool_pgp_num': {
|
||||
'_self': {
|
||||
'is_required': True,
|
||||
'field': 'general',
|
||||
'default_value': '1024',
|
||||
'mapping_to': 'osd_pool_pgp_num'
|
||||
}
|
||||
},
|
||||
'osd_pool_size': {
|
||||
'_self': {
|
||||
'is_required': True,
|
||||
'field': 'general',
|
||||
'default_value': '3',
|
||||
'mapping_to': 'osd_pool_size'
|
||||
}
|
||||
}
|
||||
},
|
||||
'osd_config': {
|
||||
'_self': {
|
||||
'mapping_to': 'osd_config'
|
||||
}
|
||||
'journal_size': {
|
||||
'_self': {
|
||||
'field': 'general',
|
||||
'default_value': '10000',
|
||||
'mapping_to': 'journal_size'
|
||||
}
|
||||
},
|
||||
'op_threads': {
|
||||
'_self': {
|
||||
'field': 'general',
|
||||
'default_value': 10,
|
||||
'mapping_to': 'op_threads'
|
||||
}
|
||||
}
|
||||
},
|
||||
"osd_devices": {
|
||||
'_self': {
|
||||
'mapping_to': 'osd_devices'
|
||||
}
|
||||
'$device': {
|
||||
'_self': {
|
||||
'validator': is_valid_partition
|
||||
},
|
||||
'journal': {
|
||||
'_self': {
|
||||
'field': 'general',
|
||||
'mapping_to': 'journal'
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
'network_mapping': {
|
||||
'_self': {
|
||||
'required_in_whole_config': True
|
||||
},
|
||||
'$interface_type': {
|
||||
'_self': {
|
||||
'is_required': True,
|
||||
'field': 'general'
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
66
conf/package_metadata/ceph_openstack.conf
Normal file
66
conf/package_metadata/ceph_openstack.conf
Normal file
@ -0,0 +1,66 @@
|
||||
ADAPTER = 'ceph_openstack_icehouse'
|
||||
METADATA = {
|
||||
'global_config': {
|
||||
'_self': {
|
||||
'required_in_whole_config': True,
|
||||
},
|
||||
'osd_pool_pg_num': {
|
||||
'_self': {
|
||||
'is_required': True,
|
||||
'field': 'general',
|
||||
'default_value': '1024',
|
||||
'mapping_to': 'osd_pool_pg_num'
|
||||
}
|
||||
},
|
||||
'osd_pool_pgp_num': {
|
||||
'_self': {
|
||||
'is_required': True,
|
||||
'field': 'general',
|
||||
'default_value': '1024',
|
||||
'mapping_to': 'osd_pool_pgp_num'
|
||||
}
|
||||
},
|
||||
'osd_pool_size': {
|
||||
'_self': {
|
||||
'is_required': True,
|
||||
'field': 'general',
|
||||
'default_value': '3',
|
||||
'mapping_to': 'osd_pool_size'
|
||||
}
|
||||
}
|
||||
},
|
||||
'osd_config': {
|
||||
'_self': {
|
||||
}
|
||||
'journal_size': {
|
||||
'_self': {
|
||||
'field': 'general',
|
||||
'default_value': '10000',
|
||||
'mapping_to': 'journal_size'
|
||||
}
|
||||
},
|
||||
'op_threads': {
|
||||
'_self': {
|
||||
'field': 'general',
|
||||
'default_value': 10,
|
||||
'mapping_to': 'op_threads'
|
||||
}
|
||||
}
|
||||
},
|
||||
"osd_devices": {
|
||||
'_self': {
|
||||
'mapping_to': 'osd_devices'
|
||||
}
|
||||
'$device': {
|
||||
'_self': {
|
||||
'validator': is_valid_partition
|
||||
},
|
||||
'journal': {
|
||||
'_self': {
|
||||
'field': 'general',
|
||||
'mapping_to': 'journal'
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
@ -6,7 +6,7 @@ METADATA = {
|
||||
},
|
||||
'service_credentials': {
|
||||
'_self': {
|
||||
'mapping_to': 'service_credentials'
|
||||
'mapping_to': 'service_credentials'
|
||||
},
|
||||
'$service': {
|
||||
'username': {
|
||||
|
21
conf/role/ceph.conf
Normal file
21
conf/role/ceph.conf
Normal file
@ -0,0 +1,21 @@
|
||||
ADAPTER_NAME = 'ceph_firefly'
|
||||
ROLES = [
|
||||
{
|
||||
'role': 'ceph-mon',
|
||||
'display_name': 'Ceph Mon',
|
||||
'description': 'ceph monitor server'
|
||||
}, {
|
||||
'role': 'ceph-osd',
|
||||
'display_name': 'Ceph OSD',
|
||||
'description': 'ceph storage server'
|
||||
}, {
|
||||
'role': 'ceph-mds',
|
||||
'display_name': 'Ceph MDS',
|
||||
'description': 'ceph metadata server',
|
||||
'optional': True
|
||||
}, {
|
||||
'role': 'ceph-radosgw',
|
||||
'display_name': 'Ceph Radosgw',
|
||||
'description': 'ceph object gateway',
|
||||
'optional': True
|
||||
}]
|
110
conf/role/chef_ceph_openstack.conf
Normal file
110
conf/role/chef_ceph_openstack.conf
Normal file
@ -0,0 +1,110 @@
|
||||
ADAPTER_NAME = 'ceph_openstack_icehouse'
|
||||
ROLES = [{
|
||||
'role': 'os-compute-worker',
|
||||
'display_name': 'compute',
|
||||
'description': 'compute node'
|
||||
}, {
|
||||
'role': 'os-network',
|
||||
'display_name': 'network',
|
||||
'description': 'network node including network server'
|
||||
}, {
|
||||
'role': 'os-network-server',
|
||||
'display_name': 'network server',
|
||||
'description': 'network server node'
|
||||
}, {
|
||||
'role': 'os-network-worker',
|
||||
'display_name': 'network worker',
|
||||
'description': 'network node including network server'
|
||||
}, {
|
||||
'role': 'os-block-storage-controller',
|
||||
'display_name': 'storage controller',
|
||||
'description': 'storage controller node'
|
||||
}, {
|
||||
'role': 'os-block-storage-volume',
|
||||
'display_name': 'storage worker',
|
||||
'description': 'storage node'
|
||||
}, {
|
||||
'role': 'os-image',
|
||||
'display_name': 'image',
|
||||
'description': 'image node'
|
||||
}, {
|
||||
'role': 'os-compute-vncproxy',
|
||||
'display_name': 'vnc proxy',
|
||||
'description': 'vnc proxy node'
|
||||
}, {
|
||||
'role': 'os-controller',
|
||||
'display_name': 'controller',
|
||||
'description': 'controller node including identity, dashboard, network server, and block stroage controller services'
|
||||
}, {
|
||||
'role': 'os-compute-controller',
|
||||
'display_name': 'controller-only',
|
||||
'description': 'controller node for nova APIs'
|
||||
}, {
|
||||
'role': 'os-ops-messaging',
|
||||
'display_name': 'message queue',
|
||||
'description': 'message queue node'
|
||||
}, {
|
||||
'role': 'os-ops-database',
|
||||
'display_name': 'database',
|
||||
'description': 'database node'
|
||||
}, {
|
||||
'role': 'os-identity',
|
||||
'display_name': 'keystone',
|
||||
'description': 'keystone node'
|
||||
}, {
|
||||
'role': 'os-dashboard',
|
||||
'display_name': 'dashboard',
|
||||
'description': 'dashboard node'
|
||||
}, {
|
||||
'role': 'os-ha',
|
||||
'display_name': 'ha proxy',
|
||||
'description': 'ha proxy node'
|
||||
}, {
|
||||
'role': 'allinone-compute',
|
||||
'display_name': 'all in one node',
|
||||
'description': 'all in one compute'
|
||||
}, {
|
||||
'role': 'ceph-os-block-config',
|
||||
'display_name': 'ceph-os block config',
|
||||
'description': 'ceph os block config'
|
||||
}, {
|
||||
'role': 'ceph-os-compute-config',
|
||||
'display_name': 'ceph-os compute config',
|
||||
'description': 'ceph os compute config'
|
||||
}, {
|
||||
'role': 'ceph-os-image-config',
|
||||
'display_name': 'ceph-os image config',
|
||||
'description': 'ceph os image config'
|
||||
}, {
|
||||
'role': 'ceph-os-object-config',
|
||||
'display_name': 'ceph-os object config',
|
||||
'description': 'ceph openstack object storage config'
|
||||
}, {
|
||||
'role': 'ceph-mds',
|
||||
'display_name': 'ceph MDS',
|
||||
'description': 'ceph metadata server',
|
||||
'optional': True
|
||||
}, {
|
||||
'role': 'ceph-mon',
|
||||
'display_name': 'ceph monitor',
|
||||
'description': 'ceph monitor server'
|
||||
}, {
|
||||
'role': 'ceph-osd',
|
||||
'display_name': 'ceph OSD',
|
||||
'description': 'ceph storage server'
|
||||
}, {
|
||||
'role': 'ceph-radosgw',
|
||||
'display_name': 'ceph radosgw',
|
||||
'description': 'ceph object gateway',
|
||||
'optional': True
|
||||
}, {
|
||||
'role': 'openstack_config_mon',
|
||||
'display_name': 'ceph-os mon config',
|
||||
'description': 'ceph openstack Monitor config',
|
||||
'optional': True
|
||||
}, {
|
||||
'role': 'openstack_config_radosgw',
|
||||
'display_name': 'ceph-os radosgw config',
|
||||
'description': 'ceph openstack radosgw config',
|
||||
'optional': True
|
||||
}]
|
@ -0,0 +1,69 @@
|
||||
#import simplejson as json
|
||||
#import uuid
|
||||
#from copy import deepcopy
|
||||
|
||||
#set fsid = str(uuid.uuid4())
|
||||
#set public_network_subnet = $network_mapping.public_network.subnet
|
||||
#set cluster_network_subnet = $network_mapping.cluster_network.subnet
|
||||
|
||||
#set osd_pool_pg_num = $getVar('osd_pool_pg_num', '1024')
|
||||
#set osd_pool_pgp_num = $getVar('osd_pool_pgp_num', '1024')
|
||||
#set osd_pool_size = $getVar('osd_pool_size', '3')
|
||||
|
||||
#set journal_size = $getVar('journal_size', '10000')
|
||||
#set osd_op_threads = $getVar('op_threads', 10)
|
||||
|
||||
#set devices = []
|
||||
#if not $getVar('osd_devices', {})
|
||||
#set devices_info = $osd_devices
|
||||
#set devices_num = len($devices_info)
|
||||
#set devices = [x for x in range($devices_num)]
|
||||
#set index = 0
|
||||
#for device, config in $devices_info.iteritems()
|
||||
#set temp = deepcopy($config)
|
||||
#set temp["device"] = $device
|
||||
#set devices[index] = $temp
|
||||
#set index = $index + 1
|
||||
#end for
|
||||
#end if
|
||||
#set devices = json.dumps($devices, encoding='utf-8')
|
||||
|
||||
{
|
||||
"name": "ceph_env",
|
||||
"description": "",
|
||||
"cookbook_versions": {
|
||||
"ceph": "~> 0.2.1"
|
||||
},
|
||||
"json_class": "Chef::Environment",
|
||||
"chef_type": "environment",
|
||||
"default_attributes": {
|
||||
"ceph": {
|
||||
"config": {
|
||||
"fsid": "$fsid",
|
||||
"global": {
|
||||
"public network": "$public_network_subnet",
|
||||
"cluster network": "$cluster_network_subnet",
|
||||
"auth cluster required": "cephx",
|
||||
"auth service required": "cephx",
|
||||
"auth client required": "cephx",
|
||||
"osd pool default pg num": "$osd_pool_pg_num",
|
||||
"osd pool default pgp num": "$osd_pool_pgp_num",
|
||||
"osd pool default size": "$osd_pool_size"
|
||||
},
|
||||
"mon": {
|
||||
"debug mon": "20",
|
||||
"debug paxos": "1/5",
|
||||
"debug auth": "2"
|
||||
},
|
||||
"osd": {
|
||||
"osd journal size": "$journal_size",
|
||||
"filestore xattr use omap": true,
|
||||
"osd op threads": $osd_op_threads
|
||||
}
|
||||
},
|
||||
"osd_devices": $devices
|
||||
}
|
||||
},
|
||||
"override_attributes": {
|
||||
}
|
||||
}
|
@ -0,0 +1,40 @@
|
||||
#import uuid
|
||||
#set UUID = str(uuid.uuid4())
|
||||
{
|
||||
"name": "ceph_env",
|
||||
"description": "",
|
||||
"cookbook_versions": {
|
||||
"ceph": "~> 0.2.1"
|
||||
},
|
||||
"json_class": "Chef::Environment",
|
||||
"chef_type": "environment",
|
||||
"default_attributes": {
|
||||
"ceph": {
|
||||
"config": {
|
||||
"fsid": "$UUID",
|
||||
"global": {
|
||||
"public network": "10.145.88.0/23",
|
||||
"cluster network": "172.16.100.0/24",
|
||||
"auth cluster required": "cephx",
|
||||
"auth service required": "cephx",
|
||||
"auth client required": "cephx",
|
||||
"osd pool default pg num": "1024",
|
||||
"osd pool default pgp num": "1024",
|
||||
"osd pool default size": "3"
|
||||
},
|
||||
"mon": {
|
||||
"debug mon": "20",
|
||||
"debug paxos": "1/5",
|
||||
"debug auth": "2"
|
||||
},
|
||||
"osd": {
|
||||
"osd journal size": "10000",
|
||||
"filestore xattr use omap": true,
|
||||
"osd op threads": 10
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"override_attributes": {
|
||||
}
|
||||
}
|
@ -0,0 +1,407 @@
|
||||
#set ha_vip = $getVar('ha_vip')
|
||||
#set ha_proxy_role = $getVar('os_ha', None)
|
||||
#set ha_proxy_nic = $ha_proxy_role.management.interface
|
||||
|
||||
#set controller_role = $getVar('os_compute_controller', None)
|
||||
|
||||
## Contoller node management IP/interface
|
||||
#set controller_ip = $controller_role.management.ip
|
||||
#set controller_nic = $controller_role.management.interface
|
||||
|
||||
## Compute node management IP/interface
|
||||
#set compute_role = $getVar('os_compute_worker', None)
|
||||
#set compute_nic = $compute_role.management.interface
|
||||
|
||||
## Network server/worker node IP/interface
|
||||
#set network_server_role = $get_role('os_network_server', [$controller_role])
|
||||
#set network_worker_role = $get_role('os_network_worker', [$compute_role])
|
||||
|
||||
#set network_server_ip = $network_server_role.management.ip
|
||||
#set network_server_nic = $network_server_role.management.interface
|
||||
|
||||
## Network worker node management IP/interface
|
||||
#set network_worker_ip = $network_worker_role.management.ip
|
||||
#set network_worker_nic = $network_worker_role.management.interface
|
||||
#set network_worker_public_nic = $network_worker_role.public.interface
|
||||
#set network_worker_tenant_nic = $network_worker_role.tenant.interface
|
||||
|
||||
## Database node management IP
|
||||
#set db_role = $get_role('os_ops_database', $controller_role)
|
||||
#set db_ip = $db_role.management.ip
|
||||
#set db_nic = $db_role.management.interface
|
||||
|
||||
## Message queue node management IP/interface
|
||||
#set msg_queue_role = $get_role('os_ops_messaging', $controller_role)
|
||||
#set msg_queue_ip = $msg_queue_role.management.ip
|
||||
|
||||
## Identity (keystone) node IP/interface
|
||||
#set identity_role = $get_role('os_identity', $controller_role)
|
||||
#set identity_ip = $identity_role.management.ip
|
||||
#set identity_nic = $identity_role.management.interface
|
||||
|
||||
## Glance node management IP/interface
|
||||
#set glance_role = $get_role('os_image', $controller_role)
|
||||
#set glance_ip = $glance_role.management.ip
|
||||
#set glance_nic = $glance_role.management.interface
|
||||
|
||||
## Cinder node management IP/interface
|
||||
#set cinder_role = $get_role('os_block_storage_controller', $controller_role)
|
||||
#set cinder_controller_ip = $cinder_role.management.ip
|
||||
#set cinder_controller_nic = $cinder_role.management.interface
|
||||
|
||||
## Dashboard node management IP/interface
|
||||
#set dash_role = $get_role('os_dashboard', $controller_role)
|
||||
#set dash_ip = $dash_role.management.ip
|
||||
|
||||
#def get_role($role_name, $default_roles=None)
|
||||
#set target_role = $getVar($role_name, None)
|
||||
#if $target_role is None and $default_roles is not None
|
||||
#if isinstance($default_roles, list)
|
||||
#for $role in $default_roles
|
||||
#if $role is not None
|
||||
#set target_role = $role
|
||||
#break
|
||||
#end if
|
||||
#end for
|
||||
#else
|
||||
#set target_role = $default_roles
|
||||
#end if
|
||||
#end if
|
||||
#return $target_role
|
||||
#end def
|
||||
{
|
||||
"name": "testing",
|
||||
"description": "Environment used in Ceph and Openstack Icehouse",
|
||||
"cookbook_versions": {
|
||||
},
|
||||
"json_class": "Chef::Environment",
|
||||
"chef_type": "environment",
|
||||
"default_attributes": {
|
||||
"ceph": {
|
||||
"keystone environment": "openstack-ceph",
|
||||
"radosgw domain": "test-ceph1",
|
||||
"is_keystone_integration": true,
|
||||
"config": {
|
||||
"fsid": "82850ab3-f2b7-4eed-b6c2-29178a005750",
|
||||
"global": {
|
||||
"public network": "10.145.88.0/23",
|
||||
"cluster network": "172.16.100.0/24",
|
||||
"osd pool default pg num": "512",
|
||||
"osd pool default pgp num": "512",
|
||||
"osd pool default size": "2",
|
||||
"max open files": "131072"
|
||||
},
|
||||
"osd": {
|
||||
"osd journal size": "10000",
|
||||
"filestore xattr use omap": true,
|
||||
"osd mkfs type": "xfs",
|
||||
"osd mount options xfs": "rw,noatime,inode64,logbsize=256k,delaylog",
|
||||
"osd mkfs options xfs": "-f -i size=2048",
|
||||
"filestore max inline xattr size": "254",
|
||||
"filestore max inline xattrs": "6",
|
||||
"osd_op_threads": "20",
|
||||
"filestore_queue_max_ops": "500",
|
||||
"filestore_queue_committing_max_ops": "5000",
|
||||
"journal_max_write_entries": "1000",
|
||||
"journal_queue_max_ops": "3000",
|
||||
"objecter_inflight_ops": "10240",
|
||||
"filestore_queue_max_bytes": "1048576000",
|
||||
"filestore_queue_committing_max_bytes": "1048576000",
|
||||
"journal_max_write_bytes": "1048576000",
|
||||
"journal_queue_max_bytes": "1048576000",
|
||||
"ms_dispatch_throttle_bytes": "1048576000",
|
||||
"objecter_infilght_op_bytes": "1048576000",
|
||||
"filestore_max_sync_interval": "10",
|
||||
"filestore_flusher": "false",
|
||||
"filestore_flush_min": "0",
|
||||
"filestore_sync_flush": true
|
||||
}
|
||||
}
|
||||
},
|
||||
"haproxy": {
|
||||
"incoming_address": "$ha_vip"
|
||||
},
|
||||
"keepalived": {
|
||||
"vip": {
|
||||
"ipaddress": "$ha_vip",
|
||||
"interface": "$ha_proxy_nic"
|
||||
}
|
||||
},
|
||||
"mysql": {
|
||||
"server_root_password": "test",
|
||||
"server_debian_password": "root",
|
||||
"server_repl_password": "root",
|
||||
"allow_remote_root": true,
|
||||
"root_network_acl": "%"
|
||||
},
|
||||
"collectd": {
|
||||
"server": {
|
||||
"host": "metrics",
|
||||
"port": "2003",
|
||||
"protocol": "udp"
|
||||
}
|
||||
},
|
||||
"openstack": {
|
||||
"auth": {
|
||||
"validate_certs": false
|
||||
},
|
||||
"block-storage": {
|
||||
"syslog": {
|
||||
"use": false
|
||||
},
|
||||
"api": {
|
||||
"ratelimit": "False"
|
||||
},
|
||||
"debug": true,
|
||||
"volume": {
|
||||
"driver": "cinder.volume.drivers.rbd.RBDDriver"
|
||||
},
|
||||
"rbd_pool": "volumes",
|
||||
"rbd_secret_uuid": "8b8441cc-949c-43ce-8bbc-f50e3bfeeaee",
|
||||
"rbd_ceph_conf": "/etc/ceph/ceph.conf",
|
||||
"rbd_flatten_volume_from_snapshot": false,
|
||||
"rbd_max_clone_depth": 5,
|
||||
"glance_api_version": 2
|
||||
},
|
||||
"dashboard": {
|
||||
"use_ssl": "false"
|
||||
},
|
||||
"compute": {
|
||||
"syslog": {
|
||||
"use": false
|
||||
},
|
||||
"libvirt": {
|
||||
"bind_interface": "$compute_nic",
|
||||
"images_type": "rbd",
|
||||
"images_rbd_pool": "vms"
|
||||
},
|
||||
"novnc_proxy": {
|
||||
"bind_interface": "$compute_nic"
|
||||
},
|
||||
"xvpvnc_proxy": {
|
||||
"bind_interface": "$compute_nic"
|
||||
},
|
||||
"ratelimit": {
|
||||
"api": {
|
||||
"enabled": false
|
||||
},
|
||||
"volume": {
|
||||
"enabled": false
|
||||
}
|
||||
},
|
||||
"network": {
|
||||
"service_type": "neutron"
|
||||
}
|
||||
},
|
||||
"network": {
|
||||
"verbose": "True",
|
||||
"debug": "True",
|
||||
"service_plugins": [
|
||||
"router"
|
||||
],
|
||||
"ml2": {
|
||||
"type_drivers": "gre",
|
||||
"tenant_network_types": "gre",
|
||||
"tunnel_id_ranges": "1:1000",
|
||||
"enable_security_group": "True"
|
||||
},
|
||||
"openvswitch": {
|
||||
"tenant_network_type": "gre",
|
||||
"enable_tunneling": "True",
|
||||
"tunnel_id_ranges": "1:1000",
|
||||
"bind_interface": "$network_worker_tenant_nic"
|
||||
},
|
||||
"l3": {
|
||||
"external_network_bridge_interface": "$network_worker_public_nic"
|
||||
}
|
||||
},
|
||||
"db": {
|
||||
"bind_interface": "$db_nic",
|
||||
"compute": {
|
||||
"host": "$db_ip"
|
||||
},
|
||||
"identity": {
|
||||
"host": "$db_ip"
|
||||
},
|
||||
"image": {
|
||||
"host": "$db_ip"
|
||||
},
|
||||
"network": {
|
||||
"host": "$db_ip"
|
||||
},
|
||||
"volume": {
|
||||
"host": "$db_ip"
|
||||
},
|
||||
"dashboard": {
|
||||
"host": "$db_ip"
|
||||
}
|
||||
},
|
||||
"developer_mode": true,
|
||||
"endpoints": {
|
||||
"db": {
|
||||
"host": "$db_ip"
|
||||
},
|
||||
"mq": {
|
||||
"host": "$msg_queue_ip"
|
||||
},
|
||||
"compute-api": {
|
||||
"host": "$ha_vip",
|
||||
"scheme": "http",
|
||||
"port": "8774",
|
||||
"path": "/v2/%(tenant_id)s"
|
||||
},
|
||||
"compute-api-bind": {
|
||||
"bind_interface": "$controller_nic"
|
||||
},
|
||||
"compute-ec2-admin": {
|
||||
"host": "$ha_vip",
|
||||
"scheme": "http",
|
||||
"port": "8773",
|
||||
"path": "/services/Admin"
|
||||
},
|
||||
"compute-ec2-api": {
|
||||
"host": "$ha_vip",
|
||||
"scheme": "http",
|
||||
"port": "8773",
|
||||
"path": "/services/Cloud"
|
||||
},
|
||||
"compute-novnc": {
|
||||
"host": "$ha_vip",
|
||||
"scheme": "http",
|
||||
"port": "6080",
|
||||
"path": "/vnc_auto.html"
|
||||
},
|
||||
"compute-novnc-bind": {
|
||||
"bind_interface": "$controller_nic"
|
||||
},
|
||||
"compute-vnc-bind": {
|
||||
"bind_interface" : "$compute_nic"
|
||||
},
|
||||
"vnc_bind": {
|
||||
"bind_interface": "$controller_nic"
|
||||
},
|
||||
"image-api": {
|
||||
"host": "$ha_vip",
|
||||
"scheme": "http",
|
||||
"port": "9292",
|
||||
"path": "/v2"
|
||||
},
|
||||
"image-api-bind": {
|
||||
"bind_interface": "$glance_nic"
|
||||
},
|
||||
"image-registry": {
|
||||
"bind_interface": "$glance_nic"
|
||||
},
|
||||
"image-registry-bind": {
|
||||
"bind_interface": "$glance_nic"
|
||||
},
|
||||
"identity-bind": {
|
||||
"bind_interface": "$identity_nic"
|
||||
},
|
||||
"identity-api": {
|
||||
"host": "$ha_vip",
|
||||
"scheme": "http",
|
||||
"port": "5000",
|
||||
"path": "/v2.0"
|
||||
},
|
||||
"identity-admin": {
|
||||
"host": "$ha_vip",
|
||||
"scheme": "http",
|
||||
"port": "35357",
|
||||
"path": "/v2.0"
|
||||
},
|
||||
"block-storage-api": {
|
||||
"host": "$ha_vip",
|
||||
"scheme": "http",
|
||||
"port": "8776",
|
||||
"path": "/v1/%(tenant_id)s"
|
||||
},
|
||||
"block-storage-api-bind": {
|
||||
"bind_interface": "$cinder_controller_nic"
|
||||
},
|
||||
"network-api": {
|
||||
"host": "$ha_vip",
|
||||
"scheme": "http",
|
||||
"port": "9696",
|
||||
"path": ""
|
||||
},
|
||||
"network-api-bind": {
|
||||
"bind_interface": "$network_server_nic"
|
||||
}
|
||||
},
|
||||
"identity": {
|
||||
"admin_user": "admin",
|
||||
"bind_interface": "$identity_nic",
|
||||
"catalog": {
|
||||
"backend": "sql"
|
||||
},
|
||||
"debug": true,
|
||||
"roles": [
|
||||
"admin",
|
||||
"member"
|
||||
],
|
||||
"syslog": {
|
||||
"use": false
|
||||
},
|
||||
"tenants": [
|
||||
"admin",
|
||||
"service",
|
||||
"demo"
|
||||
],
|
||||
"token": {
|
||||
"backend": "sql"
|
||||
},
|
||||
"users": {
|
||||
"admin": {
|
||||
"password": "admin",
|
||||
"default_tenant": "admin",
|
||||
"roles": {
|
||||
"admin": [
|
||||
"admin"
|
||||
]
|
||||
}
|
||||
},
|
||||
"demo": {
|
||||
"password": "demo",
|
||||
"default_tenant": "demo",
|
||||
"roles": {
|
||||
"member": [
|
||||
"demo"
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"image": {
|
||||
"api": {
|
||||
"bind_interface": "$glance_nic",
|
||||
"default_store": "rbd"
|
||||
},
|
||||
"debug": true,
|
||||
"registry": {
|
||||
"bind_interface": "$glance_nic"
|
||||
},
|
||||
"syslog": {
|
||||
"use": false
|
||||
},
|
||||
"upload_image": {
|
||||
"cirros": "http://download.cirros-cloud.net/0.3.2/cirros-0.3.2-x86_64-disk.img"
|
||||
},
|
||||
"upload_images": [
|
||||
"cirros"
|
||||
]
|
||||
},
|
||||
"memcached_servers": [
|
||||
"$identity_ip:11211"
|
||||
],
|
||||
"mq": {
|
||||
"user": "guest",
|
||||
"password": "test",
|
||||
"vhost": "/nova",
|
||||
"network": {
|
||||
"service_type": "rabbitmq"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
@ -0,0 +1,462 @@
|
||||
#import simplejson as json
|
||||
#import uuid
|
||||
#from copy import deepcopy
|
||||
|
||||
## Ceph cluster config
|
||||
#set fsid = str(uuid.uuid4())
|
||||
#set rbd_secret_uuid = str(uuid.uuid4())
|
||||
|
||||
#set public_network_subnet = $network_mapping.public_network.subnet
|
||||
#set cluster_network_subnet = $network_mapping.cluster_network.subnet
|
||||
|
||||
#set osd_pool_pg_num = $getVar('osd_pool_pg_num', '1024')
|
||||
#set osd_pool_pgp_num = $getVar('osd_pool_pgp_num', '1024')
|
||||
#set osd_pool_size = $getVar('osd_pool_size', '3')
|
||||
|
||||
#set journal_size = $getVar('journal_size', '10000')
|
||||
#set osd_op_threads = $getVar('op_threads', 10)
|
||||
|
||||
#set devices = []
|
||||
#if not $getVar('osd_devices', {})
|
||||
#set devices_info = $osd_devices
|
||||
#set devices_num = len($devices_info)
|
||||
#set devices = [x for x in range($devices_num)]
|
||||
#set index = 0
|
||||
#for device, config in $devices_info.iteritems()
|
||||
#set temp = deepcopy($config)
|
||||
#set temp["device"] = $device
|
||||
#set devices[index] = $temp
|
||||
#set index = $index + 1
|
||||
#end for
|
||||
#end if
|
||||
#set devices = json.dumps($devices, encoding='utf-8')
|
||||
|
||||
#set radosgw_role = $getVar('ceph_radosgw', '')
|
||||
#set radosgw_domain = ''
|
||||
#if $radosgw_role != ''
|
||||
#set radosgw_domain = $radosgw_role.hostname
|
||||
#end if
|
||||
|
||||
|
||||
## OpenStack config
|
||||
## Contoller node management IP/interface
|
||||
#set controller_role = $get_role('os_compute_controller', $getVar('os_controller', None))
|
||||
#set controller_ip = $controller_role.management.ip
|
||||
#set controller_nic = $controller_role.management.interface
|
||||
|
||||
## Compute node management IP/interface
|
||||
#set compute_role = $getVar('os_compute_worker', None)
|
||||
#set compute_nic = $compute_role.management.interface
|
||||
|
||||
## Network server/worker node IP/interface
|
||||
#set network = $getVar('os_network', None)
|
||||
#set network_server_role = $get_role('os_network_server', [$network, $controller_role])
|
||||
#set network_worker_role = $get_role('os_network_worker', [$network, $compute_role])
|
||||
|
||||
#set network_server_ip = $network_server_role.management.ip
|
||||
#set network_server_nic = $network_server_role.management.interface
|
||||
|
||||
## Network worker node management IP/interface
|
||||
#set network_worker_ip = $network_worker_role.management.ip
|
||||
#set network_worker_nic = $network_worker_role.management.interface
|
||||
#set network_worker_public_nic = $network_worker_role.public.interface
|
||||
#set network_worker_tenant_nic = $network_worker_role.tenant.interface
|
||||
|
||||
## Database node management IP
|
||||
#set db_role = $get_role('os_ops_database', $controller_role)
|
||||
#set db_ip = $db_role.management.ip
|
||||
#set db_nic = $db_role.management.interface
|
||||
|
||||
## Message queue node management IP/interface
|
||||
#set msg_queue_role = $get_role('os_ops_messaging', $controller_role)
|
||||
#set msg_queue_ip = $msg_queue_role.management.ip
|
||||
|
||||
## Identity (keystone) node IP/interface
|
||||
#set identity_role = $get_role('os_identity', $controller_role)
|
||||
#set identity_ip = $identity_role.management.ip
|
||||
#set identity_nic = $identity_role.management.interface
|
||||
|
||||
## Glance node management IP/interface
|
||||
#set glance_role = $get_role('os_image', $controller_role)
|
||||
#set glance_ip = $glance_role.management.ip
|
||||
#set glance_nic = $glance_role.management.interface
|
||||
|
||||
## Cinder node management IP/interface
|
||||
#set cinder_role = $get_role('os_block_storage_controller', $controller_role)
|
||||
#set cinder_controller_ip = $cinder_role.management.ip
|
||||
#set cinder_controller_nic = $cinder_role.management.interface
|
||||
|
||||
## Dashboard node management IP/interface
|
||||
#set dash_role = $get_role('os_dashboard', $controller_role)
|
||||
#set dash_ip = $dash_role.management.ip
|
||||
|
||||
#def get_role($role_name, $default_roles=None)
|
||||
#set target_role = $getVar($role_name, None)
|
||||
#if $target_role is None and $default_roles is not None
|
||||
#if isinstance($default_roles, list)
|
||||
#for $role in $default_roles
|
||||
#if $role is not None
|
||||
#set target_role = $role
|
||||
#break
|
||||
#end if
|
||||
#end for
|
||||
#else
|
||||
#set target_role = $default_roles
|
||||
#end if
|
||||
#end if
|
||||
#return $target_role
|
||||
#end def
|
||||
{
|
||||
"name": "testing",
|
||||
"description": "Environment used in testing the upstream cookbooks and reference Chef repository",
|
||||
"cookbook_versions": {
|
||||
},
|
||||
"json_class": "Chef::Environment",
|
||||
"chef_type": "environment",
|
||||
"default_attributes": {
|
||||
"ceph": {
|
||||
"keystone environment": "openstack-ceph",
|
||||
"radosgw domain": "$radosgw_domain",
|
||||
"config": {
|
||||
"fsid": "$fsid",
|
||||
"global": {
|
||||
"public network": "$public_network_subnet",
|
||||
"cluster network": "$cluster_network_subnet",
|
||||
"osd pool default pg num": "$osd_pool_pg_num",
|
||||
"osd pool default pgp num": "$osd_pool_pgp_num",
|
||||
"osd pool default size": "$osd_pool_size",
|
||||
"max open files": "131072"
|
||||
},
|
||||
"osd": {
|
||||
"osd journal size": "$journal_size",
|
||||
"filestore xattr use omap": true,
|
||||
"osd mkfs type": "xfs",
|
||||
"osd mount options xfs": "rw,noatime,inode64,logbsize=256k,delaylog",
|
||||
"osd mkfs options xfs": "-f -i size=2048",
|
||||
"filestore max inline xattr size": "254",
|
||||
"filestore max inline xattrs": "6",
|
||||
"osd_op_threads": "$osd_op_threads",
|
||||
"filestore_queue_max_ops": "500",
|
||||
"filestore_queue_committing_max_ops": "5000",
|
||||
"journal_max_write_entries": "1000",
|
||||
"journal_queue_max_ops": "3000",
|
||||
"objecter_inflight_ops": "10240",
|
||||
"filestore_queue_max_bytes": "1048576000",
|
||||
"filestore_queue_committing_max_bytes": "1048576000",
|
||||
"journal_max_write_bytes": "1048576000",
|
||||
"journal_queue_max_bytes": "1048576000",
|
||||
"ms_dispatch_throttle_bytes": "1048576000",
|
||||
"objecter_infilght_op_bytes": "1048576000",
|
||||
"filestore_max_sync_interval": "10",
|
||||
"filestore_flusher": "false",
|
||||
"filestore_flush_min": "0",
|
||||
"filestore_sync_flush": true
|
||||
}
|
||||
},
|
||||
"osd_devices": $devices
|
||||
},
|
||||
"mysql": {
|
||||
"server_root_password": "test",
|
||||
"server_debian_password": "root",
|
||||
"server_repl_password": "root",
|
||||
"allow_remote_root": true,
|
||||
"root_network_acl": "%"
|
||||
},
|
||||
"collectd": {
|
||||
"server": {
|
||||
"host": "metrics",
|
||||
"port": "2003",
|
||||
"protocol": "udp"
|
||||
}
|
||||
},
|
||||
"openstack": {
|
||||
"auth": {
|
||||
"validate_certs": false
|
||||
},
|
||||
"block-storage": {
|
||||
"syslog": {
|
||||
"use": false
|
||||
},
|
||||
"api": {
|
||||
"ratelimit": "False"
|
||||
},
|
||||
"volume": {
|
||||
"driver": "cinder.volume.drivers.rbd.RBDDriver"
|
||||
},
|
||||
"debug": true,
|
||||
"rbd_pool": "volumes",
|
||||
"rbd_secret_uuid": "$rbd_secret_uuid",
|
||||
"rbd_ceph_conf": "/etc/ceph/ceph.conf",
|
||||
"rbd_flatten_volume_from_snapshot": false,
|
||||
"rbd_max_clone_depth": 5,
|
||||
"glance_api_version": 2
|
||||
},
|
||||
"dashboard": {
|
||||
"use_ssl": "false"
|
||||
},
|
||||
"compute": {
|
||||
"syslog": {
|
||||
"use": false
|
||||
},
|
||||
"libvirt": {
|
||||
"bind_interface": "$compute_nic",
|
||||
"images_type": "rbd",
|
||||
"images_rbd_pool": "vms"
|
||||
},
|
||||
"novnc_proxy": {
|
||||
"bind_interface": "$compute_nic"
|
||||
},
|
||||
"xvpvnc_proxy": {
|
||||
"bind_interface": "$compute_nic"
|
||||
},
|
||||
"ratelimit": {
|
||||
"api": {
|
||||
"enabled": false
|
||||
},
|
||||
"volume": {
|
||||
"enabled": false
|
||||
}
|
||||
},
|
||||
"network": {
|
||||
"service_type": "neutron"
|
||||
}
|
||||
},
|
||||
"network": {
|
||||
"verbose": "True",
|
||||
"debug": "True",
|
||||
"service_plugins": [
|
||||
"router"
|
||||
],
|
||||
"ml2": {
|
||||
"type_drivers": "gre",
|
||||
"tenant_network_types": "gre",
|
||||
"tunnel_id_ranges": "1:1000",
|
||||
"enable_security_group": "True"
|
||||
},
|
||||
"openvswitch": {
|
||||
"tenant_network_type": "gre",
|
||||
"enable_tunneling": "True",
|
||||
"tunnel_id_ranges": "1:1000",
|
||||
"bind_interface": "$network_worker_tenant_nic"
|
||||
},
|
||||
"l3": {
|
||||
"external_network_bridge_interface": "$network_worker_public_nic"
|
||||
}
|
||||
},
|
||||
"db": {
|
||||
"bind_interface": "$db_nic",
|
||||
"compute": {
|
||||
"host": "$db_ip"
|
||||
},
|
||||
"identity": {
|
||||
"host": "$db_ip"
|
||||
},
|
||||
"image": {
|
||||
"host": "$db_ip"
|
||||
},
|
||||
"network": {
|
||||
"host": "$db_ip"
|
||||
},
|
||||
"volume": {
|
||||
"host": "$db_ip"
|
||||
},
|
||||
"dashboard": {
|
||||
"host": "$db_ip"
|
||||
},
|
||||
"telemetry": {
|
||||
"host": "$db_ip"
|
||||
},
|
||||
"orchestration": {
|
||||
"host": "$db_ip"
|
||||
}
|
||||
},
|
||||
"developer_mode": true,
|
||||
"endpoints": {
|
||||
"db": {
|
||||
"host": "$db_ip"
|
||||
},
|
||||
"mq": {
|
||||
"host": "$msg_queue_ip"
|
||||
},
|
||||
"compute-api": {
|
||||
"host": "$controller_ip",
|
||||
"scheme": "http",
|
||||
"port": "8774",
|
||||
"path": "/v2/%(tenant_id)s"
|
||||
},
|
||||
"compute-api-bind": {
|
||||
"bind_interface": "$controller_nic"
|
||||
},
|
||||
"compute-ec2-admin": {
|
||||
"host": "$controller_ip",
|
||||
"scheme": "http",
|
||||
"port": "8773",
|
||||
"path": "/services/Admin"
|
||||
},
|
||||
"compute-ec2-api": {
|
||||
"host": "$controller_ip",
|
||||
"scheme": "http",
|
||||
"port": "8773",
|
||||
"path": "/services/Cloud"
|
||||
},
|
||||
"compute-novnc": {
|
||||
"host": "$controller_ip",
|
||||
"scheme": "http",
|
||||
"port": "6080",
|
||||
"path": "/vnc_auto.html"
|
||||
},
|
||||
"compute-novnc-bind": {
|
||||
"bind_interface": "$controller_nic"
|
||||
},
|
||||
"compute-vnc-bind": {
|
||||
"bind_interface" : "$compute_nic"
|
||||
},
|
||||
"vnc_bind": {
|
||||
"bind_interface": "$controller_nic"
|
||||
},
|
||||
"image-api": {
|
||||
"host": "$glance_ip",
|
||||
"scheme": "http",
|
||||
"port": "9292",
|
||||
"path": "/v2"
|
||||
},
|
||||
"image-api-bind": {
|
||||
"bind_interface": "$glance_nic"
|
||||
},
|
||||
"image-registry": {
|
||||
"host": "$glance_ip",
|
||||
"scheme": "http",
|
||||
"port": "9191",
|
||||
"path": "/v2"
|
||||
},
|
||||
"image-registry-bind": {
|
||||
"bind_interface": "$glance_nic"
|
||||
},
|
||||
"identity-bind": {
|
||||
"bind_interface": "$identity_nic"
|
||||
},
|
||||
"identity-api": {
|
||||
"host": "$identity_ip",
|
||||
"scheme": "http",
|
||||
"port": "5000",
|
||||
"path": "/v2.0"
|
||||
},
|
||||
"identity-admin": {
|
||||
"host": "$identity_ip",
|
||||
"scheme": "http",
|
||||
"port": "35357",
|
||||
"path": "/v2.0"
|
||||
},
|
||||
"block-storage-api": {
|
||||
"host": "$cinder_controller_ip",
|
||||
"scheme": "http",
|
||||
"port": "8776",
|
||||
"path": "/v1/%(tenant_id)s"
|
||||
},
|
||||
"block-storage-api-bind": {
|
||||
"bind_interface": "$cinder_controller_nic"
|
||||
},
|
||||
"telemetry-api": {
|
||||
"host": "$controller_ip",
|
||||
"scheme": "http",
|
||||
"port": "8777",
|
||||
"path": "/v1"
|
||||
},
|
||||
"network-api": {
|
||||
"host": "$network_server_ip",
|
||||
"scheme": "http",
|
||||
"port": "9696",
|
||||
"path": ""
|
||||
},
|
||||
"network-api-bind": {
|
||||
"bind_interface": "$network_server_nic"
|
||||
},
|
||||
"orchestration-api": {
|
||||
"host": "$controller_ip",
|
||||
"scheme": "http",
|
||||
"port": "8004",
|
||||
"path": "/v1/%(tenant_id)s"
|
||||
},
|
||||
"orchestration-api-cfn": {
|
||||
"host": "$controller_ip",
|
||||
"scheme": "http",
|
||||
"port": "8000",
|
||||
"path": "/v1"
|
||||
}
|
||||
},
|
||||
"identity": {
|
||||
"admin_user": "admin",
|
||||
"bind_interface": "$identity_nic",
|
||||
"catalog": {
|
||||
"backend": "sql"
|
||||
},
|
||||
"debug": true,
|
||||
"roles": [
|
||||
"admin",
|
||||
"member"
|
||||
],
|
||||
"syslog": {
|
||||
"use": false
|
||||
},
|
||||
"tenants": [
|
||||
"admin",
|
||||
"service",
|
||||
"demo"
|
||||
],
|
||||
"token": {
|
||||
"backend": "sql"
|
||||
},
|
||||
"users": {
|
||||
"admin": {
|
||||
"password": "admin",
|
||||
"default_tenant": "admin",
|
||||
"roles": {
|
||||
"admin": [
|
||||
"admin"
|
||||
]
|
||||
}
|
||||
},
|
||||
"demo": {
|
||||
"password": "demo",
|
||||
"default_tenant": "demo",
|
||||
"roles": {
|
||||
"member": [
|
||||
"demo"
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"image": {
|
||||
"api": {
|
||||
"bind_interface": "$glance_nic",
|
||||
"default_store": "rbd"
|
||||
},
|
||||
"debug": true,
|
||||
"registry": {
|
||||
"bind_interface": "$glance_nic"
|
||||
},
|
||||
"syslog": {
|
||||
"use": false
|
||||
},
|
||||
"upload_image": {
|
||||
"cirros": "http://download.cirros-cloud.net/0.3.2/cirros-0.3.2-x86_64-disk.img"
|
||||
},
|
||||
"upload_images": [
|
||||
"cirros"
|
||||
]
|
||||
},
|
||||
"memcached_servers": [
|
||||
"$identity_ip:11211"
|
||||
],
|
||||
"mq": {
|
||||
"user": "guest",
|
||||
"password": "test",
|
||||
"vhost": "/nova",
|
||||
"network": {
|
||||
"service_type": "rabbitmq"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
@ -28,7 +28,7 @@
|
||||
#end if
|
||||
#if $val.is_mgmt:
|
||||
#set mac_key = '-'.join(('macaddress', $nic))
|
||||
#set dns_key = '-'.join(('dns', $nic))
|
||||
#set dns_key = '-'.join(('dnsname', $nic))
|
||||
#set $rekeyed[$mac_key] = $mac
|
||||
#set $rekeyed[$dns_key] = $dns
|
||||
#end if
|
||||
|
Loading…
x
Reference in New Issue
Block a user