1.节点之间免密码登陆
2.1台 主节点 namenode 1台备份节点 secondary node
3.3台datanode
4.etc/hadoop/hadoop-env.sh 修改export JAVA_HOME=地址
5.vi etc/hadoop/core-site.xml:
fs.defaultFS
hdfs://node1:9000
6.hadoop etc/hadoop/core-site.xml 中配置重要的属性
hadoop.tmp.dir
/opt/hadoop
//hadoop.tmp.dir属性默认放在linux tmp下,tmp下的文件在机器开关机会被清空(导致hdfs的fsimage被删除),所以要放在其他指定目录下。
7.在hdfs etc/hadoop/hdfs-site.xml:中配置重要的属性
dfs.namenode.secondary.http-address
node2:50090
dfs.namenode.secondary.https-address
node2:50091
其中,node2为secondary node的节点名称。
8.配置datanode节点
vi etc/hadoop/slaves
node3
node4
node5
node3 node4 node5皆为datanode节点主机名。用回车来分隔。
9.配置secondary node主机名(/home/node1/hadoop/etc/hadoop下)
vi masters
node2
node2为secondary node节点主机名
10.配置namenode节点
vi etc/hadoop/core-site.xml:
fs.defaultFS
hdfs://node1:9000
node1为 namenode节点主机名
11.将配置好的hadoop整个文件夹拷贝到集群的其他机器节点上。
12.配置hadoop环境变量
vi ~/.bash_profile
export HADOOP_HOME=hadoop安装目录
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
13.拷贝配置文件到集群其他节点上。
scp ~/.bash_profile root@node3:/root
scp ~/.bash_profile root@node4:/root
scp ~/.bash_profile root@node5:/root
14.加载配置文件
source ~/.bash_profile
15.格式化namenode
bin/hdfs namenode -format
16.命令:
启动namenode和datanode start-dfs.sh
关闭namenode和datanode stop-dfs.sh
17.namenode监听端口50070
访问 http://node1:50070
18.secondary node端口 50090
访问 http://node2:50090
19.查看端口
netstat -an|grep 9000
20.设置心跳检测时间 hdfs-site.xml
timeout = 2 * dfs.namenode.heartbeat.recheck-interval + 10 * dfs.heartbeat.interval
dfs.namenode.heartbeat.recheck-interval 默认 300000毫秒(5分钟)
dfs.heartbeat.interval 默认 3秒
需要注意的是hdfs-site.xml 配置文件中的dfs.namenode.heartbeat.recheck-interval的单位为毫秒,dfs.heartbeat.interval的单位为秒
所以,举个例子,如果dfs.namenode.heartbeat.recheck-interval设置为5000(毫秒),dfs.heartbeat.interval设置为3(秒,默认),则总的超时时间为40秒
dfs.namenode.heartbeat.recheck-interval
5000
dfs.heartbeat.interval
3
21.datanode 无法启动 live node 总是 0
删除core-site.xml中hadoop.tmp.dir的地址中内容
22. 命令:
单独启动namenode hadoop-daemon.sh start namenode
单独关闭namenode hadoop-daemon.sh stop namenode
单独启动datanode hadoop-daemon.sh start datanode
单独关闭datanode hadoop-daemon.sh stop datanode