跳转到主要内容

管理虚拟机过期和删除

项目描述

在Openstack云中管理虚拟机过期和自动删除。

这是一个非官方的Openstack项目,但遵循Openstack项目架构,包括Horizon插件和关联服务。

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 (92.7 KB 查看散列

上传时间

构建分发

os_vm_expire-0.9.12-py3-none-any.whl (85.9 KB 查看散列

上传时间 Python 3

os_vm_expire-0.9.12-py2-none-any.whl (85.9 KB 查看散列

上传时间 Python 2

由以下支持