blob: f9b29f32fa68c32b23ed5be8f096248b70bb9024 [file] [log] [blame]
<!DOCTYPE html>
<!--[if IE 8]><html class="no-js lt-ie9" lang="en" > <![endif]-->
<!--[if gt IE 8]><!--> <html class="no-js" lang="en" > <!--<![endif]-->
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link rel="shortcut icon" href="../../img/favicon.ico">
<title>Standalone Mode - Apache Gearpump(incubating)</title>
<link href='https://fonts.googleapis.com/css?family=Lato:400,700|Roboto+Slab:400,700|Inconsolata:400,700' rel='stylesheet' type='text/css'>
<link rel="stylesheet" href="../../css/theme.css" type="text/css" />
<link rel="stylesheet" href="../../css/theme_extra.css" type="text/css" />
<link rel="stylesheet" href="../../css/highlight.css">
<script>
// Current page data
var mkdocs_page_name = "Standalone Mode";
var mkdocs_page_input_path = "deployment/deployment-standalone.md";
var mkdocs_page_url = "/deployment/deployment-standalone/index.html";
</script>
<script src="../../js/jquery-2.1.1.min.js"></script>
<script src="../../js/modernizr-2.8.3.min.js"></script>
<script type="text/javascript" src="../../js/highlight.pack.js"></script>
</head>
<body class="wy-body-for-nav" role="document">
<div class="wy-grid-for-nav">
<nav data-toggle="wy-nav-shift" class="wy-nav-side stickynav">
<div class="wy-side-nav-search">
<a href="../../index.html" class="icon icon-home"> Apache Gearpump(incubating)</a>
<div role="search">
<form id ="rtd-search-form" class="wy-form" action="../../search.html" method="get">
<input type="text" name="q" placeholder="Search docs" />
</form>
</div>
</div>
<div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="main navigation">
<ul class="current">
<li class="toctree-l1">
<a class="" href="../../index.html">Overview</a>
</li>
<li class="toctree-l1">
<span class="caption-text">Introduction</span>
<ul class="subnav">
<li class="">
<a class="" href="../../introduction/submit-your-1st-application/index.html">Submit Your 1st Application</a>
</li>
<li class="">
<a class="" href="../../introduction/commandline/index.html">Client Command Line</a>
</li>
<li class="">
<a class="" href="../../introduction/basic-concepts/index.html">Basic Concepts</a>
</li>
<li class="">
<a class="" href="../../introduction/features/index.html">Technical Highlights</a>
</li>
<li class="">
<a class="" href="../../introduction/message-delivery/index.html">Reliable Message Delivery</a>
</li>
<li class="">
<a class="" href="../../introduction/performance-report/index.html">Performance</a>
</li>
</ul>
</li>
<li class="toctree-l1">
<span class="caption-text">Deployment</span>
<ul class="subnav">
<li class="">
<a class="" href="../deployment-local/index.html">Local Mode</a>
</li>
<li class=" current">
<a class="current" href="index.html">Standalone Mode</a>
<ul class="subnav">
<li class="toctree-l3"><a href="#how-to-install">How to Install</a></li>
<li class="toctree-l3"><a href="#start-the-cluster-daemons-in-standlone-mode">Start the Cluster Daemons in Standlone mode</a></li>
<ul>
<li><a class="toctree-l4" href="#to-start-master">To start master:</a></li>
<li><a class="toctree-l4" href="#to-start-worker">To start worker:</a></li>
</ul>
<li class="toctree-l3"><a href="#start-ui">Start UI</a></li>
<li class="toctree-l3"><a href="#bash-tool-to-start-cluster">Bash tool to start cluster</a></li>
</ul>
</li>
<li class="">
<a class="" href="../deployment-yarn/index.html">YARN Mode</a>
</li>
<li class="">
<a class="" href="../deployment-docker/index.html">Docker Mode</a>
</li>
<li class="">
<a class="" href="../deployment-ui-authentication/index.html">UI Authentication</a>
</li>
<li class="">
<a class="" href="../deployment-ha/index.html">High Availability</a>
</li>
<li class="">
<a class="" href="../deployment-msg-delivery/index.html">Reliable Message Delivery</a>
</li>
<li class="">
<a class="" href="../deployment-configuration/index.html">Configuration</a>
</li>
<li class="">
<a class="" href="../deployment-resource-isolation/index.html">Resource Isolation</a>
</li>
<li class="">
<a class="" href="../deployment-security/index.html">YARN Security Guide</a>
</li>
<li class="">
<a class="" href="../get-gearpump-distribution/index.html">How to Get Your Gearpump Distribution</a>
</li>
<li class="">
<a class="" href="../hardware-requirement/index.html">Hardware Requirement</a>
</li>
</ul>
</li>
<li class="toctree-l1">
<span class="caption-text">Programming Guide</span>
<ul class="subnav">
<li class="">
<a class="" href="../../dev/dev-write-1st-app/index.html">Write Your 1st App</a>
</li>
<li class="">
<a class="" href="../../dev/dev-custom-serializer/index.html">Customized Message Passing</a>
</li>
<li class="">
<a class="" href="../../dev/dev-connectors/index.html">Gearpump Connectors</a>
</li>
<li class="">
<a class="" href="../../dev/dev-storm/index.html">Storm Compatibility</a>
</li>
<li class="">
<a class="" href="../../dev/dev-ide-setup/index.html">IDE Setup</a>
</li>
<li class="">
<a class="" href="../../dev/dev-non-streaming-example/index.html">Non Streaming Examples</a>
</li>
<li class="">
<a class="" href="../../dev/dev-rest-api/index.html">REST API</a>
</li>
<li class="">
<a class="" href="../../api/scala/index.html">Scala API</a>
</li>
<li class="">
<a class="" href="../../api/java/index.html">Java API</a>
</li>
</ul>
</li>
<li class="toctree-l1">
<span class="caption-text">Internals</span>
<ul class="subnav">
<li class="">
<a class="" href="../../internals/gearpump-internals/index.html">Gearpump Internals</a>
</li>
</ul>
</li>
</ul>
</div>
&nbsp;
</nav>
<section data-toggle="wy-nav-shift" class="wy-nav-content-wrap">
<nav class="wy-nav-top" role="navigation" aria-label="top navigation">
<i data-toggle="wy-nav-top" class="fa fa-bars"></i>
<a href="../../index.html">Apache Gearpump(incubating)</a>
</nav>
<div class="wy-nav-content">
<div class="rst-content">
<div role="navigation" aria-label="breadcrumbs navigation">
<ul class="wy-breadcrumbs">
<li><a href="../../index.html">Docs</a> &raquo;</li>
<li>Deployment &raquo;</li>
<li>Standalone Mode</li>
<li class="wy-breadcrumbs-aside">
<a href="https://github.com/apache/incubator-gearpump/edit/master/docs/contents/deployment/deployment-standalone.md"
class="icon icon-github"> Edit on GitHub</a>
</li>
</ul>
<hr/>
</div>
<div role="main">
<div class="section">
<p>Standalone mode is a distributed cluster mode. That is, Gearpump runs as service without the help from other services (e.g. YARN).</p>
<p>To deploy Gearpump in cluster mode, please first check that the <a href="../hardware-requirement">Pre-requisites</a> are met.</p>
<h3 id="how-to-install">How to Install</h3>
<p>You need to have Gearpump binary at hand. Please refer to <a href="../get-gearpump-distribution">How to get gearpump distribution</a> to get the Gearpump binary.</p>
<p>You are suggested to unzip the package to same directory path on every machine you planned to install Gearpump.
To install Gearpump, you at least need to change the configuration in <code>conf/gear.conf</code>.</p>
<table>
<thead>
<tr>
<th>Config</th>
<th>Default value</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td>gearpump.hostname</td>
<td>"127.0.0.1"</td>
<td>Host or IP address of current machine. The ip/host need to be reachable from other machines in the cluster.</td>
</tr>
<tr>
<td>gearpump.cluster.masters</td>
<td>["127.0.0.1:3000"]</td>
<td>List of all master nodes, with each item represents host and port of one master.</td>
</tr>
<tr>
<td>gearpump.worker.slots</td>
<td>1000</td>
<td>how many slots this worker has</td>
</tr>
</tbody>
</table>
<p>Besides this, there are other optional configurations related with logs, metrics, transports, ui. You can refer to <a href="../deployment-configuration">Configuration Guide</a> for more details.</p>
<h3 id="start-the-cluster-daemons-in-standlone-mode">Start the Cluster Daemons in Standlone mode</h3>
<p>In Standalone mode, you can start master and worker in different JVMs.</p>
<h5 id="to-start-master">To start master:</h5>
<pre class="codehilite"><code class="language-bash">bin/master -ip xx -port xx</code></pre>
<p>The ip and port will be checked against settings under <code>conf/gear.conf</code>, so you need to make sure they are consistent.</p>
<p><strong>NOTE:</strong> You may need to execute <code>chmod +x bin/*</code> in shell to make the script file <code>master</code> executable.</p>
<p><strong>NOTE</strong>: for high availability, please check <a href="../deployment-ha">Master HA Guide</a></p>
<h5 id="to-start-worker">To start worker:</h5>
<pre class="codehilite"><code class="language-bash">bin/worker</code></pre>
<h3 id="start-ui">Start UI</h3>
<pre class="codehilite"><code class="language-bash">bin/services</code></pre>
<p>After UI is started, you can browse to <code>http://{web_ui_host}:8090</code> to view the cluster status.
The default username and password is "admin:admin", you can check
<a href="../deployment-ui-authentication">UI Authentication</a> to find how to manage users.</p>
<p><img alt="Dashboard" src="../../img/dashboard.gif" /></p>
<p><strong>NOTE:</strong> The UI port can be configured in <code>gear.conf</code>. Check <a href="../deployment-configuration">Configuration Guide</a> for information.</p>
<h3 id="bash-tool-to-start-cluster">Bash tool to start cluster</h3>
<p>There is a bash tool <code>bin/start-cluster.sh</code> can launch the cluster conveniently. You need to change the file <code>conf/masters</code>, <code>conf/workers</code> and <code>conf/dashboard</code> to specify the corresponding machines.
Before running the bash tool, please make sure the Gearpump package is already unzipped to the same directory path on every machine.
<code>bin/stop-cluster.sh</code> is used to stop the whole cluster of course.</p>
<p>The bash tool is able to launch the cluster without changing the <code>conf/gear.conf</code> on every machine. The bash sets the <code>gearpump.cluster.masters</code> and other configurations using JAVA_OPTS.
However, please note when you log into any these unconfigured machine and try to launch the dashboard or submit the application, you still need to modify <code>conf/gear.conf</code> manually because the JAVA_OPTS is missing.</p>
</div>
</div>
<footer>
<div class="rst-footer-buttons" role="navigation" aria-label="footer navigation">
<a href="../deployment-yarn/index.html" class="btn btn-neutral float-right" title="YARN Mode">Next <span class="icon icon-circle-arrow-right"></span></a>
<a href="../deployment-local/index.html" class="btn btn-neutral" title="Local Mode"><span class="icon icon-circle-arrow-left"></span> Previous</a>
</div>
<hr/>
<div role="contentinfo">
<!-- Copyright etc -->
</div>
Built with <a href="http://www.mkdocs.org">MkDocs</a> using a <a href="https://github.com/snide/sphinx_rtd_theme">theme</a> provided by <a href="https://readthedocs.org">Read the Docs</a>.
</footer>
</div>
</div>
</section>
</div>
<div class="rst-versions" role="note" style="cursor: pointer">
<span class="rst-current-version" data-toggle="rst-current-version">
<a href="https://github.com/apache/incubator-gearpump" class="fa fa-github" style="float: left; color: #fcfcfc"> GitHub</a>
<span><a href="../deployment-local/index.html" style="color: #fcfcfc;">&laquo; Previous</a></span>
<span style="margin-left: 15px"><a href="../deployment-yarn/index.html" style="color: #fcfcfc">Next &raquo;</a></span>
</span>
</div>
<script src="../../js/theme.js"></script>
</body>
</html>