热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

在阿里云上基于Ubuntu20配置hadoop环境(能在web端访问)

大数据课外作业:配置hadoop环境我这里是用的阿里云,这是当时活动白嫖的。在配置中遇到了一些问题,查了很多资料,没见到写

大数据课外作业:配置hadoop环境

我这里是用的阿里云,这是当时活动白嫖的。在配置中遇到了一些问题,查了很多资料,没见到写的特别详细的。所以在这里分享一下我的经验。

这是我的配置

1. 更新apt

apt update
apt upgrade

2. 安装fish(个人使用习惯)

the friendly interactive shell 这是fish的全称。和名字一样,这是一款友好的shell。

apt install fish

(但是要注意一点,不知道是因为啥 fish的模式下会对 source 关键字 报错。所以使用前退出fish。 exit 或者ctrl+d 退出)

3. 创建hadoop用户

由于root用户是超级用户,并且后续配置可能会涉及到一些变量配置,为了系统安全,推荐创建一个新用户

useradd -m hadoop -s /bin/bash # 创建用户
passwd hadoop # 设置密码
sudo adduser hadoop sudo # 赋予管理员权限
su - hadoop # 登录hadoop用户

4. 安装java环境

sudo apt install openjdk-8-jdk # 安装jdk8
java -version # 查看java版本
update-alternatives --config java # 查找安装路径

update-alternatives --config java输出的是:
There is only one alternative in link group java (providing /usr/bin/java): /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java
Nothing to configure.

这里绝对路径是/usr/lib/jvm/java-8-openjdk-amd64

在profile文件头 sudo vim /etc/profile 添加环境变量

export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64
export JRE_HOME=$JAVA_HOME/jre
export PATH=$JAVA_HOME/bin:$PATH
export CLASSPATH=$JAVA_HOME/lib:$JRE_HOME/lib
export HADOOP_HOME=/usr/local/hadoop
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin

这里的路径要和绝对路径对应

让环境变量生效

source /etc/profile # 退出fish再操作

检查,后两条输出应该是一样的

echo $JAVA_HOME
java -version
$JAVA_HOME/bin/java -version

4. 安装hadoop环境

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

下载完 解压

sudo tar -zxvf hadoop-3.3.0-aarch64.tar.gz -C /usr/local/
cd /usr/local
sudo mv hadoop-3.3.0 hadoop
sudo chown -R hadoop ./hadoop

在vim ~/.bashrc中加入环境变量

export HADOOP_HOME=/usr/local/hadoop
export CLASSPATH=$($HADOOP_HOME/bin/hadoop classpath):$CLASSPATH
export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin

让环境生效

source ~/.bashrc # 退出fish

5. 配置hadoop

cd /usr/local/hadoop
mkdir input
cp etc/hadoop/*.xml input
bin/hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-3.3.0.jar grep input output 'dfs[a-z.]+'
cat output/*

输出应该为:

1 dfsadmin

6.伪分布式操作

这里就是重点了,由于我们是阿里云,所以这里会和其他的服务器不太一样。

1. 配置阿里云端口
在这里插入图片描述
进入云服务器
在这里插入图片描述
点击红色部分 进入云服务器
在这里插入图片描述
点击配置安全组规则。
在这里插入图片描述
配置规则
在这里插入图片描述
点击手动添加。添加如图的规则。端口号这里是50070(和后面的配置文件要对应)

2.修改配置文件(在末尾添加)
vim etc/hadoop/core-site.xml
(默认结尾会有一个。把这个删除掉,或者是在里面添加其他内容)

<configuration><property><name>fs.defaultFS</name><value>hdfs://localhost:9000</value></property>
</configuration>

配置vim etc/hadoop/hdfs-site.xml


<configuration><property><name>dfs.namenode.http-address</name><value>0.0.0.0:50070</value></property>
</configuration>

这里的50070要对应之前的手动添加的端口。

格式化&#xff0c;启动进程&#xff08;在cd /usr/local/hadoop的目录下&#xff09;

bin/hdfs namenode -format
sbin/start-dfs.sh

输出如下图
在这里插入图片描述
WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform… using builtin-java classes where applicable
这个是警告&#xff0c;可以不用管。

最后

netstat -tpnl # 查看50070端口情况

在这里插入图片描述
有0.0.0.0.0::50070表示配置成功

然后就可以在web上查看了。

网址栏输入 公网ip:50070
成功登录
在这里插入图片描述

如果不能登录&#xff0c;那么有可以是端口的问题。应该是两个配置文件出了问题。


推荐阅读
  • 本文详细介绍了如何在 Linux 系统上安装 JDK 1.8、MySQL 和 Redis,并提供了相应的环境配置和验证步骤。 ... [详细]
  • vsftpd配置(虚拟用户、匿名用户登录)
    一、ftp服务搭建(一)概述1.ftp连接及传输模式(1)控制连接TCP21,用于发送FTP命令信息 ... [详细]
  • Cookie学习小结
    Cookie学习小结 ... [详细]
  • Linux笔记:JDK安装与环境变量配置
    本文详细介绍了在Linux系统中安装JDK并配置环境变量的步骤,帮助读者顺利完成Java开发环境的搭建。 ... [详细]
  • 用阿里云的免费 SSL 证书让网站从 HTTP 换成 HTTPS
    HTTP协议是不加密传输数据的,也就是用户跟你的网站之间传递数据有可能在途中被截获,破解传递的真实内容,所以使用不加密的HTTP的网站是不 ... [详细]
  • 在多线程并发环境中,普通变量的操作往往是线程不安全的。本文通过一个简单的例子,展示了如何使用 AtomicInteger 类及其核心的 CAS 无锁算法来保证线程安全。 ... [详细]
  • 在开发过程中,我最初也依赖于功能全面但操作繁琐的集成开发环境(IDE),如Borland Delphi 和 Microsoft Visual Studio。然而,随着对高效开发的追求,我逐渐转向了更加轻量级和灵活的工具组合。通过 CLIfe,我构建了一个高度定制化的开发环境,不仅提高了代码编写效率,还简化了项目管理流程。这一配置结合了多种强大的命令行工具和插件,使我在日常开发中能够更加得心应手。 ... [详细]
  • 兆芯X86 CPU架构的演进与现状(国产CPU系列)
    本文详细介绍了兆芯X86 CPU架构的发展历程,从公司成立背景到关键技术授权,再到具体芯片架构的演进,全面解析了兆芯在国产CPU领域的贡献与挑战。 ... [详细]
  • 我有一个从C项目编译的.o文件,该文件引用了名为init_static_pool ... [详细]
  • 在 CentOS 6.4 上安装 QT5 并启动 Qt Creator 时,可能会遇到缺少 GLIBCXX_3.4.15 的问题。这是由于系统中的 libstdc++.so.6 版本过低。本文将详细介绍如何通过更新 GCC 版本来解决这一问题。 ... [详细]
  • 为了确保iOS应用能够安全地访问网站数据,本文介绍了如何在Nginx服务器上轻松配置CertBot以实现SSL证书的自动化管理。通过这一过程,可以确保应用始终使用HTTPS协议,从而提升数据传输的安全性和可靠性。文章详细阐述了配置步骤和常见问题的解决方法,帮助读者快速上手并成功部署SSL证书。 ... [详细]
  • 为了在Hadoop 2.7.2中实现对Snappy压缩和解压功能的原生支持,本文详细介绍了如何重新编译Hadoop源代码,并优化其Native编译过程。通过这一优化,可以显著提升数据处理的效率和性能。此外,还探讨了编译过程中可能遇到的问题及其解决方案,为用户提供了一套完整的操作指南。 ... [详细]
  • 如何使用ES6语法编写Webpack配置文件? ... [详细]
  • 如何在任意浏览器中轻松安装并使用VSCode——Codeserver简易指南
    code-server 是一款强大的工具,允许用户在任何服务器上部署 VSCode,并通过浏览器进行访问和使用。这一解决方案不仅简化了开发环境的搭建过程,还提供了高度灵活的工作方式。用户只需访问 GitHub 上的官方仓库(GitHub-coder/code-server),即可获取详细的安装和配置指南,快速启动并运行 code-server。无论是个人开发者还是团队协作,code-server 都能提供高效、便捷的代码编辑体验。 ... [详细]
  • 在 CentOS 7 中,为了扩展可用软件包的数量,通常需要配置多个第三方软件源。这些第三方源包括 EPEL、Nux Dextop 和 ELRepo 等,它们提供了大量官方源中未包含的软件包,从而增强了系统的功能性和灵活性。通过正确配置这些源,用户可以轻松安装和管理更多种类的软件,满足不同的需求。 ... [详细]
author-avatar
陈智伟569993
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有