sed --i "s@10.4.1.1@$admnet@g" ./bundles.yaml
cephdisk=`grep "disk" deployconfig.yaml | cut -d ':' -f 2 | sed -e 's/ //'`
sed --i "s@osd-devices: /srv@osd-devices: $cephdisk@g" ./bundles.yaml
+ osdomname=`grep "os-domain-name" deployconfig.yaml | cut -d ':' -f 2 | sed -e 's/ //'`
+ if [ "$osdomname" != "''" ]; then
+ sed --i "s@#os-public-hostname: pod.maas@os-public-hostname: api.$osdomname@g" ./bundles.yaml
+ sed --i "s@#console-proxy-ip: pod.maas@console-proxy-ip: $osdomname@g" ./bundles.yaml
+ fi
fi
fi
}
opnfvlabcfg['opnfv']={'ext-port':'','floating-ip-range':'','dataNetwork':'','ceph-disk':'/srv/',\
- 'storageNetwork':'','interface-enable':'','publicNetwork':''}
+ 'storageNetwork':'','interface-enable':'','publicNetwork':'',\
+ 'os-domain-name':''}
opnfvcfg['demo-maas']['maas']['apt_sources'].append("ppa:maas/stable")
opnfvcfg['demo-maas']['maas']['apt_sources'].append("ppa:juju/stable")
opnfvlabcfg["opnfv"]["ext-port"]=labcfg["lab"]["racks"][0]["ext-port"]
opnfvlabcfg["opnfv"]["ceph-disk"]=labcfg["opnfv"]["storage"][0]["disk"]
opnfvlabcfg["opnfv"]["interface-enable"]=",".join(list(set(ifnamelist)))
+opnfvlabcfg["opnfv"]["os-domain-name"] = labcfg["lab"]["racks"][0]["osdomainname"]
with open('deployment.yaml', 'wa') as opnfvf:
yaml.dump(opnfvcfg, opnfvf, default_flow_style=False)
#ceph-osd-replication-count: 2
admin-role: admin
keystone-admin-role: admin
+ use-internal-endpoints: true
+ #os-public-hostname: pod.maas
openstack-phase1:
services:
- hacluster-nova:ha
- - openstack-dashboard:ha
- hacluster-horizon:ha
+ - - ceilometer:ha
+ - hacluster-ceilometer:ha
+ - - cinder:ha
+ - hacluster-cinder:ha
+ - - heat:ha
+ - hacluster-heat:ha
- - nova-compute:amqp
- rabbitmq-server:amqp
- - neutron-gateway:amqp
hacluster-keystone:
charm: "local:trusty/hacluster"
options:
+ corosync_transport: unicast
corosync_key: |
'QisjNpoKHLkvyc3PEdDHP5VZjgD0kOk9t0ABPWmCELlu5AgWgnW6bJd34BVXO7VhW+3ZwNQM3W+bZ3pl28ftY4ki4N/S0KLFNia5egFgiA3AH2QXLnokS7OYXuu6GMJJ1S5mDe6P5zU+tfJe/Mebq24u7CgR0gAvohSPRdDTwdY='
+ hacluster-cinder:
+ charm: "local:trusty/hacluster"
+ options:
+ corosync_transport: unicast
+ corosync_key: |
+ 'cc6n5Zv6M2mQ2mUhTx/aKoImQ7q77pKDdkSwBUG5VqoSb23SxnGUsAxH5E8lOeCZ84EURzS71FEb8F9P5YY+2deh0+tdXukoKTugdVmJfarahPpWpEEZRRCigUngdFw/479FOcFCkN1SJtQNqWi1ACYSn1/GRoQ2vP+2byrkV6E='
+ hacluster-heat:
+ charm: "local:trusty/hacluster"
+ options:
+ corosync_transport: unicast
+ corosync_key: |
+ 'tNeFXmOqzytRq7loxLMDaaMqZZXjC7BNfMbcKxSNeIPyBj4lkJwHZyuV7mo0ogzcfVJqLBHBULai+ed9uyWCZJxLXoi+WwTj5AqcXfxfSo9vLCthukJJ4zuKvzeGibZRszwINf32RW9jtXSCPosv8a+9MSg49KD1c9fS20aEuIM='
hacluster-horizon:
charm: "local:trusty/hacluster"
options:
+ corosync_transport: unicast
corosync_key: |
'aCVPHw6XYne+Hxv0WPiM3+yEfeIxs0Ly0EMKB494Rdzjf5rE52GcXqqxuvIa/nXJ4GCR+UdKk9FEwcASfYkeu3HDWUld9uTE6pOc+ibWYnybNH7VBfEHW8h9YmQKs3HD2T3wlTcS2irU4CUW7/IKNok4etYdM3iFn1K2ReSGXEI='
+ hacluster-ceilometer:
+ charm: "local:trusty/hacluster"
+ options:
+ corosync_transport: unicast
+ corosync_key: |
+ 'cHkgKGJpdHMgPSA5NjApLgpQcmVzcyBrZXlzIG9uIHlvdXIga2V5Ym9hcmQgdG8gZ2VuZXJhdGUgZW50cm9weSAoYml0cyA9IDEwMDgpLgpXcml0aW5nIGNvcm9zeW5jIGtleSB0byAvZXRjL2Nvcm9zeW5jL2F1dGhrZXkuCg=='
hacluster-nova:
charm: "local:trusty/hacluster"
options:
+ corosync_transport: unicast
corosync_key: |
'gel86qmEze8dYKYbfqIgRpqapJpKtdYL2hxC1y5nWYBPq7EMf6V8mF01IjeUkSRs14CUDrsPpT4PWeom7EOY2fleuLx/aIuqQUfEDkhf/gvaz7BaU4hrmTCoDBK7/HvEwY+/wu4qkEeckzSRPsm9MYzqnLRshh8yjZJ70xU/mmk='
hacluster-neutron:
charm: "local:trusty/hacluster"
options:
+ corosync_transport: unicast
corosync_key: |
'KNhb4++3jlllbnscS5D3qdzOJDsQPEeZ7zOLZJHbkKrRjX9gRCijVVOiv2JCvq03HqQ7LIufQzWGl9Za8qh0f6QmQ3XhFh/Cb/3WaYFj+tEf0zArWv+8miswmM1z4eyTSrTWBq0dTgx1z96wjBxP5HV0+1LWW+3Ei4oZWyRGeR0='
hacluster-glance:
charm: "local:trusty/hacluster"
options:
+ corosync_transport: unicast
corosync_key: |
'el1dd8107J5mwQDPS7tEJPZrr0XFfL95+Tku/QG90W5Q5f5SP4W8TRfKvddGmZWZl2lVd1neG5WqaHa1mq/aScJpoflzVAJCvshN7Gd2AjHhLNNugeI8S90j/7wrKUhqiCAlkKaeri2xs5bB5PZ7Z9AHuNZL7SW1al8lxrKhUFI='
hacluster-mysql:
charm: "local:trusty/hacluster"
options:
+ corosync_transport: unicast
corosync_key: |
'Q29yb3N5bmMgQ2x1c3RlciBFbmdpbmUgQXV0aGVudGljYXRpb24ga2V5IGdlbmVyYXRvci4KR2F0aGVyaW5nIDEwMjQgYml0cyBmb3Iga2V5IGZyb20gL2Rldi9yYW5kb20uClByZXNzIGtleXMgb24geW91ciBrZXlib2FyZCB0byBnZW5lcmF0ZSBlbnRyb3B5LgpQcmVzcyBrZXlzIG9uIHlvdXIga2V5Ym9hcmQgdG8gZ2VuZXJhdGUgZW50cm9weSAoYml0cyA9IDkyMCkuClByZXNzIGtleXMgb24geW91ciBrZXlib2FyZCB0byBnZW5lcmF0ZSBlbnRyb3B5IChiaXRzID0gMTAwMCkuCldyaXRpbmcgY29yb3N5bmMga2V5IHRvIC9ldGMvY29yb3N5bmMvYXV0aGtleS4K'
ceilometer:
charm: "local:trusty/ceilometer"
num_units: 3
+ options:
+ vip: 10.4.1.14
to:
- "lxc:nodes=0"
- "lxc:nodes=1"
options:
block-device: None
glance-api-version: 2
- ha-mcastport: 5401
+ vip: 10.4.1.19
to:
- "lxc:nodes=2"
- "lxc:nodes=3"
charm: "local:trusty/glance"
num_units: 3
options:
- ha-mcastport: 5402
vip: 10.4.1.12
to:
- "lxc:nodes=3"
options:
admin-password: openstack
admin-token: admin
- ha-mcastport: 5403
vip: 10.4.1.13
to:
- "lxc:nodes=4"
charm: "local:trusty/percona-cluster"
num_units: 3
options:
+ min-cluster-size: 3
max-connections: 20000
lp1366997-workaround: true
root-password: 293rhc395m
num_units: 3
options:
console-access-protocol: novnc
+ #console-proxy-ip: pod.maas
network-manager: Neutron
service-guard: true
vip: 10.4.1.16
secret: admin
webroot: /
vip: 10.4.1.11
+ endpoint-type: internalURL
to:
- "lxc:nodes=3"
- "lxc:nodes=4"
rabbitmq-server:
charm: "local:trusty/rabbitmq-server"
num_units: 3
+ options:
+ vip: 10.4.1.10
to:
- "lxc:nodes=4"
- "lxc:nodes=0"
- "lxc:nodes=1"
heat:
charm: "local:trusty/heat"
+ num_units: 3
+ options:
+ vip: 10.4.1.18
to:
- - "lxc:nodes=0"
+ - "lxc:nodes=2"
+ - "lxc:nodes=3"
+ - "lxc:nodes=4"
congress:
charm: local:trusty/congress
options:
options:
block-device: None
glance-api-version: 2
- ha-mcastport: 5401
to:
- "lxc:nodes=1"
cinder-ceph:
glance:
charm: "local:trusty/glance"
options:
- ha-mcastport: 5402
to:
- "lxc:nodes=0"
opnfv-promise:
options:
admin-password: openstack
admin-token: admin
- ha-mcastport: 5403
to:
- "lxc:nodes=0"
mongodb:
options:
block-device: None
glance-api-version: 2
-# ha-mcastport: 5401
# openstack-origin-git: include-file://cinder-master.yaml
to:
- "lxc:nodes=1"
hacluster-keystone:
charm: "local:trusty/hacluster"
options:
+ corosync_transport: unicast
corosync_key: |
'QisjNpoKHLkvyc3PEdDHP5VZjgD0kOk9t0ABPWmCELlu5AgWgnW6bJd34BVXO7VhW+3ZwNQM3W+bZ3pl28ftY4ki4N/S0KLFNia5egFgiA3AH2QXLnokS7OYXuu6GMJJ1S5mDe6P5zU+tfJe/Mebq24u7CgR0gAvohSPRdDTwdY='
hacluster-cinder:
charm: "local:trusty/hacluster"
options:
+ corosync_transport: unicast
corosync_key: |
'cc6n5Zv6M2mQ2mUhTx/aKoImQ7q77pKDdkSwBUG5VqoSb23SxnGUsAxH5E8lOeCZ84EURzS71FEb8F9P5YY+2deh0+tdXukoKTugdVmJfarahPpWpEEZRRCigUngdFw/479FOcFCkN1SJtQNqWi1ACYSn1/GRoQ2vP+2byrkV6E='
hacluster-heat:
charm: "local:trusty/hacluster"
options:
+ corosync_transport: unicast
corosync_key: |
'tNeFXmOqzytRq7loxLMDaaMqZZXjC7BNfMbcKxSNeIPyBj4lkJwHZyuV7mo0ogzcfVJqLBHBULai+ed9uyWCZJxLXoi+WwTj5AqcXfxfSo9vLCthukJJ4zuKvzeGibZRszwINf32RW9jtXSCPosv8a+9MSg49KD1c9fS20aEuIM='
hacluster-horizon:
charm: "local:trusty/hacluster"
options:
+ corosync_transport: unicast
corosync_key: |
'aCVPHw6XYne+Hxv0WPiM3+yEfeIxs0Ly0EMKB494Rdzjf5rE52GcXqqxuvIa/nXJ4GCR+UdKk9FEwcASfYkeu3HDWUld9uTE6pOc+ibWYnybNH7VBfEHW8h9YmQKs3HD2T3wlTcS2irU4CUW7/IKNok4etYdM3iFn1K2ReSGXEI='
hacluster-nova:
charm: "local:trusty/hacluster"
options:
+ corosync_transport: unicast
corosync_key: |
'gel86qmEze8dYKYbfqIgRpqapJpKtdYL2hxC1y5nWYBPq7EMf6V8mF01IjeUkSRs14CUDrsPpT4PWeom7EOY2fleuLx/aIuqQUfEDkhf/gvaz7BaU4hrmTCoDBK7/HvEwY+/wu4qkEeckzSRPsm9MYzqnLRshh8yjZJ70xU/mmk='
hacluster-neutron:
charm: "local:trusty/hacluster"
options:
+ corosync_transport: unicast
corosync_key: |
'KNhb4++3jlllbnscS5D3qdzOJDsQPEeZ7zOLZJHbkKrRjX9gRCijVVOiv2JCvq03HqQ7LIufQzWGl9Za8qh0f6QmQ3XhFh/Cb/3WaYFj+tEf0zArWv+8miswmM1z4eyTSrTWBq0dTgx1z96wjBxP5HV0+1LWW+3Ei4oZWyRGeR0='
hacluster-glance:
charm: "local:trusty/hacluster"
options:
+ corosync_transport: unicast
corosync_key: |
'el1dd8107J5mwQDPS7tEJPZrr0XFfL95+Tku/QG90W5Q5f5SP4W8TRfKvddGmZWZl2lVd1neG5WqaHa1mq/aScJpoflzVAJCvshN7Gd2AjHhLNNugeI8S90j/7wrKUhqiCAlkKaeri2xs5bB5PZ7Z9AHuNZL7SW1al8lxrKhUFI='
hacluster-ceilometer:
charm: "local:trusty/hacluster"
options:
+ corosync_transport: unicast
corosync_key: |
'cHkgKGJpdHMgPSA5NjApLgpQcmVzcyBrZXlzIG9uIHlvdXIga2V5Ym9hcmQgdG8gZ2VuZXJhdGUgZW50cm9weSAoYml0cyA9IDEwMDgpLgpXcml0aW5nIGNvcm9zeW5jIGtleSB0byAvZXRjL2Nvcm9zeW5jL2F1dGhrZXkuCg=='
hacluster-mysql:
charm: "local:trusty/hacluster"
options:
+ corosync_transport: unicast
corosync_key: |
'Q29yb3N5bmMgQ2x1c3RlciBFbmdpbmUgQXV0aGVudGljYXRpb24ga2V5IGdlbmVyYXRvci4KR2F0aGVyaW5nIDEwMjQgYml0cyBmb3Iga2V5IGZyb20gL2Rldi9yYW5kb20uClByZXNzIGtleXMgb24geW91ciBrZXlib2FyZCB0byBnZW5lcmF0ZSBlbnRyb3B5LgpQcmVzcyBrZXlzIG9uIHlvdXIga2V5Ym9hcmQgdG8gZ2VuZXJhdGUgZW50cm9weSAoYml0cyA9IDkyMCkuClByZXNzIGtleXMgb24geW91ciBrZXlib2FyZCB0byBnZW5lcmF0ZSBlbnRyb3B5IChiaXRzID0gMTAwMCkuCldyaXRpbmcgY29yb3N5bmMga2V5IHRvIC9ldGMvY29yb3N5bmMvYXV0aGtleS4K'
# hacluster-ceph-radosgw:
glance-api-version: 2
vip: 10.4.1.19
#os-public-hostname: api.public-fqdn
-# ha-mcastport: 5401
to:
- "lxc:nodes=4"
- "lxc:nodes=0"
rabbitmq-server:
charm: local:trusty/rabbitmq-server
num_units: 3
+ options:
+ vip: 10.4.1.10
to:
- "lxc:nodes=0"
- "lxc:nodes=1"
charm: local:trusty/keystone
num_units: 3
options:
-# ha-mcastport: 5402
admin-password: openstack
admin-token: admin
vip: 10.4.1.13
options:
vip: 10.4.1.12
#os-public-hostname: api.public-fqdn
-# ha-mcastport: 5402
to:
- "lxc:nodes=0"
- "lxc:nodes=1"
options:
block-device: None
glance-api-version: 2
-# ha-mcastport: 5401
to:
- "lxc:nodes=1"
cinder-ceph:
keystone:
charm: "local:trusty/keystone"
options:
-# ha-mcastport: 5402
admin-password: openstack
admin-token: admin
to:
options:
block-device: None
glance-api-version: 2
-# ha-mcastport: 5401
# openstack-origin-git: include-file://cinder-master.yaml
to:
- "lxc:nodes=0"
hacluster-keystone:
charm: "local:trusty/hacluster"
options:
+ corosync_transport: unicast
corosync_key: |
'QisjNpoKHLkvyc3PEdDHP5VZjgD0kOk9t0ABPWmCELlu5AgWgnW6bJd34BVXO7VhW+3ZwNQM3W+bZ3pl28ftY4ki4N/S0KLFNia5egFgiA3AH2QXLnokS7OYXuu6GMJJ1S5mDe6P5zU+tfJe/Mebq24u7CgR0gAvohSPRdDTwdY='
hacluster-horizon:
charm: "local:trusty/hacluster"
options:
+ corosync_transport: unicast
corosync_key: |
'aCVPHw6XYne+Hxv0WPiM3+yEfeIxs0Ly0EMKB494Rdzjf5rE52GcXqqxuvIa/nXJ4GCR+UdKk9FEwcASfYkeu3HDWUld9uTE6pOc+ibWYnybNH7VBfEHW8h9YmQKs3HD2T3wlTcS2irU4CUW7/IKNok4etYdM3iFn1K2ReSGXEI='
hacluster-nova:
charm: "local:trusty/hacluster"
options:
+ corosync_transport: unicast
corosync_key: |
'gel86qmEze8dYKYbfqIgRpqapJpKtdYL2hxC1y5nWYBPq7EMf6V8mF01IjeUkSRs14CUDrsPpT4PWeom7EOY2fleuLx/aIuqQUfEDkhf/gvaz7BaU4hrmTCoDBK7/HvEwY+/wu4qkEeckzSRPsm9MYzqnLRshh8yjZJ70xU/mmk='
hacluster-neutron:
charm: "local:trusty/hacluster"
options:
+ corosync_transport: unicast
corosync_key: |
'KNhb4++3jlllbnscS5D3qdzOJDsQPEeZ7zOLZJHbkKrRjX9gRCijVVOiv2JCvq03HqQ7LIufQzWGl9Za8qh0f6QmQ3XhFh/Cb/3WaYFj+tEf0zArWv+8miswmM1z4eyTSrTWBq0dTgx1z96wjBxP5HV0+1LWW+3Ei4oZWyRGeR0='
hacluster-glance:
charm: "local:trusty/hacluster"
options:
+ corosync_transport: unicast
corosync_key: |
'el1dd8107J5mwQDPS7tEJPZrr0XFfL95+Tku/QG90W5Q5f5SP4W8TRfKvddGmZWZl2lVd1neG5WqaHa1mq/aScJpoflzVAJCvshN7Gd2AjHhLNNugeI8S90j/7wrKUhqiCAlkKaeri2xs5bB5PZ7Z9AHuNZL7SW1al8lxrKhUFI='
hacluster-ceilometer:
charm: "local:trusty/hacluster"
options:
+ corosync_transport: unicast
corosync_key: |
'cHkgKGJpdHMgPSA5NjApLgpQcmVzcyBrZXlzIG9uIHlvdXIga2V5Ym9hcmQgdG8gZ2VuZXJhdGUgZW50cm9weSAoYml0cyA9IDEwMDgpLgpXcml0aW5nIGNvcm9zeW5jIGtleSB0byAvZXRjL2Nvcm9zeW5jL2F1dGhrZXkuCg=='
hacluster-mysql:
charm: "local:trusty/hacluster"
options:
+ corosync_transport: unicast
corosync_key: |
'Q29yb3N5bmMgQ2x1c3RlciBFbmdpbmUgQXV0aGVudGljYXRpb24ga2V5IGdlbmVyYXRvci4KR2F0aGVyaW5nIDEwMjQgYml0cyBmb3Iga2V5IGZyb20gL2Rldi9yYW5kb20uClByZXNzIGtleXMgb24geW91ciBrZXlib2FyZCB0byBnZW5lcmF0ZSBlbnRyb3B5LgpQcmVzcyBrZXlzIG9uIHlvdXIga2V5Ym9hcmQgdG8gZ2VuZXJhdGUgZW50cm9weSAoYml0cyA9IDkyMCkuClByZXNzIGtleXMgb24geW91ciBrZXlib2FyZCB0byBnZW5lcmF0ZSBlbnRyb3B5IChiaXRzID0gMTAwMCkuCldyaXRpbmcgY29yb3N5bmMga2V5IHRvIC9ldGMvY29yb3N5bmMvYXV0aGtleS4K'
mysql:
options:
block-device: None
glance-api-version: 2
-# ha-mcastport: 5401
to:
- "lxc:nodes=4"
- "lxc:nodes=0"
rabbitmq-server:
charm: "local:trusty/rabbitmq-server"
num_units: 3
+ options:
+ vip: 10.4.1.10
to:
- "lxc:nodes=0"
- "lxc:nodes=1"
charm: "local:trusty/keystone"
num_units: 3
options:
-# ha-mcastport: 5402
admin-password: openstack
admin-token: admin
vip: 10.4.1.13
num_units: 3
options:
vip: 10.4.1.12
-# ha-mcastport: 5402
to:
- "lxc:nodes=0"
- "lxc:nodes=1"
options:
block-device: None
glance-api-version: 2
-# ha-mcastport: 5401
to:
- "lxc:nodes=1"
cinder-ceph:
keystone:
charm: "local:trusty/keystone"
options:
-# ha-mcastport: 5402
admin-password: openstack
admin-token: admin
to:
options:
block-device: None
glance-api-version: 2
-# ha-mcastport: 5401
# openstack-origin-git: include-file://cinder-master.yaml
to:
- "lxc:nodes=1"
hacluster-keystone:
charm: "local:trusty/hacluster"
options:
+ corosync_transport: unicast
corosync_key: |
'QisjNpoKHLkvyc3PEdDHP5VZjgD0kOk9t0ABPWmCELlu5AgWgnW6bJd34BVXO7VhW+3ZwNQM3W+bZ3pl28ftY4ki4N/S0KLFNia5egFgiA3AH2QXLnokS7OYXuu6GMJJ1S5mDe6P5zU+tfJe/Mebq24u7CgR0gAvohSPRdDTwdY='
hacluster-horizon:
charm: "local:trusty/hacluster"
options:
+ corosync_transport: unicast
corosync_key: |
'aCVPHw6XYne+Hxv0WPiM3+yEfeIxs0Ly0EMKB494Rdzjf5rE52GcXqqxuvIa/nXJ4GCR+UdKk9FEwcASfYkeu3HDWUld9uTE6pOc+ibWYnybNH7VBfEHW8h9YmQKs3HD2T3wlTcS2irU4CUW7/IKNok4etYdM3iFn1K2ReSGXEI='
hacluster-nova:
charm: "local:trusty/hacluster"
options:
+ corosync_transport: unicast
corosync_key: |
'gel86qmEze8dYKYbfqIgRpqapJpKtdYL2hxC1y5nWYBPq7EMf6V8mF01IjeUkSRs14CUDrsPpT4PWeom7EOY2fleuLx/aIuqQUfEDkhf/gvaz7BaU4hrmTCoDBK7/HvEwY+/wu4qkEeckzSRPsm9MYzqnLRshh8yjZJ70xU/mmk='
hacluster-neutron:
charm: "local:trusty/hacluster"
options:
+ corosync_transport: unicast
corosync_key: |
'KNhb4++3jlllbnscS5D3qdzOJDsQPEeZ7zOLZJHbkKrRjX9gRCijVVOiv2JCvq03HqQ7LIufQzWGl9Za8qh0f6QmQ3XhFh/Cb/3WaYFj+tEf0zArWv+8miswmM1z4eyTSrTWBq0dTgx1z96wjBxP5HV0+1LWW+3Ei4oZWyRGeR0='
hacluster-glance:
charm: "local:trusty/hacluster"
options:
+ corosync_transport: unicast
corosync_key: |
'el1dd8107J5mwQDPS7tEJPZrr0XFfL95+Tku/QG90W5Q5f5SP4W8TRfKvddGmZWZl2lVd1neG5WqaHa1mq/aScJpoflzVAJCvshN7Gd2AjHhLNNugeI8S90j/7wrKUhqiCAlkKaeri2xs5bB5PZ7Z9AHuNZL7SW1al8lxrKhUFI='
hacluster-ceilometer:
charm: "local:trusty/hacluster"
options:
+ corosync_transport: unicast
corosync_key: |
'cHkgKGJpdHMgPSA5NjApLgpQcmVzcyBrZXlzIG9uIHlvdXIga2V5Ym9hcmQgdG8gZ2VuZXJhdGUgZW50cm9weSAoYml0cyA9IDEwMDgpLgpXcml0aW5nIGNvcm9zeW5jIGtleSB0byAvZXRjL2Nvcm9zeW5jL2F1dGhrZXkuCg=='
hacluster-mysql:
charm: "local:trusty/hacluster"
options:
+ corosync_transport: unicast
corosync_key: |
'Q29yb3N5bmMgQ2x1c3RlciBFbmdpbmUgQXV0aGVudGljYXRpb24ga2V5IGdlbmVyYXRvci4KR2F0aGVyaW5nIDEwMjQgYml0cyBmb3Iga2V5IGZyb20gL2Rldi9yYW5kb20uClByZXNzIGtleXMgb24geW91ciBrZXlib2FyZCB0byBnZW5lcmF0ZSBlbnRyb3B5LgpQcmVzcyBrZXlzIG9uIHlvdXIga2V5Ym9hcmQgdG8gZ2VuZXJhdGUgZW50cm9weSAoYml0cyA9IDkyMCkuClByZXNzIGtleXMgb24geW91ciBrZXlib2FyZCB0byBnZW5lcmF0ZSBlbnRyb3B5IChiaXRzID0gMTAwMCkuCldyaXRpbmcgY29yb3N5bmMga2V5IHRvIC9ldGMvY29yb3N5bmMvYXV0aGtleS4K'
ceilometer:
options:
block-device: None
glance-api-version: 2
-# ha-mcastport: 5401
to:
- "lxc:nodes=0"
- "lxc:nodes=1"
rabbitmq-server:
charm: local:trusty/rabbitmq-server
num_units: 3
+ options:
+ vip: 10.4.1.10
to:
- "lxc:nodes=1"
- "lxc:nodes=2"
options:
block-device: None
glance-api-version: 2
-# ha-mcastport: 5401
to:
- "lxc:nodes=1"
cinder-ceph:
options:
block-device: None
glance-api-version: 2
-# ha-mcastport: 5401
to:
- "lxc:nodes=1"
cinder-ceph:
juju status | python -c "import yaml; import sys; print yaml.load(sys.stdin)[\"services\"][\"$1\"][\"units\"][\"$1/$2\"][\"machine\"]" 2> /dev/null
}
+keystoneIp() {
+ KEYSTONE=$(juju status keystone |grep public-address|sed -- 's/.*\: //')
+ if [ $(echo $KEYSTONE|wc -w) == 1 ];then
+ echo $KEYSTONE
+ else
+ juju get keystone | python -c "import yaml; import sys; print yaml.load(sys.stdin)['settings']['vip']['value']"
+ fi
+}
+
# create external network and subnet in openstack
create_openrc() {
mkdir -m 0700 -p cloud
- keystoneIp=$(juju get keystone | grep vip: -A 7 | grep value | awk '{print $2}')
- if [ -z "$keystoneIp" ]; then
- keystoneIp=$(unitAddress keystone 0)
- fi
- adminPasswd=$(juju get keystone | grep admin-password -A 5 | grep value | awk '{print $2}')
+ keystoneIp=$(keystoneIp)
+ adminPasswd=$(juju get keystone | grep admin-password -A 5 | grep value | awk '{print $2}' 2> /dev/null)
configOpenrc admin $adminPasswd admin http://$keystoneIp:5000/v2.0 Canonical > cloud/admin-openrc
chmod 0600 cloud/admin-openrc
}
configOpenrc() {
- cat <<-EOF
- export OS_USERNAME=$1
- export OS_PASSWORD=$2
- export OS_TENANT_NAME=$3
- export OS_AUTH_URL=$4
- export OS_REGION_NAME=$5
- EOF
+ cat <<-EOF
+ export OS_USERNAME=$1
+ export OS_PASSWORD=$2
+ export OS_TENANT_NAME=$3
+ export OS_AUTH_URL=$4
+ export OS_REGION_NAME=$5
+ export OS_ENDPOINT_TYPE='internalURL'
+ export CINDER_ENDPOINT_TYPE='internalURL'
+ export GLANCE_ENDPOINT_TYPE='internalURL'
+ export KEYSTONE_ENDPOINT_TYPE='internalURL'
+ export NEUTRON_ENDPOINT_TYPE='internalURL'
+ export NOVA_ENDPOINT_TYPE='internalURL'
+EOF
}
-create_openrc
+# Push api fqdn local ip to all /etc/hosts
+API_FQDN=$(juju get keystone | python -c "import yaml; import sys;\
+ print yaml.load(sys.stdin)['settings']['os-public-hostname']['value']")
+
+
+KEYSTONEIP=$(keystoneIp)
+juju run --all "if grep $API_FQDN /etc/hosts > /dev/null; then \
+ echo 'API FQDN already present'; \
+ else \
+ sudo sh -c 'echo $KEYSTONEIP $API_FQDN >> /etc/hosts'; \
+ echo 'API FQDN injected'; \
+ fi"
+
+#change in jumphost as well as below commands will run on jumphost
+
+if grep $API_FQDN /etc/hosts; then
+ echo 'API FQDN already present'
+else
+ sudo sh -c "echo $KEYSTONEIP $API_FQDN >> /etc/hosts"
+ echo 'API FQDN injected'
+fi
+
+# Create an load openrc
+create_openrc
. ./cloud/admin-openrc
wget -P /tmp/images http://download.cirros-cloud.net/0.3.3/cirros-0.3.3-x86_64-disk.img
neutron net-create ext-net --shared --router:external --provider:physical_network external --provider:network_type flat
neutron subnet-create ext-net --name ext-subnet \
--allocation-pool start=$EXTNET_FIP,end=$EXTNET_LIP \
- --disable-dhcp --gateway $EXTNET_GW $EXTNET_NET
+ --disable-dhcp --gateway $EXTNET_GW --dns-nameserver 8.8.8.8 $EXTNET_NET
# configure security groups
neutron security-group-rule-create --direction ingress --ethertype IPv4 --protocol icmp --remote-ip-prefix 0.0.0.0/0 default
neutron security-group-rule-create --direction ingress --ethertype IPv4 --protocol tcp --port-range-min 22 --port-range-max 22 --remote-ip-prefix 0.0.0.0/0 default
neutron net-create ext-net --shared --router:external --provider:physical_network external --provider:network_type flat
neutron subnet-create ext-net --name ext-subnet \
--allocation-pool start=$EXTNET_FIP,end=$EXTNET_LIP \
- --disable-dhcp --gateway $EXTNET_GW $EXTNET_NET
- # configure security groups
- #neutron security-group-rule-create --direction ingress --ethertype IPv4 --protocol icmp --remote-ip-prefix 0.0.0.0/0 default
- #neutron security-group-rule-create --direction ingress --ethertype IPv4 --protocol tcp --port-range-min 22 --port-range-max 22 --remote-ip-prefix 0.0.0.0/0 default
+ --disable-dhcp --gateway $EXTNET_GW --dns-nameserver 8.8.8.8 $EXTNET_NET
fi
# create pool of floating ips
i=0
while [ $i -ne 3 ]; do
- neutron floatingip-create ext-net
- i=$((i + 1))
+ neutron floatingip-create ext-net
+ i=$((i + 1))
done
#http://docs.openstack.org/juno/install-guide/install/apt/content/launch-instance-neutron.html
floating-ip-range: 192.168.10.6,192.168.10.49,192.168.10.1,192.168.10.0/24
ext-port: "90:E2:BA:83:FD:21,90:E2:BA:75:30:F5"
dns: 8.8.8.8
+ osdomainname:
opnfv:
release: c
distro: trusty
floating-ip-range: 10.21.6.6,10.21.6.250,10.21.6.254,10.21.6.0/24
ext-port: "eth1"
dns: 8.8.8.8
+ osdomainname:
opnfv:
release: c
distro: trusty
# eth1 of m4 since tags for networking are not yet implemented.
ext-port: "eth1"
dns: 8.8.8.8
+ osdomainname:
opnfv:
release: c
floating-ip-range: 10.5.15.6,10.5.15.250,10.5.15.254,10.5.15.0/24
ext-port: "eth5"
dns: 8.8.8.8
+ osdomainname:
opnfv:
release: c
distro: trusty
floating-ip-range: 10.6.15.6,10.6.15.250,10.6.15.254,10.6.15.0/24
ext-port: "eth5"
dns: 8.8.8.8
+ osdomainname:
opnfv:
release: c
distro: trusty
floating-ip-range: 10.9.15.6,10.9.15.250,10.9.15.254,10.9.15.0/24
ext-port: "00:1E:67:C5:5B:09"
dns: 8.8.8.8
+ osdomainname:
opnfv:
release: c
distro: trusty
type: ipmi
address: 192.168.1.12
user: Administrator
- pass: pod1Admin:
+ pass: pod1Admin
- name: rack-1-m3
architecture: x86_64
roles: [compute,control,storage]
floating-ip-range: 161.105.231.2,161.105.231.62,161.105.231.1,161.105.231.0/26
ext-port: "eth1"
dns: 192.168.1.1
+ osdomainname: pod1.opnfv.fr
opnfv:
release: c
distro: trusty
floating-ip-range: 161.105.231.2,161.105.231.62,161.105.231.1,161.105.231.0/26
ext-port: "eth1"
dns: 192.168.2.1
+ osdomainname: pod2.opnfv.fr
opnfv:
release: c
distro: trusty