Hadoop部署常用的小脚本

运维 系统运维 Hadoop
最近抛弃非ssh连接的Hadoop集群部署方式了,还是回到了用ssh key 验证的方式上了。这里面就有些麻烦,每台机器都要上传公钥。恰恰我又是个很懒的人,所以写几个小脚本完成,只要在一台机器上面就可以做公钥的分发了。

最近抛弃非ssh连接的Hadoop集群部署方式了,还是回到了用ssh key 验证的方式上了。这里面就有些麻烦,每台机器都要上传公钥。恰恰我又是个很懒的人,所以写几个小脚本完成,只要在一台机器上面就可以做公钥的分发了。

[[110131]]

首先是生成ssh key脚本:

  1. #!/bin/sh 
  2. ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa 
  3. cp ~/.ssh/id_rsa.pub ~/.ssh/authorized_keys 

ssh-keygen一般来说需要输入passphrase,但是一般都是三个回车过去了,我懒的输入,加上-P ''就不用了。

然后是添加公钥到从节点的脚本:

  1. #!/bin/sh 
  2. read -p "输入远端服务器IP: " ip 
  3. ssh-copy-id -o StrictHostKeyChecking=no -i ~/.ssh/id_rsa.pub root@$ip 
  4. ssh root@$ip 'sed -i "s/^#RSAAuthentication\ yes/RSAAuthentication\ yes/g" /etc/ssh/sshd_config' 
  5. ssh root@$ip 'sed -i "s/^#PubkeyAuthentication\ yes/PubkeyAuthentication yes/g" /etc/ssh/sshd_config' 
  6. ssh root@$ip 'sed -i "s/^#PermitRootLogin\ yes/PermitRootLogin\ yes/g" /etc/ssh/sshd_config' 
  7. ssh root@$ip 'service sshd restart' 
  8. hostname=`ssh root@${ip} 'hostname'` 
  9. echo "添加主机名和IP到本地/etc/hosts文件中" 
  10. echo "$ip    $hostname" >> /etc/hosts 
  11. echo "远端主机主机名称为$hostname, 请查看 /etc/hosts 确保该主机名和IP添加到主机列表文件中" 
  12. echo "主机公钥复制完成" 

然后是第三个脚本读取主机列表然后把/etc/hosts复制到所有主机上

  1. #!/bin/sh 
  2. cat /etc/hosts | while read LINE 
  3. do 
  4.     ip=`echo $LINE | awk '{print $1}' | grep -v "::" | grep -v "127.0.0.1"` 
  5.     echo "Copying /etc/hosts to ${ip}" 
  6.     scp -o StrictHostKeyChecking=no /etc/hosts root@${ip}:/etc/ 
  7. done 
责任编辑:黄丹 来源: 51TCO博客
相关推荐

2013-07-11 13:39:23

Hadoop

2020-12-17 09:20:44

Python自动扫雷脚本

2016-12-20 16:47:25

Hadoop部署脚本

2023-05-04 09:51:07

ChatGPTAI

2015-03-24 15:08:21

mapreducehadoop

2010-10-13 09:45:50

Linux监控脚本

2013-09-04 09:59:49

监控 Shell 脚本

2013-08-30 10:25:22

Shell主机监控

2023-11-07 07:30:18

Hadoop高可用

2012-06-26 15:13:50

Hadoop数据架构

2013-04-18 14:54:08

Linux监控脚本Linux监控

2009-09-02 08:54:01

Windows 7VHD部署

2021-10-12 09:20:02

数据库SQL脚本

2019-11-13 08:31:43

Oracle数据库脚本

2010-06-03 10:51:09

Hadoop安装部署

2010-06-03 11:01:32

Hadoop安装部署

2012-02-20 23:02:15

Linux

2010-03-26 15:28:05

Python编写

2014-07-29 10:38:25

大数据Hadoop

2022-10-13 08:43:24

大数据语法SQL
点赞
收藏

51CTO技术栈公众号