Merge "Openstack Metadata refactor"
This commit is contained in:
commit
344931b1aa
|
@ -3,287 +3,12 @@
|
|||
# Tasks to get ceilometer facts
|
||||
#
|
||||
|
||||
- name: Get ceilometer batch polled samples
|
||||
command: crudini --get /etc/ceilometer/ceilometer.conf DEFAULT batch_polled_samples
|
||||
register: batch_polled_samples
|
||||
ignore_errors: true
|
||||
- name: Parse Ceilometer config
|
||||
become: true
|
||||
shell: python /tmp/openstack-config-parser.py ceilometer /etc/ceilometer/ceilometer.conf /tmp/out.yml
|
||||
|
||||
- name: Set ceilometer batch polled samples
|
||||
set_fact:
|
||||
openstack_ceilometer_batch_polled_samples: "{{ batch_polled_samples.stdout }}"
|
||||
when: (batch_polled_samples.stdout != "")
|
||||
- name: Fetch output
|
||||
fetch: src=/tmp/out.yml dest=/tmp/out.yml flat=yes
|
||||
|
||||
- name: Set ceilometer batch polled samples
|
||||
set_fact:
|
||||
openstack_ceilometer_batch_polled_samples: true
|
||||
when: (batch_polled_samples.stdout == "")
|
||||
|
||||
- name: Get ceilometer shuffle time before polling task
|
||||
command: crudini --get /etc/ceilometer/ceilometer.conf DEFAULT shuffle_time_before_polling_task
|
||||
register: shuffle_time_before_polling_task
|
||||
ignore_errors: true
|
||||
|
||||
- name: Set ceilometer shuffle time before polling task
|
||||
set_fact:
|
||||
openstack_ceilometer_shuffle_time_before_polling_task: "{{ shuffle_time_before_polling_task.stdout }}"
|
||||
when: shuffle_time_before_polling_task.stdout != ""
|
||||
|
||||
- name: Set ceilometer shuffle time before polling task
|
||||
set_fact:
|
||||
openstack_ceilometer_shuffle_time_before_polling_task: 0
|
||||
when: shuffle_time_before_polling_task.stdout == ""
|
||||
|
||||
- name: Get ceilometer reserved metadata length
|
||||
command: crudini --get /etc/ceilometer/ceilometer.conf DEFAULT reserved_metadata_length
|
||||
register: reserved_metadata_length
|
||||
ignore_errors: true
|
||||
|
||||
- name: Set ceilometer reserved metadata length
|
||||
set_fact:
|
||||
openstack_ceilometer_reserved_metadata_length: "{{ reserved_metadata_length.stdout }}"
|
||||
when: reserved_metadata_length.stdout != ""
|
||||
|
||||
- name: Set ceilometer reserved metadata length
|
||||
set_fact:
|
||||
openstack_ceilometer_reserved_metadata_length: 255
|
||||
when: reserved_metadata_length.stdout == ""
|
||||
|
||||
- name: Get ceilometer meter_dispatchers
|
||||
command: crudini --get /etc/ceilometer/ceilometer.conf DEFAULT meter_dispatchers
|
||||
register: meter_dispatchers
|
||||
ignore_errors: true
|
||||
|
||||
- name: Set ceilometer meter_dispatchers
|
||||
set_fact:
|
||||
openstack_ceilometer_meter_dispatchers: "{{ meter_dispatchers.stdout }}"
|
||||
when: meter_dispatchers.stdout != ""
|
||||
|
||||
- name: Set ceilometer meter_dispatchers
|
||||
set_fact:
|
||||
openstack_ceilometer_meter_dispatchers: "database"
|
||||
when: meter_dispatchers.stdout == ""
|
||||
|
||||
- name: Get ceilometer pipeline polling interval
|
||||
command: crudini --get /etc/ceilometer/ceilometer.conf DEFAULT pipeline_polling_interval
|
||||
register: pipeline_polling_interval
|
||||
ignore_errors: true
|
||||
|
||||
- name: Set ceilometer pipeline polling interval
|
||||
set_fact:
|
||||
openstack_ceilometer_pipeline_polling_interval: "{{ pipeline_polling_interval.stdout }}"
|
||||
when: pipeline_polling_interval.stdout != ""
|
||||
|
||||
- name: Set ceilometer pipeline polling interval
|
||||
set_fact:
|
||||
openstack_ceilometer_pipeline_polling_interval: 20
|
||||
when: pipeline_polling_interval.stdout == ""
|
||||
|
||||
- name: Get ceilometer http timeout
|
||||
command: crudini --get /etc/ceilometer/ceilometer.conf DEFAULT http_timeout
|
||||
register: http_timeout
|
||||
ignore_errors: true
|
||||
|
||||
- name: Set ceilometer http timeout
|
||||
set_fact:
|
||||
openstack_ceilometer_http_timeout: "{{ http_timeout.stdout }}"
|
||||
when: http_timeout.stdout != ""
|
||||
|
||||
- name: Set ceilometer http timeout
|
||||
set_fact:
|
||||
openstack_ceilometer_http_timeout: 600
|
||||
when: http_timeout.stdout == ""
|
||||
|
||||
- name: Get ceilometer rpc conn pool size
|
||||
command: crudini --get /etc/ceilometer/ceilometer.conf DEFAULT rpc_conn_pool_size
|
||||
register: rpc_conn_pool_size
|
||||
ignore_errors: true
|
||||
|
||||
- name: Set ceilometer rpc conn pool size
|
||||
set_fact:
|
||||
openstack_ceilometer_rpc_conn_pool_size: "{{ rpc_conn_pool_size.stdout }}"
|
||||
when: rpc_conn_pool_size.stdout != ""
|
||||
|
||||
- name: Set ceilometer rpc conn pool size
|
||||
set_fact:
|
||||
openstack_ceilometer_rpc_conn_pool_size: 30
|
||||
when: rpc_conn_pool_size.stdout == ""
|
||||
|
||||
- name: Get ceilometer executor thread pool size
|
||||
command: crudini --get /etc/ceilometer/ceilometer.conf DEFAULT executor_thread_pool_size
|
||||
register: executor_thread_pool_size
|
||||
ignore_errors: true
|
||||
|
||||
- name: Set ceilometer executor thread pool size
|
||||
set_fact:
|
||||
openstack_ceilometer_executor_thread_pool_size: "{{ executor_thread_pool_size.stdout }}"
|
||||
when: executor_thread_pool_size.stdout != ""
|
||||
|
||||
- name: Set ceilometer executor thread pool size
|
||||
set_fact:
|
||||
openstack_ceilometer_executor_thread_pool_size: 64
|
||||
when: executor_thread_pool_size.stdout == ""
|
||||
|
||||
- name: Get ceilometer rpc response timeout
|
||||
command: crudini --get /etc/ceilometer/ceilometer.conf DEFAULT rpc_response_timeout
|
||||
register: rpc_response_timeout
|
||||
ignore_errors: true
|
||||
|
||||
- name: Set ceilometer rpc response timeout
|
||||
set_fact:
|
||||
openstack_ceilometer_rpc_response_timeout: "{{ rpc_response_timeout.stdout }}"
|
||||
when: rpc_response_timeout.stdout != ""
|
||||
|
||||
- name: Set ceilometer rpc response timeout
|
||||
set_fact:
|
||||
openstack_ceilometer_rpc_response_timeout: 60
|
||||
when: rpc_response_timeout.stdout == ""
|
||||
|
||||
- name: Get ceilometer rpc backend
|
||||
command: crudini --get /etc/ceilometer/ceilometer.conf DEFAULT rpc_backend
|
||||
register: rpc_backend
|
||||
ignore_errors: true
|
||||
|
||||
- name: Set ceilometer rpc backend
|
||||
set_fact:
|
||||
openstack_ceilometer_rpc_backend: "{{ rpc_backend.stdout }}"
|
||||
when: rpc_backend.stdout != ""
|
||||
|
||||
- name: Set ceilometer rpc backend
|
||||
set_fact:
|
||||
openstack_ceilometer_rpc_backend: rabbit
|
||||
when: rpc_backend.stdout == ""
|
||||
|
||||
- name: Get ceilometer workers
|
||||
command: crudini --get /etc/ceilometer/ceilometer.conf api workers
|
||||
register: workers
|
||||
ignore_errors: true
|
||||
|
||||
- name: Set ceilometer workers
|
||||
set_fact:
|
||||
openstack_ceilometer_workers: "{{ workers.stdout }}"
|
||||
when: workers.stdout != ""
|
||||
|
||||
- name: Set ceilometer workers
|
||||
set_fact:
|
||||
openstack_ceilometer_workers: 1
|
||||
when: workers.stdout == ""
|
||||
|
||||
- name: Get ceilometer batch polled samples
|
||||
command: crudini --get /etc/ceilometer/ceilometer.conf central batch_polled_samples
|
||||
register: batch_polled_samples
|
||||
ignore_errors: true
|
||||
|
||||
- name: Set ceilometer batch polled samples
|
||||
set_fact:
|
||||
openstack_ceilometer_batch_polled_samples: "{{ batch_polled_samples.stdout }}"
|
||||
when: (batch_polled_samples.stdout != "")
|
||||
|
||||
- name: Set ceilometer batch polled samples
|
||||
set_fact:
|
||||
openstack_ceilometer_batch_polled_samples: true
|
||||
when: (batch_polled_samples.stdout == "")
|
||||
|
||||
- name: Get ceilometer shuffle time before polling task
|
||||
command: crudini --get /etc/ceilometer/ceilometer.conf central shuffle_time_before_polling_task
|
||||
register: shuffle_time_before_polling_task
|
||||
ignore_errors: true
|
||||
|
||||
- name: Set ceilometer shuffle time before polling task
|
||||
set_fact:
|
||||
openstack_ceilometer_shuffle_time_before_polling_task: "{{ shuffle_time_before_polling_task.stdout }}"
|
||||
when: shuffle_time_before_polling_task.stdout != ""
|
||||
|
||||
- name: Set ceilometer shuffle time before polling task
|
||||
set_fact:
|
||||
openstack_ceilometer_shuffle_time_before_polling_task: 0
|
||||
when: shuffle_time_before_polling_task.stdout == ""
|
||||
|
||||
- name: Get ceilometer batch size
|
||||
command: crudini --get /etc/ceilometer/ceilometer.conf collector batch_size
|
||||
register: batch_size
|
||||
ignore_errors: true
|
||||
|
||||
- name: Set ceilometer batch size
|
||||
set_fact:
|
||||
openstack_ceilometer_batch_size: "{{ batch_size.stdout }}"
|
||||
when: batch_size.stdout != ""
|
||||
|
||||
- name: Set ceilometer batch size
|
||||
set_fact:
|
||||
openstack_ceilometer_batch_size: 1
|
||||
when: batch_size.stdout == ""
|
||||
|
||||
- name: Get ceilometer workers
|
||||
command: crudini --get /etc/ceilometer/ceilometer.conf collector workers
|
||||
register: workers
|
||||
ignore_errors: true
|
||||
|
||||
- name: Set ceilometer workers
|
||||
set_fact:
|
||||
openstack_ceilometer_workers: "{{ workers.stdout }}"
|
||||
when: workers.stdout != ""
|
||||
|
||||
- name: Set ceilometer workers
|
||||
set_fact:
|
||||
openstack_ceilometer_workers: 1
|
||||
when: workers.stdout == ""
|
||||
|
||||
- name: Get ceilometer workload partitioning
|
||||
command: crudini --get /etc/ceilometer/ceilometer.conf compute workload_partitioning
|
||||
register: workload_partitioning
|
||||
ignore_errors: true
|
||||
|
||||
- name: Set ceilometer workload partitioning
|
||||
set_fact:
|
||||
openstack_ceilometer_workload_partitioning: "{{ workload_partitioning.stdout }}"
|
||||
when: (workload_partitioning.stdout != "")
|
||||
|
||||
- name: Set ceilometer workload partitioning
|
||||
set_fact:
|
||||
openstack_ceilometer_workload_partitioning: false
|
||||
when: (workload_partitioning.stdout == "")
|
||||
|
||||
- name: Get ceilometer resource update interval
|
||||
command: crudini --get /etc/ceilometer/ceilometer.conf compute resource_update_interval
|
||||
register: resource_update_interval
|
||||
ignore_errors: true
|
||||
|
||||
- name: Set ceilometer resource update interval
|
||||
set_fact:
|
||||
openstack_ceilometer_resource_update_interval: "{{ resource_update_interval.stdout }}"
|
||||
when: resource_update_interval.stdout != ""
|
||||
|
||||
- name: Set ceilometer resource update interval
|
||||
set_fact:
|
||||
openstack_ceilometer_resource_update_interval: 0
|
||||
when: resource_update_interval.stdout == ""
|
||||
|
||||
- name: Get ceilometer disable process locking
|
||||
command: crudini --get /etc/ceilometer/ceilometer.conf oslo_concurrency disable_process_locking
|
||||
register: disable_process_locking
|
||||
ignore_errors: true
|
||||
|
||||
- name: Set ceilometer disable process locking
|
||||
set_fact:
|
||||
openstack_ceilometer_disable_process_locking: "{{ disable_process_locking.stdout }}"
|
||||
when: (disable_process_locking.stdout != "")
|
||||
|
||||
- name: Set ceilometer disable process locking
|
||||
set_fact:
|
||||
openstack_ceilometer_disable_process_locking: false
|
||||
when: (disable_process_locking.stdout == "")
|
||||
|
||||
- name: Get ceilometer rabbit use ssl
|
||||
command: crudini --get /etc/ceilometer/ceilometer.conf oslo_messaging_rabbit rabbit_use_ssl
|
||||
register: rabbit_use_ssl
|
||||
ignore_errors: true
|
||||
|
||||
- name: Set ceilometer rabbit use ssl
|
||||
set_fact:
|
||||
openstack_ceilometer_rabbit_use_ssl: "{{ rabbit_use_ssl.stdout }}"
|
||||
when: (rabbit_use_ssl.stdout != "")
|
||||
|
||||
- name: Set ceilometer rabbit use ssl
|
||||
set_fact:
|
||||
openstack_ceilometer_rabbit_use_ssl: false
|
||||
when: (rabbit_use_ssl.stdout == "")
|
||||
- name: Load configuration variables
|
||||
include_vars: /tmp/out.yml
|
||||
|
|
|
@ -3,303 +3,12 @@
|
|||
# Tasks to get cinder facts
|
||||
#
|
||||
|
||||
- name: Get cinder osapi max limit
|
||||
command: crudini --get /etc/cinder/cinder.conf DEFAULT osapi_max_limit
|
||||
register: osapi_max_limit
|
||||
ignore_errors: true
|
||||
- name: Parse Cinder config
|
||||
become: true
|
||||
shell: python /tmp/openstack-config-parser.py cinder /etc/cinder/cinder.conf /tmp/out.yml
|
||||
|
||||
- name: Set cinder osapi max limit
|
||||
set_fact:
|
||||
openstack_cinder_osapi_max_limit: "{{ osapi_max_limit.stdout }}"
|
||||
when: osapi_max_limit.stdout != ""
|
||||
|
||||
- name: Set cinder osapi max limit
|
||||
set_fact:
|
||||
openstack_cinder_osapi_max_limit: 1000
|
||||
when: osapi_max_limit.stdout == ""
|
||||
|
||||
- name: Get cinder backup ceph chunk size
|
||||
command: crudini --get /etc/cinder/cinder.conf DEFAULT backup_ceph_chunk_size
|
||||
register: backup_ceph_chunk_size
|
||||
ignore_errors: true
|
||||
|
||||
- name: Set cinder backup ceph chunk size
|
||||
set_fact:
|
||||
openstack_cinder_backup_ceph_chunk_size: "{{ backup_ceph_chunk_size.stdout }}"
|
||||
when: backup_ceph_chunk_size.stdout != ""
|
||||
|
||||
- name: Set cinder backup ceph chunk size
|
||||
set_fact:
|
||||
openstack_cinder_backup_ceph_chunk_size: 134217728
|
||||
when: backup_ceph_chunk_size.stdout == ""
|
||||
|
||||
- name: Get cinder backup ceph stripe unit
|
||||
command: crudini --get /etc/cinder/cinder.conf DEFAULT backup_ceph_stripe_unit
|
||||
register: backup_ceph_stripe_unit
|
||||
ignore_errors: true
|
||||
|
||||
- name: Set cinder backup ceph stripe unit
|
||||
set_fact:
|
||||
openstack_cinder_backup_ceph_stripe_unit: "{{ backup_ceph_stripe_unit.stdout }}"
|
||||
when: backup_ceph_stripe_unit.stdout != ""
|
||||
|
||||
- name: Set cinder backup ceph stripe unit
|
||||
set_fact:
|
||||
openstack_cinder_backup_ceph_stripe_unit: 0
|
||||
when: backup_ceph_stripe_unit.stdout == ""
|
||||
|
||||
- name: Get cinder backup ceph stripe count
|
||||
command: crudini --get /etc/cinder/cinder.conf DEFAULT backup_ceph_stripe_count
|
||||
register: backup_ceph_stripe_count
|
||||
ignore_errors: true
|
||||
|
||||
- name: Set cinder backup ceph stripe count
|
||||
set_fact:
|
||||
openstack_cinder_backup_ceph_stripe_count: "{{ backup_ceph_stripe_count.stdout }}"
|
||||
when: backup_ceph_stripe_count.stdout != ""
|
||||
|
||||
- name: Set cinder backup ceph stripe count
|
||||
set_fact:
|
||||
openstack_cinder_backup_ceph_stripe_count: 0
|
||||
when: backup_ceph_stripe_count.stdout == ""
|
||||
|
||||
- name: Get cinder restore discarded excess bytes
|
||||
command: crudini --get /etc/cinder/cinder.conf DEFAULT restore_discarded_excess_bytes
|
||||
register: restore_discarded_excess_bytes
|
||||
ignore_errors: true
|
||||
|
||||
- name: Set cinder restore discarded excess bytes
|
||||
set_fact:
|
||||
openstack_cinder_restore_discarded_excess_bytes: "{{ restore_discarded_excess_bytes.stdout }}"
|
||||
when: (restore_discarded_excess_bytes.stdout != "")
|
||||
|
||||
- name: Set cinder restore discarded excess bytes
|
||||
set_fact:
|
||||
openstack_cinder_restore_discarded_excess_bytes: true
|
||||
when: (restore_discarded_excess_bytes.stdout == "")
|
||||
|
||||
- name: Get cinder expiry thres minutes
|
||||
command: crudini --get /etc/cinder/cinder.conf DEFAULT expiry_thres_minutes
|
||||
register: expiry_thres_minutes
|
||||
ignore_errors: true
|
||||
|
||||
- name: Set cinder expiry thres minutes
|
||||
set_fact:
|
||||
openstack_cinder_expiry_thres_minutes: "{{ expiry_thres_minutes.stdout }}"
|
||||
when: expiry_thres_minutes.stdout != ""
|
||||
|
||||
- name: Set cinder expiry thres minutes
|
||||
set_fact:
|
||||
openstack_cinder_expiry_thres_minutes: 720
|
||||
when: expiry_thres_minutes.stdout == ""
|
||||
|
||||
- name: Get cinder netapp enable multiattach
|
||||
command: crudini --get /etc/cinder/cinder.conf DEFAULT netapp_enable_multiattach
|
||||
register: netapp_enable_multiattach
|
||||
ignore_errors: true
|
||||
|
||||
- name: Set cinder netapp enable multiattach
|
||||
set_fact:
|
||||
openstack_cinder_netapp_enable_multiattach: "{{ netapp_enable_multiattach.stdout }}"
|
||||
when: (netapp_enable_multiattach.stdout != "")
|
||||
|
||||
- name: Set cinder netapp enable multiattach
|
||||
set_fact:
|
||||
openstack_cinder_netapp_enable_multiattach: false
|
||||
when: (netapp_enable_multiattach.stdout == "")
|
||||
|
||||
- name: Get cinder backup tsm compression
|
||||
command: crudini --get /etc/cinder/cinder.conf DEFAULT backup_tsm_compression
|
||||
register: backup_tsm_compression
|
||||
ignore_errors: true
|
||||
|
||||
- name: Set cinder backup tsm compression
|
||||
set_fact:
|
||||
openstack_cinder_backup_tsm_compression: "{{ backup_tsm_compression.stdout }}"
|
||||
when: (backup_tsm_compression.stdout != "")
|
||||
|
||||
- name: Set cinder backup tsm compression
|
||||
set_fact:
|
||||
openstack_cinder_backup_tsm_compression: true
|
||||
when: (backup_tsm_compression.stdout == "")
|
||||
|
||||
- name: Get cinder gpfs max clone depth
|
||||
command: crudini --get /etc/cinder/cinder.conf DEFAULT gpfs_max_clone_depth
|
||||
register: gpfs_max_clone_depth
|
||||
ignore_errors: true
|
||||
|
||||
- name: Set cinder gpfs max clone depth
|
||||
set_fact:
|
||||
openstack_cinder_gpfs_max_clone_depth: "{{ gpfs_max_clone_depth.stdout }}"
|
||||
when: gpfs_max_clone_depth.stdout != ""
|
||||
|
||||
- name: Set cinder gpfs max clone depth
|
||||
set_fact:
|
||||
openstack_cinder_gpfs_max_clone_depth: -1
|
||||
when: gpfs_max_clone_depth.stdout == ""
|
||||
|
||||
- name: Get cinder violin request timeout
|
||||
command: crudini --get /etc/cinder/cinder.conf DEFAULT violin_request_timeout
|
||||
register: violin_request_timeout
|
||||
ignore_errors: true
|
||||
|
||||
- name: Set cinder violin request timeout
|
||||
set_fact:
|
||||
openstack_cinder_violin_request_timeout: "{{ violin_request_timeout.stdout }}"
|
||||
when: violin_request_timeout.stdout != ""
|
||||
|
||||
- name: Set cinder violin request timeout
|
||||
set_fact:
|
||||
openstack_cinder_violin_request_timeout: 300
|
||||
when: violin_request_timeout.stdout == ""
|
||||
|
||||
- name: Get cinder nexenta blocksize
|
||||
command: crudini --get /etc/cinder/cinder.conf DEFAULT nexenta_blocksize
|
||||
register: nexenta_blocksize
|
||||
ignore_errors: true
|
||||
|
||||
- name: Set cinder nexenta blocksize
|
||||
set_fact:
|
||||
openstack_cinder_nexenta_blocksize: "{{ nexenta_blocksize.stdout }}"
|
||||
when: nexenta_blocksize.stdout != ""
|
||||
|
||||
- name: Set cinder nexenta blocksize
|
||||
set_fact:
|
||||
openstack_cinder_nexenta_blocksize: 4096
|
||||
when: nexenta_blocksize.stdout == ""
|
||||
|
||||
- name: Get cinder nexenta rrmgr tcp buf size
|
||||
command: crudini --get /etc/cinder/cinder.conf DEFAULT nexenta_rrmgr_tcp_buf_size
|
||||
register: nexenta_rrmgr_tcp_buf_size
|
||||
ignore_errors: true
|
||||
|
||||
- name: Set cinder nexenta rrmgr tcp buf size
|
||||
set_fact:
|
||||
openstack_cinder_nexenta_rrmgr_tcp_buf_size: "{{ nexenta_rrmgr_tcp_buf_size.stdout }}"
|
||||
when: nexenta_rrmgr_tcp_buf_size.stdout != ""
|
||||
|
||||
- name: Set cinder nexenta rrmgr tcp buf size
|
||||
set_fact:
|
||||
openstack_cinder_nexenta_rrmgr_tcp_buf_size: 4096
|
||||
when: nexenta_rrmgr_tcp_buf_size.stdout == ""
|
||||
|
||||
- name: Get cinder nexenta chunksize
|
||||
command: crudini --get /etc/cinder/cinder.conf DEFAULT nexenta_chunksize
|
||||
register: nexenta_chunksize
|
||||
ignore_errors: true
|
||||
|
||||
- name: Set cinder nexenta chunksize
|
||||
set_fact:
|
||||
openstack_cinder_nexenta_chunksize: "{{ nexenta_chunksize.stdout }}"
|
||||
when: nexenta_chunksize.stdout != ""
|
||||
|
||||
- name: Set cinder nexenta chunksize
|
||||
set_fact:
|
||||
openstack_cinder_nexenta_chunksize: 16384
|
||||
when: nexenta_chunksize.stdout == ""
|
||||
|
||||
- name: Get cinder sf emulate 512
|
||||
command: crudini --get /etc/cinder/cinder.conf DEFAULT sf_emulate_512
|
||||
register: sf_emulate_512
|
||||
ignore_errors: true
|
||||
|
||||
- name: Set cinder sf emulate 512
|
||||
set_fact:
|
||||
openstack_cinder_sf_emulate_512: "{{ sf_emulate_512.stdout }}"
|
||||
when: (sf_emulate_512.stdout != "")
|
||||
|
||||
- name: Set cinder sf emulate 512
|
||||
set_fact:
|
||||
openstack_cinder_sf_emulate_512: true
|
||||
when: (sf_emulate_512.stdout == "")
|
||||
|
||||
- name: Get cinder sf allow tenant qos
|
||||
command: crudini --get /etc/cinder/cinder.conf DEFAULT sf_allow_tenant_qos
|
||||
register: sf_allow_tenant_qos
|
||||
ignore_errors: true
|
||||
|
||||
- name: Set cinder sf allow tenant qos
|
||||
set_fact:
|
||||
openstack_cinder_sf_allow_tenant_qos: "{{ sf_allow_tenant_qos.stdout }}"
|
||||
when: (sf_allow_tenant_qos.stdout != "")
|
||||
|
||||
- name: Set cinder sf allow tenant qos
|
||||
set_fact:
|
||||
openstack_cinder_sf_allow_tenant_qos: false
|
||||
when: (sf_allow_tenant_qos.stdout == "")
|
||||
|
||||
- name: Get cinder sf allow template caching
|
||||
command: crudini --get /etc/cinder/cinder.conf DEFAULT sf_allow_template_caching
|
||||
register: sf_allow_template_caching
|
||||
ignore_errors: true
|
||||
|
||||
- name: Set cinder sf allow template caching
|
||||
set_fact:
|
||||
openstack_cinder_sf_allow_template_caching: "{{ sf_allow_template_caching.stdout }}"
|
||||
when: (sf_allow_template_caching.stdout != "")
|
||||
|
||||
- name: Set cinder sf allow template caching
|
||||
set_fact:
|
||||
openstack_cinder_sf_allow_template_caching: true
|
||||
when: (sf_allow_template_caching.stdout == "")
|
||||
|
||||
- name: Get cinder backup swift object size
|
||||
command: crudini --get /etc/cinder/cinder.conf DEFAULT backup_swift_object_size
|
||||
register: backup_swift_object_size
|
||||
ignore_errors: true
|
||||
|
||||
- name: Set cinder backup swift object size
|
||||
set_fact:
|
||||
openstack_cinder_backup_swift_object_size: "{{ backup_swift_object_size.stdout }}"
|
||||
when: backup_swift_object_size.stdout != ""
|
||||
|
||||
- name: Set cinder backup swift object size
|
||||
set_fact:
|
||||
openstack_cinder_backup_swift_object_size: 52428800
|
||||
when: backup_swift_object_size.stdout == ""
|
||||
|
||||
- name: Get cinder backup swift block size
|
||||
command: crudini --get /etc/cinder/cinder.conf DEFAULT backup_swift_block_size
|
||||
register: backup_swift_block_size
|
||||
ignore_errors: true
|
||||
|
||||
- name: Set cinder backup swift block size
|
||||
set_fact:
|
||||
openstack_cinder_backup_swift_block_size: "{{ backup_swift_block_size.stdout }}"
|
||||
when: backup_swift_block_size.stdout != ""
|
||||
|
||||
- name: Set cinder backup swift block size
|
||||
set_fact:
|
||||
openstack_cinder_backup_swift_block_size: 32768
|
||||
when: backup_swift_block_size.stdout == ""
|
||||
|
||||
- name: Get cinder backup file size
|
||||
command: crudini --get /etc/cinder/cinder.conf DEFAULT backup_file_size
|
||||
register: backup_file_size
|
||||
ignore_errors: true
|
||||
|
||||
- name: Set cinder backup file size
|
||||
set_fact:
|
||||
openstack_cinder_backup_file_size: "{{ backup_file_size.stdout }}"
|
||||
when: backup_file_size.stdout != ""
|
||||
|
||||
- name: Set cinder backup file size
|
||||
set_fact:
|
||||
openstack_cinder_backup_file_size: 1999994880
|
||||
when: backup_file_size.stdout == ""
|
||||
|
||||
- name: Get cinder backup sha block size bytes
|
||||
command: crudini --get /etc/cinder/cinder.conf DEFAULT backup_sha_block_size_bytes
|
||||
register: backup_sha_block_size_bytes
|
||||
ignore_errors: true
|
||||
|
||||
- name: Set cinder backup sha block size bytes
|
||||
set_fact:
|
||||
openstack_cinder_backup_sha_block_size_bytes: "{{ backup_sha_block_size_bytes.stdout }}"
|
||||
when: backup_sha_block_size_bytes.stdout != ""
|
||||
|
||||
- name: Set cinder backup sha block size bytes
|
||||
set_fact:
|
||||
openstack_cinder_backup_sha_block_size_bytes: 32768
|
||||
when: backup_sha_block_size_bytes.stdout == ""
|
||||
- name: Fetch output
|
||||
fetch: src=/tmp/out.yml dest=/tmp/out.yml flat=yes
|
||||
|
||||
- name: Load configuration variables
|
||||
include_vars: /tmp/out.yml
|
||||
|
|
|
@ -0,0 +1,55 @@
|
|||
import sys
|
||||
# usage: openstack-config-parser.py [service] [config file] [output file]
|
||||
|
||||
|
||||
def parse_config(serviceName, fileName):
|
||||
# a dict containing key/value
|
||||
# pairs, last value is what is
|
||||
# stored.
|
||||
values = {}
|
||||
with open(fileName) as config:
|
||||
for line in config:
|
||||
pair = line.replace('#', '')
|
||||
pair = pair.replace('\n', '')
|
||||
pair = pair.replace('"', '')
|
||||
pair = pair.replace('\\', '')
|
||||
pair = pair.replace(' ', '')
|
||||
pair = pair.replace('<', '')
|
||||
pair = pair.replace('>', '')
|
||||
pair = pair.split('=')
|
||||
# excludes any line without a key/val pair
|
||||
valid_line = not line.startswith(
|
||||
"# ") and '[' not in line and line != '\n' and line != '#\n' and "password" not in line.lower()
|
||||
if '#' not in line and valid_line:
|
||||
values["openstack_" + serviceName + "_" + pair[0]] = pair[1]
|
||||
|
||||
return values
|
||||
|
||||
|
||||
def try_type(val):
|
||||
try:
|
||||
int(val)
|
||||
return val
|
||||
except ValueError:
|
||||
try:
|
||||
float(val)
|
||||
return val
|
||||
except ValueError:
|
||||
if val.lower() in ("true", "false"):
|
||||
return val
|
||||
else:
|
||||
return "\"" + val + "\""
|
||||
|
||||
|
||||
def print_vars_file(values, fileName):
|
||||
with open(fileName, 'w') as output:
|
||||
for key in values:
|
||||
output.write(key + ": " + try_type(values[key]) + "\n")
|
||||
|
||||
|
||||
def main():
|
||||
output = parse_config(sys.argv[1], sys.argv[2])
|
||||
print_vars_file(output, sys.argv[3])
|
||||
|
||||
if __name__ == '__main__':
|
||||
sys.exit(main())
|
|
@ -0,0 +1,3 @@
|
|||
---
|
||||
- name: Copy config parser script to remote
|
||||
copy: src=openstack-config-parser.py dest=/tmp/openstack-config-parser.py
|
|
@ -0,0 +1,6 @@
|
|||
---
|
||||
- name: Dump all vars
|
||||
template: src=dump_facts.j2 dest={{ browbeat_path }}/metadata/machine_facts.json
|
||||
|
||||
- name: Generate metadata jsons
|
||||
shell : python {{ browbeat_path }}/lib/Metadata.py {{ browbeat_path }}/metadata
|
|
@ -9,5 +9,3 @@
|
|||
{{hostvars[host]| to_nice_json}}
|
||||
{% endfor %}
|
||||
]
|
||||
|
||||
|
|
@ -3,273 +3,12 @@
|
|||
# Tasks to get heat facts
|
||||
#
|
||||
|
||||
- name: Get heat stale token duration
|
||||
command: crudini --get /etc/heat/heat.conf DEFAULT stale_token_duration
|
||||
register: stale_token_duration
|
||||
ignore_errors: true
|
||||
- name: Parse Heat config
|
||||
become: true
|
||||
shell: python /tmp/openstack-config-parser.py heat /etc/heat/heat.conf /tmp/out.yml
|
||||
|
||||
- name: Set heat stale token duration
|
||||
set_fact:
|
||||
openstack_heat_stale_token_duration: "{{ stale_token_duration.stdout }}"
|
||||
when: stale_token_duration.stdout != ""
|
||||
|
||||
- name: Set heat stale token duration
|
||||
set_fact:
|
||||
openstack_heat_stale_token_duration: 30
|
||||
when: stale_token_duration.stdout == ""
|
||||
|
||||
- name: Get heat max resources per stack
|
||||
command: crudini --get /etc/heat/heat.conf DEFAULT max_resources_per_stack
|
||||
register: max_resources_per_stack
|
||||
ignore_errors: true
|
||||
|
||||
- name: Set heat max resources per stack
|
||||
set_fact:
|
||||
openstack_heat_max_resources_per_stack: "{{ max_resources_per_stack.stdout }}"
|
||||
when: max_resources_per_stack.stdout != ""
|
||||
|
||||
- name: Set heat max resources per stack
|
||||
set_fact:
|
||||
openstack_heat_max_resources_per_stack: -1
|
||||
when: max_resources_per_stack.stdout == ""
|
||||
|
||||
- name: Get heat max stacks per tenant
|
||||
command: crudini --get /etc/heat/heat.conf DEFAULT max_stacks_per_tenant
|
||||
register: max_stacks_per_tenant
|
||||
ignore_errors: true
|
||||
|
||||
- name: Set heat max stacks per tenant
|
||||
set_fact:
|
||||
openstack_heat_max_stacks_per_tenant: "{{ max_stacks_per_tenant.stdout }}"
|
||||
when: max_stacks_per_tenant.stdout != ""
|
||||
|
||||
- name: Set heat max stacks per tenant
|
||||
set_fact:
|
||||
openstack_heat_max_stacks_per_tenant: 100
|
||||
when: max_stacks_per_tenant.stdout == ""
|
||||
|
||||
- name: Get heat action retry limit
|
||||
command: crudini --get /etc/heat/heat.conf DEFAULT action_retry_limit
|
||||
register: action_retry_limit
|
||||
ignore_errors: true
|
||||
|
||||
- name: Set heat action retry limit
|
||||
set_fact:
|
||||
openstack_heat_action_retry_limit: "{{ action_retry_limit.stdout }}"
|
||||
when: action_retry_limit.stdout != ""
|
||||
|
||||
- name: Set heat action retry limit
|
||||
set_fact:
|
||||
openstack_heat_action_retry_limit: 5
|
||||
when: action_retry_limit.stdout == ""
|
||||
|
||||
- name: Get heat max interface check attempts
|
||||
command: crudini --get /etc/heat/heat.conf DEFAULT max_interface_check_attempts
|
||||
register: max_interface_check_attempts
|
||||
ignore_errors: true
|
||||
|
||||
- name: Set heat max interface check attempts
|
||||
set_fact:
|
||||
openstack_heat_max_interface_check_attempts: "{{ max_interface_check_attempts.stdout }}"
|
||||
when: max_interface_check_attempts.stdout != ""
|
||||
|
||||
- name: Set heat max interface check attempts
|
||||
set_fact:
|
||||
openstack_heat_max_interface_check_attempts: 10
|
||||
when: max_interface_check_attempts.stdout == ""
|
||||
|
||||
- name: Get heat event purgE batch size
|
||||
command: crudini --get /etc/heat/heat.conf DEFAULT event_purgE_batch_size
|
||||
register: event_purgE_batch_size
|
||||
ignore_errors: true
|
||||
|
||||
- name: Set heat event purgE batch size
|
||||
set_fact:
|
||||
openstack_heat_event_purgE_batch_size: "{{ event_purgE_batch_size.stdout }}"
|
||||
when: event_purgE_batch_size.stdout != ""
|
||||
|
||||
- name: Set heat event purgE batch size
|
||||
set_fact:
|
||||
openstack_heat_event_purgE_batch_size: 10
|
||||
when: event_purgE_batch_size.stdout == ""
|
||||
|
||||
- name: Get heat max events per stack
|
||||
command: crudini --get /etc/heat/heat.conf DEFAULT max_events_per_stack
|
||||
register: max_events_per_stack
|
||||
ignore_errors: true
|
||||
|
||||
- name: Set heat max events per stack
|
||||
set_fact:
|
||||
openstack_heat_max_events_per_stack: "{{ max_events_per_stack.stdout }}"
|
||||
when: max_events_per_stack.stdout != ""
|
||||
|
||||
- name: Set heat max events per stack
|
||||
set_fact:
|
||||
openstack_heat_max_events_per_stack: 1000
|
||||
when: max_events_per_stack.stdout == ""
|
||||
|
||||
- name: Get heat stack action timeout
|
||||
command: crudini --get /etc/heat/heat.conf DEFAULT stack_action_timeout
|
||||
register: stack_action_timeout
|
||||
ignore_errors: true
|
||||
|
||||
- name: Set heat stack action timeout
|
||||
set_fact:
|
||||
openstack_heat_stack_action_timeout: "{{ stack_action_timeout.stdout }}"
|
||||
when: stack_action_timeout.stdout != ""
|
||||
|
||||
- name: Set heat stack action timeout
|
||||
set_fact:
|
||||
openstack_heat_stack_action_timeout: 3600
|
||||
when: stack_action_timeout.stdout == ""
|
||||
|
||||
- name: Get heat enable stack abandon
|
||||
command: crudini --get /etc/heat/heat.conf DEFAULT enable_stack_abandon
|
||||
register: enable_stack_abandon
|
||||
ignore_errors: true
|
||||
|
||||
- name: Set heat enable stack abandon
|
||||
set_fact:
|
||||
openstack_heat_enable_stack_abandon: "{{ enable_stack_abandon.stdout }}"
|
||||
when: (enable_stack_abandon.stdout != "")
|
||||
|
||||
- name: Set heat enable stack abandon
|
||||
set_fact:
|
||||
openstack_heat_enable_stack_abandon: false
|
||||
when: (enable_stack_abandon.stdout == "")
|
||||
|
||||
- name: Get heat enable stack adopt
|
||||
command: crudini --get /etc/heat/heat.conf DEFAULT enable_stack_adopt
|
||||
register: enable_stack_adopt
|
||||
ignore_errors: true
|
||||
|
||||
- name: Set heat enable stack adopt
|
||||
set_fact:
|
||||
openstack_heat_enable_stack_adopt: "{{ enable_stack_adopt.stdout }}"
|
||||
when: (enable_stack_adopt.stdout != "")
|
||||
|
||||
- name: Set heat enable stack adopt
|
||||
set_fact:
|
||||
openstack_heat_enable_stack_adopt: false
|
||||
when: (enable_stack_adopt.stdout == "")
|
||||
|
||||
- name: Get heat convergence engine
|
||||
command: crudini --get /etc/heat/heat.conf DEFAULT convergence_engine
|
||||
register: convergence_engine
|
||||
ignore_errors: true
|
||||
|
||||
- name: Set heat convergence engine
|
||||
set_fact:
|
||||
openstack_heat_convergence_engine: "{{ convergence_engine.stdout }}"
|
||||
when: (convergence_engine.stdout != "")
|
||||
|
||||
- name: Set heat convergence engine
|
||||
set_fact:
|
||||
openstack_heat_convergence_engine: false
|
||||
when: (convergence_engine.stdout == "")
|
||||
|
||||
- name: Get heat observe on update
|
||||
command: crudini --get /etc/heat/heat.conf DEFAULT observe_on_update
|
||||
register: observe_on_update
|
||||
ignore_errors: true
|
||||
|
||||
- name: Set heat observe on update
|
||||
set_fact:
|
||||
openstack_heat_observe_on_update: "{{ observe_on_update.stdout }}"
|
||||
when: (observe_on_update.stdout != "")
|
||||
|
||||
- name: Set heat observe on update
|
||||
set_fact:
|
||||
openstack_heat_observe_on_update: false
|
||||
when: (observe_on_update.stdout == "")
|
||||
|
||||
- name: Get heat encrypt parameter and properties
|
||||
command: crudini --get /etc/heat/heat.conf DEFAULT encrypt_parameter_and_properties
|
||||
register: encrypt_parameter_and_properties
|
||||
ignore_errors: true
|
||||
|
||||
- name: Set heat encrypt parameter and properties
|
||||
set_fact:
|
||||
openstack_heat_encrypt_parameter_and_properties: "{{ encrypt_parameter_and_properties.stdout }}"
|
||||
when: (encrypt_parameter_and_properties.stdout != "")
|
||||
|
||||
- name: Set heat encrypt parameter and properties
|
||||
set_fact:
|
||||
openstack_heat_encrypt_parameter_and_properties: false
|
||||
when: (encrypt_parameter_and_properties.stdout == "")
|
||||
|
||||
- name: Get heat periodic interval
|
||||
command: crudini --get /etc/heat/heat.conf DEFAULT periodic_interval
|
||||
register: periodic_interval
|
||||
ignore_errors: true
|
||||
|
||||
- name: Set heat periodic interval
|
||||
set_fact:
|
||||
openstack_heat_periodic_interval: "{{ periodic_interval.stdout }}"
|
||||
when: periodic_interval.stdout != ""
|
||||
|
||||
- name: Set heat periodic interval
|
||||
set_fact:
|
||||
openstack_heat_periodic_interval: 60
|
||||
when: periodic_interval.stdout == ""
|
||||
|
||||
- name: Get heat max template size
|
||||
command: crudini --get /etc/heat/heat.conf DEFAULT max_template_size
|
||||
register: max_template_size
|
||||
ignore_errors: true
|
||||
|
||||
- name: Set heat max template size
|
||||
set_fact:
|
||||
openstack_heat_max_template_size: "{{ max_template_size.stdout }}"
|
||||
when: max_template_size.stdout != ""
|
||||
|
||||
- name: Set heat max template size
|
||||
set_fact:
|
||||
openstack_heat_max_template_size: 524288
|
||||
when: max_template_size.stdout == ""
|
||||
|
||||
- name: Get heat max nested stack depth
|
||||
command: crudini --get /etc/heat/heat.conf DEFAULT max_nested_stack_depth
|
||||
register: max_nested_stack_depth
|
||||
ignore_errors: true
|
||||
|
||||
- name: Set heat max nested stack depth
|
||||
set_fact:
|
||||
openstack_heat_max_nested_stack_depth: "{{ max_nested_stack_depth.stdout }}"
|
||||
when: max_nested_stack_depth.stdout != ""
|
||||
|
||||
- name: Set heat max nested stack depth
|
||||
set_fact:
|
||||
openstack_heat_max_nested_stack_depth: 5
|
||||
when: max_nested_stack_depth.stdout == ""
|
||||
|
||||
- name: Get heat debug
|
||||
command: crudini --get /etc/heat/heat.conf DEFAULT debug
|
||||
register: debug
|
||||
ignore_errors: true
|
||||
|
||||
- name: Set heat debug
|
||||
set_fact:
|
||||
openstack_heat_debug: "{{ debug.stdout }}"
|
||||
when: (debug.stdout != "")
|
||||
|
||||
- name: Set heat debug
|
||||
set_fact:
|
||||
openstack_heat_debug: false
|
||||
when: (debug.stdout == "")
|
||||
|
||||
- name: Get heat rpc response timeout
|
||||
command: crudini --get /etc/heat/heat.conf DEFAULT rpc_response_timeout
|
||||
register: rpc_response_timeout
|
||||
ignore_errors: true
|
||||
|
||||
- name: Set heat rpc response timeout
|
||||
set_fact:
|
||||
openstack_heat_rpc_response_timeout: "{{ rpc_response_timeout.stdout }}"
|
||||
when: rpc_response_timeout.stdout != ""
|
||||
|
||||
- name: Set heat rpc response timeout
|
||||
set_fact:
|
||||
openstack_heat_rpc_response_timeout: 600
|
||||
when: rpc_response_timeout.stdout == ""
|
||||
- name: Fetch output
|
||||
fetch: src=/tmp/out.yml dest=/tmp/out.yml flat=yes
|
||||
|
||||
- name: Load configuration variables
|
||||
include_vars: /tmp/out.yml
|
||||
|
|
|
@ -3,68 +3,54 @@
|
|||
# Tasks to set keystone facts
|
||||
#
|
||||
|
||||
- name: Get keystone provider
|
||||
command: crudini --get /etc/keystone/keystone.conf token provider
|
||||
register: keystone_provider
|
||||
- name: Parse Keystone config
|
||||
become: true
|
||||
shell: python /tmp/openstack-config-parser.py keystone /etc/keystone/keystone.conf /tmp/out.yml
|
||||
|
||||
- name: Set keystone provider fact
|
||||
set_fact:
|
||||
openstack_keystone_token_provider: "{{ keystone_provider.stdout }}"
|
||||
- name: Fetch output
|
||||
fetch: src=/tmp/out.yml dest=/tmp/out.yml flat=yes
|
||||
|
||||
- name: Determine if Keystone is deployed in eventlet
|
||||
shell: ps afx | grep "[Kk]eystone-all" -c
|
||||
register: keystone_in_eventlet
|
||||
changed_when: false
|
||||
ignore_errors: True
|
||||
- name: Load configuration variables
|
||||
include_vars: /tmp/out.yml
|
||||
|
||||
- name: Set keystone_deployment variable to httpd
|
||||
set_fact: openstack_keystone_deployment='httpd'
|
||||
when: keystone_in_eventlet.stdout|int == 0
|
||||
- name: Determine if Keystone is deployed in eventlet
|
||||
shell: ps afx | grep "[Kk]eystone-all" -c
|
||||
register: keystone_in_eventlet
|
||||
changed_when: false
|
||||
ignore_errors: True
|
||||
|
||||
- name: Set keystone_deployment variable to eventlet
|
||||
set_fact: openstack_keystone_deployment='eventlet'
|
||||
when: keystone_in_eventlet.stdout|int > 0
|
||||
- name: Set keystone_deployment variable to httpd
|
||||
set_fact: openstack_keystone_deployment='httpd'
|
||||
when: keystone_in_eventlet.stdout|int == 0
|
||||
|
||||
- name: Determine number of public workers for eventlet
|
||||
shell: crudini --get /etc/keystone/keystone.conf eventlet_server public_workers
|
||||
register: keystone_public_workers
|
||||
when: keystone_in_eventlet.stdout|int > 0
|
||||
- name: Set keystone_deployment variable to eventlet
|
||||
set_fact: openstack_keystone_deployment='eventlet'
|
||||
when: keystone_in_eventlet.stdout|int > 0
|
||||
|
||||
- name: Determine number of admin workers for eventlet
|
||||
shell: crudini --get /etc/keystone/keystone.conf eventlet_server admin_workers
|
||||
register: keystone_admin_workers
|
||||
when: keystone_in_eventlet.stdout|int > 0
|
||||
- name: Determine number of keystone admin processes for httpd
|
||||
shell: grep processes /etc/httpd/conf.d/10-keystone_wsgi_admin.conf | awk '{print $5}'| awk -F= '{print $2}'
|
||||
register: keystone_admin_worker_processes
|
||||
when: keystone_in_eventlet.stdout|int == 0
|
||||
|
||||
- name: Set keystone eventlet worker facts
|
||||
set_fact:
|
||||
openstack_keystone_admin_workers: "{{ keystone_admin_workers.stdout }}"
|
||||
openstack_keystone_public_workers: "{{ keystone_public_workers.stdout }}"
|
||||
when: keystone_in_eventlet.stdout|int > 0
|
||||
- name: Determine number of keystone admin threads for httpd
|
||||
shell: grep threads /etc/httpd/conf.d/10-keystone_wsgi_admin.conf | awk '{print $6}'| awk -F= '{print $2}'
|
||||
register: keystone_admin_worker_threads
|
||||
when: keystone_in_eventlet.stdout|int == 0
|
||||
|
||||
- name: Determine number of keystone admin processes for httpd
|
||||
shell: grep processes /etc/httpd/conf.d/10-keystone_wsgi_admin.conf | awk '{print $5}'| awk -F= '{print $2}'
|
||||
register: keystone_admin_worker_processes
|
||||
when: keystone_in_eventlet.stdout|int == 0
|
||||
- name: Determine number of keystone main threads for httpd
|
||||
shell: grep threads /etc/httpd/conf.d/10-keystone_wsgi_main.conf | awk '{print $6}'| awk -F= '{print $2}'
|
||||
register: keystone_main_worker_threads
|
||||
when: keystone_in_eventlet.stdout|int == 0
|
||||
|
||||
- name: Determine number of keystone admin threads for httpd
|
||||
shell: grep threads /etc/httpd/conf.d/10-keystone_wsgi_admin.conf | awk '{print $6}'| awk -F= '{print $2}'
|
||||
register: keystone_admin_worker_threads
|
||||
when: keystone_in_eventlet.stdout|int == 0
|
||||
- name: Determine number of keystone main processes for httpd
|
||||
shell: grep threads /etc/httpd/conf.d/10-keystone_wsgi_main.conf | awk '{print $5}'| awk -F= '{print $2}'
|
||||
register: keystone_main_worker_processes
|
||||
when: keystone_in_eventlet.stdout|int == 0
|
||||
|
||||
- name: Determine number of keystone main threads for httpd
|
||||
shell: grep threads /etc/httpd/conf.d/10-keystone_wsgi_main.conf | awk '{print $6}'| awk -F= '{print $2}'
|
||||
register: keystone_main_worker_threads
|
||||
when: keystone_in_eventlet.stdout|int == 0
|
||||
|
||||
- name: Determine number of keystone main processes for httpd
|
||||
shell: grep threads /etc/httpd/conf.d/10-keystone_wsgi_main.conf | awk '{print $5}'| awk -F= '{print $2}'
|
||||
register: keystone_main_worker_processes
|
||||
when: keystone_in_eventlet.stdout|int == 0
|
||||
|
||||
- name: Set keystone httpd worker facts
|
||||
set_fact:
|
||||
openstack_keystone_admin_workers_processes: "{{ keystone_admin_worker_processes.stdout }}"
|
||||
openstack_keystone_admin_workers_threads: "{{ keystone_admin_worker_threads.stdout }}"
|
||||
openstack_keystone_main_workers_processes: "{{ keystone_main_worker_processes.stdout }}"
|
||||
openstack_keystone_main_workers_threads: "{{ keystone_main_worker_threads.stdout }}"
|
||||
when: keystone_in_eventlet.stdout|int == 0
|
||||
- name: Set keystone httpd worker facts
|
||||
set_fact:
|
||||
openstack_keystone_admin_workers_processes: "{{ keystone_admin_worker_processes.stdout }}"
|
||||
openstack_keystone_admin_workers_threads: "{{ keystone_admin_worker_threads.stdout }}"
|
||||
openstack_keystone_main_workers_processes: "{{ keystone_main_worker_processes.stdout }}"
|
||||
openstack_keystone_main_workers_threads: "{{ keystone_main_worker_threads.stdout }}"
|
||||
when: keystone_in_eventlet.stdout|int == 0
|
||||
|
|
|
@ -2,120 +2,23 @@
|
|||
#
|
||||
# Tasks to get neutron facts
|
||||
#
|
||||
- name: Get Neutron L3 conf
|
||||
command: crudini --get /etc/neutron/neutron.conf DEFAULT router_distributed
|
||||
register: dvr_stat
|
||||
ignore_errors: true
|
||||
|
||||
- name: Set L3 configuration fact
|
||||
set_fact:
|
||||
openstack_neutron_l3_dvr: "{{ dvr_stat.stdout }}"
|
||||
when: dvr_stat.stdout != ""
|
||||
- name: Parse Neutron config
|
||||
become: true
|
||||
shell: python /tmp/openstack-config-parser.py neutron /etc/neutron/neutron.conf /tmp/out.yml
|
||||
|
||||
- name: Set L3 configauration fact
|
||||
set_fact:
|
||||
openstack_neutron_l3_dvr: false
|
||||
when: dvr_stat.stdout == ""
|
||||
- name: Fetch output
|
||||
fetch: src=/tmp/out.yml dest=/tmp/out.yml flat=yes
|
||||
|
||||
- name: Get Neutron Core Plugin
|
||||
command: crudini --get /etc/neutron/neutron.conf DEFAULT core_plugin
|
||||
register: core_plugin
|
||||
ignore_errors: true
|
||||
- name: Load configuration variables
|
||||
include_vars: /tmp/out.yml
|
||||
|
||||
- name: Set Core Plugin fact
|
||||
set_fact:
|
||||
openstack_neutron_core_plugin: "{{ core_plugin.stdout }}"
|
||||
- name: Parse Neutron plugin.ini
|
||||
become: true
|
||||
shell: python /tmp/openstack-config-parser.py neutron-plugin /etc/neutron/plugin.ini /tmp/out.yml
|
||||
|
||||
- name: Get Neutron API Workers
|
||||
command: crudini --get /etc/neutron/neutron.conf DEFAULT api_workers
|
||||
register: neutron_api
|
||||
ignore_errors: true
|
||||
- name: Fetch output
|
||||
fetch: src=/tmp/out.yml dest=/tmp/out.yml flat=yes
|
||||
|
||||
- name: Set neutron API Workers fact
|
||||
set_fact:
|
||||
openstack_neutron_api_workers: "{{ facter_processorcount }}"
|
||||
when: ( neutron_api.stdout == "" )
|
||||
|
||||
- name: Set neutron API Workers fact
|
||||
set_fact:
|
||||
openstack_neutron_api_workers: "{{ neutron_api.stdout }}"
|
||||
when: (neutron_api.stdout != "" and neutron_api.stdout|int > 1 )
|
||||
|
||||
- name: Set neutron API Workers fact
|
||||
set_fact:
|
||||
openstack_neutron_api_workers: 1
|
||||
when: (neutron_api.stdout != "" and neutron_api.stdout|int <= 1)
|
||||
|
||||
- name: Get Neutron RPC Workers
|
||||
command: crudini --get /etc/neutron/neutron.conf DEFAULT rpc_workers
|
||||
register: neutron_rpc
|
||||
ignore_errors: true
|
||||
|
||||
- name: Set neutron RPC Workers fact
|
||||
set_fact:
|
||||
openstack_neutron_rpc_workers: 1
|
||||
when: (neutron_rpc.stdout == "" or neutron_rpc.stdout|int < 1)
|
||||
|
||||
- name: Set neutron RPC Workers fact
|
||||
set_fact:
|
||||
openstack_neutron_rpc_workers: "{{ neutron_rpc.stdout }}"
|
||||
when: (neutron_rpc.stdout != "" and neutron_rpc.stdout|int >= 1)
|
||||
|
||||
- name: Get ml2 mechanism driver
|
||||
command: crudini --get /etc/neutron/plugins/ml2/ml2_conf.ini ml2 mechanism_drivers
|
||||
register: ml2
|
||||
when: openstack_neutron_core_plugin == "ml2"
|
||||
ignore_errors: true
|
||||
|
||||
- name: Set mechanism driver
|
||||
set_fact:
|
||||
openstack_neutron_ml2_driver: "{{ ml2.stdout }}"
|
||||
|
||||
- name: Get firewall driver
|
||||
command: crudini --get /etc/neutron/plugins/ml2/ml2_conf.ini securitygroup firewall_driver
|
||||
register: firewall
|
||||
ignore_errors: true
|
||||
|
||||
- name: Set firewall driver fact
|
||||
set_fact:
|
||||
openstack_neutron_firewall_driver: "iptables_hybrid"
|
||||
when: (firewall.stdout == "" and openstack_neutron_core_plugin == "ml2")
|
||||
|
||||
- name: Set firewall driver fact
|
||||
set_fact:
|
||||
openstack_neutron_firewall_driver: "{{ firewall.stdout }}"
|
||||
when: firewall.stdout != ""
|
||||
|
||||
- name: Get ovs tunnel type
|
||||
command: crudini --get /etc/neutron/plugins/ml2/openvswitch_agent.ini agent tunnel_types
|
||||
register: tunnel_type
|
||||
ignore_errors: true
|
||||
|
||||
- name: Set ovs tunnel type fact
|
||||
set_fact:
|
||||
openstack_neutron_ovs_tunnel: "{{ tunnel_type.stdout }}"
|
||||
when: "'openvswitch' in openstack_neutron_ml2_driver"
|
||||
|
||||
- name: Get ovs version
|
||||
shell: ovs-vswitchd --version | grep vSwitch | awk {'print$4'}
|
||||
register: ovs_version
|
||||
ignore_errors: true
|
||||
|
||||
- name: Set ovs version fact
|
||||
set_fact:
|
||||
openstack_ovs_version: "{{ ovs_version.stdout }}"
|
||||
|
||||
- name: Get neutron ovs agent ovsdb setting
|
||||
shell: crudini --get /etc/neutron/plugins/ml2/openvswitch_agent.ini ovs ovsdb_interface
|
||||
register: ovsdb_status
|
||||
ignore_errors: true
|
||||
|
||||
- name: Set Neutron OVS ovsdb fact
|
||||
set_fact:
|
||||
openstack_neutron_ovsdb: "{{ ovsdb_status.stdout }}"
|
||||
when: (ovsdb_status.stdout.find('native') != -1 or ovsdb_status.stdout.find('vsctl') != -1)
|
||||
|
||||
- name: Set Neutron OVS ovsdb fact
|
||||
set_fact:
|
||||
openstack_neutron_ovsdb: "vsctl"
|
||||
when: (ovsdb_status.stdout.find('native') == -1 and ovsdb_status.stdout.find('vsctl') == -1)
|
||||
- name: Load configuration variables
|
||||
include_vars: /tmp/out.yml
|
||||
|
|
|
@ -2,49 +2,14 @@
|
|||
#
|
||||
# Tasks to get nova facts
|
||||
#
|
||||
- name: Get Nova API Workers
|
||||
command: crudini --get /etc/nova/nova.conf DEFAULT osapi_compute_workers
|
||||
register: nova_api
|
||||
ignore_errors: true
|
||||
|
||||
- name: Set nova API Workers fact
|
||||
set_fact:
|
||||
openstack_nova_api_workers: "{{ facter_processorcount }}"
|
||||
when: (nova_api.stdout =="" or nova_api.stdout|int < 1)
|
||||
- name: Parse Nova config
|
||||
become: true
|
||||
shell: python /tmp/openstack-config-parser.py nova /etc/nova/nova.conf /tmp/out.yml
|
||||
|
||||
- name: Set nova API Workers fact
|
||||
set_fact:
|
||||
openstack_nova_api_workers: "{{ nova_api.stdout }}"
|
||||
when: (nova_api.stdout !="" and nova_api.stdout|int >= 1)
|
||||
|
||||
- name: Get Nova conductor workers
|
||||
command: crudini --get /etc/nova/nova.conf conductor workers
|
||||
register: nova_conductor
|
||||
ignore_errors: true
|
||||
|
||||
- name: Set Nova conductor workers
|
||||
set_fact:
|
||||
openstack_nova_conductor_workers: "{{ facter_processorcount }}"
|
||||
when: (nova_conductor.stdout == "" or nova_conductor.stdout|int < 1)
|
||||
|
||||
- name: Set Nova conductor workers
|
||||
set_fact:
|
||||
openstack_nova_conductor_workers: "{{ nova_conductor.stdout }}"
|
||||
when: (nova_conductor.stdout != "" and nova_conductor.stdout|int >= 1)
|
||||
|
||||
- name: Get Nova metadata workers
|
||||
command: crudini --get /etc/nova/nova.conf DEFAULT metadata_workers
|
||||
register: nova_metadata
|
||||
ignore_errors: true
|
||||
|
||||
- name: Set Nova metadata workers
|
||||
set_fact:
|
||||
openstack_nova_metadata_workers: "{{ facter_processorcount }}"
|
||||
when: (nova_metadata.stdout == "" or nova_metadata.stdout|int < 1)
|
||||
|
||||
- name: Set Nova metadata workers
|
||||
set_fact:
|
||||
openstack_nova_metadata_workers: "{{ nova_metadata.stdout }}"
|
||||
when: (nova_metadata.stdout != "" and nova_metadata.stdout|int >= 1)
|
||||
- name: Fetch output
|
||||
fetch: src=/tmp/out.yml dest=/tmp/out.yml flat=yes
|
||||
|
||||
- name: Load configuration variables
|
||||
include_vars: /tmp/out.yml
|
||||
|
||||
|
|
|
@ -9,6 +9,7 @@
|
|||
remote_user: "{{ host_remote_user }}"
|
||||
become: true
|
||||
roles:
|
||||
- common
|
||||
- nova
|
||||
- neutron
|
||||
- keystone
|
||||
|
@ -24,10 +25,7 @@
|
|||
roles:
|
||||
- undercloud
|
||||
|
||||
|
||||
- hosts: undercloud
|
||||
tasks:
|
||||
- name: Dump all vars
|
||||
template: src=dump_facts.j2 dest={{ browbeat_path }}/metadata/machine_facts.json
|
||||
- name: Generate metadata jsons
|
||||
shell : python {{ browbeat_path }}/lib/Metadata.py {{ browbeat_path }}/metadata
|
||||
remote_user: "{{ local_remote_user }}"
|
||||
roles:
|
||||
- dump-facts
|
||||
|
|
|
@ -63,29 +63,27 @@ class Metadata:
|
|||
return env_dict
|
||||
|
||||
def get_software_metadata(self, sys_data):
|
||||
soft_all_dict = {}
|
||||
soft_all_dict = []
|
||||
for item in sys_data['system_data']:
|
||||
if 'software_details' not in soft_all_dict:
|
||||
soft_all_dict['software_details'] = {}
|
||||
nodes = ['controller', 'undercloud', 'compute']
|
||||
if any(node in item['inventory_hostname'] for node in nodes):
|
||||
if 'openstack' not in soft_all_dict['software_details']:
|
||||
soft_all_dict['software_details']['openstack'] = {}
|
||||
if 'config' not in soft_all_dict['software_details']['openstack']:
|
||||
soft_all_dict['software_details'][
|
||||
'openstack']['config'] = []
|
||||
software_dict = {}
|
||||
software_dict['node_name'] = item['inventory_hostname']
|
||||
for soft in item:
|
||||
if 'openstack' in soft:
|
||||
service = soft.split('_')
|
||||
key = soft.split('_', 2)[2]
|
||||
service_name = service[1]
|
||||
if service_name not in software_dict:
|
||||
node = item['inventory_hostname']
|
||||
if service_name in software_dict:
|
||||
if service_name in soft:
|
||||
software_dict[service_name][key] = item[soft]
|
||||
else:
|
||||
software_dict[service_name] = {}
|
||||
if service_name in soft:
|
||||
software_dict[service_name][soft] = item[soft]
|
||||
soft_all_dict['software_details']['openstack'][
|
||||
'config'].append(software_dict)
|
||||
if service_name in soft:
|
||||
software_dict[service_name]['node_name'] = node
|
||||
software_dict[service_name][key] = item[soft]
|
||||
|
||||
soft_all_dict.append(software_dict)
|
||||
return soft_all_dict
|
||||
|
||||
def write_metadata_file(self, data, filename):
|
||||
|
|
Loading…
Reference in New Issue