This is an automated email from the ASF dual-hosted git repository.

github-bot pushed a commit to branch asf-site
in repository https://gitbox.apache.org/repos/asf/ozone-site.git


The following commit(s) were added to refs/heads/asf-site by this push:
     new 0cef56a1 [auto] Generated docs from Apache Ozone master 
4b1627c4bce6aacb49db52cbf0277acdc93b0e5c
0cef56a1 is described below

commit 0cef56a19f3cc4ef920c18f326bf0dfb78171c22
Author: Github Actions <[email protected]>
AuthorDate: Thu Sep 4 12:46:37 2025 +0000

    [auto] Generated docs from Apache Ozone master 
4b1627c4bce6aacb49db52cbf0277acdc93b0e5c
---
 docs/edge/design.html             |  10 +
 docs/edge/design/index.xml        |   9 +-
 docs/edge/design/listener-om.html | 678 ++++++++++++++++++++++++++++++++++++++
 docs/edge/en/sitemap.xml          |   9 +-
 docs/edge/index.xml               |   7 +
 docs/edge/interface/ofs.html      |   2 +-
 docs/edge/sitemap.xml             |   2 +-
 docs/edge/zh/interface/ofs.html   |   2 +-
 8 files changed, 712 insertions(+), 7 deletions(-)

diff --git a/docs/edge/design.html b/docs/edge/design.html
index 14488e91..acaa32d0 100644
--- a/docs/edge/design.html
+++ b/docs/edge/design.html
@@ -577,6 +577,16 @@ s=d.getElementsByTagName('script')[0];
                         </thead>
                         <tbody>
                         
+                        <tr>
+                            <td>2025-08-27</td>
+                            <td>
+                                <a 
href="https://issues.apache.org/jira/browse/HDDS-11523";>HDDS-11523</a>
+                            </td>
+                            <td><a href="./design/listener-om.html">Listener 
Ozone Manager</a></td>
+                            <td>Read-only Ozone Manager to scale out read 
performance.</td>
+                            <td>implementing</td>
+                        </tr>
+                        
                         <tr>
                             <td>2025-05-12</td>
                             <td>
diff --git a/docs/edge/design/index.xml b/docs/edge/design/index.xml
index 7ddadd08..2a7c9cc5 100644
--- a/docs/edge/design/index.xml
+++ b/docs/edge/design/index.xml
@@ -6,8 +6,15 @@
     <description>Recent content in Designs on Ozone</description>
     <generator>Hugo</generator>
     <language>en</language>
-    <lastBuildDate>Tue, 12 Aug 2025 14:24:23 -0400</lastBuildDate>
+    <lastBuildDate>Wed, 03 Sep 2025 11:34:46 -0700</lastBuildDate>
     <atom:link href="/design/index.xml" rel="self" type="application/rss+xml" 
/>
+    <item>
+      <title>Listener Ozone Manager</title>
+      <link>/design/listener-om.html</link>
+      <pubDate>Wed, 27 Aug 2025 00:00:00 +0000</pubDate>
+      <guid>/design/listener-om.html</guid>
+      <description>Read-only Ozone Manager to scale out read 
performance.</description>
+    </item>
     <item>
       <title>Full Volume Handling</title>
       <link>/design/full-volume-handling.html</link>
diff --git a/docs/edge/design/listener-om.html 
b/docs/edge/design/listener-om.html
new file mode 100644
index 00000000..400b119e
--- /dev/null
+++ b/docs/edge/design/listener-om.html
@@ -0,0 +1,678 @@
+
+
+<!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="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>An Introduction to Apache Ozone</span>
+                </a>
+            </li>
+        
+    
+        
+            <li class="">
+                <a href="../start.html">
+                    
+                    <span>Getting Started</span>
+                </a>
+                <ul class="nav">
+                    
+                        <li class="">
+                           
+                           <a 
href="../start/productiondeployment.html">Production Deployment</a>
+                           
+                        </li>
+                    
+                </ul>
+            </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">
+                                 
+                                 <span>Ozone Manager</span>
+                               </a>
+                               <ul class="nav">
+                               
+                                  <li class="">
+                                     <a 
href="../concept/volumesbucketskeys.html">Volumes, Buckets, and Keys</a>
+                                  </li>
+                               
+                               </ul>
+                           
+                        </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/ozones3gateway.html">Ozone S3 
Gateway</a>
+                           
+                        </li>
+                    
+                        <li class="">
+                           
+                           <a href="../concept/recon.html">Recon</a>
+                           
+                        </li>
+                    
+                        <li class="">
+                           
+                           <a href="../concept/networkports.html">Network 
Ports</a>
+                           
+                        </li>
+                    
+                        <li class="">
+                           
+                           <a href="../concept/comparison.html">Comparison 
with Other Storage Technologies</a>
+                           
+                        </li>
+                    
+                </ul>
+            </li>
+        
+    
+        
+            <li class="">
+                <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>
+                    
+                        <li class="">
+                           
+                           <a 
href="../feature/containerbalancer.html">Container Balancer</a>
+                           
+                        </li>
+                    
+                        <li class="">
+                           
+                           <a href="../feature/maintenance.html">Maintenance 
Mode</a>
+                           
+                        </li>
+                    
+                        <li class="">
+                           
+                           <a 
href="../feature/multi-raft-support.html">Multi-Raft Support in Ozone</a>
+                           
+                        </li>
+                    
+                        <li class="">
+                           
+                           <a href="../feature/trash.html">Trash</a>
+                           
+                        </li>
+                    
+                </ul>
+            </li>
+        
+    
+        
+            <li class="">
+                <a href="../integration.html">
+                    
+                    <span>Application Integrations</span>
+                </a>
+                <ul class="nav">
+                    
+                        <li class="">
+                           
+                           <a href="../integration/distcp.html">Hadoop 
DistCp</a>
+                           
+                        </li>
+                    
+                        <li class="">
+                           
+                           <a href="../integration/hive.html">Hive</a>
+                           
+                        </li>
+                    
+                        <li class="">
+                           
+                           <a href="../integration/impala.html">Impala</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">
+                                 
+                                 <span>S3 Protocol</span>
+                               </a>
+                               <ul class="nav">
+                               
+                                  <li class="">
+                                     <a 
href="../interface/cyberduckozones3.html">Accessing Ozone S3 via CyberDuck</a>
+                                  </li>
+                               
+                               </ul>
+                           
+                        </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/python.html">Accessing Apache 
Ozone from Python</a>
+                           
+                        </li>
+                    
+                        <li class="">
+                           
+                           <a href="../interface/csi.html">CSI Protocol</a>
+                           
+                        </li>
+                    
+                        <li class="">
+                           
+                           <a href="../interface/httpfs.html">HttpFS 
Gateway</a>
+                           
+                        </li>
+                    
+                        <li class="">
+                           
+                           <a href="../interface/native-cpp.html">Native 
C/C&#43;&#43; Client Access to Ozone</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/protect-in-transit-traffic.html">Protect In-Transit 
Traffic</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 class="">
+                
+                   <a href="../troubleshooting.html">
+                
+
+                    
+                    <span>Troubleshooting</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-9 col-sm-offset-3 col-md-10 col-md-offset-2 
main-content">
+            <div class="col-md-9">
+                <h1><a 
href="https://issues.apache.org/jira/browse/HDDS-11523";>[HDDS-11523]</a> 
Listener Ozone Manager (implementing) </h1>
+                <div><i>Authors: Janus Chow, Wei-Chiu Chuang</i><div 
class="pull-right">2025-08-27</div></div>
+                <p>&nbsp</p>
+
+                <div class="panel panel-success">
+                    <div class="panel-heading">Summary</div>
+                    <div class="panel-body">
+                        Read-only Ozone Manager to scale out read performance.
+                    </div>
+                </div>
+
+              <!--
+  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.
+-->
+<h2 id="introduction">Introduction</h2>
+<p>The Listener Ozone Manager (OM) is a read-only, non-voting member of the OM 
High Availability (HA) group. It receives all log entries from the leader and 
stays up-to-date, but it does not participate in leader election or consensus 
votes. This allows Listener OMs to serve read requests from clients, which can 
significantly improve read performance and reduce the load on the voting 
OMs.</p>
+<h2 id="why-use-listener-oms">Why use Listener OMs?</h2>
+<p>In a standard OM HA setup, all OMs are peers and participate in the Raft 
consensus protocol. This means that all OMs are involved in the write path, 
which can become a bottleneck for read-heavy workloads. By introducing Listener 
OMs, you can scale out your read performance by offloading read requests to 
these read-only OMs.</p>
+<h2 id="how-it-works">How it works</h2>
+<p>A Listener OM is a regular OM that is configured to be a listener. When an 
OM is configured as a listener, it is added to the Ratis group as a listener. 
This means that it will receive all log entries from the leader, but it will 
not participate in the leader election or consensus votes.</p>
+<p>Clients can be configured to send read requests to Listener OMs. This 
allows read requests to be served by the Listener OMs, which reduces the load 
on the voting OMs and improves read performance.</p>
+<p><strong>Note:</strong> An OM in a listener state cannot be transitioned 
into a leader or follower, whether automatically, or via the <code>ozone admin 
om transfer</code> command.</p>
+<h2 id="best-practices">Best Practices</h2>
+<ul>
+<li><strong>Recommended Cluster Topology:</strong> For a production 
environment, you can have 1 or 3 voting OMs. A setup with 2 voting OMs will not 
work as Ratis requires an odd number of voting members for quorum. You can add 
any number of Listener OMs to this cluster. For high availability, 3 voting OMs 
are recommended.</li>
+<li><strong>Deploy multiple Listener OMs for high availability:</strong> To 
ensure that your read requests can still be served in the event of a Listener 
OM failure, it is recommended to deploy multiple Listener OMs.</li>
+<li><strong>Monitor the load on your Listener OMs:</strong> It is important to 
monitor the load on your Listener OMs to ensure that they are not becoming a 
bottleneck.</li>
+<li><strong>Decommissioning a Listener OM:</strong> A Listener OM can be 
decommissioned. The process is the same as decommissioning a regular OM. Once 
the Listener OM is decommissioned, it is removed from the OM HA Ring and does 
not receive Ratis transactions.</li>
+</ul>
+<h2 id="configuration">Configuration</h2>
+<p>To configure a Listener OM, you need to perform the following steps:</p>
+<ol>
+<li>
+<p><strong>Configure <code>ozone-site.xml</code> for all OM roles:</strong> 
Add the following properties to the <code>ozone-site.xml</code> file on all OMs 
in the cluster. This includes the existing voting OMs and the new Listener 
OMs.</p>
+<div class="highlight"><pre tabindex="0" 
style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code
 class="language-xml" data-lang="xml"><span style="display:flex;"><span><span 
style="color:#f92672">&lt;property&gt;</span>
+</span></span><span style="display:flex;"><span>  <span 
style="color:#f92672">&lt;name&gt;</span>ozone.om.service.ids<span 
style="color:#f92672">&lt;/name&gt;</span>
+</span></span><span style="display:flex;"><span>  <span 
style="color:#f92672">&lt;value&gt;</span>cluster1<span 
style="color:#f92672">&lt;/value&gt;</span>
+</span></span><span style="display:flex;"><span><span 
style="color:#f92672">&lt;/property&gt;</span>
+</span></span><span style="display:flex;"><span><span 
style="color:#f92672">&lt;property&gt;</span>
+</span></span><span style="display:flex;"><span>  <span 
style="color:#f92672">&lt;name&gt;</span>ozone.om.nodes.cluster1<span 
style="color:#f92672">&lt;/name&gt;</span>
+</span></span><span style="display:flex;"><span>  <span 
style="color:#f92672">&lt;value&gt;</span>om1,om2,om3,om4,om5<span 
style="color:#f92672">&lt;/value&gt;</span>
+</span></span><span style="display:flex;"><span><span 
style="color:#f92672">&lt;/property&gt;</span>
+</span></span><span style="display:flex;"><span><span 
style="color:#f92672">&lt;property&gt;</span>
+</span></span><span style="display:flex;"><span>  <span 
style="color:#f92672">&lt;name&gt;</span>ozone.om.address.cluster1.om1<span 
style="color:#f92672">&lt;/name&gt;</span>
+</span></span><span style="display:flex;"><span>  <span 
style="color:#f92672">&lt;value&gt;</span>host1<span 
style="color:#f92672">&lt;/value&gt;</span>
+</span></span><span style="display:flex;"><span><span 
style="color:#f92672">&lt;/property&gt;</span>
+</span></span><span style="display:flex;"><span><span 
style="color:#f92672">&lt;property&gt;</span>
+</span></span><span style="display:flex;"><span>  <span 
style="color:#f92672">&lt;name&gt;</span>ozone.om.address.cluster1.om2<span 
style="color:#f92672">&lt;/name&gt;</span>
+</span></span><span style="display:flex;"><span>  <span 
style="color:#f92672">&lt;value&gt;</span>host2<span 
style="color:#f92672">&lt;/value&gt;</span>
+</span></span><span style="display:flex;"><span><span 
style="color:#f92672">&lt;/property&gt;</span>
+</span></span><span style="display:flex;"><span><span 
style="color:#f92672">&lt;property&gt;</span>
+</span></span><span style="display:flex;"><span>  <span 
style="color:#f92672">&lt;name&gt;</span>ozone.om.address.cluster1.om3<span 
style="color:#f92672">&lt;/name&gt;</span>
+</span></span><span style="display:flex;"><span>  <span 
style="color:#f92672">&lt;value&gt;</span>host3<span 
style="color:#f92672">&lt;/value&gt;</span>
+</span></span><span style="display:flex;"><span><span 
style="color:#f92672">&lt;/property&gt;</span>
+</span></span><span style="display:flex;"><span><span 
style="color:#f92672">&lt;property&gt;</span>
+</span></span><span style="display:flex;"><span>  <span 
style="color:#f92672">&lt;name&gt;</span>ozone.om.address.cluster1.om4<span 
style="color:#f92672">&lt;/name&gt;</span>
+</span></span><span style="display:flex;"><span>  <span 
style="color:#f92672">&lt;value&gt;</span>host4<span 
style="color:#f92672">&lt;/value&gt;</span>
+</span></span><span style="display:flex;"><span><span 
style="color:#f92672">&lt;/property&gt;</span>
+</span></span><span style="display:flex;"><span><span 
style="color:#f92672">&lt;property&gt;</span>
+</span></span><span style="display:flex;"><span>  <span 
style="color:#f92672">&lt;name&gt;</span>ozone.om.address.cluster1.om5<span 
style="color:#f92672">&lt;/name&gt;</span>
+</span></span><span style="display:flex;"><span>  <span 
style="color:#f92672">&lt;value&gt;</span>host5<span 
style="color:#f92672">&lt;/value&gt;</span>
+</span></span><span style="display:flex;"><span><span 
style="color:#f92672">&lt;/property&gt;</span>
+</span></span><span style="display:flex;"><span><span 
style="color:#f92672">&lt;property&gt;</span>
+</span></span><span style="display:flex;"><span>  <span 
style="color:#f92672">&lt;name&gt;</span>ozone.om.listener.nodes<span 
style="color:#f92672">&lt;/name&gt;</span>
+</span></span><span style="display:flex;"><span>  <span 
style="color:#f92672">&lt;value&gt;</span>om4,om5<span 
style="color:#f92672">&lt;/value&gt;</span>
+</span></span><span style="display:flex;"><span><span 
style="color:#f92672">&lt;/property&gt;</span>
+</span></span></code></pre></div><p>In this example, <code>om1</code>, 
<code>om2</code>, and <code>om3</code> are the voting OMs, and <code>om4</code> 
and <code>om5</code> are the Listener OMs.</p>
+</li>
+<li>
+<p><strong>Bootstrap the Listener OM:</strong> Before a new Listener OM can be 
started, it needs to be bootstrapped. This is the same process as bootstrapping 
a regular OM. For more details, please refer to the <a 
href="../feature/om-ha.html#om-bootstrap">OM High Availability</a> 
documentation.</p>
+</li>
+</ol>
+<h2 id="consistency-guarantees">Consistency Guarantees</h2>
+<p>Listener OMs provide eventual consistency for read operations. This means 
that there may be a short delay before the latest data is available on the 
Listener OMs. However, for most read-heavy workloads, this delay is 
acceptable.</p>
+<h2 id="references">References</h2>
+<ul>
+<li><a href="../feature/om-ha.html">Ozone Manager High Availability</a></li>
+</ul>
+
+            </div>
+
+        </div>
+      </div>
+    </div>
+
+
+
+<footer class="footer">
+  <div class="container">
+    <span class="small text-muted">
+      Version: 2.1.0-SNAPSHOT, Last Modified: September 3, 2025 <a 
class="hide-child link primary-color" 
href="https://github.com/apache/ozone/commit/4b1627c4bce6aacb49db52cbf0277acdc93b0e5c";>4b1627c4bc</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>
diff --git a/docs/edge/en/sitemap.xml b/docs/edge/en/sitemap.xml
index fe268710..23a2488c 100644
--- a/docs/edge/en/sitemap.xml
+++ b/docs/edge/en/sitemap.xml
@@ -706,6 +706,12 @@
                 hreflang="en"
                 href="/start/fromsource.html"
                 />
+  </url><url>
+    <loc>/design.html</loc>
+    <lastmod>2025-09-03T11:34:46-07:00</lastmod>
+  </url><url>
+    <loc>/design/listener-om.html</loc>
+    <lastmod>2025-09-03T11:34:46-07:00</lastmod>
   </url><url>
     <loc>/feature/om-bootstrapping-with-snapshots.html</loc>
     <lastmod>2025-08-09T02:25:09+05:30</lastmod>
@@ -718,9 +724,6 @@
   </url><url>
     <loc>/concept/volumesbucketskeys.html</loc>
     <lastmod>2025-07-05T08:18:07-07:00</lastmod>
-  </url><url>
-    <loc>/design.html</loc>
-    <lastmod>2025-08-12T14:24:23-04:00</lastmod>
   </url><url>
     <loc>/design/full-volume-handling.html</loc>
     <lastmod>2025-07-07T11:24:38+05:30</lastmod>
diff --git a/docs/edge/index.xml b/docs/edge/index.xml
index a4c2e89f..f6117978 100644
--- a/docs/edge/index.xml
+++ b/docs/edge/index.xml
@@ -483,6 +483,13 @@
       <guid>/start/fromsource.html</guid>
       <description>&lt;!---&#xA;  Licensed to the Apache Software Foundation 
(ASF) under one or more&#xA;  contributor license agreements.  See the NOTICE 
file distributed with&#xA;  this work for additional information regarding 
copyright ownership.&#xA;  The ASF licenses this file to You under the Apache 
License, Version 2.0&#xA;  (the &#34;License&#34;); you may not use this file 
except in compliance with&#xA;  the License.  You may obtain a copy of the 
License at&#xA;&#xA;      http: [...]
     </item>
+    <item>
+      <title>Listener Ozone Manager</title>
+      <link>/design/listener-om.html</link>
+      <pubDate>Wed, 27 Aug 2025 00:00:00 +0000</pubDate>
+      <guid>/design/listener-om.html</guid>
+      <description>Read-only Ozone Manager to scale out read 
performance.</description>
+    </item>
     <item>
       <title>OM Bootstrapping with Snapshots</title>
       <link>/feature/om-bootstrapping-with-snapshots.html</link>
diff --git a/docs/edge/interface/ofs.html b/docs/edge/interface/ofs.html
index c467882f..bb6f0dd1 100644
--- a/docs/edge/interface/ofs.html
+++ b/docs/edge/interface/ofs.html
@@ -654,7 +654,7 @@ For example:</p>
 <p>Or use the put command to write a file to the bucket.</p>
 <div class="highlight"><pre tabindex="0" 
style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code
 class="language-bash" data-lang="bash"><span style="display:flex;"><span>hdfs 
dfs -put /etc/hosts /volume1/bucket1/test</span></span></code></pre></div>
 <p>For more usage, see: <a 
href="https://issues.apache.org/jira/secure/attachment/12987636/Design%20ofs%20v1.pdf";>https://issues.apache.org/jira/secure/attachment/12987636/Design%20ofs%20v1.pdf</a></p>
-<h2 id="differences-from-o3fshahahugoshortcode112s5hbhb">Differences from <a 
href="../interface/o3fs.html">o3fs</a></h2>
+<h2 id="differences-from-o3fshahahugoshortcode111s5hbhb">Differences from <a 
href="../interface/o3fs.html">o3fs</a></h2>
 <h3 id="creating-files">Creating files</h3>
 <p>OFS doesn&rsquo;t allow creating keys(files) directly under root or volumes.
 Users will receive an error message when they try to do that:</p>
diff --git a/docs/edge/sitemap.xml b/docs/edge/sitemap.xml
index 5ce29858..de29854c 100644
--- a/docs/edge/sitemap.xml
+++ b/docs/edge/sitemap.xml
@@ -4,7 +4,7 @@
   <sitemap>
     <loc>/en/sitemap.xml</loc>
     
-      <lastmod>2025-09-03T00:34:09-04:00</lastmod>
+      <lastmod>2025-09-03T11:34:46-07:00</lastmod>
     
   </sitemap>
   
diff --git a/docs/edge/zh/interface/ofs.html b/docs/edge/zh/interface/ofs.html
index e953c143..ae89f8e1 100644
--- a/docs/edge/zh/interface/ofs.html
+++ b/docs/edge/zh/interface/ofs.html
@@ -484,7 +484,7 @@ ofs://omservice/tmp/key1
 <p>或者使用 put 命令向桶中写入一个文件</p>
 <div class="highlight"><pre tabindex="0" 
style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code
 class="language-bash" data-lang="bash"><span style="display:flex;"><span>hdfs 
dfs -put /etc/hosts /volume1/bucket1/test</span></span></code></pre></div>
 <p>有关更多用法,请参见: <a 
href="https://issues.apache.org/jira/secure/attachment/12987636/Design%20ofs%20v1.pdf";>https://issues.apache.org/jira/secure/attachment/12987636/Design%20ofs%20v1.pdf</a></p>
-<h2 id="与-o3fshahahugoshortcode111s5hbhb-的区别">与 <a 
href="../../zh/interface/o3fs.html">o3fs</a> 的区别</h2>
+<h2 id="与-o3fshahahugoshortcode110s5hbhb-的区别">与 <a 
href="../../zh/interface/o3fs.html">o3fs</a> 的区别</h2>
 <h3 id="创建文件">创建文件</h3>
 <p>OFS 不允许直接在根目录或卷下创建键(文件)。
 当用户尝试这样做时,他们将收到一个错误消息:</p>


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]


Reply via email to