共计 5630 个字符,预计需要花费 15 分钟才能阅读完成。
分享一下 CentOS 7 搭建 Hadoop 2.7.3 完全分布式集群环境步骤。
(一)软件准备
1,hadoop-2.7.3.tar.gz(包)
2, 三台机器装有 cetos7 的机子
(二)安装步骤
1,给每台机子配相同的用户
进入 root : su root
创建用户 s: useradd s
修改用户密码:passwd s
2. 关闭防火墙及修改每台机的 hosts(root 下)
vim /etc/hosts 如:(三台机子都一样)
vim /etc/hostsname: 如修改后参看各自的 hostname
关闭防火墙:
systemctl stop firewalld.service
禁用防火墙:systemctl disable firewalld.service
查看防火墙状态 firewall-cmd –state
重启 reboot
3, 为每台机的用户 s 配置 ssh,以用户 s 身份登录 (一定要相同的用户,因为 ssh 通信默认使用相同用户身份访问另一台机子)
1,root 用户下修改:vim /etc/ssh/sshd_config, 设置这三项后,执行 service sshd restart
2,退出 root,在用户 s 下操作
生成密钥对: ssh-keygen -t dsa(一路回车即可)
转入 ssh 目录下:cd .ssh
导入公钥:cat id_dsa.pub >> authorized_keys
修改 authorized_keys 权限:chmod 644
authorized_keys (修改权限,保证自己免密码能登入)
验证 ssh Master(在三台机都执行相同的操作)
3,实现 master-slave 免密码登录
在 master 上执行:cat ~/.ssh/id_dsa.pub | ssh s@Slave1 ‘cat – >> ~/.ssh/authorized_keys’
cat ~/.ssh/id_dsa.pub | ssh s@Slave2 ‘cat – >> ~/.ssh/authorized_keys ‘
验证 :ssh Slave1
(三)配置 Hadoop 集群
1,解压 hadoop 和建立文件
root 用户下:tar zxvf /home/hadoop/hadoop-2.7.3.tar.gz -C /usr/
重命名:mv hadoop-2.7.3 hadoop
授权给 s: chown -R s /usr/hadoop
2,创建 hdfs 相关文件(三台机子都需要操作)
创建存储 hadoop 数据文件的目录: mkdir /home/hadoopdir
存储临时文件,如 pid:mkdir /home/hadoopdir/tmp
创建 dfs 系统使用的 dfs 系统名称 hdfs-site.xml 使用:mkdir /home/hadoopdir/dfs/name
创建 dfs 系统使用的数据文件 hdfs-site.xml 文件使用:mkdir /home/hadoopdir/dfs/data
授权给 s: chown -R s /home/hadoopdir
3,配置环境变量 (三台机子都需要操作)
root 用户下:vim /etc/profile 添加如图:保存退出后:source /etc/profile
验证:hadoop version(这里要修改 /usr/hadoop/etc/hadoop/hadoop-env.sh,即 export Java_HOME=/usr/lib/jvm/jre)
4,配置 hadoop 文件内容
4.1 修改 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>file:/home/hadoopdir/tmp/</value>
<description>A base for other temporary directories.</description>
</property>
<property>
<name>hadoop.proxyuser.hadoop.hosts</name>
<value>*</value>
</property>
<property>
<name>hadoop.proxyuser.hadoop.groups</name>
<value>*</value>
</property>
</configuration>
4.2 修改 hdfs-site.xml 文件
<configuration>
<property>
<name>dfs.namenode.name.dir</name>
<value>file:///home/hadoopdir/dfs/name</value>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>file:///home/hadoopdir/dfs/data</value>
</property>
<property>
<name>dfs.replication</name>
<value>2</value>
</property>
<property>
<name>dfs.webhdfs.enabled</name>
<value>true</value>
</property>
</configuration>
4.3 修改 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>
<property>
<name>mapreduce.jobtracker.http.address</name>
<value>Master:50030</value>
</property>
<property>
<name>mapred.job.tracker</name>
<value>Master:9001</value>
</property>
</configuration>
4.4 修改 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.hostname</name>
<value>Master</value>
</property>
<property>
<name>yarn.resourcemanager.address</name>
<value>Master:8032</value>
</property>
<property>
<name>yarn.resourcemanager.scheduler.address</name>
<value>Master:8030</value>
</property>
<property>
<name>yarn.resourcemanager.resource-tracker.address</name>
<value>Master:8031</value>
</property>
<property>
<name>yarn.resourcemanager.admin.address</name>
<value>Master:8033</value>
</property>
<property>
<name>yarn.resourcemanager.webapp.address</name>
<value>Master:8088</value>
</property>
</configuration>
4.5, 修改 slaves 文件
5,搭建集群(普通用户 s)
格式 hadoop 文件:hadoop namenode -format (最后出现“util.ExitUtil: Exiting with status 0”,表示成功)
发送 dfs 内容给 Slave1:scp -r /home/hadoopdir/dfs/* Slave1:/home/hadoopdir/dfs
发给 dfs 内容给 Slave2:scp -r /home/hadoopdir/dfs/* Slave2:/home/hadoopdir/dfs
发送 hadoop 文件给数据节点:scp -r /usr/hadoop/* Slave1:/usr/hadoop/ scp -r /usr/hadoop/* Slave2:/usr/hadoop/
6,启动集群
./sbin/start-all.sh
1,jps(centos 7 默认没有,可以参照分割线里的安装)
————————————– 分割线 ————————————–
CentOS 中使用 yum 安装 java 时,没有 jps 的问题的解决。
解决方法:需要安装 java-1.X.X-openjdk-devel 这个包,他提供了 jps 这个工具。
————————————– 分割线 ————————————–
查看:Master 和 Slave 中分别出现如下所示:
2,离开安全模式(master): hadoop dfsadmin safemode leave
查看结果:hadoop dfsadmin -report, 如图
3,登录网页查看:http://Master:50070 (查看 live node) 查看 yarn 环境(http://Master/8088)
Hadoop 项目之基于 CentOS7 的 Cloudera 5.10.1(CDH)的安装部署 http://www.linuxidc.com/Linux/2017-04/143095.htm
Hadoop2.7.2 集群搭建详解(高可用)http://www.linuxidc.com/Linux/2017-03/142052.htm
使用 Ambari 来部署 Hadoop 集群(搭建内网 HDP 源)http://www.linuxidc.com/Linux/2017-03/142136.htm
Ubuntu 14.04 下 Hadoop 集群安装 http://www.linuxidc.com/Linux/2017-02/140783.htm
CentOS 6.7 安装 Hadoop 2.7.2 http://www.linuxidc.com/Linux/2017-08/146232.htm
Ubuntu 16.04 上构建分布式 Hadoop-2.7.3 集群 http://www.linuxidc.com/Linux/2017-07/145503.htm
CentOS 7.3 下 Hadoop2.8 分布式集群安装与测试 http://www.linuxidc.com/Linux/2017-09/146864.htm
CentOS 7 下 Hadoop 2.6.4 分布式集群环境搭建 http://www.linuxidc.com/Linux/2017-06/144932.htm
Hadoop2.7.3+Spark2.1.0 完全分布式集群搭建过程 http://www.linuxidc.com/Linux/2017-06/144926.htm
更多 Hadoop 相关信息见 Hadoop 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=13
本文永久更新链接地址 :http://www.linuxidc.com/Linux/2017-12/149906.htm