Tweak the openstack cloud playbook some to be more idempotent.
This commit is contained in:
parent
aa0d5e17b8
commit
e390bd1212
1 changed files with 56 additions and 2 deletions
|
@ -158,8 +158,11 @@
|
|||
# http://docs.openstack.org/trunk/install-guide/install/yum/content/basics-ntp.html
|
||||
- service: name=ntpd state=started enabled=yes
|
||||
|
||||
# http://docs.openstack.org/icehouse/install-guide/install/yum/content/basics-packages.html
|
||||
- action: yum state=present name=https://repos.fedorapeople.org/repos/openstack/openstack-icehouse/rdo-release-icehouse-4.noarch.rpm
|
||||
# this two step can be done in one, but Ansible will then always show the action as changed
|
||||
- name: download RDO release package
|
||||
get_url: url=https://repos.fedorapeople.org/repos/openstack/openstack-icehouse/rdo-release-icehouse-4.noarch.rpm dest=/root/
|
||||
- yum: state=present name=/root/rdo-release-icehouse-4.noarch.rpm
|
||||
|
||||
- name: install basic openstack packages
|
||||
action: yum state=present name={{ item }}
|
||||
with_items:
|
||||
|
@ -259,6 +262,7 @@
|
|||
- command: packstack --answer-file=/root/packstack-controller-answers.txt
|
||||
when: packstack_sucessfully_finished.stat.exists == False
|
||||
- file: path=/etc/packstack_sucessfully_finished state=touch
|
||||
when: packstack_sucessfully_finished.stat.exists == False
|
||||
# FIXME we should really reboot here
|
||||
|
||||
- name: Set shell to nova user to allow cold migrations
|
||||
|
@ -281,67 +285,111 @@
|
|||
# ceilometer
|
||||
- shell: source /root/keystonerc_admin && keystone service-list | grep ceilometer | awk '{print $2}'
|
||||
register: SERVICE_ID
|
||||
always_run: yes
|
||||
changed_when: false
|
||||
- shell: source /root/keystonerc_admin && keystone endpoint-list | grep {{SERVICE_ID.stdout}} | awk '{print $2}'
|
||||
register: ENDPOINT_ID
|
||||
always_run: yes
|
||||
changed_when: false
|
||||
- shell: source /root/keystonerc_admin && keystone endpoint-list |grep {{SERVICE_ID.stdout}} |grep -v {{ controller_hostname }} && (keystone endpoint-delete {{ENDPOINT_ID.stdout}} && keystone endpoint-create --region 'RegionOne' --service {{SERVICE_ID.stdout}} --publicurl 'https://{{ controller_hostname }}:8777' --adminurl 'https://{{ controller_hostname }}:8777' --internalurl 'https://{{ controller_hostname }}:8777' ) || true
|
||||
# cinder
|
||||
- shell: source /root/keystonerc_admin && keystone service-list | grep 'cinder ' | awk '{print $2}'
|
||||
register: SERVICE_ID
|
||||
always_run: yes
|
||||
changed_when: false
|
||||
- shell: source /root/keystonerc_admin && keystone endpoint-list | grep {{SERVICE_ID.stdout}} | awk '{print $2}'
|
||||
register: ENDPOINT_ID
|
||||
always_run: yes
|
||||
changed_when: false
|
||||
- shell: source /root/keystonerc_admin && keystone endpoint-list |grep {{SERVICE_ID.stdout}} |grep -v {{ controller_hostname }} && (keystone endpoint-delete {{ENDPOINT_ID.stdout}} && keystone endpoint-create --region 'RegionOne' --service {{SERVICE_ID.stdout}} --publicurl 'https://{{ controller_hostname }}:8776/v1/%(tenant_id)s' --adminurl 'https://{{ controller_hostname }}:8776/v1/%(tenant_id)s' --internalurl 'https://{{ controller_hostname }}:8776/v1/%(tenant_id)s' ) || true
|
||||
# cinderv2
|
||||
- shell: source /root/keystonerc_admin && keystone service-list | grep 'cinderv2' | awk '{print $2}'
|
||||
register: SERVICE_ID
|
||||
always_run: yes
|
||||
changed_when: false
|
||||
- shell: source /root/keystonerc_admin && keystone endpoint-list | grep {{SERVICE_ID.stdout}} | awk '{print $2}'
|
||||
register: ENDPOINT_ID
|
||||
always_run: yes
|
||||
changed_when: false
|
||||
- shell: source /root/keystonerc_admin && keystone endpoint-list |grep {{SERVICE_ID.stdout}} |grep -v {{ controller_hostname }} && (keystone endpoint-delete {{ENDPOINT_ID.stdout}} && keystone endpoint-create --region 'RegionOne' --service {{SERVICE_ID.stdout}} --publicurl 'https://{{ controller_hostname }}:8776/v2/%(tenant_id)s' --adminurl 'https://{{ controller_hostname }}:8776/v2/%(tenant_id)s' --internalurl 'https://{{ controller_hostname }}:8776/v2/%(tenant_id)s' ) || true
|
||||
# glance
|
||||
- shell: source /root/keystonerc_admin && keystone service-list | grep 'glance' | awk '{print $2}'
|
||||
register: SERVICE_ID
|
||||
always_run: yes
|
||||
changed_when: false
|
||||
- shell: source /root/keystonerc_admin && keystone endpoint-list | grep {{SERVICE_ID.stdout}} | awk '{print $2}'
|
||||
register: ENDPOINT_ID
|
||||
always_run: yes
|
||||
changed_when: false
|
||||
- shell: source /root/keystonerc_admin && keystone endpoint-list |grep {{SERVICE_ID.stdout}} |grep -v {{ controller_hostname }} && (keystone endpoint-delete {{ENDPOINT_ID.stdout}} && keystone endpoint-create --region 'RegionOne' --service {{SERVICE_ID.stdout}} --publicurl 'https://{{ controller_hostname }}:9292' --adminurl 'https://{{ controller_hostname }}:9292' --internalurl 'https://{{ controller_hostname }}:9292' ) || true
|
||||
# neutron
|
||||
- shell: source /root/keystonerc_admin && keystone service-list | grep 'neutron' | awk '{print $2}'
|
||||
always_run: yes
|
||||
changed_when: false
|
||||
register: SERVICE_ID
|
||||
- shell: source /root/keystonerc_admin && keystone endpoint-list | grep {{SERVICE_ID.stdout}} | awk '{print $2}'
|
||||
always_run: yes
|
||||
changed_when: false
|
||||
register: ENDPOINT_ID
|
||||
- shell: source /root/keystonerc_admin && keystone endpoint-list |grep {{SERVICE_ID.stdout}} |grep -v {{ controller_hostname }} && (keystone endpoint-delete {{ENDPOINT_ID.stdout}} && keystone endpoint-create --region 'RegionOne' --service {{SERVICE_ID.stdout}} --publicurl 'https://{{ controller_hostname }}:9696/' --adminurl 'https://{{ controller_hostname }}:9696/' --internalurl 'https://{{ controller_hostname }}:9696/' ) || true
|
||||
# nova
|
||||
- shell: source /root/keystonerc_admin && keystone service-list | grep 'nova ' | awk '{print $2}'
|
||||
always_run: yes
|
||||
changed_when: false
|
||||
register: SERVICE_ID
|
||||
- shell: source /root/keystonerc_admin && keystone endpoint-list | grep {{SERVICE_ID.stdout}} | awk '{print $2}'
|
||||
always_run: yes
|
||||
changed_when: false
|
||||
register: ENDPOINT_ID
|
||||
- shell: source /root/keystonerc_admin && keystone endpoint-list |grep {{SERVICE_ID.stdout}} |grep -v {{ controller_hostname }} && (keystone endpoint-delete {{ENDPOINT_ID.stdout}} && keystone endpoint-create --region 'RegionOne' --service {{SERVICE_ID.stdout}} --publicurl 'https://{{ controller_hostname }}:8774/v2/%(tenant_id)s' --adminurl 'https://{{ controller_hostname }}:8774/v2/%(tenant_id)s' --internalurl 'https://{{ controller_hostname }}:8774/v2/%(tenant_id)s' ) || true
|
||||
# nova_ec2
|
||||
- shell: source /root/keystonerc_admin && keystone service-list | grep 'nova_ec2' | awk '{print $2}'
|
||||
always_run: yes
|
||||
changed_when: false
|
||||
register: SERVICE_ID
|
||||
- shell: source /root/keystonerc_admin && keystone endpoint-list | grep {{SERVICE_ID.stdout}} | awk '{print $2}'
|
||||
always_run: yes
|
||||
changed_when: false
|
||||
register: ENDPOINT_ID
|
||||
- shell: source /root/keystonerc_admin && keystone endpoint-list |grep {{SERVICE_ID.stdout}} |grep -v {{ controller_hostname }} && (keystone endpoint-delete {{ENDPOINT_ID.stdout}} && keystone endpoint-create --region 'RegionOne' --service {{SERVICE_ID.stdout}} --publicurl 'https://{{ controller_hostname }}:8773/services/Cloud' --adminurl 'https://{{ controller_hostname }}:8773/services/Admin' --internalurl 'https://{{ controller_hostname }}:8773/services/Cloud' ) || true
|
||||
# novav3
|
||||
- shell: source /root/keystonerc_admin && keystone service-list | grep 'novav3' | awk '{print $2}'
|
||||
always_run: yes
|
||||
changed_when: false
|
||||
register: SERVICE_ID
|
||||
- shell: source /root/keystonerc_admin && keystone endpoint-list | grep {{SERVICE_ID.stdout}} | awk '{print $2}'
|
||||
always_run: yes
|
||||
changed_when: false
|
||||
register: ENDPOINT_ID
|
||||
- shell: source /root/keystonerc_admin && keystone endpoint-list |grep {{SERVICE_ID.stdout}} |grep -v {{ controller_hostname }} && (keystone endpoint-delete {{ENDPOINT_ID.stdout}} && keystone endpoint-create --region 'RegionOne' --service {{SERVICE_ID.stdout}} --publicurl 'https://{{ controller_hostname }}:8774/v3' --adminurl 'https://{{ controller_hostname }}:8774/v3' --internalurl 'https://{{ controller_hostname }}:8774/v3' ) || true
|
||||
# swift
|
||||
- shell: source /root/keystonerc_admin && keystone service-list | grep 'swift ' | awk '{print $2}'
|
||||
always_run: yes
|
||||
changed_when: false
|
||||
register: SERVICE_ID
|
||||
- shell: source /root/keystonerc_admin && keystone endpoint-list | grep {{SERVICE_ID.stdout}} | awk '{print $2}'
|
||||
always_run: yes
|
||||
changed_when: false
|
||||
register: ENDPOINT_ID
|
||||
- shell: source /root/keystonerc_admin && keystone endpoint-list |grep {{SERVICE_ID.stdout}} |grep -v {{ controller_hostname }} && (keystone endpoint-delete {{ENDPOINT_ID.stdout}} && keystone endpoint-create --region 'RegionOne' --service {{SERVICE_ID.stdout}} --publicurl 'https://{{controller_hostname}}:8080/v1/AUTH_%(tenant_id)s' --adminurl 'https://{{controller_hostname}}:8080' --internalurl 'https://{{controller_hostname}}:8080/v1/AUTH_%(tenant_id)s' ) || true
|
||||
# swift_s3
|
||||
- shell: source /root/keystonerc_admin && keystone service-list | grep 'swift_s3' | awk '{print $2}'
|
||||
always_run: yes
|
||||
changed_when: false
|
||||
register: SERVICE_ID
|
||||
- shell: source /root/keystonerc_admin && keystone endpoint-list | grep {{SERVICE_ID.stdout}} | awk '{print $2}'
|
||||
always_run: yes
|
||||
changed_when: false
|
||||
register: ENDPOINT_ID
|
||||
- shell: source /root/keystonerc_admin && keystone endpoint-list |grep {{SERVICE_ID.stdout}} |grep -v {{ controller_hostname }} && (keystone endpoint-delete {{ENDPOINT_ID.stdout}} && keystone endpoint-create --region 'RegionOne' --service {{SERVICE_ID.stdout}} --publicurl 'https://{{ controller_hostname }}:8080' --adminurl 'https://{{ controller_hostname }}:8080' --internalurl 'https://{{ controller_hostname }}:8080' ) || true
|
||||
# keystone --- !!!!! we need to use ADMIN_TOKEN here - this MUST be last before we restart OS and set up haproxy
|
||||
- shell: source /root/keystonerc_admin && keystone service-list | grep 'keystone' | awk '{print $2}'
|
||||
always_run: yes
|
||||
changed_when: false
|
||||
register: SERVICE_ID
|
||||
- shell: source /root/keystonerc_admin && keystone endpoint-list | grep {{SERVICE_ID.stdout}} | awk '{print $2}'
|
||||
always_run: yes
|
||||
changed_when: false
|
||||
register: ENDPOINT_ID
|
||||
- ini_file: dest=/etc/keystone/keystone.conf section=ssl option=certfile value=/etc/pki/tls/certs/fed-cloud09-keystone.pem
|
||||
- ini_file: dest=/etc/keystone/keystone.conf section=ssl option=keyfile value=/etc/pki/tls/private/fed-cloud09-keystone.key
|
||||
|
@ -1040,13 +1088,19 @@
|
|||
# default is 10 instances, 20 cores, 51200 RAM, 10 floating IPs
|
||||
- shell: source /root/keystonerc_admin && keystone tenant-list | grep 'copr ' | awk '{print $2}'
|
||||
register: TENANT_ID
|
||||
always_run: true
|
||||
changed_when: false
|
||||
- shell: source /root/keystonerc_admin && nova quota-update --instances 40 --cores 80 --ram 300000 --floating-ips 10 --security-groups 20 {{ TENANT_ID.stdout }}
|
||||
|
||||
- shell: source /root/keystonerc_admin && keystone tenant-list | grep 'coprdev ' | awk '{print $2}'
|
||||
always_run: true
|
||||
changed_when: false
|
||||
register: TENANT_ID
|
||||
- shell: source /root/keystonerc_admin && nova quota-update --instances 40 --cores 80 --ram 300000 --floating-ips 10 --security-groups 20 {{ TENANT_ID.stdout }}
|
||||
|
||||
- shell: source /root/keystonerc_admin && keystone tenant-list | grep 'persistent ' | awk '{print $2}'
|
||||
always_run: true
|
||||
changed_when: false
|
||||
register: TENANT_ID
|
||||
- shell: source /root/keystonerc_admin && nova quota-update --instances 20 --cores 40 --ram 102200 --security-groups 20 {{ TENANT_ID.stdout }}
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue