proxmox-deploy 是一个基于命令行的Proxmox部署工具
项目描述
使用此工具部署来自各种Linux发行版的启用了cloud-init的镜像到Proxmox。
Proxmox默认不支持启用了cloud-init的镜像。可以手动从已安装的VM创建模板。然而,由于大多数主要Linux供应商都提供了可部署的镜像,为什么还要手动安装VM呢?
工作原理
cloud-init依赖于两个因素
发行版的最低基础安装,通常以raw或qcow2镜像的形式存在。我将其称为“云镜像”。
镜像中安装的cloud-init包。
cloud-init最初是为Amazon EC2和OpenStack开发的。这些平台对cloud-init有原生支持,并提供数据源,供cloud-init配置虚拟机使用。然而,即使平台本身没有对cloud-init的原生支持,也有少数替代数据源可供使用。
proxmox-deploy使用NoCloud数据源。对于这种方法,虚拟机必须将云镜像作为第一个磁盘,并将只读的vfat或iso9660文件系统作为第二个磁盘。在这第二个磁盘上,必须有user-data和meta-data两个文件。
proxmox-deploy会根据用户输入生成user-data和meta-data文件。proxmox-deploy还会负责创建Proxmox虚拟机,并将云镜像和cloud-init镜像上传到正确的数据存储。之后剩下的只是开启虚拟机。
安装方法
所有依赖项都可以使用pip安装。要全局安装,以root用户执行
# pip install proxmox-deploy
或者以虚拟环境(普通用户)安装
$ virtualenv env
$ . env/bin/activate
$ pip install proxmox-deploy
在使用或升级工具之前,请确保激活您的虚拟环境
$ . env/bin/activate
要稍后升级它
$ pip install --upgrade proxmox-deploy
使用方法
安装后,只需使用
$ proxmox-deploy --proxmox-host <hostname> --cloud-images-dir <images directory>
并回答交互式问题。
测试过的云镜像
我已经使用以下云镜像测试了proxmox-deploy
发行版 |
版本 |
状态 |
---|---|---|
Ubuntu |
带有-amd64-disk1.img的镜像可以工作。 |
|
Fedora Server |
qcow2镜像可以工作。 |
|
openSUSE |
-OpenStack-Guest.x86_64.qcow2镜像可以工作,前提是虚拟机至少有512 MB的RAM。最小磁盘大小为10 GB。然而,第一个网络接口卡(NIC)称为eth1,所以请确保选择eth1来配置。没有suse用户,以root用户登录。 |
|
CentOS |
CentOS 6镜像无法启动,挂起在“从硬盘启动”。 CentOS 7的-GenericCloud.qcow2.xz镜像可以工作。最小磁盘大小将是8G。 |
|
Debian |
qcow2和raw镜像都不工作。第一次启动会导致内核恐慌,随后的启动不会运行cloud-init,使虚拟机无法访问。 |
|
FreeBSD |
不工作,cloudbase-init-bsd不支持NoCloud数据源。 官方虚拟机镜像至少可以启动,但cloud-init不可用。它将以DHCP和默认用户/密码启动。 |
所有发行版都提供了一个名为发行版名称(ubuntu、fedora、centos、debian、freebsd)的默认用户,except openSUSE仅有一个root用户。
依赖项
Proxmox VE 4.1或更高版本
Python 2.7
proxmoxer作为Proxmox API客户端
openssh-wrapper用于与Proxmox API通信和执行命令。
Jinja2用于生成user-data和meta-data文件。
configobj用于读取配置文件。
pytz用于时区名称。
genisoimage (Linux) 或 mkisofs (FreeBSD) 命令。
请注意,我们需要通过SSH访问Proxmox服务器来执行各种任务。我们还通过SSH使用pvesh和pvesm命令分别与Proxmox API和数据存储进行接口交互。proxmox-deploy在登录时不会询问密码,因此必须预先配置适当的SSH代理和SSH密钥访问。
变更日志
0.4.0 |
|
0.3 |
|
0.2 |
|
0.1 |
|
许可证
proxmox-deploy 使用GPLv3许可证。
项目详情
下载文件
下载您平台的文件。如果您不确定选择哪一个,请了解更多关于安装包的信息。
源分布
构建分布
proxmox-deploy-0.4.0.tar.gz 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | e1a7884ca9b4825e4b94658e0fe612f21f8781eb2b92e34df10aa5e67afab2f8 |
|
MD5 | 63e3574f4a98639e0bf6d495cee80be3 |
|
BLAKE2b-256 | c441f4ca6341ddb8e08441cf28f03f92613aec18963535bf81834bcb235c2ab6 |
proxmox_deploy-0.4.0-py2-none-any.whl 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 4665a9a4842681799c8b9a31f8cd74f031aa29893da1bdcfbfbbea6c5d75fbac |
|
MD5 | 9fb44a7228c9bc2a0e77f77850340126 |
|
BLAKE2b-256 | c5ee41847dee4c94fbae8f86012d81eeb98cba954e56a1388b75c546c627331d |