Centos 6.5搭建Hadoop-2.7.3分布式集群
2017-09-05 07:47
405 查看
9月,按照计划开始深入大数据,今天抽时间把Centos 6.5搭建Hadoop-2.7.3分布式集群的过程做个记录,主要分为如下几步:
0. 准备阶段
1. 安装jdk1.8.0_111
2. 安装配置hadoop-2.7.3
3. 格式化NameNode
4. 启动Hadoop
5. 查看Hadoop运行情况
6. 通过example测试Hadoop分布式集群功能是否正常
开始前,请准备好jdk1.8.0_111.tar.gz以及hadoop-2.7.3.tar.gz压缩安装包。
0. 准备阶段
0.1 准备Linux环境
0.1.0
点击VMware快捷方式,右键打开文件所在位置 -> 双击vmnetcfg.exe -> VMnet1 host-only ->修改subnet ip 设置网段:192.168.8.0 子网掩码:255.255.255.0 -> apply -> ok
回到windows --> 打开网络和共享中心 -> 更改适配器设置 -> 右键VMnet1 -> 属性 -> 双击IPv4 -> 设置windows的IP:192.168.8.100 子网掩码:255.255.255.0 -> 点击确定
在虚拟软件上 --My Computer -> 选中虚拟机 -> 右键 -> settings -> network adapter -> host only -> ok
0.1.1 修改主机名
0.1.2 修改IP
两种方式:
第一种:通过Linux图形界面进行修改
进入Linux图形界面 -> 右键点击右上方的两个小电脑 -> 点击Edit connections -> 选中当前网络System eth0 -> 点击edit按钮 -> 选择IPv4 -> method选择为manual -> 点击add按钮 -> 添加IP:192.168.8.118 子网掩码:255.255.255.0 网关:192.168.1.1 -> apply
第二种:修改配置文件方式
0.1.3 修改主机名和IP的映射关系
0.1.4 关闭防火墙
0.1.5 重启Linux
0.2 创建用户组和用户
0.3 设置新创建的用户为sudo权限用户
0.4 切换用户角色
0.5 配置ssh免登陆
博主习惯在linux系统的/usr/local/share/applications/目录下安装软件。接下来,默认各位已经把jdk和hadoop安装包移动到了/usr/local/share/applications目录下,开始安装:
1. 安装jdk1.8.0_111
按I键进入编辑状态,做如下编辑:
编辑完成,Shift + : + wq + Enter键保存退出。通过如下命令使修改立即生效:
验证jdk是否安装配置完成:
2. 安装配置hadoop-2.7.3
2.1 安装hadoop-2.7.3
新建一个目录hadoop以及hadoop需要用到的数据目录tmp,解压hadoop-2.7.3.tar.gz压缩包,并把解压好的hadoop-2.7.3文件夹移动到新建的hadoop目录下:
配置hadoop环境变量:
做如下编辑:
同理,编辑完成,Shift + : + wq + Enter键保存退出。通过如下命令使修改立即生效:
2.2 配置hadoop-2.7.3
hadoop2.x的配置文件所在目录:$HADOOP_HOME/etc/hadoop
总共需要配置7个文件。首先进入到$HADOOP_HOME/etc/hadoop目录下:(我们当前在/usr/local/share/applications目录下)
2.2.1 配置hadoop-env.sh
把文件中的 export JAVA_HOME=${JAVA_HOME} 替换掉:
2.2.2 配置yarn-env.sh
把文件中的 export JAVA_HOME=/home/y/libexec/jdk1.6.0/ 替换掉:
2.2.3 配置core-site.xml
2.2.4 配置hdfs-site.xml
2.2.5 配置mapred-site.xml
首先通过如下命令复制一份mapred-site.xml文件:
在mapred-site.xml文件中做如下配置:
2.2.6 配置yarn-site.xml
2.2.7 配置slaves文件
把所有的slave节点主机名加入进入即可,比如说我有三个slave节点,如下:
需要做如下配置:
比如说我的/etc/hosts文件中有如下内容:
2.2.8 复制hadoop文件到所有的slave从节点
我们需要复制的内容是完整的hadoop目录,不只是hadoop-2.7.3目录
3. 格式化NameNode
在Terminal终端执行如下命令:
格式化期间,在终端打印出来的信息没有报错就表示格式化成功。
4. 启动Hadoop
因为我们之前已经配置过环境变量,直接在任意位置都可以执行hadoop命令了。
两种方式启动Hadoop。
方式一:(强烈推荐)
方式二:(不推荐)
5. 查看Hadoop运行情况
5.1 查看进程运行情况
如果可以看到NameNode、ResourceManager、SecondaryNameNode三个进程,就表示进程启动成功。
5.2 WEB UI查看集群是否成功启动
在 HadoopMaster 上启动 Firefox 浏览器,在浏览器地址栏中输入输入 http://master:50070/,检查namenode和datanode是否正常。UI页面如下图所示。
在 HadoopMaster 上启动 Firefox 浏览器,在浏览器地址栏中输入输入 http://master:18088/,检查Yarn 是否正常,页面如下图所示。
6. 通过example测试Hadoop分布式集群功能是否正常
会看到如下结果:
得出最终的结果如下:
以上3个验证步骤都没有问题,说明集群正常启动。
好了,Centos 6.5搭建Hadoop-2.7.3分布式集群就完成了。博主设计,仅供参考!
0. 准备阶段
1. 安装jdk1.8.0_111
2. 安装配置hadoop-2.7.3
3. 格式化NameNode
4. 启动Hadoop
5. 查看Hadoop运行情况
6. 通过example测试Hadoop分布式集群功能是否正常
开始前,请准备好jdk1.8.0_111.tar.gz以及hadoop-2.7.3.tar.gz压缩安装包。
0. 准备阶段
0.1 准备Linux环境
0.1.0
点击VMware快捷方式,右键打开文件所在位置 -> 双击vmnetcfg.exe -> VMnet1 host-only ->修改subnet ip 设置网段:192.168.8.0 子网掩码:255.255.255.0 -> apply -> ok
回到windows --> 打开网络和共享中心 -> 更改适配器设置 -> 右键VMnet1 -> 属性 -> 双击IPv4 -> 设置windows的IP:192.168.8.100 子网掩码:255.255.255.0 -> 点击确定
在虚拟软件上 --My Computer -> 选中虚拟机 -> 右键 -> settings -> network adapter -> host only -> ok
0.1.1 修改主机名
vim /etc/sysconfig/network NETWORKING=yes HOSTNAME=master
0.1.2 修改IP
两种方式:
第一种:通过Linux图形界面进行修改
进入Linux图形界面 -> 右键点击右上方的两个小电脑 -> 点击Edit connections -> 选中当前网络System eth0 -> 点击edit按钮 -> 选择IPv4 -> method选择为manual -> 点击add按钮 -> 添加IP:192.168.8.118 子网掩码:255.255.255.0 网关:192.168.1.1 -> apply
第二种:修改配置文件方式
vim /etc/sysconfig/network-scripts/ifcfg-eth0 DEVICE="eth0" BOOTPROTO="static" HWADDR="00:0C:29:3C:BF:E7" IPV6INIT="yes" NM_CONTROLLED="yes" ONBOOT="yes" TYPE="Ethernet" UUID="ce22eeca-ecde-4536-8cc2-ef0dc36d4a8c" IPADDR=192.168.8.118 NETMASK=255.255.255.0 GATEWAY=192.168.8.1 DNS1=192.168.8.1 DNS2=114.114.114.114
0.1.3 修改主机名和IP的映射关系
vim /etc/hosts 192.168.8.118 master
0.1.4 关闭防火墙
#查看防火墙状态 service iptables status #关闭防火墙 service iptables stop #查看防火墙开机启动状态 chkconfig iptables --list #关闭防火墙开机启动 chkconfig iptables off
0.1.5 重启Linux
reboot
0.2 创建用户组和用户
[root@master~]$ useradd hadoop & echo hadoop | passwd --stdin hadoop
0.3 设置新创建的用户为sudo权限用户
[root@master~]$ echo "hadoopALL=(ALL) NOPASSWD:ALL" >> /etc/sudoers
0.4 切换用户角色
[root@master~]$ su hadoop
0.5 配置ssh免登陆
#生成ssh免登陆密钥 #进入到我的home目录 cd ~/.ssh ssh-keygen -t rsa (四个回车) 执行完这个命令后,会生成两个文件id_rsa(私钥)、id_rsa.pub(公钥)将公钥拷贝到要免登陆的机器上 ssh-copy-id localhost
博主习惯在linux系统的/usr/local/share/applications/目录下安装软件。接下来,默认各位已经把jdk和hadoop安装包移动到了/usr/local/share/applications目录下,开始安装:
1. 安装jdk1.8.0_111
[hadoop@master applications]$ tar -zxvf jdk1.8.0_111.tar.gz [hadoop@master applications]$ vim ~/.bash_profile
按I键进入编辑状态,做如下编辑:
JAVA_HOME=/usr/local/share/applications/jdk1.8.0_111 CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar PATH=$JAVA_HOME/bin:$PATH export JAVA_HOME export CLASSPATH export PATH
编辑完成,Shift + : + wq + Enter键保存退出。通过如下命令使修改立即生效:
[hadoop@master applications]$ source ~/.bash_profile
验证jdk是否安装配置完成:
[hadoop@master applications]$ java -version [hadoop@master applications]$ javac -version
2. 安装配置hadoop-2.7.3
2.1 安装hadoop-2.7.3
新建一个目录hadoop以及hadoop需要用到的数据目录tmp,解压hadoop-2.7.3.tar.gz压缩包,并把解压好的hadoop-2.7.3文件夹移动到新建的hadoop目录下:
[hadoop@master applications]$ mkdir hadoop [hadoop@master applications]$ mkdir hadoop/tmp [hadoop@master applications]$ tar -zxvf hadoop-2.7.3.tar.gz [hadoop@master applications]$ mv hadoop hadoop-2.7.3 /hadoop
配置hadoop环境变量:
[hadoop@master applications]$ vim ~/.bash_profile
做如下编辑:
HADOOP_HOME=/usr/local/share/applications/hadoop/hadoop-2.7.3 PATH=$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$PATH export HADOOP_HOME export PATH
同理,编辑完成,Shift + : + wq + Enter键保存退出。通过如下命令使修改立即生效:
[hadoop@master applications]$ source ~/.bash_profile
2.2 配置hadoop-2.7.3
hadoop2.x的配置文件所在目录:$HADOOP_HOME/etc/hadoop
总共需要配置7个文件。首先进入到$HADOOP_HOME/etc/hadoop目录下:(我们当前在/usr/local/share/applications目录下)
[hadoop@master applications]$ cd /hadoop/hadoop-2.7.3/etc/hadoop
2.2.1 配置hadoop-env.sh
把文件中的 export JAVA_HOME=${JAVA_HOME} 替换掉:
在Terminal终端执行 vim hadoop-env.sh 命令编辑文件: export JAVA_HOME=/usr/local/share/applications/jdk1.8.0_111
2.2.2 配置yarn-env.sh
把文件中的 export JAVA_HOME=/home/y/libexec/jdk1.6.0/ 替换掉:
在Terminal终端执行 vim yarn-env.sh 命令编辑文件: export JAVA_HOME=/usr/local/share/applications/jdk1.8.0_111/
2.2.3 配置core-site.xml
在Terminal终端执行 vim 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>/usr/local/share/applications/hadoop/tmp</value> <description>Abase for other temporary directories.</description> </property> <property> <name>hadoop.proxyuser.jangz.hosts</name> <value>*</value> </property> <property> <name>hadoop.proxyuser.jangz.groups</name> <value>*</value> </property> </configuration>
2.2.4 配置hdfs-site.xml
在Terminal终端执行 vim hdfs-site.xml 命令编辑文件: <configuration> <property> <name>dfs.namenode.secondary.http-address</name> <value>master:9001</value> <description>view HDFS status by web page</description> </property> <property> <name>dfs.namenode.name.dir</name> <value>/usr/local/share/applications/hadoop/dfs/name</value> </property> <property> <name>dfs.namenode.data.dir</name> <value>/usr/local/share/applications/hadoop/dfs/data</value> </property> <property> <name>dfs.replication</name> <value>2</value> <description>Every block has 2 backup</description> </property> <property> <name>dfs.webhdfs.enabled</name> <value>true</value> </property> </configuration>
2.2.5 配置mapred-site.xml
首先通过如下命令复制一份mapred-site.xml文件:
cp mapred-site.xml.template mapred-site.xml
在mapred-site.xml文件中做如下配置:
在Terminal终端执行 vim 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> </configuration>
2.2.6 配置yarn-site.xml
在Terminal终端执行 vim 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.address</name> <value>master:18040</value> </property> <property> <name>yarn.resourcemanager.scheduler.address</name> <value>master:18030</value> </property> <property> <name>yarn.resourcemanager.resource-tracker.address</name> <value>master:18025</value> </property> <property> <name>yarn.resourcemanager.admin.address</name> <value>master:18041</value> </property> <property> <name>yarn.resourcemanager.webapp.address</name> <value>master:18088</value> </property> <property> <name>yarn.nodemanager.resource.memory-mb</name> <value>18192</value> </property> <property> <name>yarn.log-aggregation-enable</name> <value>true</value> </property> </configuration>
2.2.7 配置slaves文件
把所有的slave节点主机名加入进入即可,比如说我有三个slave节点,如下:
[hadoop@master hadoop]$ cat slaves slave1 slave2 slave3
需要做如下配置:
vim slaves slave #写上你自己的节点主机名即可,前提是在/etc/hosts文件中已经配置了IP和主机名的映射关系
比如说我的/etc/hosts文件中有如下内容:
[hadoop@master hadoop]$ cat /etc/hosts ::1 localhost localhost.localdomain localhost6 localhost6.localdomain6 10.211.55.100 master 10.211.55.101 slave1 10.211.55.102 slave2 10.211.55.103 slave3 10.211.55.104 slave4
2.2.8 复制hadoop文件到所有的slave从节点
我们需要复制的内容是完整的hadoop目录,不只是hadoop-2.7.3目录
[hadoop@master appliciations]$ scp -r hadoop slave:/usr/local/share/applications/
3. 格式化NameNode
在Terminal终端执行如下命令:
[hadoop@master applications]$ hdfs namenode -format
格式化期间,在终端打印出来的信息没有报错就表示格式化成功。
4. 启动Hadoop
因为我们之前已经配置过环境变量,直接在任意位置都可以执行hadoop命令了。
两种方式启动Hadoop。
方式一:(强烈推荐)
[hadoop@master applications]$ start-dfs.sh [hadoop@master applications]$ start-yarn.sh
方式二:(不推荐)
[hadoop@master applications]$ start-all.sh
5. 查看Hadoop运行情况
5.1 查看进程运行情况
[hadoop@master applications]$ jps 17170 Jps 2003 NameNode 2597 ResourceManager 2255 SecondaryNameNode
如果可以看到NameNode、ResourceManager、SecondaryNameNode三个进程,就表示进程启动成功。
5.2 WEB UI查看集群是否成功启动
在 HadoopMaster 上启动 Firefox 浏览器,在浏览器地址栏中输入输入 http://master:50070/,检查namenode和datanode是否正常。UI页面如下图所示。
在 HadoopMaster 上启动 Firefox 浏览器,在浏览器地址栏中输入输入 http://master:18088/,检查Yarn 是否正常,页面如下图所示。
6. 通过example测试Hadoop分布式集群功能是否正常
[hadoop@master applications]$ cd /hadoop/hadoop-2.7.3/share/hadoop/mapreduce [hadoop@master mapreduce]$ hadoop jar hadoop-mapreduce-examples-2.7.3.jar pi 10 10
会看到如下结果:
得出最终的结果如下:
以上3个验证步骤都没有问题,说明集群正常启动。
好了,Centos 6.5搭建Hadoop-2.7.3分布式集群就完成了。博主设计,仅供参考!
相关文章推荐
- Centos 6.5搭建Hadoop-2.7.3分布式集群的那些坑
- centos6.5 32位搭建hadoop2.2.0 集群
- CentOS6.5搭建Hadoop集群
- Hadoop2.7.3在CentOS 6.5中的集群搭建
- CentOS 6.5 搭建Hadoop 2.5.2集群
- CentOS 6.5 搭建Hadoop2.6完全分布式集群
- Hadoop2.2.0在CentOS6.5上的集群搭建简单教程
- Centos 6.5 搭建hadoop 集群
- centos-6.5-x64搭建hadoop集群
- 基于centos6.5 hadoop 集群搭建
- CentOS 6.5 hadoop 2.7.3 集群环境搭建
- Centos7上搭建hadoop2.7.3分布式集群环境实验记录
- Centos6.5 Hadoop完全分布集群搭建详解
- 虚拟机centos6.5 --hadoop2.6集群环境搭建
- 基于CENTOS6.5搭建Hadoop集群
- CentOS6.5搭建Hadoop2.7集群环境前要注意的问题
- CentOS 6.5 搭建Hadoop 1.2.1集群
- redis 在CentOS6.5_64下集群搭建
- centos6.5 搭建hadoop 开发环境(单台服务器)
- 集群RedHat6.5+JDK1.8+Hadoop2.7.3+Spark2.1.1+zookeeper3.4.6+kafka2.11+flume1.6环境搭建步骤