一、Hadoop入门
1、Hadoop1.x、2.x、3.x区别
Hadoop1.x组成 | Hadoop2.x组成 |
---|---|
MapReduce (计算+资源调度) | MapRuduce(计算)Yarn(资源调度) |
HDFS(数据存储) | HDFS(数据存储) |
Common(辅助工具) | Common(辅助工具) |
Hadoop3.x在组成没有变化
2、常用配置文件
3.x:core-site.xml 、hdfs-site.xml、yarn.site.xml、mapred-site.xml、workers
2.x:core-site.xml 、hdfs-site.xml、yarn.site.xml、mapred-site.xml、slaves
3、常用端口号
端口名称 | Hadoop2.x | Hadoop3.x |
---|---|---|
NameNode内部通信端口 | 8020 / 9000 | 8020 / 9000/9820 |
NameNode HTTP UI(对用户查询端口) | 50070 | 9870 |
MapReduce查看执行任务端口 | 8088 | 8088 |
历史服务器通信端口 | 19888 | 19888 |
yarn服务端口号:8032
历史服务的服务端口号:10020
4、完全分布式(开发重点)
(1)JDK 安装:
解压
tar -zxvf jdk-8u212-linux-x64.tar.gz -C /opt/module/
配置JDK环境变量
sudo vim /etc/profile.d/my_env.sh
添加如下内容
#JAVA_HOME
export JAVA_HOME=/opt/module/jdk1.8.0_212
export PATH=$PATH:$JAVA_HOME/bin
source一下/etc/profile文件,让新的环境变量PATH生效
source /etc/profile
测试JDK是否安装成功
java -version
(2)配置 SSH 免密登录:
基本语法:ssh 另一台电脑的IP地址
生成公钥和私钥:
进入.ssh目录,输入:
ssh-keygen -t rsa
然后敲(三个回车),就会生成两个文件id_rsa(私钥)、id_rsa.pub(公钥);
将公钥拷贝到要免密登录的目标机器上
[user@hadoop2 .ssh]$ ssh-copy-id hadoop2
[user@hadoop2 .ssh]$ ssh-copy-id hadoop3
还需要在hadoop3上采用user账号配置一下无密登录到hadoop2
(3)配置 hadoop 核心文件:
要获取的默认文件 | 描述 |
---|---|
hadoop.env.sh | 记录配置Hadoop运行所需的环境变量,以运行Hadoop |
[core-default.xml] | Hadoop core的配置项,如HDFS和MapReduce常用的I/O设置等 |
[hdfs-site.xml] | hadoop守护进行的配置项,包括NameNode、SecondaryNode和DataNode等 |
[yarn-site.xml] | 配置yarn的参数,如指定RM的地址、环境变量的继承等 |
[mapred-site.xml] | MapReduce守护的进程的配置项,包括JobTracker和TaskTraceker |
(4)格式化 namenode
hdfs namenode -format
启动HDFS:sbin/start-dfs.sh
在配置了ResourceManager的节点启动YARN:sbin/start-yarn.sh