摸鱼大数据——Linux搭建大数据环境(Hadoop集群的web-ui和安装Hive)四

2024-05-15 13:36

本文主要是介绍摸鱼大数据——Linux搭建大数据环境(Hadoop集群的web-ui和安装Hive)四,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

集群web-ui

一旦Hadoop集群启动并运行,可以通过web-ui进行集群查看,如下所述:

访问HDFS的NameNode主机 : http://192.168.88.101:9870/

访问YARN的ResourceManager主机 : http://192.168.88.101:8088/

注意: 想要上传文件夹需要配置本地域名映射

本地配置域名映射

如果在windows下,去访问 node1 或者是访问 node1.itcast.cn 的时候是被不到。

可以进入 C:\Windows\System32\drivers\etc 目录打开hosts文件,添加以下内容(该文件修改后若无法保存修改,可以将该文件拉到桌面上重新修改保存之后再重新放回原目录下):

192.168.88.101 node1.itcast.cn node1
192.168.88.102 node2.itcast.cn node2
192.168.88.103 node3.itcast.cn node3

配置完成后,可以直接通过node1访问

HDFS: http://node1:9870/

YARN: http://node1:8088/

查看计算任务jobhistory

jobhistory: http://node1:19888/jobhistory

安装hive软件

采用远程模式部署hive的metastore服务。在node1机器上安装。

注意:以下两件事在启动hive之前必须确保正常完成。

1、提前安装mysql,确保具有远程访问的权限

2、启动hadoop集群,确保集群正常能够访问

1.上传软件

使用CRT等客户端远程上传 apache-hive-3.1.2-bin.tar.gz 文件到/export/software目录下

2.解压软件

[root@node1 software]# cd /export/software/
[root@node1 software]# tar -zxvf apache-hive-3.1.2-bin.tar.gz -C /export/server/

3.解决Hive与Hadoop之间guava版本差异

[root@node1 software]# rm -rf /export/server/apache-hive-3.1.2-bin/lib/guava-19.0.jar
[root@node1 software]# cp /export/server/hadoop-3.3.0/share/hadoop/common/lib/guava-27.0-jre.jar /export/server/apache-hive-3.1.2-bin/lib/

4.添加环境变量

[root@node1 software]# vim /etc/profile
# 把如下内容复制到profile文件的最后,注意:记得保存并退出wq
# 小技巧 : 按G + o快速到文件末尾
export HIVE_HOME=/export/server/apache-hive-3.1.2-bin
export PATH=$PATH:$HIVE_HOME/bin:$HIVE_HOME/sbin
  • 修改完后重启生效

[root@node1 server]# source /etc/profile

5.修改配置文件

①hive-env.sh
  • 修改文件名称

    [root@node1 software]# cd /export/server/apache-hive-3.1.2-bin/conf
    [root@node1 conf]# mv hive-env.sh.template hive-env.sh
  • 打开文件写入数据

    [root@node1 conf]# vim hive-env.sh
    # 把如下内容复制到profile文件的最后,注意:记得保存并退出wq
    # 小技巧 : 按G + o快速到文件末尾
    export HADOOP_HOME=/export/server/hadoop-3.3.0
    export HIVE_CONF_DIR=/export/server/apache-hive-3.1.2-bin/conf
    export HIVE_AUX_JARS_PATH=/export/server/apache-hive-3.1.2-bin/lib
    

 

②hive-site.xml

该文件默认是没有的,需要我们自己创建

  • 打开文件写入数据

    [root@node1 conf]# vim hive-site.xml
    <configuration>
    <!-- 存储元数据mysql相关配置 -->
    <property>
    <name>javax.jdo.option.ConnectionURL</name>
    <value>jdbc:mysql://node1:3306/hive3?createDatabaseIfNotExist=true&amp;useSSL=false</value>
    </property>
    ​
    <property>
    <name>javax.jdo.option.ConnectionDriverName</name>
    <value>com.mysql.jdbc.Driver</value>
    </property>
    ​
    <property>
    <name>javax.jdo.option.ConnectionUserName</name>
    <value>root</value>
    </property>
    ​
    <property>
    <name>javax.jdo.option.ConnectionPassword</name>
    <value>123456</value>
    </property>
    ​
    ​
    ​
    <!-- H2S运行绑定host -->
    <property>
    <name>hive.server2.thrift.bind.host</name>
    <value>node1</value>
    </property>
    ​
    <!-- 远程模式部署metastore metastore地址 -->
    <property>
    <name>hive.metastore.uris</name>
    <value>thrift://node1:9083</value>
    </property>
    ​
    ​
    <!-- 关闭元数据存储授权  --> 
    <property>
    <name>hive.metastore.event.db.notification.api.auth</name>
    <value>false</value>
    </property>
    ​
    ​
    </configuration>

6.上传mysql驱动

  • 上传驱动

    上传mysql-connector-java-5.1.32.jar到 /export/software/mysql 5.7.29/ 下

  • 移动驱动

    [root@node1 conf]# cd /export/software/mysql\ 5.7.29/
    [root@node1 mysql 5.7.29]# cp mysql-connector-java-5.1.32.jar /export/server/apache-hive-3.1.2-bin/lib/

7.初始化元数据

按如下操作初始化成功后会在mysql中创建74张表

[root@node1 mysql 5.7.29]# cd /export/server/apache-hive-3.1.2-bin/
[root@node1 apache-hive-3.1.2-bin]# schematool -initSchema -dbType mysql -verbos

注意: 初始化成功会在 mysql中创建 74张表

[root@node1 apache-hive-3.1.2-bin]# mysql -uroot -p123456
mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| hive3              |
| mysql              |
| performance_schema |
| sys                |
+--------------------+
5 rows in set (0.00 sec) 

8.在hdfs创建hive存储目录

前提: 启动hdfs服务

[root@node1 apache-hive-3.1.2-bin]# hdfs dfs -mkdir /tmp
[root@node1 apache-hive-3.1.2-bin]# hadoop fs -mkdir -p /user/hive/warehouse
[root@node1 apache-hive-3.1.2-bin]# hadoop fs -chmod g+w /tmp
[root@node1 apache-hive-3.1.2-bin]# hadoop fs -chmod g+w /user/hive/warehouse

9.启动hive服务

  • 启动metastore服务

    一代客户端 : 启动metastore服务

    输入 命令: hive 可以直接进行数据库操作

    # 前台启动(一般不用)  # ctrl+c关闭
    [root@node1 apache-hive-3.1.2-bin]# hive --service metastore
    [root@node1 apache-hive-3.1.2-bin]# hive --service metastore --hiveconf hive.root.logger=DEBUG,console
    ​
    #后台启动 回车后进程挂起  关闭使用jps+ kill -9
    [root@node1 apache-hive-3.1.2-bin]# nohup hive --service metastore &
    [root@node1 apache-hive-3.1.2-bin]# hive
    ​
    # 直接输入show databases;查看表
    hive> show databases;
    # 结果OK default...说明成功
  • 启动hiveserver2服务

    二代客户端 : 启动metastore和hiveserver2服务

    输入命令: beeline 两次验证

    注意: 启动hiveserver2需要一定的时间 不要启动之后立即beeline连接 可能连接不上

    [root@node1 apache-hive-3.1.2-bin]# nohup hive --service metastore &
    [root@node1 apache-hive-3.1.2-bin]# nohup hive --service hiveserver2 &
    [root@node1 apache-hive-3.1.2-bin]# lsof -i:10000
    COMMAND   PID USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
    java    18804 root  520u  IPv6 266172      0t0  TCP *:ndmp (LISTEN)
    [root@node1 apache-hive-3.1.2-bin]# beeline
    ​
    # 先输入!connect jdbc:hive2://node1:10000连接
    beeline> !connect jdbc:hive2://node1:10000
    ​
    # 再输入用户名root,密码不用输入直接回车即可
    Enter username for jdbc:hive2://node1:10000: root
    Enter password for jdbc:hive2://node1:10000:
    ​
    # 输入show databases;查看表
    0: jdbc:hive2://node1:10000> show databases;
    # 结果OK default...说明成功

这篇关于摸鱼大数据——Linux搭建大数据环境(Hadoop集群的web-ui和安装Hive)四的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/991959

相关文章

防止Linux rm命令误操作的多场景防护方案与实践

《防止Linuxrm命令误操作的多场景防护方案与实践》在Linux系统中,rm命令是删除文件和目录的高效工具,但一旦误操作,如执行rm-rf/或rm-rf/*,极易导致系统数据灾难,本文针对不同场景... 目录引言理解 rm 命令及误操作风险rm 命令基础常见误操作案例防护方案使用 rm编程 别名及安全删除

Linux下MySQL数据库定时备份脚本与Crontab配置教学

《Linux下MySQL数据库定时备份脚本与Crontab配置教学》在生产环境中,数据库是核心资产之一,定期备份数据库可以有效防止意外数据丢失,本文将分享一份MySQL定时备份脚本,并讲解如何通过cr... 目录备份脚本详解脚本功能说明授权与可执行权限使用 Crontab 定时执行编辑 Crontab添加定

SpringBoot 多环境开发实战(从配置、管理与控制)

《SpringBoot多环境开发实战(从配置、管理与控制)》本文详解SpringBoot多环境配置,涵盖单文件YAML、多文件模式、MavenProfile分组及激活策略,通过优先级控制灵活切换环境... 目录一、多环境开发基础(单文件 YAML 版)(一)配置原理与优势(二)实操示例二、多环境开发多文件版

使用docker搭建嵌入式Linux开发环境

《使用docker搭建嵌入式Linux开发环境》本文主要介绍了使用docker搭建嵌入式Linux开发环境,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面... 目录1、前言2、安装docker3、编写容器管理脚本4、创建容器1、前言在日常开发全志、rk等不同

MyBatis-plus处理存储json数据过程

《MyBatis-plus处理存储json数据过程》文章介绍MyBatis-Plus3.4.21处理对象与集合的差异:对象可用内置Handler配合autoResultMap,集合需自定义处理器继承F... 目录1、如果是对象2、如果需要转换的是List集合总结对象和集合分两种情况处理,目前我用的MP的版本

GSON框架下将百度天气JSON数据转JavaBean

《GSON框架下将百度天气JSON数据转JavaBean》这篇文章主要为大家详细介绍了如何在GSON框架下实现将百度天气JSON数据转JavaBean,文中的示例代码讲解详细,感兴趣的小伙伴可以了解下... 目录前言一、百度天气jsON1、请求参数2、返回参数3、属性映射二、GSON属性映射实战1、类对象映

RabbitMQ 延时队列插件安装与使用示例详解(基于 Delayed Message Plugin)

《RabbitMQ延时队列插件安装与使用示例详解(基于DelayedMessagePlugin)》本文详解RabbitMQ通过安装rabbitmq_delayed_message_exchan... 目录 一、什么是 RabbitMQ 延时队列? 二、安装前准备✅ RabbitMQ 环境要求 三、安装延时队

Web服务器-Nginx-高并发问题

《Web服务器-Nginx-高并发问题》Nginx通过事件驱动、I/O多路复用和异步非阻塞技术高效处理高并发,结合动静分离和限流策略,提升性能与稳定性... 目录前言一、架构1. 原生多进程架构2. 事件驱动模型3. IO多路复用4. 异步非阻塞 I/O5. Nginx高并发配置实战二、动静分离1. 职责2

C# LiteDB处理时间序列数据的高性能解决方案

《C#LiteDB处理时间序列数据的高性能解决方案》LiteDB作为.NET生态下的轻量级嵌入式NoSQL数据库,一直是时间序列处理的优选方案,本文将为大家大家简单介绍一下LiteDB处理时间序列数... 目录为什么选择LiteDB处理时间序列数据第一章:LiteDB时间序列数据模型设计1.1 核心设计原则

linux系统上安装JDK8全过程

《linux系统上安装JDK8全过程》文章介绍安装JDK的必要性及Linux下JDK8的安装步骤,包括卸载旧版本、下载解压、配置环境变量等,强调开发需JDK,运行可选JRE,现JDK已集成JRE... 目录为什么要安装jdk?1.查看linux系统是否有自带的jdk:2.下载jdk压缩包2.解压3.配置环境