From c1e7ff180e31f53b198ecc21dd970eee153a9972 Mon Sep 17 00:00:00 2001 From: Martin André Date: Thu, 7 Sep 2017 22:50:49 +0200 Subject: Add all services to container scenarios This commit brings the multinode containers scenario files closer to their BM variants to add missing services and turning pacemaker on. These require refactorings in OOOQ in order to support non-containerized to containerized upgrade jobs across releases. Ceph-ansible is also going to be switched separately. Co-Authored-By: Jiri Stransky Depends-On: Ie0e8de54794a9259c0aeb8c67ae0f6a908844093 Change-Id: Icb659509b38575534be27a1881dbe671c40a5436 Related-Bug: #1714905 Related-Bug: #1712070 (cherry picked from commit c504f83c28b986ceb2b92cc0077959158bd11df7) --- ci/environments/multinode-containers.yaml | 23 ++++++++++----- .../scenario001-multinode-containers.yaml | 27 ++++++++++++----- .../scenario002-multinode-containers.yaml | 34 ++++++++++++++++++---- .../scenario003-multinode-containers.yaml | 17 +++++++---- 4 files changed, 74 insertions(+), 27 deletions(-) diff --git a/ci/environments/multinode-containers.yaml b/ci/environments/multinode-containers.yaml index 7f0d6221..9092d3d7 100644 --- a/ci/environments/multinode-containers.yaml +++ b/ci/environments/multinode-containers.yaml @@ -1,16 +1,22 @@ -# NOTE: This is an environment specific for containers upgrade -# CI. Mainly we deploy non-pacemakerized overcloud, as at the time -# being containerization of services managed by pacemaker is not -# complete, so we deploy and upgrade the non-HA services for now. - resource_registry: OS::TripleO::Controller::Net::SoftwareConfig: ../common/net-config-multinode-os-net-config.yaml OS::TripleO::Compute::Net::SoftwareConfig: ../common/net-config-multinode-os-net-config.yaml - + OS::TripleO::Services::RabbitMQ: ../../docker/services/pacemaker/rabbitmq.yaml + OS::TripleO::Services::HAproxy: ../../docker/services/pacemaker/haproxy.yaml + OS::TripleO::Services::Pacemaker: ../../puppet/services/pacemaker.yaml + OS::TripleO::Services::PacemakerRemote: ../../puppet/services/pacemaker_remote.yaml + OS::TripleO::Services::Clustercheck: ../../docker/services/pacemaker/clustercheck.yaml + OS::TripleO::Services::MySQL: ../../docker/services/pacemaker/database/mysql.yaml + # TODO(mandre) use the containerized service once we've reintroduced cinder + # OS::TripleO::Services::CinderVolume: ../../docker/services/pacemaker/cinder-volume.yaml + OS::TripleO::Services::CinderVolume: ../../puppet/services/pacemaker/cinder-volume.yaml + OS::TripleO::Services::Keepalived: OS::Heat::None + OS::TripleO::Tasks::ControllerPreConfig: OS::Heat::None + OS::TripleO::Tasks::ControllerPostConfig: OS::Heat::None + OS::TripleO::Tasks::ControllerPostPuppetRestart: ../../extraconfig/tasks/post_puppet_pacemaker_restart.yaml # Some infra instances don't pass the ping test but are otherwise working. # Since the OVB jobs also test this functionality we can shut it off here. OS::TripleO::AllNodes::Validation: ../common/all-nodes-validation-disabled.yaml - OS::TripleO::Services::NovaMigrationTarget: OS::Heat::None parameter_defaults: ControllerServices: @@ -50,9 +56,10 @@ parameter_defaults: - OS::TripleO::Services::ContainersLogrotateCrond - OS::TripleO::Services::Snmp - OS::TripleO::Services::Timezone - - OS::TripleO::Services::TripleoPackages - OS::TripleO::Services::NovaCompute - OS::TripleO::Services::NovaLibvirt + - OS::TripleO::Services::Horizon + - OS::TripleO::Services::TripleoFirewall - OS::TripleO::Services::NovaMigrationTarget - OS::TripleO::Services::Sshd - OS::TripleO::Services::Iscsid diff --git a/ci/environments/scenario001-multinode-containers.yaml b/ci/environments/scenario001-multinode-containers.yaml index df12bc59..1a48c942 100644 --- a/ci/environments/scenario001-multinode-containers.yaml +++ b/ci/environments/scenario001-multinode-containers.yaml @@ -1,18 +1,31 @@ -# NOTE: This is an environment specific for containers CI. Mainly we -# deploy non-pacemakerized overcloud. Once we are able to deploy and -# upgrade pacemakerized and containerized overcloud, we should remove -# this file and use normal CI multinode environments/scenarios. - resource_registry: OS::TripleO::Controller::Net::SoftwareConfig: ../common/net-config-multinode.yaml OS::TripleO::Compute::Net::SoftwareConfig: ../common/net-config-multinode.yaml - # TODO deploy ceph with ceph-ansible: https://review.openstack.org/#/c/465066/ OS::TripleO::Services::CephMon: ../../docker/services/ceph-ansible/ceph-mon.yaml OS::TripleO::Services::CephOSD: ../../docker/services/ceph-ansible/ceph-osd.yaml OS::TripleO::Services::CephClient: ../../docker/services/ceph-ansible/ceph-client.yaml OS::TripleO::Services::PankoApi: ../../docker/services/panko-api.yaml OS::TripleO::Services::Collectd: ../../docker/services/collectd.yaml + # TODO(mandre) fix the tacker service - https://bugs.launchpad.net/tripleo/+bug/1714270 + # OS::TripleO::Services::Tacker: ../../docker/services/tacker.yaml + OS::TripleO::Services::Tacker: ../../puppet/services/tacker.yaml OS::TripleO::Services::Congress: ../../docker/services/congress.yaml + OS::TripleO::Services::RabbitMQ: ../../docker/services/pacemaker/rabbitmq.yaml + OS::TripleO::Services::HAproxy: ../../docker/services/pacemaker/haproxy.yaml + OS::TripleO::Services::Pacemaker: ../../puppet/services/pacemaker.yaml + OS::TripleO::Services::PacemakerRemote: ../../puppet/services/pacemaker_remote.yaml + OS::TripleO::Services::Clustercheck: ../../docker/services/pacemaker/clustercheck.yaml + OS::TripleO::Services::Redis: ../../docker/services/pacemaker/database/redis.yaml + OS::TripleO::Services::MySQL: ../../docker/services/pacemaker/database/mysql.yaml + # TODO(mandre) use the containerized service once we've reintroduced cinder + # OS::TripleO::Services::CinderBackup: ../../docker/services/pacemaker/cinder-backup.yaml + # OS::TripleO::Services::CinderVolume: ../../docker/services/pacemaker/cinder-volume.yaml + OS::TripleO::Services::CinderBackup: ../../puppet/services/pacemaker/cinder-backup.yaml + OS::TripleO::Services::CinderVolume: ../../puppet/services/pacemaker/cinder-volume.yaml + OS::TripleO::Services::Keepalived: OS::Heat::None + OS::TripleO::Tasks::ControllerPreConfig: OS::Heat::None + OS::TripleO::Tasks::ControllerPostConfig: OS::Heat::None + OS::TripleO::Tasks::ControllerPostPuppetRestart: ../../extraconfig/tasks/post_puppet_pacemaker_restart.yaml # FIXME(mandre) fluentd container image missing from tripleomaster registry # https://bugs.launchpad.net/tripleo/+bug/1721723 # OS::TripleO::Services::FluentdClient: ../../docker/services/fluentd-client.yaml @@ -21,7 +34,6 @@ resource_registry: # Some infra instances don't pass the ping test but are otherwise working. # Since the OVB jobs also test this functionality we can shut it off here. OS::TripleO::AllNodes::Validation: ../common/all-nodes-validation-disabled.yaml - OS::TripleO::Services::NovaMigrationTarget: OS::Heat::None parameter_defaults: ControllerServices: @@ -82,6 +94,7 @@ parameter_defaults: - OS::TripleO::Services::CinderScheduler - OS::TripleO::Services::CinderVolume - OS::TripleO::Services::Collectd + - OS::TripleO::Services::Tacker - OS::TripleO::Services::Congress - OS::TripleO::Services::TripleoPackages - OS::TripleO::Services::TripleoFirewall diff --git a/ci/environments/scenario002-multinode-containers.yaml b/ci/environments/scenario002-multinode-containers.yaml index 534f8294..79419086 100644 --- a/ci/environments/scenario002-multinode-containers.yaml +++ b/ci/environments/scenario002-multinode-containers.yaml @@ -1,18 +1,28 @@ -# NOTE: This is an environment specific for containers CI. Mainly we -# deploy non-pacemakerized overcloud. Once we are able to deploy and -# upgrade pacemakerized and containerized overcloud, we should remove -# this file and use normal CI multinode environments/scenarios. - resource_registry: OS::TripleO::Controller::Net::SoftwareConfig: ../common/net-config-multinode.yaml OS::TripleO::Compute::Net::SoftwareConfig: ../common/net-config-multinode.yaml OS::TripleO::Services::BarbicanApi: ../../docker/services/barbican-api.yaml OS::TripleO::Services::Zaqar: ../../docker/services/zaqar.yaml OS::TripleO::Services::Ec2Api: ../../docker/services/ec2-api.yaml + OS::TripleO::Services::RabbitMQ: ../../docker/services/pacemaker/rabbitmq.yaml + OS::TripleO::Services::Redis: ../../docker/services/pacemaker/database/redis.yaml + OS::TripleO::Services::HAproxy: ../../docker/services/pacemaker/haproxy.yaml + OS::TripleO::Services::Pacemaker: ../../puppet/services/pacemaker.yaml + OS::TripleO::Services::PacemakerRemote: ../../puppet/services/pacemaker_remote.yaml + OS::TripleO::Services::Clustercheck: ../../docker/services/pacemaker/clustercheck.yaml + OS::TripleO::Services::MySQL: ../../docker/services/pacemaker/database/mysql.yaml + # TODO(mandre) use the containerized service once we've reintroduced cinder + # OS::TripleO::Services::CinderBackup: ../../docker/services/pacemaker/cinder-backup.yaml + # OS::TripleO::Services::CinderVolume: ../../docker/services/pacemaker/cinder-volume.yaml + OS::TripleO::Services::CinderBackup: ../../puppet/services/pacemaker/cinder-backup.yaml + OS::TripleO::Services::CinderVolume: ../../puppet/services/pacemaker/cinder-volume.yaml + OS::TripleO::Services::Keepalived: OS::Heat::None + OS::TripleO::Tasks::ControllerPreConfig: OS::Heat::None + OS::TripleO::Tasks::ControllerPostConfig: OS::Heat::None + OS::TripleO::Tasks::ControllerPostPuppetRestart: ../../extraconfig/tasks/post_puppet_pacemaker_restart.yaml # Some infra instances don't pass the ping test but are otherwise working. # Since the OVB jobs also test this functionality we can shut it off here. OS::TripleO::AllNodes::Validation: ../common/all-nodes-validation-disabled.yaml - OS::TripleO::Services::NovaMigrationTarget: OS::Heat::None parameter_defaults: ControllerServices: @@ -63,6 +73,18 @@ parameter_defaults: - OS::TripleO::Services::TripleoFirewall - OS::TripleO::Services::Sshd - OS::TripleO::Services::Iscsid + - OS::TripleO::Services::Redis + - OS::TripleO::Services::AodhApi + - OS::TripleO::Services::AodhEvaluator + - OS::TripleO::Services::AodhNotifier + - OS::TripleO::Services::AodhListener + - OS::TripleO::Services::CeilometerAgentCentral + - OS::TripleO::Services::CeilometerAgentIpmi + - OS::TripleO::Services::CeilometerAgentNotification + - OS::TripleO::Services::GnocchiApi + - OS::TripleO::Services::GnocchiMetricd + - OS::TripleO::Services::GnocchiStatsd + - OS::TripleO::Services::PankoApi ControllerExtraConfig: nova::compute::libvirt::services::libvirt_virt_type: qemu nova::compute::libvirt::libvirt_virt_type: qemu diff --git a/ci/environments/scenario003-multinode-containers.yaml b/ci/environments/scenario003-multinode-containers.yaml index 65fa6a65..66ced0d3 100644 --- a/ci/environments/scenario003-multinode-containers.yaml +++ b/ci/environments/scenario003-multinode-containers.yaml @@ -1,8 +1,3 @@ -# NOTE: This is an environment specific for containers CI. Mainly we -# deploy non-pacemakerized overcloud. Once we are able to deploy and -# upgrade pacemakerized and containerized overcloud, we should remove -# this file and use normal CI multinode environments/scenarios. - resource_registry: OS::TripleO::Controller::Net::SoftwareConfig: ../common/net-config-multinode.yaml OS::TripleO::Compute::Net::SoftwareConfig: ../common/net-config-multinode.yaml @@ -11,10 +6,19 @@ resource_registry: OS::TripleO::Services::MistralApi: ../../docker/services/mistral-api.yaml OS::TripleO::Services::MistralEngine: ../../docker/services/mistral-engine.yaml OS::TripleO::Services::MistralExecutor: ../../docker/services/mistral-executor.yaml + OS::TripleO::Services::RabbitMQ: ../../docker/services/pacemaker/rabbitmq.yaml + OS::TripleO::Services::HAproxy: ../../docker/services/pacemaker/haproxy.yaml + OS::TripleO::Services::Pacemaker: ../../puppet/services/pacemaker.yaml + OS::TripleO::Services::PacemakerRemote: ../../puppet/services/pacemaker_remote.yaml + OS::TripleO::Services::Clustercheck: ../../docker/services/pacemaker/clustercheck.yaml + OS::TripleO::Services::MySQL: ../../docker/services/pacemaker/database/mysql.yaml + OS::TripleO::Services::Keepalived: OS::Heat::None + OS::TripleO::Tasks::ControllerPreConfig: OS::Heat::None + OS::TripleO::Tasks::ControllerPostConfig: OS::Heat::None + OS::TripleO::Tasks::ControllerPostPuppetRestart: ../../extraconfig/tasks/post_puppet_pacemaker_restart.yaml # Some infra instances don't pass the ping test but are otherwise working. # Since the OVB jobs also test this functionality we can shut it off here. OS::TripleO::AllNodes::Validation: ../common/all-nodes-validation-disabled.yaml - OS::TripleO::Services::NovaMigrationTarget: OS::Heat::None parameter_defaults: ControllerServices: @@ -49,6 +53,7 @@ parameter_defaults: - OS::TripleO::Services::Snmp - OS::TripleO::Services::Timezone - OS::TripleO::Services::NovaCompute + - OS::TripleO::Services::NovaMigrationTarget - OS::TripleO::Services::NovaLibvirt - OS::TripleO::Services::SaharaApi - OS::TripleO::Services::SaharaEngine -- cgit 1.2.3-korg