【ECS生长万物之开源】基于ECS实例搭建Hadoop环境

本文涉及的产品
云服务器 ECS,每月免费额度200元 3个月
云服务器ECS,u1 2核4GB 1个月
简介: Hadoop是一款由Apache基金会用Java语言开发的分布式开源软件框架,用户可以在不了解分布式底层细节的情况下,开发分布式程序,充分利用集群的能力进行高速运算和存储。本教程介绍如何在Linux操作系统的ECS实例上快速搭建Hadoop伪分布式环境。

本教程介绍如何在Linux操作系统的ECS实例上快速搭建Hadoop伪分布式环境。

前提条件

1.已创建ECS实例。具体操作,请参见使用向导创建实例。本教程示例场景中,ECS实例的配置如下:

  • 实例规格:ecs.g6.large
  • 操作系统:公共镜像CentOS 7.7 64位
  • 网络类型:专有网络VPC
  • IP地址:公网IP

说明:由于操作系统和版本不同,操作时命令可能存在差异,本教程的操作命令仅为示例,请您以实际软件版本为准。

2.已在ECS实例安全组的入方向中放行了Hadoop所需的8088和50070端口。具体操作,请参见添加安全组规则

背景信息

Hadoop是一款由Apache基金会用Java语言开发的分布式开源软件框架,用户可以在不了解分布式底层细节的情况下,开发分布式程序,充分利用集群的能力进行高速运算和存储。Hadoop的核心部件是HDFS(Hadoop Distributed File System)和MapReduce:

HDFS:是一个分布式文件系统,可对应用程序数据进行分布式储存和读取。

MapReduce:是一个分布式计算框架,MapReduce的核心思想是把计算任务分配给集群内的服务器执行。通过对计算任务的拆分(Map计算和Reduce计算),再根据任务调度器(JobTracker)对任务进行分布式计算。

更多信息,请参见Hadoop官网

操作步骤

在ECS实例上快速搭建Hadoop伪分布式环境的操作步骤如下:

  1. 步骤一:安装JDK
  2. 步骤二:安装Hadoop
  3. 步骤三:配置Hadoop
  4. 步骤四:配置SSH免密登录
  5. 步骤五:启动Hadoop

步骤一:安装JDK

1.远程连接已创建的ECS实例。具体操作,请参见连接方式概述

2.执行以下命令,下载JDK 1.8安装包。

wget https://download.java.net/openjdk/jdk8u41/ri/openjdk-8u41-b04-linux-x64-14_jan_2020.tar.gz

3.执行以下命令,解压下载的JDK 1.8安装包。

tar -zxvf openjdk-8u41-b04-linux-x64-14_jan_2020.tar.gz

4.执行以下命令,移动并重命名JDK安装包。本示例中将JDK安装包重命名为java8,您可以根据需要使用其他名称。

mv java-se-8u41-ri/ /usr/java8

5.执行以下命令,配置Java环境变量。如果您将JDK安装包重命名为其他名称,需将以下命令中的java8替换为实际的名称。

echo 'export JAVA_HOME=/usr/java8' >> /etc/profile
echo 'export PATH=$PATH:$JAVA_HOME/bin' >> /etc/profile
source /etc/profile

6.执行以下命令,查看Java是否成功安装。

java -version

  如果返回以下信息,则表示Java已安装成功。

openjdk version "1.8.0_41"
OpenJDK Runtime Environment (build 1.8.0_41-b04)
OpenJDK 64-Bit Server VM (build 25.40-b25, mixed mode)

步骤二:安装Hadoop

1.执行以下命令,下载Hadoop安装包。

wget https://mirrors.bfsu.edu.cn/apache/hadoop/common/hadoop-2.10.1/hadoop-2.10.1.tar.gz

2.执行以下命令,解压Hadoop安装包至/opt/hadoop

tar -zxvf hadoop-2.10.1.tar.gz -C /opt/
mv /opt/hadoop-2.10.1 /opt/hadoop

3.执行以下命令,配置Hadoop环境变量。

echo 'export HADOOP_HOME=/opt/hadoop/' >> /etc/profile
echo 'export PATH=$PATH:$HADOOP_HOME/bin' >> /etc/profile
echo 'export PATH=$PATH:$HADOOP_HOME/sbin' >> /etc/profile
source /etc/profile

4.执行以下命令,修改配置文件yarn-env.shhadoop-env.sh

echo "export JAVA_HOME=/usr/java8" >> /opt/hadoop/etc/hadoop/yarn-env.sh
echo "export JAVA_HOME=/usr/java8" >> /opt/hadoop/etc/hadoop/hadoop-env.sh

5.执行以下命令,测试Hadoop是否安装成功。

hadoop version

如果返回以下信息,则表示安装成功。

Hadoop 2.10.1
Subversion https://github.com/apache/hadoop -r 1827467c9a56f133025f28557bfc2c562d78e816
Compiled by centos on 2020-09-14T13:17Z
Compiled with protoc 2.5.0
From source with checksum 3114edef868f1f3824e7d0f68be03650
This command was run using /opt/hadoop/share/hadoop/common/hadoop-common-2.10.1.jar

步骤三:配置Hadoop

1.修改Hadoop配置文件core-site.xml

a.执行以下命令,进入编辑页面。

vim /opt/hadoop/etc/hadoop/core-site.xml

b.输入i,进入编辑模式。

c.在<configuration></configuration>节点内,插入如下内容。

<property>
        <name>hadoop.tmp.dir</name>
        <value>file:/opt/hadoop/tmp</value>
        <description>location to store temporary files</description>
    </property>
    <property>
        <name>fs.defaultFS</name>
        <value>hdfs://localhost:9000</value>
    </property>

d.按Esc,退出编辑模式,并输入:wq保存并退出。

2.修改Hadoop配置文件hdfs-site.xml

a.执行以下命令,进入编辑页面。

vim /opt/hadoop/etc/hadoop/hdfs-site.xml

b.输入i,进入编辑模式。

c.在<configuration></configuration>节点内,插入如下内容。

<property>
        <name>dfs.replication</name>
        <value>1</value>
    </property>
    <property>
        <name>dfs.namenode.name.dir</name>
        <value>file:/opt/hadoop/tmp/dfs/name</value>
    </property>
    <property>
        <name>dfs.datanode.data.dir</name>
        <value>file:/opt/hadoop/tmp/dfs/data</value>
    </property>

d.按Esc,退出编辑模式,并输入:wq后保存并退出。

步骤四:配置SSH免密登录

1.执行以下命令,创建公钥和私钥。

ssh-keygen -t rsa

回显信息如下所示,表示创建公钥和私钥成功。

[root@iZbp1chrrv37a2kts7sydsZ ~]# ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /root/.ssh/id_rsa.
Your public key has been saved in /root/.ssh/id_rsa.pub.
The key fingerprint is:
SHA256:gjWO5mgARst+O5VUaTnGs+LxVhfmCJnQwKfEBTro2oQ root@iZbp1chrrv37a2kts7s****
The key's randomart image is:
+---[RSA 2048]----+
| .  o+Bo=        |
|o o .+.#   o     |
|.= o..B = + .    |
|=.  oO.o o o     |
|Eo..=o* S .      |
|.+.+o. +         |
|. +o. .          |
| .  .            |
|                 |
+----[SHA256]-----+

2.执行以下命令,将公钥添加到authorized_keys文件中。

cd .ssh
cat id_rsa.pub >> authorized_keys

步骤五:启动Hadoop

1.执行以下命令,初始化namenode

hadoop namenode -format

2.依次执行以下命令,启动Hadoop。

start-dfs.sh

在弹出的提示中,依次输入yes

start-yarn.sh

回显信息如下所示。

[root@iZbp1chrrv37a2kts7s**** .ssh]# start-yarn.sh
starting yarn daemons
starting resourcemanager, logging to /opt/hadoop/logs/yarn-root-resourcemanager-iZbp1chrrv37a2kts7sydsZ.out
localhost: starting nodemanager, logging to /opt/hadoop/logs/yarn-root-nodemanager-iZbp1chrrv37a2kts7sydsZ.out

3.执行以下命令,可查看成功启动的进程。

jps

成功启动的进程如下所示。

[root@iZbp1chrrv37a2kts7s**** .ssh]# jps
11620 DataNode
11493 NameNode
11782 SecondaryNameNode
11942 ResourceManager
12344 Jps
12047 NodeManager

4.打开浏览器访问http://:8088http://:50070显示如下界面,则表示Hadoop伪分布式环境已搭建完成。
注意 需确保在ECS实例所在安全组的入方向中放行Hadoop所需的8088和50070端口,否则无法访问。具体操作,请参见添加安全组规则

相关实践学习
一小时快速掌握 SQL 语法
本实验带您学习SQL的基础语法,快速入门SQL。
7天玩转云服务器
云服务器ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,可降低 IT 成本,提升运维效率。本课程手把手带你了解ECS、掌握基本操作、动手实操快照管理、镜像管理等。了解产品详情:&nbsp;https://www.aliyun.com/product/ecs
相关文章
|
18天前
|
弹性计算 大数据 数据处理
阿里云服务器实例哪些属于入门级,哪些是企业级?有何区别?
阿里云服务器的实例规格从级别上来说分为入门级和企业级,从实例规格种类上来说,又分为突发性能型、共享型、计算型、通用型、内存型、大数据型等,2024年截止目前在阿里云的活动中,可选的云服务器实例规格有轻量应用服务器、经济型e、通用算力型u1、计算型c7、计算型c7a、计算型c8a、计算型c8y、通用型g7、通用型g7a、通用型g8a、通用型g8i、通用型g8y、内存型r7、内存型r8y等,有的新手用户不是很清楚2024年阿里云活动中的云服务器实例哪些属于入门级,哪些是企业级?有何区别?下面根据官方的各种资料介绍为大家解答下这些疑问,帮助您能更清楚地了解阿里云服务器,快速找到自己对云服务器产品的需
阿里云服务器实例哪些属于入门级,哪些是企业级?有何区别?
|
1天前
|
存储 编解码 安全
阿里云服务器计算型、通用型、内存型主要实例性能及选择参考
在阿里云的活动中,属于计算型实例规格的云服务器主要有计算型c7、计算型c7a、计算型c8a、计算型c8y、计算型c8i这几个实例规格,属于通用型实例规格的云服务器有通用型g7、通用型g7a、通用型g8a、通用型g8y、通用型g8i,属于内存型实例规格的云服务器有内存型r7、内存型r8a、内存型r8y、内存型r8i等实例。不同实例规格的云服务器在架构、计算、存储、网络、安全等方面有着不同,因此,其适用场景也有所不同。本文来详细介绍一下阿里云服务器计算型、通用型、内存型主要实例计算、存储等性能及其适用场景,以供参考。
阿里云服务器计算型、通用型、内存型主要实例性能及选择参考
|
3天前
|
存储 编解码 网络协议
阿里云服务器计算型c7、计算型c7a、计算型c8a、计算型c8y实例区别及选择参考
在阿里云的活动中,属于计算型实例规格的云服务器一般会有计算型c7、计算型c7a、计算型c8a、计算型c8y这几个实例规格,与经济型e实例相比,这些实例均属于企业级实例,与通用算力u1实例相比的话这些实例规格等性能更强,这些计算型实例主要适用于网站应用、批量计算、视频编码等各种类型和规模的企业级应用,本文为大家介绍计算型c7、c7a、c8a、c8y实例区别,以供参考。
阿里云服务器计算型c7、计算型c7a、计算型c8a、计算型c8y实例区别及选择参考
|
5天前
|
存储 缓存 安全
阿里云服务器实例规格选型参考,根据上云场景选择适合自己的实例规格
对于很多新手用户来说,在初次选择阿里云服务器实例规格的时候,面对众多实例规格往往不知道如何选择,因为云服务器实例规格不同,价格也不一样,本文通过一些常见的选型场景推荐,便于大家在选择云服务器实例规格时做个参考。
阿里云服务器实例规格选型参考,根据上云场景选择适合自己的实例规格
|
6天前
|
编解码 缓存 安全
阿里云目前活动内各云服务器实例规格适用场景与价格参考
目前阿里云的活动中,云服务器有多种不同实例规格可选,实例规格定义了实例的基本属性:CPU和内存(包括CPU型号、主频等),但是不同实例规格所适用的场景是不一样的,价格也有很大差别,有的用户初次选购阿里云服务器可能并不知道这些实例规格的具体适用场景,下面是小编整理汇总的2024年截止目前阿里云的活动中云服务器实例规格适用场景与活动价格,以供参考。
阿里云目前活动内各云服务器实例规格适用场景与价格参考
|
8天前
|
PyTorch TensorFlow 算法框架/工具
【科研入门】搭建与配置云服务器的论文环境
本文介绍了如何搭建云服务器并配置论文代码环境,以AutoDL平台为例。首先,租用服务器并选择符合代码需求的镜像版本,如Python 3.7、TensorFlow 1.15和PyTorch。接着,启动服务器进入终端,克隆项目代码并使用Conda创建隔离的环境安装所需包。如果需在Pycharm中工作,还需在Pycharm内创建相同环境。最后,根据项目配置安装Tensorflow和PyTorch,遇到缺失包时通过`pip install`补充。完成配置后,可克隆服务器以备后续使用。遇到版本不兼容问题,可调整Conda环境的Python版本。
29 1
【科研入门】搭建与配置云服务器的论文环境
|
14天前
|
弹性计算 供应链
阿里云服务器付费模式包年包月、按量付费、抢占式实例选择说明
阿里云ECS提供包年包月、按量付费和抢占式实例三种计费方式。选择建议:稳定需求选包年包月,动态需求选按量付费,无状态应用选抢占式实例以降低成本。可结合使用按量付费、预留实例券和节省计划以平衡灵活性和成本。需要资源保障则组合按量付费和资源保障。具体详情和规定可参考阿里云ECS官方文档
40 7
|
14天前
|
数据安全/隐私保护 Windows
使用Serv-U FTP服务器共享文件,实现无公网IP环境下远程访问-2
使用Serv-U FTP服务器共享文件,实现无公网IP环境下远程访问
|
14天前
|
存储 网络协议 文件存储
使用Serv-U FTP服务器共享文件,实现无公网IP环境下远程访问-1
使用Serv-U FTP服务器共享文件,实现无公网IP环境下远程访问
|
14天前
|
存储 弹性计算 运维
深度解读:阿里云服务器ECS经济型e实例配置整理和性能参数表
阿里云推出经济型ECS e系列服务器,适用于个人开发者、学生和小微企业。该系列采用Intel Xeon Platinum处理器,支持多种CPU内存配比,性价比高,2核2G3M配置只需99元/年,新老用户不限量购买且续费不涨价。提供相同可用性SLA和安全标准,具备ESSD Entry云盘等企业级特性。适合中小型网站、开发测试和轻量级应用

热门文章

最新文章

相关产品

  • 云服务器 ECS
  • http://www.vxiaotou.com