Hadoop学习指南:探索大数据时代的重要组成——运行环境搭建

简介: Hadoop学习指南:探索大数据时代的重要组成——运行环境搭建

Hadoop运行环境搭建(开发重点)

模板虚拟机环境准备

数据来源层

安装模板虚拟机,IP地址192.168.10.100、主机名称hadoop100、内存4G、硬盘50G

hadoop100 虚拟机配置要求如下(本文Linux系统全部以CentOS-7.5-x86-1804为例)

使用yum安装需要虚拟机可以正常上网,yum安装前可以先测试下虚拟机联网情况
[root@hadoop100 ~]# ping www.baidu.com 
PING www.baidu.com (14.215.177.39) 56(84) bytes of data. 
64 bytes from 14.215.177.39 (14.215.177.39): icmp_seq=1 
ttl=128 time=8.60 ms 
64 bytes from 14.215.177.39 (14.215.177.39): icmp_seq=2 
ttl=128 time=7.72 ms 

安装epel-release

注:Extra Packages for Enterprise Linux 是为“红帽系”的操作系统提供额外的软件包,

适用于RHEL、CentOS 和 Scientific Linux。相当于是一个软件仓库,大多数 rpm 包在官方

repository 中是找不到的)


[root@hadoop100 ~]# yum install -y epel-release 
注意:如果Linux安装的是最小系统版,还需要安装如下工具;如果安装的是Linux桌面标准版,不需要执行如下操作
  • net-tool:工具包集合,包含ifconfig等命令
[root@hadoop100 ~]# yum install -y net-tools  
  • vim:编辑器
[root@hadoop100 ~]# yum install -y vim

关闭防火墙,关闭防火墙开机自启

[root@hadoop100 ~]# systemctl stop firewalld 
[root@hadoop100 ~]# systemctl disable firewalld.service 

==注意:在企业开发时,通常单个服务器的防火墙时关闭的。公司整体对外会设置非常安全的防火墙 ==

创建atguigu用户,并修改atguigu用户的密码

[root@hadoop100 ~]# useradd atguigu 
[root@hadoop100 ~]# passwd atguigu 

配置atguigu用户具有root权限,方便后期加sudo执行root权限的命令

[root@hadoop100 ~]# vim /etc/sudoers

修改/etc/sudoers 文件,在%wheel这行下面添加一行,如下所示:

## Allow root to run any commands anywhere 
root    ALL=(ALL)     ALL 
## Allows people in group wheel to run all commands 
%wheel  ALL=(ALL)       ALL
atguigu   ALL=(ALL)     NOPASSWD:ALL

注意:atguigu 这一行不要直接放到root行下面,因为所有用户都属于wheel组,你先配置了atguigu具有免密功能,但是程序执行到%wheel行时,该功能又被覆盖回需要密码。所以atguigu要放到%wheel这行下面。

在/opt目录下创建文件夹,并修改所属主和所属组

  • 在/opt目录下创建module、software文件夹
[root@hadoop100 ~]# mkdir /opt/module 
[root@hadoop100 ~]# mkdir /opt/software 
  • 修改module、software 文件夹的所有者和所属组均为atguigu用户
[root@hadoop100 ~]# chown atguigu:atguigu /opt/module  
[root@hadoop100 ~]# chown atguigu:atguigu /opt/software 
  • 查看module、software 文件夹的所有者和所属组
[root@hadoop100 ~]# cd /opt/ 
[root@hadoop100 opt]# ll 
总用量 12 
drwxr-xr-x. 2 atguigu atguigu 4096 5月  28 17:18 module 
drwxr-xr-x. 2 root    root    4096 9 月   7 2017 rh 
drwxr-xr-x. 2 atguigu atguigu 4096 5月  28 17:18 software 
  • 查看module、software 文件夹的所有者和所属组
[root@hadoop100 ~]# cd /opt/ 
[root@hadoop100 opt]# ll 
总用量 12 
drwxr-xr-x. 2 atguigu atguigu 4096 5月  28 17:18 module 
drwxr-xr-x. 2 root    root    4096 9 月   7 2017 rh 
drwxr-xr-x. 2 atguigu atguigu 4096 5月  28 17:18 software 

卸载虚拟机自带的JDK

注意:如果你的虚拟机是最小化安装不需要执行这一步。

[root@hadoop100 ~]# rpm -qa | grep -i java | xargs -n1 rpm -e --nodeps  
• 1

➢ rpm -qa:查询所安装的所有rpm软件包

➢ grep -i:忽略大小写

➢ xargs -n1:表示每次只传递一个参数

➢ rpm -e –nodeps:强制卸载软件

重启虚拟机

[root@hadoop100 ~]# reboot

克隆虚拟机

利用模板机hadoop100,克隆三台虚拟机:hadoop102 hadoop103 hadoop104

注意:克隆时,要先关闭hadoop100

修改克隆机IP,以下以hadoop102举例说明

(1)修改克隆虚拟机的静态IP

[root@hadoop100 ~]# vim /etc/sysconfig/network-scripts/ifcfg
ens33

改为

DEVICE=ens33 
TYPE=Ethernet 
ONBOOT=yes 
BOOTPROTO=static 
NAME="ens33" 
IPADDR=192.168.10.102 
PREFIX=24 
GATEWAY=192.168.10.2 
DNS1=192.168.10.2 

(2)查看Linux虚拟机的虚拟网络编辑器,编辑->虚拟网络编辑器->VMnet8

(3)查看Windows系统适配器VMware Network Adapter VMnet8 的IP地址

(4)保证Linux系统ifcfg-ens33文件中IP地址、虚拟网络编辑器地址和Windows系

统VM8网络IP地址相同。

修改克隆机主机名,以下以hadoop102举例说明

(1)修改主机名称

[root@hadoop100 ~]# vim /etc/hostname 
hadoop102

配置Linux克隆机主机名称映射hosts文件,打开/etc/hosts

[root@hadoop100 ~]# vim /etc/hosts

添加如下内容

192.168.10.100 hadoop100 
192.168.10.101 hadoop101 
192.168.10.102 hadoop102 
192.168.10.103 hadoop103 
192.168.10.104 hadoop104 
192.168.10.105 hadoop105 
192.168.10.106 hadoop106 
192.168.10.107 hadoop107 
192.168.10.108 hadoop108 

重启克隆机hadoop102

[root@hadoop100 ~]# reboot

修改winddows的主机映射文件(hosts文件)

(1)如果操作系统是window7,可以直接修改

(a)进入C:\Windows\System32\drivers\etc路径

(b)打开hosts文件并添加如下内容,然后保存

192.168.10.100 hadoop100 
192.168.10.101 hadoop101 
192.168.10.102 hadoop102 
192.168.10.103 hadoop103 
192.168.10.104 hadoop104 
192.168.10.105 hadoop105 
192.168.10.106 hadoop106 
192.168.10.107 hadoop107 
192.168.10.108 hadoop108

(2)如果操作系统是window10,先拷贝出来,修改保存以后,再覆盖即可

(a)进入C:\Windows\System32\drivers\etc路径

(b)拷贝hosts文件到桌面

(c)打开桌面hosts文件并添加如下内容

192.168.10.100 hadoop100 
192.168.10.101 hadoop101 
192.168.10.102 hadoop102 
192.168.10.103 hadoop103 
192.168.10.104 hadoop104 
192.168.10.105 hadoop105 
192.168.10.106 hadoop106 
192.168.10.107 hadoop107 
192.168.10.108 hadoop108 

(d)将桌面hosts文件覆盖C:\Windows\System32\drivers\etc路径hosts文件


在hadoop102安装JDK

卸载现有JDK

注意:安装JDK前,一定确保提前删除了虚拟机自带的JDK


用XShell传输工具将JDK导入到opt目录下面的software文件夹下面

在Linux系统下的opt目录中查看软件包是否导入成功

[atguigu@hadoop102 ~]$ ls /opt/software/ 
• 1

看到如下结果:

jdk-8u212-linux-x64.tar.gz

解压JDK到/opt/module目录下

[atguigu@hadoop102 software]$ tar -zxvf jdk-8u212-linux
x64.tar.gz -C /opt/module/

配置JDK环境变量

(1)新建/etc/profile.d/my_env.sh文件

[atguigu@hadoop102 ~]$ 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 

(2)保存后退出

:wq

(3)source一下/etc/profile文件,让新的环境变量PATH生效

[atguigu@hadoop102 ~]$ source /etc/profile

测试JDK是否安装成功

[atguigu@hadoop102 ~]$ java -version 

如果能看到以下结果,则代表Java安装成功。

java version "1.8.0_212"

注意:重启(如果java -version可以用就不用重启

[atguigu@hadoop102 ~]$ sudo reboot

在hadoop102安装Hadoop

Hadoop下载地址:Hadoop

1)用XShell文件传输工具将hadoop-3.1.3.tar.gz导入到opt目录下面的software文件夹下面

2)进入到Hadoop安装包路径下

[atguigu@hadoop102 ~]$ cd /opt/software/ 

3)解压安装文件到/opt/module下面

[atguigu@hadoop102 software]$ tar -zxvf hadoop-3.1.3.tar.gz -C 
/opt/module/

4)查看是否解压成功

[atguigu@hadoop102 software]$ ls /opt/module/ 
hadoop-3.1.3 

5)将Hadoop添加到环境变量

(1)获取Hadoop安装路径

[atguigu@hadoop102 hadoop-3.1.3]$ pwd 
/opt/module/hadoop-3.1.3

(2)打开/etc/profile.d/my_env.sh文件

[atguigu@hadoop102 hadoop-3.1.3]$ sudo vim 
/etc/profile.d/my_env.sh

➢ 在my_env.sh文件末尾添加如下内容:(shift+g)

#HADOOP_HOME 
export HADOOP_HOME=/opt/module/hadoop-3.1.3 
export PATH=$PATH:$HADOOP_HOME/bin 
export PATH=$PATH:$HADOOP_HOME/sbin 

➢ 保存并退出: :wq

(3)让修改后的文件生效

[atguigu@hadoop102 hadoop-3.1.3]$ source /etc/profile

6)测试是否安装成功

[atguigu@hadoop102 hadoop-3.1.3]$ hadoop version 
Hadoop 3.1.3

7)重启(如果Hadoop命令不能用再重启虚拟机)

[atguigu@hadoop102 hadoop-3.1.3]$ sudo reboot

Hadoop 目录结构

查看Hadoop目录结构

[atguigu@hadoop102 hadoop-3.1.3]$ ll 
总用量 52 
drwxr-xr-x. 2 atguigu atguigu  4096 5月  22 2017 bin 
drwxr-xr-x. 3 atguigu atguigu  4096 5月  22 2017 etc 
drwxr-xr-x. 2 atguigu atguigu  4096 5月  22 2017 include 
drwxr-xr-x. 3 atguigu atguigu  4096 5月  22 2017 lib 
drwxr-xr-x. 2 atguigu atguigu  4096 5月  22 2017 libexec -rw-r--r--. 1 atguigu atguigu 15429 5月  22 2017 LICENSE.txt -rw-r--r--. 1 atguigu atguigu   101 5月  22 2017 NOTICE.txt -rw-r--r--. 1 atguigu atguigu  1366 5月  22 2017 README.txt 
drwxr-xr-x. 2 atguigu atguigu  4096 5月  22 2017 sbin 
drwxr-xr-x. 4 atguigu atguigu  4096 5月  22 2017 share 

重要目录

(1)bin目录:存放对Hadoop相关服务(hdfs,yarn,mapred)进行操作的脚本

(2)etc目录:Hadoop的配置文件目录,存放Hadoop的配置文件

(3)lib 目录:存放Hadoop的本地库(对数据进行压缩解压缩功能)

(4)sbin 目录:存放启动或停止Hadoop相关服务的脚本

(5)share 目录:存放Hadoop的依赖jar包、文档、和官方案例


总结:

Hadoop是大数据处理的重要工具,搭建Hadoop的运行环境是学习和应用Hadoop的第一步。通过安装JDK和配置Hadoop,我们可以轻松搭建一个强大的分布式计算平台,实现大规模数据处理和存储。


通过学习Hadoop的搭建和配置,我们能够深入了解Hadoop的运行原理和机制。在后续的学习和实践中,我们将探索更多Hadoop的功能和应用,为大数据处理和分析提供更加全面和高效的解决方案。


相关实践学习
简单用户画像分析
本场景主要介绍基于海量日志数据进行简单用户画像分析为背景,如何通过使用DataWorks完成数据采集 、加工数据、配置数据质量监控和数据可视化展现等任务。
SaaS 模式云数据仓库必修课
本课程由阿里云开发者社区和阿里云大数据团队共同出品,是SaaS模式云原生数据仓库领导者MaxCompute核心课程。本课程由阿里云资深产品和技术专家们从概念到方法,从场景到实践,体系化的将阿里巴巴飞天大数据平台10多年的经过验证的方法与实践深入浅出的讲给开发者们。帮助大数据开发者快速了解并掌握SaaS模式的云原生的数据仓库,助力开发者学习了解先进的技术栈,并能在实际业务中敏捷的进行大数据分析,赋能企业业务。 通过本课程可以了解SaaS模式云原生数据仓库领导者MaxCompute核心功能及典型适用场景,可应用MaxCompute实现数仓搭建,快速进行大数据分析。适合大数据工程师、大数据分析师 大量数据需要处理、存储和管理,需要搭建数据仓库?学它! 没有足够人员和经验来运维大数据平台,不想自建IDC买机器,需要免运维的大数据平台?会SQL就等于会大数据?学它! 想知道大数据用得对不对,想用更少的钱得到持续演进的数仓能力?获得极致弹性的计算资源和更好的性能,以及持续保护数据安全的生产环境?学它! 想要获得灵活的分析能力,快速洞察数据规律特征?想要兼得数据湖的灵活性与数据仓库的成长性?学它! 出品人:阿里云大数据产品及研发团队专家 产品 MaxCompute 官网 https://www.aliyun.com/product/odps 
相关文章
|
15天前
|
存储 分布式计算 Hadoop
大数据处理架构Hadoop
【4月更文挑战第10天】Hadoop是开源的分布式计算框架,核心包括MapReduce和HDFS,用于海量数据的存储和计算。具备高可靠性、高扩展性、高效率和低成本优势,但存在低延迟访问、小文件存储和多用户写入等问题。运行模式有单机、伪分布式和分布式。NameNode管理文件系统,DataNode存储数据并处理请求。Hadoop为大数据处理提供高效可靠的解决方案。
37 2
|
15天前
|
分布式计算 Hadoop 大数据
大数据技术与Python:结合Spark和Hadoop进行分布式计算
【4月更文挑战第12天】本文介绍了大数据技术及其4V特性,阐述了Hadoop和Spark在大数据处理中的作用。Hadoop提供分布式文件系统和MapReduce,Spark则为内存计算提供快速处理能力。通过Python结合Spark和Hadoop,可在分布式环境中进行数据处理和分析。文章详细讲解了如何配置Python环境、安装Spark和Hadoop,以及使用Python编写和提交代码到集群进行计算。掌握这些技能有助于应对大数据挑战。
|
4月前
|
分布式计算 Hadoop
使用Hadoop ToolRunner 运行wordcount demo
使用Hadoop ToolRunner 运行wordcount demo
26 0
|
13天前
|
分布式计算 Hadoop 大数据
Hadoop【hadoop学习大纲完全总结01+02+03+04+05】【自学阶段整理的xmind思维导图分享】【点击可放大看高清】
【4月更文挑战第5天】Hadoop【hadoop学习大纲完全总结01+02+03+04+05】【自学阶段整理的xmind思维导图分享】【点击可放大看高清】
37 5
|
17天前
|
SQL 分布式计算 Hadoop
利用Hive与Hadoop构建大数据仓库:从零到一
【4月更文挑战第7天】本文介绍了如何使用Apache Hive与Hadoop构建大数据仓库。Hadoop的HDFS和YARN提供分布式存储和资源管理,而Hive作为基于Hadoop的数据仓库系统,通过HiveQL简化大数据查询。构建过程包括设置Hadoop集群、安装配置Hive、数据导入与管理、查询分析以及ETL与调度。大数据仓库的应用场景包括海量数据存储、离线分析、数据服务化和数据湖构建,为企业决策和创新提供支持。
59 1
|
1月前
|
消息中间件 SQL 分布式计算
大数据Hadoop生态圈体系视频课程
熟悉大数据概念,明确大数据职位都有哪些;熟悉Hadoop生态系统都有哪些组件;学习Hadoop生态环境架构,了解分布式集群优势;动手操作Hbase的例子,成功部署伪分布式集群;动手Hadoop安装和配置部署;动手实操Hive例子实现;动手实现GPS项目的操作;动手实现Kafka消息队列例子等
20 1
大数据Hadoop生态圈体系视频课程
|
1月前
|
存储 SQL 关系型数据库
【MySQL 数据库】6、一篇文章学习【索引知识】,提高大数据量的查询效率【文末送书】
【MySQL 数据库】6、一篇文章学习【索引知识】,提高大数据量的查询效率【文末送书】
59 0
|
3月前
|
分布式计算 Hadoop Java
Hadoop环境搭建
Hadoop环境搭建
58 1
|
4月前
|
分布式计算 监控 Hadoop
Hadoop MR 任务运行时日志分析
Hadoop MR 任务运行时日志分析
26 0
|
4月前
|
分布式计算 NoSQL Java
大数据学习资料和书籍推荐
大数据学习资料和书籍推荐
68 0