This file is indexed.

/usr/share/doc/ganeti/html/design-sync-rate-throttling.html is in ganeti-doc 2.16.0~rc2-1build1.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
  "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" lang="en">
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>DRBD Sync Rate Throttling &#8212; Ganeti 2.16.0~rc2 documentation</title>
    <link rel="stylesheet" href="_static/style.css" type="text/css" />
    <link rel="stylesheet" href="_static/pygments.css" type="text/css" />
    <script type="text/javascript">
      var DOCUMENTATION_OPTIONS = {
        URL_ROOT:    './',
        VERSION:     '2.16.0~rc2',
        COLLAPSE_INDEX: false,
        FILE_SUFFIX: '.html',
        HAS_SOURCE:  true,
        SOURCELINK_SUFFIX: '.txt'
      };
    </script>
    <script type="text/javascript" src="_static/jquery.js"></script>
    <script type="text/javascript" src="_static/underscore.js"></script>
    <script type="text/javascript" src="_static/doctools.js"></script>
    <link rel="search" title="Search" href="search.html" />
    <link rel="next" title="Network Management (revised)" href="design-network2.html" />
    <link rel="prev" title="Instance Reservations" href="design-reservations.html" /> 
  </head>
  <body>
    <div class="related" role="navigation" aria-label="related navigation">
      <h3>Navigation</h3>
      <ul>
        <li class="right" style="margin-right: 10px">
          <a href="design-network2.html" title="Network Management (revised)"
             accesskey="N">next</a></li>
        <li class="right" >
          <a href="design-reservations.html" title="Instance Reservations"
             accesskey="P">previous</a> |</li>
        <li class="nav-item nav-item-0"><a href="index.html">Ganeti 2.16.0~rc2 documentation</a> &#187;</li>
          <li class="nav-item nav-item-1"><a href="design-draft.html" accesskey="U">Design document drafts</a> &#187;</li> 
      </ul>
    </div>  

    <div class="document">
      <div class="documentwrapper">
        <div class="bodywrapper">
          <div class="body" role="main">
            
  <div class="section" id="drbd-sync-rate-throttling">
<h1>DRBD Sync Rate Throttling<a class="headerlink" href="#drbd-sync-rate-throttling" title="Permalink to this headline"></a></h1>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Created:</th><td class="field-body">2014-Sep-16</td>
</tr>
<tr class="field-even field"><th class="field-name">Status:</th><td class="field-body">Draft</td>
</tr>
</tbody>
</table>
<div class="section" id="objective">
<h2>Objective<a class="headerlink" href="#objective" title="Permalink to this headline"></a></h2>
<p>This document outlines the functionality to conveniently set rate limits for
synchronization tasks. A use-case of this is that moving instances might
otherwise clog the network for the nodes. If the replication network differs
from the network used by the instances, there would be no benefits.</p>
<p>Namely there should be two limits that can be set:</p>
<ul class="simple">
<li><cite>resync-rate</cite>: which should not be exceeded for each device. This exists
already.</li>
<li><cite>total-resync-rate</cite>: which should not be exceeded collectively for each
node.</li>
</ul>
</div>
<div class="section" id="configuration">
<h2>Configuration<a class="headerlink" href="#configuration" title="Permalink to this headline"></a></h2>
<p>Suggested command line parameters for controlling throttling are as
follows:</p>
<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">gnt</span><span class="o">-</span><span class="n">cluster</span> <span class="n">modify</span> <span class="o">-</span><span class="n">D</span> <span class="n">resync</span><span class="o">-</span><span class="n">rate</span><span class="o">=&lt;</span><span class="nb">bytes</span><span class="o">-</span><span class="n">per</span><span class="o">-</span><span class="n">second</span><span class="o">&gt;</span>
<span class="n">gnt</span><span class="o">-</span><span class="n">cluster</span> <span class="n">modify</span> <span class="o">-</span><span class="n">D</span> <span class="n">total</span><span class="o">-</span><span class="n">resync</span><span class="o">-</span><span class="n">rate</span><span class="o">=&lt;</span><span class="nb">bytes</span><span class="o">-</span><span class="n">per</span><span class="o">-</span><span class="n">second</span><span class="o">&gt;</span>
</pre></div>
</div>
<p>Where <code class="docutils literal"><span class="pre">bytes-per-second</span></code> can be in the format <code class="docutils literal"><span class="pre">&lt;N&gt;{b,k,M,G}</span></code> to set the
limit to N bytes, kilobytes, megabytes, and gigabytes respectively.</p>
</div>
<div class="section" id="semantics">
<h2>Semantics<a class="headerlink" href="#semantics" title="Permalink to this headline"></a></h2>
<p>The rate limit that is set for the drbdsetup is at least</p>
<blockquote>
<div><dl class="docutils">
<dt>rate = min(resync-rate,</dt>
<dd>total-resync-rate/number-of-syncing-devices)</dd>
</dl>
</div></blockquote>
<p>where number-of-syncing-devices is checked on beginning and end of syncs. This
is set on each node with</p>
<blockquote>
<div>drbdsetup &lt;minor&gt; disk-options –resync-rate &lt;rate&gt; –c-max-rate &lt;rate&gt;</div></blockquote>
<p>Later versions might free additional bandwidth on the source/target if the
target/source is more throttled.</p>
</div>
<div class="section" id="architecture">
<h2>Architecture<a class="headerlink" href="#architecture" title="Permalink to this headline"></a></h2>
<p>The code to adjust the sync rates is collected in a separate tool <code class="docutils literal"><span class="pre">hrates</span></code>
that</p>
<ol class="arabic simple">
<li>is run when a new sync is started or finished.</li>
<li>can be run manually if necessary.</li>
</ol>
<p>Since the rates don’t depend on the job, an unparameterized RPC
<code class="docutils literal"><span class="pre">perspective_node_run_hrates</span></code> to NodeD will trigger the execution of the
tool.</p>
<p>A first version will query ConfD for the other nodes of the group and request
the sync state for all of them.</p>
</div>
</div>


          </div>
        </div>
      </div>
      <div class="sphinxsidebar" role="navigation" aria-label="main navigation">
        <div class="sphinxsidebarwrapper">
  <h3><a href="index.html">Table Of Contents</a></h3>
  <ul>
<li><a class="reference internal" href="#">DRBD Sync Rate Throttling</a><ul>
<li><a class="reference internal" href="#objective">Objective</a></li>
<li><a class="reference internal" href="#configuration">Configuration</a></li>
<li><a class="reference internal" href="#semantics">Semantics</a></li>
<li><a class="reference internal" href="#architecture">Architecture</a></li>
</ul>
</li>
</ul>

  <h4>Previous topic</h4>
  <p class="topless"><a href="design-reservations.html"
                        title="previous chapter">Instance Reservations</a></p>
  <h4>Next topic</h4>
  <p class="topless"><a href="design-network2.html"
                        title="next chapter">Network Management (revised)</a></p>
  <div role="note" aria-label="source link">
    <h3>This Page</h3>
    <ul class="this-page-menu">
      <li><a href="_sources/design-sync-rate-throttling.rst.txt"
            rel="nofollow">Show Source</a></li>
    </ul>
   </div>
<div id="searchbox" style="display: none" role="search">
  <h3>Quick search</h3>
    <form class="search" action="search.html" method="get">
      <div><input type="text" name="q" /></div>
      <div><input type="submit" value="Go" /></div>
      <input type="hidden" name="check_keywords" value="yes" />
      <input type="hidden" name="area" value="default" />
    </form>
</div>
<script type="text/javascript">$('#searchbox').show(0);</script>
        </div>
      </div>
      <div class="clearer"></div>
    </div>
    <div class="related" role="navigation" aria-label="related navigation">
      <h3>Navigation</h3>
      <ul>
        <li class="right" style="margin-right: 10px">
          <a href="design-network2.html" title="Network Management (revised)"
             >next</a></li>
        <li class="right" >
          <a href="design-reservations.html" title="Instance Reservations"
             >previous</a> |</li>
        <li class="nav-item nav-item-0"><a href="index.html">Ganeti 2.16.0~rc2 documentation</a> &#187;</li>
          <li class="nav-item nav-item-1"><a href="design-draft.html" >Design document drafts</a> &#187;</li> 
      </ul>
    </div>
    <div class="footer" role="contentinfo">
        &#169; Copyright 2018, 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015 Google Inc..
      Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.6.7.
    </div>
  </body>
</html>