fb748ba307
This aligns the docker based services with the new composable upgrades architecture we landed for ocata, and does a first-pass adding upgrade_tasks for the services (these may change, atm we only disable the service on the host). To run the upgrade workflow you basically do two steps: openstack overcloud deploy --templates \ -e environments/major-upgrade-composable-steps-docker.yaml This will run the ansible upgrade steps we define via upgrade_tasks then run the normal docker PostDeploySteps to bring up the containers. For the puppet workflow there's then an operator driven step where compute nodes (and potentially storage nodes) are upgrades in batches and finally you do: openstack overcloud deploy --templates \ -e environments/major-upgrade-converge-docker.yaml In the puppet case this re-applies puppet to unpin the nova RPC API so I guess it'll restart the nova containers this affects but otherwise will be a no-op (we also disable the ansible steps at this point. Depends-On: I9057d47eea15c8ba92ca34717b6b5965d4425ab1 Change-Id: Ia50169819cb959025866348b11337728f8ed5c9e
262 lines
14 KiB
YAML
262 lines
14 KiB
YAML
resource_registry:
|
|
|
|
OS::TripleO::SoftwareDeployment: OS::Heat::StructuredDeployment
|
|
OS::TripleO::PostDeploySteps: puppet/post.yaml
|
|
OS::TripleO::PostUpgradeSteps: puppet/post-upgrade.yaml
|
|
OS::TripleO::AllNodes::SoftwareConfig: puppet/all-nodes-config.yaml
|
|
OS::TripleO::Hosts::SoftwareConfig: hosts-config.yaml
|
|
OS::TripleO::DefaultPasswords: default_passwords.yaml
|
|
|
|
# Tasks (for internal TripleO usage)
|
|
OS::TripleO::Tasks::UpdateWorkflow: OS::Heat::None
|
|
OS::TripleO::Tasks::PackageUpdate: extraconfig/tasks/yum_update.yaml
|
|
|
|
OS::TripleO::Tasks::SwiftRingDeploy: extraconfig/tasks/swift-ring-deploy.yaml
|
|
OS::TripleO::Tasks::SwiftRingUpdate: extraconfig/tasks/swift-ring-update.yaml
|
|
|
|
{% for role in roles %}
|
|
OS::TripleO::{{role.name}}::PreNetworkConfig: OS::Heat::None
|
|
OS::TripleO::{{role.name}}PostDeploySteps: puppet/post.yaml
|
|
OS::TripleO::{{role.name}}: puppet/{{role.name.lower()}}-role.yaml
|
|
OS::TripleO::{{role.name}}Config: puppet/{{role.name.lower()}}-config.yaml
|
|
OS::TripleO::Tasks::{{role.name}}PreConfig: OS::Heat::None
|
|
OS::TripleO::Tasks::{{role.name}}PostConfig: OS::Heat::None
|
|
OS::TripleO::{{role.name}}ExtraConfigPre: puppet/extraconfig/pre_deploy/default.yaml
|
|
# Port assignments for the {{role.name}} role
|
|
# Note we have to special-case ObjectStorage for backwards compatibility
|
|
{% if role.name != 'ObjectStorage' %}
|
|
OS::TripleO::{{role.name}}::Ports::ExternalPort: network/ports/noop.yaml
|
|
OS::TripleO::{{role.name}}::Ports::InternalApiPort: network/ports/noop.yaml
|
|
OS::TripleO::{{role.name}}::Ports::StoragePort: network/ports/noop.yaml
|
|
OS::TripleO::{{role.name}}::Ports::StorageMgmtPort: network/ports/noop.yaml
|
|
OS::TripleO::{{role.name}}::Ports::TenantPort: network/ports/noop.yaml
|
|
OS::TripleO::{{role.name}}::Ports::ManagementPort: network/ports/noop.yaml
|
|
{% else %}
|
|
OS::TripleO::SwiftStorage::Ports::ExternalPort: network/ports/noop.yaml
|
|
OS::TripleO::SwiftStorage::Ports::InternalApiPort: network/ports/noop.yaml
|
|
OS::TripleO::SwiftStorage::Ports::StoragePort: network/ports/noop.yaml
|
|
OS::TripleO::SwiftStorage::Ports::StorageMgmtPort: network/ports/noop.yaml
|
|
OS::TripleO::SwiftStorage::Ports::TenantPort: network/ports/noop.yaml
|
|
OS::TripleO::SwiftStorage::Ports::ManagementPort: network/ports/noop.yaml
|
|
{% endif %}
|
|
OS::TripleO::{{role.name}}::Net::SoftwareConfig: net-config-noop.yaml
|
|
{% endfor %}
|
|
|
|
# This resource registry entry will override the one generated by default
|
|
# in the jinja loop
|
|
OS::TripleO::Controller::Net::SoftwareConfig: net-config-bridge.yaml
|
|
|
|
OS::TripleO::ServiceServerMetadataHook: OS::Heat::None
|
|
|
|
OS::TripleO::Server: OS::Nova::Server
|
|
|
|
# This creates the "heat-admin" user for all OS images by default
|
|
# To disable, replace with firstboot/userdata_default.yaml
|
|
OS::TripleO::NodeAdminUserData: firstboot/userdata_heat_admin.yaml
|
|
|
|
# Hooks for operator extra config
|
|
# NodeUserData == Cloud-init additional user-data, e.g cloud-config
|
|
# role::NodeUserData == Role specific cloud-init additional user-data
|
|
# ControllerExtraConfigPre == Controller configuration pre service deployment
|
|
# NodeExtraConfig == All nodes configuration pre service deployment
|
|
# NodeExtraConfigPost == All nodes configuration post service deployment
|
|
OS::TripleO::NodeUserData: firstboot/userdata_default.yaml
|
|
{% for role in roles %}
|
|
OS::TripleO::{{role.name}}::NodeUserData: firstboot/userdata_default.yaml
|
|
{% endfor %}
|
|
OS::TripleO::NodeTLSCAData: OS::Heat::None
|
|
OS::TripleO::NodeTLSData: OS::Heat::None
|
|
OS::TripleO::NodeExtraConfig: puppet/extraconfig/pre_deploy/default.yaml
|
|
OS::TripleO::NodeExtraConfigPost: extraconfig/post_deploy/default.yaml
|
|
|
|
{% for role in roles %}
|
|
OS::TripleO::Tasks::{{role.name}}PrePuppet: OS::Heat::None
|
|
OS::TripleO::Tasks::{{role.name}}PostPuppet: OS::Heat::None
|
|
{% endfor %}
|
|
|
|
# "AllNodes" Extra cluster config, runs on all nodes prior to the post_deploy
|
|
# phase, e.g when puppet is applied, but after the pre_deploy phase. Useful when
|
|
# configuration with knowledge of all nodes in the cluster is required vs single
|
|
# node configuration in the pre_deploy step.
|
|
# See extraconfig/all_nodes/* for examples
|
|
OS::TripleO::AllNodesExtraConfig: OS::Heat::None
|
|
|
|
# TripleO overcloud networks
|
|
OS::TripleO::Network: network/networks.yaml
|
|
|
|
OS::TripleO::Network::External: OS::Heat::None
|
|
OS::TripleO::Network::InternalApi: OS::Heat::None
|
|
OS::TripleO::Network::StorageMgmt: OS::Heat::None
|
|
OS::TripleO::Network::Storage: OS::Heat::None
|
|
OS::TripleO::Network::Tenant: OS::Heat::None
|
|
OS::TripleO::Network::Management: OS::Heat::None
|
|
|
|
OS::TripleO::Network::ExtraConfig: OS::Heat::None
|
|
|
|
OS::TripleO::Network::Ports::NetVipMap: network/ports/net_ip_map.yaml
|
|
OS::TripleO::Network::Ports::NetIpMap: network/ports/net_ip_map.yaml
|
|
OS::TripleO::Network::Ports::NetIpListMap: network/ports/net_ip_list_map.yaml
|
|
|
|
# Port assignments for the VIPs
|
|
OS::TripleO::Network::Ports::ExternalVipPort: network/ports/noop.yaml
|
|
OS::TripleO::Network::Ports::InternalApiVipPort: network/ports/noop.yaml
|
|
OS::TripleO::Network::Ports::StorageVipPort: network/ports/noop.yaml
|
|
OS::TripleO::Network::Ports::StorageMgmtVipPort: network/ports/noop.yaml
|
|
OS::TripleO::Network::Ports::RedisVipPort: network/ports/ctlplane_vip.yaml
|
|
OS::TripleO::Network::Ports::ControlPlaneVipPort: OS::Neutron::Port
|
|
|
|
# Service to network Mappings
|
|
OS::TripleO::ServiceNetMap: network/service_net_map.yaml
|
|
|
|
# Service Endpoint Mappings
|
|
OS::TripleO::EndpointMap: network/endpoints/endpoint_map.yaml
|
|
|
|
# validation resources
|
|
OS::TripleO::AllNodes::Validation: all-nodes-validation.yaml
|
|
|
|
# Upgrade resources
|
|
OS::TripleO::UpgradeConfig: puppet/upgrade_config.yaml
|
|
|
|
# services
|
|
OS::TripleO::Services: puppet/services/services.yaml
|
|
OS::TripleO::Services::Apache: puppet/services/apache.yaml
|
|
OS::TripleO::Services::ApacheTLS: OS::Heat::None
|
|
OS::TripleO::Services::CACerts: puppet/services/ca-certs.yaml
|
|
OS::TripleO::Services::CephMds: OS::Heat::None
|
|
OS::TripleO::Services::CephMon: OS::Heat::None
|
|
OS::TripleO::Services::CephRbdMirror: OS::Heat::None
|
|
OS::TripleO::Services::CephRgw: OS::Heat::None
|
|
OS::TripleO::Services::CephOSD: OS::Heat::None
|
|
OS::TripleO::Services::CephClient: OS::Heat::None
|
|
OS::TripleO::Services::CephExternal: OS::Heat::None
|
|
OS::TripleO::Services::CinderApi: puppet/services/cinder-api.yaml
|
|
OS::TripleO::Services::CinderBackup: OS::Heat::None
|
|
OS::TripleO::Services::CinderScheduler: puppet/services/cinder-scheduler.yaml
|
|
OS::TripleO::Services::CinderVolume: puppet/services/cinder-volume.yaml
|
|
OS::TripleO::Services::BlockStorageCinderVolume: puppet/services/cinder-volume.yaml
|
|
OS::TripleO::Services::Congress: OS::Heat::None
|
|
OS::TripleO::Services::Keystone: puppet/services/keystone.yaml
|
|
OS::TripleO::Services::GlanceApi: puppet/services/glance-api.yaml
|
|
OS::TripleO::Services::GlanceRegistry: puppet/services/disabled/glance-registry.yaml
|
|
OS::TripleO::Services::HeatApi: puppet/services/heat-api.yaml
|
|
OS::TripleO::Services::HeatApiCfn: puppet/services/heat-api-cfn.yaml
|
|
OS::TripleO::Services::HeatApiCloudwatch: puppet/services/heat-api-cloudwatch.yaml
|
|
OS::TripleO::Services::HeatEngine: puppet/services/heat-engine.yaml
|
|
OS::TripleO::Services::Kernel: puppet/services/kernel.yaml
|
|
OS::TripleO::Services::MySQL: puppet/services/database/mysql.yaml
|
|
OS::TripleO::Services::MySQLTLS: OS::Heat::None
|
|
OS::TripleO::Services::NeutronDhcpAgent: puppet/services/neutron-dhcp.yaml
|
|
OS::TripleO::Services::NeutronL3Agent: puppet/services/neutron-l3.yaml
|
|
OS::TripleO::Services::NeutronMetadataAgent: puppet/services/neutron-metadata.yaml
|
|
# FIXME(shardy) the duplicate NeutronServer line can be removed when we've updated
|
|
# the multinode job ControllerServices after this patch merges
|
|
OS::TripleO::Services::NeutronServer: puppet/services/neutron-api.yaml
|
|
OS::TripleO::Services::NeutronApi: puppet/services/neutron-api.yaml
|
|
OS::TripleO::Services::NeutronCorePlugin: puppet/services/neutron-plugin-ml2.yaml
|
|
# can be the same as NeutronCorePlugin but some vendors install different
|
|
# things where VMs run
|
|
OS::TripleO::Services::ComputeNeutronCorePlugin: puppet/services/neutron-plugin-ml2.yaml
|
|
# Neutron Core Plugin Vendors (these typically override NeutronCorePlugin)
|
|
OS::TripleO::Services::NeutronCorePluginML2OVN: puppet/services/neutron-plugin-ml2-ovn.yaml
|
|
OS::TripleO::Services::NeutronCorePluginPlumgrid: puppet/services/neutron-plugin-plumgrid.yaml
|
|
OS::TripleO::Services::NeutronCorePluginNuage: puppet/services/neutron-plugin-nuage.yaml
|
|
OS::TripleO::Services::OVNDBs: OS::Heat::None
|
|
|
|
OS::TripleO::Services::NeutronCorePluginMidonet: puppet/services/neutron-midonet.yaml
|
|
OS::TripleO::Services::NeutronOvsAgent: puppet/services/neutron-ovs-agent.yaml
|
|
OS::TripleO::Services::ComputeNeutronOvsAgent: puppet/services/neutron-ovs-agent.yaml
|
|
OS::TripleO::Services::Pacemaker: OS::Heat::None
|
|
OS::TripleO::Services::PacemakerRemote: OS::Heat::None
|
|
OS::TripleO::Services::NeutronSriovAgent: OS::Heat::None
|
|
OS::TripleO::Services::RabbitMQ: puppet/services/rabbitmq.yaml
|
|
OS::TripleO::Services::HAproxy: puppet/services/haproxy.yaml
|
|
OS::TripleO::Services::HAProxyPublicTLS: OS::Heat::None
|
|
OS::TripleO::Services::HAProxyInternalTLS: OS::Heat::None
|
|
OS::TripleO::Services::Keepalived: puppet/services/keepalived.yaml
|
|
OS::TripleO::Services::Memcached: puppet/services/memcached.yaml
|
|
OS::TripleO::Services::SaharaApi: OS::Heat::None
|
|
OS::TripleO::Services::SaharaEngine: OS::Heat::None
|
|
OS::TripleO::Services::Sshd: OS::Heat::None
|
|
OS::TripleO::Services::Redis: puppet/services/database/redis.yaml
|
|
OS::TripleO::Services::NovaConductor: puppet/services/nova-conductor.yaml
|
|
OS::TripleO::Services::MongoDb: puppet/services/database/mongodb.yaml
|
|
OS::TripleO::Services::NovaApi: puppet/services/nova-api.yaml
|
|
OS::TripleO::Services::NovaPlacement: puppet/services/nova-placement.yaml
|
|
OS::TripleO::Services::NovaMetadata: puppet/services/nova-metadata.yaml
|
|
OS::TripleO::Services::NovaScheduler: puppet/services/nova-scheduler.yaml
|
|
OS::TripleO::Services::NovaConsoleauth: puppet/services/nova-consoleauth.yaml
|
|
OS::TripleO::Services::NovaVncProxy: puppet/services/nova-vnc-proxy.yaml
|
|
OS::TripleO::Services::NovaCompute: puppet/services/nova-compute.yaml
|
|
OS::TripleO::Services::NovaLibvirt: puppet/services/nova-libvirt.yaml
|
|
OS::TripleO::Services::Ntp: puppet/services/time/ntp.yaml
|
|
OS::TripleO::Services::SwiftProxy: puppet/services/swift-proxy.yaml
|
|
OS::TripleO::Services::SwiftStorage: puppet/services/swift-storage.yaml
|
|
OS::TripleO::Services::SwiftRingBuilder: puppet/services/swift-ringbuilder.yaml
|
|
OS::TripleO::Services::Snmp: puppet/services/snmp.yaml
|
|
OS::TripleO::Services::Tacker: OS::Heat::None
|
|
OS::TripleO::Services::Timezone: puppet/services/time/timezone.yaml
|
|
OS::TripleO::Services::CeilometerApi: puppet/services/ceilometer-api.yaml
|
|
OS::TripleO::Services::CeilometerCollector: puppet/services/ceilometer-collector.yaml
|
|
OS::TripleO::Services::CeilometerExpirer: puppet/services/ceilometer-expirer.yaml
|
|
OS::TripleO::Services::CeilometerAgentCentral: puppet/services/ceilometer-agent-central.yaml
|
|
OS::TripleO::Services::CeilometerAgentNotification: puppet/services/ceilometer-agent-notification.yaml
|
|
OS::TripleO::Services::ComputeCeilometerAgent: puppet/services/ceilometer-agent-compute.yaml
|
|
OS::TripleO::Services::Horizon: puppet/services/horizon.yaml
|
|
#Gnocchi services
|
|
OS::TripleO::Services::GnocchiApi: puppet/services/gnocchi-api.yaml
|
|
OS::TripleO::Services::GnocchiMetricd: puppet/services/gnocchi-metricd.yaml
|
|
OS::TripleO::Services::GnocchiStatsd: puppet/services/gnocchi-statsd.yaml
|
|
# Services that are disabled by default (use relevant environment files):
|
|
OS::TripleO::Services::FluentdClient: OS::Heat::None
|
|
OS::TripleO::Services::Collectd: OS::Heat::None
|
|
OS::TripleO::LoggingConfiguration: puppet/services/logging/fluentd-config.yaml
|
|
OS::TripleO::Services::ManilaApi: OS::Heat::None
|
|
OS::TripleO::Services::ManilaScheduler: OS::Heat::None
|
|
OS::TripleO::Services::ManilaShare: OS::Heat::None
|
|
OS::TripleO::Services::ManilaBackendGeneric: OS::Heat::None
|
|
OS::TripleO::Services::ManilaBackendNetapp: OS::Heat::None
|
|
OS::TripleO::Services::ManilaBackendCephFs: OS::Heat::None
|
|
OS::TripleO::Services::ComputeNeutronL3Agent: OS::Heat::None
|
|
OS::TripleO::Services::ComputeNeutronMetadataAgent: OS::Heat::None
|
|
OS::TripleO::Services::BarbicanApi: OS::Heat::None
|
|
OS::TripleO::Services::AodhApi: puppet/services/aodh-api.yaml
|
|
OS::TripleO::Services::AodhEvaluator: puppet/services/aodh-evaluator.yaml
|
|
OS::TripleO::Services::AodhNotifier: puppet/services/aodh-notifier.yaml
|
|
OS::TripleO::Services::AodhListener: puppet/services/aodh-listener.yaml
|
|
OS::TripleO::Services::PankoApi: puppet/services/panko-api.yaml
|
|
OS::TripleO::Services::MistralEngine: OS::Heat::None
|
|
OS::TripleO::Services::MistralApi: OS::Heat::None
|
|
OS::TripleO::Services::MistralExecutor: OS::Heat::None
|
|
OS::TripleO::Services::IronicApi: OS::Heat::None
|
|
OS::TripleO::Services::IronicConductor: OS::Heat::None
|
|
OS::TripleO::Services::NovaIronic: OS::Heat::None
|
|
OS::TripleO::Services::TripleoPackages: puppet/services/tripleo-packages.yaml
|
|
OS::TripleO::Services::TripleoFirewall: puppet/services/tripleo-firewall.yaml
|
|
OS::TripleO::Services::OpenDaylightApi: OS::Heat::None
|
|
OS::TripleO::Services::OpenDaylightOvs: OS::Heat::None
|
|
OS::TripleO::Services::SensuClient: OS::Heat::None
|
|
OS::TripleO::Services::TLSProxyBase: OS::Heat::None
|
|
OS::TripleO::Services::Zaqar: OS::Heat::None
|
|
OS::TripleO::Services::NeutronML2FujitsuCfab: OS::Heat::None
|
|
OS::TripleO::Services::NeutronML2FujitsuFossw: OS::Heat::None
|
|
OS::TripleO::Services::CinderHPELeftHandISCSI: OS::Heat::None
|
|
OS::TripleO::Services::Etcd: OS::Heat::None
|
|
OS::TripleO::Services::Ec2Api: OS::Heat::None
|
|
OS::TripleO::Services::AuditD: OS::Heat::None
|
|
OS::TripleO::Services::OctaviaApi: OS::Heat::None
|
|
OS::TripleO::Services::OctaviaHealthManager: OS::Heat::None
|
|
OS::TripleO::Services::OctaviaHousekeeping: OS::Heat::None
|
|
OS::TripleO::Services::OctaviaWorker: OS::Heat::None
|
|
OS::TripleO::Services::MySQLClient: puppet/services/database/mysql-client.yaml
|
|
OS::TripleO::Services::Vpp: OS::Heat::None
|
|
OS::TripleO::Services::Docker: OS::Heat::None
|
|
|
|
parameter_defaults:
|
|
EnablePackageInstall: false
|
|
SoftwareConfigTransport: POLL_TEMP_URL
|
|
|
|
{% for role in roles %}
|
|
# Parameters generated for {{role.name}} Role
|
|
{{role.name}}Services: {{role.ServicesDefault|default([])}}
|
|
{% endfor %}
|