一、安装前准备工作
虚拟机上至少准备3台Linux服务器
1)关闭防火墙操作
firewall-cmd --state 查看防火墙运行状态
启动: systemctl start firewalld
关闭: systemctl stop firewalld
查看状态:systemctl status firewalld
开机禁用: systemctl disable firewalld
开机启用 systemctl enable firewalld
2)永久修改设置主机名
vi编辑 /etc/hostname
注意:需要重启reboot后生效
3)配置映射文件
#127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
#::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.50.183 hd09-01
192.168.50.184 hd09-02
192.168.50.185 hd09-03
4)配置ssh免密登陆
ssh-keygen 生成密钥对
ssh-copy-id 自己
ssh-copy-id 其它
ssh-copy-id 其它
二、安装Java开发环境jdk
1)上传tar包
SecureCRT远程登陆开启SFTP传输上传jdk的tar包,快捷键 alt+p
2)解压jdk的tar包
tar -zxvf jdk -C dir(解压到指定目录下)
3)配置JDK环境变量
vi /etc/profile
export JAVA_HOME=/root/hd/jdk1.8.0_141
export PATH=$PATH:$JAVA_HOME/bin
加载环境变量: source /etc/profile
4)将安装目录和配置文件从第一台机器分发到其它机器
scp -r hd/jdk1.8.0_141/ hd09-03:hd/jdk1.8.0_141
scp -r /etc/profile hd09-02:/etc
同样,再不重启的情况下,使用 source /etc/profile加载环境变量
三、安装HDFS集群
可上Hadoop官网下载Binary的安装包解压到指定目录
1)修改hadoop-env.sh
export JAVA_HOME=/root/apps/jdk1.8.0_60
2)修改core-site.xml
<configuration>
//配置hdfs
<property>
<name>fs.defaultFS</name>
<value>hdfs://hd-01:9000</value>
</property>
</configuration>
3)修改hdfs-site.xml
<configuration>
//配置元数据存储位置
<property>
<name>dfs.namenode.name.dir</name>
<value>/root/hd/dfs/name</value>
</property>
//配置数据存储位置
<property>
<name>dfs.datanode.data.dir</name>
<value>/root/hd/dfs/data</value>
</property>
</configuration>
4)格式化namenode
hadoop namemode -format
5)分发hadoop到其它机器
scp -r ~/hd/hadoop-2.8.4/ hd09-02:/root/hd/
scp -r ~/hd/hadoop-2.8.4/ hd09-03:/root/hd/
6)配置hadoop环境变量并分发hadoop环境变量
export JAVA_HOME=/root/hd/jdk1.8.0_141
export HADOOP_HOME=/root/hd/hadoop-2.8.4
export PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
scp -r /etc/profile hd09-02:/etc
scp -r /etc/profile hd09-03:/etc
注意:分发环境变量后注意加载环境变量 source /etc/profile
7)分别在主节点和从节点上启动 namenode 和 datanode
hadoop-daemon.sh start namenode
hadoop-daemon.sh start datanode
另外jps 进程查看命令可以查看节点启动情况 hadoop-daemon.sh stop 命令手动关闭
8)Hadoop集群搭建好之后就可以访问namenode提供的web端口:50070 推荐使用谷歌浏览器
9)自动批量的启动脚本
修改配置文件slaves,在主节点的slaves里加入
hd09-02
hd09-03
然后只需要主节点上之下启动命令
批量关闭命令
10)Namenode副本设置
vi编辑 hdfs-site.xml
<property>
<name>dfs.namenode.secondary.http-address</name>
<value>hs09-2:50090</value>
< /property>
同时将hdfs-site.xml同步到其它节点中,然后关闭hdfs,再重开即可将namenode节点的副本设置到指定的节点hd09-02中
scp hdfs-site.xml hd09-02
scp hdfs-site.xml hd09-03
stop-dfs.sh
start-dfs.sh
四 、hdfs环境的默认配置设置链接
官方提供的hadoop集群的配置文件的默认摄制可以参考链接:http://hadoop.apache.org/docs/stable/hadoop-project-dist/hadoop-common/SingleCluster.html
目前的配置文件core-site.xml以及hdfs-site.xml中的设置主要是参考了链接中左下角里的core-default.xml和hdfs-default.xml给出的设置方式,修改默认值,改变相应的参数值即可。
例如,编辑hdfs-site.xml修改默认的副本数,须添加如下的属性值内容,并编辑参数值
<property>
<name>dfs.replication</name>
<value>2</value>
</property>
编辑hdfs-site.xml修改默认的blocksize大小,须添加如下的属性值内容,并编辑参数值大小
<property>
<name>dfs.blocksize</name>
<value>134217728</value>
operty>
改完hdfs-site.xml之后,注意同步到每台机器上,并重启hdfs集群以生效。