关于S3兼容的对象存储Apache Ozone的信息(随时更新)
因为巷中消息寥寥无几,所以我整理了相关信息。
Apache Ozone是什么?
Apache Ozone是一个可扩展且具有冗余性的分布式对象存储系统。
此外,Ozone还计划支持Kubernetes的CSI,并可以扩展至数十亿个不同大小的对象。
Ozone提供了Java客户端库、S3协议支持以及命令行界面,方便用户使用Ozone。
有时候,人们会将Apache Iceberg、Delta Lake和Apache Hudi等技术用作构建Data Lakehouse存储层的选择。
图书
如果有人知道,请告诉我。
建筑设计
各機能のデザインドキュメント
Apache Hadoop Ozone — オブジェクトストアのアーキテクチャー – Cloudera株式会社 公式ブログ
Architecture Overview – Documentation for Apache Ozone
Erasure Coding(EC)
Erasure Coding overview | CDP Private Cloud
[HDDS-3816] Erasure Coding in Ozone
关于尺码的相关信息
根据数据大小,提供有关每个主机规格和网络交换机的相关信息。
Ozone – RELEASE GUIDE
Reference Architectures – OZONE – Apache Software Foundation
Cloudera
Hitachi
Cisco
HPE
CLI相关
-
- Client Interfaces Command Line Interface – Documentation for Apache Ozone
-
- ボリュームを管理するためのコマンド
-
- バケットを管理するためのコマンド
- キーを管理するためのコマンド
省略表达
有时在文件中可能没有详细说明,所以…
部分内容不仅涉及到Ozone组件,还涵盖相关术语。
应用相关信息
容器平衡器
平衡DataNode之间的不均衡功能已在Ozone v1.3.0中发布。
如果Container Balancer发现有某个DN的使用率超过了平均值加上设定的平衡阈值,那么它就会开始工作。
-
- Container Balancer overview | CDP Private Cloud
- Configuring container balancer service | CDP Private Cloud
然而,在使用EC(电子商务)时,v1.3.0版本目前还不支持(预计从下一个v1.4.0版本开始支持)。
- [HDDS-8170] Let ContainerBalancer consider EC containers for balancing – ASF JIRA
关于可用性问题的处理措施
Ozone有两个元数据管理组件(OM:键空间管理、SCM:块空间管理),这两个组件都具备可用性对应功能(内部状态通过RAFT保持一致,利用了Apache Ratis)。
-
- OM High Availability
- SCM High Availability
关于实现可用性的内部机制
在写入数据时,使用以下的Multi-Raft实现。Recon的Pipeline的用户界面显示了该情况。
多重筏的设计文件
Recon管道页面的说明文章
- Pipelines page | CDP Private Cloud
监视相关 shì xi)
通过将 ozone-site.xml 文件中的 hdds.prometheus.endpoint.enabled 设置为 true,Ozone 可以在每个组件中以 Prometheus 格式输出度量。
访问各组件的HTTP Web UI端口,可以通过/prom路径获取。
默认情况下如下所示
SCM: http://scm-fqdn:9876/prom(使用ozone.scm.http-port指定的端口)
OM: http://om-fqdn:9874/prom(使用ozone.om.http-port指定的端口)
DN: http://dn-fqdn:9882/prom(使用ozone.datanode.http-port指定的端口)
Recon: http://recon-fqdn:9888/prom(使用ozone.recon.http-port指定的端口)
使用Prometheus进行监控
其他
-
- DataNode内のDisk間の偏りを調整するToolはまだ無いがIssueはある
[HDDS-5713] Add a disk balancer for datanode – ASF JIRA
DataNodeのDiskフル対策(予約領域の設定は、Ozone v1.3.0でリリース済み)
[HDDS-6577] Configurations to reserve HDDS volume space are not followed – ASF JIRA
[HDDS-6901] Configure HDDS volume reserved as percentage of the volume space – ASF JIRA
Bucketを作成する際に指定するレイアウト(FSO、OBS、LEGACY)の説明
Bucket Layout | CDP Private Cloud
相关文章和博客
パフォーマンス改善やベンチマーク
Ozone performance improvements. Author: Ritesh Shukla, Duong Nguyen… | by Ritesh H Shukla | Engineering@Cloudera | Jun, 2023 | Medium
(Ozone v1.4.0の一部を含む)CDP v7.1.9の話。毎秒約105kのリードオペレーションをサポート。CDP v7.1.8と比較して、Ozone ManagerのIOPSが約7倍増加。
Clouderaブログ
Ozoneに10億ファイル – Cloudera株式会社 公式ブログ
Apache Hadoop Ozone セキュリティ — 認証 – Cloudera株式会社 公式ブログ
Ozoneのベンチマーク: ClouderaのCDP向け次世代ストレージ – Cloudera株式会社 公式ブログ
Apache Hadoop Ozone: オブジェクトストアの概要 – Cloudera株式会社 公式ブログ
Apache Hadoop Ozone — オブジェクトストアのアーキテクチャー – Cloudera株式会社 公式ブログ
Apache Hadoop Ozone: Apache Hadoop 用のオブジェクトストアの紹介 – Cloudera株式会社 公式ブログ
Multi-Raft: Apache Hadoop Ozoneの書き込みパフォーマンスを加速する – Cloudera株式会社 公式ブログ
Apache Ozone – A Multi-Protocol Aware Storage System – Cloudera Blog
File System Optimized (FSO) と Object Store (OBS) の紹介・比較やどういったワークロードで使い分けると良いかの紹介
国内での情報
Apache Ozoneをやっていた一年 – Preferred Networks Research & Development
続・Apache Ozone をやっていた一年 – Preferred Networks Research & Development
Apache Hadoop OzoneがCSIに対応(=Kubernetesでも使える)してたのでお試してみる – やっさんメモ
幻灯片
Losing Data in a Safe Way – Advanced Replication Strategies in Apache Hadoop Ozone (Ozone自体の登場背景とかベースとなる仕組みに関して)
利用事例
PFN の研究活動を支えるストレージシステム(第 56 回 情報科学若手の会) – Speaker Deck
视频档案库 (Videó ‘àn kù)
Future of Data Meetup: Apache Ozone User Group Summit – YouTube
Apache Ozone: Multi-Protocol Aware System Handles Both Files And Objects Efficiently – YouTube
Future of Data Meetup: Apache Ozone – Breaking the 10 billion object barrier – YouTube
Apache Ozone: A High Performance Object Store For Analytics Workloads – YouTube
Apache Ozone – unofficial – YouTube
Ozone Design: Erasure Coding, high-level overview – YouTube
相关活动
Storage User Group Meetup, 2023年10月25日(水) 16:00 | Meetup
そのうち、Youtubeでもアーカイブを公開するらしい
要想建立一个亲身实践的环境,
在https://ozone.apache.org/downloads/页面上提供了Docker Compose和Kubernetes的Manifest文件。通过阅读README文件可以了解更多信息。
-
- Docker Composeの場合は、composeディレクトリ以下を参照。
compose/ozoneにあるdocker-compose.yamlが単純な構成なので手始めには分かりやすい。
HA構成のものもあるので色々見てみると参考になります。
https://github.com/apache/ozone-docker/ に代表的な構成があるのでこっちも分かりやすい
ozone-site.xmlに設定追加したい場合は、compose以下の各フォルダにdocker-configってファイルがあるのでそこに決まったフォーマットで入れるとOzone起動時にozone-site.xmlが生成されて利用される
Kubernetesの場合は、Kubernetesディレクトリ以下を参照。
https://qiita.com/taka_yayoi/items/1ebbce9b76fb923d5e21
在Cloudera Data Platform的Apache Iceberg中,通过多云的开放式数据湖实现 – 参考Cloudera官方博客上的“利用CDP公共云进行多云部署”部分的图。