Hadoop之本地模式(保姆级教程)

    科技2022-07-11  105

    hadoop之本地模式(保姆级教程)

    文章目录

    hadoop之本地模式(保姆级教程)环境介绍准备工作①防火墙&selinux②网络配置③域名映射 安装jdk&hadooop①远程连接工具--fianlshell②安装各种工具包③导入安装包④解压安装包⑤配置环境变量 测试官方案例: grep范例: wordcount

    环境介绍

    虚拟机版本 → VMware Workstation16 PRO

    镜像版本 → CentOS-7-x86_64-Minimal-2003

    远程连接工具 → FinalShell 3.6.3

    准备工作

    ①防火墙&selinux

    #--> ①关闭防火墙 [root@localhost ~]# systemctl stop firewalld.service #--> ②设置防火墙开机不自启 [root@localhost ~]# systemctl disable firewalld.service #--> ③查看防火墙状态 [root@localhost ~]# firewall-cmd --state #--> ④查看防火墙是否为开机不自启 [root@localhost ~]# systemctl list-unit-files|grep firewalld.service

    #--> ①关闭selinux [root@localhost ~]# vi /etc/selinux/config ** 在打开的文件中添加这段记录↓ SELINUX=disabled
    ②网络配置

    #--> ①找到网卡的配置文件 [root@localhost ~]# cd /etc/sysconfig/network-scripts/ [root@localhost ~]# ls #②一般来说第一个文件就是你的网卡的配置文件, 因设备不同可能会有所差异, 你的是多少就多少, 这里不要直接照搬我的 #--> ③打开网卡的配置文件 [root@localhost ~]# vi /ifcfg-ens33

    #--> ①在打开的文件中确认以下配置↓, 若有不符请手动更改 BOOTPROTO="static" ONBOOT="yes" #--> ②在打开的文件中添加这段记录↓ IPADDR=192.168.8.101 NETMASK=255.255.255.0 GATEWAY=192.168.8.2 DNS1=8.8.8.8

    #--> ①刷新网络 [root@localhost ~]# service network restart #--> ②查看网络配置情况 [root@localhost ~]# ip addr #--> ③测试网络连通性 [root@localhost ~]# ping www.baidu.com
    ③域名映射

    #--> ①设置你的主机名#--> 主机名与IP地址映射 [root@localhost ~]# vi /etc/sysconfig/network ** ②在打开的文件添加这段记录↓ HOSTNAME=master

    #--> ①主机名与IP地址建立映射关系 [root@localhost ~]# vi /etc/hosts ** ②在打开的文件添加这段记录↓ 192.168.8.101 master

    #--> ①在物理机建立虚拟机IP与虚拟机主机名映射关系 C:/windows/System32/drivers/etc/hosts ** ②在打开的文件添加这段记录↓ 192.168.8.101 master

    安装jdk&hadooop

    ①远程连接工具–fianlshell

    ②安装各种工具包
    [root@master ~]# yum install lrzsz tree net-tools nmap vim bash-completion lsof dos2unix nc telnet ntp wget rng-tools psmisc -y
    ③导入安装包

    #--> ①导入之前先看看有没有系统自带的jdk [root@master ~]# rpm -qa | grep jdk #--> ②若有就删除(将xxxxxx替换成检测出来的jdk包名) [root@master ~]# rpm -e xxxxxx --nodeps #我这里由于使用的最小安装系统, 所以是没有的, 大家按实际情况来处理

    #--> 创建两个文件夹用来存储jdk&hadoop的安装包和本体 [root@master ~]# mkdir /opt/soft /opt/apps

    把准备好的jdk和hadoop拖到/opt/soft下面

    ④解压安装包

    #--> ①解压jdk到/opt/apps [root@master ~]# tar -zxvf /opt/soft/jdk-8u261-linux-x64.tar.gz -C /opt/apps #--> ②解hadoop到/opt/apps [root@master ~]# tar -zxvf /opt/soft/hadoop-2.7.6.tar.gz -C /opt/apps

    #--> ①移动到/opt/apps [root@master ~]# cd /opt/apps #--> ②重命名为jdk [root@master ~]# mv jdk1.8.0_261 jdk #--> ③重命名为hadoop [root@master ~]# mv hadoop-2.7.6 hadoop
    ⑤配置环境变量

    #--> ①新建一个文件用来加载jdk和hadoop的环境变量 [root@master ~]# vim /etc/profile.d/jh-env.sh ** ②在打开的文件添加这段记录↓ export JAVA_HOME=/opt/apps/jdk export PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH export HADOOP_HOMR=/opt/apps/hadoop export PATH=$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$PATH

    #--> ①刷新环境变量 [root@master ~]# source /etc/profile.d/jh-env.sh #--> ②测试环境变量是否生效 [root@master ~]# java -version [root@master ~]# hadoop version

    测试

    官方案例: grep

    #--> ①进入hadoop的根目录 [root@master ~]# cd $HADOOP_HOME #--> ②创建一个目录input [root@master hadoop]# mkdir input #--> ③把$HADOOP_HOME/etc/hadoop下的所有xml文件复制到input目录下 [root@master hadoop]# cp ./etc/hadoop/*.xml ./input

    #--> ④使用hadoop自带的grep程序查找input目录下的文件是否有符合正则表达式'dfs[a-z.]'的字符串 [root@master hadoop]# hadoop jar ./share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.6.jar grep input ./output 'dfs[a-z.]'

    #--> ⑤查看part-r-00000文件 [root@master hadoop]# cat ./output/part-r-00000
    范例: wordcount

    #--> ①统计input目录下的文件里每个单词的出现次数, 结构存储到out1 [root@master hadoop]# hadoop jar ./share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.6.jar wordcount input ./out1 #--> ②查看结果 [root@master hadoop]# cat ./out1/part-r-00000

    #--> ①统计input目录下的文件里每个单词的出现次数, 结构存储到out1 [root@master hadoop]# hadoop jar ./share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.6.jar wordcount input ./out1 #--> ②查看结果 [root@master hadoop]# cat ./out1/part-r-00000
    Processed: 0.045, SQL: 8