年初参加了华为的大数据全栈成长计划,包括java,mysql,hadoop,spark,算是大数据小白更新认知体系。
计划地址:https://bbs.huaweicloud.com/forum/thread-90396-1-1.html

今天重新按照之前记录的笔记搭建一下hadoop集群,记录一下这个过程。
主要记录搭建步骤,报错信息之类的另外再讨论。
万变不离其宗(年初搭建使用centos6.5,hadoop2.7.2),各工具版本如下:
centos7.9,hadoop3.3.1,vmware14,xshell7,jdk版本:16 jdk版本8


准备工具:

  • centos7:centos 官网下载地址:https://www.centos.org/download/
  • hadoop 官网下载地址:https://hadoop.apache.org/releases.html
    hadoop3.3.1官网表示只支持java8以及更高级的java版本
  • vmware 官网:https://www.vmware.com/
  • xshell 官网:https://www.netsarang.com/zh/xshell/
  • jdk16下载地址:https://www.oracle.com/java/technologies/javase-jdk16-downloads.html 在启动yarn 的时候,jdk16有个坑
  • jdk8下载地址:https://www.oracle.com/java/technologies/javase/javase-jdk8-downloads.html

安装步骤:

  • 安装虚拟机
  • 复制jdk和hadoop安装包到虚拟机中,解压,配置环境变量,修改用户权限,修改目录用户和组,关闭防火墙
  • 克隆虚拟机3台
  • 配置3台虚拟机的静态IP地址,主机名称,DNS域名解析文件
  • 配置ssh免密登录
  • 规划集群,配置hadoop配置文件
  • 启动集群,其他测试下回分解。

1、安装虚拟机

官网看了一下,centos7支持到2024年,centos8才支持到今年年底,就下载centos7。
鸟哥的私房菜也是用centos7教学。后续可以用来学习私房菜。
linux系统的学习可以参考《鸟哥的linux私房菜》。没看完,先不推荐,等我看完再来推荐。











用vmware做虚拟机软件,这几个服务要开起来(这几个服务主要跟网络服务有关,不开起来无法使用虚拟机的网络):

alt+R 输入 services.msc 打开系统服务,找到vmware开头的这几个服务。

可以在安装好虚拟机的时候设置网络,或者在linux的相关系统的配置文件中设置。



配置一下

root >vim /etc/sysconfig/network-scripts/ifcfg-ens33
需要注意这几个参数的配置: BOOTPROTO(启动协议,static/dhcp),IPADDR(IP地址),GATEWAY(网关),NETMASK(子网掩码),DNS1(域名解析服务),HWADDR(网卡MAC地址)。

另外,虚拟机中的网络模式有桥接,NAT,仅主机,这几个区别另外再找资料
这里选择桥接的方式。注意点:需要设置静态IP地址

安装好虚拟机之后,在vmware的虚拟机配置界面把镜像文件卸载了(安装时使用的是iso映像文件,安装好之后可以直接使用物理驱动器了)。

2、复制jdk和hadoop安装包

设置好网络之后,使用xftp传输下载好的jdk和hadoop到虚拟机中:/opt/software

安装JAVA,配置JAVA环境变量:

desmond >tar -zxvf /opt/software/jdk-16.0.2_linux-x64_bin.tar.gz -C /opt/installation/
root >vim /etc/profile

export JAVA_HOME=/opt/installation/jdk-16.0.2
export PATH=$PATH:$JAVA_HOME/bin

root >source /etc/profile
desmond >java -version

安装HADOOP,配置环境变量:

desmond >tar -zxvf hadoop-3.3.1.tar.gz -C /opt/installation/
root >vim /etc/profile

export HADOOP_HOME=/opt/installation/hadoop-3.3.1
export PATH=$PATH:$HADOOP_HOME/bin
export PATH=$PATH:$HADOOP_HOME/sbin

root >source /etc/profile

修改用户权限:
root >usermod -g root desmond
或者修改 /etc/sudoers 这个文件中的描述
查看用户 cat /etc/passwd
查看组 cat /etc/group

root用户的权限太大了,需要创建一个用户(desmond)拥有管理员的权限就好。

关闭防火墙
root >system disable firewalld
root >chkconfig iptables off

修改目录所属用户和组
desmond >sudo chown desmond:desmond installation
desmond >sudo chown desmond:desmond software

3、克隆虚拟机

第一台虚拟机安装好了相关通用的东西之后,可以无限克隆,前提是系统配置足够。
第一台虚拟机 desmond_ori,后面准备计划安装oracle19c,mysql等,用做其他工具的认知使用和测试。
今天安装hadoop 的需要复制三台:d_hadoop101,d_hadoop102,d_hadoop103。





4、配置虚拟机网络参数

1、编辑网卡mac地址:
root >vim /etc/udev/rules.d/70-persistent-ipoib.rules
克隆之后网卡地址可能会重复,如果需要再编辑网卡MAC地址,在这个文件中查找到MAC地址后,写入IP地址文件中

2、编辑静态IP地址
root >vim /etc/sysconfig/network-scripts/ifcfg-ens33

这里也有个坑,IP地址 192.168.65.101估计跟年初配置的hadoop集群有重合的IP地址,导致xshell连接虚拟机的时候总是断开连接。后来把地址修改成192.168.65.201就比较稳定了。

3、编辑主机名称,在网络上识别此主机的标识。
root >vim /etc/sysconfig/network

desmond >hostname

主机名称这里有个坑,如果主机名带下划线,hdfs会找不到主机。

4、编辑本地DNS域名解析
root >vim /etc/hosts

5、编辑IP地址之后需要重启网络服务,使新的IP地址生效。
root >service network restart
或者以下这个命令(其实本质就是调用如下这个命令),都需要在root 用户下执行。
root >/etc/init.d/network restart

6、使用rsync 复制文件,如果没有,则需要安装。
desmond >sudo yum install -y rsync

在d_hadoop101上配置好 /etc/sysconfig/network 和 /etc/hosts 之后,不想重复输入相同的文本就使用复制工具,把这两个文件复制到 d_hadoop102 和d_hadoop103上。在进行相应的修改就好。
但是需要注意的是,静态IP地址的文件不建议进行复制,因为有MAC地址等其他主机独特的配置。

7、配置ssh 免密登录
desmond >cd /home/desmond/.ssh
desmond >ssh-keygen -t rsa
连续三个回车
desmond >ssh-copy-id d_hadoop102
desmond >ssh-copy-id d_hadoop103
ssh d_hadoop102 可以不输入密码直接登录就是配置成功。

5、规划HADOOP集群和配置HADOOP

xsync 是一个集群分发脚本,主要使用的是 rsync这个复制工具

cd ~
mkdir bin/
touch bin/xyync
vi bin/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=102; host<104; host++)); do echo ---------- dhadoop$host ----------rsync -rvl $pdir/$fname $user@dhadoop$host:$dirdone

修改脚本xsync具有执行权限
desmond >chmod 744 /home/desmond/bin/xsync
调用脚本形式: xsync 文件名称
desmond >xsync /home/desmond/bin

desmond >cd /opt/installation/hadoop-3.3.1/etc/hadoop
desmond >vim core-site.xml

<configuration><!-- 指定HDFS中NameNode的地址 --><property><name>fs.defaultFS</name><value>hdfs://dhadoop101:9000</value></property><!-- 指定hadoop运行时文件的存储目录 --><property><name>hadoop.tmp.dir</name><value>/opt/installation/hadoop-3.3.1/data/tmp</value></property>
</configuration>

desmond >vi hadoop-env.sh
export JAVA_HOME=/opt/module/jdk1.8.0_144

desmond > vi hdfs-site.xml

<configuration><!-- 指定HDFS副本数量--><property><name>dfs.replication</name><value>3</value></property><!-- 指定hadoop辅助名称节点主机配置--><property><name>dfs.namenode.secondary.http-address</name><value>dhadoop103:50090</value></property>
</configuration>

desmond >vim yarn-env.sh
export JAVA_HOME=/opt/module/jdk1.8.0_144

desmond >vim yarn-site.xml

<configuration><!-- 指定Reducer获取数据的方式--><property><name>yarn.nodemanager.aux-services</name><value>mapreduce_shuffle</value></property><!-- 指定yarn的ResourceManager的地址--><property><name>yarn.resourcemanager.hostname</name><value>dhadoop102</value></property>
</configuration>

desmond >vim mapred-env.sh
export JAVA_HOME=/opt/module/jdk1.8.0_144

desmond >vim mapred-site.xml

<configuration><!-- 指定yarn的ResourceManager的地址--><property><name>mapreduce.framework.name</name><value>yarn</value></property>
</configuration>


配置好之后进行集群配置文件分发
desmond >cd /opt/installation/hadoop-3.3.1/etc/
desmond >xsync hadoop/

6、启动集群,其他测试下回分解

第一次启动需要格式化集群:

desmond >hdfs namenode -format

启动集群:

在规划的namenode节点dhadoop101上启动hdfs集群
desmond >cd /opt/installation/hadoop-3.3.1/sbin
desmond >start-dfs.sh
desmond >jps

在规划的resourcemanager节点dhadoop102上启动yarn集群
desmond >start-yarn.sh
desmond >jps

在dhadoop101,dhadoop102和dhadoop103上查看java 进程:

集群启动OK。

停止集群:

在规划的resourcemanager节点dhhadoop102上停止yarn
desmond >stop-yarn.sh
desmond >jps

在规划的namenode节点dhhadoop101上停止hdfs
desmond >stop-dfs.sh
desmond >jps

单独启动集群中的每台机器:

也有单独每台机器启动的方式,这种方式需要每台机器上都执行命令,不过这种方式准备被淘汰:
desmond@dhadoop101 >/opt/installation/hadoop3.1.1/sbin/hadoop-daemon.sh start namenode
desmond@dhadoop101 >/opt/installation/hadoop3.1.1/sbin/hadoop-daemon.sh start datanode
desmond@dhadoop102 >/opt/installation/hadoop3.1.1/sbin/hadoop-daemon.sh start datanode
desmond@dhadoop103 >/opt/installation/hadoop3.1.1/sbin/hadoop-daemon.sh start datanode

desmond@dhadoop102 >/opt/installation/hadoop3.1.1/sbin/yarn-daemon.sh start resourcemanager
desmond@dhadoop102 >/opt/installation/hadoop3.1.1/sbin/yarn-daemon.sh start nodemanager
desmond@dhadoop101 >/opt/installation/hadoop3.1.1/sbin/yarn-daemon.sh start nodemanager
desmond@dhadoop103 >/opt/installation/hadoop3.1.1/sbin/yarn-daemon.sh start nodemanager

desmond@dhadoop102 >/opt/installation/hadoop3.1.1/sbin/yarn-daemon.sh stop nodemanager
desmond@dhadoop101 >/opt/installation/hadoop3.1.1/sbin/yarn-daemon.sh stop nodemanager
desmond@dhadoop103 >/opt/installation/hadoop3.1.1/sbin/yarn-daemon.sh stop nodemanager
desmond@dhadoop102 >/opt/installation/hadoop3.1.1/sbin/yarn-daemon.sh stop resourcemanager

desmond@dhadoop101 >/opt/installation/hadoop3.1.1/sbin/hadoop-daemon.sh stop datanode
desmond@dhadoop102 >/opt/installation/hadoop3.1.1/sbin/hadoop-daemon.sh stop datanode
desmond@dhadoop103 >/opt/installation/hadoop3.1.1/sbin/hadoop-daemon.sh stop datanode
desmond@dhadoop101 >/opt/installation/hadoop3.1.1/sbin/hadoop-daemon.sh stop namenode

今天先到这里,集群的启动和停止已经可以在jps 中看到。
只是http页面还不能访问,应该是namenode中的httpd 服务需要打通一下。

hadoop 3.3.1 安装笔记相关推荐

  1. [Hadoop集群模式安装与配置全过程]红帽子RatHat6下hadoop集群模式安装(3个节点,master,slave1,slave2)

    红帽子RatHat6下hadoop集群模式安装(3个节点,master,slave1,slave2) 一.学习目标: 使用红帽子RatHat6在虚拟机上搭建hadoop集群,包含3个节点,体验集群分布 ...

  2. hadoop+zookeeper+hbase 完全安装手册

    2019独角兽企业重金招聘Python工程师标准>>> 安装环境: 1. 2台 namenode 10台 datanode 3. 安装目录:opt/software jdk hado ...

  3. laravel安装笔记 (转)

    一.安装composer 安装之前将\php\php.ini文件中的php_openssl.dll扩展库开启,否则composer在安装过程中会出现错误提示. (我在安装过程中发现apache目录下的 ...

  4. 前端开发学习笔记 - 1. Node.JS安装笔记

    Node.JS安装笔记 Node.js® is a JavaScript runtime built on Chrome's V8 JavaScript engine. Node.js uses an ...

  5. hadoop的伪分布安装(低版本)

    1.hadoop的伪分布安装 1.1.使用root用户,密码是hadoop登录的. 1.2.修改linux的ip地址     操作:(1)在linux桌面的右上角图标,右击,选择Edit Connec ...

  6. Oracle安装笔记

    Oracle安装笔记 出现错误后不要慌,最主要的是看log文件的提示,其中比较简单的文件是install目录下的make.log 错误一: client_shared For example: /us ...

  7. Hadoop-2.8.0集群搭建、hadoop源码编译和安装、host配置、ssh免密登录、hadoop配置文件中的参数配置参数总结、hadoop集群测试,安装过程中的常见错误

    25. 集群搭建 25.1 HADOOP集群搭建 25.1.1集群简介 HADOOP集群具体来说包含两个集群:HDFS集群和YARN集群,两者逻辑上分离,但物理上常在一起 HDFS集群: 负责海量数据 ...

  8. Hortworks Hadoop 2.4.2安装、配置

    Hortonworks Hadoop 2.4.2安装.配置   1简介 此手册应用于Hortonworks Hadoop(HDP2.4.2)的安装.使用. 1.1  参考资料 http://docs. ...

  9. convirt2.5在虚拟机上安装笔记

    <span style="font-family: Arial, Helvetica, sans-serif; background-color: rgb(255, 255, 255) ...

  10. SVN的安装笔记和要注意的问题

    SVN的安装笔记和要注意的问题 之前装的SVN 1.3.2,按网上说的教程,一配置就可以用了,但这次换了1.4.2的最新版本, 只是设置了server.conf和passwd后,依然在导入项目时,说验 ...

最新文章

  1. linux利用vi挂载磁盘,如何在linux环境上挂载磁盘
  2. 树和而叉查找树的实现
  3. 结对开发石家庄地铁系统
  4. 滴滴行程单用的什么字体_打车就送冰淇淋!滴滴出行放大招,限时19天
  5. PHP-代码审计-ini配置文件
  6. bzoj1935: [Shoi2007]Tree 园丁的烦恼
  7. 使用GDI+保存图像为8bpp的灰度图像
  8. 流利的接口不利于维护
  9. 前端实现可绘制的canvas画布_前端图形学基础(五)——Canvas状态管理
  10. 【深度学习系列】用PaddlePaddle和Tensorflow实现经典CNN网络AlexNet
  11. html文件怎么导出stl文件,各种3D建模软件导出STL文件的小技巧(一)
  12. generator.xml mysql_Mybatis 使用generator.xml生成实体及mapper
  13. 【论文解读】EMNLP2019 如何在Transformer中融入句法树信息?这里给出了一种解决方案...
  14. 以snull为例分析linux网卡驱动的技术文档[转载]二
  15. Linux桌面文件被隐藏,在Deepin系统中隐藏桌面图标的好办法
  16. 配置alexa skill(二)
  17. Google Office 战略 途经:收购JotSpot
  18. 【Python基础知识整理】
  19. Camera 之水波纹和banding现象
  20. 计算机一级程测试题,2017计算机全国一级考试选择题整理.doc

热门文章

  1. ODL:OpenDayLight项目中子项目统计(二)
  2. finecms aip.php漏洞,通杀FineCMS5.0.8及版本以下getshell的漏洞
  3. 本地用微信测试公众号开发对接微信支付思路
  4. 软件质量的定义以及相关理论
  5. [转]漫谈个人知识管理-PKM的方法
  6. charles android 抓取https 出现unknown简单明了的解决教程
  7. 【论文翻译】Clustering by fast search and find of density peaks
  8. 82 将真分数分解为埃及分数
  9. elasticsearch,spring boot,mybatis项目小结
  10. cnn实现手写识别字体代码详解