1. 工具下载
- virtualbox
- vagrant
2. 搭建虚拟机集群
-
创建文件夹centos7_cluster
-
使用命令:vagrant init 初始化,会自动生成
Vagrantfile
文件 -
下载centos7镜像 vagrant box add centos/7
-
配置Vagrantfile文件,创建一个3个节点的虚拟机
Vagrant.configure("2") do |config| (1..3).each do |i| config.vm.define "node#{i}" do |node| # 设置虚拟机的Box node.vm.box = "centos/7" # 设置虚拟机的主机名 node.vm.hostname="node#{i}" # 设置虚拟机的IP node.vm.network "private_network", ip: "192.168.56.#{100+i}" # 设置主机与虚拟机的共享目录 # node.vm.synced_folder "~/Documents/vagrant/share", "/home/vagrant/share" # VirtaulBox相关配置 node.vm.provider "virtualbox" do |v| # 设置虚拟机的名称 v.name = "node#{i}" # 设置虚拟机的内存大小 v.memory = 2048 # 设置虚拟机的CPU个数 v.cpus = 1 end end end end
3. 使用虚拟机
- 切换到centos7_cluster目录 执行vagrant up启动3个虚拟机
- vagrant ssh node1 连接node1的虚拟机
- 登录成功的用户非root用户 使用su root切换root用户。 密码为vagrant
- 配置host
在3台机器上执行
vi /etc/hosts
增加如下内容:
192.168.56.101 node1
192.168.56.102 node2
192.168.56.103 node3
- 配置ssh远程root用户登录
vi /etc/ssh/sshd_config
将 PermitRootLogin 状态改为yes,开启root登入
将 PasswordAuthentication no 改为 PasswordAuthentication yes
重启sshd服务 systemctl restart sshd
- 关闭所有虚拟机虚拟机 vagrant halt 如果只关闭指定虚拟机则指定node
- 删除虚拟机 vagrant destroy