在4个虚拟机中安装CentOS集群
这里选择使用VirtualBox的复制功能来完成其他 3 台机器的安装。(复制需要先关闭被复制的机器)
机器分布
hostName ipcentos01 192.168.0.111
centos02 192.168.0.112
centos03 192.168.0.113
centos04 192.168.0.114
1.复制 2.修改每台机器的静态ip
vi /etc/sysconfig/network-scripts/ifcfg-enp0s3
3.修改每台机器的hostName # 手动修改该文件中的主机名 vi /etc/sysconfig/network HOSTNAME=XXXX # 修改 hosts 中的 hostname # 对于 hosts 中的修改,在本次的笔记实践过程中没有发现生成主机名的域名映射,所以可以忽略 vi /etc/hosts 127.0.0.1 localhost # 这个是默认的 127.0.0.1 对应主机名 # 我们主要是修改这个和主机名一致即可修改完所有的机器后,建议都重启,使用新 Xshell 连接复制修改下面的域名地址映射
4.每台机器的 hosts 配置域名地址映射; vi /etc/hosts #每台机器都这样写 192.168.0.111 centos01 192.168.0.112 centos02 192.168.0.113 centos03 192.168.0.114 centos04配置完成之后可以使用 ping 检查是否已经配置好了域名映射,比如在 04 上运行 ping centos01
对于复制的机器网络服务启动不起来,也就是使用 service network restart 命令失败出现该错误 device eth0 does not seem to be present,delaying initializationvim
解决方案:
如图,修改 vi /etc/udev/rules.d/70-persistent-net.rules 中的内容与桥接网卡的 mac 地址一致即可
配置4台CentOS为ssh免密码互相通信 # 生成秘钥,命令中一直回车即可 ssh-keygen -t rsa # 进入秘钥文件目录 cd /root/.ssh/ # 让自己本机使用 ssh 免密,把 pub 中的内容复制到 authorized_keys 文件中 cp id_rsa.pub authorized_keys # 可使用 ssh 命令连接本机 hostname,提示输入 yes 即可登录 ssh centos01 # 退出 ssh 登录的终端 exit方法一:把自己的公钥 copy 到要指定机器的 authorized_keys 文件中, 也就是说,你想要免密登录那一台机器就把自己的公钥写入 authorized_keys 文件夹中
# 命令语法如下,在执行该命令的时候需要输入指定机器的密码 ssh-copy-id -i hostname # 比如,在centos01机器上,输入 ssh-copy-id -i centos02 ssh-copy-id -i centos03 ssh-copy-id -i centos04 #在centos02机器上,输入 ssh-copy-id -i centos01 ssh-copy-id -i centos03 ssh-copy-id -i centos04 #centos03和04类似方法二:一个小技巧,其他三台机器都使用 ssh-copy-id -i eshop-cache01 把公钥集中到一台机器上,这样 authorized_keys 中的文件内容就包含了 4 台机器的公钥,这个时候只需要把该文件内容 copy 到其他 3 台机器覆盖即可,可以使用如下命令来复制
在 centos01 上
cd /root/.ssh scp authorized_keys centos02:/root/.ssh scp authorized_keys centos03:/root/.ssh scp authorized_keys centos04:/root/.ssh 参考