kvm

举报
小源博客 发表于 2023/04/11 11:45:32 2023/04/11
【摘要】 1 虚拟化是云计算的一种技术2 介绍kvm集中管理工具与控制openstackPVE(proxmox virtualization environment)3查看是否支持虚拟化grep -Em 1 "vmx|svm" /proc/cpuinfo​PS: svm是amdcpu,vmx是intel的cpu4 libvirt4.1管理虚拟机的工具包# 安装yum -y install qemu-k...

1 虚拟化是云计算的一种技术

2 介绍kvm集中管理工具与控制

  • openstack

  • PVE(proxmox virtualization environment)

3查看是否支持虚拟化

grep -Em 1 "vmx|svm" /proc/cpuinfo
​
PS: svm是amdcpu,vmx是intel的cpu

4 libvirt

4.1管理虚拟机的工具包

# 安装
yum -y install qemu-kvm libvirt virt-manager virt-install virt-viewer
libvirt         # 虚拟机管理工具
virt-manager    # 图形化管理工具
virt-install    # 命令行
virt-viewer     # 图形化远程连接虚拟机工具
​
​
# 启动
systemctl start libvirtd

4.2 centos的web虚拟机管理工具

yum -y install cockpit
​
# 启动
systemctl enable --now cockpit
​
# 访问:ip:9090
用户名与密码是宿主机的

5 启动virt-manager

5.1 启动kvm图形化管理命令

1.安装完成后启动 Xmanager-Passive 程序
​
2.Linux主机上执行如下命令
export DISPLAY=10.0.0.1:0.0
virt-manager

5.2 新网桥的配置文件路径

cat /etc/libvirt/qemu/networks/default.xml
​
# 查看网卡详细信息
nmcli connection show virbr0

6 制作镜像

6.1 创建工作目录

mkdir /data/isos/ -pv
​
# 将ios镜像放到这个目录中

6.2 制作流程

  • 图形化

# 跟着点点点选择走即可
​
# amd的cpu会报错,解决方法
cat >> /etc/modprobe.d/qemu-system-x86.conf << EOF
options kvm ignore_msrs=1
EOF
​
# 重启宿主机
reboot
  • 命令行

# 先创建磁盘文件(最大限制20G,使用多少用多少)
qemu-img create -f qcow2 /var/lib/libirt/images/centos7.qcow2 20G
​
# 查看支持操作系统列表
osinfo-query os

6.3 命令行启动虚拟机


  • --network # 网络采用默认

  • --graphics # 以图形方式开启vnc

  • 可用 virt-viewer 工具连接

export DISPLAY=10.0.0.1:0.0

virt-viewer

6.4 创建虚拟机从光盘启动并利用kickstart自动安装系统

6.4.1 准备yum仓库和kickstart环境

1.yum -y install httpd

2.systemctl enable --now httpd

3.mkdir -pv /var/www/html/centos/{6,7,8}/os/x86_64/

4.mount /dev/centos8.ios /var/www/html/centos/8/os/x86_64/
# 永久挂载
cat /etc/fstab
/dev/centos8.ios /var/www/html/centos/8/os/x86_64/ iso9660 default 0 0

mount -a

5.mkdir /var/www/html/ks/

6.cat /var/www/html/ks/centos8.cfg
ignoredisk --only-use=sda
zerombr
text
reboot
clearpart --all --initlabel
selinux --disabled
firewall --disabled
# yum 源路径
url --url=http://10.0.0.8/centos/8/os/x86_64/
keyboard --vckeymap=us --xlayouts='us'
lang en_US.UTF-8

# 将网卡设置为eth0
bootloader --append="net.ifnames=0" --location=mbr --boot-drive=sda
# 网卡自动获取IP
network --bootproto=dhcp --device=eth0 --ipv6=auto --activate
# 主机名
network --hostname=centos8.ws.com
rootpw --iscrypted $6$u3XcVYFLrQVRQOPf$/JozOew4.b77FOkfi9LUkdijqvDMVeexGIrCtQj14w4q807CE.gwbfE80VXkD/ThiUSlOHFllP.bD11aajdnX0
firstboot --enable
skipx
services --disabled="chronyd"
timezone Asia/Shanghai --isUtc --nontp
user --name=ws --password=$6$u3XcVYFLrQVRQOPf$/JozOew4.b77FOkfi9LUkdijqvDMVeexGIrCtQj14w4q807CE.gwbfE80VXkD/ThiUSlOHFllP.bD11aajdnX0

autopart --type=lvm
%packages
@^minimal-environment
kexec-tools
%end
%addon com_redhat_kdump --enable --reserve-mb='auto'
%end
%anaconda
pwpolicy root --minlen=6 --minquality=1 --notstrict --nochanges --notempty
pwpolicy user --minlen=6 --minquality=1 --notstrict --nochanges --emptyok
pwpolicy luks --minlen=6 --minquality=1 --notstrict --nochanges --notempty
%end

%post
useradd xier
echo xier | passwd --stdin xier & > /dev/null
%end

6.4.2 创建磁盘文件

qemu-img create -f qcow2 /var/lib/libvirt/images/centos8.qcow2 20G

6.4.4 自动化创建虚拟机

virt-install --virt-type kvm --name centos8-vm3 --ram 2048 --vcpus 2 --disk path=/var/lib/libvirt/images/centos8.qcow2 --network=default --graphics vnc,listen=0.0.0.0 --location=/data/isos/CentOS-8.2.2004-x86_64-minimal.iso --extra-args="ks=http://10.0.0.6/ks/centos8.cfg"

7 管理虚拟机

7.1 使用半虚拟化驱动 virtio

  • 为了提高内存、硬盘、网络的性能,需要支持半虚拟化

7.2 linux自带有,不需要virtio驱动

  • 网卡、硬盘等尽量都使用virtio模式,半虚拟化是与物理硬件直接通信,速度非常快

7.3 windows虚拟机,需要virtio驱动

7.3.1 安装windows虚拟机

# 查看支持版本
osinfo-query os | grep win

# 创建虚拟磁盘文件
qemu-img create -f qcow2 /var/lib/libvirt/images/windows-server.qcow2 200G

# 创建虚拟机


bus=virtio   # 红帽是不支持的,后面跟上驱动镜像
--autostart   # 宿主机启动虚拟机跟着启动



7.3.2 生成镜像模板

# 进入目录找到 sysprep.exe 程序,重置个性化,重新初始化,不会重新安装整个系统
C:\Windows\System32\Sysprep

# 然后选择关机即可



7.5 QEMU guest agent 使用


# Linux安装
yum -y install qemu-guest-agent

# windows安装
在virtio-win驱动镜像中,guest-agent目录中找到 qemu-ga-x86_64.msi 点击安装即可



【版权声明】本文为华为云社区用户原创内容,未经允许不得转载,如需转载请自行联系原作者进行授权。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。