You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@kudu.apache.org by ab...@apache.org on 2018/12/11 21:11:37 UTC

[14/21] kudu git commit: [docs] Update docs with contributing to blog

http://git-wip-us.apache.org/repos/asf/kudu/blob/87b27857/docs/configuration.html
----------------------------------------------------------------------
diff --git a/docs/configuration.html b/docs/configuration.html
new file mode 100644
index 0000000..dea23d3
--- /dev/null
+++ b/docs/configuration.html
@@ -0,0 +1,398 @@
+---
+title: Configuring Apache Kudu
+layout: default
+active_nav: docs
+last_updated: 'Last updated 2018-10-24 23:33:04 CEST'
+---
+<!--
+
+Licensed 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="container">
+  <div class="row">
+    <div class="col-md-9">
+
+<h1>Configuring Apache Kudu</h1>
+      <div id="preamble">
+<div class="sectionbody">
+<div class="admonitionblock note">
+<table>
+<tr>
+<td class="icon">
+<i class="fa icon-note" title="Note"></i>
+</td>
+<td class="content">
+Kudu is easier to configure with <a href="http://www.cloudera.com/content/www/en-us/products/cloudera-manager.html">Cloudera Manager</a>
+than in a standalone installation. See Cloudera&#8217;s
+<a href="http://www.cloudera.com/documentation/kudu/latest/topics/kudu_installation.html">Kudu documentation</a>
+for more details about using Kudu with Cloudera Manager.
+</td>
+</tr>
+</table>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="_configure_kudu"><a class="link" href="#_configure_kudu">Configure Kudu</a></h2>
+<div class="sectionbody">
+<div class="sect2">
+<h3 id="_configuration_basics"><a class="link" href="#_configuration_basics">Configuration Basics</a></h3>
+<div class="paragraph">
+<p>To configure the behavior of each Kudu process, you can pass command-line flags when
+you start it, or read those options from configuration files by passing them using
+one or more <code>--flagfile=&lt;file&gt;</code> options. You can even include the
+<code>--flagfile</code> option within your configuration file to include other files. Learn more about gflags
+by reading <a href="https://gflags.github.io/gflags/">its documentation</a>.</p>
+</div>
+<div class="paragraph">
+<p>You can place options for masters and tablet servers into the same configuration
+file, and each will ignore options that do not apply.</p>
+</div>
+<div class="paragraph">
+<p>Flags can be prefixed with either one or two <code>-</code> characters. This
+documentation standardizes on two: <code>--example_flag</code>.</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="_discovering_configuration_options"><a class="link" href="#_discovering_configuration_options">Discovering Configuration Options</a></h3>
+<div class="paragraph">
+<p>Only the most common configuration options are documented here. For a more exhaustive
+list of configuration options, see the <a href="configuration_reference.html">Configuration Reference</a>.</p>
+</div>
+<div class="paragraph">
+<p>To see all configuration flags for a given executable, run it with the <code>--help</code> option.
+Take care when configuring undocumented flags, as not every possible
+configuration has been tested, and undocumented options are not guaranteed to be
+maintained in future releases.</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="directory_configuration"><a class="link" href="#directory_configuration">Directory Configurations</a></h3>
+<div class="paragraph">
+<p>Every Kudu node requires the specification of directory flags. The
+<code>--fs_wal_dir</code> configuration indicates where Kudu will place its write-ahead
+logs. The <code>--fs_metadata_dir</code> configuration indicates where Kudu will place
+metadata for each tablet. It is recommended, although not necessary, that these
+directories be placed on a high-performance drives with high bandwidth and low
+latency, e.g. solid-state drives. If <code>--fs_metadata_dir</code> is not specified,
+metadata will be placed in the directory specified by <code>--fs_wal_dir</code>. Since
+a Kudu node cannot tolerate the loss of its WAL or metadata directories, it
+may be wise to mirror the drives containing these directories in order to
+make recovering from a drive failure easier; however, mirroring may increase
+the latency of Kudu writes.</p>
+</div>
+<div class="paragraph">
+<p>The <code>--fs_data_dirs</code> configuration indicates where Kudu will write its data
+blocks. This is a comma-separated list of directories; if multiple values are
+specified, data will be striped across the directories. If not specified, data
+blocks will be placed in the directory specified by <code>--fs_wal_dir</code>. Note that
+while a single data directory backed by a RAID-0 array will outperform a single
+data directory backed by a single storage device, it is better to let Kudu
+manage its own striping over multiple devices rather than delegating the
+striping to a RAID-0 array.</p>
+</div>
+<div class="paragraph">
+<p>Additionally, <code>--fs_wal_dir</code> and <code>--fs_metadata_dir</code> may be the same as <em>one
+of</em> the directories listed in <code>--fs_data_dirs</code>, but must not be sub-directories
+of any of them.</p>
+</div>
+<div class="admonitionblock warning">
+<table>
+<tr>
+<td class="icon">
+<i class="fa icon-warning" title="Warning"></i>
+</td>
+<td class="content">
+Once <code>--fs_data_dirs</code> is set, extra tooling is required to change it.
+For more details, see the <a href="administration.html#change_dir_config">Kudu
+Administration docs</a>.
+</td>
+</tr>
+</table>
+</div>
+<div class="admonitionblock note">
+<table>
+<tr>
+<td class="icon">
+<i class="fa icon-note" title="Note"></i>
+</td>
+<td class="content">
+The <code>--fs_wal_dir</code> and <code>--fs_metadata_dir</code> configurations can be changed,
+provided the contents of the directories are also moved to match the flags.
+</td>
+</tr>
+</table>
+</div>
+</div>
+<div class="sect2">
+<h3 id="_configuring_the_kudu_master"><a class="link" href="#_configuring_the_kudu_master">Configuring the Kudu Master</a></h3>
+<div class="paragraph">
+<p>To see all available configuration options for the <code>kudu-master</code> executable, run it
+with the <code>--help</code> option:</p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre>$ kudu-master --help</pre>
+</div>
+</div>
+<table class="tableblock frame-all grid-all spread">
+<caption class="title">Table 1. Supported Configuration Flags for Kudu Masters</caption>
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+</colgroup>
+<thead>
+<tr>
+<th class="tableblock halign-left valign-top">Flag</th>
+<th class="tableblock halign-left valign-top">Valid Options</th>
+<th class="tableblock halign-left valign-top">Default</th>
+<th class="tableblock halign-left valign-top">Description</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>--master_addresses</code></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>localhost</code></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Comma-separated list of all the RPC
+addresses for Master consensus-configuration. If not specified, assumes a standalone Master.</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>--fs_data_dirs</code></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">List of directories where the Master will place its data blocks.</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>--fs_metadata_dir</code></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">The directory where the Master will place its tablet metadata.</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>--fs_wal_dir</code></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">The directory where the Master will place its write-ahead logs.</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>--log_dir</code></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>/tmp</code></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">The directory to store Master log files.</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>For the full list of flags for masters, see the
+<a href="configuration_reference.html#kudu-master_supported">Kudu Master Configuration Reference</a>.</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="_configuring_tablet_servers"><a class="link" href="#_configuring_tablet_servers">Configuring Tablet Servers</a></h3>
+<div class="paragraph">
+<p>To see all available configuration options for the <code>kudu-tserver</code> executable,
+run it with the <code>--help</code> option:</p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre>$ kudu-tserver --help</pre>
+</div>
+</div>
+<table class="tableblock frame-all grid-all spread">
+<caption class="title">Table 2. Supported Configuration Flags for Kudu Tablet Servers</caption>
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+</colgroup>
+<thead>
+<tr>
+<th class="tableblock halign-left valign-top">Flag</th>
+<th class="tableblock halign-left valign-top">Valid Options</th>
+<th class="tableblock halign-left valign-top">Default</th>
+<th class="tableblock halign-left valign-top">Description</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">--fs_data_dirs</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">List of directories where the Tablet Server will place its data blocks.</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">--fs_metadata_dir</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">The directory where the Tablet Server will place its tablet metadata.</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">--fs_wal_dir</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">The directory where the Tablet Server will place its write-ahead logs.</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">--log_dir</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">/tmp</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">The directory to store Tablet Server log files</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">--tserver_master_addrs</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>127.0.0.1:7051</code></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Comma separated
+addresses of the masters which the tablet server should connect to. The masters
+do not read this flag.</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">--block_cache_capacity_mb</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">integer</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">512</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Maximum amount of memory allocated to the Kudu Tablet Server&#8217;s block cache.</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">--memory_limit_hard_bytes</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">integer</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">4294967296</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Maximum amount of memory a Tablet Server can consume before it starts rejecting all incoming writes.</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>For the full list of flags for tablet servers, see the
+<a href="configuration_reference.html#kudu-tserver_supported">Kudu Tablet Server Configuration Reference</a>.</p>
+</div>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="_next_steps"><a class="link" href="#_next_steps">Next Steps</a></h2>
+<div class="sectionbody">
+<div class="ulist">
+<ul>
+<li>
+<p><a href="quickstart.html">Get Started With Kudu</a></p>
+</li>
+<li>
+<p><a href="developing.html">Developing Applications With Kudu</a></p>
+</li>
+</ul>
+</div>
+</div>
+</div>
+    </div>
+    <div class="col-md-3">
+
+  <div id="toc" data-spy="affix" data-offset-top="70">
+  <ul>
+
+      <li>
+
+          <a href="index.html">Introducing Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="release_notes.html">Kudu Release Notes</a> 
+      </li> 
+      <li>
+
+          <a href="quickstart.html">Getting Started with Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="installation.html">Installation Guide</a> 
+      </li> 
+      <li>
+<span class="active-toc">Configuring Kudu</span>
+            <ul class="sectlevel1">
+<li><a href="#_configure_kudu">Configure Kudu</a>
+<ul class="sectlevel2">
+<li><a href="#_configuration_basics">Configuration Basics</a></li>
+<li><a href="#_discovering_configuration_options">Discovering Configuration Options</a></li>
+<li><a href="#directory_configuration">Directory Configurations</a></li>
+<li><a href="#_configuring_the_kudu_master">Configuring the Kudu Master</a></li>
+<li><a href="#_configuring_tablet_servers">Configuring Tablet Servers</a></li>
+</ul>
+</li>
+<li><a href="#_next_steps">Next Steps</a></li>
+</ul> 
+      </li> 
+      <li>
+
+          <a href="kudu_impala_integration.html">Using Impala with Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="administration.html">Administering Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="troubleshooting.html">Troubleshooting Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="developing.html">Developing Applications with Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="schema_design.html">Kudu Schema Design</a> 
+      </li> 
+      <li>
+
+          <a href="scaling_guide.html">Kudu Scaling Guide</a> 
+      </li> 
+      <li>
+
+          <a href="security.html">Kudu Security</a> 
+      </li> 
+      <li>
+
+          <a href="transaction_semantics.html">Kudu Transaction Semantics</a> 
+      </li> 
+      <li>
+
+          <a href="background_tasks.html">Background Maintenance Tasks</a> 
+      </li> 
+      <li>
+
+          <a href="configuration_reference.html">Kudu Configuration Reference</a> 
+      </li> 
+      <li>
+
+          <a href="command_line_tools_reference.html">Kudu Command Line Tools Reference</a> 
+      </li> 
+      <li>
+
+          <a href="known_issues.html">Known Issues and Limitations</a> 
+      </li> 
+      <li>
+
+          <a href="contributing.html">Contributing to Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="export_control.html">Export Control Notice</a> 
+      </li> 
+  </ul>
+  </div>
+    </div>
+  </div>
+</div>
\ No newline at end of file