From 5edfd64edea87f5fb40c799b8ebd0e92004bcad3 Mon Sep 17 00:00:00 2001 From: Dmitry Tantsur Date: Wed, 17 Jan 2018 17:50:13 +0100 Subject: [PATCH] Enable automatic migration for classic drivers to hardware types The new online data migration in ironic will migrate nodes from classic drivers to hardware types. However, it will skip nodes with one or more target hardware interfaces not enabled. In the undercloud we don't enable certain implementations that we do not support (e.g. "agent" RAID and "ipmitool-shellinabox" console for the "ipmi" hardware type). To allow the migration to work, set a special option to reset these interfaces to their no-op equivalents ("no-raid", "no-console", etc). Change-Id: Iba1e82d47c0e22613b06b99f0a9d0f4b3082bbe7 Related-Bug: #1690185 (cherry picked from commit 3756d3d60f50c8f84639bea0410c014e5c1cb307) --- .../puppet-stack-config.yaml.template | 2 ++ .../migrate-to-hardware-types-df0b6a3bd0f818fc.yaml | 9 +++++++++ 2 files changed, 11 insertions(+) create mode 100644 releasenotes/notes/migrate-to-hardware-types-df0b6a3bd0f818fc.yaml diff --git a/elements/puppet-stack-config/puppet-stack-config.yaml.template b/elements/puppet-stack-config/puppet-stack-config.yaml.template index 0b5600406..746c10198 100644 --- a/elements/puppet-stack-config/puppet-stack-config.yaml.template +++ b/elements/puppet-stack-config/puppet-stack-config.yaml.template @@ -477,6 +477,8 @@ nova::db::sync_api::db_sync_timeout: 900 ironic::debug: "%{hiera('debug')}" ironic::my_ip: {{LOCAL_IP}} ironic::db_online_data_migrations: true +# TODO(dtantsur): remove when support for classic drivers is removed +ironic::db::online_data_migrations::migration_params: "--option migrate_to_hardware_types.reset_unsupported_interfaces=true" ironic::rpc_response_timeout: 600 ironic::api::authtoken::password: {{UNDERCLOUD_IRONIC_PASSWORD}} ironic::api::authtoken::auth_uri: "%{hiera('keystone_auth_uri')}" diff --git a/releasenotes/notes/migrate-to-hardware-types-df0b6a3bd0f818fc.yaml b/releasenotes/notes/migrate-to-hardware-types-df0b6a3bd0f818fc.yaml new file mode 100644 index 000000000..69ef19eff --- /dev/null +++ b/releasenotes/notes/migrate-to-hardware-types-df0b6a3bd0f818fc.yaml @@ -0,0 +1,9 @@ +upgrade: + - | + During an upgrade to this release, a migration of all nodes from classic + drivers to hardware types will be attempted. For some nodes it may result + in non-supported optional interfaces (like "agent" RAID or shellinabox + console) to be reset to their no-op implementations (like "no-raid" RAID or + "no-console" console). Nodes that cannot be upgraded will be skipped. + Manual upgrade will be required, since the classic drivers may be removed + in the Rocky release.