hadoop集群搭建简要记录
2019/03/09 21:46
准备4台服务器或者虚拟机【centos7】,分别设置好静态ip【之所以设置静态ip主要就是为了省心!!!】
【
centos7下面配置静态IP 参考地址: https://www.linuxidc.com/Linux/2017-10/147449.htm
cd /etc/sysconfig/network-scripts
ls
这里说一下需要修改的位置:
#修改
BOOTPROTO=static #这里讲dhcp换成ststic
ONBOOT=yes #将no换成yes
#新增
IPADDR=192.168.10.100 #静态IP
GATEWAY=192.168.10.2 #默认网关
NETMASK=255.255.255.0 #子网掩码
保存退出后,重启网络服务:
# service network restart
Restarting network (via systemctl):
】
master 192.168.10.100
slave1 192.168.10.101
slave2 192.168.10.102
slave 3 192.168.10.103
主机名分别是 node node1 node2 node3【后面会提到如何进行修改配置】
这里只以master服务器为例。【至于slave机器,可以考虑用虚拟机克隆去生成,简单方便】
安装jdk和hadoop,就是解压。
然后vim /etc/profile 去配置java和hadoop的环境变量。如下:
# jdk1.8 环境变量 2019/03/09 18:19 export JAVA_HOME=/usr/local/jdk1.8 export CLASSPATH=.:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar # hadoop环境变量 2019/03/09 18:19 export HADOOP_HOME=/usr/local/hadoop2.2.0 export HADOOP_LOG_DIR=/usr/local/hadoop2.2.0/logs export YARN_LOG_DIR=$HADOOP_LOG_DIR export PATH=.:$HADOOP_HOME/sbin:$HADOOP_HOME/bin:$JAVA_HOME/bin:$PATH
可以使用命令 hadoop 查看是否成功,参考类似 java -version的功能。
为hadoop的相应文件位置准备文件目录。比如临时生成文件的存储目录、日志信息存储位置、真正数据存储位置、文件系统元数据存储位置、集群数据位置。可以自定义创建对应的文件目录。注意:这些文件目录的路径后面配置要用到。

接下来修改hadoop的相关配置文件:
切换路径到hadoop主目录下的etc下的hadoop路径下:

hadoop-env.sh yarn-env.sh mapred-env.sh 这三个文件里面,添加对jdk的引用,否则在启动hdfs的时候,会报异常:找不到java环境。
添加:export JAVA_HOME=/usr/local/jdk1.8 【 注意 和 /etc/profile 里面配置的java环境变量写法一致,使用绝对路径,最好直接拷贝过来】
vim slaves文件,里面添加slave节点的主机名。主机名的改法后面会说,

配置:core-site.xml【注意里面的路径参数结合自己的实际进行修改。相关路径就是上面让自定义创建的那些目录路径】
<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://node:9000/</value>
<description>设定namenode的主机名和端口</description>
</property>
<property>
<name>hadoop.temp.dir</name>
<value>/usr/local/hadoop2.2.0/tmp/hadoop-${user.name}</value>
<description>存储临时文件的目录</description>
</property>
<property>
<name>hadoop.proxyuser.hadoop.hosts</name>
<value>*</value>
</property>
<property>
<name>hadoop.proxyuser.hadoop.groups</name>
<value>*</value>
</property>
</configuration>
配置:hdfs-site.xml【注意里面的路径参数结合自己的实际进行修改。相关路径就是上面让自定义创建的那些目录路径】
<configuration> <property> <name>dfs.namenode.http-address</name> <value>node:50070</value> <description>NameNode地址和端口</description> </property> <property> <name>dfs.namenode.secondary.http-address</name> <value>node1:50090</value> <description>SecondNameNode 地址和端口</description> </property> <property> <name>dfs.replication</name> <value>3</value> <description>设定HDFS存储文件的副本个数,默认为3</description> </property> <property> <name>dfs.namenode.name.dir</name> <value>file:///usr/local/hadoop2.2.0/hdfs/name</value> <description>namenode 用来 持续存储命名空间和交换日志的本地系统路径</description> </property> <property> <name>dfs.datanode.data.dir</name> <value>file:///usr/local/hadoop2.2.0/hdfs/data</value> <description>DataNode在本地存储文件的目录列表</description> </property> <property> <name>dfs.namenode.checkpoint.dir</name> <value>file:///usr/local/hadoop2.2.0/hdfs/namesecondary</value> <description>设置secondarynamenode存储临时镜像的本地文件系统路径,如果这是一个用逗号分割的文件列表,则镜像将会冗余复制到所有目录</description> </property> <property> <name>dfs.webhdfs.enabled</name> <value>true</value> <description>是否允许网页浏览hdfs文件</description> </property> <property> <name>dfs.stream-buffer-size</name> <value>131072</value> <description> 默认4kb,作为hadoop的缓冲区,用于hadoop读取hdfs的文件和写hdfs的文件,好友map的输出都用到了这个缓冲区容量,对于现在硬件,可以设置为128kb(131072),甚至是1mb(太大的话map和reduce的内存溢出) </description> </property> </configuration>
配置:yarn-site.xml【注意里面的路径参数结合自己的实际进行修改。相关路径就是上面让自定义创建的那些目录路径】
<configuration> <!-- Site specific YARN configuration properties --> <property> <name>yarn.resourcemanager.hostname</name> <value>node</value> </property> <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.address</name> <value>node:8032</value> </property> <property> <name>yarn.resourcemanager.scheduler.address</name> <value>node:8030</value> </property> <property> <name>yarn.resourcemanager.resource-tracker.address</name> <value>node:8031</value> </property> <property> <name>yarn.resourcemanager.admin.address</name> <value>node:8033</value> </property> <property> <name>yarn.resourcemanager.webapp.address</name> <value>node:8088</value> </property> </configuration>
接下来修改主机名:【centos7】
查看主机名以及相关设置
hostnamectl status --static 静态的
hostnamectl status --transient 瞬态的
hostnamectl status --pretty 灵活的
同时修改三种主机名:
sudo hostnamectl set-hostname <主机名,eg:node/node1/。。。>
绑定主机名和ip
vim /etc/hosts
添加:
192.168.10.100 node
192.168.10.101 node1
192.168.10.102 node2
192.168.10.103 node3
guanbi关闭防火墙:
systemctl stop firewalld.service
防止防火墙开机自启动:
systemctl disable firewalld.service
关于各个节点之间使用ssh进行免密通信的设置:很简单,这里不再赘述,网上很多,也很简单。
注意其他slave节点也要进行同样的配置。
最后:
HDFS
启动 start-dfs.sh
hadoop资源管理器 Yarn
启动 start-yarn.sh
JobHistory 历史任务管理器
启动 mr-jobhistory-daemon.sh start historyserver
关闭 同上,start改为stop
hadoop集群搭建简要记录的更多相关文章
- Linux环境下Hadoop集群搭建
Linux环境下Hadoop集群搭建 前言: 最近来到了武汉大学,在这里开始了我的研究生生涯.昨天通过学长们的耐心培训,了解了Hadoop,Hdfs,Hive,Hbase,MangoDB等等相关的知识 ...
- Hadoop集群搭建-02安装配置Zookeeper
Hadoop集群搭建-05安装配置YARN Hadoop集群搭建-04安装配置HDFS Hadoop集群搭建-03编译安装hadoop Hadoop集群搭建-02安装配置Zookeeper Hado ...
- Hadoop集群搭建(五)~搭建集群
继上篇关闭防火墙之后,因为后面我们会管理一个集群,在VMware中不断切换不同节点,为了管理方便我选择xshell这个连接工具,大家也可以选择SecureCRT等工具. 本篇记录一下3台机器集群的搭建 ...
- Hadoop 集群搭建和维护文档
一.前言 -- 基础环境准备 节点名称 IP NN DN JNN ZKFC ZK RM NM Master Worker master1 192.168.8.106 * * * * * * maste ...
- Hadoop集群搭建(完全分布式版本) VMWARE虚拟机
Hadoop集群搭建(完全分布式版本) VMWARE虚拟机 一.准备工作 三台虚拟机:master.node1.node2 时间同步 ntpdate ntp.aliyun.com 调整时区 cp /u ...
- Hadoop集群搭建的详细过程
Hadoop集群搭建 一.准备 三台虚拟机:master01,node1,node2 时间同步 1.date命令查看三台虚拟机时间是否一致 2.不一致时间同步:ntpdate ntp.aliyun.c ...
- Hadoop 集群搭建
Hadoop 集群搭建 2016-09-24 杜亦舒 目标 在3台服务器上搭建 Hadoop2.7.3 集群,然后测试验证,要能够向 HDFS 上传文件,并成功运行 mapreduce 示例程序 搭建 ...
- Hadoop集群搭建安装过程(三)(图文详解---尽情点击!!!)
Hadoop集群搭建安装过程(三)(图文详解---尽情点击!!!) 一.JDK的安装 安装位置都在同一位置(/usr/tools/jdk1.8.0_73) jdk的安装在克隆三台机器的时候可以提前安装 ...
- Hadoop集群搭建安装过程(二)(图文详解---尽情点击!!!)
Hadoop集群搭建安装过程(二)(配置SSH免密登录)(图文详解---尽情点击!!!) 一.配置ssh无密码访问 ®生成公钥密钥对 1.在每个节点上分别执行: ssh-keygen -t rsa(一 ...
随机推荐
- 【253】◀▶IEW-Unit18
Unit 18 International Events 1.model1对应题目分析 The Olympic Games is a major international sporting even ...
- Java泛型通配符以及限定
摘抄笔记 A:泛型的限定 /* * 将的酒店员工,厨师,服务员,经理,分别存储到3个集合中 * 定义方法,可以同时遍历3集合,遍历三个集合的同时,可以调用工作方法 */ import java.uti ...
- layui 表格新增删除一行
1.html 代码 <div class="layui-row layui-col-space5"> <div> <span style=" ...
- [原创]SQL 表值函数:获取从今天计算起往前自定义天数
PS:此博文是利用Windows Live Writer 2012编写,格式效果可能不太好. 在我开发过程中,遇到一个统计需求,结果是要求返回从当天起往回推算出自定义输入的天数 为此我写了一个表值函数 ...
- 树莓派 Learning 002 装机后必要的操作 --- 08 实现PC端 远程登入 树莓派 --- 法2 远程登录树莓派的图形桌面
树莓派 装机后必要的操作 - 实现PC端 远程登入 树莓派 我的树莓派型号:Raspberry Pi 2 Model B V1.1 装机系统:NOOBS v1.9.2 PC端系统:win10 x64 ...
- java多线程系列:ThreadPoolExecutor
ThreadPoolExecutor自定义线程池 开篇一张图(图片来自阿里巴巴Java开发手册(详尽版)),后面全靠编 好了要开始编了,从图片中就可以看到这篇博文的主题了,ThreadPoolExec ...
- webpack4下import()模块按需加载,打包按需切割模块,减少包体积,加快首页请求速度
一:背景 因为项目功能越加越多,打包后的体积越来越大,导致首页展示的时候速度比较慢,因为要等压缩的js的包加载完毕. 首页展示的时候只需要对应的js,并不需要全部的js模块,所以这里就可以用按需加载, ...
- 与"shark"相关的表达
The word shark can be used to describe someone who is tricky and uses other people. Shark这个单词可以用来形容一 ...
- Mail.Ru Cup 2018 Round 2C(__gcd)
#include<bits/stdc++.h>using namespace std;long long mx(long long l1,long long r1,long long l2 ...
- 洛谷P2119 魔法阵
P2119 魔法阵 题目描述 六十年一次的魔法战争就要开始了,大魔法师准备从附近的魔法场中汲取魔法能量. 大魔法师有m个魔法物品,编号分别为1,2,...,m.每个物品具有一个魔法值,我们用Xi表示编 ...