当前位置:   article > 正文

Hadoop 基础篇_hodoop大数据平台基础课程笔记

hodoop大数据平台基础课程笔记

前言

记录 在学习大数据技术中的学习笔记

目录​​​​​​​

一、Hadoop介绍

二、Hadoop发行版介绍

三、Hadoop核心架构发展历史

四、Hadoop三大核心组件介绍

五、Hadoop集群安装部署

a、伪分布式集群安装部署

1.下载hadoop安装包

2.设置静态ip

 3、修改主机名

 4.关闭防火墙

5.ssh 免密登录

 6.安装jdk

7. 上传Hadoop安装包

8.解压Hadoop安装包

9.配置环境变量

 10.修改配置文件

 11.格式化hdfs

 12.修改启动脚本,添加用户信息

 13.启动集群

14.查看集群是否启动成功

​编辑15. 配置windos中ip映射

 ​编辑 16.停止集群

b、分布式集群安装

1.准备三台机器

2.修改三台机器中的hosts文件

3.同步三台机器的时间

4.主节点实现免密登录其他从节点

5.解压Hadoop安装包

6.修改Hadoop配置信息

7.纷发Hadoop文件夹

8、格式化hdfs

9.启动集群

10.关闭集群

c、Hadoop的客户端节点


一、Hadoop介绍

Hadoop适合海量数据分布式存储和分布式计算

Hadoop的作者是Doug Cutting ,Hadoop这个作者的孩子给他的毛绒象玩具起的名字

二、Hadoop发行版介绍

Apache Hadoop:官方版本,开源

Cloudera Hadoop(CDH):商业版本,对官方版本做了一些优化,提供收费的技术支持,提供界面操作,方便集群运维管理

HortonWorks(HDP):开源,提供界面操作,方便运维管理

建议在实际工作中搭建大数据平台时选择CDH或者HDP,方便运维管理

三、Hadoop核心架构发展历史

Hadoop1.x

MapReduce(分布式计算),HDFS(分布式存储)

Hadoop2.x

MapReduce,Others,YARN(资源管理),HDFS

Hadoop3.x

MapReduce,Others,YARN,HDFS

四、Hadoop三大核心组件介绍

Hadoop主要包含三大组件:HDFS+MapReduce+YARN

HDFS负责海量数据的分布式存储

MapReduce是一个计算模型,负责海量数据的分布式计算

YARN主要负责集群资源的管理和调度

五、Hadoop集群安装部署

a、伪分布式集群安装部署

伪分布式集群安装:使用一台Linux机器【建议在后续学习阶段使用伪分布式集群】

1.下载hadoop安装

这里我使用的是hadoop3.2.0这个版本,下面是官网下载链接

https://archive.apache.org/dist/hadoop/common/hadoop-3.2.0/hadoop-3.2.0.tar.gzhttps://archive.apache.org/dist/hadoop/common/hadoop-3.2.0/hadoop-3.2.0.tar.gz

2.设置静态ip

vi /etc/sysconfig/network-scripts/ifcfg-ens33

 3、修改主机名

  1. 零时设置
  2. hostname 主机名
  3. 永久设置
  4. vi /etc/hostname

 4.关闭防火墙

  1. 零时关闭
  2. systemctl stop firewalld
  3. 查看防火墙状态
  4. systemctl status firewalld
  5. 永久关闭
  6. systemctl disable firewalld

5.ssh 免密登录

ssh-keygen -t rsa

一直回车就行 

cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys

登录时就不需要密码了

 6.安装jdk

找到自己下载的jdk安装包,并通过Xshell上传至Linux中,解压jdk安装包

tar -zxvf jdk-8u202-linux-x64.tar.gz

 重命名一下

mv jdk-8u202-linux-x64.tar.gz jdk1.8

配置环境

vi /etc/profile

 在文件最后添加(后面的路径根据自己jdk所在位置)

  1. xport JAVA_HOME=/data/soft/jdk1.8
  2. export PATH=.:$JAVA_HOME/bin:$PATH

 重新加载一下,使环境变量生效

source /etc/profile

测试是否配置成功

java -version

7. 上传Hadoop安装包

8.解压Hadoop安装包

tar -zxvf hadoop-3.2.0.tar.gz

9.配置环境变量

vi /etc/profile

在文件最后面添加

 10.修改配置文件

cd /data/soft/hadoop-3.2.0/etc/hadoop
vi hadoop-env.sh

 在文件末尾添加

  1. export JAVA_HOME=/data/soft/jdk1.8
  2. export HADOOP_LOG_DIR=/data/hadoop_repo/logs/hadoop
vi core-site.xml
  1. <configuration>
  2. <property>
  3. <name>fs.defaultFS</name>
  4. <value>hdfs://主机名:9000</value>
  5. </property>
  6. <property>
  7. <name>hadoop.tmp.dir</name>
  8. <value>存放日志的路径</value>
  9. </property>
  10. </configuration>

vi hedf-site.xml
  1. <configuration>
  2. <property>
  3. <name>dfs.replication</name>
  4. <value>副本数</value>
  5. </property>
  6. </configuration>

 

vi mapred-site.xml
  1. <configuration>
  2. <property>
  3. <name>mapreduce.framework.name</name>
  4. <value>指定执行引擎</value>
  5. </property>
  6. </configuration>

 

vi yarn-site.xml
  1. <configuration>
  2. <property>
  3. <name>yarn.nodemanager.aux-services</name>
  4. <value>指定mapreduce计算框架</value>
  5. </property>
  6. <property>
  7. <name>yarn.nodemanager.env-whitelist</name>
  8. <value>JAVA_HOME,HADOOP_COMMON_HOME,HADOOP_HDFS_HOME,HADOOP_CONF_DIR,CLASSPATH_PREPEND_DISTCACHE,HADOOP_YARN_HOME,HADOOP_MAPRED_HOME</value>
  9. </property>
  10. </configuration>

 

vi workers

 将所有内容删除,改成自己的主机名

 11.格式化hdfs

bin/hdfs namenode -format

 12.修改启动脚本,添加用户信息

cd /data/soft/hadoop-3.2.0/sbin
vi start-dfs.sh

 尽量加在文件上面点,因为后面的代码会使用到这些

  1. HDFS_DATANODE_USER=root
  2. HDFS_DATANODE_SECURE_USER=hdfs
  3. HDFS_NAMENODE_USER=root
  4. HDFS_SECONDARYNAMENODE_USER=root
vi stop-dfs.sh
  1. HDFS_DATANODE_USER=root
  2. HDFS_DATANODE_SECURE_USER=hdfs
  3. HDFS_NAMENODE_USER=root
  4. HDFS_SECONDARYNAMENODE_USER=root
vi start-yarn.sh
  1. YARN_RESOURCEMANAGER_USER=root
  2. HADOOP_SECURE_DN_USER=yarn
  3. YARN_NODEMANAGER_USER=root
vi stop-yarn.sh
  1. YARN_RESOURCEMANAGER_USER=root
  2. HADOOP_SECURE_DN_USER=yarn
  3. YARN_NODEMANAGER_USER=root

 13.启动集群

start-all.sh

14.查看集群是否启动成功

jps

 看到这6个进程则为启动成功

hdfs 服务 端口号 : 9870

可以通过浏览器来进行访问

主机IP:9870

 yarn 服务 端口号:8088

可以通过浏览器来访问

主机IP:8088

15. 配置windos中ip映射

在最后添加

  16.停止集群

stop-all.sh

b、分布式集群安装

使用三台Linux机器

master(主节点)

NamNode ,Secondary namenode ,Resource Manager

slave(从节点1)

DataNode ,NodeManage

slave(从节点2)

DataNode ,NodeManager

1.准备三台机器

通过克隆之前的bigdatao2,来创建第三台机器

更改第三台机器的ip地址

第二台机器的配置

更改ip

vim /etc/sysconfig/network-scripts/ifcfg-ens33

更改主机名

  1. 零时设置
  2. hostname 主机名
  3. 永久设置
  4. vi /etc/hostname
  5. 主机名

防火墙

  1. 零时关闭
  2. systemctl stop firewalld
  3. 查看防火墙状态
  4. systemctl status firewalld
  5. 永久关闭
  6. systemctl disable firewalld

免密登录

ssh-keygen -t rsa

一直回车

cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys

解压jdk

tar -zxvf jdk安装包名

配置环境变量

vi /etc/profile
  1. export JAVA_HOME=/data/soft/jdk1.8
  2. export .:$JAVA_HOME/bin:$PATH

第三台机器的配置和第二台机器的配置是一样的 

2.修改三台机器中的hosts文件

vi /etc/hosts
  1. 192.168.10.100 bigdata01
  2. 192.168.10.101 bigdata02
  3. 192.168.10.102 bigdata03
  4. 192.168.10.103 bigdata04
  5. 192.168.10.104 bigdata05

三台机器都要修改,内容都是一样的

3.同步三台机器的时间

yum install -y netdate
ntpdata -u ntp.sjtu.edu.cn

添加到定时任务中

vi /etc/crontab
* * * * * root /usr/sbin/ntpdate -u ntp.sjtu.edu.cn

三台机器都要执行

4.主节点实现免密登录其他从节点

先拷贝到家目录下

到主节点

  1. scp ~/.ssh/authorized_keys bigdata02:~/
  2. scp ~/.ssh/authorized_keys bigdata03:~/

到从节点1

cat ~/authorized_keys >> ~/.ssh/authorized_keys

到从节点2

cat ~/authorized_keys >> ~/.ssh/authorized_keys

5.解压Hadoop安装包

tar -zxvf hadoop安装包名

6.修改Hadoop配置信息

/data/soft/hadoop-3.2.0/etc/hadoop
vi hadoop-env.sh
  1. export JAVA_HOME=/data/soft/jdk1.8
  2. export HADOOP_LOG_DIR=/data/hadoop_repo/logs/hadoop
vi core-site.xml
  1. <configuration>
  2. <property>
  3. <name>fs.defaultFS</name>
  4. <value>hdfs://主节点主机名:9000</value>
  5. </property>
  6. <property>
  7. <name>hadoop.tmp.dir</name>
  8. <value>日志目录</value>
  9. </property>
  10. </configuration>

 

vi hdfs-site.xml
  1. <configuration>
  2. <property>
  3. <name>dfs.replication</name>
  4. <value>副本数</value>
  5. </property>
  6. <property>
  7. <name>dfs.namenode.secondary.http-address</name>
  8. <value>bigdata01:50090</value>
  9. </property>
  10. </configuration>

vi mapred-site.xml
  1. <configuration>
  2. <property>
  3. <name>mapreduce.framework.name</name>
  4. <value>yarn</value>
  5. </property>
  6. </configuration>
vi yarn-site.xml
  1. <configuration>
  2. <property>
  3. <name>yarn.nodemanager.aux-services</name>
  4. <value>mapreduce_shuffle</value>
  5. </property>
  6. <property>
  7. <name>yarn.nodemanager.env-whitelist</name>
  8. <value>JAVA_HOME,HADOOP_COMMON_HOME,HADOOP_HDFS_HOME,HADOOP_CONF_DIR,CLASSPATH_PREPEND_DISTCACHE,HADOOP_YARN_HOME,HADOOP_MAPRED_HOME</value>
  9. </property>
  10. <property>
  11. <name>yarn.resourcemanager.hostname</name>
  12. <value>指定resourcemanager节点在那个机器上执行</value>
  13. </property>
  14. </configuration>

  1. vi workers
  2. bigdata02
  3. bigdata03

修改启动脚本

vi start-dfs.sh
  1. HDFS_DATANODE_USER=root
  2. HDFS_DATANODE_SECURE_USER=hdfs
  3. HDFS_NAMENODE_USER=root
  4. HDFS_SECONDARYNAMENODE_USER=root
stop-dfs.sh
  1. HDFS_DATANODE_USER=root
  2. HDFS_DATANODE_SECURE_USER=hdfs
  3. HDFS_NAMENODE_USER=root
  4. HDFS_SECONDARYNAMENODE_USER=root
start-yarn.sh
  1. YARN_RESOURCEMANAGER_USER=root
  2. HADOOP_SECURE_DN_USER=yarn
  3. YARN_NODEMANAGER_USER=root
stop-yarn.sh
  1. YARN_RESOURCEMANAGER_USER=root
  2. HADOOP_SECURE_DN_USER=yarn
  3. YARN_NODEMANAGER_USER=root

7.纷发Hadoop文件夹

scp -rq Hadoop文件名 bigdat02:/data/soft

scp -rq hadoop-3.2.0 bigdata03:/data/soft

8、格式化hdfs

hdfs namenode -format

9.启动集群

start-all.sh

10.关闭集群

stop-all.sh

c、Hadoop的客户端节点

在实际工作中不建议直接连接集群中的节点来操作集群,直接把集群中的节点暴露给普通开发人员是不安全的

建议在业务机器上安装Hadoop,这样就可以在业务机器上操作Hadoop机器了,此机器就称为Hadoop的客户端节点

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/IT小白/article/detail/80311
推荐阅读
相关标签
  

闽ICP备14008679号