一.Hadoop安装部署的预备条件

准备:1、安装Linux和JDK。

安装JDK

解压:tar -zxvf jdk-8u144-linux-x64.tar.gz -C ~/training/
设置环境变量:vi ~/.bash_profile
JAVA_HOME=/root/training/jdk1.8.0_144
export JAVA_HOME PATH=$JAVA_HOME/bin:$PATH
export PATH 生效环境变量: source ~/.bash_profile

   2、关闭防火墙

查看防火墙的状态:systemctl status firewalld.service
关闭防火墙: systemctl stop firewalld.service
禁用防火墙(永久)systemctl disable firewalld.service

     3、配置主机名

输入:vi /etc/hosts,回车

192.168.153.11 bigdata11

解压hadoop:tar -zxvf hadoop-2.7.3.tar.gz -C ~/training/
设置环境变量:vi ~/.bash_profile

HADOOP_HOME=/root/training/hadoop-2.7.3
export HADOOP_HOME PATH=$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$PATH
export PATH

source ~/.bash_profile

二.Hadoop的目录结构

  

三.Hadoop安装部署的三种模式

  1.本地模式

  2.伪分布模式

  3.全分布模式

本地模式的配置
参数文件 配置参数 参考值
hadoop-env.sh JAVA_HOME /root/training/jdk1.8.0_144

本地模式 一台Linux
(*)特点:没有HDFS,只能测试MapReduce程序(本地数据:Linux的文件)
(*)配置:hadoop-env.sh
26行 export JAVA_HOME=/root/training/jdk1.8.0_144

(*)Demo:测试MapReduce程序
example: /root/training/hadoop-2.7.3/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.3.jar
hadoop jar hadoop-mapreduce-examples-2.7.3.jar wordcount ~/temp/data.txt ~/temp/mr/wc1

伪分布模式的配置
参数文件 配置参数 参考值
hadoop-env.sh JAVA_HOME /root/training/jdk1.8.0_144
hdfs-site.xml dfs.replication
dfs.permissions false
core-site.xml fs.defaultFS hdfs://<hostname>:9000
hadoop.tmp.dir /root/training/hadoop-2.7.3/tmp
mapred-site.xml mapreduce.framework.name yarn
yarn-site.xml yarn.resourcemanager.hostname <hostname>
yarn.nodemanager.aux-services mapreduce_shuffle
伪分布模式    一台Linux
(*)特点:在单机上,模拟一个分布式的环境,具备Hadoop的所有功能
(*)hdfs-site.xml <!--数据块的冗余度,默认是3-->
<property>
<name>dfs.replication</name>
<value>1</value>
</property> <!--是否开启HDFS的权限检查,默认:true-->
<!--
<property>
<name>dfs.permissions</name>
<value>false</value>
</property>
--> core-site.xml
<!--NameNode的地址-->
<property>
<name>fs.defaultFS</name>
<value>hdfs://bigdata11:9000</value>
</property> <!--HDFS数据保存的目录,默认是Linux的tmp目录-->
<property>
<name>hadoop.tmp.dir</name>
<value>/root/training/hadoop-2.7.3/tmp</value>
</property> mapred-site.xml
<!--MR程序运行的容器是Yarn-->
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property> yarn-site.xml
<!--ResourceManager的地址-->
<property>
<name>yarn.resourcemanager.hostname</name>
<value>bigdata11</value>
</property> <!--NodeManager运行MR任务的方式-->
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property> 对NameNode进行格式化: hdfs namenode -format
日志:Storage directory /root/training/hadoop-2.7.3/tmp/dfs/name has been successfully formatted. 启动:start-all.sh = start-dfs.sh + start-yarn.sh
全分布模式的配置
参数文件 配置参数 参考值
hadoop-env.sh JAVA_HOME /root/training/jdk1.8.0_144
hdfs-site.xml dfs.replication
dfs.permissions false
core-site.xml fs.defaultFS hdfs://<hostname>:9000
hadoop.tmp.dir /root/training/hadoop-2.7.3/tmp
mapred-site.xml mapreduce.framework.name yarn
yarn-site.xml yarn.resourcemanager.hostname <hostname>
yarn.nodemanager.aux-services mapreduce_shuffle
slaves DataNode的地址 从节点1、从节点2

全分布模式安装详解

1、三台机器:bigdata12 bigdata13 bigdata14
2、每台机器准备工作:

    a.安装JDK

    b.关闭防火墙

systemctl stop firewalld.service
systemctl disable firewalld.service

c.设置主机名: vi /etc/hosts

192.168.153.12 bigdata12
192.168.153.13 bigdata13
192.168.153.14 bigdata14

如果出现以下警告信息

四.验证Hadoop环境

HDFS Console: http://192.168.153.11:50070

正常情况下,安全模式是关闭的。因为安全模式下,HDFS是只读

Yarn Console: http://192.168.153.11:8088

3.配置SSH免密码登录

  

(1)在每台机器上产生公钥和私钥

ssh-keygen -t rsa

(2)需要将每台机器的公钥复制给其他机器(下面的三句话,需要在每台机器上执行)

ssh-copy-id -i .ssh/id_rsa.pub root@bigdata12
ssh-copy-id -i .ssh/id_rsa.pub root@bigdata13
ssh-copy-id -i .ssh/id_rsa.pub root@bigdata14

4、保证每台机器的时间同步的
5、安装Hadoop的全分布环境(在主节点bigdata12上安装)

(1)解压设置环境变量
(2)修改配置文件
  hadoop-env.sh

26行  export JAVA_HOME=/root/training/jdk1.8.0_144

  hdfs-site.xml

<!--数据块的冗余度,默认是3-->
<property>
<name>dfs.replication</name>
<value>2</value>
</property> <!--是否开启HDFS的权限检查,默认:true-->
<property>
<name>dfs.permissions</name>
<value>false</value>
</property>

  core-site.xml

<!--NameNode的地址-->
<property>
<name>fs.defaultFS</name>
<value>hdfs://bigdata12:9000</value>
</property> <!--HDFS数据保存的目录,默认是Linux的tmp目录-->
<property>
<name>hadoop.tmp.dir</name>
<value>/root/training/hadoop-2.7.3/tmp</value>
</property>

  mapred-site.xml

<!--MR程序运行的容器是Yarn-->
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>

  yarn-site.xml

<!--ResourceManager的地址-->
<property>
<name>yarn.resourcemanager.hostname</name>
<value>bigdata12</value>
</property> <!--NodeManager运行MR任务的方式-->
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>

  slaves: 配置的是所有的从节点

bigdata13
bigdata14

(3)格式化NameNode:

hdfs namenode -format

6、将配置好的目录复制到bigdata13和bigdata14上

scp -r hadoop-2.7.3/ root@bigdata13:/root/training
scp -r hadoop-2.7.3/ root@bigdata14:/root/training

7、启动Hadoop集群(在主节点上):

start-all.sh

关闭:stop-all.sh

8、验证
(*)命令行:hdfs dfsadmin -report
(*)网页:HDFS:http://192.168.153.12:50070/
         Yarn:http://192.168.153.12:8088

最新文章

  1. Excel基础
  2. html5的小知识点小集合
  3. linux 的终端字体色和背景色的修改方法(三)
  4. 用Navicat for oracle导入现有数据库
  5. [JS] 面向对象的5种写法和拓展JS对象的写法
  6. Android设置布局背景为白色的三种方法
  7. Eclipse中设置作者日期等信息
  8. linux修改主机名(hostname)转载
  9. 选择排序(C++)
  10. 坑爹的vector iterators incompatible错误(VS中属性页--&gt;C/C++--&gt;代码生成--&gt;&gt;运行库)
  11. NYOJ128 前缀式计算 【栈】
  12. IntPtr问题
  13. [ios2]使用NSOperationQueue简化多线程开发和队列的优先级 【转】
  14. 第一个shell脚本 结合计划任务下载远程文件
  15. Linux 服务器设置成支持中文
  16. Swift4 Json
  17. 【Android】用Cubism 2制作自己的Live2D——官方App样例源码学习(4)!
  18. 数据可视化的开源方案: Superset vs Redash vs Metabase (二)
  19. 好的UI管理后台
  20. python scrapy 报错 DEBUG: Ignoring response 403

热门文章

  1. 关于golang的label
  2. CentOS7 内核模块管理
  3. js实现计算器效果
  4. RocksDB Rate Limiter源码解析
  5. Rust学习笔记1
  6. ubuntu系统更新命令
  7. Socket通讯-C#客户端与Java服务端通讯(发送消息和文件)
  8. Vue之路由跳转 传参 aixos 和cookie
  9. Cockpit- Linux 服务器管理接口
  10. mknod - 建立块专用或字符专用文件