Centos7搭建 KVM 命令行安装虚拟机

[toc]

    • -
      作者:SRE运维博客
      博客地址: https://www.cnsre.cn/
      文章地址:https://www.cnsre.cn/posts/211105852095/
      相关话题:https://www.cnsre.cn/tags/kvm/
    • -
      本文将介绍centos7 环境如何搭建一个kvm 环境并且创建windows,linux等虚拟机。
安装前准备 验证CPU是否支持KVM
如果结果中有vmx(Intel)或svm(AMD)字样,就说明CPU的支持的。
egrep '(vmx|svm)' /proc/cpuinfo

Centos7搭建 KVM 命令行安装虚拟机
文章图片

关闭SELinux
/etc/sysconfig/selinux 中的 SELinux=enforcing 修改为 SELinux=disabled
Centos7搭建 KVM 命令行安装虚拟机
文章图片

安装一些最基本的服务
可选项,因为我是刚安装好的CentOS,所以为了下面方便点,先把一些必要的工具安装下
yum install epel-release net-tools vim unzip zip wget ftp -y

Centos7搭建 KVM 命令行安装虚拟机
文章图片

安装KVM及其依赖项
yum install qemu-kvm libvirt virt-install bridge-utils -y

Centos7搭建 KVM 命令行安装虚拟机
文章图片

验证安装结果
下图说明已经成功安装了
lsmod | grep kvm

Centos7搭建 KVM 命令行安装虚拟机
文章图片

开启kvm服务
并且设置其开机自动启动
systemctl start libvirtd systemctl enable libvirtd

查看状态操作结果
如下图所示,说明运行情况良好
systemctl status libvirtd

【Centos7搭建 KVM 命令行安装虚拟机】Centos7搭建 KVM 命令行安装虚拟机
文章图片

systemctl is-enabled libvirtd

Centos7搭建 KVM 命令行安装虚拟机
文章图片

配置网桥模式
先将 /etc/sysconfig/network-scripts/ 目录下的网卡配置文件备份一份
创建 ifcfg-br0 文件 创建的 br0文件的IP地址要和物理网卡的IP地址一致,命令 ipconfig 查看物理网卡将不会显示IP
内容如下:
[root@bogon ~]# vim /etc/sysconfig/network-scripts/ifcfg-br0 DEVICE=br0 BOOTPROTO=none DEFROUTE=yes ONBOOT=yes TYPE=Bridge IPV4_FAILURE_FATAL=yes IPADDR=192.168.1.130 NETMASK=255.255.255.0 GATEWAY=192.168.1.254 DNS1=221.6.4.66 DELAY=0 USERCE=no

修改原网卡配置
vim /etc/sysconfig/network-scripts/ifcfg-eno1s TYPE="Ethernet" PROXY_METHOD="none" BROWSER_ONLY="no" BOOTPROTO="static" DEFROUTE="yes" IPV4_FAILURE_FATAL="YES" IPV6INIT="yes" IPV6_AUTOCONF="yes" IPV6_DEFROUTE="yes" IPV6_FAILURE_FATAL="no" IPV6_ADDR_GEN_MODE="stable-privacy" NAME="eno1" UUID="bb40d726-8d67-4187-90c3-eb61e1b42d61" DEVICE="eno1" ONBOOT="yes" IPADDR="192.168.1.130" NETAMSK=255.255.255.0 GATEWAY="192.168.1.254" DNS1="221.6.4.66" IPV6_PRIVACY="no" BRIDGE=br0

重启网络服务
systemctl restart network

使用 ifconfig 验证操作结果,多了一块网卡 br0 ,现在访问宿主机 使用 192.168.1.130 就可以了。
Centos7搭建 KVM 命令行安装虚拟机
文章图片

安装虚拟机 准备操作系统安装镜像文件
在本文中将使用和宿主环境一样的 CentOS7.2,把该文件放到 /home/iso 目录下
挂载U盘
[root@nkgtsv01 ~]# yum install fuse-ntfs-3g -y [root@nkgtsv01 ~]# ls /mnt/ udiskusb [root@nkgtsv01 ~]# ls /mnt/udisk/ CentOS-7.2-x86_64-DVD-1611.isoCentOS-7-x86_64-DVD-1708.isomaven_storey2.zip [root@bogon data]# mkdir -p /data/iso [root@bogon data]# ls isokvm-baknetwork [root@nkgtsv01 ~]# mount-o loop /mnt/udisk/CentOS-7-x86_64-DVD-1708.iso /data/iso/ mount: /dev/loop0 写保护,将以只读方式挂载

Centos7搭建 KVM 命令行安装虚拟机
文章图片

创建虚拟机文件存放的目录
mkdir -p /data/kvm-images

使用 virt-install 创建虚拟机
virt-install --virt-type=kvm --name=njkvm07 --vcpus=4 --memory=6000 --location=/data/iso/CentOS-7-x86-64-DVD-1708.iso --disk path=/data/kvm-images/njkvm07.qcow2,size=200,format=qcow2 --network bridge=br0 --graphics none --extra-args='console=ttyS0' --force

执行完这段命令
感叹号为待选项
c保存 q退出 b开始执行安装
Centos7搭建 KVM 命令行安装虚拟机
文章图片

选择地区时间
Centos7搭建 KVM 命令行安装虚拟机
文章图片

Centos7搭建 KVM 命令行安装虚拟机
文章图片

Centos7搭建 KVM 命令行安装虚拟机
文章图片

Centos7搭建 KVM 命令行安装虚拟机
文章图片

选则之后c保存
Centos7搭建 KVM 命令行安装虚拟机
文章图片

自动返回主页面
Centos7搭建 KVM 命令行安装虚拟机
文章图片

选择硬盘
Centos7搭建 KVM 命令行安装虚拟机
文章图片

选择到硬盘 c保存
Centos7搭建 KVM 命令行安装虚拟机
文章图片

全新安装 C保存
Centos7搭建 KVM 命令行安装虚拟机
文章图片

选则添加IP地址和添加主机名称
Centos7搭建 KVM 命令行安装虚拟机
文章图片

Centos7搭建 KVM 命令行安装虚拟机
文章图片

输入 回车
Centos7搭建 KVM 命令行安装虚拟机
文章图片

添加IP地址
Centos7搭建 KVM 命令行安装虚拟机
文章图片

选则ipv4
Centos7搭建 KVM 命令行安装虚拟机
文章图片

添加IP地址回车
Centos7搭建 KVM 命令行安装虚拟机
文章图片

添加netmask gateway c 保存
Centos7搭建 KVM 命令行安装虚拟机
文章图片

添加密码
Centos7搭建 KVM 命令行安装虚拟机
文章图片

B开始执行安装
Centos7搭建 KVM 命令行安装虚拟机
文章图片

安装完成
Centos7搭建 KVM 命令行安装虚拟机
文章图片

宿主机直接连接到虚拟机
Centos7搭建 KVM 命令行安装虚拟机
文章图片

Centos7搭建 KVM 命令行安装虚拟机
文章图片

等待重启虚拟机,虚拟机起开之后直接远程就ok了 。
virt-clone克隆虚拟机 使用 virt-clone 克隆新的虚拟机
(虚拟机需要先关闭)
virt-clone -o njvm02 -n njvm03 -f /data/kvm-img/njvm03.img

Centos7搭建 KVM 命令行安装虚拟机
文章图片

克隆完查看 所有的虚拟机以及状态
virsh list --all

Centos7搭建 KVM 命令行安装虚拟机
文章图片

删除虚拟机 njvm01
virsh undefine njvm01 virsh destroy njvm01

{{< alert theme="warning" dir="ltr" >}}
?? 注意
取消定义 删除以后要找到虚拟机文件路径吧虚拟机文件也删除掉
{{< /alert >}}
Centos7搭建 KVM 命令行安装虚拟机
文章图片

[root@nkgtsv01 data]# virsh shutdown njvm01 域 njvm01 被关闭 [root@nkgtsv01 data]# virsh start njvm02 域 njvm02 已开始 [root@nkgtsv01 data]# virsh list --all

Centos7搭建 KVM 命令行安装虚拟机
文章图片

{{< alert theme="warning" dir="ltr" >}}
?? 注意
克隆完以后因为IP地址还是njvm01的IP地址所以我们要修改IP地址
{{< /alert >}}
开启我们克隆的虚拟机
远程登陆上去
[root@nkgtsv-vm01 ~]# cd /etc/sysconfig/network-scripts/ [root@nkgtsv-vm01 network-scripts]# ls ifcfg-eth0ifdown-pppifup-ethifup-sit ifcfg-loifdown-routesifup-ipppifup-Team ifdownifdown-sitifup-ipv6ifup-TeamPort ifdown-bnepifdown-Teamifup-isdnifup-tunnel ifdown-ethifdown-TeamPortifup-plipifup-wireless ifdown-ipppifdown-tunnelifup-plusbinit.ipv6-global ifdown-ipv6ifupifup-postnetwork-functions ifdown-isdnifup-aliasesifup-pppnetwork-functions-ipv6 ifdown-postifup-bnepifup-routes [root@nkgtsv-vm01 network-scripts]# vim ifcfg-eth0

Centos7搭建 KVM 命令行安装虚拟机
文章图片

Centos7搭建 KVM 命令行安装虚拟机
文章图片

IPADDR=192.168.1.121 改为我们想要的IP地址
保存退出
Service network restart
重启网络
重新链接
参考文档:
http://www.linuxidc.com/Linux...
http://blog.csdn.net/u0114142...
https://www.cnblogs.com/52013...
http://blog.51cto.com/7834466...
https://www.cnblogs.com/Yemil...
    • -
      作者:SRE运维博客
      博客地址: https://www.cnsre.cn/
      文章地址:https://www.cnsre.cn/posts/211105852095/
      相关话题:https://www.cnsre.cn/tags/kvm/
    • -

    推荐阅读