管理虚拟机过期和删除
项目描述
在Openstack云中管理虚拟机过期和自动删除。
这是一个非官方的Openstack项目,但遵循Openstack项目架构,包括Horizon插件和关联服务。
免费软件:Apache许可证
Horizon插件: https://github.com/genouest/os-vm-expire-horizon-plugin
OSC插件(Openstack客户端): https://github.com/genouest/os-vm-expire-osc-plugin
Openstack VmExpiration管理服务为虚拟机添加过期时间。过期后,虚拟机将被删除。用户可以通过API或Horizon扩展虚拟机的生命周期。过期扩展不受限制,用户可以始终扩展虚拟机,但只能扩展到配置的持续时间。用户不能超过配置的持续时间进行扩展。示例
日期A:虚拟机创建,虚拟机将在A + N天后过期
在过期前几天,用户会收到通知
用户将虚拟机扩展到今天 + M天(M基于配置,用户不能指定它)
如果用户再次尝试扩展虚拟机,它将再次扩展到今天 + M天
需求
需要启用Nova通知以获取虚拟机开始和结束消息。
该软件已在Pike和Otaca上以及单域和多域配置中进行了测试。它应该从Newton开始工作。
功能
在虚拟机创建时,添加过期日期
在即将到期时,向用户发送电子邮件
Horizon插件以查看虚拟机过期和扩展过期时间
在到期日期,删除虚拟机并向用户发送电子邮件
CLI命令用于扩展虚拟机或从虚拟机中移除到期时间(仅管理员可用)
配置
配置文件预期位于目录 /etc/os-vm-expire/
osvmexpire.conf
policy.json
osvmexpire-api-paste.ini(用于wsgi服务器)
主配置文件可以通过环境变量 OSVMEXPIRE_CONFIG 指定。
组件
启动API服务器
开发环境(端口8000)
export OSVMEXPIRE_PORT=9411 # optional
osvmexpire-wsgi-api
生产环境
uwsgi --master --die-on-term --emperor /etc/os-vm-expire/vassals --logto /var/log/os-vm-expire/osvmexpire-api.log --stats localhost:9314
启动工作进程
在实例创建和删除时管理nova通知,以创建/删除到期对象。
osvmexpire-worker --config-file /etc/os-vm-expire/osvmexpire.conf
启动清理器
检查虚拟机的到期时间,并在到期前发送通知,以便用户在必要时扩展虚拟机。一旦到期(如果用户可以收到到期通知),则删除虚拟机。
osvmexpire-cleaner --config-file /etc/os-vm-expire/osvmexpire.conf
CLI使用
这些命令行工具需要访问配置文件,因此是专门用于管理工具,而不是面向最终用户的。
osvmexpire-manage vm list
osvmexpire-manage vm extend -h
osvmexpire-manage vm remove -h
致谢
代码主要受Barbican Openstack项目的启发(代码库来自),代码更新以管理不同的对象。该项目采用相同的许可证并保留了原始文件头。
该项目由法国GenOuest核心设施,IRISA开发。
项目详情
下载文件
下载适用于您平台的文件。如果您不确定选择哪个,请了解更多关于安装包的信息。
源分发
构建分发
os-vm-expire-0.9.12.tar.gz的散列
算法 | 散列摘要 | |
---|---|---|
SHA256 | 4a31c375a03db9b399c72420c4ce36fc23b009428a508103bf8e2eeb3d52e0f4 |
|
MD5 | 5d807d7124ff0cce862d33d90e95781b |
|
BLAKE2b-256 | 291a756fddb2c1a5e76cdb4e82283373048ee8116773f3de49bc68f2e471db07 |
os_vm_expire-0.9.12-py3-none-any.whl的散列
算法 | 散列摘要 | |
---|---|---|
SHA256 | 702847b6e392f2d74d57a8b411a987b9b705860463a393a8f8908bb5848dfc66 |
|
MD5 | c5ec8954e71279df55dcf92a7964e917 |
|
BLAKE2b-256 | 1a6c584b76905f21050a1f6893747ed8653f0a0d6a70f5cb4d031d2d1d3a289a |
os_vm_expire-0.9.12-py2-none-any.whl的散列
算法 | 散列摘要 | |
---|---|---|
SHA256 | 6c8528c9bcf2601956a69fad7181d87c56cf04e1c310e3eb8e24a4e4ec7cd0ee |
|
MD5 | f9baf6e9d3f0818c1c191faea54e616d |
|
BLAKE2b-256 | a9c70d17d33164eb4731208de0c51e81da65b81cec512e6dfd70d5756ae1ee27 |