Hadoop从入门到入土(第四天)

本文详细介绍了如何配置完全分布式运行模式,包括准备多台服务器、安装JDK和Hadoop、配置环境变量及集群,以及通过ssh进行单点启动和群起测试。同时,讲解了ssh无密登陆的配置步骤,包括ssh的基本使用和无密钥设置。此外,还分享了一个实用的集群分发脚本xsync,用于在多台服务器间高效同步文件。xsync利用rsync和scp命令,实现了循环复制到所有节点的功能。
摘要由CSDN通过智能技术生成

目录

 

一、完全分布式运行模式(开发重点)

1)分析

2)编写集群分发脚本xsync

二、ssh无密登陆配置

        1.配置ssh

        2.无密钥设置


 

一、完全分布式运行模式(开发重点)

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 文件夹名 (新建文件夹)

今日份学习笔记:

e1b502cbff2c46709e827f42ea800d8b.png

 3e037c3346b8445f8cb77db01fcf7d47.png

 

                

 

 

 

 

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值