美文网首页
离线部署 CDH 5.15.0及使用CDH(2)——ssh免登陆

离线部署 CDH 5.15.0及使用CDH(2)——ssh免登陆

作者: bclz | 来源:发表于2019-08-12 21:01 被阅读0次

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]

  • \color{red}{以下操作如无特殊说明表示在master下执行} ($后代表命令)
    1. vim 编辑/etc/hosts, 先清空所有内容( 可以用快捷键dd删除 ),加入7个节点的ip以及主机名:
    
    192.168.206.201 master
    192.168.206.202 node1
    192.168.206.203 node2
    
  1. 使用 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
  1. 在集群的\color{red}{每一个节点}都需要输入命令 ssh-keygen -t rsa -P '',生成 key,提示出来按全部都按回车键
    ssh-keygen.png
  1. 将各个节点的秘钥写入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'
  1. 测试
//node1上执行
ssh root@node2

//各个机器上都可以试试
//第一次登陆会有一个yes的提示,正常现象

  1. 配置主机名

  2. SSH免密登陆

相关文章

网友评论

      本文标题:离线部署 CDH 5.15.0及使用CDH(2)——ssh免登陆

      本文链接:https://www.haomeiwen.com/subject/rpofjctx.html