diff options
40 files changed, 390 insertions, 42 deletions
diff --git a/deployed-server/deployed-server-roles-data.yaml b/deployed-server/deployed-server-roles-data.yaml index 7623eda6..73dc9099 100644 --- a/deployed-server/deployed-server-roles-data.yaml +++ b/deployed-server/deployed-server-roles-data.yaml @@ -133,6 +133,7 @@ - OS::TripleO::Services::TripleoPackages - OS::TripleO::Services::TripleoFirewall - OS::TripleO::Services::NeutronSriovAgent + - OS::TripleO::Services::NeutronSriovHostConfig - OS::TripleO::Services::OpenDaylightOvs - OS::TripleO::Services::SensuClient - OS::TripleO::Services::FluentdClient diff --git a/docker/services/aodh-api.yaml b/docker/services/aodh-api.yaml index da4b981c..49c5f9c5 100644 --- a/docker/services/aodh-api.yaml +++ b/docker/services/aodh-api.yaml @@ -102,7 +102,8 @@ outputs: user: root volumes: - /var/log/containers/aodh:/var/log/aodh - command: ['/bin/bash', '-c', 'mkdir -p /var/log/httpd; chown -R aodh:aodh /var/log/aodh'] + - /var/log/containers/httpd/aodh-api:/var/log/httpd + command: ['/bin/bash', '-c', 'chown -R aodh:aodh /var/log/aodh'] step_3: aodh_db_sync: image: *aodh_api_image @@ -117,6 +118,7 @@ outputs: - /var/lib/config-data/aodh/etc/my.cnf.d/tripleo.cnf:/etc/my.cnf.d/tripleo.cnf:ro - /var/lib/config-data/aodh/etc/aodh/:/etc/aodh/:ro - /var/log/containers/aodh:/var/log/aodh + - /var/log/containers/httpd/aodh-api:/var/log/httpd command: "/usr/bin/bootstrap_host_exec aodh_api su aodh -s /bin/bash -c /usr/bin/aodh-dbsync" step_4: aodh_api: @@ -131,6 +133,7 @@ outputs: - /var/lib/kolla/config_files/aodh_api.json:/var/lib/kolla/config_files/config.json:ro - /var/lib/config-data/puppet-generated/aodh/:/var/lib/kolla/config_files/src:ro - /var/log/containers/aodh:/var/log/aodh + - /var/log/containers/httpd/aodh-api:/var/log/httpd - if: - internal_tls_enabled @@ -146,8 +149,11 @@ outputs: host_prep_tasks: - name: create persistent logs directory file: - path: /var/log/containers/aodh + path: "{{ item }}" state: directory + with_items: + - /var/log/containers/aodh + - /var/log/containers/httpd/aodh-api upgrade_tasks: - name: Stop and disable aodh service (running under httpd) tags: step2 diff --git a/docker/services/ceilometer-agent-central.yaml b/docker/services/ceilometer-agent-central.yaml index 424c316f..d772462d 100644 --- a/docker/services/ceilometer-agent-central.yaml +++ b/docker/services/ceilometer-agent-central.yaml @@ -69,7 +69,7 @@ outputs: config_image: {get_param: DockerCeilometerConfigImage} kolla_config: /var/lib/kolla/config_files/ceilometer_agent_central.json: - command: /usr/bin/ceilometer-polling --polling-namespaces central + command: /usr/bin/ceilometer-polling --polling-namespaces central --logfile /var/log/ceilometer/central.log config_files: - source: "/var/lib/kolla/config_files/src/*" dest: "/" @@ -116,6 +116,11 @@ outputs: - '/usr/bin/bootstrap_host_exec' - 'ceilometer_agent_central' - "su ceilometer -s /bin/bash -c 'for n in {1..10}; do /usr/bin/ceilometer-upgrade --skip-metering-database && exit 0 || sleep 5; done; exit 1'" + host_prep_tasks: + - name: create persistent logs directory + file: + path: /var/log/containers/ceilometer + state: directory upgrade_tasks: - name: Stop and disable ceilometer agent central service tags: step2 diff --git a/docker/services/ceilometer-agent-compute.yaml b/docker/services/ceilometer-agent-compute.yaml index 535b1693..90b30d46 100644 --- a/docker/services/ceilometer-agent-compute.yaml +++ b/docker/services/ceilometer-agent-compute.yaml @@ -69,7 +69,7 @@ outputs: config_image: {get_param: DockerCeilometerConfigImage} kolla_config: /var/lib/kolla/config_files/ceilometer_agent_compute.json: - command: /usr/bin/ceilometer-polling --polling-namespaces compute + command: /usr/bin/ceilometer-polling --polling-namespaces compute --logfile /var/log/ceilometer/compute.log config_files: - source: "/var/lib/kolla/config_files/src/*" dest: "/" @@ -89,8 +89,14 @@ outputs: - /var/lib/kolla/config_files/ceilometer_agent_compute.json:/var/lib/kolla/config_files/config.json:ro - /var/lib/config-data/puppet-generated/ceilometer/:/var/lib/kolla/config_files/src:ro - /var/run/libvirt:/var/run/libvirt:ro + - /var/log/containers/ceilometer:/var/log/ceilometer environment: - KOLLA_CONFIG_STRATEGY=COPY_ALWAYS + host_prep_tasks: + - name: create persistent logs directory + file: + path: /var/log/containers/ceilometer + state: directory upgrade_tasks: - name: Check if openstack-ceilometer-compute is deployed command: systemctl is-enabled openstack-ceilometer-compute @@ -99,14 +105,14 @@ outputs: register: openstack_ceilometer_compute_enabled - name: Check if openstack-ceilometer-polling is deployed command: systemctl is-enabled openstack-ceilometer-polling - tags: step2 + tags: step2 ignore_errors: True register: openstack_ceilometer_polling_enabled - name: Stop and disable ceilometer compute agent tags: step2 service: name=openstack-ceilometer-compute state=stopped enabled=no - when: openstack_ceilometer_compute_enabled.rc == 0 + when: openstack_ceilometer_compute_enabled.rc|default('') == 0 - name: Stop and disable ceilometer polling agent tags: step2 service: name=openstack-ceilometer-polling state=stopped enabled=no - when: openstack_ceilometer_polling_enabled.rc == 0 + when: openstack_ceilometer_polling_enabled.rc|default('') == 0 diff --git a/docker/services/ceilometer-agent-notification.yaml b/docker/services/ceilometer-agent-notification.yaml index 7f1d442a..d8afe695 100644 --- a/docker/services/ceilometer-agent-notification.yaml +++ b/docker/services/ceilometer-agent-notification.yaml @@ -69,7 +69,7 @@ outputs: config_image: {get_param: DockerCeilometerConfigImage} kolla_config: /var/lib/kolla/config_files/ceilometer_agent_notification.json: - command: /usr/bin/ceilometer-agent-notification + command: /usr/bin/ceilometer-agent-notification --logfile /var/log/ceilometer/agent-notification.log config_files: - source: "/var/lib/kolla/config_files/src/*" dest: "/" @@ -96,8 +96,14 @@ outputs: - - /var/lib/kolla/config_files/ceilometer_agent_notification.json:/var/lib/kolla/config_files/config.json:ro - /var/lib/config-data/puppet-generated/ceilometer/:/var/lib/kolla/config_files/src:ro + - /var/log/containers/ceilometer:/var/log/ceilometer environment: - KOLLA_CONFIG_STRATEGY=COPY_ALWAYS + host_prep_tasks: + - name: create persistent logs directory + file: + path: /var/log/containers/ceilometer + state: directory upgrade_tasks: - name: Stop and disable ceilometer agent notification service tags: step2 diff --git a/docker/services/cinder-api.yaml b/docker/services/cinder-api.yaml index 93d09ca0..06705309 100644 --- a/docker/services/cinder-api.yaml +++ b/docker/services/cinder-api.yaml @@ -111,6 +111,7 @@ outputs: user: root volumes: - /var/log/containers/cinder:/var/log/cinder + - /var/log/containers/httpd/cinder-api:/var/log/httpd command: ['/bin/bash', '-c', 'chown -R cinder:cinder /var/log/cinder'] step_3: cinder_api_db_sync: @@ -125,6 +126,7 @@ outputs: - - /var/lib/config-data/cinder/etc/cinder/:/etc/cinder/:ro - /var/log/containers/cinder:/var/log/cinder + - /var/log/containers/httpd/cinder-api:/var/log/httpd command: - '/usr/bin/bootstrap_host_exec' - 'cinder_api' @@ -145,6 +147,7 @@ outputs: - /var/lib/kolla/config_files/cinder_api.json:/var/lib/kolla/config_files/config.json:ro - /var/lib/config-data/puppet-generated/cinder/:/var/lib/kolla/config_files/src:ro - /var/log/containers/cinder:/var/log/cinder + - /var/log/containers/httpd/cinder-api:/var/log/httpd - if: - internal_tls_enabled @@ -172,6 +175,7 @@ outputs: - /var/lib/kolla/config_files/cinder_api_cron.json:/var/lib/kolla/config_files/config.json:ro - /var/lib/config-data/puppet-generated/cinder/:/var/lib/kolla/config_files/src:ro - /var/log/containers/cinder:/var/log/cinder + - /var/log/containers/httpd/cinder-api:/var/log/httpd environment: - KOLLA_CONFIG_STRATEGY=COPY_ALWAYS @@ -180,8 +184,11 @@ outputs: host_prep_tasks: - name: create persistent logs directory file: - path: /var/log/containers/cinder + path: "{{ item }}" state: directory + with_items: + - /var/log/containers/cinder + - /var/log/containers/httpd/cinder-api upgrade_tasks: - name: Stop and disable cinder_api service tags: step2 diff --git a/docker/services/glance-api.yaml b/docker/services/glance-api.yaml index df226b15..8f2bd604 100644 --- a/docker/services/glance-api.yaml +++ b/docker/services/glance-api.yaml @@ -118,6 +118,7 @@ outputs: user: root volumes: - /var/log/containers/glance:/var/log/glance + - /var/log/containers/httpd/glance-api:/var/log/httpd command: ['/bin/bash', '-c', 'chown -R glance:glance /var/log/glance'] step_3: glance_api_db_sync: @@ -133,6 +134,7 @@ outputs: - /var/lib/kolla/config_files/glance_api.json:/var/lib/kolla/config_files/config.json - /var/lib/config-data/puppet-generated/glance_api/:/var/lib/kolla/config_files/src:ro - /var/log/containers/glance:/var/log/glance + - /var/log/containers/httpd/glance-api:/var/log/httpd - /etc/ceph:/var/lib/kolla/config_files/src-ceph:ro - if: @@ -176,8 +178,11 @@ outputs: host_prep_tasks: - name: create persistent logs directory file: - path: /var/log/containers/glance + path: "{{ item }}" state: directory + with_items: + - /var/log/containers/glance + - /var/log/containers/httpd/glance-api - name: ensure ceph configurations exist file: path: /etc/ceph diff --git a/docker/services/gnocchi-api.yaml b/docker/services/gnocchi-api.yaml index 1443da40..47b3b811 100644 --- a/docker/services/gnocchi-api.yaml +++ b/docker/services/gnocchi-api.yaml @@ -104,7 +104,8 @@ outputs: user: root volumes: - /var/log/containers/gnocchi:/var/log/gnocchi - command: ['/bin/bash', '-c', 'mkdir -p /var/log/httpd; chown -R gnocchi:gnocchi /var/log/gnocchi'] + - /var/log/containers/httpd/gnocchi-api:/var/log/httpd + command: ['/bin/bash', '-c', 'chown -R gnocchi:gnocchi /var/log/gnocchi'] step_4: gnocchi_db_sync: image: *gnocchi_api_image @@ -119,6 +120,7 @@ outputs: - /var/lib/config-data/gnocchi/etc/my.cnf.d/tripleo.cnf:/etc/my.cnf.d/tripleo.cnf:ro - /var/lib/config-data/gnocchi/etc/gnocchi/:/etc/gnocchi/:ro - /var/log/containers/gnocchi:/var/log/gnocchi + - /var/log/containers/httpd/gnocchi-api:/var/log/httpd - /etc/ceph:/etc/ceph:ro command: str_replace: @@ -138,6 +140,7 @@ outputs: - /var/lib/kolla/config_files/gnocchi_api.json:/var/lib/kolla/config_files/config.json:ro - /var/lib/config-data/puppet-generated/gnocchi/:/var/lib/kolla/config_files/src:ro - /var/log/containers/gnocchi:/var/log/gnocchi + - /var/log/containers/httpd/gnocchi-api:/var/log/httpd - /etc/ceph:/var/lib/kolla/config_files/src-ceph:ro - if: @@ -154,8 +157,11 @@ outputs: host_prep_tasks: - name: create persistent logs directory file: - path: /var/log/containers/gnocchi + path: "{{ item }}" state: directory + with_items: + - /var/log/containers/gnocchi + - /var/log/containers/httpd/gnocchi-api - name: ensure ceph configurations exist file: path: /etc/ceph diff --git a/docker/services/heat-api-cfn.yaml b/docker/services/heat-api-cfn.yaml index 70612899..cfe11cd6 100644 --- a/docker/services/heat-api-cfn.yaml +++ b/docker/services/heat-api-cfn.yaml @@ -107,6 +107,7 @@ outputs: - /var/lib/kolla/config_files/heat_api_cfn.json:/var/lib/kolla/config_files/config.json:ro - /var/lib/config-data/puppet-generated/heat_api_cfn/:/var/lib/kolla/config_files/src:ro - /var/log/containers/heat:/var/log/heat + - /var/log/containers/httpd/heat-api-cfn:/var/log/httpd - if: - internal_tls_enabled @@ -122,8 +123,11 @@ outputs: host_prep_tasks: - name: create persistent logs directory file: - path: /var/log/containers/heat + path: "{{ item }}" state: directory + with_items: + - /var/log/containers/heat + - /var/log/containers/httpd/heat-api-cfn upgrade_tasks: - name: Check if heat_api_cfn is deployed command: systemctl is-enabled openstack-heat-api-cfn diff --git a/docker/services/heat-api.yaml b/docker/services/heat-api.yaml index 6c1621f1..2bb588de 100644 --- a/docker/services/heat-api.yaml +++ b/docker/services/heat-api.yaml @@ -118,6 +118,7 @@ outputs: - /var/lib/kolla/config_files/heat_api.json:/var/lib/kolla/config_files/config.json:ro - /var/lib/config-data/puppet-generated/heat_api/:/var/lib/kolla/config_files/src:ro - /var/log/containers/heat:/var/log/heat + - /var/log/containers/httpd/heat-api:/var/log/httpd - if: - internal_tls_enabled @@ -145,13 +146,17 @@ outputs: - /var/lib/kolla/config_files/heat_api_cron.json:/var/lib/kolla/config_files/config.json:ro - /var/lib/config-data/puppet-generated/heat_api/:/var/lib/kolla/config_files/src:ro - /var/log/containers/heat:/var/log/heat + - /var/log/containers/httpd/heat-api:/var/log/httpd environment: - KOLLA_CONFIG_STRATEGY=COPY_ALWAYS host_prep_tasks: - name: create persistent logs directory file: - path: /var/log/containers/heat + path: "{{ item }}" state: directory + with_items: + - /var/log/containers/heat + - /var/log/containers/httpd/heat-api upgrade_tasks: - name: Check is heat_api is deployed command: systemctl is-enabled openstack-heat-api diff --git a/docker/services/horizon.yaml b/docker/services/horizon.yaml index f2f2b8dc..9a2c8bad 100644 --- a/docker/services/horizon.yaml +++ b/docker/services/horizon.yaml @@ -110,6 +110,7 @@ outputs: command: ['/bin/bash', '-c', 'touch /var/log/horizon/horizon.log && chown -R apache:apache /var/log/horizon && chmod -R a+rx /etc/openstack-dashboard'] volumes: - /var/log/containers/horizon:/var/log/horizon + - /var/log/containers/httpd/horizon:/var/log/httpd - /var/lib/config-data/horizon/etc/:/etc/ step_3: horizon: @@ -124,6 +125,7 @@ outputs: - /var/lib/kolla/config_files/horizon.json:/var/lib/kolla/config_files/config.json:ro - /var/lib/config-data/puppet-generated/horizon/:/var/lib/kolla/config_files/src:ro - /var/log/containers/horizon:/var/log/horizon + - /var/log/containers/httpd/horizon:/var/log/httpd - if: - internal_tls_enabled @@ -139,8 +141,11 @@ outputs: host_prep_tasks: - name: create persistent logs directory file: - path: /var/log/containers/horizon + path: "{{ item }}" state: directory + with_items: + - /var/log/containers/horizon + - /var/log/containers/httpd/horizon upgrade_tasks: - name: Stop and disable horizon service (running under httpd) tags: step2 diff --git a/docker/services/ironic-api.yaml b/docker/services/ironic-api.yaml index 2a9735b5..38710f3b 100644 --- a/docker/services/ironic-api.yaml +++ b/docker/services/ironic-api.yaml @@ -97,6 +97,7 @@ outputs: user: root volumes: - /var/log/containers/ironic:/var/log/ironic + - /var/log/containers/httpd/ironic-api:/var/log/httpd command: ['/bin/bash', '-c', 'chown -R ironic:ironic /var/log/ironic'] step_3: ironic_db_sync: @@ -112,6 +113,7 @@ outputs: - - /var/lib/config-data/ironic_api/etc/ironic:/etc/ironic:ro - /var/log/containers/ironic:/var/log/ironic + - /var/log/containers/httpd/ironic-api:/var/log/httpd command: "/usr/bin/bootstrap_host_exec ironic_api su ironic -s /bin/bash -c 'ironic-dbsync --config-file /etc/ironic/ironic.conf'" step_4: ironic_api: @@ -127,13 +129,17 @@ outputs: - /var/lib/kolla/config_files/ironic_api.json:/var/lib/kolla/config_files/config.json:ro - /var/lib/config-data/puppet-generated/ironic_api/:/var/lib/kolla/config_files/src:ro - /var/log/containers/ironic:/var/log/ironic + - /var/log/containers/httpd/ironic-api:/var/log/httpd environment: - KOLLA_CONFIG_STRATEGY=COPY_ALWAYS host_prep_tasks: - name: create persistent logs directory file: - path: /var/log/containers/ironic + path: "{{ item }}" state: directory + with_items: + - /var/log/containers/ironic + - /var/log/containers/httpd/ironic-api upgrade_tasks: - name: Stop and disable ironic_api service tags: step2 diff --git a/docker/services/ironic-pxe.yaml b/docker/services/ironic-pxe.yaml index 48d2e1ee..878eef63 100644 --- a/docker/services/ironic-pxe.yaml +++ b/docker/services/ironic-pxe.yaml @@ -92,6 +92,7 @@ outputs: - /var/lib/ironic:/var/lib/ironic/ - /dev/log:/dev/log - /var/log/containers/ironic:/var/log/ironic + - /var/log/containers/httpd/ironic-pxe:/var/log/httpd environment: - KOLLA_CONFIG_STRATEGY=COPY_ALWAYS ironic_pxe_http: @@ -108,6 +109,7 @@ outputs: - /var/lib/config-data/puppet-generated/ironic/:/var/lib/kolla/config_files/src:ro - /var/lib/ironic:/var/lib/ironic/ - /var/log/containers/ironic:/var/log/ironic + - /var/log/containers/httpd/ironic-pxe:/var/log/httpd environment: - KOLLA_CONFIG_STRATEGY=COPY_ALWAYS host_prep_tasks: @@ -118,3 +120,4 @@ outputs: with_items: - /var/lib/ironic - /var/log/containers/ironic + - /var/log/containers/httpd/ironic-pxe diff --git a/docker/services/keystone.yaml b/docker/services/keystone.yaml index 97b4c5d5..8f4a2014 100644 --- a/docker/services/keystone.yaml +++ b/docker/services/keystone.yaml @@ -121,9 +121,10 @@ outputs: keystone_init_log: image: &keystone_image {get_param: DockerKeystoneImage} user: root - command: ['/bin/bash', '-c', 'mkdir -p /var/log/httpd; chown -R keystone:keystone /var/log/keystone'] + command: ['/bin/bash', '-c', 'chown -R keystone:keystone /var/log/keystone'] volumes: - /var/log/containers/keystone:/var/log/keystone + - /var/log/containers/httpd/keystone:/var/log/httpd step_3: keystone_db_sync: image: *keystone_image @@ -138,6 +139,7 @@ outputs: - /var/lib/kolla/config_files/keystone.json:/var/lib/kolla/config_files/config.json:ro - /var/lib/config-data/puppet-generated/keystone/:/var/lib/kolla/config_files/src:ro - /var/log/containers/keystone:/var/log/keystone + - /var/log/containers/httpd/keystone:/var/log/httpd - if: - internal_tls_enabled @@ -184,6 +186,7 @@ outputs: - /var/lib/kolla/config_files/keystone_cron.json:/var/lib/kolla/config_files/config.json:ro - /var/lib/config-data/puppet-generated/keystone/:/var/lib/kolla/config_files/src:ro - /var/log/containers/keystone:/var/log/keystone + - /var/log/containers/httpd/keystone:/var/log/httpd environment: - KOLLA_CONFIG_STRATEGY=COPY_ALWAYS docker_puppet_tasks: @@ -196,8 +199,11 @@ outputs: host_prep_tasks: - name: create persistent logs directory file: - path: /var/log/containers/keystone + path: "{{ item }}" state: directory + with_items: + - /var/log/containers/keystone + - /var/log/containers/httpd/keystone upgrade_tasks: - name: Stop and disable keystone service (running under httpd) tags: step2 diff --git a/docker/services/manila-api.yaml b/docker/services/manila-api.yaml index 7b2dbfaf..a0e501ec 100644 --- a/docker/services/manila-api.yaml +++ b/docker/services/manila-api.yaml @@ -90,7 +90,8 @@ outputs: user: root volumes: - /var/log/containers/manila:/var/log/manila - command: ['/bin/bash', '-c', 'mkdir -p /var/log/httpd; chown -R manila:manila /var/log/manila'] + - /var/log/containers/httpd/manila-api:/var/log/httpd + command: ['/bin/bash', '-c', 'chown -R manila:manila /var/log/manila'] step_3: manila_api_db_sync: user: root @@ -103,6 +104,7 @@ outputs: - - /var/lib/config-data/manila/etc/manila/:/etc/manila/:ro - /var/log/containers/manila:/var/log/manila + - /var/log/containers/httpd/manila-api:/var/log/httpd command: "/usr/bin/bootstrap_host_exec manila_api su manila -s /bin/bash -c '/usr/bin/manila-manage db sync'" step_4: manila_api: @@ -116,13 +118,17 @@ outputs: - /var/lib/kolla/config_files/manila_api.json:/var/lib/kolla/config_files/config.json:ro - /var/lib/config-data/puppet-generated/manila/:/var/lib/kolla/config_files/src:ro - /var/log/containers/manila:/var/log/manila + - /var/log/containers/httpd/manila-api:/var/log/httpd environment: - KOLLA_CONFIG_STRATEGY=COPY_ALWAYS host_prep_tasks: - name: Create persistent manila logs directory file: - path: /var/log/containers/manila + path: "{{ item }}" state: directory + with_items: + - /var/log/containers/manila + - /var/log/containers/httpd/manila-api upgrade_tasks: - name: Stop and disable manila_api service tags: step2 diff --git a/docker/services/neutron-api.yaml b/docker/services/neutron-api.yaml index 85a07128..c028fc28 100644 --- a/docker/services/neutron-api.yaml +++ b/docker/services/neutron-api.yaml @@ -110,6 +110,7 @@ outputs: user: root volumes: - /var/log/containers/neutron:/var/log/neutron + - /var/log/containers/httpd/neutron-api:/var/log/httpd command: ['/bin/bash', '-c', 'chown -R neutron:neutron /var/log/neutron'] step_3: neutron_db_sync: @@ -126,6 +127,7 @@ outputs: - /var/lib/config-data/neutron/etc/neutron:/etc/neutron:ro - /var/lib/config-data/neutron/usr/share/neutron:/usr/share/neutron:ro - /var/log/containers/neutron:/var/log/neutron + - /var/log/containers/httpd/neutron-api:/var/log/httpd command: ['/usr/bin/bootstrap_host_exec', 'neutron_api', 'neutron-db-manage', 'upgrade', 'heads'] # FIXME: we should make config file permissions right # and run as neutron user @@ -144,6 +146,7 @@ outputs: - /var/lib/kolla/config_files/neutron_api.json:/var/lib/kolla/config_files/config.json:ro - /var/lib/config-data/puppet-generated/neutron/:/var/lib/kolla/config_files/src:ro - /var/log/containers/neutron:/var/log/neutron + - /var/log/containers/httpd/neutron-api:/var/log/httpd environment: - KOLLA_CONFIG_STRATEGY=COPY_ALWAYS - if: @@ -167,8 +170,11 @@ outputs: host_prep_tasks: - name: create persistent logs directory file: - path: /var/log/containers/neutron + path: "{{ item }}" state: directory + with_items: + - /var/log/containers/neutron + - /var/log/containers/httpd/neutron-api upgrade_tasks: - name: Check if neutron_server is deployed command: systemctl is-enabled neutron-server diff --git a/docker/services/neutron-sriov-agent.yaml b/docker/services/neutron-sriov-agent.yaml new file mode 100644 index 00000000..a9914987 --- /dev/null +++ b/docker/services/neutron-sriov-agent.yaml @@ -0,0 +1,108 @@ +heat_template_version: pike + +description: > + OpenStack Neutron SR-IOV service + +parameters: + DockerNeutronSriovImage: + description: The container image to use for the Neutron SR-IOV agent + type: string + DockerNeutronConfigImage: + description: The container image to use for the neutron config_volume + type: string + ServiceData: + default: {} + description: Dictionary packing service data + type: json + ServiceNetMap: + default: {} + description: Mapping of service_name -> network name. Typically set + via parameter_defaults in the resource registry. This + mapping overrides those in ServiceNetMapDefaults. + type: json + DefaultPasswords: + default: {} + type: json + RoleName: + default: '' + description: Role name on which the service is applied + type: string + RoleParameters: + default: {} + description: Parameters specific to the role + type: json + EndpointMap: + default: {} + description: Mapping of service endpoint -> protocol. Typically set + via parameter_defaults in the resource registry. + type: json + +resources: + + ContainersCommon: + type: ./containers-common.yaml + + NeutronSriovAgentBase: + type: ../../puppet/services/neutron-sriov-agent.yaml + properties: + EndpointMap: {get_param: EndpointMap} + ServiceData: {get_param: ServiceData} + ServiceNetMap: {get_param: ServiceNetMap} + DefaultPasswords: {get_param: DefaultPasswords} + RoleName: {get_param: RoleName} + RoleParameters: {get_param: RoleParameters} + +outputs: + role_data: + description: Role data for Neutron sriov service + value: + service_name: {get_attr: [NeutronSriovAgentBase, role_data, service_name]} + config_settings: {get_attr: [NeutronSriovAgentBase, role_data, config_settings]} + step_config: &step_config + get_attr: [NeutronSriovAgentBase, role_data, step_config] + puppet_config: + config_volume: neutron + puppet_tags: neutron_config,neutron_agent_sriov_numvfs,neutron_sriov_agent_config + step_config: *step_config + config_image: {get_param: DockerNeutronConfigImage} + kolla_config: + /var/lib/kolla/config_files/neutron_sriov_agent.json: + command: /usr/bin/neutron-sriov-nic-agent --config-file /usr/share/neutron/neutron-dist.conf --config-file /etc/neutron/neutron.conf --config-file /etc/neutron/plugins/ml2/sriov_agent.ini --config-dir /etc/neutron/conf.d/common + config_files: + - source: "/var/lib/kolla/config_files/src/*" + dest: "/" + merge: true + preserve_properties: true + permissions: + - path: /var/log/neutron + owner: neutron:neutron + recurse: true + docker_config: + step_4: + neutron_sriov_agent: + image: {get_param: DockerNeutronSriovImage} + net: host + pid: host + privileged: true + restart: always + volumes: + list_concat: + - {get_attr: [ContainersCommon, volumes]} + - + - /var/lib/kolla/config_files/neutron_sriov_agent.json:/var/lib/kolla/config_files/config.json:ro + - /var/lib/config-data/puppet-generated/neutron/:/var/lib/kolla/config_files/src:ro + - /lib/modules:/lib/modules:ro + - /run:/run + - /var/log/containers/neutron:/var/log/neutron + - /sys/class/net:/sys/class/net:rw + environment: + - KOLLA_CONFIG_STRATEGY=COPY_ALWAYS + host_prep_tasks: + - name: create persistent logs directory + file: + path: /var/log/containers/neutron + state: directory + upgrade_tasks: + - name: Stop and disable neutron_sriov_agent service + tags: step2 + service: name=neutron-sriov-nic-agent state=stopped enabled=no diff --git a/docker/services/nova-api.yaml b/docker/services/nova-api.yaml index 7142b70e..f46e27c0 100644 --- a/docker/services/nova-api.yaml +++ b/docker/services/nova-api.yaml @@ -116,7 +116,8 @@ outputs: user: root volumes: - /var/log/containers/nova:/var/log/nova - command: ['/bin/bash', '-c', 'mkdir -p /var/log/httpd; chown -R nova:nova /var/log/nova'] + - /var/log/containers/httpd/nova-api:/var/log/httpd + command: ['/bin/bash', '-c', 'chown -R nova:nova /var/log/nova'] step_3: nova_api_db_sync: start_order: 0 @@ -131,6 +132,7 @@ outputs: - /var/lib/config-data/nova/etc/my.cnf.d/tripleo.cnf:/etc/my.cnf.d/tripleo.cnf:ro - /var/lib/config-data/nova/etc/nova/:/etc/nova/:ro - /var/log/containers/nova:/var/log/nova + - /var/log/containers/httpd/nova-api:/var/log/httpd command: "/usr/bin/bootstrap_host_exec nova_api su nova -s /bin/bash -c '/usr/bin/nova-manage api_db sync'" # FIXME: we probably want to wait on the 'cell_v2 update' in order for this # to be capable of upgrading a baremetal setup. This is to ensure the name @@ -178,6 +180,7 @@ outputs: - /var/lib/kolla/config_files/nova_api.json:/var/lib/kolla/config_files/config.json:ro - /var/lib/config-data/puppet-generated/nova/:/var/lib/kolla/config_files/src:ro - /var/log/containers/nova:/var/log/nova + - /var/log/containers/httpd/nova-api:/var/log/httpd - if: - internal_tls_enabled @@ -205,6 +208,7 @@ outputs: - /var/lib/kolla/config_files/nova_api_cron.json:/var/lib/kolla/config_files/config.json:ro - /var/lib/config-data/puppet-generated/nova/:/var/lib/kolla/config_files/src:ro - /var/log/containers/nova:/var/log/nova + - /var/log/containers/httpd/nova-api:/var/log/httpd environment: - KOLLA_CONFIG_STRATEGY=COPY_ALWAYS step_5: @@ -221,8 +225,11 @@ outputs: host_prep_tasks: - name: create persistent logs directory file: - path: /var/log/containers/nova + path: "{{ item }}" state: directory + with_items: + - /var/log/containers/nova + - /var/log/containers/httpd/nova-api upgrade_tasks: - name: Stop and disable nova_api service tags: step2 diff --git a/docker/services/nova-placement.yaml b/docker/services/nova-placement.yaml index 26d17560..d66a6fb8 100644 --- a/docker/services/nova-placement.yaml +++ b/docker/services/nova-placement.yaml @@ -111,6 +111,7 @@ outputs: - /var/lib/kolla/config_files/nova_placement.json:/var/lib/kolla/config_files/config.json:ro - /var/lib/config-data/puppet-generated/nova_placement/:/var/lib/kolla/config_files/src:ro - /var/log/containers/nova:/var/log/nova + - /var/log/containers/httpd/nova-placement:/var/log/httpd - if: - internal_tls_enabled @@ -128,8 +129,11 @@ outputs: host_prep_tasks: - name: create persistent logs directory file: - path: /var/log/containers/nova + path: "{{ item }}" state: directory + with_items: + - /var/log/containers/nova + - /var/log/containers/httpd/nova-placement upgrade_tasks: - name: Stop and disable nova_placement service (running under httpd) tags: step2 diff --git a/docker/services/octavia-api.yaml b/docker/services/octavia-api.yaml index 86730ebc..da698991 100644 --- a/docker/services/octavia-api.yaml +++ b/docker/services/octavia-api.yaml @@ -111,6 +111,7 @@ outputs: # configuration. - /var/lib/config-data/puppet-generated/octavia/etc/octavia:/etc/octavia/ - /var/log/containers/octavia:/var/log/octavia + - /var/log/containers/httpd/octavia-api:/var/log/httpd command: ['/bin/bash', '-c', 'mkdir -p /etc/octavia/conf.d/octavia-api; chown -R octavia:octavia /etc/octavia/conf.d/octavia-api; chown -R octavia:octavia /var/log/octavia'] step_3: octavia_db_sync: @@ -126,6 +127,7 @@ outputs: - - /var/lib/config-data/octavia/etc/octavia/:/etc/octavia/:ro - /var/log/containers/octavia:/var/log/octavia + - /var/log/containers/httpd/octavia-api:/var/log/httpd command: "/usr/bin/bootstrap_host_exec octavia_api su octavia -s /bin/bash -c '/usr/bin/octavia-db-manage upgrade head'" step_4: map_merge: @@ -142,6 +144,7 @@ outputs: - /var/lib/kolla/config_files/octavia_api.json:/var/lib/kolla/config_files/config.json:ro - /var/lib/config-data/puppet-generated/octavia/:/var/lib/kolla/config_files/src:ro - /var/log/containers/octavia:/var/log/octavia + - /var/log/containers/httpd/octavia-api:/var/log/httpd environment: - KOLLA_CONFIG_STRATEGY=COPY_ALWAYS - if: @@ -166,8 +169,11 @@ outputs: host_prep_tasks: - name: create persistent logs directory file: - path: /var/log/containers/octavia + path: "{{ item }}" state: directory + with_items: + - /var/log/containers/octavia + - /var/log/containers/httpd/octavia-api upgrade_tasks: - name: Stop and disable octavia_api service tags: step2 diff --git a/docker/services/panko-api.yaml b/docker/services/panko-api.yaml index 626d9176..3edd9049 100644 --- a/docker/services/panko-api.yaml +++ b/docker/services/panko-api.yaml @@ -104,7 +104,8 @@ outputs: user: root volumes: - /var/log/containers/panko:/var/log/panko - command: ['/bin/bash', '-c', 'mkdir -p /var/log/httpd; chown -R panko:panko /var/log/panko'] + - /var/log/containers/httpd/panko-api:/var/log/httpd + command: ['/bin/bash', '-c', 'chown -R panko:panko /var/log/panko'] step_3: panko_db_sync: image: *panko_api_image @@ -119,6 +120,7 @@ outputs: - /var/lib/config-data/panko/etc/my.cnf.d/tripleo.cnf:/etc/my.cnf.d/tripleo.cnf:ro - /var/lib/config-data/panko/etc/panko:/etc/panko:ro - /var/log/containers/panko:/var/log/panko + - /var/log/containers/httpd/panko-api:/var/log/httpd command: "/usr/bin/bootstrap_host_exec panko_api su panko -s /bin/bash -c '/usr/bin/panko-dbsync'" step_4: panko_api: @@ -134,6 +136,7 @@ outputs: - /var/lib/kolla/config_files/panko_api.json:/var/lib/kolla/config_files/config.json:ro - /var/lib/config-data/puppet-generated/panko/:/var/lib/kolla/config_files/src:ro - /var/log/containers/panko:/var/log/panko + - /var/log/containers/httpd/panko-api:/var/log/httpd - if: - internal_tls_enabled @@ -149,7 +152,10 @@ outputs: host_prep_tasks: - name: create persistent logs directory file: - path: /var/log/containers/panko + path: "{{ item }}" state: directory + with_items: + - /var/log/containers/panko + - /var/log/containers/httpd/panko-api metadata_settings: get_attr: [PankoApiPuppetBase, role_data, metadata_settings] diff --git a/docker/services/swift-proxy.yaml b/docker/services/swift-proxy.yaml index 374db250..86871210 100644 --- a/docker/services/swift-proxy.yaml +++ b/docker/services/swift-proxy.yaml @@ -111,6 +111,7 @@ outputs: - /srv/node:/srv/node - /dev:/dev - /var/log/containers/swift:/var/log/swift + - /var/log/containers/httpd/swift-proxy:/var/log/httpd environment: - KOLLA_CONFIG_STRATEGY=COPY_ALWAYS - if: @@ -138,6 +139,7 @@ outputs: state: directory with_items: - /var/log/containers/swift + - /var/log/containers/httpd/swift-proxy - /srv/node upgrade_tasks: - name: Stop and disable swift_proxy service diff --git a/docker/services/zaqar.yaml b/docker/services/zaqar.yaml index 34f2e439..ab30ab5a 100644 --- a/docker/services/zaqar.yaml +++ b/docker/services/zaqar.yaml @@ -116,6 +116,7 @@ outputs: user: root volumes: - /var/log/containers/zaqar:/var/log/zaqar + - /var/log/containers/httpd/zaqar:/var/log/httpd command: ['/bin/bash', '-c', 'chown -R zaqar:zaqar /var/log/zaqar'] step_3: zaqar_db_sync: @@ -149,6 +150,7 @@ outputs: - /var/lib/kolla/config_files/zaqar.json:/var/lib/kolla/config_files/config.json:ro - /var/lib/config-data/puppet-generated/zaqar/:/var/lib/kolla/config_files/src:ro - /var/log/containers/zaqar:/var/log/zaqar + - /var/log/containers/httpd/zaqar:/var/log/httpd - if: - internal_tls_enabled @@ -173,13 +175,17 @@ outputs: - /var/lib/kolla/config_files/zaqar_websocket.json:/var/lib/kolla/config_files/config.json:ro - /var/lib/config-data/puppet-generated/zaqar/:/var/lib/kolla/config_files/src:ro - /var/log/containers/zaqar:/var/log/zaqar + - /var/log/containers/httpd/zaqar:/var/log/httpd environment: - KOLLA_CONFIG_STRATEGY=COPY_ALWAYS host_prep_tasks: - name: create persistent logs directory file: - path: /var/log/containers/zaqar + path: "{{ item }}" state: directory + with_items: + - /var/log/containers/zaqar + - /var/log/containers/httpd/zaqar upgrade_tasks: - name: Stop and disable zaqar service tags: step2 diff --git a/environments/docker.yaml b/environments/docker.yaml index 67e8a496..06e3d3ab 100644 --- a/environments/docker.yaml +++ b/environments/docker.yaml @@ -56,3 +56,7 @@ resource_registry: # OS::TripleO::Services::CinderScheduler: ../docker/services/cinder-scheduler.yaml # OS::TripleO::Services::CinderBackup: ../docker/services/cinder-backup.yaml # OS::TripleO::Services::CinderVolume: ../docker/services/cinder-volume.yaml + # + # If SR-IOV is enabled on the compute nodes, it will need the SR-IOV + # host configuration. + OS::TripleO::Services::NeutronSriovHostConfig: OS::Heat::None diff --git a/environments/hyperconverged-ceph.yaml b/environments/hyperconverged-ceph.yaml index 81044170..e674dc64 100644 --- a/environments/hyperconverged-ceph.yaml +++ b/environments/hyperconverged-ceph.yaml @@ -29,6 +29,7 @@ parameter_defaults: - OS::TripleO::Services::TripleoFirewall - OS::TripleO::Services::Tuned - OS::TripleO::Services::NeutronSriovAgent + - OS::TripleO::Services::NeutronSriovHostConfig - OS::TripleO::Services::OpenDaylightOvs - OS::TripleO::Services::SensuClient - OS::TripleO::Services::FluentdClient diff --git a/environments/neutron-opendaylight-dpdk.yaml b/environments/neutron-opendaylight-dpdk.yaml index 236b2fb9..0d598980 100644 --- a/environments/neutron-opendaylight-dpdk.yaml +++ b/environments/neutron-opendaylight-dpdk.yaml @@ -9,8 +9,9 @@ resource_registry: parameter_defaults: NeutronEnableForceMetadata: true + NeutronPluginExtensions: 'port_security' NeutronMechanismDrivers: 'opendaylight_v2' - NeutronServicePlugins: 'odl-router_v2' + NeutronServicePlugins: 'odl-router_v2,trunk' NovaSchedulerDefaultFilters: "RamFilter,ComputeFilter,AvailabilityZoneFilter,ComputeCapabilitiesFilter,ImagePropertiesFilter,NUMATopologyFilter" OpenDaylightSNATMechanism: 'controller' diff --git a/environments/neutron-opendaylight-sriov.yaml b/environments/neutron-opendaylight-sriov.yaml index 5c0a0350..3a212ed3 100644 --- a/environments/neutron-opendaylight-sriov.yaml +++ b/environments/neutron-opendaylight-sriov.yaml @@ -11,6 +11,7 @@ resource_registry: parameter_defaults: NeutronEnableForceMetadata: true + NeutronPluginExtensions: 'port_security' NeutronMechanismDrivers: ['sriovnicswitch','opendaylight_v2'] NeutronServicePlugins: 'odl-router_v2,trunk' diff --git a/environments/neutron-opendaylight.yaml b/environments/neutron-opendaylight.yaml index 4644725d..e9b1ac11 100644 --- a/environments/neutron-opendaylight.yaml +++ b/environments/neutron-opendaylight.yaml @@ -12,3 +12,4 @@ parameter_defaults: NeutronEnableForceMetadata: true NeutronMechanismDrivers: 'opendaylight_v2' NeutronServicePlugins: 'odl-router_v2,trunk' + NeutronPluginExtensions: 'port_security' diff --git a/environments/neutron-sriov.yaml b/environments/neutron-sriov.yaml index 591e2260..26c28d28 100755 --- a/environments/neutron-sriov.yaml +++ b/environments/neutron-sriov.yaml @@ -4,16 +4,5 @@ resource_registry: parameter_defaults: NeutronMechanismDrivers: ['sriovnicswitch', 'openvswitch'] - - # Add PciPassthroughFilter to the scheduler default filters - #NovaSchedulerDefaultFilters: ['RetryFilter','AvailabilityZoneFilter','RamFilter','ComputeFilter','ComputeCapabilitiesFilter','ImagePropertiesFilter','ServerGroupAntiAffinityFilter','ServerGroupAffinityFilter','PciPassthroughFilter'] - #NovaSchedulerAvailableFilters: ["nova.scheduler.filters.all_filters","nova.scheduler.filters.pci_passthrough_filter.PciPassthroughFilter"] - - #NeutronPhysicalDevMappings: "datacentre:ens20f2" - - # Number of VFs that needs to be configured for a physical interface - #NeutronSriovNumVFs: "ens20f2:5" - - #NovaPCIPassthrough: - # - devname: "ens20f2" - # physical_network: "datacentre" + NovaSchedulerDefaultFilters: ['RetryFilter','AvailabilityZoneFilter','RamFilter','ComputeFilter','ComputeCapabilitiesFilter','ImagePropertiesFilter','ServerGroupAntiAffinityFilter','ServerGroupAffinityFilter','PciPassthroughFilter'] + NovaSchedulerAvailableFilters: ["nova.scheduler.filters.all_filters","nova.scheduler.filters.pci_passthrough_filter.PciPassthroughFilter"] diff --git a/environments/services-docker/neutron-opendaylight.yaml b/environments/services-docker/neutron-opendaylight.yaml index 31d5790e..873957ae 100644 --- a/environments/services-docker/neutron-opendaylight.yaml +++ b/environments/services-docker/neutron-opendaylight.yaml @@ -10,5 +10,6 @@ resource_registry: parameter_defaults: NeutronEnableForceMetadata: true + NeutronPluginExtensions: 'port_security' NeutronMechanismDrivers: 'opendaylight_v2' NeutronServicePlugins: 'odl-router_v2,trunk' diff --git a/environments/services-docker/neutron-sriov.yaml b/environments/services-docker/neutron-sriov.yaml new file mode 100644 index 00000000..91725868 --- /dev/null +++ b/environments/services-docker/neutron-sriov.yaml @@ -0,0 +1,12 @@ +# EXPERIMENTAL: The configuration enabled by this environment is not considered +# production-ready. +# +# A Heat environment that can be used to enable SR-IOV support in neutron. +resource_registry: + OS::TripleO::Services::NeutronSriovAgent: ../../docker/services/neutron-sriov-agent.yaml + OS::TripleO::Services::NeutronSriovHostConfig: ../../puppet/services/neutron-sriov-host-config.yaml + +parameter_defaults: + NeutronMechanismDrivers: ['sriovnicswitch','openvswitch'] + NovaSchedulerDefaultFilters: ['RetryFilter','AvailabilityZoneFilter','RamFilter','ComputeFilter','ComputeCapabilitiesFilter','ImagePropertiesFilter','ServerGroupAntiAffinityFilter','ServerGroupAffinityFilter','PciPassthroughFilter'] + NovaSchedulerAvailableFilters: ["nova.scheduler.filters.all_filters","nova.scheduler.filters.pci_passthrough_filter.PciPassthroughFilter"] diff --git a/overcloud-resource-registry-puppet.j2.yaml b/overcloud-resource-registry-puppet.j2.yaml index 8f4b4b48..e5ae5279 100644 --- a/overcloud-resource-registry-puppet.j2.yaml +++ b/overcloud-resource-registry-puppet.j2.yaml @@ -169,6 +169,7 @@ resource_registry: OS::TripleO::Services::Pacemaker: OS::Heat::None OS::TripleO::Services::PacemakerRemote: OS::Heat::None OS::TripleO::Services::NeutronSriovAgent: OS::Heat::None + OS::TripleO::Services::NeutronSriovHostConfig: OS::Heat::None OS::TripleO::Services::RabbitMQ: puppet/services/rabbitmq.yaml OS::TripleO::Services::Qdr: OS::Heat::None OS::TripleO::Services::HAproxy: puppet/services/haproxy.yaml diff --git a/puppet/services/neutron-base.yaml b/puppet/services/neutron-base.yaml index b6980045..af3f8637 100644 --- a/puppet/services/neutron-base.yaml +++ b/puppet/services/neutron-base.yaml @@ -30,6 +30,10 @@ parameters: type: number default: 0 description: The number of neutron dhcp agents to schedule per network + DhcpAgentNotification: + default: true + description: Whether or not to enable DHCP agent notifications. + type: string NeutronDnsDomain: type: string default: openstacklocal @@ -133,6 +137,7 @@ outputs: - {get_param: NeutronDebug } neutron::purge_config: {get_param: EnableConfigPurge} neutron::allow_overlapping_ips: true + neutron::dhcp_agent_notification: {get_param: DhcpAgentNotification} neutron::dns_domain: {get_param: NeutronDnsDomain} neutron::rabbit_heartbeat_timeout_threshold: 60 neutron::host: '%{::fqdn}' diff --git a/puppet/services/neutron-sriov-agent.yaml b/puppet/services/neutron-sriov-agent.yaml index 3c18209c..5c52ecfc 100644 --- a/puppet/services/neutron-sriov-agent.yaml +++ b/puppet/services/neutron-sriov-agent.yaml @@ -99,3 +99,17 @@ outputs: - get_attr: [RoleParametersValue, value] step_config: | include ::tripleo::profile::base::neutron::sriov + upgrade_tasks: + - name: Check if neutron_sriov_agent is deployed + command: systemctl is-enabled neutron-sriov-nic-agent + tags: common + ignore_errors: True + register: neutron_sriov_nic_agent_enabled + - name: "PreUpgrade step0,validation: Check service neutron-server is running" + shell: /usr/bin/systemctl show 'neutron-sriov-nic-agent' --property ActiveState | grep '\bactive\b' + when: neutron_sriov_nic_agent_enabled.rc == 0 + tags: step0,validation + - name: Stop neutron_sriov_nic_agent service + tags: step1 + when: neutron_sriov_nic_agent_enabled.rc == 0 + service: name=neutron-sriov-nic-agent state=stopped diff --git a/puppet/services/neutron-sriov-host-config.yaml b/puppet/services/neutron-sriov-host-config.yaml new file mode 100644 index 00000000..987b96f9 --- /dev/null +++ b/puppet/services/neutron-sriov-host-config.yaml @@ -0,0 +1,78 @@ +heat_template_version: pike + +description: > + OpenStack Neutron SR-IOV host configuration + +parameters: + ServiceData: + default: {} + description: Dictionary packing service data + type: json + ServiceNetMap: + default: {} + description: > + Mapping of service_name -> network name. Typically set via + parameter_defaults in the resource registry. This mapping overrides those + in ServiceNetMapDefaults. + type: json + DefaultPasswords: + default: {} + type: json + RoleName: + default: '' + description: Role name on which the service is applied + type: string + RoleParameters: + default: {} + description: Parameters specific to the role + type: json + EndpointMap: + default: {} + description: Mapping of service endpoint -> protocol. Typically set + via parameter_defaults in the resource registry. + type: json + NeutronSriovNumVFs: + description: > + Provide the list of VFs to be reserved for each SR-IOV interface. + Format "<interface_name1>:<numvfs1>,<interface_name2>:<numvfs2>" + Example "eth1:4096,eth2:128" + type: comma_delimited_list + default: "" + +resources: + + NeutronBase: + type: ./neutron-base.yaml + properties: + ServiceData: {get_param: ServiceData} + ServiceNetMap: {get_param: ServiceNetMap} + DefaultPasswords: {get_param: DefaultPasswords} + EndpointMap: {get_param: EndpointMap} + RoleName: {get_param: RoleName} + RoleParameters: {get_param: RoleParameters} + + # Merging role-specific parameters (RoleParameters) with the default parameters. + # RoleParameters will have the precedence over the default parameters. + RoleParametersValue: + type: OS::Heat::Value + properties: + type: json + value: + map_replace: + - map_replace: + - tripleo::host::sriov::number_of_vfs: NeutronSriovNumVFs + - values: {get_param: [RoleParameters]} + - values: + NeutronSriovNumVFs: {get_param: NeutronSriovNumVFs} + +outputs: + role_data: + description: Role data for the Neutron SR-IOV nic agent service. + value: + service_name: neutron_sriov_host_config + config_settings: + map_merge: + - get_attr: [NeutronBase, role_data, config_settings] + - get_attr: [RoleParametersValue, value] + step_config: | + include ::tripleo::host::sriov diff --git a/releasenotes/notes/containerized-services-logs-0dc652513870f46d.yaml b/releasenotes/notes/containerized-services-logs-0dc652513870f46d.yaml new file mode 100644 index 00000000..5ce8b7df --- /dev/null +++ b/releasenotes/notes/containerized-services-logs-0dc652513870f46d.yaml @@ -0,0 +1,11 @@ +--- +upgrade: + - | + Containerized services logs can be found under updated paths. + Pacemaker-managed resources write logs to `/var/log/pacemaker/bundles/*`. + Docker-daemon managed openstack services bind-mount their log files to the + `/var/log/containers/<foo>/*` sub-directories. Services running under + Apache2 WSGI use the `/var/log/containers/httpd/<foo-api>/*` destinations. + Additional tools or commands that log to syslog, end up placing log records + into the hosts journalctl and `/var/log/messages`. + diff --git a/releasenotes/notes/odl-qos-48b70c804755e3a5.yaml b/releasenotes/notes/odl-qos-48b70c804755e3a5.yaml new file mode 100644 index 00000000..380ef7ff --- /dev/null +++ b/releasenotes/notes/odl-qos-48b70c804755e3a5.yaml @@ -0,0 +1,4 @@ +--- +fixes: + - Disables QoS with OpenDaylight until officially + supported. diff --git a/roles/Compute.yaml b/roles/Compute.yaml index 9d2c8189..892bed8f 100644 --- a/roles/Compute.yaml +++ b/roles/Compute.yaml @@ -39,6 +39,7 @@ - OS::TripleO::Services::MySQLClient - OS::TripleO::Services::NeutronLinuxbridgeAgent - OS::TripleO::Services::NeutronSriovAgent + - OS::TripleO::Services::NeutronSriovHostConfig - OS::TripleO::Services::NeutronVppAgent - OS::TripleO::Services::NovaCompute - OS::TripleO::Services::NovaLibvirt diff --git a/roles/ComputeHCI.yaml b/roles/ComputeHCI.yaml index 0216b04a..4632dff2 100644 --- a/roles/ComputeHCI.yaml +++ b/roles/ComputeHCI.yaml @@ -30,6 +30,7 @@ - OS::TripleO::Services::MySQLClient - OS::TripleO::Services::NeutronLinuxbridgeAgent - OS::TripleO::Services::NeutronSriovAgent + - OS::TripleO::Services::NeutronSriovHostConfig - OS::TripleO::Services::NeutronVppAgent - OS::TripleO::Services::NovaCompute - OS::TripleO::Services::NovaLibvirt diff --git a/roles_data.yaml b/roles_data.yaml index 1cdaf262..a1adc5ee 100644 --- a/roles_data.yaml +++ b/roles_data.yaml @@ -189,6 +189,7 @@ - OS::TripleO::Services::MySQLClient - OS::TripleO::Services::NeutronLinuxbridgeAgent - OS::TripleO::Services::NeutronSriovAgent + - OS::TripleO::Services::NeutronSriovHostConfig - OS::TripleO::Services::NeutronVppAgent - OS::TripleO::Services::NovaCompute - OS::TripleO::Services::NovaLibvirt |