Hadoop从入门到入土(第四天)
Posted 南城守护
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Hadoop从入门到入土(第四天)相关的知识,希望对你有一定的参考价值。
目录
一、完全分布式运行模式(开发重点)
1)分析
1.准备3台客户机(关闭防火墙、静态IP、主机名称)
2.安装JDK
3.配置环境变量
4.安装Hadoop
5.配置集群
6.单点启动
7.配置ssh
9.群起并测试集群
2)编写集群分发脚本xsync
a、scpcsecure copoy安全拷贝
1.scp定义:scp可以实现服务器与服务器之间得数据拷贝。
2.基本语法:
scp -r $sdir/$fname $user@$host $pdir/$fname
命令 递归 要拷贝的文件路径/名称 目的用户@主机名:路径
hadoop102:cd /opt/module>scp -r 文件名/ 目的地用户名@主机名:路径(/opt/module)>yes>输入密码(推送数据到103)
hadoop103:cd /opt/module>scp -r 对方的用户名@主机名(102):对方文件所在的路径(/opt/module/hadoop-3.1.3) 目标地址 ./(从102拉数据到103)
hadoop104:cd /opt/module>scp -r 文件所在服务器的用户名@主机名:文件夹所在的路径/* 目标服务器的用户名@主机名:/路径(在103服务器上把102的文件拷贝在104)
b、rsync远程同步工具
rsync主要用于备份和镜像。具有速度快,避免复制相同内容和支持符号连接的优点。rsync和scp的区别:用rsync做文件的复制要比scp的速度快,rsync只对差异文件做更新。scp是把所有文件都复制过去。
基本语法:
rsync -av $pdir/$fname $user@$host:#pdir/$fname
命令 选项参数 要拷贝的文件路径和名称 目的用户@主机:目的路径/名称
-a 归档拷贝 -v 显示复制过程
rsync -av hadoop-3.1.3/ nancheng@hadoop103:/opt/module/hadoop-3.1.3/
c、xsync集群分发脚本
(1)需求:循环复制到所有节点相同的目录下
(2)需求分析:
1.rsync命令原始拷贝:
rsync -av /opt/module nancheng@hadoop103:/opt/
2.期望脚本:xsync要同步文件的名称
3.期望脚本在任何路径都能使用脚本放在声明了全局环境变量的路径
cd /home/nancheng>touch a.txt(创建一个文件)>mkdir bin>cd bin/>pwd>cd ..>ll>cd bin/>vim xsync(在里面添加如下代码):
#!/bin/bash
#1. 判断参数个数
if [ $# -lt 1 ]
then
echo Not Enough Arguement!
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 文件名(给它可执行权限)> cd ..>ll>xsync bin/(同步bin目录)>sudo ./bin/xsync /etc/profile.d/my_env.sh(分发环境变量)。
103和104:
cd /home/nancheng>ll>sudo vim /etc/profile.d/my_env.sh>ll>source /etc/profile
二、ssh无密登陆配置
1.配置ssh
(1)基本语法:
ssh 对方电脑的IP地址
(2)ssh连接时出现Hostkey verification failed的解决办法。
ssh hadoop103
(3)退回到hadoop102
exit
2.无密钥设置
cd /home/nancheng>ped>ls -al(能够查看到所有的隐藏文件)>cd .ssh/>ssh-keygen -t rsa(按4次回车)>ll>cat 文件名(可以查看密钥的配置)>ssh-copy-id hadoop103(每一台都要配置)
注:vi 文件名(新建文件)
touch 文件名(新建文件)
mkdir 文件夹名 (新建文件夹)
今日份学习笔记:
以上是关于Hadoop从入门到入土(第四天)的主要内容,如果未能解决你的问题,请参考以下文章