先安装工具:yum install -y net-tools
![ad6ad474ec3f4dda54b101cf2759d5c7.png](https://i-blog.csdnimg.cn/blog_migrate/f01be21e40f282639ec91c2a387ff909.jpeg)
上传工具包
![a4a110fa9a40ab5a11f5d7763355324b.png](https://i-blog.csdnimg.cn/blog_migrate/9388bb9282df9a7c5dbe623be04af15b.jpeg)
解压文件
tar -zxvf hadoop-2.7.3.tar.gz -C /opt/bigdata/
![67ac07c02245e0757b1864245045fcef.png](https://i-blog.csdnimg.cn/blog_migrate/a33e216451f1108fca4f9836523d8e4b.jpeg)
修改hadoop/etc/hadoop/hadoop-env.sh文件
修改hadoop/etc/hadoop/mapred-env.sh文件
修改hadoop/etc/hadoop/yarn-env.sh文件
![7f157ac92b0e799f7f6a85bbabc0e3d5.png](https://i-blog.csdnimg.cn/blog_migrate/3f991ae14085192105240f81de382aba.jpeg)
指定Java安装路径
export JAVA_HOME=/opt/bigdata/jdk1.8
![a89943b731aba946abbe17e6f7fba3dd.png](https://i-blog.csdnimg.cn/blog_migrate/1346851aa76eedde61552164f16e929c.jpeg)
![1efb25d75080c8eee355f544aa5d79aa.png](https://i-blog.csdnimg.cn/blog_migrate/a5c02d5ad88c6646527198b9bcdc5590.jpeg)
![973d0cd06653785b6f1939cdb2946f2e.png](https://i-blog.csdnimg.cn/blog_migrate/399229cefcc365a18cffb242bb3ceba5.jpeg)
继续修改四个配置文件
core-site.xml、hdfs-site.xml、yarn-site.xml、mapred-site.xml
![dd32778b00a834a4e277ad69e5bb46ae.png](https://i-blog.csdnimg.cn/blog_migrate/7ae5101a57930b1ab3444a5d1777ffaf.jpeg)
hadoop中的四个核心模块对应四个默认配置文件,指定默认的文件系统为HDFS,文件系统的访问入口,namenode所在的机器9000端口是早期Hadoop 1.x使用的,现在Hadoop 2.x使用的是8020,端口号用于节点直接内部通信,使用RPC通信机制。
修改etc/hadoop/core-site.xml文件
/tmp表示临时存储目录,系统每次重启会按照脚本预先设置好的删除里面的文件,重新自定义系统生成的文件路径,/tmp会被清空,无法保证数据文件安全性。
hadoop.tmp.dir
/opt/bigdata/hadoop-2.7.3/data/tmp
fs.default.name
hdfs://masterhbase:8082
hadoop.proxyuser.hadoop.hosts
*
hadoop.proxyuser.hadoop.groups
*
![74be4d33b9ab6abbdcac528bba7629a9.png](https://i-blog.csdnimg.cn/blog_migrate/b5e16dc9f41cc97d5e9b34e3e510dba5.jpeg)
修改etc/hadoop/hdfs-site.xml文件
指定HDFS文件存储的副本数个数,默认是3个,这个数字要小于datanode的节点数
dfs.replication
3
dfs.namenode.name.dir
/opt/bigdata/hadoop-2.7.3/dfs/name
dfs.datanode.data.dir
/opt/bigdata/hadoop-2.7.3/dfs/data
dfs.web.ugi
hdfs,hadoop
dfs.permissions
false
![26de1981a906d6b17834f9637366bdbc.png](https://i-blog.csdnimg.cn/blog_migrate/f672c056d32d011b3d49bd85da984746.jpeg)
修改etc/hadoop/yarn-site.xml文件
yarn.resourcemanager.hostname
masterhbase
yarn.resourcemanager.webapp.address
masterhbase:8088
yarn.resourcemanager.scheduler.address
masterhbase:8081
yarn.resourcemanager.resource-tracker.address
masterhbase:8087
yarn.nodemanager.aux-services
mapreduce_shuffle
yarn.nodemanager.aux-services.mapreduce.shuffle.class
org.apache.hadoop.mapred.ShuffleHandler
yarn.web-proxy.address
masterhbase:54315
![88801a8949301aa6a0a2e979ee2900ce.png](https://i-blog.csdnimg.cn/blog_migrate/78d675dddb395a7d3e9ead21c38333f9.jpeg)
修改etc/hadoop/mapred-site.xml文件(注意重命名)
mv mapred-site.xml.template mapred-site.xml
![cd764fd5980d8bc4fb223218dee25872.png](https://i-blog.csdnimg.cn/blog_migrate/bc93e317e222accc9e68fbdf841c1fd2.jpeg)
mapreduce.framework.name
yarn
mapred.job.tracker
masterhbase:9001
mapreduce.jobhistory.address
masterhbase:10020
![b2ee51a047d40729f2fcc718ce834392.png](https://i-blog.csdnimg.cn/blog_migrate/25433a5e053aacf06741df58a05b4894.jpeg)
修改etc/hadoop/slaves文件,指定从节点的机器位置,添加主机名即可
![f7d0fa7a3d61e68f6839a4034cea5a47.png](https://i-blog.csdnimg.cn/blog_migrate/0bd69233ad7129b1824709c0d194e204.jpeg)
三台机器配置NTP服务
把masterhbase作为整个集群的时间同步服务器
集群中所有其他服务器都来这台服务器masterhbase同步时间
检查每台服务器所在的时区
检查当前系统时区date –R
![865e65a05ad32bafbf05487ec71cf1da.png](https://i-blog.csdnimg.cn/blog_migrate/41593041bd2ba18621c2cee1f6010c0c.jpeg)
如果时区不是+0800,执行下列语句
(1)rm -rf /etc/localtime
(2)ln -s /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
安装ntp服务
查看ntp软件包是否已安装
rpm -qa | grep ntp
![d52b66c1675097666a257447e9f64d59.png](https://i-blog.csdnimg.cn/blog_migrate/742bbcfc773266990ee6f0ffe66da8d4.jpeg)
如果没有那就需要安装ntp
yum install -y ntp
![84418177132461a4dec937743f7c89f7.png](https://i-blog.csdnimg.cn/blog_migrate/7dbbfc8c9c582969fd8b7b5ce4f8d4fc.jpeg)
修改ntp的配置文件(masterhbase)
vim /etc/ntp.conf
去掉下面这行下面的#,并把网段修改成自己的网段
restrict 192.168.7.0 mask 255.255.255.0 nomodify notrap
![02c0a367015990d1d20a1271d18a3ace.png](https://i-blog.csdnimg.cn/blog_migrate/9c2a35c505d7908dcf7bb3a808fd5277.jpeg)
*注释掉一下几行
#server 0.centos.pool.ntp.org iburst
#server 1.centos.pool.ntp.org iburst
#server 2.centos.pool.ntp.org iburst
#server 3.centos.pool.ntp.org iburst
![57d99b1ff3d09019f5d2386652a28684.png](https://i-blog.csdnimg.cn/blog_migrate/aa44739f413a78945239fbd62d271b1e.jpeg)
把下面前面两行的#号去掉,如果没有,需要手动去添加
server 127.127.1.0 #local clock
fudge 127.127.1.0 stratum 10
![62fcfa6093a2f6f372662abad093af72.png](https://i-blog.csdnimg.cn/blog_migrate/30013324f5d24eff999ee5abc5c9825c.jpeg)
启动ntp服务(默认是开启),检查下配置
service ntpd start
chkconfig ntpd on
![5278dc342162b6fed4b2f1f89d4ceed9.png](https://i-blog.csdnimg.cn/blog_migrate/890e1f8d67e0eb517dd623c3c7368830.jpeg)
同步服务器的时间(masterhbase)操作这一步时关闭ntp服务
![dcfddd1ea3be9628387fc5e94fbb0ff9.png](https://i-blog.csdnimg.cn/blog_migrate/de3327e9ac8122dc8f9500e9687e4dc8.jpeg)
同步服务器的时间
ntpdate cn.pool.ntp.org
![7de6f5a8f0e9f7a9b1e48636010adc10.png](https://i-blog.csdnimg.cn/blog_migrate/9660063d8f16c127ba7bd261ab90efd9.jpeg)
第2、3台向第一台同步时间,启动masterhbase的ntp服务
如果另外两台的ntp的进程开启,那么需要关闭
service ntpd stop
chkconfig ntpd off
ntpdate masterhbase
![0c7b8c201b14466b46a7930270418514.png](https://i-blog.csdnimg.cn/blog_migrate/a2d8f30c00c90771f56a5af77175cf3b.jpeg)
制定周期性时间同步计划任务
每10分钟同步一次服务器时间
crontab -e
*/10 * * * * /usr/sbin/ntpdate masterhbase
![93929d53638bce605be2b4ddddb20eee.png](https://i-blog.csdnimg.cn/blog_migrate/5752fbe5980d7f40a989354016ba543b.jpeg)
修改下目录权限
chmod -R 777 /opt/bigdata/
![89c4cda680cf7b75364f5a55c63dcb42.png](https://i-blog.csdnimg.cn/blog_migrate/5a817dca6213afc907669afdf180b1b0.jpeg)
将masterhbase中hadoop拷贝到另外两台机器
scp -r /opt/bigdata/hadoop-2.7.3 root@masterslave1:/opt/bigdata
scp -r /opt/bigdata/hadoop-2.7.3 root@masterslave2:/opt/bigdata
![20e492fb6dedcda852f28dada104a0ba.png](https://i-blog.csdnimg.cn/blog_migrate/ed4954a02d63df3e0edcdffdd58b7a14.jpeg)
格式化命令(masterhbase)
bin/hdfs namenode –format
成功了
![67177a495382d8f12d15931edcbc52f5.png](https://i-blog.csdnimg.cn/blog_migrate/9ade2d1308cb1be513093dd6672d181e.jpeg)
启动hadoop
sbin/start-all.sh
![a7618064c2de6e69be805b7633a3dca6.png](https://i-blog.csdnimg.cn/blog_migrate/3fd0c7fcd34ab70b61c6d751ad7ec8cf.jpeg)
jps检查下进程,hadoop搭建完成
![29dd28d455b82db7db681d515fcd8696.png](https://i-blog.csdnimg.cn/blog_migrate/ff27b0563e0f6219da079834aa960024.jpeg)