天天看点

openstack环境资源自动清理脚本,包括VM虚拟机、Container容器、network网络、router路由、浮动IP等资源删除恢复初始环境(附源码)

openstack环境资源自动清理脚本,包括VM虚拟机、Container容器、network网络、router路由、浮动IP等资源删除恢复初始环境。本次主要设计了两个脚本,一是针对openstack环境资源的清理,二是针对自主开发业务端资源的清理。

背景:

目前云计算在各个比较大一点的公司开始广泛使用,其中尤为代表的IaaS使用的技术是openstack,不管是针对虚拟机资源的分配,还是针对业务系统的弹性伸缩,都是围绕三个具体的资源进行分配,即 虚拟机、容器、裸机。

一般情况下,在公司项目中使用多台物理机搭建了一套openstack环境之后,不会直接在自带的dashboard上进行操作或者实现业务,而是利用相关组件的API结合具体的业务,实现一套自己的业务或者资源管理系统,本次也是基于这个项目实际开发的背景,实现一个自动化环境清理的脚本,方便应用于开发环境、测试环境、演示环境等等相关场景。

分析:

首先,openstack中组件的调用都是使用的异步方式,例如删除一台虚拟机,不会立即删除,而是根据一定的策略进行延迟删除,如果要彻底删除虚拟机使用的相关资源,比如网络、浮动IP、swift存储、项目信息、用户信息等等,需要操作的地方比较多,而且比较繁琐。把需要删除的资源整理成脚本,每次环境使用过一段时间之后,想要恢复开始的状态,只需要运行一下就可以把使用过程中创建的资源进行清理删除。

根据业务端数据进行提取openstack资源的相关信息,比如用户信息、项目信息等等,如果没有业务端可以跳过这一步,直接使用下面的脚本进行openstack环境资源清理。

继续阅读