<!DOCTYPE html>
<!--[if lt IE 7]>      <html class="no-js lt-ie9 lt-ie8 lt-ie7"> <![endif]-->
<!--[if IE 7]>         <html class="no-js lt-ie9 lt-ie8"> <![endif]-->
<!--[if IE 8]>         <html class="no-js lt-ie9"> <![endif]-->
<!--[if gt IE 8]><!--> <html class="no-js"> <!--<![endif]-->
<head>
  <meta charset="utf-8">
  <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
  <meta name="viewport" content="width=device-width,initial-scale=1,maximum-scale=1"/>
  <title>Deployment for Reliable Message Delivery - Gearpump 0.7.1 Documentation</title>
  

  

  <link rel="stylesheet" href="css/bootstrap-3.3.5.min.css">
  <style>
    body {
      padding-top: 60px;
      padding-bottom: 40px;
    }
  </style>
  <link rel="stylesheet" href="css/main.css">
  <link rel="stylesheet" href="css/pygments-default.css">
  <script src="js/vendor/modernizr-2.6.1-respond-1.1.0.min.js"></script>
</head>
<body>
  <!--[if lt IE 7]>
    <p class="chromeframe">You are using an outdated browser. <a href="http://browsehappy.com/">Upgrade your browser today</a> or <a href="http://www.google.com/chromeframe/?redirect=true">install Google Chrome Frame</a> to better experience this site.</p>
  <![endif]-->

  <div class="navbar navbar-inverse navbar-fixed-top" id="topbar">
    <div class="container">
      <div class="navbar-header">
        <a class="navbar-brand" href="http://gearpump.io">Gearpump
          <span class="label label-primary" style="font-size: .6em">0.7.1</span>
        </a>
      </div>
      <div class="collapse navbar-collapse">
        <ul class="nav navbar-nav">
          <li><a href="index.html">Overview</a></li>

          <li class="dropdown">
            <a href="#" class="dropdown-toggle" data-toggle="dropdown">Introduction<b class="caret"></b></a>
            <ul class="dropdown-menu">
              <li><a href="submit-your-1st-application.html">Submit Your 1st Application</a></li>
              <li><a href="commandline.html">Client Command Line</a></li>
              <li class="divider"></li>
              <li><a href="basic-concepts.html">Basic Concepts</a></li>
              <li><a href="features.html">Technical Highlights</a></li>
              <li><a href="message-delivery.html">Reliable Message Delivery</a></li>
              <li><a href="performance-report.html">Performance</a></li>
              <li><a href="gearpump-internals.html">Gearpump Internals</a></li>
            </ul>
          </li>

          <li class="dropdown">
            <a href="#" class="dropdown-toggle" data-toggle="dropdown">Deploying<b class="caret"></b></a>
            <ul class="dropdown-menu">
              <li class="dropdown-header">Deployment</li>
              <li><a href="deployment-docker.html">Docker</a><li>
              <li><a href="deployment-local.html">Local</a><li>
              <li><a href="deployment-standalone.html">Standalone</a></li>
              <li><a href="deployment-yarn.html">YARN</a></li>
              <li class="divider"></li>
              <li><a href="deployment-ha.html">High Availability</a></li>
              <li><a href="deployment-msg-delivery.html">Reliable Message Delivery</a></li>
              <li><a href="deployment-configuration.html">Configuration</a></li>
              <li class="divider"></li>
              <li><a href="deployment-security.html">Security</a></li>
            </ul>
          </li>

          <li class="dropdown">
            <a href="#" class="dropdown-toggle" data-toggle="dropdown">Programming Guide<b class="caret"></b></a>
            <ul class="dropdown-menu">
              <li><a href="dev-write-1st-app.html">Write Your 1st App</a></li>
              <li><a href="dev-custom-serializer.html">Customized Message Passing</a></li>
              <li class="divider"></li>
              <li><a href="api/scala/index.html">Scala API</a></li>
              <li><a href="api/java/index.html">Java API</a></li>
              <li><a href="dev-rest-api.html">RESTful API</a></li>
              <li class="divider"></li>
              <li><a href="dev-connectors.html">Gearpump Connectors</a></li>
              <li class="divider"></li>
              <li><a href="dev-storm.html">Storm Compatibility</a></li>
              <!--
              <li><a href="dev-samoa.html">Samoa Compatibility</a></li>
              <li class="divider"></li>
              <li><a href="dev-iot.html">Gearpump with IoT</a></li>
              -->
            </ul>
          </li>

          <li class="dropdown">
            <a href="#" class="dropdown-toggle" data-toggle="dropdown">More<b class="caret"></b></a>
            <ul class="dropdown-menu">
              <li><a href="how-to-contribute.html">How to Contribute</a></li>
              <li><a href="coding-style.html">Coding Style</a></li>
              <li class="divider"></li>
              <li><a href="faq.html">FAQ</a><li>
              <li><a href="about.html">About</a></li>
            </ul>
          </li>
        </ul>
      </div>
    </div>
  </div>

  <div class="container" id="content">
   
    <h1 class="title">Deployment for Reliable Message Delivery</h1>
   

   <h2 id="how-to-deploy-for-at-least-once-message-delivery">How to deploy for At Least Once Message Delivery?</h2>

<p>As introduced in the <a href="message-delivery.html#what-is-at-least-once-message-delivery">What is At Least Once Message Delievery</a>, Gearpump has a built in KafkaSource. To get at least once message delivery, users should deploy a Kafka cluster as the offset store along with the Gearpump cluster.</p>

<p>Here&#8217;s an example to deploy a local Kafka cluster.</p>

<ol>
  <li>
    <p>download the latest Kafka from the official website and extract to a local directory (<code>$KAFKA_HOME</code>)</p>
  </li>
  <li>
    <p>Boot up the single-node Zookeeper instance packaged with Kafka.</p>

    <div class="highlight"><pre><code class="language-bash"><span class="nv">$KAFKA_HOME</span>/bin/zookeeper-server-start.sh <span class="nv">$KAFKA_HOME</span>/config/zookeeper.properties</code></pre></div>
  </li>
  <li>
    <p>Start a Kafka broker</p>

    <div class="highlight"><pre><code class="language-bash"><span class="nv">$KAFKA_HOME</span>/bin/kafka-server-start.sh <span class="nv">$KAFKA_HOME</span>/config/kafka.properties</code></pre></div>
  </li>
  <li>
    <p>When creating a offset store for <code>KafkaSource</code>, set the zookeeper connect string to <code>localhost:2181</code> and broker list to <code>localhost:9092</code> in <code>KafkaStorageFactory</code>.</p>

    <div class="highlight"><pre><code class="language-scala"><span class="k">val</span> <span class="n">offsetStorageFactory</span> <span class="k">=</span> <span class="k">new</span> <span class="nc">KafkaStorageFactory</span><span class="o">(</span><span class="s">&quot;localhost:2181&quot;</span><span class="o">,</span> <span class="s">&quot;localhost:9092&quot;</span><span class="o">)</span>
<span class="k">val</span> <span class="n">source</span> <span class="k">=</span> <span class="k">new</span> <span class="nc">KafkaSource</span><span class="o">(</span><span class="s">&quot;topic1&quot;</span><span class="o">,</span> <span class="s">&quot;localhost:2181&quot;</span><span class="o">,</span> <span class="n">offsetStorageFactory</span><span class="o">)</span></code></pre></div>
  </li>
</ol>

<h2 id="how-to-deploy-for-exactly-once-message-delivery">How to deploy for Exactly Once Message Delivery?</h2>

<p>Exactly Once Message Delivery requires both an offset store and a checkpoint store. For the offset store, a Kafka cluster should be deployed as in the previous section. As for the checkpoint store, Gearpump has built-in support for Hadoop file systems, like HDFS. Hence, users should deploy a HDFS cluster alongside the Gearpump cluster.</p>

<p>Here&#8217;s an example to deploy a local HDFS cluster.</p>

<ol>
  <li>
    <p>download Hadoop 2.6 from the official website and extracts it to a local directory <code>HADOOP_HOME</code></p>
  </li>
  <li>
    <p>add following configuration to <code>$HADOOP_HOME/etc/core-site.xml</code></p>

    <div class="highlight"><pre><code>&lt;configuration&gt;
  &lt;property&gt;
    &lt;name&gt;fs.defaultFS&lt;/name&gt;
    &lt;value&gt;hdfs://localhost:9000&lt;/value&gt;
  &lt;/property&gt;
&lt;/configuration&gt;
</code></pre></div>
  </li>
  <li>
    <p>start HDFS</p>

    <div class="highlight"><pre><code>$HADOOP_HOME/sbin/start-dfs.sh
</code></pre></div>
  </li>
  <li>
    <p>When creating a HadoopCheckpointStore, set the hadoop configuration as in the <code>core-site.xml</code></p>

    <div class="highlight"><pre><code class="language-scala"><span class="k">val</span> <span class="n">hadoopConfig</span> <span class="k">=</span> <span class="k">new</span> <span class="nc">Configuration</span>
<span class="n">hadoopConfig</span><span class="o">.</span><span class="n">set</span><span class="o">(</span><span class="s">&quot;fs.defaultFS&quot;</span><span class="o">,</span> <span class="s">&quot;hdfs://localhost:9000&quot;</span><span class="o">)</span>
<span class="k">val</span> <span class="n">checkpointStoreFactory</span> <span class="k">=</span> <span class="k">new</span> <span class="nc">HadoopCheckpointStoreFactory</span><span class="o">(</span><span class="s">&quot;MessageCount&quot;</span><span class="o">,</span> <span class="n">hadoopConfig</span><span class="o">,</span>
   <span class="c1">// rotate on 1KB</span>
   <span class="k">new</span> <span class="nc">FileSizeRotation</span><span class="o">(</span><span class="mi">1000</span><span class="o">))</span></code></pre></div>
  </li>
</ol>


  </div> <!-- /container -->

  <script src="js/vendor/jquery-2.1.4.min.js"></script>
  <script src="js/vendor/bootstrap-3.3.5.min.js"></script>
  <script src="js/vendor/anchor-1.1.1.min.js"></script>
  <script src="js/main.js"></script>

  <!-- MathJax Section -->
  <script type="text/x-mathjax-config">
    MathJax.Hub.Config({
      TeX: { equationNumbers: { autoNumber: "AMS" } }
    });
  </script>
  <script>
    // Note that we load MathJax this way to work with local file (file://), HTTP and HTTPS.
    // We could use "//cdn.mathjax...", but that won't support "file://".
    (function(d, script) {
      script = d.createElement('script');
      script.type = 'text/javascript';
      script.async = true;
      script.onload = function(){
        MathJax.Hub.Config({
          tex2jax: {
            inlineMath: [ ["$", "$"], ["\\\\(","\\\\)"] ],
            displayMath: [ ["$$","$$"], ["\\[", "\\]"] ],
            processEscapes: true,
            skipTags: ['script', 'noscript', 'style', 'textarea', 'pre']
          }
        });
      };
      script.src = ('https:' == document.location.protocol ? 'https://' : 'http://') +
        'cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML';
      d.getElementsByTagName('head')[0].appendChild(script);
    }(document));
  </script>
</body>
</html>
