前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >0920-7.1.9-Apache Ozone命令行简介

0920-7.1.9-Apache Ozone命令行简介

作者头像
Fayson
发布2024-04-30 19:48:24
1290
发布2024-04-30 19:48:24
举报
文章被收录于专栏:Hadoop实操Hadoop实操

Ozone 是一个多协议存储系统,支持以下接口:

  • • ofs: 与 Hadoop 兼容的文件系统(Hadoop-compatible file system),允许任何需要类似 HDFS 接口的应用程序无需任何更改即可在 Ozone 上工作,比如Apache Spark、YARN 和 Hive 等框架可以直接运行在Ozone之上。
  • • s3: Amazon’s Simple Storage Service (S3) 协议,可以使用 S3 客户端和基于 S3 SDK 的应用程序直接操作Ozone。
  • • o3fs: 基于存储桶的 Hadoop 兼容文件系统接口。
  • • o3: 让Ozone shell使用的对象存储接口。

用于访问Ozone的命令行(CLI):

  • • ozone fs - 在 FSO(File System Optimized,文件系统优化)和 LEGACY 存储桶上运行 Hadoop 文件系统兼容命令。 兼容ofs和o3fs接口,支持回收站。
  • • ozone sh - Ozone命令行接口,用于将Ozone作为key-value存储访问,命令格式为:ozone sh object action url,此命令中的object可以是volume/bucket/key,兼容o3接口。

1 ozone fs

Ozone 客户端可以将 Ozone 作为文件系统和key-value存储进行访问,当 Ozone 与 HDFS 依赖项一起安装时,Ozone支持HDFS客户端命令,如hdfs dfs,如果ozone不是defaultfs,需要指定URI路径。

1.列出HDFS 中存储的文件。

代码语言:javascript
复制
ozone fs -ls /

2.列出sid ozone1的当前Ozone文件系统:

ozone1为配置的Ozone Service ID:

3.volume是Ozone 文件系统的最高级别,用于管理存储key的存储桶,可以对volume应用配额和用户权限以进行高级文件系统管理。创建名为 vol1 的volume:

代码语言:javascript
复制
ozone fs -mkdir ofs://ozone1/vol1

4.列出ozone1 文件系统以查看volume:

代码语言:javascript
复制
ozone fs -ls ofs://ozone1/

5.在vol1 中创建一个bucket,名称为bucket1,bucket用于存储文件。

代码语言:javascript
复制
ozone fs -mkdir ofs://ozone1/vol1/bucket1

6.列出卷和存储桶vol1/bucket1:

代码语言:javascript
复制
ozone fs -ls ofs://ozone1/vol1

7.OFS 模仿传统的文件系统,前两级volume和bucket看起来像目录,但是你不能使用顶级volume来存储key(文件)。当我们添加一个key(文件)时,上传的文件内容会被存储到该key名称下。key是一个混合文件名,它可以是存储在存储桶根部的文件名,也可以是带有文件名的存储桶的目录路径。需要注意的是,卷和存储桶有命名限制,并且不允许使用某些字符和大小写,但key没有这些限制。OFS必须使用/volume/bucket,即文件必须至少有两级目录,/tmp是兼容Hadoop文件系统的唯一例外。还有EC和加密是在bucket级别的。诸如这些限制,如果从HDFS迁移到Ozone,可能会有一些路径变化!

8.上传文件到bucket1:

代码语言:javascript
复制
sudo cp /var/log/cloudera-scm-agent/cloudera-scm-agent.log /tmp/cloudera-scm-agent.log
ozone fs -put /tmp/cloudera-scm-agent.log ofs://ozone1/vol1/bucket1

9.在/vo1/bucket1中查看存储为key的文件:

代码语言:javascript
复制
ozone fs -ls ofs://ozone1/vol1/bucket1

10.查看存储的key文件内容:

代码语言:javascript
复制
ozone fs -cat ofs://ozone1/vol1/bucket1/cloudera-scm-agent.log | head -10

11.当使用ozone fs 删除文件时,该文件不会立即从 Ozone 中删除。文件会被移动到隐藏的.Trash目录,用户可以在/user/<username>/.Trash/Current路径下进行访问。要绕过回收站快速释放磁盘空间,可以在加-skipTrash标志。

代码语言:javascript
复制
ozone fs -rm -r -skipTrash ofs://ozone1/vol1/bucket1/cloudera-scm-agent.log

2 ozone sh

将Ozone作为key-value存储访问。

1.创建一个volume /vol2

代码语言:javascript
复制
ozone sh volume create o3://ozone1/vol2  
### 或者 
ozone sh volume create /vol2

ozone sh volume info /vol2

2.在/vol2下创建桶bucket1

代码语言:javascript
复制
ozone sh bucket create /vol2/bucket1
ozone sh bucket info /vol2/bucket1

3.将key插入到bucket中

代码语言:javascript
复制
echo “Random text” > key1
ozone sh key put  /vol2/bucket1/key1 key1
ozone sh key info /vol2/bucket1/key1
本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2024-04-29,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 Hadoop实操 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1 ozone fs
  • 2 ozone sh
相关产品与服务
对象存储
对象存储(Cloud Object Storage,COS)是由腾讯云推出的无目录层次结构、无数据格式限制,可容纳海量数据且支持 HTTP/HTTPS 协议访问的分布式存储服务。腾讯云 COS 的存储桶空间无容量上限,无需分区管理,适用于 CDN 数据分发、数据万象处理或大数据计算与分析的数据湖等多种场景。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档