KVM简介: KVM,是Keyboard Video Mouse的缩写,KVM 通过直接连接键盘、视频和鼠标 (KVM) 端口,能够访问和控制计算机。KVM 技术无需目标服务器修改软件。这就意味着可以在BIOS环境下,随时访问目标计算机。KVM
提供真正的主板级别访问,并支持多平台服务器和串行设备。KVM 技术已经从最初的基础SOHO办公型,发展成为企业 IT
基础机房设施管理系统。可以从kvm 客户端管理软件轻松的直接访问位于多个远程位置的服务器和设备。KVM over IP
解决方案具备完善的多地点故障转移功能、符合新服务器管理标准 (IPMI) 的直接界面,以及将本地存储媒体映射至远程位置的功能
文章目录
- 一、安装kvm
- 二、centos7 为kvm配置桥接网络
- 三、debian 为kvm创建桥接网络
- 四、XML 配置文件创建桥接网络
一、安装kvm
安装KVM(Kernel-based Virtual Machine)在CentOS 7上通常需要执行以下步骤:
1.检查虚拟化支持:
egrep -c '(vmx|svm)' /proc/cpuinfo
如果输出为1或更多,则表示虚拟化功能已启用。
2.检查模块加载,CPU虚拟化可用性
lsmod | grep kvm
2.安装KVM和相关组件:
sudo yum install qemu-kvm libvirt libvirt-python virt-install libguestfs-tools
3.kvm 安装图形化界面
KVM默认是通过命令行管理的,但你可以使用图形化界面工具来更方便地管理虚拟机。一个常用的图形化工具是virt-manager,它提供了一个基于GTK的用户界面,允许你创建、编辑和管理虚拟机。
yum install virt-manager
4.启动libvirtd服务
systemctl start libvirtd
systemctl enable libvirtd
5.创建iso目录,rz上传iso镜像
mkdir /root/iso
cd /root/is
ll 查看
6.使用virt-manager在图形界面创建虚拟机
打开终端并运行以下命令启动virt-manager:
virt-manager
点击文件
文件 > 新建虚拟机 > 前进 > 浏览 > 本地浏览 > 选择镜像 > 前进 > 前进 > 完成
二、centos7 为kvm配置桥接网络
1.安装必要的软件
确保系统上已安装bridge-utils,这是用于创建和管理网络桥接的工具。
yum install bridge-utils
2.编辑网络配置文件
cp /etc/sysconfig/network-scripts/ifcfg-enp8s0 /etc/sysconfig/network-scripts/ifcfg-enp8s0.bak
将文件修改为类似以下的内容,将原始配置文件转移到桥接设备上:
TYPE=Ethernet
DEVICE=enp8s0
ONBOOT=yes
BRIDGE=br0
BRIDGE=br0这表示与这个配置文件关联的网络接口(如物理网卡 enp8s0)将会被桥接到一个名为 br0 的网络桥上。
3.创建一个新的桥接配置文件
vim /etc/sysconfig/network-scripts/ifcfg-br0
编辑/etc/sysconfig/network-scripts/ifcfg-br0,确保包含以下内容
TYPE=Bridge
DEVICE=br0
BOOTPROTO=static
ONBOOT=yes
IPADDR=<桥接IP地址>
NETMASK=<子网掩码>
GATEWAY=<网关地址>
4.重启网络服务
systemctl restart network
至此,kvm的虚拟机已经可以使用桥接网络
三、debian 为kvm创建桥接网络
1.安装Bridge-utils:
确保你的系统已安装bridge-utils包,这个包包含了创建和管理网络桥接所需的工具。
sudo apt-get install bridge-utils
2.编辑网络配置文件:
打开网络配置文件以编辑,文件路径通常是/etc/network/interfaces。
vim /etc/network/interfaces
将文件修改为类似以下的内容:
# The primary network interface
auto enp0s3 # 根据实际情况替换为你的物理网卡接口
iface enp0s3 inet manual
auto br0
iface br0 inet static
address 192.168.20.10 # 桥接的IP地址
netmask 255.255.255.0 # 子网掩码
gateway 192.168.20.1 # 网关地址
bridge_ports enp0s3 # 指定物理网卡接口
bridge_stp off # 禁用Spanning Tree Protocol
bridge_fd 0 # 不使用桥接设备的转发延迟
bridge_maxwait 0 # 桥接设备启动的等待时间
注意:将上述配置中的enp0s3替换为你实际的物理网卡接口,并根据你的网络环境调整IP地址、子网掩码和网关等参数。
3.重启网络服务:
应用更改并重启网络服务。
sudo systemctl restart networking
四、XML 配置文件创建桥接网络
1.创建桥接网络 XML 文件
vim br0.xml
<network>
<name>br0</name>
<forward mode="bridge"/>
<bridge name="br0"/>
<virtualport type="openvswitch"/>
<portgroup name="br0-port"/>
<ip address="192.168.20.1" netmask="255.255.255.0">
<dhcp>
<range start="192.168.20.2" end="192.168.20.254"/>
</dhcp>
<route address="0.0.0.0" prefix="0" gateway="192.168.20.254"/>
</ip>
</network>
参数解释:
<name>br0</name>:
作用: 定义桥接网络的名称。
意义: 为桥接网络分配一个唯一的标识符,方便管理和区分不同的网络。
<forward mode="bridge"/>:
作用: 定义桥接模式,允许数据通过桥接网络进行传输。
意义: 指定网络的传输模式,这里是使用桥接模式。
<bridge name="br0"/>:
作用: 指定桥接设备的名称。
意义: 指定用于连接虚拟机和物理网络的桥接设备的名称。
# 这一行是用来指定桥接网络所使用的物理网卡的关键参数。
# 确保 br0 是你系统中已存在的物理网卡的名称,并根据需要进行调整。
#
<virtualport type="openvswitch"/>:
作用: 指定虚拟端口的类型。
意义: 定义桥接网络使用的虚拟端口类型,这里是Open vSwitch。
<portgroup name="br0-port"/>:
作用: 定义端口组的名称。
意义: 为桥接网络中的虚拟机组分配一个标识符,用于标识虚拟机连接到的特定网络。
<ip address="192.168.20.1" netmask="255.255.255.0">:
作用: 定义桥接设备的IP地址和子网掩码。
意义: 指定桥接设备的网络配置,使其成为具有特定IP地址的网络节点。
<dhcp>:
作用: 定义DHCP配置。
意义: 允许虚拟机通过DHCP协议自动获取IP地址,方便动态分配。
<range start="192.168.20.2" end="192.168.20.254"/>:
作用: 定义DHCP分配的IP地址范围。
意义: 指定DHCP服务器可以分配的IP地址范围,确保这个范围不会与其他设备冲突。
<route address="0.0.0.0" prefix="0" gateway="192.168.20.254"/>:
作用: 定义默认路由。
意义: 指定桥接网络上的默认路由,用于指示数据包离开桥接网络时的下一跳网关。这里的 address="0.0.0.0" 表示默认路由,gateway="192.168.20.254" 是默认路由的网关地址。
2.使用 virsh net-define 命令定义网络:
virsh net-define bridge-network.xml
3.使用 virsh net-start 命令启动网络:
virsh net-start bridge-network
4.使用 virsh net-autostart 命令设置网络自动启动
virsh net-autostart bridge-network
5.查看网络状态
virsh net-list