在几个部分中部署测试vm
virt-lightning的Python项目详细描述
骑上闪电!
virt lightning可以快速部署一系列新的vm。它 同时准备库存文件!
这对于快速验证新的Ansible Playbook或大量环境中的角色非常方便。
示例:在一分钟内测试新env上的ansibe命令
简而言之:
echo"- distro: centos-7" > virt-lightning.yaml vl up vl ansible_inventory ansible all -m ping -i inventory
在下面的视频中,我们:
- 使用分发列表生成virt-lightning.yaml文件。
- 然后,我们基于此文件创建一个环境
- 一旦环境准备就绪,我们将生成一个ansible inventory文件
- 我们用它在所有主机上调用ansible的ping模块。
先决条件
debian
首先需要安装libvirt和guestfs:
sudo apt install -f libguestfs-tools libvirt-daemon libvirt-daemon-system python3 python3-libvirt python3-pip python3-urwid sudo systemctl start --now libvirtd
第二步是授予用户使用libvirt的能力:
sudo usermod -a -G kvm,libvirt,libvirt-qemu $USER
详细信息>Fedora-29
首先需要安装libvirt和guestfs:
sudo apt install -f libguestfs-tools libselinux-python libvirt python3 python3-libvirt python3-pip python3-urwid sudo systemctl start --now libvirtd
第二步是授予用户使用libvirt的能力:
sudo usermod -a -G qemu,libvirt $USER
详细信息>ubuntu-16.04
首先需要安装libvirt和guestfs:
sudo apt install -f libguestfs-tools libvirt-bin libvirt-daemon python3 python3-libvirt python3-pip python3-urwid sudo systemctl start --now libvirtd
第二步是授予用户使用libvirt的能力:
sudo usermod -a -G kvm,libvirtd $USER
详细信息>ubuntu-18.04
首先需要安装libvirt和guestfs:
sudo apt install -f libguestfs-tools libvirt-bin libvirt-daemon python3 python3-libvirt python3-pip python3-urwid sudo systemctl start --now libvirtd
第二步是授予用户使用libvirt的能力:
sudo usermod -a -G kvm,libvirt $USER
详细信息>ubuntu-18.10
首先需要安装libvirt和guestfs:
sudo apt install -f libguestfs-tools libvirt-daemon libvirt-daemon-system python3 python3-libvirt python3-pip python3-urwid sudo systemctl start --now libvirtd
第二步是授予用户使用libvirt的能力:
sudo usermod -a -G kvm,libvirt $USER
详细信息>安装
pip3 install --user --no-deps git+https://github.com/virt-lightning/virt-lightning
只有在ubuntu上才需要--no-deps
参数(请参见:https://github.com/pypa/pip/issues/4222)。
virt-lightning
将安装在~/.local/bin/中。如果
现在还不是这样。例如,如果您使用:
echo"export PATH=$PATH:~/.local/bin/" >> ~/.bashrc source ~/.bashrc
获取一些图像
在启动第一个vm之前,需要获取图像。为此, 你只需要这些脚本: https://github.com/virt-lightning/virt-lightning/tree/master/images
$ git clone https://github.com/virt-lightning/virt-lightning $ cd virt-lightning/images $ ./image centos-7 build $ ./image debian-9 build (…)
ubuntu需要使用sudo来构建或准备图像。
你也可以在嵌入cloud init后使用自己的图像,只需将它们复制到qcow2中 格式为/var/lib/virt lightning/pool/upstream/。把qemu的客户代理也包括进来也是个好主意, virt lightning使用它设置根密码,它还提供了一些其他好处。
操作
vl
是virt-lightning
的别名,您可以同时使用。在文件的其余部分
我们用最短的版本。
- vl发行版列表:列出可使用的发行版映像。它的输出与
vl up
兼容。您可以使用vl distro > virt-lightning.yaml
初始化新配置。 - vl up:
virt-lightning
将从当前目录读取virt-lightning.yaml
文件并准备关联的vm。 - vl down:销毁所有虚拟机。
- vl status:列出虚拟机、它们的IP以及它们是否可访问。
- vl ansible_inventory:以ansible格式导出库存。
- vl ssh:显示菜单以选择主机并打开ssh连接
- vl控制台:类似于
vl ssh
,但使用vm的串行控制台
从文件
配置您可以这样创建自己的配置文件并保存到config.ini
[main]
network_name = virt-lightning
root_password = root
storage_pool = virt-lightning