【Linux系统基础】(6)在Linux上大数据NoSQL数据库HBase集群部署、分布式内存计算Spark环境及Flink环境部署详细教程

在这里插入图片描述

大数据NoSQL数据库HBase集群部署

简介

HBase 是一种分布式、可扩展、支持海量数据存储的 NoSQL 数据库。

和Redis一样,HBase是一款KeyValue型存储的数据库。

不过和Redis设计方向不同

  • Redis设计为少量数据,超快检索
  • HBase设计为海量数据,快速检索

HBase在大数据领域应用十分广泛,现在我们来在node1、node2、node3上部署HBase集群。

安装

  1. HBase依赖Zookeeper、JDK、Hadoop(HDFS),请确保已经完成前面

    • 集群化软件前置准备(JDK)
    • Zookeeper
    • Hadoop
    • 这些环节的软件安装
  2. 【node1执行】下载HBase安装包

    # 下载
    wget http://archive.apache.org/dist/hbase/2.1.0/hbase-2.1.0-bin.tar.gz# 解压
    tar -zxvf hbase-2.1.0-bin.tar.gz -C /export/server# 配置软链接
    ln -s /export/server/hbase-2.1.0 /export/server/hbase
    
  3. 【node1执行】,修改配置文件,修改conf/hbase-env.sh文件

    # 在28行配置JAVA_HOME
    export JAVA_HOME=/export/server/jdk
    # 在126行配置:
    # 意思表示,不使用HBase自带的Zookeeper,而是用独立Zookeeper
    export HBASE_MANAGES_ZK=false
    # 在任意行,比如26行,添加如下内容:
    export HBASE_DISABLE_HADOOP_CLASSPATH_LOOKUP="true"
    
  4. 【node1执行】,修改配置文件,修改conf/hbase-site.xml文件

    # 将文件的全部内容替换成如下内容:
    <configuration><!-- HBase数据在HDFS中的存放的路径 --><property><name>hbase.rootdir</name><value>hdfs://node1:8020/hbase</value></property><!-- Hbase的运行模式。false是单机模式,true是分布式模式。若为false,Hbase和Zookeeper会运行在同一个JVM里面 --><property><name>hbase.cluster.distributed</name><value>true</value></property><!-- ZooKeeper的地址 --><property><name>hbase.zookeeper.quorum</name><value>node1,node2,node3</value></property><!-- ZooKeeper快照的存储位置 --><property><name>hbase.zookeeper.property.dataDir</name><value>/export/server/apache-zookeeper-3.6.0-bin/data</value></property><!--  V2.1版本,在分布式情况下, 设置为false --><property><name>hbase.unsafe.stream.capability.enforce</name><value>false</value></property>
    </configuration>
    
  5. 【node1执行】,修改配置文件,修改conf/regionservers文件

    # 填入如下内容
    node1
    node2
    node3
    
  6. 【node1执行】,分发hbase到其它机器

    scp -r /export/server/hbase-2.1.0 node2:/export/server/
    scp -r /export/server/hbase-2.1.0 node3:/export/server/
    
  7. 【node2、node3执行】,配置软链接

    ln -s /export/server/hbase-2.1.0 /export/server/hbase
    
  8. 【node1、node2、node3执行】,配置环境变量

    # 配置在/etc/profile内,追加如下两行
    export HBASE_HOME=/export/server/hbase
    export PATH=$HBASE_HOME/bin:$PATHsource /etc/profile
    
  9. 【node1执行】启动HBase

    请确保:Hadoop HDFS、Zookeeper是已经启动了的

    start-hbase.sh# 如需停止可使用
    stop-hbase.sh
    

    由于我们配置了环境变量export PATH= P A T H : PATH: PATH:HBASE_HOME/bin

    start-hbase.sh即在$HBASE_HOME/bin内,所以可以无论当前目录在哪,均可直接执行

  10. 验证HBase

    浏览器打开:http://node1:16010,即可看到HBase的WEB UI页面

  11. 简单测试使用HBase

    【node1执行】

    hbase shell# 创建表
    create 'test', 'cf'# 插入数据
    put 'test', 'rk001', 'cf:info', 'itheima'# 查询数据
    get 'test', 'rk001'# 扫描表数据
    scan 'test'
    

分布式内存计算Spark环境部署

注意

本小节的操作,基于:大数据集群(Hadoop生态)安装部署环节中所构建的Hadoop集群

如果没有Hadoop集群,请参阅前置内容,部署好环境。

简介

Spark是一款分布式内存计算引擎,可以支撑海量数据的分布式计算。

Spark在大数据体系是明星产品,作为最新一代的综合计算引擎,支持离线计算和实时计算。

在大数据领域广泛应用,是目前世界上使用最多的大数据分布式计算引擎。

我们将基于前面构建的Hadoop集群,部署Spark Standalone集群。

安装

  1. 【node1执行】下载并解压

    wget https://archive.apache.org/dist/spark/spark-2.4.5/spark-2.4.5-bin-hadoop2.7.tgz# 解压
    tar -zxvf spark-2.4.5-bin-hadoop2.7.tgz -C /export/server/# 软链接
    ln -s /export/server/spark-2.4.5-bin-hadoop2.7 /export/server/spark
    
  2. 【node1执行】修改配置文件名称

    # 改名
    cd /export/server/spark/conf
    mv spark-env.sh.template spark-env.sh
    mv slaves.template slaves
    
  3. 【node1执行】修改配置文件,spark-env.sh

    ## 设置JAVA安装目录
    JAVA_HOME=/export/server/jdk## HADOOP软件配置文件目录,读取HDFS上文件和运行YARN集群
    HADOOP_CONF_DIR=/export/server/hadoop/etc/hadoop
    YARN_CONF_DIR=/export/server/hadoop/etc/hadoop## 指定spark老大Master的IP和提交任务的通信端口
    export SPARK_MASTER_HOST=node1
    export SPARK_MASTER_PORT=7077SPARK_MASTER_WEBUI_PORT=8080
    SPARK_WORKER_CORES=1
    SPARK_WORKER_MEMORY=1g
    
  4. 【node1执行】修改配置文件,slaves

    node1
    node2
    node3
    
  5. 【node1执行】分发

    scp -r spark-2.4.5-bin-hadoop2.7 node2:$PWD
    scp -r spark-2.4.5-bin-hadoop2.7 node3:$PWD
    
  6. 【node2、node3执行】设置软链接

    ln -s /export/server/spark-2.4.5-bin-hadoop2.7 /export/server/spark
    
  7. 【node1执行】启动Spark集群

    /export/server/spark/sbin/start-all.sh# 如需停止,可以
    /export/server/spark/sbin/stop-all.sh
    
  8. 打开Spark监控页面,浏览器打开:http://node1:8081

  9. 【node1执行】提交测试任务

    /export/server/spark/bin/spark-submit --master spark://node1:7077 --class org.apache.spark.examples.SparkPi /export/server/spark/examples/jars/spark-examples_2.11-2.4.5.jar
    

分布式内存计算Flink环境部署

注意

本小节的操作,基于:大数据集群(Hadoop生态)安装部署环节中所构建的Hadoop集群

如果没有Hadoop集群,请参阅前置内容,部署好环境。

简介

Flink同Spark一样,是一款分布式内存计算引擎,可以支撑海量数据的分布式计算。

Flink在大数据体系同样是明星产品,作为最新一代的综合计算引擎,支持离线计算和实时计算。

在大数据领域广泛应用,是目前世界上除去Spark以外,应用最为广泛的分布式计算引擎。

我们将基于前面构建的Hadoop集群,部署Flink Standalone集群

Spark更加偏向于离线计算而Flink更加偏向于实时计算。

安装

  1. 【node1操作】下载安装包

    wget https://archive.apache.org/dist/flink/flink-1.10.0/flink-1.10.0-bin-scala_2.11.tgz# 解压
    tar -zxvf flink-1.10.0-bin-scala_2.11.tgz -C /export/server/# 软链接
    ln -s /export/server/flink-1.10.0 /export/server/flink
    
  2. 【node1操作】修改配置文件,conf/flink-conf.yaml

    # jobManager 的IP地址
    jobmanager.rpc.address: node1
    # JobManager 的端口号
    jobmanager.rpc.port: 6123
    # JobManager JVM heap 内存大小
    jobmanager.heap.size: 1024m
    # TaskManager JVM heap 内存大小
    taskmanager.heap.size: 1024m
    # 每个 TaskManager 提供的任务 slots 数量大小
    taskmanager.numberOfTaskSlots: 2
    #是否进行预分配内存,默认不进行预分配,这样在我们不使用flink集群时候不会占用集群资源
    taskmanager.memory.preallocate: false
    # 程序默认并行计算的个数
    parallelism.default: 1
    #JobManager的Web界面的端口(默认:8081)
    jobmanager.web.port: 8081
    
  3. 【node1操作】,修改配置文件,conf/slaves

    node1
    node2
    node3
    
  4. 【node1操作】分发Flink安装包到其它机器

    cd /export/server
    scp -r flink-1.10.0 node2:`pwd`/
    scp -r flink-1.10.0 node3:`pwd`/
    
  5. 【node2、node3操作】

    # 配置软链接
    ln -s /export/server/flink-1.10.0 /export/server/flink
    
  6. 【node1操作】,启动Flink

    /export/server/flink/bin/start-cluster.sh
    
  7. 验证Flink启动

    # 浏览器打开
    http://node1:8081
    
  8. 提交测试任务

    【node1执行】

    /export/server/flink/bin/flink run /export/server/flink-1.10.0/examples/batch/WordCount.jar
    

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

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

二叉树中的深搜

目录 &#x1f449;&#x1f3fb;计算布尔二叉树的值&#x1f449;&#x1f3fb;求根节点到叶节点数字之和 &#x1f449;&#x1f3fb;计算布尔二叉树的值 原题链接&#xff1a;计算布尔二叉树的值 mycode: class Solution { public:bool evaluateTree(TreeNode* root) {if…

为什么要出现并发?并发的三要素

大家好&#xff0c;我是"java继父"伯约&#xff0c;假如这篇对大家有帮助的话求一个赞&#xff0c;另外文章末尾放了我从小白到架构师多年的学习资料。 1.为什么需要多线程 众所周知&#xff0c;CPU、内存、I/O 设备的速度是有极大差异的&#xff0c;为了合理利用 C…

Mendelson AS2 介绍下载和配置

最近与一家国外公司做EDI对接&#xff0c;并且EDI通讯工具是基于AS2协议的。目前开源的as2的开源项目有openas2,Mendelson AS2&#xff0c;和国人写的freeas2但是&#xff0c;现在freeas2已经被从开源中国不能下载了&#xff0c;变为收费的版本了。 如果你需要使用基于AS2协议…

Windows 10中蓝牙相关的问题,至少有11种可能的解决办法

蓝牙是一种不可或缺的技术,可以将许多设备无线连接到电脑、笔记本电脑和平板电脑。当它在Windows 10计算机上停止正常工作时,可能有多种原因。要解决这些类型的蓝牙问题,有几种解决方案可以让事情恢复正常。 注意:本文中的信息适用于装有Windows 10的PC和笔记本电脑。 Wi…

Stable Diffusion系列(三):网络分类与选择

文章目录 网络分类模型基座模型衍生模型二次元模型2.5D模型写实风格模型 名称解读 VAELora嵌入文件放置界面使用 网络分类 当使用SD webui绘图时&#xff0c;为了提升绘图质量&#xff0c;可以多种网络混合使用&#xff0c;可选的网络包括了模型、VAE、超网络、Lora和嵌入。 …

亚信安慧AntDB数据库荣获“2023年度信创卓越贡献奖”

近日&#xff0c;业界知名IT垂直门户媒体IT168公布“2023技术卓越奖”获奖名单&#xff0c;亚信安慧AntDB数据库荣获“2023年度信创卓越贡献奖”。 图1&#xff1a;亚信安慧AntDB数据库荣获“2023年度信创卓越贡献奖” “技术卓越奖”评选是IT168重要的年度奖项评选&#xff0c…

spring中的方法调用重试机制

一、Retryable注解 注解方式实现重试机制比较简单&#xff0c;只需要我们在需要重试的方法上加入以下注解 Retryable(value {RemoteAccessException.class}, maxAttempts 3, backoff Backoff(delay 1000)) value&#xff1a;指定需要重试的异常类型。在这个例子中…

RHCE9学习指南 第8章 用户管理

8.1 基本概念 用户在操作系统中是非常重要的一块&#xff0c;我们登录系统&#xff0c;访问共享文件夹等都需要用户进行验证。所以&#xff0c;掌握管理用户的知识是非常有必要的。 说到用户&#xff0c;我们会提到两个名词账户信息和木马信息。 账户信息&#xff1a;我们可以…

【技术科普】CPU、GPU、TPU、NPU分别是什么?哪个最强?

技术日新月异&#xff0c;物联网、人工智能、深度学习等遍地开花&#xff0c;各类芯片名词CPU&#xff0c;GPU, TPU, NPU层出不穷…它们都是什么&#xff1f;又有着什么千丝万缕的关系和区别&#xff1f; 接下来&#xff0c;统一介绍一下&#xff1a; 01 CPU CPU最早用于计算…

管理团队的5个策略和技巧,让你的团队更高效

管理团队并非一项简单任务&#xff0c;它需要明确的策略和技巧。首先&#xff0c;要明确团队目标&#xff0c;这是所有管理动作的起点。 没有目标&#xff0c;团队就会迷失方向&#xff0c;越努力越容易偏离轨道。设定目标不仅能让团队和员工明确自己的方向&#xff0c;还能帮…

Java网络爬虫拼接姓氏,名字并写出到txt文件(实现随机取名)

目录 1.爬取百家姓1.爬取代码2.爬取效果 2.爬取名字1.筛选男生名字2.筛选女生名字 3.数据处理&#xff08;去除重复&#xff09;4.拼接数据5.将数据写出到文件中 1.爬取百家姓 目标网站&#xff0c;仅作为实验目的。 ①爬取姓氏网站&#xff1a; https://hanyu.baidu.com/shic…

CentOS7安装Java11

文章目录 Java11下载地址卸载OpenJDK查询原系统安装的 JDK根据原系统安装的 JDK 进行卸载命令修改 安装JDK生成JRE Java11下载地址 https://www.oracle.com/java/technologies/javase/jdk11-archive-downloads.html 卸载OpenJDK 查询原系统安装的 JDK java -version yum l…