ubuntu安装KVM虚拟机管理virt-manager并连接到远程服务器

首先我在服务器上进行了如下操作:

1、查看是否支持了虚拟化:cat /proc/cpuinfo | grep -E 'vmx|svm'(可跳过)

2、查看是否kvm的驱动已经加载:lsmod | grep kvm(可跳过)

如果没有加载kvm驱动,利用命令加载驱动

modprobe -a kvm

modprobe -a kvm_intel

3、 安装qemu-kvm: yum install -y qemu-kvm

4、 安装libvirt:

yum install -y libvirt

service libvirtd restart

5、 验证libvirt是否正常启动: virsh version

6、 安装virt-manager工具: yum install -y virt-manager

7、使用virt-manager命令启动时发现需要安装xmanager,然后我一查xmanager,发现是需要付费的,点否的话是不行的,会像下图那样卡住,en。。。。。。,所以换了一种方式。。。。。。

-----------------------------------------------------------------------分割线-----------------------------------------------------------------------------------------

这方式就是通过用虚拟机里的virt-manager来管理远程服务器上的虚拟化。

我虚拟机装的操作系统是ubuntu16.04

有些博客说直接使用命令apt-get install virt-manager来安装virt-manager,我试了一下,发现还需要安装些其他东西。。。

安装了virt-manager之后点击这个图标,它会提示你还缺少qemu-system、libvirt-bin这些东西,具体记不太清了,当时没记录,反正它会有提示,缺啥你就安装啥就行了。

安装好之后就开始连接远程主机吧,具体可以参考这篇博客https://www.cnblogs.com/ilanni/p/3885191.html,写的很详细

然而后面我又遇到了连接到主机时候无法弹出认证框的问题:

    "You need to install openssh-askpass or similar to connect to this hos。。。"

“libvirtError: Cannot recv data: ssh_askpass: exec(/usr/bin/ssh-askpass): No。。。”

解决办法:

  安装ssh-askpass-gnome来允许弹出认证框:

sudo apt-get install ssh-askpass-gnome --no-install-recommends

Openssh-askpass是用于图形界面下输入口令的,具体的我也不太清楚。

接下来连接主机,结果弹出如下的错误:

authentication unavailable: no polkit agent available to authenticate action 'org.libvirt.unix.manage'

Verify that the 'libvirtd' daemon is running
on the remote host.

这个主要是WebVirtMgr的安装导致出现的错误,解决方法如下(注意:是在远程服务器上进行下面的操作!):

1、增加libvirtd用户组

groupadd libvirtd

2、设置用户到组

sudo usermod -a -G libvirtd $USER

3、设置启动libvirtd服务的用户组

vi /etc/libvirt/libvirtd.conf

4、增加权限启动配置

vi /etc/polkit-1/localauthority/50-local.d/50-org.libvirtd-group-access.pkla
[libvirtd group Management Access]
Identity=unix-group:libvirtd
Action=org.libvirt.unix.manage
ResultAny=yes
ResultInactive=yes
ResultActive=yes

5、重启服务

systemctl restart libvirtd.service

注:一开始我是用service libvirtd restart这个命令来重启服务,但是启动服务的时候出现这个提示“Redirecting to /bin/systemctl restart libvirtd.service”,这个是新版本,可以按他提示的输入命令“/bin/systemctl restart libvirtd.service”来重启服务,也可以使用systemctl restart libvirtd.service来重启服务。

参考:https://www.jianshu.com/p/b9a8fc431224

https://www.cnblogs.com/ilanni/p/3885191.html

https://bbs.archlinux.org/viewtopic.php?id=240547

  • 0
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值