Hadoop初始配置

本文章基于尚硅谷Hadoop 3.x视频进行总结,仅作为学习交流使用        视频链接如下:20_尚硅谷_Hadoop_入门_IP和主机名称配置_哔哩哔哩_bilibili

目录

第一部分.IP和主机名称配置

1.VM网络配置

2.Windows网络配置

3.虚拟机网络配置       

4.主机名称配置       

5.主机名称映射配置

6.reboot 

第二部分.Xshell远程访问工具

1.主机名称映射配置

2.配置Xshell远程访问工具

第三部分.准备模板虚拟机

1.安装epel-release

2.关闭防火墙

3.配置atguigu用户具有root权限 

4.在/opt目录下创建文件夹,并修改所属主和所属组

 5.卸载虚拟机自带的JDK

6.reboot 

第四部分.克隆三台虚拟机

1.利用模板机hadoop100,克隆三台虚拟机:hadoop102 hadoop103 hadoop104

 2.修改克隆机ip地址和主机名称

3.配置Xshell远程登录工具 

第五部分.JDK安装

1.用XShell传输工具将JDK和Hadoop导入到opt目录下面的software文件夹下面

2.安装JDK

3.配置JDK环境变量

第六部分.Hadoop安装 

1.安装Hadoop

2.将Hadoop添加到环境变量


第一部分.IP和主机名称配置

1.VM网络配置

2.Windows网络配置

3.虚拟机网络配置       

4.主机名称配置       

5.主机名称映射配置

192.168.10.100 hadoop100

192.168.10.101 hadoop101

192.168.10.102 hadoop102

192.168.10.103 hadoop103

192.168.10.104 hadoop104

192.168.10.105 hadoop105

192.168.10.106 hadoop106

192.168.10.107 hadoop107

192.168.10.108 hadoop108

6.reboot 

第二部分.Xshell远程访问工具

1.主机名称映射配置

C:\Windows\System32\drivers\etc

如果操作系统是window10,先拷贝出来,修改保存以后,再覆盖即可 

2.配置Xshell远程访问工具

第三部分.准备模板虚拟机

1.安装epel-release

[root@hadoop100 ~]# yum install -y epel-release

2.关闭防火墙

[root@hadoop100 ~]# systemctl stop firewalld

[root@hadoop100 ~]# systemctl disable firewalld.service

3.配置atguigu用户具有root权限 

[root@hadoop100 ~]# vim /etc/sudoers

## Allow root to run any commands anywhere

root    ALL=(ALL)     ALL

## Allows people in group wheel to run all commands

%wheel  ALL=(ALL)       ALL

atguigu   ALL=(ALL)     NOPASSWD:ALL

4.在/opt目录下创建文件夹,并修改所属主和所属组

[root@hadoop100 ~]# mkdir /opt/module

[root@hadoop100 ~]# mkdir /opt/software

[root@hadoop100 ~]# chown atguigu:atguigu /opt/module

[root@hadoop100 ~]# chown atguigu:atguigu /opt/software

 5.卸载虚拟机自带的JDK

[root@hadoop100 ~]# rpm -qa | grep -i java | xargs -n1 rpm -e --nodeps

6.reboot 

第四部分.克隆三台虚拟机

1.利用模板机hadoop100,克隆三台虚拟机:hadoop102 hadoop103 hadoop104

注意:克隆时,要先关闭hadoop100

 2.修改克隆机ip地址和主机名称

[root@hadoop100 ~]# vim /etc/sysconfig/network-scripts/ifcfg-ens33 
[root@hadoop100 ~]# vim /etc/hostname 

[root@hadoop100 ~]# reboot

3.配置Xshell远程登录工具 

第五部分.JDK安装

1.XShell传输工具将JDK和Hadoop导入到opt目录下面的software文件夹下面

2.安装JDK

[atguigu@hadoop102 software]$ tar -zxvf jdk-8u341-linux-x64.tar.gz -C /opt/module/

3.配置JDK环境变量

新建/etc/profile.d/my_env.sh文件

[atguigu@hadoop102 ~]$ sudo vim /etc/profile.d/my_env.sh

添加如下内容

#JAVA_HOME

export JAVA_HOME=/opt/module/jdk1.8.0_212

export PATH=$PATH:$JAVA_HOME/bin

source一下/etc/profile文件,让新的环境变量PATH生效

[atguigu@hadoop102 ~]$ source /etc/profile

第六部分.Hadoop安装 

1.安装Hadoop

[atguigu@hadoop102 software]$ tar -zxvf hadoop-3.3.4.tar.gz -C /opt/module/

2.将Hadoop添加到环境变量

打开/etc/profile.d/my_env.sh文件

[atguigu@hadoop102 hadoop-3.1.3]$ sudo vim /etc/profile.d/my_env.sh

在my_env.sh文件末尾添加如下内容:

#HADOOP_HOME

export HADOOP_HOME=/opt/module/hadoop-3.3.4

export PATH=$PATH:$HADOOP_HOME/bin

export PATH=$PATH:$HADOOP_HOME/sbin

让修改后的文件生效

[atguigu@hadoop102 hadoop-3.1.3]$ source /etc/profile

第七部分.本地运行模式

1.创建在hadoop-3.3.4文件下面创建一个wcinput文件夹

[atguigu@hadoop102 hadoop-3.3.4]$ mkdir wcinput

2.在wcinput文件下创建一个word.txt文件

[atguigu@hadoop102 wcinput]$ vim word.txt

编辑word.txt文件

hadoop yarn

hadoop mapreduce

atguigu

atguigu

3.执行程序

[atguigu@hadoop102 hadoop-3.3.4]$ hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-3.3.4.jar wordcount wcinput/ wcoutput/

查看结果

[atguigu@hadoop102 hadoop-3.3.4]$ cat wcoutput/part-r-00000

看到如下结果:

atguigu    2
hadoop    2
mapreduce    1
yarn    1

第八部分.集群分发脚本配置

1.在/home/atguigu/bin目录下创建xsync文件

[atguigu@hadoop102 opt]$ cd /home/atguigu

[atguigu@hadoop102 ~]$ mkdir bin

[atguigu@hadoop102 ~]$ cd bin

[atguigu@hadoop102 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

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

[atguigu@hadoop102 bin]$ chmod 777 xsync

3.分发bin目录

[atguigu@hadoop102 ~]$ xsync bin 

4.将脚本复制到/bin中,以便全局调用

[atguigu@hadoop102 bin]$ sudo cp xsync /bin/

5.同步环境变量配置(root所有者)

[atguigu@hadoop102 ~]$ sudo ./bin/xsync /etc/profile.d/my_env.sh

注意:如果用了sudo,那么xsync一定要给它的路径补全。

让环境变量生效

[atguigu@hadoop103 bin]$ source /etc/profile

[atguigu@hadoop104 opt]$ source /etc/profile

第九部分.ssh免密登录

1.生成公钥和私钥

[atguigu@hadoop102 .ssh]$ pwd /home/atguigu/.ssh

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

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

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

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

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

3.传输/opt/module下的文件

[atguigu@hadoop102 module]$ xsync /opt/module/*

 4.配置root用户的免密登录

你可能感兴趣的:(Hadoop,大数据,分布式,hadoop,hdfs)