环境介绍:

1.物理机操作系统:CentOS Linux release 7.5.1804 (Core)

安装

1.通过yum进行安装相关组件
yum install -y qemu-kvm libvirt virt-install
2.启动并设置开机启动

启动后可以看到网卡多了一个virbr0的网口,这个是libvirt默认的nat网口(默认IP是192.168.122.1),在更新的版本会发现有virbr0-nic、vnet0等网口,这些都是给虚拟机用的网口。

systemctl start libvirtd && systemctl enable libvirtd
3.创建虚拟机
1.创建虚拟磁盘 使用qemu命令创建一个10G(大小自定)的硬盘,并命名为:CentOS7
qemu-img create -f raw /data/CentOS7.raw 10G
2.使用iso镜像进行安装,iso镜像可以在阿里云镜像站或者MSDN下载
virt-install --virt-type kvm --name centos7 --ram 1024 -vcpus=4 --cdrom=/data/iso/CentOS-7-x86_64-Minimal-1611.iso --disk path=/data/centos7.raw --network network=default --graphics vnc,listen=0.0.0.0,port=5900 --noautoconsole
3.远程连接并进行安装操作

刚刚的命令就已经默认帮我们创建了一个VNC连接,这样我们就可以连接到虚拟机并进行操作了,使用任意VNC工具连接你域名或IP的5900端口,这是VNC的默认端口,创建多个VNC连接时在原有基础上进行累加,可以通过下面的命令查看对应端口,VNC工具推荐RealVNC. 注意:CentOS服务端记得放行安全组或防火墙

注意:进入虚拟机先尝试能否ping baidu.com,ping不通需要修改虚机网络,

注意:装好后可能会出现虚拟机无法连接外网的情况(比如ping baidu.com),此时用vnc连接虚拟机,vi /etc/sysconfig/network-scripts/ifcfg-*,这里的-*是你自己的网卡名称,可以通过ip addr查看,将ONBOOT改为yes,最后执行命令service network restart重启就能ping通外网了

4.管理KVM

virsh list --all 查看所有虚拟机     
virsh start [虚拟机名] 启动虚拟机     
virsh shutdown [虚拟机名] 关闭虚拟机     
virsh destory [虚拟机名] 强制关机     
virsh undefine [虚拟机名] 取消定义虚拟机     
virsh define [虚拟机配置文件] 定义虚拟机(修改配置时使用)

5.查看配置文件目录

默认在/etc/libvirt/qemu/目录下以xml格式保存虚拟机配置

连接虚拟机

背景:

笔者公司环境无法直接ssh到虚拟机,只能连接到物理机,即使桥接也不行,因为不在一个局域网;(可以直接ssh到虚机的跳过此段)

有两种连接方式:
  1. VNC
    用vnc viewer即可
  2. SSH
    需要端口转发,步骤如下:
    (1)下载https://github.com/knownsec/rtcp到物理机和虚机(先vnc连接)
    (2)运行端口转发脚本;
    (3)ssh就会发现可以了,后台运行脚本用nohup xxx &即可,想要杀掉进程需要kill -9才能杀除

参考:

  1. https://zhuanlan.zhihu.com/p/74537292
  2. https://blog.csdn.net/weixin_44009447/article/details/120034467
  3. https://github.com/knownsec/rtcp
Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐