PVE上创建虚拟机

一、下载待安装的操作系统ISO文件

image-20260210144846306

二、在创建虚拟机前需要创建一个桥接网卡,并设置IP

图中使用了10.11.11.1/24,即IP为10.11.11.1,网段为10.11.11.0/24

这个IP后续要做为其它虚拟机的默认网关。

image-20260210144406269

三、创建虚拟机

image-20260210144933465

image-20260210145101551

image-20260210145126395

image-20260210145156464

四、启动、安装操作系统(这个大家都很熟悉吧,不细讲了)

五、重启进入SHELL,配置网卡

以我使用的Rocky Linux 10.1 为例。

new-hostname 替换成你将使用的机器名;

10.11.11.100为本机的IP,请以实例IP规划为准。

1
2
3
4
5
6
7
8
hostnamectl set-hostname new-hostname
echo '127.0.0.1 new-hostname' >> /etc/hosts
nmcli d
nmcli connection modify ens18 IPv4.address 10.11.11.100/24
nmcli connection modify ens18 IPv4.gateway 10.11.11.1
nmcli connection modify ens18 IPv4.dns "223.5.5.5 202.96.209.133"
nmcli connection modify ens18 IPv4.method manual
nmcli connection up ens18

配置好后,可在物理机上使用 ssh root@10.11.11.100 连接到虚拟机。

六、此时你在虚拟机上 ping www.baidu.com会是不通的,因为10.11.11.1对应的机器(物理机)没有转发IP数据包的功能

七、配置默认网关,让虚拟机有上网的能力

在裸金额物理机上:

  1. 开启数据包转发
  • 临时开启: 执行命令 echo 1 > /proc/sys/net/ipv4/ip_forward

  • 永久开启:修改 /etc/sysctl.conf 文件,设置 net.ipv4.ip_forward = 1,执行 sysctl -p生效

  1. 开启SNAT

eth0为实际公网IP的网卡名,请以实际网卡名替换。

1
iptables -t nat -A POSTROUTING -s 10.11.11.0/24 -o eth0 -j MASQUERADE

此命令主要完成SNAT,即改变数据库里的源IP为公网IP,发向互联网(毕竟10.x.x.x为私网IP,互联网不认)。

互联网回传数据包时,会找到之前的映射记录,转回原来做SNAT的局域网机器。

iptables的规则是存放于内存的,如何持久化请查看《iptables规则持久化》博文。

八、回到虚拟机,再执行 ping www.baidu.com,就通了

image-20260210150459234

后面再按步骤创建其它虚拟机即可,按需搭建自己所需的集群。