使用virt-install的多个KVM来宾脚本

时间:2015-05-11 11:45:19

标签: automation virtual redhat openstack kvm

我想使用kickstart自动安装3个KVM来宾。 使用virt-install命令手动安装它没有问题。

virt-install \
-n dal \
-r 2048 \
--vcpus=1 \
--os-variant=rhel6 \
--accelerate \
--network  bridge:br1,model=virtio \
--disk path=/home/dal_internal,size=128 --force \
--location="/home/kvm.iso" \
--nographics \
--extra-args="ks=file:/dal_kick.cfg console=tty0 console=ttyS0,115200n8 serial" \
--initrd-inject=/opt/dal_kick.cfg \
--virt-type kvm

我有3个像上面那样的脚本 - 我想同时安装所有3个,如何禁用控制台?或在后台运行它?

3 个答案:

答案 0 :(得分:1)

基于virt-install手册页: http://www.tin.org/bin/man.cgi?section=1&topic=virt-install

--noautoconsole

Don't automatically try to connect to the guest console. The
           default behaviour is to launch virt-viewer(1) to display the
           graphical console, or to run the "virsh" "console" command to
           display the text console. Use of this parameter will disable this
           behaviour.

virt-install将自动连接控制台。如果你不想要, 只需在您的cmd中添加--noautoconsole,如

virt-install \
-n dal \
-r 2048 \
--vcpus=1 \
--quiet \
--noautoconsole \
...... other options

答案 1 :(得分:0)

我们遇到了同样的问题,最后我们找到的唯一方法是用&创建新的线程。

我们还包括安静选项,不是强制性的。 - - quiet 选项(仅打印致命错误消息)。

virt-install \
-n dal \
-r 2048 \
--vcpus=1 \
--quiet \
--os-variant=rhel6 \
--accelerate \
--network  bridge:br1,model=virtio \
--disk path=/home/dal_internal,size=128 --force \
--location="/home/kvm.iso" \
--nographics \
--extra-args="ks=file:/dal_kick.cfg console=tty0 console=ttyS0,115200n8 serial" \
--initrd-inject=/opt/dal_kick.cfg \
--virt-type kvm &

答案 2 :(得分:0)

我知道这有点旧,但我想分享我的想法。 我遇到了同样的问题,但由于我们工作的环境,我们需要使用带密码的sudo(合规性原因)。我提出的解决方案是使用timeout而不是&。当我们马上分叉时,由于sudo提示永远不会出现,它会挂起。所以在上面的例子中使用超时:(我们显然做了timeout 10 sudo virt-instal...

timeout 15 virt-install \
-n dal \
-r 2048 \
--vcpus=1 \
--quiet \
--os-variant=rhel6 \
--accelerate \
--network  bridge:br1,model=virtio \
--disk path=/home/dal_internal,size=128 --force \
--location="/home/kvm.iso" \
--nographics \
--extra-args="ks=file:/dal_kick.cfg console=tty0 console=ttyS0,115200n8 serial" \
--initrd-inject=/opt/dal_kick.cfg \
--virt-type kvm

这允许我们与sudo提示进行交互并发送密码,然后启动构建。超时不会终止进程,它会继续,脚本也可以。