Debian-Node1、Debian-Node2、Debian-Node3),每个虚拟机的配置建议如下:
集群通信依赖稳定的网络,需为每个虚拟机配置多网卡(至少2块):
eth0),用于虚拟机与宿主机、外部网络通信;DebianCluster),用于虚拟机之间私有通信。/etc/network/interfaces,若使用NetworkManager可改用nmcli):sudo nano /etc/network/interfaces
Debian-Node1为例):auto lo
iface lo inet loopback
# 桥接网卡(对外通信)
auto eth0
iface eth0 inet static
address 192.168.1.101
netmask 255.255.255.0
gateway 192.168.1.1
dns-nameservers 8.8.8.8 114.114.114.114
# 仅主机适配器(集群内部通信)
auto eth1
iface eth1 inet static
address 192.168.100.101
netmask 255.255.255.0
sudo systemctl restart networking
ip addr,确认两个网卡均已分配正确IP;ping 192.168.1.1,宿主机IP);ping 192.168.100.102,其他节点的仅主机IP)。为简化后续管理,可将第一个节点的系统配置(如/etc/apt/sources.list、/etc/ssh/sshd_config)复制到其他节点:
tar -czvf debian-config.tar.gz /etc/apt/sources.list /etc/ssh/sshd_config
scp debian-config.tar.gz user@192.168.100.102:/tmp/
ssh user@192.168.100.102
sudo tar -xzvf /tmp/debian-config.tar.gz -C /
根据集群用途(如Web集群、数据库集群、分布式存储),安装对应软件:
sudo apt update
sudo apt install openssh-server
ssh-keygen -t rsa # 生成密钥对(默认路径~/.ssh/id_rsa)
ssh-copy-id user@192.168.100.102 # 复制公钥到其他节点
wget https://dl.min.io/server/minio/release/linux-amd64/minio
chmod +x minio
sudo mv minio /usr/local/bin/
mkdir -p /data/export1 /data/export2
# 配置MinIO启动脚本(参考搜索结果中的start.sh示例)
sudo apt install mysql-server
# 配置my.cnf文件(设置server_id、group_replication相关参数)
Debian-Node1执行ssh user@192.168.100.102,无需密码即可登录;http://192.168.1.101:9000(NAT网卡的IP),通过控制台上传/下载文件;VBoxManage internalcommands sethduuid <vdi文件路径>重置UUID,避免启动错误。通过以上步骤,即可在VirtualBox中搭建一个基础的Debian虚拟机集群,满足分布式系统的测试或学习需求。