一、hadoop包含模块
— common:工具类+rpc框架
— hdfs: hadoop distribute file system 分布式文件系统(负责海量数据分布式存储)
- 架构:主从架构。
- 主架构:java进程namenode;
- 从架构:java进程datanode
- 助理:secondary_namenode,分担主进程的压力
— yarn:集群的资源调度框架,类似windows的操作系统
- 架构:主从架构。
- 主架构:java进程resourcemanager;负责统筹资源
- 从架构:nodemanager
— mapreduce:分布式计算框架,有计算任务才会启动相应进程
二. hadoop搭建
(零)搭建准备工作
1. ip配置:用虚拟机虚拟网络编辑器
- 为每台主机设置ip
2. 主机名配置:vi /etc/hostname
- 为每个节点设置主机名
3. 主机映射 :vi /etc/hosts
- 主机ip 主机名
- 例如:192.XXX.XXX.XXX hadoopm
- 如果有多个节点,则需要分别建立主机ip与主机名的映射
4. 关闭防火墙和sellinux(linux自带的权限认证)
- service iptables stop
- vi /etc/sellinux/config
5. 将系统的启动级别改为3
- vi etc/inittab : 选择3
- 权限3:完全多用户模式
- 权限5:xll图形用户界面
6. 创建普通用户,并为普通用户添加sudolers权限
- 创建用户useradd 用户名
- 设置密码passwd 用户名
- 添加权限:vi /etc/sudoers
- 注意:如果搭建多个节点的完全分布式,各个节点的普通用户名和密码必须要相同
7. 配置免密登录
- 先切换到创建的普通用户hadoop_user (123456)
- 生成密钥:ssh-keygen
- 多个节点的完全分布式,所有节点都要生成密钥
- 发送密钥:
- cd .ssh/
- ssh-copy-id 主机名
- 多个节点的完全分布式,各个节点之间要相互发送密钥(因为可能需要从任何一台节点机器登录其他节点机器)
- 验证:ssh 主机名
- 多个节点的完全分布式,各个节点之间都要相互验证
8. 安装jdk
- 配置:vi /etc/profile
- 在末尾加入:export JAVA_HOME=jdk解压的目录名
export PATH=$PATH:$JAVA_HOME/bin
- 让配置生效: source /etc/profile
- 验证: java -version
- 写在jdk: rpm -qa | grep jdk
9. 时间同步:伪分布式不需要,完全分布式必须在每个节点做