代码改变世界

使用KVM创建OEL虚拟机

2023-01-07 01:06  AlfredZhao  阅读(74)  评论(0编辑  收藏  举报

在Linux工作站上使用KVM创建虚拟机。

首先说下我的需求:

  • 1.其他LAN内的笔记本也可以连接到这些KVM的虚拟机,因此需要配置使用桥接网络
  • 2.创建一个虚拟机,采用最小化安装系统,作为基础模版,供后续快速克隆

Part1 :

首先,配置桥接网络:

  1. 已有的网卡配置文件中,添加一行:
    BRIDGE=br0

示例:

TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=static
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=enp9s0
UUID=b5f36019-009a-40ae-b082-10f03380bf52
DEVICE=enp9s0
ONBOOT=yes
IPADDR=192.168.1.3
NETMASK=255.255.255.0
GATEWAY=192.168.1.1
BRIDGE=br0
  1. 创建/etc/sysconfig/network-scripts/ifcfg-br0 配置文件并添加内容:
DEVICE="br0"
BOOTPROTO="static"
IPV6INIT="yes"
IPV6_AUTOCONF="yes"
ONBOOT="yes"
TYPE="Bridge"
DELAY="0"
IPADDR=192.168.1.4
NETMASK=255.255.255.0
GATEWAY=192.168.1.1
  1. 启用网络转发,在/etc/sysctl.conf中添加一行:
    net.ipv4.ip_forward = 1
    然后 sysctl -p 生效。

  2. 重启NetworkManager服务

# systemctl restart NetworkManager

确认br0正常:

[root@bogon network-scripts]# ifconfig br0
br0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.1.4  netmask 255.255.255.0  broadcast 192.168.1.255
        inet6 fe80::2e0:81ff:fee6:dff2  prefixlen 64  scopeid 0x20<link>
        inet6 2408:8207:607a:9b20:2e0:81ff:fee6:dff2  prefixlen 64  scopeid 0x0<global>
        ether 00:e0:81:e6:df:f2  txqueuelen 1000  (Ethernet)
        RX packets 669559  bytes 4925999496 (4.5 GiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 608637  bytes 247072650 (235.6 MiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

Part2:

使用virt-install创建vm1,安装OEL7.9系统:

virt-install \
--network bridge:br0 \
--name vm1 \
--ram=2048 \
--vcpus=2 \
--disk path=/flash/vm-images/vm1.img,size=10 \
--graphics vnc \
--cdrom /flash/ISO/OracleLinux-R7-U9-Server-x86_64-dvd.iso

这里遇到问题:

[root@bogon vm-images]# virsh console vm1
连接到域 vm1
换码符为 ^]

卡住不动,这个问题解决容易,网上搜索就有解决方案,需要对vm1的系统做些配置,可是目前最大的问题是根本进不去vm1额。。
只能另辟蹊径,找到其他进入vm1的方法:
既然命令行不行,那就尝试图形方式。
所以我在Mac的XQuartz的终端跳转到工作站,然后使用virt-manager图形进入vm1进行安装配置,顺便把IP地址配置好,比如就设置为192.168.1.5吧。
注意:如果之前没有安装virt-manager,可以在宿主机上yum安装这些GUI Tools:

# yum install virt-manager virt-viewer

此时,在Mac上测试,使用ssh连接到vm1的IP地址已经OK,所有操作都可以做了。

Reference:

  • KVM Virtualization in RHEL 7 Made Easy