blob: 1f670c45995d5fab7bf577ea7f2266c2640a2fc2 [file] [log] [blame]
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta name="description" content="Apache Ozone Documentation">
<title>Documentation for Apache Ozone</title>
<link href="./css/bootstrap.min.css" rel="stylesheet">
<link href="./css/ozonedoc.css" rel="stylesheet">
<link href="./swagger-resources/swagger-ui.css" rel="stylesheet">
<script>
var _paq = window._paq = window._paq || [];
_paq.push(['disableCookies']);
_paq.push(['trackPageView']);
_paq.push(['enableLinkTracking']);
(function() {
var u="//analytics.apache.org/";
_paq.push(['setTrackerUrl', u+'matomo.php']);
_paq.push(['setSiteId', '34']);
var d=document, g=d.createElement('script'),
s=d.getElementsByTagName('script')[0];
g.async=true; g.src=u+'matomo.js'; s.parentNode.insertBefore(g,s);
})();
</script>
</head>
<body>
<nav class="navbar navbar-inverse navbar-fixed-top">
<div class="container-fluid">
<div class="navbar-header">
<button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#sidebar" aria-expanded="false" aria-controls="navbar">
<span class="sr-only">Toggle navigation</span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
<a href="./index.html" class="navbar-left ozone-logo">
<img src="./ozone-logo-small.png"/>
</a>
<a class="navbar-brand hidden-xs" href="./index.html">
Apache Ozone/HDDS Documentation
</a>
<a class="navbar-brand visible-xs-inline" href="#">Apache Ozone</a>
</div>
<div id="navbar" class="navbar-collapse collapse">
<ul class="nav navbar-nav navbar-right">
<li><a href="https://github.com/apache/ozone">Source</a></li>
<li><a href="https://ozone.apache.org">Apache Ozone</a></li>
<li><a href="https://apache.org">ASF</a></li>
</ul>
</div>
</div>
</nav>
<div class="wrapper">
<div class="container-fluid">
<div class="row">
<div class="col-sm-2 col-md-2 sidebar" id="sidebar">
<ul class="nav nav-sidebar">
<li class="">
<a href="./index.html">
<span>Overview</span>
</a>
</li>
<li class="">
<a href="./start.html">
<span>Getting Started</span>
</a>
</li>
<li class="">
<a href="./concept.html">
<span>Architecture</span>
</a>
<ul class="nav">
<li class="">
<a href="./concept/overview.html">Overview</a>
</li>
<li class="">
<a href="./concept/ozonemanager.html">Ozone Manager</a>
</li>
<li class="">
<a href="./concept/storagecontainermanager.html">Storage Container Manager</a>
</li>
<li class="">
<a href="./concept/containers.html">Containers</a>
</li>
<li class="">
<a href="./concept/datanodes.html">Datanodes</a>
</li>
<li class="">
<a href="./concept/recon.html">Recon</a>
</li>
</ul>
</li>
<li class="active">
<a href="./feature.html">
<span>Features</span>
</a>
<ul class="nav">
<li class="">
<a href="./feature/decommission.html">Decommissioning</a>
</li>
<li class="">
<a href="./feature/om-ha.html">OM High Availability</a>
</li>
<li class="">
<a href="./feature/erasurecoding.html">Ozone Erasure Coding</a>
</li>
<li class="">
<a href="./feature/snapshot.html">Ozone Snapshot</a>
</li>
<li class="">
<a href="./feature/scm-ha.html">SCM High Availability</a>
</li>
<li class="">
<a href="./feature/streaming-write-pipeline.html">Streaming Write Pipeline</a>
</li>
<li class="">
<a href="./feature/dn-merge-rocksdb.html">Merge Container RocksDB in DN</a>
</li>
<li class="">
<a href="./feature/prefixfso.html">Prefix based File System Optimization</a>
</li>
<li class="">
<a href="./feature/topology.html">Topology awareness</a>
</li>
<li class="">
<a href="./feature/quota.html">Quota in Ozone</a>
</li>
<li class="">
<a href="./feature/recon.html">Recon Server</a>
</li>
<li class="">
<a href="./feature/observability.html">Observability</a>
</li>
<li class="">
<a href="./feature/nonrolling-upgrade.html">Non-Rolling Upgrades and Downgrades</a>
</li>
<li class="">
<a href="./feature/s3-multi-tenancy.html">
<span>S3 Multi-Tenancy</span>
</a>
<ul class="nav">
<li class="">
<a href="./feature/s3-multi-tenancy-setup.html">Setup</a>
</li>
<li class="">
<a href="./feature/s3-tenant-commands.html">Tenant commands</a>
</li>
<li class="">
<a href="./feature/s3-multi-tenancy-access-control.html">Access Control</a>
</li>
</ul>
</li>
<li class="">
<a href="./feature/reconfigurability.html">Reconfigurability</a>
</li>
</ul>
</li>
<li class="">
<a href="./interface.html">
<span>Client Interfaces</span>
</a>
<ul class="nav">
<li class="">
<a href="./interface/ofs.html">Ofs (Hadoop compatible)</a>
</li>
<li class="">
<a href="./interface/o3fs.html">O3fs (Hadoop compatible)</a>
</li>
<li class="">
<a href="./interface/s3.html">S3 Protocol</a>
</li>
<li class="">
<a href="./interface/cli.html">Command Line Interface</a>
</li>
<li class="">
<a href="./interface/reconapi.html">Recon API</a>
</li>
<li class="">
<a href="./interface/javaapi.html">Java API</a>
</li>
<li class="">
<a href="./interface/csi.html">CSI Protocol</a>
</li>
<li class="">
<a href="./interface/httpfs.html">HttpFS Gateway</a>
</li>
</ul>
</li>
<li class="">
<a href="./security.html">
<span>Security</span>
</a>
<ul class="nav">
<li class="">
<a href="./security/secureozone.html">Securing Ozone</a>
</li>
<li class="">
<a href="./security/securingtde.html">Transparent Data Encryption</a>
</li>
<li class="">
<a href="./security/gdpr.html">GDPR in Ozone</a>
</li>
<li class="">
<a href="./security/securingdatanodes.html">Securing Datanodes</a>
</li>
<li class="">
<a href="./security/securingozonehttp.html">Securing HTTP</a>
</li>
<li class="">
<a href="./security/securings3.html">Securing S3</a>
</li>
<li class="">
<a href="./security/securityacls.html">Ozone ACLs</a>
</li>
<li class="">
<a href="./security/securitywithranger.html">Apache Ranger</a>
</li>
</ul>
</li>
<li class="">
<a href="./tools.html">
<span>Tools</span>
</a>
</li>
<li class="">
<a href="./recipe.html">
<span>Recipes</span>
</a>
</li>
<li><a href="./design.html"><span><b>Design docs</b></span></a></li>
<li class="visible-xs"><a href="#">References</a>
<ul class="nav">
<li><a href="https://github.com/apache/ozone"><span class="glyphicon glyphicon-new-window" aria-hidden="true"></span> Source</a></li>
<li><a href="https://ozone.apache.org"><span class="glyphicon glyphicon-new-window" aria-hidden="true"></span> Apache Ozone</a></li>
<li><a href="https://apache.org"><span class="glyphicon glyphicon-new-window" aria-hidden="true"></span> ASF</a></li>
</ul></li>
</ul>
</div>
<div class="col-sm-10 col-sm-offset-2 col-md-10 col-md-offset-2 main-content">
<div class="col-md-9">
<div class="pull-right">
<a href="./zh/feature.html"><span class="label label-success">中文</span></a>
</div>
<h1>Features</h1>
</div>
<div class="col-md-9">
<!---
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
this work for additional information regarding copyright ownership.
The ASF licenses this file to You under the Apache License, Version 2.0
(the "License"); you may not use this file except in compliance with
the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<div class="jumbotron jumbotron-fluid">
<div class="container">
<h3 class="display-4">Ozone Features </h3>
<p class="lead">
Ozone features are explained in the following pages. Features such as high availability, topology awareness, metrics tools are detailed in next pages.
</p>
</div>
</div>
<div class="row">
<div class="col-sm-6">
<div class="card">
<div class="card-body">
<h2 class="card-title">
Decommissioning
</h2>
<p class="card-text">Decommissioning of SCM, OM and Datanode.</p>
<a href="./feature/decommission.html"
class=" btn btn-primary btn-lg">Decommissioning</a>
</div>
</div>
</div>
<div class="col-sm-6">
<div class="card">
<div class="card-body">
<h2 class="card-title">
OM High Availability
</h2>
<p class="card-text">HA setup for Ozone Manager to avoid any single point of failure.</p>
<a href="./feature/om-ha.html"
class=" btn btn-primary btn-lg">OM High Availability</a>
</div>
</div>
</div>
</div>
<div class="row">
<div class="col-sm-6">
<div class="card">
<div class="card-body">
<h2 class="card-title">
Ozone Erasure Coding
</h2>
<p class="card-text">Erasure Coding Support for Ozone.</p>
<a href="./feature/erasurecoding.html"
class=" btn btn-primary btn-lg">Ozone Erasure Coding</a>
</div>
</div>
</div>
<div class="col-sm-6">
<div class="card">
<div class="card-body">
<h2 class="card-title">
Ozone Snapshot
</h2>
<p class="card-text">Ozone Snapshot</p>
<a href="./feature/snapshot.html"
class=" btn btn-primary btn-lg">Ozone Snapshot</a>
</div>
</div>
</div>
</div>
<div class="row">
<div class="col-sm-6">
<div class="card">
<div class="card-body">
<h2 class="card-title">
SCM High Availability
</h2>
<p class="card-text">HA setup for Storage Container Manager to avoid any single point of failure.</p>
<a href="./feature/scm-ha.html"
class=" btn btn-primary btn-lg">SCM High Availability</a>
</div>
</div>
</div>
<div class="col-sm-6">
<div class="card">
<div class="card-body">
<h2 class="card-title">
Streaming Write Pipeline
</h2>
<p class="card-text">A new write pipeline using Ratis Streaming.</p>
<a href="./feature/streaming-write-pipeline.html"
class=" btn btn-primary btn-lg">Streaming Write Pipeline</a>
</div>
</div>
</div>
</div>
<div class="row">
<div class="col-sm-6">
<div class="card">
<div class="card-body">
<h2 class="card-title">
Merge Container RocksDB in DN
</h2>
<p class="card-text">Introduction to Ozone Datanode Container Schema V3</p>
<a href="./feature/dn-merge-rocksdb.html"
class=" btn btn-primary btn-lg">Merge Container RocksDB in DN</a>
</div>
</div>
</div>
<div class="col-sm-6">
<div class="card">
<div class="card-body">
<h2 class="card-title">
Prefix based File System Optimization
</h2>
<p class="card-text">Supports atomic rename and delete operation.</p>
<a href="./feature/prefixfso.html"
class=" btn btn-primary btn-lg">Prefix based File System Optimization</a>
</div>
</div>
</div>
</div>
<div class="row">
<div class="col-sm-6">
<div class="card">
<div class="card-body">
<h2 class="card-title">
Topology awareness
</h2>
<p class="card-text">Configuration for rack-awarness for improved read/write</p>
<a href="./feature/topology.html"
class=" btn btn-primary btn-lg">Topology awareness</a>
</div>
</div>
</div>
<div class="col-sm-6">
<div class="card">
<div class="card-body">
<h2 class="card-title">
<span class="glyphicon glyphicon-user"
aria-hidden="true"></span>
Quota in Ozone
</h2>
<p class="card-text">Introduction to Ozone Quota</p>
<a href="./feature/quota.html"
class=" btn btn-primary btn-lg">Quota in Ozone</a>
</div>
</div>
</div>
</div>
<div class="row">
<div class="col-sm-6">
<div class="card">
<div class="card-body">
<h2 class="card-title">
Recon Server
</h2>
<p class="card-text">Recon is the Web UI and analysis service for Ozone</p>
<a href="./feature/recon.html"
class=" btn btn-primary btn-lg">Recon Server</a>
</div>
</div>
</div>
<div class="col-sm-6">
<div class="card">
<div class="card-body">
<h2 class="card-title">
Observability
</h2>
<p class="card-text">Different tools for Ozone to increase Observability</p>
<a href="./feature/observability.html"
class=" btn btn-primary btn-lg">Observability</a>
</div>
</div>
</div>
</div>
<div class="row">
<div class="col-sm-6">
<div class="card">
<div class="card-body">
<h2 class="card-title">
Non-Rolling Upgrades and Downgrades
</h2>
<p class="card-text">How to do non-rolling upgrades and downgrades of Ozone</p>
<a href="./feature/nonrolling-upgrade.html"
class=" btn btn-primary btn-lg">Non-Rolling Upgrades and Downgrades</a>
</div>
</div>
</div>
<div class="col-sm-6">
<div class="card">
<div class="card-body">
<h2 class="card-title">
S3 Multi-Tenancy
</h2>
<p class="card-text">Ozone Multi-Tenancy that allows multiple tenants to share the same Ozone cluster. Compatible with S3 API.</p>
<a href="./feature/s3-multi-tenancy.html"
class=" btn btn-primary btn-lg">S3 Multi-Tenancy</a>
</div>
</div>
</div>
</div>
<div class="row">
<div class="col-sm-6">
<div class="card">
<div class="card-body">
<h2 class="card-title">
Reconfigurability
</h2>
<p class="card-text">Dynamic reloading configuration.</p>
<a href="./feature/reconfigurability.html"
class=" btn btn-primary btn-lg">Reconfigurability</a>
</div>
</div>
</div>
<div class="col-sm-6">
<div class="card">
<div class="card-body">
<h2 class="card-title">
</h2>
<p class="card-text">FairCallQueue This document contains information for setting up the FairCallQueue feature with Ozone. In order for FairCallQueue to be enabled and used, Hadoop RPC must be used as transport protocol for OM - S3G communication. There is no implementation for gRPC yet.
There is a custom IdentityProvider implementation for Ozone that must be specified in the configuration, otherwise there is no S3G impersonation which makes the FairCallQueue ineffective since it&rsquo;s only reading one user, the S3G special user instead of the S3G client user.</p>
<a href="./feature/faircallqueue.html"
class=" btn btn-primary btn-lg"></a>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="push"></div>
</div>
<footer class="footer">
<div class="container">
<span class="small text-muted">
Version: 1.5.0-SNAPSHOT, Last Modified: February 27, 2024 <a class="hide-child link primary-color" href="https://github.com/apache/ozone/commit/7939faf7d6c904bf1e4ad32baa5d6d0c1de19003">7939faf</a>
</span>
</div>
</footer>
<script src="./js/jquery-3.5.1.min.js"></script>
<script src="./js/ozonedoc.js"></script>
<script src="./js/bootstrap.min.js"></script>
</body>
</html>