搭建集群
实现多台机器通信
hadoop01 hadoop02 hadoop03
配置Hadoop
hadoop-env.sh
export JAVA_HOME=/opt/apps/jdk1.8
hdfs-site.xml
# 配置namenode 和 datanode的基本信息
<configuration>
<!-- 集群的namenode的位置 datanode能通过这个地址注册-->
<property>
<name>dfs.namenode.rpc-address</name>
<value>hadoop01:8020</value>
</property>
<!-- namenode存储元数据的位置 -->
<property>
<name>dfs.namenode.name.dir</name>
<value>/opt/hdpdata/name</value>
</property>
<!-- datanode存储数据的位置 -->
<property>
<name>dfs.datanode.data.dir</name>
<value>/opt/hdpdata/data</value>
</property>
<!-- secondary namenode机器的位置-->
<property>
<name>dfs.namenode.secondary.http-address</name>
<value>hadoop02:50090</value>
</property>
</configuration>
core-site.xml
<configuration>
<property>
<!-- 设置默认hdfs地址 -->
<name>fs.defaultFS</name>
<value>hdfs://linux01:9000</value>
</property>
</configuration>
初始化namenode
bin> ./hadoop namenode -format
#⇒ /opt/hdpdata/name 初始化的元数据
启动
单点启动
1. 启动namenode
./hadoop-daemon.sh start namenode
需要在hadoop-daemon.sh中添加:
#!/usr/bin/env bash
HDFS_DATANODE_USER=root
HADOOP_SECURE_DN_USER=hdfs
HDFS_NAMENODE_USER=root
HDFS_SECONDARYNAMENODE_USER=root
2. 启动datanode
# hadoop01 hadoop02 hadoop03
./hadoop-daemon.sh start datanode
一键启停
# slaves 配置文件
hadoop01
hadoop02
hadoop03
# 启动
sbin>
./start-dfs.sh
# 停止
sbin>
./stop-dfs.sh
# 配置环境变量,可以任何地方执行 /etc/profile
扩容集群
1.、重新免密配置
2.、删除 hdpdata/data 目录 (有原来的节点的唯一标识) uuid
3、域名映射配置
补:查看hadoop状态 jps 安装: yum install -y java-1.8.0-openjdk-devel.x86_64