Fix OpenStack services registration

TrivialFix

Change-Id: Iba15764f6544ea5e813888a137e63319e951ed00
This commit is contained in:
Éric Lemoine 2016-03-10 07:05:50 -08:00 committed by Michal Rostecki
parent ea39e9e5ed
commit 10720351e4
21 changed files with 168 additions and 118 deletions

View File

@ -145,22 +145,21 @@ glance_api_host: "glance-api-glance-api-openstack-{{ deployment_id }}.{{ maratho
cinder_api_host: "cinder-api-cinder-openstack-{{ deployment_id }}.{{ marathon_framework }}.{{ mesos_dns_domain }}"
nova_api_host: "nova-api-nova-openstack-{{ deployment_id }}.{{ marathon_framework }}.{{ mesos_dns_domain }}"
####################
# OpenStack auth
####################
# Openstack authentication string. You should only need to override these if you
# are changing the admin tenant/project or user.
openstack_auth:
auth_url: "http://{{ keystone_auth_host }}:{{ keystone_admin_port }}"
username: "admin"
password: "{{ keystone_admin_password }}"
project_name: "admin"
openstack_auth_url: "http://{{ keystone_auth_host }}:{{ keystone_admin_port }}"
openstack_username: "admin"
openstack_password: "{{ keystone_admin_password }}"
openstack_project_name: "admin"
# This shouldn't be needed for long. It is only temporary until we get the
# ansible modules sorted out
openstack_auth_v2:
auth_url: "http://{{ keystone_auth_host }}:{{ keystone_admin_port }}/v2.0"
username: "admin"
password: "{{ keystone_admin_password }}"
project_name: "admin"
####################
# OpenStack services
####################
# Core services are required for Kolla to be operation.
enable_mariadb: "yes"
enable_keystone: "yes"

View File

@ -54,16 +54,16 @@ cinder_data_image_full: "{{ cinder_data_image }}:{{ cinder_data_image_tag }}"
####################
# Openstack
####################
cinder_public_address: "{{ kolla_external_address }}"
cinder_admin_address: "{{ kolla_internal_address }}"
cinder_internal_address: "{{ kolla_internal_address }}"
cinder_public_endpoint: "{{ cinder_api_host }}:{{ cinder_api_port }}"
cinder_admin_endpoint: "{{ cinder_api_host }}:{{ cinder_api_port }}"
cinder_internal_endpoint: "{{ cinder_api_host }}:{{ cinder_api_port }}"
cinder_logging_verbose: "{{ openstack_logging_verbose }}"
cinder_logging_debug: "{{ openstack_logging_debug }}"
cinder_keystone_user: "cinder"
openstack_cinder_auth: "{'auth_url':'{{ openstack_auth_v2.auth_url }}','username':'{{ openstack_auth_v2.username }}','password':'{{ openstack_auth_v2.password }}','project_name':'{{ openstack_auth_v2.project_name }}'}"
openstack_cinder_auth: "{'auth_url':'{{ openstack_auth_url }}','username':'{{ openstack_username }}','password':'{{ openstack_password }}','project_name':'{{ openstack_project_name }}'}"
####################

View File

@ -36,16 +36,16 @@ glance_api_image_full: "{{ glance_api_image }}:{{ glance_api_tag }}"
####################
# Openstack
####################
glance_public_address: "{{ kolla_external_address }}"
glance_admin_address: "{{ kolla_internal_address }}"
glance_internal_address: "{{ kolla_internal_address }}"
glance_admin_endpoint: "http://{{ glance_api_host }}:{{ glance_api_port }}"
glance_internal_endpoint: "http://{{ glance_api_host }}:{{ glance_api_port }}"
glance_public_endpoint: "http://{{ glance_api_host }}:{{ glance_api_port }}"
glance_logging_verbose: "{{ openstack_logging_verbose }}"
glance_logging_debug: "{{ openstack_logging_debug }}"
glance_keystone_user: "glance"
openstack_glance_auth: "{'auth_url':'{{ openstack_auth_v2.auth_url }}','username':'{{ openstack_auth_v2.username }}','password':'{{ openstack_auth_v2.password }}','project_name':'{{ openstack_auth_v2.project_name }}'}"
openstack_glance_auth: "{'auth_url':'{{ openstack_auth_url }}','username':'{{ openstack_username }}','password':'{{ openstack_password }}','project_name':'{{ openstack_project_name }}','domain_name':'default'}"
glance_registry_host: "glance-registry-glance-registry-openstack-{{ deployment_id }}.{{ marathon_framework }}.{{ mesos_dns_domain }}"

View File

@ -20,15 +20,14 @@ keystone_tag: "{{ openstack_release }}"
####################
# Openstack
####################
keystone_public_address: "{{ kolla_external_address }}"
keystone_admin_address: "{{ kolla_internal_address }}"
keystone_internal_address: "{{ kolla_internal_address }}"
keystone_admin_endpoint: "http://{{ keystone_auth_host }}:{{ keystone_admin_port }}/v3"
keystone_internal_endpoint: "http://{{ keystone_auth_host }}:{{ keystone_public_port }}/v3"
keystone_public_endpoint: "http://{{ keystone_auth_host }}:{{ keystone_public_port }}/v3"
keystone_logging_verbose: "{{ openstack_logging_verbose }}"
keystone_logging_debug: "{{ openstack_logging_debug }}"
openstack_keystone_auth: "{'auth_url':'{{ openstack_auth_v2.auth_url }}','username':'{{ openstack_auth_v2.username }}','password':'{{ openstack_auth_v2.password }}','project_name':'{{ openstack_auth_v2.project_name }}'}"
openstack_keystone_token_auth: "{'endpoint':'{{ openstack_auth_v2.auth_url }}','token':'{{ keystone_admin_token }}'}"
openstack_keystone_auth: "{'auth_url':'{{ openstack_auth_url }}','username':'{{ openstack_username }}','password':'{{ openstack_password }}','project_name':'{{ openstack_project_name }}'}"
####################

View File

@ -3,7 +3,5 @@ debug = {{ keystone_logging_debug }}
use_syslog = {{ openstack_use_syslog }}
use_stderr = {{ openstack_use_stderr }}
admin_token = {{ keystone_admin_token }}
[database]
connection = mysql+pymysql://{{ keystone_database_user }}:{{ keystone_database_password }}@{{ keystone_database_address }}/{{ keystone_database_name }}

View File

@ -48,9 +48,9 @@ openvswitch_db_image_full: "{{ openvswitch_db_image }}:{{ openvswitch_db_tag }}"
####################
# Openstack
####################
neutron_public_address: "{{ kolla_external_address }}"
neutron_admin_address: "{{ kolla_internal_address }}"
neutron_internal_address: "{{ kolla_internal_address }}"
neutron_admin_endpoint: "http://{{ neutron_server_host }}:{{ neutron_server_port }}"
neutron_internal_endpoint: "http://{{ neutron_server_host }}:{{ neutron_server_port }}"
neutron_public_endpoint: "http://{{ neutron_server_host }}:{{ neutron_server_port }}"
neutron_logging_verbose: "{{ openstack_logging_verbose }}"
neutron_logging_debug: "{{ openstack_logging_debug }}"
@ -59,7 +59,7 @@ neutron_keystone_user: "neutron"
neutron_bridge_name: "br-ex"
openstack_neutron_auth: "{'auth_url':'{{ openstack_auth_v2.auth_url }}','username':'{{ openstack_auth_v2.username }}','password':'{{ openstack_auth_v2.password }}','project_name':'{{ openstack_auth_v2.project_name }}'}"
openstack_neutron_auth: "{'auth_url':'{{ openstack_auth_url }}','username':'{{ openstack_username }}','password':'{{ openstack_password }}','project_name':'{{ openstack_project_name }}'}"
nova_api_host: "nova-api-nova-openstack-{{ deployment_id }}.{{ marathon_framework }}.{{ mesos_dns_domain }}"

View File

@ -68,16 +68,16 @@ nova_compute_ironic_image_full: "{{ nova_compute_ironic_image }}:{{ nova_compute
####################
# Openstack
####################
nova_public_address: "{{ kolla_external_address }}"
nova_admin_address: "{{ kolla_internal_address }}"
nova_internal_address: "{{ kolla_internal_address }}"
nova_admin_endpoint: "http://{{ nova_api_host }}:{{ nova_api_port }}/v2/%(tenant_id)s"
nova_internal_endpoint: "http://{{ nova_api_host }}:{{ nova_api_port }}/v2/%(tenant_id)s"
nova_public_endpoint: "http://{{ nova_api_host }}:{{ nova_api_port }}/v2/%(tenant_id)s"
nova_logging_verbose: "{{ openstack_logging_verbose }}"
nova_logging_debug: "{{ openstack_logging_debug }}"
nova_keystone_user: "nova"
openstack_nova_auth: "{'auth_url':'{{ openstack_auth_v2.auth_url }}','username':'{{ openstack_auth_v2.username }}','password':'{{ openstack_auth_v2.password }}','project_name':'{{ openstack_auth_v2.project_name }}'}"
openstack_nova_auth: "{'auth_url':'{{ openstack_auth_url }}','username':'{{ openstack_username }}','password':'{{ openstack_password }}','project_name':'{{ openstack_project_name }}'}"
nova_novncproxy_host: "nova-novncproxy-nova-openstack-{{ deployment_id }}.{{ marathon_framework }}.{{ mesos_dns_domain }}"
nova_spicehtml5proxy_host: "nova-spicehtml5proxy-nova-openstack-{{ deployment_id }}.{{ marathon_framework }}.{{ mesos_dns_domain }}"

View File

@ -79,7 +79,7 @@ html5proxy_port = {{ nova_spicehtml5proxy_port }}
#(TODO) remember to update this once discoverd is replaced by inspector
admin_username = {{ ironic_keystone_user }}
admin_password = {{ ironic_keystone_password }}
admin_url = {{ openstack_auth_v2.auth_url }}
admin_url = {{ openstack_auth_url }}
admin_tenant_name = service
api_endpoint = http://{{ kolla_internal_address }}:{{ ironic_api_port }}/v1
{% endif %}

View File

@ -25,7 +25,6 @@ docker_registry_password:
####################
# Openstack options
####################
keystone_admin_token: "password"
keystone_admin_password: "password"
keystone_database_password: "password"

View File

@ -9,7 +9,7 @@ service:
daemon:
dependencies:
- path: cinder_ansible_tasks/create_user
- path: keystone_ansible_tasks/running
- path: keystone-api/daemon
- path: rabbitmq/daemon
- path: cinder-api/db_sync
command: /usr/bin/cinder-api

View File

@ -9,7 +9,7 @@ service:
daemon:
dependencies:
- path: cinder_ansible_tasks/create_user
- path: keystone_ansible_tasks/running
- path: keystone-api/daemon
- path: rabbitmq/daemon
command: /usr/bin/cinder-backup
files:

View File

@ -39,7 +39,7 @@ commands:
run_once: True
dependencies:
- path: cinder-api/db_sync
- path: keystone_ansible_tasks/running
- path: keystone-api/daemon
command: {{ ansible_task_cmd }}
-m kolla_keystone_service
-a "service_name=cinder
@ -56,7 +56,7 @@ commands:
run_once: True
dependencies:
- path: cinder-api/db_sync
- path: keystone_ansible_tasks/running
- path: keystone-api/daemon
command: {{ ansible_task_cmd }}
-m kolla_keystone_service
-a "service_name=cinderv2
@ -73,7 +73,7 @@ commands:
run_once: True
dependencies:
- path: cinder-api/db_sync
- path: keystone_ansible_tasks/running
- path: keystone-api/daemon
command: {{ ansible_task_cmd }}
-m kolla_keystone_user
-a "project=service

View File

@ -9,7 +9,7 @@ service:
daemon:
dependencies:
- path: cinder_ansible_tasks/create_user
- path: keystone_ansible_tasks/running
- path: keystone-api/daemon
- path: rabbitmq/daemon
command: /usr/bin/cinder-scheduler
files:

View File

@ -9,7 +9,7 @@ service:
daemon:
dependencies:
- path: cinder_ansible_tasks/create_user
- path: keystone_ansible_tasks/running
- path: keystone-api/daemon
- path: rabbitmq/daemon
command: /usr/bin/cinder-volume
files:

View File

@ -32,20 +32,51 @@ commands:
host='%'
priv='{{ glance_database_name }}.*:ALL'
append_privs='yes'"
register_endpoint:
register_admin_endpoint:
run_once: True
dependencies:
- path: glance-api/db_sync
- path: keystone_ansible_tasks/running
- path: keystone-api/daemon
command: {{ ansible_task_cmd }}
-m kolla_keystone_service
-a "service_name=glance
service_type=image
description='Openstack Image'
endpoint_region={{ openstack_region_name }}
admin_url='http://{{ glance_api_host }}:{{ glance_api_port }}'
internal_url='http://{{ glance_api_host }}:{{ glance_api_port }}'
public_url='http://{{ glance_api_host }}:{{ glance_api_port }}'
url='{{ glance_admin_endpoint }}'
interface=admin
region_name={{ openstack_region_name }}
auth={{ '{{ openstack_glance_auth }}' }}"
-e "{'openstack_glance_auth':{{ openstack_glance_auth }}}"
register_internal_endpoint:
run_once: True
dependencies:
- path: glance-api/db_sync
- path: keystone-api/daemon
command: {{ ansible_task_cmd }}
-m kolla_keystone_service
-a "service_name=glance
service_type=image
description='Openstack Image'
endpoint_region={{ openstack_region_name }}
url='{{ glance_internal_endpoint }}'
interface=internal
region_name={{ openstack_region_name }}
auth={{ '{{ openstack_glance_auth }}' }}"
-e "{'openstack_glance_auth':{{ openstack_glance_auth }}}"
register_public_endpoint:
run_once: True
dependencies:
- path: glance-api/db_sync
- path: keystone-api/daemon
command: {{ ansible_task_cmd }}
-m kolla_keystone_service
-a "service_name=glance
service_type=image
description='Openstack Image'
endpoint_region={{ openstack_region_name }}
url='{{ glance_public_endpoint }}'
interface=public
region_name={{ openstack_region_name }}
auth={{ '{{ openstack_glance_auth }}' }}"
-e "{'openstack_glance_auth':{{ openstack_glance_auth }}}"
@ -53,7 +84,7 @@ commands:
run_once: True
dependencies:
- path: glance-api/db_sync
- path: keystone_ansible_tasks/running
- path: keystone-api/daemon
command: {{ ansible_task_cmd }}
-m kolla_keystone_user
-a "project=service
@ -67,8 +98,10 @@ commands:
run_once: True
dependencies:
- path: glance-api/db_sync
- path: glance_ansible_tasks/register_endpoint
- path: keystone_ansible_tasks/running
- path: glance_ansible_tasks/register_admin_endpoint
- path: glance_ansible_tasks/register_internal_endpoint
- path: glance_ansible_tasks/register_public_endpoint
- path: keystone-api/daemon
retries: 10
delay: 5
command: {{ ansible_task_cmd }}

View File

@ -9,7 +9,7 @@ service:
daemon:
dependencies:
- path: glance_ansible_tasks/create_user
- path: keystone_ansible_tasks/running
- path: keystone-api/daemon
command: glance-registry
files:
glance.conf.j2:

View File

@ -50,3 +50,10 @@ commands:
dest: /etc/keystone/keystone.conf
owner: keystone
perm: "0600"
bootstrap:
run_once: True
retries: 10
delay: 5
dependencies:
- path: keystone-api/db_sync
command: kolla_keystone_bootstrap {{ openstack_username }} {{ openstack_password }} {{ openstack_project_name }} admin {{ keystone_admin_endpoint }} {{ keystone_internal_endpoint }} {{ keystone_public_endpoint }} {{ openstack_region_name }}

View File

@ -38,55 +38,4 @@ commands:
password='{{ keystone_database_password }}'
host='%'
priv='{{ keystone_database_name }}.*:ALL'
append_privs='yes'"
admin_creds:
run_once: True
retries: 3
delay: 5
dependencies:
- path: keystone-api/db_sync
command: {{ ansible_task_cmd }}
-m kolla_keystone_user
-a "project=admin
user=admin
password={{ keystone_admin_password }}
role=admin
region_name={{ openstack_region_name }}
auth_type=admin_token
auth={{ '{{ openstack_keystone_token_auth }}' }}"
-e "{'openstack_keystone_token_auth':{{ openstack_keystone_token_auth }}}"
register_endpoint:
run_once: True
retries: 3
delay: 5
dependencies:
- path: keystone-api/db_sync
command: {{ ansible_task_cmd }}
-m kolla_keystone_service
-a "service_name=keystone
service_type=identity
description='Openstack Identity'
endpoint_region={{ openstack_region_name }}
admin_url='http://{{ keystone_auth_host }}:{{ keystone_admin_port }}'
internal_url='http://{{ keystone_auth_host }}:{{ keystone_admin_port }}'
public_url='http://{{ keystone_auth_host }}:{{ keystone_public_port }}'
region_name={{ openstack_region_name }}
auth_type=admin_token
auth={{ '{{ openstack_keystone_token_auth }}' }}"
-e "{'openstack_keystone_token_auth':{{ openstack_keystone_token_auth }}}"
running:
run_once: True
retries: 10
delay: 5
dependencies:
- path: keystone-api/db_sync
command: {{ ansible_task_cmd }}
-m kolla_sanity
-a "service=keystone
project=service
user=admin
password={{ keystone_admin_password }}
role=admin
region_name={{ openstack_region_name }}
auth={{ '{{ openstack_keystone_auth }}' }}"
-e "{'openstack_keystone_auth':{{ openstack_keystone_auth }}}"
append_privs='yes'"

View File

@ -36,22 +36,57 @@ commands:
host='%'
priv='{{ neutron_database_name }}.*:ALL'
append_privs='yes'"
register_endpoint:
register_admin_endpoint:
run_once: True
retries: 3
delay: 5
dependencies:
- path: neutron-server/db_sync
- path: keystone_ansible_tasks/running
- path: keystone-api/daemon
command: {{ ansible_task_cmd }}
-m kolla_keystone_service
-a "service_name=neutron
service_type=network
description='Openstack Networking'
endpoint_region={{ openstack_region_name }}
admin_url='http://{{ neutron_server_host }}:{{ neutron_server_port }}'
internal_url='http://{{ neutron_server_host }}:{{ neutron_server_port }}'
public_url='http://{{ neutron_server_host }}:{{ neutron_server_port }}'
url='{{ neutron_admin_endpoint }}'
interface=admin
region_name={{ openstack_region_name }}
auth={{ '{{ openstack_neutron_auth }}' }}"
-e "{'openstack_neutron_auth':{{ openstack_neutron_auth }}}"
register_internal_endpoint:
run_once: True
retries: 3
delay: 5
dependencies:
- path: neutron-server/db_sync
- path: keystone-api/daemon
command: {{ ansible_task_cmd }}
-m kolla_keystone_service
-a "service_name=neutron
service_type=network
description='Openstack Networking'
endpoint_region={{ openstack_region_name }}
url='{{ neutron_internal_endpoint }}'
interface=internal
region_name={{ openstack_region_name }}
auth={{ '{{ openstack_neutron_auth }}' }}"
-e "{'openstack_neutron_auth':{{ openstack_neutron_auth }}}"
register_public_endpoint:
run_once: True
retries: 3
delay: 5
dependencies:
- path: neutron-server/db_sync
- path: keystone-api/daemon
command: {{ ansible_task_cmd }}
-m kolla_keystone_service
-a "service_name=neutron
service_type=network
description='Openstack Networking'
endpoint_region={{ openstack_region_name }}
url='{{ neutron_public_endpoint }}'
interface=public
region_name={{ openstack_region_name }}
auth={{ '{{ openstack_neutron_auth }}' }}"
-e "{'openstack_neutron_auth':{{ openstack_neutron_auth }}}"
@ -61,7 +96,7 @@ commands:
delay: 5
dependencies:
- path: neutron-server/db_sync
- path: keystone_ansible_tasks/running
- path: keystone-api/daemon
command: {{ ansible_task_cmd }}
-m kolla_keystone_user
-a "project=service

View File

@ -29,7 +29,7 @@ service:
- path: nova-libvirt/daemon
scope: local
- path: nova_ansible_tasks/create_user
- path: keystone_ansible_tasks/running
- path: keystone-api/daemon
- path: nova-compute/bootstrap
command: nova-compute --config-file /etc/nova/nova.conf --config-file /etc/nova/nova-override.conf
files:

View File

@ -58,20 +58,51 @@ commands:
host='%'
priv='{{ nova_api_database_name }}.*:ALL'
append_privs='yes'"
register_endpoint:
register_admin_endpoint:
run_once: True
dependencies:
- path: nova-api/db_sync
- path: keystone_ansible_tasks/running
- path: keystone-api/daemon
command: {{ ansible_task_cmd }}
-m kolla_keystone_service
-a "service_name=nova
service_type=compute
description='Openstack Compute'
endpoint_region={{ openstack_region_name }}
admin_url='http://{{ nova_api_host }}:{{ nova_api_port }}/v2/%(tenant_id)s'
internal_url='http://{{ nova_api_host }}:{{ nova_api_port }}/v2/%(tenant_id)s'
public_url='http://{{ nova_api_host }}:{{ nova_api_port }}/v2/%(tenant_id)s'
url='{{ nova_admin_endpoint }}'
interface=admin
region_name={{ openstack_region_name }}
auth={{ '{{ openstack_nova_auth }}' }}"
-e "{'openstack_nova_auth':{{ openstack_nova_auth }}}"
register_internal_endpoint:
run_once: True
dependencies:
- path: nova-api/db_sync
- path: keystone-api/daemon
command: {{ ansible_task_cmd }}
-m kolla_keystone_service
-a "service_name=nova
service_type=compute
description='Openstack Compute'
endpoint_region={{ openstack_region_name }}
url='{{ nova_internal_endpoint }}'
interface=internal
region_name={{ openstack_region_name }}
auth={{ '{{ openstack_nova_auth }}' }}"
-e "{'openstack_nova_auth':{{ openstack_nova_auth }}}"
register_public_endpoint:
run_once: True
dependencies:
- path: nova-api/db_sync
- path: keystone-api/daemon
command: {{ ansible_task_cmd }}
-m kolla_keystone_service
-a "service_name=nova
service_type=compute
description='Openstack Compute'
endpoint_region={{ openstack_region_name }}
url='{{ nova_public_endpoint }}'
interface=public
region_name={{ openstack_region_name }}
auth={{ '{{ openstack_nova_auth }}' }}"
-e "{'openstack_nova_auth':{{ openstack_nova_auth }}}"
@ -79,7 +110,7 @@ commands:
run_once: True
dependencies:
- path: nova-api/db_sync
- path: keystone_ansible_tasks/running
- path: keystone-api/daemon
command: {{ ansible_task_cmd }}
-m kolla_keystone_user
-a "project=service