1. 配置主机名[1]
3台主机各执行一次
hostnamectl set-hostname master
//master、node1、node2
现在有3台机器
master | node2 | node3 |
---|---|---|
192.168.206.201 | 192.168.206.202 | 192.168.206.203 |
2. SSH免密登陆[2]
-
($后代表命令)
- vim 编辑/etc/hosts, 先清空所有内容( 可以用快捷键dd删除 ),加入7个节点的ip以及主机名:
192.168.206.201 master 192.168.206.202 node1 192.168.206.203 node2
- 使用 scp命令拷贝免密登陆文件
首先,编辑/etc/ssh/ssh_config,去掉以下选项的注释RSAAuthentication yes PubkeyAuthentication yes
保存后使用scp拷贝到2-7 node机器上,按提示输入yes和密码
$ vim scp_file.sh
#/bin/bash
if [ -n "$1" ]; then
echo "scp dir $1"
for a in {1..2}
do
scp $1 node$a:$1
done
else
echo "Usage: scp_file [filename]"
fi
$ chmod o+x scp_file.sh
$./scp_file.sh /etc/ssh/ssh_config
scp_file.png
/etc/hosts同样拷贝
$ ./scp_file.sh /etc/hosts
- 在集群的都需要输入命令 ssh-keygen -t rsa -P '',生成 key,提示出来按全部都按回车键
ssh-keygen.png
- 将各个节点的秘钥写入master的authorized_keys文件中,master上执行
$ vim ops_command.sh
#/bin/bash
if [ -n "$1" ]; then
echo "exe command $1"
for a in {1..2}
do
ssh root@node$a $1
done
else
echo "Usage: ops_command [command]"
fi
---------------------------------------------------------------------
$ vim auth_write.sh
#/bin/bash
for a in {1..2}
do
ssh root@node$a cat /root/.ssh/id_rsa.pub >> /root/.ssh/authorized_keys
done
--------------------------------------------------------------------------------
$ chmod o+x ops_command.sh
$ chmod o+x auth_write.sh
$ ./auth_write.sh
$ ./scp_file.sh /root/.ssh/authorized_keys
$ systemctl restart sshd
$ ./ops_command.sh 'systemctl restart sshd'
- 测试
//node1上执行
ssh root@node2
//各个机器上都可以试试
//第一次登陆会有一个yes的提示,正常现象
网友评论