
<!DOCTYPE html>

<html>

<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="Object store for Hadoop">
    <meta name="keywords" content="hadoop, ozone, hdds, objectstore, scale"/>
    <meta name="robots" content="index,follow"/>
    <meta name="language" content="en"/>

    <title>Apache Ozone</title>

    <base href="https://ozone.apache.org/">

    <link rel="canonical" href="https://hadoop.apache.org/ozone">

    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css"
          integrity="sha384-1q8mTJOASx8j1Au+a5WDVnPi2lkFfwwEAa8hDDdjZlpLegxhjVME1fgjWPGmkzs7" crossorigin="anonymous">
    <link rel="stylesheet" href="style.css">

</head>

<body>


<div class="topnav">
    <div class="container">
        <ul class="breadcrumb col-md-6">
            <li>
                <img class="asf-logo" src="asf_feather.png"/>
                <a  href="https://www.apache.org">Apache Software Foundation</span></a>
            </li>
            <li><a href="https://ozone.apache.org/">Ozone&trade;</a></li>
        </ul>
        <div class="col-md-6">
            <ul class="pull-right breadcrumb">
                <li><a href="https://www.apache.org/licenses/">License</a></li>
                <li><a href="https://www.apache.org/foundation/sponsorship.html">Sponsorship</a></li>
                <li><a href="https://www.apache.org/events/current-event">Events</a></li>
                <li><a href="https://www.apache.org/foundation/thanks.html">Thanks</a></li>
                <li><a href="https://www.apache.org/security/">Security</a></li>
        </ul>
        </div>
    </div>

    <nav class="navbar navbar-default navbar-static-top" role="navigation">
        <div class="container">
            <div class="navbar-header">
                <button type="button" class="navbar-toggle collapsed" data-toggle="collapse"
                        data-target="#ratis-menu" aria-expanded="false">
                    <span class="sr-only">Toggle navigation</span>
                    <span class="icon-bar"></span>
                    <span class="icon-bar"></span>
                    <span class="icon-bar"></span>
                </button>
            </div>

            <div id="ratis-menu" class="collapse navbar-collapse">
                <ul class="nav navbar-nav navbar-right">
                    <li><a href="faq">FAQ</a></li>
                    <li><a href="downloads">Download</a></li>
                    <li><a href="docs">Documentation</a></li>
                    <li><a href="community">Community</a></li>
                    <li><a href="https://github.com/apache/hadoop-ozone">Source</a></li>
                    <li><a href="https://cwiki.apache.org/confluence/display/HADOOP/Ozone+Contributor+Guide">Wiki</a></li>
                </ul>
            </div>

    </nav>

    <div style="max-height: 200px; overflow: hidden;">
      <img src="sunrise-ozone.jpg" style="width: 100%; left:0px;"/>
    </div>

</div>

</div>

<div class="container">
<h1>Ozone Community</h1>
<h2 id="ozone-mailing-lists">Ozone Mailing Lists</h2>
<h3 id="developers">Developers</h3>
<p>If you’d like to contribute to Ozone, please subscribe to the Ozone developer mailing list.</p>
<p>The Ozone developer mailing list is: <a href="mailto:dev@ozone.apache.org">dev@ozone.apache.org</a>.</p>
<ul>
<li><a href="mailto:dev-subscribe@ozone.apache.org">Subscribe to List</a></li>
<li><a href="mailto:dev-unsubscribe@ozone.apache.org">Unsubscribe from List</a></li>
<li><a href="https://mail-archives.apache.org/mod_mbox/ozone-dev/">Archives</a></li>
</ul>
<h3 id="commits">Commits</h3>
<p>If you’d like to see changes made in the Ozone version control system, please subscribe to the Ozone commits mailing list.</p>
<p>The Ozone commits mailing list is: <a href="mailto:commits@ozone.apache.org">commits@ozone.apache.org</a>.</p>
<ul>
<li><a href="mailto:commits-subscribe@ozone.apache.org">Subscribe to List</a></li>
<li><a href="mailto:commits-unsubscribe@ozone.apache.org">Unsubscribe from List</a></li>
<li><a href="https://mail-archives.apache.org/mod_mbox/ozone-commits/">Archives</a></li>
</ul>
<h3 id="issues">Issues</h3>
<p>If you’d like to see changes made in the Ozone issue tracking system, please subscribe to the Ozone issues mailing list.</p>
<p>The Ozone issues mailing list is: <a href="mailto:issues@ozone.apache.org">issues@ozone.apache.org</a>.</p>
<ul>
<li><a href="mailto:issues-subscribe@ozone.apache.org">Subscribe to List</a></li>
<li><a href="mailto:issues-unsubscribe@ozone.apache.org">Unsubscribe from List</a></li>
<li><a href="https://mail-archives.apache.org/mod_mbox/ozone-issues/">Archives</a></li>
</ul>
<h3 id="older-archives">Older Archives</h3>
<p>Ozone was approved as a separate Apache project in Oct. 2020, and the previous mailing list archives can be found here.</p>
<ul>
<li><a href="https://mail-archives.apache.org/mod_mbox/hadoop-ozone-dev/">Developers</a></li>
<li><a href="https://mail-archives.apache.org/mod_mbox/hadoop-ozone-commits/">Commits</a></li>
<li><a href="https://mail-archives.apache.org/mod_mbox/hadoop-ozone-issues/">Issues</a></li>
</ul>
<h2 id="ozone-slack">Ozone Slack</h2>
<p>If you would like to join the Ozone Slack Channel, please use this link to get self-invited  <a href="https://s.apache.org/slack-invite">https://s.apache.org/slack-invite</a> and join the <strong>#ozone</strong> channel.</p>
<h2 id="ozone-community-calls">Ozone Community Calls</h2>
<p>Please refer to <a href="https://cwiki.apache.org/confluence/display/HADOOP/Ozone+Community+Calls">this page</a> to get more information.</p>

</div>

<footer>
    <div class="container">

        <div class="col-md-12 trademark">
            <p>&copy; 2020 <a href="http://apache.org">The Apache Software Foundation</a>,<br/>
                Apache, Apache Hadoop, the Apache feather logo, are trademarks of The Apache Software Foundation.
            <p>
        </div>
    </div>
</footer>


<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js"
        integrity="sha384-0mSbJDEHialfmuBBQP6A4Qrprq5OVfW37PRR3j5ELqxss1yVqOtnepnHVP9aJ7xS"
        crossorigin="anonymous"></script>


</body>
</html>

