Scale-up and scale-down are probably the most common operations done after the initial deployment. Let’s see how they are getting improved. This first episode is about scale-down precisely.
How it works now
Right now when an operator runs “openstack overcloud node delete” command, it’ll update the Heat stack to remove the resources associated to the node(s) that we delete. It can be problematic for some services like Nova, Neutron and the Subscription Manager, which needs to be teared down before the server is deleted.
The idea is to create an interface where we can run Ansible tasks which will be executed during the scale-down, before the nodes get deleted by Heat. The Ansible tasks will live near to the deployment / upgrade / … tasks that are in TripleO Heat Templates. Here is an example with Red Hat Subscription Management:
It involves 3 changes:
- tripleo-common: modify the scale workbook to run Ansible before node deletion
- TripleO Heat Templates: create the scale_tasks interface.
- python-tripleoclient: run the new task in the workbook.
- Getting reviews & feedback on the 3 patches
- Implement scale down tasks for Neutron, Nova and Ceph, waiting for this feature
- Looking at scale-up tasks
This demo shows a node being unsubscribed when the overcloud is scaled down.
This demo show a compute node being removed from the Overcloud.