hodoop集群搭建之分发脚本以及ssh免密登录

hodoop集群搭建之分发脚本以及ssh免密登录,第1张

hodoop介绍

文章目录
  • hodoop介绍
  • 一、hadoop三种运行模式
  • 二、模式示例
    • 1.本地模式
    • 2.完全分布式模式
      • (1)流程
      • (2)编写集群分发脚本xsync
        • 1.scp安全拷贝
        • 2.rsync远程同步工具
        • 3.集群分发脚本xsync
        • 4.ssh免密登录(切换用户需要再次执行)


一、hadoop三种运行模式

本地模式 :数据存储在linux本地(只是在测试偶尔用)
伪分布式:数据存储在HDFS(一台主机模拟多主机)
完全分布式:数据存储在HDFS(多台服务器工作)企业大量使用

二、模式示例 1.本地模式

在hadoop文件夹下新建

mkdir wcinput
cd wcinput
vim word.txt  //任意写入内容

./wcoutput要是不存在的文件夹,不然会抛出异常

hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-3.3.1.jar wordcount wcinput/ ./wcoutput
cat part-r-00000
2.完全分布式模式 (1)流程
  1. 准备3台客户机(关闭防火墙,静态ip,主机名称)
  2. List item
  3. 安装jdk,hadoop
  4. 配置环境变量
  5. 配置集群
  6. 单点启动
  7. 配置ssh
  8. 群起测试集群
(2)编写集群分发脚本xsync 1.scp安全拷贝
  1. scp定义:
    scp可以实现服务器与服务器之间的数据拷贝
  2. 基本语法:
    scp -r 要拷贝的文件路径/名称 目的地用户名@主机:目的地路径名称
    -r表示递归
    例子:102推送至103 scp -r jdk1.8.0_331/ root@hadoop103:/opt/module/
    103从102拉取:scp -r root@hadoop102:/opt/module/hadoop-3.3.1 ./
    103拷贝102到104:
    scp -r root@hadoop102:/opt/module/* root@hadoop104:/opt/module/
2.rsync远程同步工具

rsync主要用于备份和镜像。具有速度快、避免复制相同内容和支持符号链接的优点
rsync和scp的区别:用rsync做文件的复制要比scp的速度快,rsync只对差异文件做更新。scp是把所有文件都复制过去
(1)基本语法
rsync -av 要拷贝的文件路径/名称 目的地用户名@主机:目的地路径名称
-a 表示归档拷贝
-v 显示复制过程
示例:rsync -av hadoop-3.3.1/ root@hadoop103:/opt/module/

3.集群分发脚本xsync
#!/bin/bash

#1.判断参数个数

if [ $# -lt 1 ]
	then 
		echo not enough argument!
	exit;
fi

#2.便利集群所有机器
for host in hadoop102 hadoop103 hadoop104
do 	
	echo ===========================================$host==========================
	#3.遍历所有目录
	for file in $@
	do 
		#4.判断文件是否存在
		if [ -e $file ]
			then
				#5.获取父目录(软连接的处理)
				pdir=$(cd -P $(dirname $file); pwd)
				
				#6.获取当前文件的名称
				fname=$(basename $file)
				ssh $host "mkdir -p $pdir"
				rsync -av $pdir/$fname $host:$pdir
			else
				echo $file does not exists!
		fi
	done
done	

给权限执行
chmod 777 xsync
拷贝全局可用
sudo cp /home/howey/bin/xsync /bin/
执行示例
xsync a.txt

4.ssh免密登录(切换用户需要再次执行)

生成密钥
ssh-keygen -t rsa
将本地的ssh公钥文件安装到远程主机对应的账户下
ssh-copy-id hadoop103
免密原理:
A服务器:生成密钥对,将A公钥安装到B服务器下,
当Assh访问B时携带经过私钥A加密的数据,B服务器接收到之后,去授权key查找到A的公钥,根据服务器A的公钥进行解密。
返回的数据采用A的公钥进行加密返回给A,A接收返回的数据采用私钥A进行解密。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/736599.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-04-28
下一篇 2022-04-28

发表评论

登录后才能评论

评论列表(0条)

保存