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

### 安装 Virt-manager 虚拟机管理器 为了在 Ubuntu 22.04 LTS 中安装 `virt-manager` 虚拟机管理器,需执行一系列命令来确保软件包被正确安装配置。 #### 更新系统包列表 首先更新系统的包列表以获取最新的版本信息: ```bash sudo apt update ``` #### 安装 Virt-manager 及其依赖项 接着通过 APT 包管理系统安装 `virt-manager` 和必要的库文件: ```bash sudo apt install virt-manager -y ``` 这一步骤会自动处理所有必需的依赖关系,完成 `virt-manager` 的安装过程[^1]。 #### 启动 Libvirtd 服务 由于 `virt-manager` 需要与 libvirt 进行交互才能管理和创建虚拟机实例,因此还需要启动启用 `libvirtd` 服务: ```bash sudo systemctl enable --now libvirtd.service ``` 此操作不仅立即激活该守护程序而且设置它随操作系统一同开机自启。 #### 添加用户至 KVM 和 Libvirt 组 对于非 root 用户来说,在尝试运行图形界面下的 `virt-manager` 前应该把自己加入到特定权限组内以便于后续的操作更加顺畅。具体做法如下所示: ```bash sudo usermod -aG kvm $USER sudo usermod -aG libvirt $USER ``` 上述指令将当前登录账户添加到了两个重要的用户组中——kvm 和 libvirt,从而赋予了足够的权利去利用这些工具所提供的功能[^2]。 #### 登录新会话使更改生效 最后记得注销再重新登陆一次计算机使得新的群组成员身份得到应用;或者也可以采用更简单的方法即关闭终端窗口之后新开一个继续下面的工作流程。 现在可以打开应用程序菜单找到 "Virtual Machine Manager" 或者直接输入命令 `virt-manager` 来启动这个 GUI 工具来进行下一步关于 Windows XP 等其他 guest OSes 的部署工作了。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值