hadoop集群搭建_jumper17的博客-程序员秘密

技术标签: hdfs  hadoop  big data  环境搭建  

0. Hadoop分布式环境搭建之环境介绍

我这里准备了三台机器,IP地址如下:

192.168.153.113 
192.168.153.186 
192.168.153.223

1. 网络配置

首先在这三台机器上修改主机名以及配置其他机器的主机名

1.1 修改主机名(三台机器都要修改)

[[email protected] ~]# hostnamectl set-hostname bigdata100

1.2 编辑/etc/hosts配置文件(三台机器都要修改)

[[email protected] ~]# vim /etc/hosts

修改为如下

127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6

192.168.153.113 bigdata100
192.168.153.186 bigdata101
192.168.153.223 bigdata102

1.3 配置ssh免密码登录(三台机器都要修改)

[[email protected] ~]# ssh-keygen -t rsa  # 三台机器都需要执行这个命令生成密钥对

[[email protected] ~]# ls .ssh/
authorized_keys  id_rsa  id_rsa.pub  known_hosts

[[email protected] ~]# ssh-copy-id -i ~/.ssh/id_rsa.pub bigdata100
[[email protected] ~]# ssh-copy-id -i ~/.ssh/id_rsa.pub bigdata101
[[email protected] ~]# ssh-copy-id -i ~/.ssh/id_rsa.pub bigdata102

1.4 测试

[[email protected] ~]# ping bigdata100
[[email protected] ~]# ping bigdata101
[[email protected] ~]# ping bigdata102
[[email protected] ~]# ssh bigdata101
[[email protected] ~]# ssh bigdata102

2. JDK安装与配置

下载压缩包 jdk-8u151-linux-x64.tar.gz

2.1 解压

[[email protected] ~]# tar -zxvf jdk-8u151-linux-x64.tar.gz

2.2 移动到自己目录(这里我的目录是bigDataSoftware)

[[email protected] ~]# mv ./jdk1.8.0_151 /home/bigDataSoftware/JDK_1.8

2.3 配置环境变量

[[email protected] ~]# vim /etc/profile

在最后添加

export JAVA_HOME=/home/bigDataSoftware/JDK_1.8
export JRE_HOME=/home/bigDataSoftware/JDK_1.8/jre
export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH
export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$JAVA_HOME:$PATH

加载配置文件,让其生效

[[email protected] ~]# source /etc/profile

2.4 测试

[[email protected] ~]# java -version
[[email protected] ~]# javac -version

2.5 JDK及环境变量分发

[[email protected] ~]# rsync -av /home/bigDataSoftware/JDK_1.8 bigdata101:/home/bigDataSoftware
[[email protected] ~]# rsync -av /home/bigDataSoftware/JDK_1.8 bigdata101:/home/bigDataSoftware
[[email protected] ~]# rsync -av /etc/profile bigdata101:/etc/profile
[[email protected] ~]# rsync -av /etc/profile bigdata101:/etc/profile

3. Hadoop安装与配置

3.1 将Hadoop压缩包拖入解压

[[email protected] /home/bigDataSoftware]# tar -zxvf hadoop-2.7.7.tar.gz

3.2 在hadoop-2.7.7文件夹里面先创建4个文件夹:

hadoop-2.7.7/hdfs
hadoop-2.7.7/hdfs/tmp
hadoop-2.7.7/hdfs/name
hadoop-2.7.7/hdfs/data

3.3 配置Hadoop文件

进入/home/bigDataSoftware/hadoop-2.7.7/etc/hadoop

3.3.1 配置core-site.xml文件

vim core-site.xml

在中加入以下代码:

<property>
    <name>hadoop.tmp.dir</name>
    <value>file:/home/bigDataSoftware/hadoop-2.7.7/hdfs/tmp</value>
    <description>A base for other temporary directories.</description>
</property>
<property>
    <name>io.file.buffer.size</name>
    <value>131072</value>
</property>
<property>
    <name>fs.defaultFS</name>
    <value>hdfs://bigdata100:9000</value>
</property>

注意:第一个属性中的value和我们之前创建的/hadoop-2.7.7/hdfs/tmp路径要一致。

3.3.2 配置 hadoop-env.sh文件

将JAVA_HOME文件配置为本机JAVA_HOME路径

# The java implementation to use.
export JAVA_HOME=/home/bigDataSoftware/JDK_1.8

3.3.3 配置 yarn-env.sh

将其中的JAVA_HOME修改为本机JAVA_HOME路径(先把这一行的#去掉)

# some Java parameters
export JAVA_HOME=/home/bigDataSoftware/JDK_1.8
if [ "$JAVA_HOME" != "" ]; then

3.3.4 配置hdfs-site.xml

在中加入以下代码

<property>
 <name>dfs.replication</name>
   <value>2</value>
 </property>
 <property>
   <name>dfs.namenode.name.dir</name>
   <value>file:/home/bigDataSoftware/hadoop-2.7.7/hdfs/name</value>
   <final>true</final>
</property>
 <property>
   <name>dfs.datanode.data.dir</name>
   <value>file:/home/bigDataSoftware/hadoop-2.7.7/hdfs/data</value>
   <final>true</final>
 </property>
 <property>
  <name>dfs.namenode.secondary.http-address</name>
   <value>bigdata100:9001</value>
 </property>
 <property>
   <name>dfs.webhdfs.enabled</name>
   <value>true</value>
 </property>
 <property>
   <name>dfs.permissions</name>
   <value>false</value>
 </property>

因为这里有两个从主机,所以dfs.replication设置为2

3.3.5 复制mapred-site.xml.template文件,并命名为mapred-site.xml

配置 mapred-site.xml,在标签中添加以下代码

<property>
   <name>mapreduce.framework.name</name>
   <value>yarn</value>
</property>

3.3.6 配置yarn-site.xml

在标签中添加以下代码

<property>
 <name>yarn.resourcemanager.address</name>
   <value>bigdata100:18040</value>
 </property>
 <property>
   <name>yarn.resourcemanager.scheduler.address</name>
   <value>bigdata100:18030</value>
 </property>
 <property>
   <name>yarn.resourcemanager.webapp.address</name>
   <value>bigdata100:18088</value>
 </property>
 <property>
   <name>yarn.resourcemanager.resource-tracker.address</name>
   <value>bigdata100:18025</value>
 </property>
 <property>
   <name>yarn.resourcemanager.admin.address</name>
   <value>bigdata100:18141</value>
 </property>
 <property>
    <name>yarn.nodemanager.aux-services</name>
    <value>mapreduce_shuffle</value>
 </property>
 <property>
     <name>yarn.nodemanager.auxservices.mapreduce.shuffle.class</name>
     <value>org.apache.hadoop.mapred.ShuffleHandler</value>
 </property>

3.3.7 配置slaves 文件

修改为如下

bigdata101
bigdata102

3.3.8 配置hadoop的环境,就像配置jdk一样

在/etc/profile文件最后添加如下

export HADOOP_HOME=/home/bigDataSoftware/hadoop-2.7.7
export PATH=$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$PATH
export HADOOP_CONF_DIR=$HADOOP_HOME/etc/hadoop

3.3.9 Hadoop分发

rsync -av /home/bigDataSoftware/hadoop-2.7.7/ bigdata101:/home/bigDataSoftware/hadoop-2.7.7/
rsync -av /home/bigDataSoftware/hadoop-2.7.7/ bigdata102:/home/bigDataSoftware/hadoop-2.7.7/

环境变量配置文件分发

rsync -av /etc/profile bigdata101:/etc/profile
rsync -av /etc/profile bigdata102:/etc/profile

分别在其他两台主机上source

3.4 Hadoop格式化及启停

hdfs namenode -format

hadoop启动

start-all.sh 

查看是否有一下进程启动

[[email protected] ~]# jps
6256 Jps
5843 ResourceManager
5413 NameNode
5702 SecondaryNameNode

[[email protected] ~]# jps
3425 DataNode
3538 NodeManager
3833 Jps

[[email protected] ~]# jps
3425 DataNode
3538 NodeManager
3833 Jps

hadoop关闭

stop-all.sh

3.5 web管理

各机器的进程检查完成,并且确定没有问题后,在浏览器上访问主节点的50070端口,例如:192.168.153.115:50070。会访问到如下页面:

查看存活的节点:

如上,可以访问50070端口就代表集群中的HDFS是正常的。

接下来我们还需要访问主节点的8088端口,这是YARN的web服务端口,例如:192.168.153.115:18088。如下:

参考:
https://cloud.tencent.com/developer/article/1703113
https://blog.csdn.net/fanxin_i/article/details/80425461

问题:
hadoop启动start-all.sh,slave节点没有datanode的问题 https://blog.csdn.net/long085/article/details/78535873

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/jumpe_17/article/details/122259036

智能推荐

C++11新特性(69)- sizeof...运算符_面向对象思考的博客-程序员秘密

示例说明假设有一个程序,需要接受文字信息并生成学生档案,信息的形式为:&quot;Name:ABC&quot;, &quot;Age:20&quot;, &quot;Wight:73&quot;,&quot;Address:Dalian&quot;, &quot;Interest:football&quot;程序解析上述信息后,形成以下形式的数据:根据本应用的要求,姓名,年龄和体重三项为必填项,地址和兴趣为可选项。 sizeof...运算符参考前一篇文章的做法,代...

关于 HTML5 LocalStorage 的 5 个不为人知的事实_前端尽量不要存localstorage_前端阳光的博客-程序员秘密

作者:Todd Anglin译者:前端阳光来源:http://htmlui.com/blog/2011-08-23-5-obscure-facts-about-html5-localstorage.htmlLocalStorage 是HTML5中一个方便使用的 API,它为 Web 开发人员 提供了一个易于使用的5MB的存储空间。使用 LocalStorage API 真的再简单不过了。不信看下://Save a value to localStoragelocalStorage.setI..

MessageBox弹不出来?_weixin_30256901的博客-程序员秘密

今天测试一个程序,在调用MessageBox时竟然不弹出提示窗!调试了一下,运行到MessageBox时直接运行下一句了,好像没这句代码似的.我查啊查啊查,最后才发现问题出在 0x00200000L 这个参数上了,改为 0x00040000L 后正常. 转载于:https://www.cnblogs.com/lxwy/archive/2008/06/15/4420767.html...

斐讯N1可道云用户云盘存储路径改为外挂硬盘_可道云挂载外部储存_love1026999045的博客-程序员秘密

需要工具:xshell6,winscp可道云官方配置文件给了修改用户存储路径的配置方式配置文件路径:/var/www/kodexplorer/config/按照官方给的教程做就行了,官方没说的就是要给移动后的目录给权限,所以下面细说一下吧。1.用winscp将/var/www/kodexplorer/下的data目录移动到硬盘目录下,我这里移动到了这个目录下做示范给...

Zabbix 监控指定端口应用程序_程序使用端口监控_Jack魏的博客-程序员秘密

Zabbix 监控指定端口应用程序1. Zabbix添加端口监控项2. Zabbix添加触发器3. Zabbix添加仪表盘1. Zabbix添加端口监控项配置-&gt;主机-&gt;监控项新建监控项这里的tcp端口可以改成自己想监控的net.tcp.port[,8081]然后点击更新即可2. Zabbix添加触发器配置-&gt;主机-&gt;触发器创建触发器{127.0.0.1:net.tcp.port[,8081].last()}=0严重等级按实际需求即可3.

PHP特性整合(PHP5.X到PHP7.1.x)_风.foxwho的博客-程序员秘密

1PHP7 已经出来1年了,PHP7.1也即将和大家见面,这么多好的特性,好的方法,为什么不使用呢,也希望PHP越来越好。在这里整理 PHP 5.1 ,PHP5.2,PHP5.3,PHP5.4,PHP5.5,PHP5.6 ,PHP7,PHP7.1 所有新特性,已备大家学习及使用

随便推点

Mac 安装 ROUGE 1.5.5 和 pyrouge_jufengada9的博客-程序员秘密

安装 ROUGE 1551.安装 perl,有时MacOS 和 Linux 自带,可以运行 perl- v测试一下,如果出来了版本信息则安装成功。如果command not fond,就需要安装perl。打开终端输入一下指令:curl -L http://xrl.us/installperlosx | bash安装好perl- v后可以在终端输入perl- v测试一下。出现版本信息...

32位单精度浮点数到8位十六进制数的转换(excel vba code for float to hex)_excel浮点数转为十六进制_qqssss121dfd的博客-程序员秘密

  最近有个需求,需要将32位单精度十进制浮点数转换为其对应的内存中存储形式(IEEE-754标准)的8个十六进制字符串。此时的情景是数据量有点大并且需要记录在excel文件中。当在一个单元格中输入单精度浮点数时,在相应的单元格中自动生成8个十六进制字符串。别人推荐用EXCEL VBA来编程解决。  下面32位单精度十进制浮点数转换为其对应的内存中存储形式(IEEE-754标准)的8个十六进制字...

axios调用接口接口失败,重试代码_axios请求接口失败_李振恒的博客-程序员秘密

先上代码import axios from 'axios';const service = axios.create({ baseURL: process.env.NODE_ENV == 'development' ? 'http://localhost:8088/node/' : 'http://xxxxxxx:xxxx/node', timeout: 50000,});service.interceptors.request.use( config =&gt; {

Kafka安装,SpringBoot整合Kafka实现日志收集附源码__chenyl的博客-程序员秘密

一、Kafka安装点击下载地址解压,进入windows目录,启动文件都在这个目录下。二、启动服务没有java环境先安装java。1、启动ZooKeeper进入D:\my_software\kafka_2.13-2.4.1\bin\windows目录,右键打开PowerShell,输入命令.\zookeeper-server-start.bat ..\..\config\zoo...

统计难题 hdu1251 静态版字典树_Fleargwe的博客-程序员秘密

hdu1251-------上午校赛正式赛啊,作为一名大二(快大三)的人啊,居然输出也马虎,人家是Yes啊,我愣是写成了YES,导致wa了11次才成功。如果不马虎兴许二等奖了,作为一名迷茫的大二(快大三)的人是需要一点点鼓励的啊,上大学后运气真是差,大学这种尴尬的事情在我身上就频繁发生。。水个题先吧。。         《统计难题》有人说这道题用字典树G++过不了,C++能过,我用我的试了

基于51单片机---利用霍尔元件无接触式测量直流电机速度_基于51单片机霍尔测速直流电机_翰墨ぃ流离的博客-程序员秘密

项目场景:为了满足工业生产中对发电机、中小型马达、机床转轴等旋转设备的转速控制和转速采集上的需求,本文介绍一种基于51单片机和无线传输的直流电机调速测速系统的设计。以STC90C52RC单片机为主控芯片,利用PWM的原理,通过按键对直流电机进行调速,实现正反转;采用霍尔传感器对直流电机的转动进行计数,并通过主控芯片将采集到的计数值转化为直流电机的当前速度值;利用LCD1602显示模块将计算得到的值进行实时显示。实验表明,此系统具有成本低功耗低,可靠性高等优点,具有一定的实用性。直流电机工作原理: 直

推荐文章

热门文章

相关标签