Ubuntu18.04 server使用KVM安装openEuler22.03记录

2023-11-26 15:50

本文主要是介绍Ubuntu18.04 server使用KVM安装openEuler22.03记录,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

一、验证系统是否支持硬件虚拟化

  1. 查看命令如下,如果输出大于 0,则表示您的系统支持虚拟化,否则请重新启动系统,然后转到 BIOS 设置并启用 VT 技术。

egrep -c '(vmx|svm)' /proc/cpuinfo
  1. 现在使用以下命令安装“ kvm-ok ”实用程序,它用于确定您的服务器是否能够运行硬件加速的 KVM 虚拟机。

sudo apt install cpu-checker
sudo kvm-ok% 输出如下:
INFO: /dev/kvm exists
KVM acceleration can be used

二、安装KVM和它依赖的软件

  1. 安装命令

sudo apt install qemu qemu-kvm libvirt-daemon-system libvirt-clients bridge-utils virt-manager
  1. 安装包介绍:

  1. qemu-kvm – 一个提供硬件仿真的开源仿真器和虚拟化包

  1. virt-manager – 一款通过 libvirt 守护进程,基于 QT 的图形界面的虚拟机管理工具

  1. libvirt-daemon-system – 为运行 libvirt 进程提供必要配置文件的工具

  1. virtinst – 一套为置备和修改虚拟机提供的命令行工具

  1. libvirt-clients – 一组客户端的库和API,用于从命令行管理和控制虚拟机和管理程序

  1. bridge-utils – 一套用于创建和管理桥接设备的工具

  1. 所有安装包安装完毕后,通过一下命令启动libvirt守护进程。

sudo systemctl enable --now libvirtd
sudo systemctl start libvirtd
  1. 可以通过以下命令验证该虚拟化进程是否已经运行:

sudo systemctl status libvirtd
  1. 将当前登录用户加入kvm和libvirt用户组,以便能够创建和管理虚拟机($USER 环境变量引用的即为当前登录的用户名。你需要重新登录才能使得配置生效)。

sudo usermod -aG kvm $USER
sudo usermod -aG libvirt $USER

以上部分内容参考来源:https://linux.cn/article-14661-1.html

二、创建网桥

  1. 如果你打算从本机(Ubuntu 18.04)之外访问 KVM 虚拟机,你必须将虚拟机的网卡映射至网桥。virbr0 网桥是 KVM 安装完成后自动创建的,仅做测试用途。

  1. 你可以通过如下内容在 /etc/netplan 目录下创建文件 01-netcfg.yaml 来新建网桥,在修改前注意保存备份:

# Let NetworkManager manage all devices on this system
network:version: 2renderer: NetworkManagerethernets:enp0s3:dhcp4: nodhcp6: nobridges:br0:interfaces: [enp0s3]dhcp4: noaddresses: [10.1.124.28/24]gateway4: 10.1.124.1nameservers:addresses: [114.114.114.114]
  1. 编辑01-netcfg.yaml完成后保存退出,使用netplan apply命令应用以上变更。

netplan apply
  1. 使用ifconfig查看当前网卡网桥配置信息。

  1. 本部分内容可以参考文章:(60条消息) 虚拟机里Ubuntu20.04的桥接模式的设置_一只快乐的推土机的博客-CSDN博客

三、非图形化界面进行安装KVM虚拟操作系统,本次实验中安装的是openEuler操作系统

  1. 使用shell命令行安装方法,命令如下

sudo virt-install -n test1 \
--description "test1" \
--os-type=Linux \
--ram=4096 \
--vcpus=2 \
--disk path=/var/lib/libvirt/images/test1.img,bus=virtio,size=100 \
--network bridge=br0 \
--graphics none \
--location /home/jianguoliu/Downloads/openEuler-22.03-LTS-SP1-x86_64-dvd.iso  \
--extra-args console=ttyS0
  1. 命令解释

  1. --name test,虚拟机名字;

  1. --vcpus 2,处理器核数;

  1. --memory 10240,内存大小(MB);

  1. --os-type=Linux,操作系统类型;

  1. --os-variant=openEuler22.03,操作系统变体类型;

  1. --location=/jianguoliu/Download/openEuler-22.03-LTS-SP1-x86_64-dvd.iso,操作系统镜像位置;

  1. --network network=br0,配置网桥,默认为:--network network=default;

  1. --disk path=/var/lib/libvirt/images/dbserver.img,bus=virtio,size=100,配置安装位置及可用空间,其中virtion为半虚拟化的意思,相关介绍可以参考这篇文章;

  1. --extra-args console=ttyS0,用于重定向终端窗口上的 STDOUT。注意:如果使用图形化安装,此需要改为--graphics=vnc。

  1. 安装完成成后,使用ctrl 5断开与虚拟机的连接。虚拟机开启时,需要再次连接时,可使用命令virsh console test1。下图为安装配置形式。

  1. 当虚拟机关闭时,可以使用virsh相关命令启动连接虚拟机,比如:virsh start test1 --console。

  1. virsh其他命令可参考这篇文章

  1. 本部分内容参考自:15 virt-install examples | KVM virtualization commands cheatsheet | GoLinuxCloud

  1. 安装过程报以下错误,通过sudo apt-get install qemu-efi命令解决,参考文章:https://www.cnblogs.com/winstom/p/15074737.html和https://www.pianshen.com/article/3445803119/

ERROR    unsupported configuration: ACPI requires UEFI on this architecture
Domain installation does not appear to have been successful.
If it was, you can restart your domain by running:virsh --connect qemu:///system start vm_kylinv10
otherwise, please restart your installation.
  1. 图形化安装方法可以参考以下文章

  1. https://www.linuxtechi.com/install-configure-kvm-ubuntu-18-04-server/

  1. https://help.ubuntu.com/community/KVM/Installation

  1. https://phoenixnap.com/kb/ubuntu-install-kvm#:~:text=Step%201%3A%20Install%20KVM%20Packages%201%20First%2C%20update,ENTER%2C%20and%20wait%20for%20the%20installation%20to%20finish.

  1. https://cloud.tencent.com/developer/article/1657533

  1. https://linux.cn/article-14661-1.html

  1. https://xie.infoq.cn/article/af423568b655968a605ed7fac

四、在虚拟机中配置网络进行远程远程连接

  1. 在安装过程中,发现一个BUG,那就是在VMware或者virtualBox中,使用桥接网络配置会导致无法连接到外部网络,具体原因未知。以下方法是在服务器kvm上进行的网络配置,可以设置固定IP,实现从外部网络进行连接。

  1. 欧拉系统网络配置文件位置是/etc/sysconfig/network-scripts/ifcfg-ens2

cd /etc/sysconfig/network-scripts
vi ifcfg-ens2
  1. 设置固定IP等信息,修改后效果如下。建议通过命令nmtui来实现图形化的配置,可参考文章https://blog.csdn.net/no1xium/article/details/125456703

  1. 重启网络,命令如下:

systemctl reload NetworkManager
  1. 使用ip -addr查看配置后的IP。若IP未变化,可通过reboot命令重启操作系统。

  1. 使用ping www.baidu.com来检查网络配置情况。


这篇关于Ubuntu18.04 server使用KVM安装openEuler22.03记录的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/425958

相关文章

Spring Security简介、使用与最佳实践

《SpringSecurity简介、使用与最佳实践》SpringSecurity是一个能够为基于Spring的企业应用系统提供声明式的安全访问控制解决方案的安全框架,本文给大家介绍SpringSec... 目录一、如何理解 Spring Security?—— 核心思想二、如何在 Java 项目中使用?——

springboot中使用okhttp3的小结

《springboot中使用okhttp3的小结》OkHttp3是一个JavaHTTP客户端,可以处理各种请求类型,比如GET、POST、PUT等,并且支持高效的HTTP连接池、请求和响应缓存、以及异... 在 Spring Boot 项目中使用 OkHttp3 进行 HTTP 请求是一个高效且流行的方式。

Java使用Javassist动态生成HelloWorld类

《Java使用Javassist动态生成HelloWorld类》Javassist是一个非常强大的字节码操作和定义库,它允许开发者在运行时创建新的类或者修改现有的类,本文将简单介绍如何使用Javass... 目录1. Javassist简介2. 环境准备3. 动态生成HelloWorld类3.1 创建CtC

使用Python批量将.ncm格式的音频文件转换为.mp3格式的实战详解

《使用Python批量将.ncm格式的音频文件转换为.mp3格式的实战详解》本文详细介绍了如何使用Python通过ncmdump工具批量将.ncm音频转换为.mp3的步骤,包括安装、配置ffmpeg环... 目录1. 前言2. 安装 ncmdump3. 实现 .ncm 转 .mp34. 执行过程5. 执行结

Java使用jar命令配置服务器端口的完整指南

《Java使用jar命令配置服务器端口的完整指南》本文将详细介绍如何使用java-jar命令启动应用,并重点讲解如何配置服务器端口,同时提供一个实用的Web工具来简化这一过程,希望对大家有所帮助... 目录1. Java Jar文件简介1.1 什么是Jar文件1.2 创建可执行Jar文件2. 使用java

C#使用Spire.Doc for .NET实现HTML转Word的高效方案

《C#使用Spire.Docfor.NET实现HTML转Word的高效方案》在Web开发中,HTML内容的生成与处理是高频需求,然而,当用户需要将HTML页面或动态生成的HTML字符串转换为Wor... 目录引言一、html转Word的典型场景与挑战二、用 Spire.Doc 实现 HTML 转 Word1

Java中的抽象类与abstract 关键字使用详解

《Java中的抽象类与abstract关键字使用详解》:本文主要介绍Java中的抽象类与abstract关键字使用详解,本文通过实例代码给大家介绍的非常详细,感兴趣的朋友跟随小编一起看看吧... 目录一、抽象类的概念二、使用 abstract2.1 修饰类 => 抽象类2.2 修饰方法 => 抽象方法,没有

MyBatis ParameterHandler的具体使用

《MyBatisParameterHandler的具体使用》本文主要介绍了MyBatisParameterHandler的具体使用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参... 目录一、概述二、源码1 关键属性2.setParameters3.TypeHandler1.TypeHa

Spring 中的切面与事务结合使用完整示例

《Spring中的切面与事务结合使用完整示例》本文给大家介绍Spring中的切面与事务结合使用完整示例,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考... 目录 一、前置知识:Spring AOP 与 事务的关系 事务本质上就是一个“切面”二、核心组件三、完

使用docker搭建嵌入式Linux开发环境

《使用docker搭建嵌入式Linux开发环境》本文主要介绍了使用docker搭建嵌入式Linux开发环境,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面... 目录1、前言2、安装docker3、编写容器管理脚本4、创建容器1、前言在日常开发全志、rk等不同