安装hadoop,并配置hue

news2025/1/4 16:11:15

0、说明

对于大数据学习的初始阶段,我也曾尝试搭建相应的集群环境。通过搭建环境了解组件的一些功能、配置、原理。
在实际学习过程中,我更多的还是使用docker来快速搭建环境。
这里记录一下我搭建hadoop的过程。

1、下载hadoop

下载地址:Apache Hadoop

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

# 解压
tar -zxvf hadoop-2.10.1.tar.gz

# 复制到 /usr/hadoop/目录下
# sudo mkdir /usr/hadoop/
# cp -r hadoop-2.10.1 /usr/hadoop/

# 添加HADOOP_HOME
sudo /etc/profile
# 添加如下内容,并保存退出
#HADOOP_HOME
export HADOOP_HOME=/home/airwalk/bigdata/soft/hadoop-2.10.1
export PATH=$HADOOP_HOME/bin:$PATH
export PATH=$HADOOP_HOME/sbin:$PATH


# 使生效
source /etc/profile

# 测试
hdfs version

#结果如下
airwalk@svr43:/usr/hadoop/hadoop-2.10.1$ hdfs  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 /home/airwalk/bigdata/soft/hadoop-2.10.1/share/hadoop/common/hadoop-common-2.10.1.jar


# 测试
cd bigdata/soft/hadoop-2.10.1
mkdir input
cp etc/hadoop/* input
hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.10.1.jar grep input/ output '[a-z.]+'

至此,在一台机器上的hadoop安装成功

2、配置

svr43server42server37
hdfsnamenode,datanodedatanodeSecondaryNamenode,datanode
yarnnodeManagerresourceManager,nodeManagernodeManager

0:免密登录配置

  • 在svr43机器上生成密钥(hdfs的namenode节点)
cd ~/.ssh
## 下面一直回车即可
ssh-keygen -t rsa

## 然后在该目录下执行
ssh-copy-id server42
ssh-copy-id server37
# 自己也需要免密登录自己
ssh-copy-id svr43

  • 在 server42机器上生成密钥,免密登录其它节点,因为该节点是yarn 的resourceManger
cd ~/.ssh
## 下面一直回车即可
ssh-keygen -t rsa

## 然后在该目录下执行
# 自己也需要免密登录自己
ssh-copy-id server42
ssh-copy-id server37
ssh-copy-id svr43

!! 注意,出现如下异常

airwalk@server42:~/.ssh$ ssh svr43
Warning: the ECDSA host key for 'svr43' differs from the key for the IP address '192.168.0.43'
Offending key for IP in /home/airwalk/.ssh/known_hosts:3
Matching host key in /home/airwalk/.ssh/known_hosts:11
Are you sure you want to continue connecting (yes/no)? yes
Welcome to Ubuntu 16.04.6 LTS (GNU/Linux 4.4.0-142-generic x86_64)

# 解决方法
ssh-keygen -R 192.168.0.43
  • 在svr43机器上生成root密钥(hdfs的namenode节点)
# 切换到root账户下
sudo su root
cd /root/.ssh
ssh-keygen -t rsa
ssh-copy-id server42
ssh-copy-id server37
ssh-copy-id svr43

1:配置core-site.xml

临时文件的位置,注意不能放在太小的磁盘里,这里使用的是如下目录

/home/airwalk/bigdata/soft/hadoop-2.10.1/data/tmp
<property>
<name>fs.defaultFS</name>
<value>hdfs://192.168.0.43:9000</value>
<!-- 这里直接使用配置ip的方式  -->
#<value>hdfs://svr43:9000</value>
</property>

<property>
<name>hadoop.tmp.dir</name>
<value>/home/airwalk/bigdata/soft/hadoop-2.10.1/data/tmp</value>
</property>

2:hdfs的配置文件

配置hadoop-env.sh

echo $JAVA_HOME
vim hadoop-env.sh
export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64

配置hdfs-site.xml

因为集群时3个,所以这里改为副本为3

    <property>
        <name>dfs.replication</name>
        <value>3</value>
    </property>
    <!-- 指定hadoop辅助namenode节点主机配置 -->
    <property>
        <name>dfs.namenode.secondary.http-address</name>
        <value>server37:50090</value>
    </property>

3:yarn配置

配置yarn-env.sh

vim yarn-env.sh
export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64

配置yarn-site.xml

    <property>
        <name>yarn.nodemanager.aux-services</name>
        <value>mapreduce_shuffle</value>
    </property>
<!-- 指定hadoop辅助namenode节点主机配置 -->
<property>
    <name>yarn.resourcemanager.hostname</name>
    <!-- 这里直接使用配置ip的方式  -->
    <value>192.168.0.42</value>
        <!-- <value>server42</value> -->
</property>

4:MapReduce配置

配置mapred-env.sh

vim yarn-env.sh
export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64

配置mapred-site.xml


    <property>
        <name>mapreduce.framework.name</name>
        <value>yarn</value>
    </property>

3、启动

  • 在namenode节点上,进行格式化操作
hdfs namenode -format
  • 启动namenode
cd sbin
./hadoop-daemon.sh start namenode
./sbin/hadoop-daemon.sh start namenode
  • 启动datanode
# 三台机器均启动
./sbin/hadoop-daemon.sh start datanode
  • 退出
./sbin/hadoop-daemon.sh stop namenode
# 三台机器均退出
./sbin/hadoop-daemon.sh stop datanode

4、集群启动

1:配置slaves, 所有节点都要修改

cd /home/airwalk/bigdata/soft/hadoop-2.10.1/etc/hadoop
vim salves
# 添加从主机的名字,不允许有空格和空行
svr43
server42
server37

2: 启动hdfs集群

可以自动启动集群中的所有datanode和namenode

# 在hdfs的namenode节点上执行下面的命令
./sbin/start-dfs.sh

3:启动yarn

# 需要再resourceManger节点上进行处理(server42)
./sbin/start-yarn.sh

starting yarn daemons
resourcemanager running as process 10206. Stop it first.
server42: nodemanager running as process 10550. Stop it first.
svr43: starting nodemanager, logging to /home/airwalk/bigdata/soft/hadoop-2.10.1/logs/yarn-airwalk-nodemanager-svr43.out
server37: starting nodemanager, logging to /home/airwalk/bigdata/soft/hadoop-2.10.1/logs/yarn-airwalk-nodemanager-server37.out

5、查看

namenode 节点上的链接

http://192.168.0.43:50070/

在这里插入图片描述

6、配置hue

Hadoop配置文件修改

hdfs-site.xml

<property>
  <name>dfs.webhdfs.enabled</name>
  <value>true</value>
</property>

core-site.html

<property>
  <name>hadoop.proxyuser.airwalk.hosts</name>
  <value>*</value>
</property>
<property>
  <name>hadoop.proxyuser.airwalk.groups</name>
  <value>*</value>
</property>

<property>
  <name>hadoop.proxyuser.root.hosts</name>
  <value>*</value>
</property>
<property>
  <name>hadoop.proxyuser.root.groups</name>
  <value>*</value>
</property>

httpfs-site.xml配置

    <!-- Hue HttpFS proxy airwalk setting -->
    <property>
    <name>httpfs.proxyuser.airwalk.hosts</name>
    <value>*</value>
    </property>
    <property>
    <name>httpfs.proxyuser.airwalk.groups</name>
    <value>*</value>
    </property>

HUE配置文件修改

[[hdfs_clusters]] [[[default]]]

fs_defaultfs=hdfs://mycluster

webhdfs_url=http://node1:50070/webhdfs/v1

hadoop_bin=/usr/hadoop-2.5.1/bin

hadoop_conf_dir=/usr/hadoop-2.5.1/etc/hadoop

启动hdfs、重启hue

解决方法:

1、 关闭hdfs的权限验证

hdfs-site.xml

<property>
 <name>dfs.permissions.enabled</name>
  <value>false</value>
</property>

 docker run -tid --name hue88  -p 8888:8888  -v /home/airwalk/bigdata/soft/hadoop-2.10.1/etc/hadoop:/etc/hadoop  gethue/hue:latest

 docker cp hue.ini hue88:/usr/share/hue/desktop/conf/
 
 docker restart hue88
 
 docker exec -it --user root <container id> /bin/bash
sudo apt-get install ant asciidoc cyrus-sasl-devel cyrus-sasl-gssapi cyrus-sasl-plain gcc gcc-c++ krb5-devel libffi-devel libxml2-devel libxslt-devel make mysql mysql-devel openldap-devel python-devel sqlite-devel gmp-devel rsync


# 作者:一拳超疼
# 链接:https://www.jianshu.com/p/a80ec32afb27
# 来源:简书


# 参考文档
[Install :: Hue SQL Assistant Documentation (gethue.com)](https://docs.gethue.com/administrator/installation/install/)
# 安装完所以的依赖后,再
# /home/airwalk/bigdata/soft/hue 是想要安装的目录
sudo PREFIX=/home/airwalk/bigdata/soft/hue make install
  • python3.8 安装
https://blog.csdn.net/qq_39779233/article/details/106875184
  • 安装npm
sudo apt install npm
npm install --unsafe-perm=true --allow-root

  • 安装node
# 选择源,及版本号,这里是10.x,其它版本只需要更改为一些如:12.x,注意后面就是一个x
curl -sL https://deb.nodesource.com/setup_10.x | sudo -E bash -

# 安装相应的node
sudo apt-get install -y nodejs

# 查看
node --version

  • 问题
# gyp ERR! stack Error: EACCES: permission denied, mkdir问题解决方案
# npm 有些命令不允许在root用户下执行,会自动从root用户切换到普通用户,这里设置一下,就可以在当前用户下执行

sudo npm i --unsafe-perm

# 然后在root权限下执行如下命令
PREFIX=/home/airwalk/bigdata/soft/hue make install

编译安装成功!!!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1072042.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

2023年中国智慧医院市场现状及行业发展趋势分析[图]

自&#xff12;&#xff10;&#xff11;&#xff19;年开始&#xff0c;国家卫健委首次提出了智慧医院这一概念ꎬ并明确提出包含的三个方面&#xff0c;即:一是智慧医疗方面&#xff0c;主要面向医院所有医务人员使用者&#xff0c;以深层次提升医院信息化建设为目标ꎬ规范参照…

2023年中国连锁麻辣烫市场发展趋势分析:连锁麻辣烫行业规模将持续增长[图]

连锁麻辣烫即以连锁模式经营的麻辣烫。麻辣烫源自巴蜀地区&#xff0c;后经过市场从业者的改良推广&#xff0c;已经成为一种表现形式丰富多样的中式快餐。可根据连锁麻辣烫门店连锁模式的不同&#xff0c;将连锁麻辣烫门店分为直营连锁麻辣烫和加盟连锁麻辣烫。 连锁麻辣烫行…

无痛入门Prometheus:一个强大的开源监控和告警系统,如何快速安装和使用?

一、前生今世 Prometheus 是完全开源的系统监控和告警工具包&#xff0c;它受 Google 内部的 BorgMon 监控系统启发&#xff0c;由前Google 工程师从 2012 年开始在 SoundCloud 以开源软件的形式进行研发&#xff0c;自此以后&#xff0c;许多公司和组织都采用了Prometheus 作为…

Docker学习笔记 - 极简极入门级

Docker学习笔记 - 极简极入门级 文章目录 Docker学习笔记 - 极简极入门级前言架构命令docker pulldocker pushdocker imagesdocker rmidocker rundocker stop/start/restartdocker rmdocker psdocker execdocker logsdocker save/loaddocker inspectdocker builddocker network…

2023年中国香樟木家具行业分析:定制化和个性化的需求不断增加[图]

香樟木是一种常见的木材&#xff0c;它在家具行业中被广泛使用。香樟木家具行业定义是指使用香樟木材料制造的家具产品的生产、销售和相关业务活动。 香樟木家具行业分类 资料来源&#xff1a;共研产业咨询&#xff08;共研网&#xff09; 香樟木家具的生产主要集中在少数大型…

vue-slot插槽

作用&#xff1a;让父组件可以向子组件中任意位置插入html结构&#xff0c;也是组件通信方式的一种&#xff0c;适用于父组件》子组件 分类: 默认插槽、具名插槽、作用域插槽 定义子组件时使用slot组件&#xff0c;在使用子组件是可以决定是否插入具体的html代码 默认插槽 如…

Survey on Cooperative Perception in an Automotive Context 论文阅读

论文链接 Survey on Cooperative Perception in an Automotive Context 0. Abstract 本文就协同基础设施领域提供相关环境的调查回顾了感知中涉及的主要模块&#xff1a;定位&#xff0c;目标检测和跟踪&#xff0c;地图生成提供了协同感知的 SWOT 1. Intro 无人驾驶汽车的背…

万宾荣获深圳应博会“全球应急产业先锋奖”创始人发表峰会演讲

今年5月&#xff0c;住房和城乡建设部表示将全面启动的城市基础设施生命线安全工程工作&#xff0c;通过各类智能感知设备等数字化手段&#xff0c;及早发现和管控城市燃气、桥梁、供水、排水防涝等领域的风险隐患&#xff0c;切实提高城市安全保障能力、维护人民生命财产安全&…

基于SpringBoot的足球联赛管理系统

基于SpringBoot的足球联赛管理系统 开发语言&#xff1a;Java数据库&#xff1a;MySQL技术&#xff1a;SpringBootMyBatisVue工具&#xff1a;IDEA/Ecilpse、Navicat、Maven 系统展示 首页 详情 管理员界面 摘要 基于Spring Boot的足球联赛管理系统代表了一种现代体育赛事管…

这15个海运提单的雷区 你知道吗?

海运提单中英文对照 海运提单主要项目填制说明 1、托运人(Shipper)&#xff1a;即与承运人签订运输契约&#xff0c;委托运输的货主&#xff0c;即发货人。在信用证支付方式下&#xff0c;一般以受益人为托运人;托收方式以托收的委托人为托运人。另外&#xff0c;根据《UCP500》…

【uniapp】subnvue组件数据更新视图未更新问题

背景 : 页面中的弹窗使用了subnvue来写, 根据数据依次展示一个一个的弹窗, 点击"关闭"按钮关闭当前弹窗, 显示下一个弹窗 问题 : 当点击关闭时( 使用的splice() ), 数据更新了 , 而视图没有更新, 实际上splice() 是不仅更新数据, 也可以更新视图的 解决 : this.$fo…

Linux配置JAVA_HOME

[rootlocalhost ~]# lsb_release -a No LSB modules are available. Distributor ID: Ubuntu Description: Ubuntu 22.04.3 LTS Release: 22.04 Codename: jammy1.下载jdk 官网下载地址 2.将下载好的软件包解压到指定目录 tar -zxf /usr/local/software/jdk-…

雪莱的式子武汉2023(分析+快速幂)

传送门&#xff1a;登录—专业IT笔试面试备考平台_牛客网 思路&#xff1a; 对于每一种质因子&#xff0c;如果他在μ&#xff08;&#xff09;函数中出现两次&#xff0c;那这种情况对答案贡献为0&#xff0c;所以我们可以只讨论每一种因子出现0&#xff0c;1次的情况。 对于…

Altium Designer实用系列(一)----原理图导入PCB、PCB板子外形、多层板绘制等

一、原理图导入PCB 绘制原理图就不必多说了&#xff0c;根据自己电路的需求&#xff0c;去设计电源、芯片的外围电路、MCU外设分配就好。接下来主要介绍的是在导入PCB前对原理图的检查&#xff1a; 元器件标号注解 元器件封装确认&#xff1a;工具->封装管理器&#xff1…

美团代运营优势成都优优聚告诉你!

美团代运营是一种全新的商务服务模式&#xff0c;通过委托美团平台进行运营管理&#xff0c;以提升企业销售业绩和品牌影响力为目标。美团代运营有着许多优势&#xff0c;下面我们来详细了解一下。 首先&#xff0c;美团代运营具有强大的用户流量。作为中国最大的本地生活服务平…

wpf中prism框架

安装prism包&#xff1a; 添加引用 using System; using System.Collections.Generic; using System.Configuration; using System.Data; using System.Linq; using System.Threading.Tasks; using System.Windows; using Prism.DryIoc; using Prism.Ioc;namespace PrismDemo …

一文了解高压放大器的应用

高压放大器是一种能够将低压信号放大到高电压信号的设备或电路。它在许多领域中都有广泛的应用。以下是一些常见的高压放大器的应用领域。 实验室和科学研究&#xff1a;高压放大器在实验室研究和科学领域中扮演着重要的角色。例如&#xff0c;在物理学、化学、生物学等领域的研…

CRM系统软件如何防止客户流失

客户资源是很重要的资产&#xff0c;防止客户数据丢失是所有企业都非常重视的事情。在日常经营管理中&#xff0c;员工离职、工作交接、数据整理都会造成客户数据丢失的情况。作为企业管理工具&#xff0c;CRM客户管理系统都有哪些手段防止客户流失&#xff1f; 1、客户资源存…

【JavaEE重点知识归纳】第6节:数组

目录 一&#xff1a;数组的基本概念 1.什么是数组 2.数组的创建和初始化 3.数组的使用 ​编辑二&#xff1a;数组是引用类型 1.了解JVM的内存分布 2.基本类型变量和引用类型变量的区别 3.认识null 三&#xff1a;数组的应用场景 1.保存数据 2.作为函数的参数 3.作为…

MFC 鼠标悬停提示框

MFC 鼠标悬停提示框 运行效果 在MFC窗口中添加一个控件 工具栏中拖拽List Box到MFC窗口给List Box添加变量 CListBox m_listbox 增加成员变量 CWnd* m_tip_parent_wnd; CToolTipCtrl m_tip;给m_listbox创建提示框 void create_tip_window(CWnd* tip_wnd, CToolTipCtrl* ti…