码迷,mamicode.com
首页 > 其他好文 > 详细

大数据实战(六十八):电商数仓(五十二)Cloudera Manager(三)CM部署准备

时间:2020-09-07 18:57:02      阅读:43      评论:0      收藏:0      [点我收藏+]

标签:退出   dirname   集群   直接   rsa   实战   syn   whoami   who   

1 连接阿里云服务器

打开远程连接工具进行配置,这里以CRT为例。

1)新建一个session

技术图片

 

 

 

2)填写hostname(填写公网ip)

技术图片

 

 

 技术图片

 

2 修改hosts文件

[root@hadoop001 ~]# vim /etc/hosts
127.0.0.1 localhost  localhost
::1     localhost       localhost.localdomain   localhost6      localhost6.localdomain6
172.17.138.24 hadoop102 hadoop102
172.17.138.25 hadoop103 hadoop103
172.17.138.23 hadoop104 hadoop104

3 SSH免密登录

配置hadoop102hadoop102hadoop103hadoop104三台服务器免密登录。CDH服务开启与关闭是通过serveragent来完成的,所以这里不需要配置SSH免密登录,但是为了我们分发文件方便,在这里我们也配置SSH

1)生成公钥和私钥:

 

[root@hadoop102 .ssh]$ ssh-keygen -t rsa

然后敲(三个回车),就会生成两个文件id_rsa(私钥)、id_rsa.pub(公钥)

2)将公钥拷贝到要免密登录的目标机器上

[root@hadoop102 .ssh]$ ssh-copy-id hadoop102

[root@hadoop102 .ssh]$ ssh-copy-id hadoop103

[root@hadoop102 .ssh]$ ssh-copy-id hadoop104

3重复12操作,配置hadoop103hadoop102hadoop103hadoop104三台服务器免密登录。

 

集群同步脚本

 

1)在/root目录下创建bin目录,并在bin目录下创建文件xsync,文件内容如下:

 

[root@hadoop102 ~]$ mkdir bin

 

[root@hadoop102 ~]$ cd bin/

 

[root@hadoop102 bin]$ vi xsync

 

该文件中编写如代码

 

#!/bin/bash
#1 获取输入参数个数,如果没有参数,直接退出
pcount=$#
if((pcount==0)); then
echo no args;
exit;
fi

#2 获取文件名称
p1=$1
fname=`basename $p1`
echo fname=$fname

#3 获取上级目录到绝对路径
pdir=`cd -P $(dirname $p1); pwd`
echo pdir=$pdir

#4 获取当前用户名称
user=`whoami`

#5 循环
for((host=103; host<105; host++)); do
        echo ------------------- hadoop$host --------------
        rsync -av $pdir/$fname $user@hadoop$host:$pdir
done

 

2)修改脚本 xsync 具有执行权限

[root@hadoop102 bin]$ chmod 777 xsync

集群整体操作脚本

1)在/root/bin目录下创建脚本xcall.sh

[root@hadoop102 bin]$ vim xcall.sh

2)在脚本中编写如下内容

#! /bin/bash

for i in hadoop102 hadoop103 hadoop104
do
        echo --------- $i ----------
        ssh $i "source /etc/profile ; $*"
done

3)修改脚本执行权限

[root@hadoop102 bin]$ chmod +x xcall.sh

4)测试

[root@hadoop102 bin]# xcall.sh jps

6 集群进程脚本

1)在/root/bin目录下创建脚本jpsall.sh

[root@hadoop102 bin]$ vim jpsall.sh

2)在脚本中编写如下内容

#!/bin/bash
for i in hadoop202 hadoop203 hadoop204
do
echo ===================== $i =====================
ssh $i "source /etc/profile && jps $@ | grep -v Jps"
done

3)修改脚本执行权限

[root@hadoop102 bin]$ chmod 777 jpsall.sh

4)测试

[root@hadoop102 bin]# jpsall

 

 

 

大数据实战(六十八):电商数仓(五十二)Cloudera Manager(三)CM部署准备

标签:退出   dirname   集群   直接   rsa   实战   syn   whoami   who   

原文地址:https://www.cnblogs.com/qiu-hua/p/13573883.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!