一、hadoop3.x的新特性
1. Java版本需要1.8
2. Shell脚本已部分重写(Shell script rewrite)
3. HDFS新特性
- 支持可删除编码(Erasure Coding)使用EC来替代副本机制,可省略大约50%的存储空间,此时副本个数为1就行
- 支持两个及以上的namenode(即一个namenode与多个datanode)
- datanode数据写入平衡
- 默认多个服务端口发生变化
4. YARN新特性
- 改善了Timeline服务的扩展性和稳定性
- 通过流向(flow)和聚合(aggregation)增强可用性
- 支持Opportunistic Containers和分布式调度
5. MapReduce改进
- Task级别的天然优化
- Hadoop进程管理有许多改变
二、环境介绍
虚拟机采用cenos6镜像,准备三台虚拟机:
node1,node2,node3,其中 node1 作为 namenode和datanode,node2作为secondary namenode和datanode,node3作为datanode。
三、安装步骤
1. 安装配置jdk
1)解压缩文件(jdk1.8下载,提取码:ene8)
tar -zxvf jdk-8u141-linux-x64.tar.gz
2)配置环境变量
vim /etc/profile
#set Java environment export JAVA_HOME=/bigdata/jdk1.8 export JRE_HOME=$JAVA_HOME/jre export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH |
3)设置生效
source /etc/profile
2. 安装配置hadoop
1)解压缩文件(hadoop3.1.1下载,提取码:tkk8)
tar -zxvf hadoop-3.1.1.tar.gz
2)修改etc/hadoop/hadoop-env.sh
export JAVA_HOME=/bigdata/jdk1.8 export HDFS_NAMENODE_USER=root export HDFS_DATANODE_USER=root export HDFS_SECONDARYNAMENODE_USER=root |
3)修改etc/hadoop/core-site.xml
<property> <name>fs.defaultFS</name> <value>hdfs://node1:9820</value> </property> <property> <name>hadoop.tmp.dir</name> <value>/bigdata/data</value> </property> |
4)修改etc/hadoop/hdfs-site.xml
<property> <name>dfs.replication</name> <value>2</value> </property> <property> <name>dfs.namenode.secondary.http-address</name> <value>node2:9868</value> </property> |
5)修改etc/hadoop/workers
node1 node2 node3 |
3. 配置hadoop环境变量
vi /etc/profile
export HADOOP_HOME=/bigdata/hadoop export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin |
4. 将jdk与hadoop同样安装至其他两台服务器
5. 启动全分布式(主节点上)
1)格式化
hdfs namenode -format
2)启动
start-dfs.sh
3)浏览器访问(node1:9870)