ae78e812d1
The new "migrate" mode for the DB sync utility changes DB contents as follows: - it changes vxlan networks to Geneve, including its allocation in order to avoid future collisions when creating new geneve networks - it removes settings from ports' vif_details that are no longer needed, such as hybrid plugging or bridge_name for the trunk bridges - it sets profile for subports - OVN doesn't use trunk_details but port profile to store data about trunk. Subports have tag and parent_name fileds. Previously, the vxlan to Geneve change was done via ansible role. The tasks in the role were replaced by the script therefore the role is removed. Signed-off-by: Jakub Libosvar <libosvar@redhat.com> Change-Id: I29a39108d9fddb30050ec63a1cdf6bba0400e136
120 lines
2.4 KiB
YAML
120 lines
2.4 KiB
YAML
# This is the playbook used by ovn-migration.sh.
|
|
|
|
#
|
|
# Pre migration and validation tasks will make sure that the initial cloud
|
|
# is functional, and will create resources which will be checked after
|
|
# migration.
|
|
#
|
|
|
|
- name: Pre migration and validation tasks
|
|
hosts: localhost
|
|
roles:
|
|
- pre-migration
|
|
tags:
|
|
- pre-migration
|
|
|
|
#
|
|
# This step is executed before migration, and will backup some config
|
|
# files related to containers before those get lost.
|
|
#
|
|
|
|
- name: Backup tripleo container config files on the nodes
|
|
hosts: ovn-controllers
|
|
roles:
|
|
- backup
|
|
tags:
|
|
- setup
|
|
|
|
|
|
- name: Stop ml2/ovs resources
|
|
hosts: ovn-controllers
|
|
roles:
|
|
- stop-agents
|
|
tags:
|
|
- migration
|
|
|
|
|
|
#
|
|
# TripleO / Director is executed to deploy ovn using "br-migration" for the
|
|
# dataplane, while br-int is left intact to avoid dataplane disruption.
|
|
#
|
|
|
|
- name: Set up OVN and configure it using tripleo
|
|
hosts: localhost
|
|
roles:
|
|
- tripleo-update
|
|
vars:
|
|
ovn_bridge: br-migration
|
|
tags:
|
|
- setup
|
|
become: false
|
|
|
|
#
|
|
# Once everything is migrated prepare everything by syncing the neutron DB
|
|
# into the OVN NB database, and then switching the dataplane to br-int
|
|
# letting ovn-controller take control, afterwards any remaining neutron
|
|
# resources, namespaces or processes which are not needed anymore are
|
|
# cleaned up.
|
|
#
|
|
|
|
- name: Do the DB sync and dataplane switch
|
|
hosts: ovn-controllers, ovn-dbs
|
|
roles:
|
|
- migration
|
|
vars:
|
|
ovn_bridge: br-int
|
|
tags:
|
|
- migration
|
|
|
|
#
|
|
# Verify that the initial resources are still reachable, remove them,
|
|
# and afterwards create new resources and repeat the connectivity tests.
|
|
#
|
|
|
|
- name: Post migration
|
|
hosts: localhost
|
|
roles:
|
|
- delete-neutron-resources
|
|
- post-migration
|
|
tags:
|
|
- post-migration
|
|
|
|
#
|
|
# Final step to make sure tripleo knows about OVNIntegrationBridge == br-int.
|
|
#
|
|
|
|
- name: Rerun the stack update to reset the OVNIntegrationBridge to br-int
|
|
hosts: localhost
|
|
roles:
|
|
- tripleo-update
|
|
vars:
|
|
ovn_bridge: br-int
|
|
tags:
|
|
- setup
|
|
become: false
|
|
|
|
#
|
|
# Final validation after tripleo update to br-int
|
|
#
|
|
|
|
- name: Final validation
|
|
hosts: localhost
|
|
vars:
|
|
validate_premigration_resources: false
|
|
roles:
|
|
- post-migration
|
|
tags:
|
|
- final-validation
|
|
|
|
|
|
#
|
|
# Announce that it's done and ready.
|
|
#
|
|
|
|
- hosts: localhost
|
|
tasks:
|
|
- name: Migration successful.
|
|
debug:
|
|
msg: Migration from ML2OVS to OVN is now complete.
|
|
|