跳转到主要内容

支持多个云提供商的统一成像接口。

项目描述

Chromogenic

PyPI version

为多个云提供商提供统一成像接口。

Chromogenic特性

成像

  • 从Openstack实例创建快照
  • 从Openstack实例创建镜像
  • 从Eucalyptus实例创建镜像

导出

  • [~] 将云实例/镜像导出为双击启动 .ova (Virtualbox工具包)
  • [~] 将云实例/镜像导出为独立可启动镜像
  • 将云实例/镜像导出为VMWare的启动硬盘 (VMDK)
  • 将云实例/镜像导出为RAW或QCOW2

迁移

  • 将Eucalyptus镜像迁移到Openstack
  • 在Openstack提供商之间迁移镜像
  • 在Eucalyptus提供商之间迁移镜像
  • 将AWS镜像迁移到Openstack
  • 将AWS镜像迁移到Eucalyptus

清理

  • 删除由'Atmosphere'部署创建的特定数据

  • 删除用户主目录和非必要文件

  • 清空日志(不更改权限或删除文件)

  • - 功能完整

  • [~] - 功能正在开发中

  • - 未来版本中解决的不支持功能

为什么使用chromogenic?

云计算是IT行业的“下一件大事”。无论您在自己的服务器上使用私有云(如Eucalyptus、Openstack)还是运行AWS上的实例,理念都是一样的。您点击一个按钮,等待几分钟(或更少!)然后, voila,一台电脑就准备好了并等待。您刚才在实例上执行了“rm -rf /”命令吗?没问题,只需关闭它并启动一个新的实例,再从头开始。

云计算的另一个巨大好处是快照/镜像,它允许您将实例保存到当前状态,并将其作为可以启动的新镜像提供。然而,在任何云服务提供商上进行镜像化可能是一个多步骤、耗时的过程。

Chromogenic简化了所有复杂性,并允许您运行一个命令,该命令将在幕后完成所有繁重的工作。

创建镜像

from chromogenic.drivers.openstack import ImageManager

credentials = {
    'username': '',
    'tenant_name': '',
    'password': '',
    'auth_url':'',
    'region_name':''
}
manager = ImageManager(**credentials)

manager.create_image('75fdfca4-d49d-4b2d-b919-a3297bc6d7ae', 'my new name')

以下是幕后发生的事情

创建镜像时会发生什么?

  • 镜像被清理(请参阅service/imaging/clean.py)
    • 用户数据被删除
    • 特定于环境的用户数据被删除
    • 日志文件、历史文件和一次性使用文件被删除
    • 注意:这些是许多系统调用,大多数调用是行内sed替换,以及其他系统级调用(truncate -s0 <File> ,rm <File>)
  • 支持从Xen -> KVM的转换
    • 镜像从“基于xen”的镜像转换为“基于kvm”的镜像
    • 移除Xen特定模块,并添加相应的KVM特定模块
    • ramdisk包括在OStack上启动镜像所需的virtio模块

假设

  • 所有命令都应该以root身份运行(因为chroot和mount命令)

  • 您应该至少有创建镜像大小两倍(2倍)的空闲空间,因为tar、压缩和分割文件的过程。

  • 某些命令必须在“chroot监狱”内运行(有关更多信息,请参阅chroot),这是chroot监狱的外观

  mount -t proc /proc /mnt/proc/
  mount -t sysfs /sys /mnt/sys/
  mount -o bind /dev /mnt/dev/
  <chroot.. Commands run (Installing packages, rebuilding the ramdisk).. Exit>
  umount /mnt/proc/
  umount /mnt/sys/
  umount /mnt/dev/

安装方法

pip install git+git://github.com/cyverse/chromogenic#egg=chromogenic

许可证

Apache软件许可协议

项目详情


下载文件

下载您平台上的文件。如果您不确定选择哪个,请了解更多关于安装包的信息。

源分发

chromogenic-0.5.4.tar.gz (45.3 kB 查看哈希值)

上传时间

构建分发

chromogenic-0.5.4-py2-none-any.whl (49.9 kB 查看哈希值)

上传时间 Python 2

支持者