首页 > 其他分享 >Accumulo开发实战

Accumulo开发实战

时间:2024-12-26 22:42:39浏览次数:6  
标签:实战 bin Accumulo zookeeper myinstance 开发 root accumulo

Accumulo安装及其配置

环境: Ubuntu20

依赖: java11、 hadoop、 zookeeper

Accumulo是一个使用谷歌BigTable的设计思路,基于Hadoop、Zookeeper和Thrift构建的,可靠的、可伸缩的、高性能的排序分布式KV数据存储系统。这个开源项目是由美国国家安全局开发,并于2011年发布的。目前,Accumulo属于Apache的顶级项目,它具有BigTable中所没有的一些功能,例如基于单元的访问控制。

安装

安装地址

tar xfz ./accumulo.tar.gz

Accumulo基于hdfs做文件系统,zookeeper为分布式管理.

运行Accumulo前还需要hdfs和zookeeper环境

Hadoop安装

这个网上较多,可以搜索查看。

Zookeeper安装

参考教程: 如何在Ubuntu 20.04上安装Apache ZooKeeper - A5互联 - 博客园

下载地址: https://www.apache.org/dyn/closer.lua/zookeeper/zookeeper-3.6.2/apache-zookeeper-3.6.2-bin.tar.gz

拷贝到Ubuntu环境

解压:

tar zxf apache-zookeeper-3.6.2-bin.tar.gz
# 进入zookeeper

cd apache-zookeeper-3.6.2-bin
# 按照规范应该改名为 zoo.crg
cd conf/
mv zoo_sample.cfg zoo.cfg

接下来,使用以下命令将提取的目录重命名为zookeeper并移动至/opt/目录

sudo mv apache-zookeeper-3.6.2-bin /opt/zookeeper

接下来,使用以下命令更改zookeeper目录的所有权(username为你的用户名):

chown -R username:username /opt/zookeeper

在独立模式下配置ZooKeeper
接下来,您将需要创建ZooKeeper配置文件以独立模式设置ZooKeeper。您可以使用以下命令创建它:

nano /opt/zookeeper/conf/zoo.cfg

修改以下行:

tickTime=2500
dataDir=/tmp/zookeeper
clientPort=2181
maxClientCnxns=80

完成后,保存并关闭文件。然后,使用以下命令启动ZooKeeper服务:

cd /opt/zookeeper
bin/zkServer.sh start

您应该获得以下输出:

ZooKeeper JMX enabled by default
Using config: /opt/zookeeper/bin/../conf/zoo.cfg
Starting zookeeper ... STARTED

默认情况下,ZooKeeper监听端口2181。您可以使用以下命令检查它:

ss -ntpl | grep 2181

您应该获得以下输出:

LISTEN 0 50 *:2181 *:* users:(("java",pid=12749,fd=53))

启动客户端进入命令行

./bin/zkClient.sh

配置 Accumulo

已经将 Hadoop 的 NameNode 默认端口从 8020 修改为 9000,并且希望在不修改端口的情况下运行 Accumulo,你需要确保 Accumulo 配置文件中指向正确的 Hadoop NameNode 端口。以下是具体步骤:

1. 修改 Accumulo 配置文件

Accumulo所有配置全在conf文件夹.

编辑 Accumulo 的配置文件 accumulo.properties,确保其中的 Hadoop NameNode 地址和端口与你的 Hadoop 配置一致。

conf/accumulo.properties

找到并修改以下配置项:

properties

instance.volumes=hdfs://localhost:9000/accumulo

确保 instance.volumes 指向正确的 Hadoop NameNode 地址和端口。

accumulo需要基于hdfs与zookeeper,通过修改conf/accumulo-env.sh中的HADOOP_HOME 与 ZOOKEEPER_HOME地址为实际安装地址

image-20241224213927895

arball 发行版的目录中有四个脚本 用于管理 Accumulo:bin

  1. accumulo- 运行 Accumulo 命令行工具并启动 Accumulo 进程

  2. accumulo-service- 将单个 Accumulo 进程作为后台运行 服务业

  3. accumulo-cluster- 在单个节点或多个节点上管理 Accumulo 集群 节点

  4. accumulo-util- 用于构建原生库的 Accumulo 实用程序,运行 罐子等。

Accumulo 启动

启动hdfs

cd /your_hadoop_path
bash ./sbin/start-dfs.sh
# 查看是否运行成功
jps

启动 zookeeper

cd /your_zookeeper_path
./bin/zkServer.sh start

初始化实例

./accumulo init

# 输入实例名称与密码

image-20241218165155177

配置客户端参数

修改 conf/accumulo-client.properties文件中的instance.name为刚刚init的实例名称

instance.name=myinstance

运行 Accumulo

运行 Accumulo 的方法有多种:

  1. 使用命令运行 Accumulo 进程,该命令在前台运行进程,并且不会重定向 stderr/stdout。用于创建运行 Accumulo 的 init.d 脚本。accumulo
  2. 将单个 Accumulo 进程作为服务运行,该服务使用命令但对进程进行后台处理、重定向 stderr/stdout 并管理 pid 文件。如果您使用的是集群管理工具(即 Ansible、Salt 等),这将非常有用。accumulo-service``accumulo
  3. 使用 (用于运行服务) 在一个或多个节点上运行 Accumulo 集群。对于本地开发和测试,或者您没有在生产中使用自己的集群管理工具,这很有用。accumulo-cluster``accumulo-service

具体可以学习:Apache Accumulo® 用户手册 版本 1.10

启动tserver

启动tablet server

accumulo tserver

shell连接

accumulo提供了一个shell连接服务器

accumulo shell -u root
# 密码为实例创建时设置的

之后进入accumulo shell界面

image-20241224215314190

测试

我们可以在终端中建表,但我们得先运行manger server,不然建表会堵塞

我们可以通过accumulo-service来启动单个服务,其中manager为管理服务,其中后续文章介绍

image-20241224215520232

accumulo-service manager start
root@myinstance> tables
accumulo.metadata
accumulo.root

root@myinstance> createtable mytable

root@myinstance mytable>

root@myinstance mytable> tables
accumulo.metadata
accumulo.root
mytable

root@myinstance mytable> createtable testtable

root@myinstance testtable>

root@myinstance testtable> deletetable testtable
deletetable { testtable } (yes|no)? yes
Table: [testtable] has been deleted.

root@myinstance>
root@myinstance mytable> scan

root@myinstance mytable> insert row1 colf colq value1
insert successful

root@myinstance mytable> scan
row1 colf:colq [] value1

Apache Accumulo® 用户手册 版本 1.10 --- Apache Accumulo® User Manual Version 1.10

标签:实战,bin,Accumulo,zookeeper,myinstance,开发,root,accumulo
From: https://www.cnblogs.com/runtimeerror/p/18634333

相关文章

  • ssm社区人员疫情信息管理系统2f52z(程序+源码+数据库+调试部署+开发环境)
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表开题报告内容一、研究背景与意义新冠疫情的爆发对全球公共卫生体系造成了巨大冲击,社区作为疫情防控的前沿阵地,其管理效率和精准度直接关系到疫情防控的整体成效......
  • ssm趣测评二手数码产品交易平台q5t2r--(程序+源码+数据库+调试部署+开发环境)
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表开题报告内容一、项目背景随着科技的不断发展,数码产品的普及程度日益提高,但价格昂贵且使用寿命有限,导致二手数码产品市场迅速崛起。然而,二手市场存在信息不对称......
  • ssm企业信息管理系统fc7n8程序+源码+数据库+调试部署+开发环境
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表开题报告内容一、项目背景随着企业规模的扩大和业务范围的拓展,传统的人工管理模式已难以满足现代企业对高效、精确管理的需求。因此,开发一套功能全面的企业信息......
  • ssm农产品展销管理系统7nofk(程序+源码+数据库+调试部署+开发环境)
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表开题报告内容一、研究背景随着农业现代化进程的推进,农产品展销活动日益频繁,对于农产品的展示、销售、推广等管理需求愈发迫切。传统的手工管理方式存在信息更新......
  • (二)Event Recoder在嵌入式开发领域应用
    目录一、EventRecoder在嵌入式开领域的发展二、简介三、应用3.1调试与故障诊断3.1.1替代串口调试3.1.2系统运行状态监测3.1.3中间件及操作系统调试3.2性能分析与优化3.2.1代码执行时间测量3.2.2资源使用情况分析3.3系统验证与测试3.3.1功能验证3.3.2稳定性测试......
  • 硬件开发笔记(三十二):TPS54331电源设计(五):原理图BOM表导出、元器件封装核对
    前言  一个12V转5V、3.3V和4V的电源电路设计好了,下一步导出BOM表,二次核对元器件型号封装,这是可以生产前的最后一步了。 导出BOM表步骤一:打开原理图  打开项目,双击点开原理图:   步骤二:报告-元器件列表        列宽一点,板子元器件种类规......
  • 从零到一:Web机票管理系统的完整开发流程
    3系统分析当用户确定开发一款程序时,是需要遵循下面的顺序进行工作,概括为:系统分析–>系统设计–>系统开发–>系统测试,无论这个过程是否有变更或者迭代,都是按照这样的顺序开展工作的。系统分析就是分析系统需要做什么的问题,主要目的就是确定系统的功能,这也为接下来的工作做......
  • ssm人才招聘求职网站a1y7x(程序+源码+数据库+调试部署+开发环境)
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表开题报告内容一、研究背景与意义随着互联网技术的飞速发展,网络招聘已成为当前求职和招聘的主要方式之一。人才招聘求职网站作为连接企业和求职者的桥梁,具有信息......
  • ssm汽车保险管理系统03m01--(程序+源码+数据库+调试部署+开发环境)
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表开题报告内容一、项目背景随着汽车保有量的不断增加,汽车保险业务也迎来了快速增长。传统的汽车保险管理方式已经无法满足当前市场的需求,因此,开发一套汽车保险管......
  • ssm软件工程专业师生互动学习网站5z68s(程序+源码+数据库+调试部署+开发环境)
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表开题报告内容一、研究背景与意义随着信息技术的快速发展,软件工程专业的教育模式正经历深刻变革。构建一个软件工程专业师生互动学习网站,旨在打破传统教学的时空......