首页 > 大数据 > Hadoop > 写几个Hadoop部署用到的小脚本
迩来丢弃非ssh毗连的hadoop集群摆设体式花式了,借是回到了用ssh key
验证的体式花式上了。这里里就有些麻烦,每台机器都要上传公钥。恰好我又是个很懒的人,所以写几个小剧本完成,只要正在一台机器上里就可以做公钥的分发了。
尾先是生成ssh key剧本
#!/bin/sh ssh-keygen -t rsa -P "" -f ~/.ssh/id_rsa cp ~/.ssh/id_rsa.pub ~/.ssh/authorized_keys
ssh-keygen一般来讲需求输进passphrase,可是一般都是三个回车过来了,我懒的输进,加上-P ""就不消了。
然后是增加公钥到从节面的剧本
#!/bin/sh
read -p "输进近端管事器IP: " ip
ssh-copy-id -o StrictHostKeyChecking=no -i ~/.ssh/id_rsa.pub root@$ip
ssh root@$ip "sed -i "s/^#RSAAuthentication yes/RSAAuthentication yes/g" /etc/ssh/sshd_config"
ssh root@$ip "sed -i "s/^#PubkeyAuthentication yes/PubkeyAuthentication yes/g" /etc/ssh/sshd_config"
ssh root@$ip "sed -i "s/^#PermitRootLogin yes/PermitRootLogin yes/g" /etc/ssh/sshd_config"
ssh root@$ip "service sshd restart"
hostname=`ssh root@${ip} "hostname"`
echo "增加主机名和IP到本地/etc/hosts文件中"
echo "$ip $hostname" >> /etc/hosts
echo "近端主机主机称号为$hostname, 请查看 /etc/hosts 确保该主机名和IP增加到主机列表文件中"
echo "主机公钥复制完成"
然后是第三个剧本读与主机列表然后把/etc/hosts复制到十足主机上
#!/bin/sh
cat /etc/hosts | while read LINE
do
ip=`echo $LINE | awk "{print $1}" | grep -v "::" | grep -v "127.0.0.1"`
echo "Copying /etc/hosts to ${ip}"
scp -o StrictHostKeyChecking=no /etc/hosts root@${ip}:/etc/
done
不注释了
本文出自 “真践检建真谛” 博客,回尽转载!
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/243237/viewspace-1119766/ ,如需转载,请注明出处,否则将追究法律责任。