万万哇 发表于 2024-12-25 00:11:36

hadoop的安装以及配置(适用于centos7)


[*]先辈入root用户界面
    下令 su - root
   
[*]关闭防火墙
    systemctl stop firewalld  //关闭防火墙
    systemctl disable firewalld  //关闭开机自启
    systemctl status firewalld  //查看防火墙状态
    https://i-blog.csdnimg.cn/direct/e9af4c04b06c45588291ac0e02469953.png
   
[*]实现ssh免密码登录
    ssh-keygen -t rsa
    https://i-blog.csdnimg.cn/direct/50587ecb90b44fc892099d8cce4ac07e.png
    这里要多次按回车,举行决议简直认
   
   
[*]cd ~/.ssh
    cat id_rsa.pub >> authorized_keys
    https://i-blog.csdnimg.cn/direct/83c459b2a52e401db6e6643a63fc1c94.png
   
   
[*]vi编辑
    vi ~/.bashrc
    https://i-blog.csdnimg.cn/direct/ef9d0f98c38a4c3e9d1534d1d26a3408.png
    更改文件内容
    source ~/.bashrc
    启动文件
   
[*]查抄jdk环境
    java -version
    如果有的话,提前卸载
    rpm -qa | grep jdk         (查询Java的安装包)
    https://i-blog.csdnimg.cn/direct/4e6d8fbbf7564658b000880487c35873.png
    rpm -e --nodeps  上步查询出的所有jdk
    https://i-blog.csdnimg.cn/direct/0b8a0cd957f042b98c3069c60c0cb8f2.png
    直到测试java -version 无法找到环境为止
   
[*]下载java
    yum list java*
    https://i-blog.csdnimg.cn/direct/cf5b8b32ed2c44a2a7452f96cc659e8e.png
   
    yum -y install java-1.8.0-openjdk*
    版本要1.8
   
[*]查看位置,一般是在/usr/lib/jvm和/usr/share/icons/hicolor下
    https://i-blog.csdnimg.cn/direct/0812c2d8bfd0445fa7900bd6fe938ac8.png
   
    https://i-blog.csdnimg.cn/direct/35f0555104754faf9df322a45358bb38.png
   
    因为是在差别文件夹下的,我直接汇总了
   
   
[*]环境配置
    俩种方法:
    方法一:vi ~/.bashrc
    添加:
    export JAVA_HOME=/usr/lib/jvm/java-openjdk
    export CLASSPATH=.:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
    export PATH=$PATH:$JAVA_HOME/bin
   
    方法二(我自己用的方法,方法一就不截图了):
    vi /etc/profile
    添加
    export JAVA_HOME=/usr/lib/jvm/java-openjdk
    export CLASSPATH=.:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
    export PATH=$PATH:$JAVA_HOME/bin
   
    https://i-blog.csdnimg.cn/direct/33b1ff73b0df4c99b385d7c5c78fbf90.png
   
   
[*]查抄环境
    https://i-blog.csdnimg.cn/direct/e8d6af19605a4f31b9d50bf7c3af46e1.png
   
   
[*]这里开始我将会利用ssh远程连接操作,软件:finallshell
    在opt下创建hadoop的文件夹
       mkdir /opt/hadoop
    可以cd到该目录下举行下载
     wget https://archive.apache.org/dist/hadoop/common/hadoop-3.2.0/hadoop-3.2.0.tar.gz
    https://i-blog.csdnimg.cn/direct/10637887321b498f8dd9eadd43176e68.png
   
    并举行解压操作
     tar -zxvf hadoop-3.2.0.tar.gz
    https://i-blog.csdnimg.cn/direct/d49eff8acad249028a5dacc058c304a2.png
   
   
   
[*]配置Hadoop的环境变量
    vim ~/.bashrc
   
    环境变量
    export JAVA_HOME=/usr/lib/jvm/java-openjdk
    export CLASSPATH=.:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
    export PATH=$PATH:$JAVA_HOME/bin:/opt/hadoop/hadoop-3.2.0/bin:/opt/hadoop/hadoop-3.2.0/sbin
    export HADOOP_HOME=/opt/hadoop/hadoop-3.2.0
    export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native
   
    注意:这里的$PATH:$JAVA_HOME/bin:/opt/hadoop/hadoop-3.2.0/bin:/opt/hadoop/hadoop-3.2.0/sbin表示在保存原来的$PATH环境变量的基础上,再增加$JAVA_HOME/bin和/opt/hadoop/hadoop-3.2.0/bin和/opt/hadoop/hadoop-3.2.0/sbin这些路径作为新的$PATH环境变量。
    https://i-blog.csdnimg.cn/direct/f5d85327333b440b9103c945db52c458.png
   
    配置完后举行执行,如果不执行也可以,到时间会读取到文件的
    source  ~/.bashrc
   
   
[*]Hadoop的文件修改
    https://i-blog.csdnimg.cn/direct/a813aa98b2044d78ab4c5fbe886f0de4.png
    https://i-blog.csdnimg.cn/direct/770ac644970446758da2c23610987456.png
   
    修改etc/hadoop中的一系列文件
     vi /opt/hadoop/hadoop-3.2.0/etc/hadoop/core-site.xml
   
    在节点中参加配置:
    <configuration>
     <property>
            <name>hadoop.tmp.dir</name>
            <value>/root/hadoop/tmp</value>
            <description>Abase for other temporary directories.</description>
       </property>
       <property>
            <name>fs.default.name</name>
            <value>hdfs://master:9000</value>
       </property>
       </configuration>
   
    效果图:
    https://i-blog.csdnimg.cn/direct/5393af7eb8e84fc487ebe1aa0676629c.png
   
    修改hadoop-env.sh
    vi /opt/hadoop/hadoop-3.2.0/etc/hadoop/hadoop-env.sh
   
    将 export JAVA_HOME=${JAVA_HOME}
    修改为: export JAVA_HOME=/usr/lib/jvm/java-openjdk
    说明:修改为自己的JDK路径
   
    https://i-blog.csdnimg.cn/direct/a72422cff9c442e49cc4aac1befed1ed.png
   
    修改hdfs-site.xml
    vi /opt/hadoop/hadoop-3.2.0/etc/hadoop/hdfs-site.xml
   
    在配置中参加节点
    <configuration>
    <property>
       <name>dfs.name.dir</name>
       <value>/root/hadoop/dfs/name</value>
       <description>Path on the local filesystem where theNameNode stores the namespace and transactions logs persistently.
       </description>
    </property>
   
    <property>
       <name>dfs.data.dir</name>
       <value>/root/hadoop/dfs/data</value>
       <description>Comma separated list of paths on the localfilesystem of a DataNode where it should store its blocks.
       </description>
    </property>
   
    <property>
       <name>dfs.replication</name>
       <value>2</value>
    </property>
   
    <property>
       <name>dfs.permissions</name>
       <value>false</value>
       <description>need not permissions</description>
    </property>
    </configuration>
   
    https://i-blog.csdnimg.cn/direct/7a80649bfb0a40f2a36cc14c8d661dab.png
   
    新建而且修改mapred-site.xml
   
    vi /opt/hadoop/hadoop-3.2.0/etc/hadoop/mapred-site.xml
   
    https://i-blog.csdnimg.cn/direct/26c4d134f7e849acb29bfcaab496d23e.png
   
    修改workers文件
    vi /opt/hadoop/hadoop-3.2.0/etc/hadoop/workers
    https://i-blog.csdnimg.cn/direct/71690d8a910a4f35a3993dbae920e0a5.png
    也可以修改好master节点的/opt/hadoop/hadoop-3.2.0/etc/hadoop/workers文件,然后一
    条下令直接分发给集群,这样就不消再修改别的节点的workers文件。
   
   
    可以将xsync下令分发给集群的具体配置(选看)
    下载rsync
    yum install -y rsync
   
    修改/usr/local/bin/下的xsync文件,没有就新建
    cd /usr/local/bin/
    vim xsync
   
    文件输入:
    #!/bin/bash
    #1 获取输入参数个数,如果没有参数,直接退出
    pcount=$#
    if((pcount==0))
    then
            echo no args
            exit
    fi
   
   
    #2 获取文件名称
    p1=$1
    fname=`basename $p1`
    echo fname=$fname
   
   
    #3 获取上级目录到绝对路径
    pdir=`cd -P $(dirname $p1); pwd`
    echo pdir=$pdir
   
   
    #4 获取当前用户名称
    user=`whoami`
   
   
    #5 循环
    for((host=20; host<=21;host++))
    do
            echo ------------------- @192.168.95.$host --------------
            rsync -rvl $pdir/$fname $user@192.168.95.$host:$pdir/
    done
   
    给予权限:
    Chmod 777 xsync
   
    利用xsync下令分发配置
    xsync  /opt/hadoop/hadoop-3.2.0/etc
    https://i-blog.csdnimg.cn/direct/a7384e59374940f0a125727dbf1eb92e.png
   
   
    必要设置hadoop classpath
    https://i-blog.csdnimg.cn/direct/afcc95606023488b8c4faa7e6422e6f8.png
   
    记下返回效果
   
   
   
    添加配置
    vi /opt/hadoop/hadoop-3.2.0/etc/hadoop/yarn-site.xml
    例子(我自己的配置):
    https://i-blog.csdnimg.cn/direct/73f1400be8c047a8af54d3288c1e07e3.png
   
    服务启动权限配置
    cd /opt/hadoop/hadoop-3.2.0
   
    配置start-dfs.sh与stop-dfs.sh文件
    先配置
    vi sbin/start-dfs.sh
    https://i-blog.csdnimg.cn/direct/9e330085276d4f6cb28463d22ff4223a.png
   
    后配置
     vi sbin/stop-dfs.sh
    https://i-blog.csdnimg.cn/direct/a1d1aa0581dd48778f93ba4c7d2f668a.png
   
   
    配置start-yarn.sh与stop-yarn.sh文件
   
    先配置
    vi sbin/start-yarn.sh
    https://i-blog.csdnimg.cn/direct/e0c8ef6547ec48078ef13ab6ed91ad26.png
   
   
    后配置
    vi sbin/stop-yarn.sh
    https://i-blog.csdnimg.cn/direct/ae1f527a1ee846fd810ca48307164d69.png
   
    打开另一台虚拟机
    举行配置
    修改网卡信息:
    vim /etc/sysconfig/network-scripts/ifcfg-ens33
   
    修改node1节点的主机名
    vi /etc/hostname
   
    修改node1 节点对应ip和主机名(主从节点保持一致)
    vim /etc/hosts 
   
    相互连接
    ssh node1
    ssh master
   
    互联乐成的话就直接(exit退出就行)
   
   
[*]启动Hadoop
   
      cd /opt/hadoop/hadoop-3.2.0/bin
   
    执行初始化脚本
      ./hadoop namenode -format
   
    启动脚本
    start-all.sh
   
   
      大概出现的问题:
    https://i-blog.csdnimg.cn/direct/01c2685771704db5aacec4db1dd58b1e.png
    说明无法连接到主机,必要重新配置一台可以利用ssh连接的主机
   

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
页: [1]
查看完整版本: hadoop的安装以及配置(适用于centos7)