温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

CentOS 7如何搭建Hadoop 2.7.3完全分布式集群环境

发布时间:2021-11-15 16:34:37 来源:亿速云 阅读:121 作者:小新 栏目:开发技术

这篇文章将为大家详细讲解有关CentOS 7如何搭建Hadoop 2.7.3完全分布式集群环境,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。

(一)软件准备

1,hadoop-2.7.3.tar.gz(包)

2,三台机器装有cetos7的机子

(二)安装步骤

  1,给每台机子配相同的用户

    进入root : su root

    创建用户s:  useradd s

    修改用户密码:passwd s

  2.关闭防火墙及修改每台机的hosts(root 下)

    vim /etc/hosts  如:(三台机子都一样)

CentOS 7如何搭建Hadoop 2.7.3完全分布式集群环境

    vim /etc/hostsname:如修改后参看各自的hostname

CentOS 7如何搭建Hadoop 2.7.3完全分布式集群环境

CentOS 7如何搭建Hadoop 2.7.3完全分布式集群环境

CentOS 7如何搭建Hadoop 2.7.3完全分布式集群环境

    关闭防火墙:

      systemctl stop firewalld.service

      禁用防火墙:systemctl disable firewalld.service

      查看防火墙状态firewall-cmd --state

      重启 reboot

  3,为每台机的用户s配置ssh,以用户s身份登录  (一定要相同的用户,因为ssh通信默认使用相同用户身份访问另一台机子)

    1,root 用户下修改: vim /etc/ssh/sshd_config,设置这三项后,执行service sshd restart

CentOS 7如何搭建Hadoop 2.7.3完全分布式集群环境

     2,退出root,在用户s下操作

      生成密钥对: ssh-keygen -t dsa(一路回车即可)

      转入ssh目录下:cd .ssh

      导入公钥: cat id_dsa.pub >>  authorized_keys

      修改authorized_keys权限:chmod 644       

      authorized_keys  (修改权限,保证自己免密码能登入)

      验证  ssh Master (在三台机都执行相同的操作)

    3,实现master-slave免密码登录

      在master 上执行:   cat ~/.ssh/id_dsa.pub | ssh s@Slave1 'cat - >> ~/.ssh/authorized_keys'      

                cat ~/.ssh/id_dsa.pub | ssh s@Slave2 'cat - >> ~/.ssh/authorized_keys '  

      验证 :ssh Slave1


 (三 )配置Hadoop集群

    1,解压hadoop和建立文件

      root用户下:tar zxvf  /home/hadoop/hadoop-2.7.3.tar.gz -C /usr/  

       重命名:mv hadoop-2.7.3 hadoop

       授权给s: chown -R  s /usr/hadoop

    2,创建hdfs相关文件(三台机子都需要操作)

      创建存储hadoop数据文件的目录: mkdir /home/hadoopdir

      存储临时文件,如pid:mkdir /home/hadoopdir/tmp

      创建dfs系统使用的dfs系统名称hdfs-site.xml使用:mkdir /home/hadoopdir/dfs/name

      创建dfs系统使用的数据文件hdfs-site.xml文件使用:mkdir  /home/hadoopdir/dfs/data

       授权给s: chown -R  s /home/hadoopdir

     3,配置环境变量(三台机子都需要操作)

     root用户下:vim /etc/profile  添加如图: 保存退出后:source /etc/profile

          验证:hadoop version(这里要修改  /usr/hadoop/etc/hadoop/hadoop-env.sh,即export JAVA_HOME=/usr/lib/jvm/jre)

CentOS 7如何搭建Hadoop 2.7.3完全分布式集群环境

     4,配置hadoop文件内容

      4.1 修改core-site.xml

<configuration> <property> <name>fs.defaultFS</name> <value>hdfs://Master:9000</value> </property> <property> <name>io.file.buffer.size</name> <value>131072</value> </property> <property> <name>hadoop.tmp.dir</name> <value>file:/home/hadoopdir/tmp/</value> <description>A base for other temporary   directories.</description> </property> <property> <name>hadoop.proxyuser.hadoop.hosts</name> <value>*</value> </property> <property> <name>hadoop.proxyuser.hadoop.groups</name> <value>*</value> </property> </configuration>

     4.2 修改hdfs-site.xml文件

<configuration> <property> <name>dfs.namenode.name.dir</name> <value>file:///home/hadoopdir/dfs/name</value> </property> <property> <name>dfs.datanode.data.dir</name> <value>file:///home/hadoopdir/dfs/data</value> </property> <property> <name>dfs.replication</name> <value>2</value> </property> <property> <name>dfs.webhdfs.enabled</name> <value>true</value> </property> </configuration>

    4.3 修改mapred-site.xml

<configuration> <property> <name>mapreduce.framework.name</name> <value>yarn</value> </property> <property> <name>mapreduce.jobhistory.address</name> <value>Master:10020</value> </property> <property> <name>mapreduce.jobhistory.webapp.address</name> <value>Master:19888</value> </property> <property> <name>mapreduce.jobtracker.http.address</name> <value>Master:50030</value> </property> <property> <name>mapred.job.tracker</name> <value>Master:9001</value> </property> </configuration>

    4.4 修改 yarn-site.xml

<configuration> <!-- Site specific YARN configuration properties --> <property> <name>yarn.nodemanager.aux-services</name> <value>mapreduce_shuffle</value> </property> <property> <name>yarn.nodemanager.aux-services.mapreduce.shuffle.class</name> <value>org.apache.hadoop.mapred.ShuffleHandler</value> </property> <property> <name>yarn.resourcemanager.hostname</name> <value>Master</value> </property> <property> <name>yarn.resourcemanager.address</name> <value>Master:8032</value> </property> <property> <name>yarn.resourcemanager.scheduler.address</name> <value>Master:8030</value> </property> <property> <name>yarn.resourcemanager.resource-tracker.address</name> <value>Master:8031</value> </property> <property> <name>yarn.resourcemanager.admin.address</name> <value>Master:8033</value> </property> <property> <name>yarn.resourcemanager.webapp.address</name> <value>Master:8088</value> </property> </configuration>

    4.5,修改 slaves文件

      CentOS 7如何搭建Hadoop 2.7.3完全分布式集群环境

   5,搭建集群(普通用户s)

     格式hadoop文件:hadoop  namenode -format  (最后出现“util.ExitUtil: Exiting with status 0”,表示成功)

     发送dfs内容给Slave1:scp  -r /home/hadoopdir/dfs/*  Slave1:/home/hadoopdir/dfs

      发给dfs内容给Slave2:scp  -r /home/hadoopdir/dfs/*  Slave2:/home/hadoopdir/dfs

     发送hadoop文件给数据节点:scp -r /usr/hadoop/*  Slave1:/usr/hadoop/  scp -r /usr/hadoop/*  Slave2:/usr/hadoop/

   6,启动集群

    ./sbin/start-all.sh

      1,jps(centos 7 默认没有,可以参照分割线里的安装)

--------------------------------------分割线 --------------------------------------

CentOS中使用yum安装java时,没有jps的问题的解决。

解决方法:需要安装java-1.X.X-openjdk-devel这个包,他提供了jps这个工具。

CentOS 7如何搭建Hadoop 2.7.3完全分布式集群环境

--------------------------------------分割线 --------------------------------------

查看:Master和Slave中分别出现如下所示:

      CentOS 7如何搭建Hadoop 2.7.3完全分布式集群环境

CentOS 7如何搭建Hadoop 2.7.3完全分布式集群环境

      2,离开安全模式(master): hadoop dfsadmin  safemode  leave

       查看结果:hadoop dfsadmin -report,如图

CentOS 7如何搭建Hadoop 2.7.3完全分布式集群环境

      3,登录网页查看:http://Master:50070  (查看live node)    查看yarn环境(http://Master/8088)

关于“CentOS 7如何搭建Hadoop 2.7.3完全分布式集群环境”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI