Rocky Linux 10.0下安装使用KVM虚拟机

KVM虚拟机简介:

图片

图片

图片

图片

图片

图片

Kernel-based Virtual Machine的简称,是一个开源的系统虚拟化模块,目前集成在Linux的各个主要发行版本中。

KVM的虚拟化需要硬件支持(如Intel VT技术或者AMD V技术),是基于硬件的完全虚拟化。

Xen是基于硬件支持的完全虚拟化,但Xen本身有自己的进程调度器,存储管理模块等,所以代码较为庞大。

广为流传的商业系统虚拟化软件VMware ESX系列是基于软件模拟的Full-Virtualization。

 

1、检查cpu是否支持虚拟化

1.1如果是在VMware虚拟机中安装,检查Intel VT设置

在VMware设置中将作为宿主机的Rocky Linux虚拟机的Intel VT或AMD-V功能打勾选中,开启VT虚拟化,才能在虚拟机中创建虚拟机。

图片

1.2用下列指令检查cpu是否支持vt:

cat /proc/cpuinfo|egrep 'vmx|svm'grep -Ei 'vmx|svm' /proc/cpuinfo

图片

如果有出现vmx或者svm关键字就代表支持虚拟化,vmx代表Intel的CPU,svm代表AMD的CPU

2、关闭selinux

​​​​​​​

sed -i 's/^SELINUX=.*/SELINUX=disabled/' /etc/selinux/configsetenforce 0

3、防火墙设置

​​​​​​​

#Rocky Linux默认使用的是firewall作为防火墙#cockpit的web界面会调用系统默认的firewalld防火墙#默认端口为9090,需放行该端口或cockpit服务才能远程访问‌firewall-cmd --add-service=cockpit --permanent  #永久放行服务firewall-cmd --reload  #重载配置firewall-cmd --list-ports  #检查已开放端口firewall-cmd --list-all  #显示所有规则(含服务、端口、区域)

4、修改主机名

​​​​​​​

方便区分宿主机和KVM虚拟化,建议修改宿主机的主机名称hostnamectl set-hostname kvm01vi /etc/hostname #编辑配置文件CentOS 7.xkvm01 #修改localhost.localdomain为kvm01:wq! #保存退出vi /etc/hosts #编辑配置文件127.0.0.1 kvm01 localhost #修改localhost.localdomain为kvm01:wq! #保存退出

5、启用网络转发,kvm使用nat方式需要开始

​​​​​​​

vi /etc/sysctl.confnet.ipv4.ip_forward=1:wq! #保存退出sysctl -p /etc/sysctl.conf

6、安装kvm

6.1使用yum安装

​​​​​​​

#安装虚拟化核心套件yum install virt-* qemu-kvm qemu-img libvirt libguestfs-tools#启动并设置开机启动systemctl enable --now libvirtd#验证状态应为"active (running)"systemctl status libvirtd

​​​​​​​

#安装Cockpit网页管理工具(含虚拟机管理模块)yum install cockpit cockpit-machines#启动并设置开机启动systemctl enable --now cockpit.socket#验证状态应为"active (running)"systemctl status cockpit.socket

​​​​​​​

#默认可能禁止root登录#修改后重启生效‌vi /etc/cockpit/disallowed-users  #删除"root"行root:wq! #保存退出systemctl restart cockpit.socket  #重启服务systemctl restart libvirtd  #重启服务

​​​​​​​

#模块说明kvm:linux内核中的一个模块,不需要安装只要加载就行,通过用户态进程来管理。qemu:虚拟化软件,支持多种架构,可扩展,可移植qemu-kvm:用户态管理KVM,网卡、声卡、PCI设备等的管理libvirt:是一个虚拟化 API 和虚拟机(VMs)管理后台,支持远程或本地访问,支持多种虚拟化后端 (QEMU/KVM, VirtualBox, Xen,等等)

6.2检查确认载入kvm模块

图片

    lsmod | grep kvmip link show type bridge[root@kvm01 ~]# lsmod | grep kvmkvm_intel             446464  0kvm                  1400832  1 kvm_intel[root@kvm01 ~]# ip link show type bridge3: virbr0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc htb state DOWN mode DEFAULT group default qlen 1000    link/ether 52:54:00:54:70:d8 brd ff:ff:ff:ff:ff:ff

    6.3创建软连接

    ​​​​​​​

    ln -s /usr/libexec/qemu-kvm /usr/bin/qemu-kvmls -l /usr/bin/qemu-kvm

    6.4查看版本

    图片

      virsh --versionvirt-install --versionqemu-kvm --version

      6.5、配置kvm网络

      ​​​​​​​

      kvm虚拟机的网络配置有两种模式:NAT模式和桥接模式,默认只有NAT模式两种模式的区别:NAT模式:也是用户模式,数据包由NAT方式通过主机的接口进行传送,可以访问公网,但是无法从外部访问虚拟机网络,所以一般不会用到。NAT模式配置比较简单,只需要在启动虚拟机后,设置ip地址为dhcp自动获得即可联网,也可以修改ip地址为固定ip,但是宿主机必须启用网络转发。Bridge:也就是桥接模式,这种模式允许虚拟机像一个独立的主机一样拥有网络,外部的机器可以直接访问到虚拟机内部,但需要网卡支持,一般有线网卡都支持。

      6.5.1创建桥接网桥

      图片

        #创建桥接配置文件(Rocky Linux 10.x新路径)#IP信息是当前网卡ens33的nmcli con add type bridge con-name br0 ifname br0 \    ipv4.method manual \    ipv4.addresses 192.168.21.159/24 \    ipv4.gateway 192.168.21.1 \    ipv4.dns "8.8.8.8,8.8.4.4"

        6.5.2绑定物理网卡

        图片

          #将ens33绑定到桥接nmcli con add type bridge-slave \    con-name br0-port \    ifname ens33 \    master br0

          6.5.3激活配置

          ​​​​​​​

          #查看原网络名称为ens33nmcli connection show#禁用原网络配置nmcli con down "ens33"nmcli con up br0

          6.5.4验证桥接

          图片

            bridge link show br0  #应显示ens33已绑定ip addr show br0      #应显示原ens33的IP已迁移到br0‌

            6.5.5调优网络

            ‌#禁用STP‌:小型网络可减少延迟nmcli con mod br0 bridge.stp no#MTU优化‌nmcli con mod br0 ethernet.mtu 9000

            7、创建kvm虚拟机

            7.1创建自定义存储目录‌(推荐替代默认路径)

            mkdir -p /data/libvirt/{iso,images}chown -R root:root /data/libvirtchmod 755 /data/libvirt -R *

            ‌7.2通过virsh命令管理存储池‌

            图片

              # 定义存储池virsh pool-define-as vmstore --type dir --target /data/libvirt/images# 构建并激活存储池virsh pool-build vmstorevirsh pool-start vmstorevirsh pool-autostart vmstore# 检查存储池状态virsh pool-list --allls -ld /data/libvirt/images# 查看存储池完整配置virsh pool-dumpxml vmstore# 验证自动启动配置是否持久化ls -l /etc/libvirt/storage/autostart/vmstore.xml# 存储池配置实际保存在cat /etc/libvirt/storage/vmstore.xml

              7.3上传iso镜像文件

              图片

                上传系统镜像文件到存放目录/data/libvirt/iso
                对于安装KVM(Kernel-based Virtual Machine)虚拟机,推荐使用以下Linux发行版和版本: 1. **Ubuntu**: - **版本**:20.04 LTS 或 22.04 LTS - **理由**:Ubuntu是一个广泛使用Linux发行版,具有良好的社区支持和丰富的文档。LTS版本提供了长期支持,适合生产环境使用。 2. **CentOS/Rocky Linux**: - **版本**:8.x - **理由**:CentOS曾是许多企业级应用的常用选择,Rocky Linux作为CentOS的替代品,提供了与RHEL兼容的环境,适合需要稳定性和长期支持的用户。 3. **Fedora**: - **版本**:最新稳定版本 - **理由**:Fedora是一个前沿的Linux发行版,包含最新的软件包和技术。适合希望使用最新功能的用户,但可能不如LTS版本稳定。 4. **Debian**: - **版本**:10(buster)或 11(bullseye) - **理由**:Debian是一个稳定且可靠的发行版,拥有强大的社区支持和丰富的软件包库。适合需要稳定性和安全性的用户。 安装KVM的基本步骤通常包括: 1. **检查硬件虚拟化支持**: ```bash egrep -c '(vmx|svm)' /proc/cpuinfo ``` 如果输出大于0,说明支持硬件虚拟化。 2. **安装KVM和必要的软件包**: ```bash sudo apt-get update sudo apt-get install qemu-kvm libvirt-daemon-system libvirt-clients bridge-utils virt-manager ``` 3. **启动并启用libvirtd服务**: ```bash sudo systemctl enable libvirtd sudo systemctl start libvirtd ``` 4. **验证安装**: ```bash virsh list --all ``` 通过这些步骤,你可以在推荐的Linux发行版上成功安装和配置KVM虚拟机
                评论
                添加红包

                请填写红包祝福语或标题

                红包个数最小为10个

                红包金额最低5元

                当前余额3.43前往充值 >
                需支付:10.00
                成就一亿技术人!
                领取后你会自动成为博主和红包主的粉丝 规则
                hope_wisdom
                发出的红包

                打赏作者

                马立杰

                你的鼓励将是我创作的最大动力

                ¥1 ¥2 ¥4 ¥6 ¥10 ¥20
                扫码支付:¥1
                获取中
                扫码支付

                您的余额不足,请更换扫码支付或充值

                打赏作者

                实付
                使用余额支付
                点击重新获取
                扫码支付
                钱包余额 0

                抵扣说明:

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

                余额充值