<!doctype html>
<!--
  Minimal Mistakes Jekyll Theme 4.4.1 by Michael Rose
  Copyright 2017 Michael Rose - mademistakes.com | @mmistakes
  Free for personal and commercial use under the MIT license
  https://github.com/mmistakes/minimal-mistakes/blob/master/LICENSE.txt
-->
<html lang="en" class="no-js">
  <head>
    <meta charset="utf-8">

<!-- begin SEO -->









<title>Syncer Quick Start - Apache ServiceComb</title>




<meta name="description" content="Learn how to use differ-structure, multi-service center synchronization tool">




<meta name="author" content="">

<meta property="og:locale" content="en">
<meta property="og:site_name" content="Apache ServiceComb">
<meta property="og:title" content="Syncer Quick Start">


  <link rel="canonical" href="https://github.com/pages/apache/incubator-servicecomb-website/docs/products/syncer/quick-start/">
  <meta property="og:url" content="https://github.com/pages/apache/incubator-servicecomb-website/docs/products/syncer/quick-start/">



  <meta property="og:description" content="Learn how to use differ-structure, multi-service center synchronization tool">



  <meta name="twitter:site" content="@ServiceComb">
  <meta name="twitter:title" content="Syncer Quick Start">
  <meta name="twitter:description" content="Learn how to use differ-structure, multi-service center synchronization tool">
  <meta name="twitter:url" content="">

  
    <meta name="twitter:card" content="summary">
    
  

  



  

  












  <script type="application/ld+json">
    {
      "@context" : "http://schema.org",
      "@type" : "Person",
      "name" : "Apache ServiceComb",
      "url" : "https://github.com/pages/apache/incubator-servicecomb-website",
      "sameAs" : null
    }
  </script>



  <meta name="google-site-verification" content="HvJjNd7vvJ-yjSTHlBiIWEYxp_Hrz-PYEY5Idz9LRcA" />




<!-- end SEO -->


<link href="/feed.xml" type="application/atom+xml" rel="alternate" title="Apache ServiceComb Feed">

<!-- http://t.co/dKP3o1e -->
<meta name="HandheldFriendly" content="True">
<meta name="MobileOptimized" content="320">
<meta name="viewport" content="width=device-width, initial-scale=1.0">

<script>
  document.documentElement.className = document.documentElement.className.replace(/\bno-js\b/g, '') + ' js ';
</script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/clipboard.js/1.7.1/clipboard.min.js"></script>
<script src="/assets/vendor/prism/prism.js"></script>

<script type="text/javascript" async
  src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.1/MathJax.js?config=TeX-MML-AM_CHTML">
</script>

<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-beta/css/bootstrap.min.css" integrity="sha384-/Y6pD6FV/Vv2HJnA6t+vslU6fwYXjCFtcEpHbNJ0lyAFsXTsjBbfaDjzALeQsN6M" crossorigin="anonymous">

<script src="https://code.jquery.com/jquery-3.2.1.slim.min.js" integrity="sha384-KJ3o2DKtIkvYIK3UENzmM7KCkRr/rE9/Qpg6aAZGJwFDMVNA/GpGFF93hXpG5KkN" crossorigin="anonymous"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.11.0/umd/popper.min.js" integrity="sha384-b/U6ypiBEHpOf/4+1nzFpr53nxSS+GLCkfwBdFNTxtclqqenISfwAzpKaMNFNmj4" crossorigin="anonymous"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-beta/js/bootstrap.min.js" integrity="sha384-h0AbiXch4ZDo7tp9hKZ4TsHbi047NrKGLO3SEJAg45jXxnGIfYzk4Si90RDIqNm1" crossorigin="anonymous"></script>
<!-- For all browsers -->
<link rel="stylesheet" href="/assets/css/main.css?v=1">
<link rel="stylesheet" href="/assets/vendor/prism/prism.css?v=1">

<!--[if lte IE 9]>
  <style>
    /* old IE unsupported flexbox fixes */
    .greedy-nav .site-title {
      padding-right: 3em;
    }
    .greedy-nav button {
      position: absolute;
      top: 0;
      right: 0;
      height: 100%;
    }
  </style>
<![endif]-->

<meta http-equiv="cleartype" content="on">

    <!-- start custom head snippets -->

<!-- insert favicons. use http://realfavicongenerator.net/ -->
<link href="https://fonts.loli.net/css?family=Roboto:400,500,700|Source+Code+Pro" rel="stylesheet">
<script src="/assets/js/custom.js"></script>
<!-- end custom head snippets -->

  </head>

  <body class="layout--single">

    <!--[if lt IE 9]>
<div class="notice--danger align-center" style="margin: 0;">You are using an <strong>outdated</strong> browser. Please <a href="http://browsehappy.com/">upgrade your browser</a> to improve your experience.</div>
<![endif]-->
    <div class="masthead" onmouseleave="$('#childrenShow').css('display', 'none')">
  <div class="masthead__inner-wrap">
    <div class="masthead__menu">
      <nav id="site-nav" class="greedy-nav">
	      
          <a class="site-title active" href="/"><img src="https://www.apache.org/img/servicecomb.png"></a>
	      
        <ul class="visible-links">
          
            
          
          
            
              <li class="masthead__menu-item" onmouseenter="$('#childrenShow').css('display', 'none')">
                
                  <a href="/">Home</a>
                
              </li>
            
          
            
          
          
            
              <li class="masthead__menu-item" onmouseenter="$('#childrenShow').css('display', 'none')">
                
                  <a href="/developers/">Projects</a>
                
              </li>
            
          
            
          
          
            
            <li class="def-nav-li" onmouseenter="$('#childrenShow').css('display', 'block')">
              
              
              

              
                <a href="/docs/users/">Documentation</a>
              

              <ul id="childrenShow" class="def-children-show-en" onmouseleave="$('#childrenShow').css('display', 'none')">
                
                <li><a href="/docs/getting-started/" class="">Getting started</a></li>
                
                <li><a href="/docs/users/" class="">Docs</a></li>
                
                <li><a href="/slides/" class="">Video</a></li>
                
                <li><a href="/faqs/" class="">FAQ</a></li>
                
              </ul>
            </li>
          
          
            
          
          
            
              <li class="masthead__menu-item" onmouseenter="$('#childrenShow').css('display', 'none')">
                
                  <a href="/developers/contributing">Community</a>
                
              </li>
            
          
            
          
          
            
              <li class="masthead__menu-item" onmouseenter="$('#childrenShow').css('display', 'none')">
                
                  <a href="/year-archive/">Blogs</a>
                
              </li>
            
          
            
          
          
            
              <li class="masthead__menu-item" onmouseenter="$('#childrenShow').css('display', 'none')">
                
                  <a href="/release/">Downloads</a>
                
              </li>
            
          
        </ul>
        <button><div class="navicon"></div></button>
        <ul class="hidden-links hidden"></ul>
        <div class="nav-lang">
          
            
            <a href=/cn/docs/products/syncer/quick-start/>中文</a>
          
        </div>
      </nav>
    </div>
  </div>
</div>


    



<div id="main" role="main">
  
  <div class="sidebar sticky">
      
      <div class="back-to-home"><a href="/">Home</a> > Syncer Quick Start</div>
      
  
  
    
      
      
      
    
    
      

<nav class="nav__list">
  
  <input id="ac-toc" name="accordion-toc" type="checkbox" />
  <label for="ac-toc">Toggle Menu</label>
  <ul class="nav__items">
    
      <li>
        
          
          

          <a href="/docs/getting-started/"><span class="nav__sub-title nav__sub-title-with-url">Getting Started</span></a>
        

        
      </li>
    
      <li>
        
          
          

          <a href="/docs/introduction/"><span class="nav__sub-title nav__sub-title-with-url">Introduction</span></a>
        

        
      </li>
    
      <li>
        
          <span class="nav__sub-title">Service Center</span>
        

        
        <ul>
          
            
            

            
            

            <li><a href="/docs/products/service-center/install/" class="">Install</a></li>
          
            
            

            
            

            <li><a href="/docs/products/service-center/registration-discovery/" class="">Registration&Discovery</a></li>
          
        </ul>
        
      </li>
    
      <li>
        
          <span class="nav__sub-title">Java Chassis</span>
        

        
        <ul>
          
            
            

            
            

            <li><a href="/docs/products/java-chassis/quick-start/" class="">getting started</a></li>
          
            
            

            
            

            <li><a href="/docs/products/java-chassis/bmi/" class="">Develop microservice application in minutes</a></li>
          
            
            

            
            

            <li><a href="/docs/products/java-chassis/advance/" class="">Advance microservice development</a></li>
          
            
            

            
            

            <li><a href="/docs/products/java-chassis/load-balance/" class="">Load Balance</a></li>
          
            
            

            
            

            <li><a href="/docs/products/java-chassis/flow-control/" class="">Flow Control</a></li>
          
            
            

            
            

            <li><a href="/docs/products/java-chassis/service-management/" class="">Service Management</a></li>
          
            
            

            
            

            <li><a href="/docs/products/java-chassis/distributed-tracing/" class="">Distributed Tracing</a></li>
          
        </ul>
        
      </li>
    
      <li>
        
          <span class="nav__sub-title">Mesher</span>
        

        
        <ul>
          
            
            

            
            

            <li><a href="/docs/products/mesher/quick-start/" class="">getting started</a></li>
          
            
            

            
            

            <li><a href="/docs/products/mesher/advance/" class="">mesher Advance</a></li>
          
            
            

            
            

            <li><a href="/docs/products/mesher/load-balance/" class="">mesher balance</a></li>
          
            
            

            
            

            <li><a href="/docs/products/mesher/flow-control/" class="">mesher Flow Control</a></li>
          
            
            

            
            

            <li><a href="/docs/products/mesher/service-management/" class="">mesher Service Management</a></li>
          
            
            

            
            

            <li><a href="/docs/products/mesher/distributed-tracing/" class="">mesher Distributed Tracing</a></li>
          
        </ul>
        
      </li>
    
      <li>
        
          <span class="nav__sub-title">Toolkit</span>
        

        
        <ul>
          
            
            

            
            

            <li><a href="/docs/products/toolkit/quick-start/" class="">Quick Start</a></li>
          
            
            

            
            

            <li><a href="/docs/products/toolkit/oas-validator/" class="">OpenAPI V3 Spec validation tools</a></li>
          
        </ul>
        
      </li>
    
      <li>
        
          <span class="nav__sub-title">Syncer</span>
        

        
        <ul>
          
            
            

            
            

            <li><a href="/docs/products/syncer/quick-start/" class="active">Quick Start</a></li>
          
            
            

            
            

            <li><a href="/docs/products/syncer/multi-servicecenters/" class="">Different service centers communicate with each other</a></li>
          
        </ul>
        
      </li>
    
  </ul>
</nav>

    
  
  </div>



  <article class="page" itemscope itemtype="http://schema.org/CreativeWork">
    <meta itemprop="headline" content="Syncer Quick Start">
    <meta itemprop="description" content="Learn how to use differ-structure, multi-service center synchronization tool">
    
    <meta itemprop="dateModified" content="November 12, 2019">

    <div class="page__inner-wrap">
      
        
          <header>
            <h1 class="page__title" itemprop="headline">Syncer Quick Start
</h1>
            
          </header>
        
      

      <section class="page__content" itemprop="text">
        <aside class="sidebar__right">
<nav class="toc">
    <!-- <header><h4 class="nav__title"><i class="fa fa-file-text"></i> On This Page</h4></header> -->
<ul class="toc__menu" id="markdown-toc">
  <li><a href="#differ-structure-multi-service-center-synchronization-tool" id="markdown-toc-differ-structure-multi-service-center-synchronization-tool">Differ-structure, multi-service center synchronization tool</a></li>
  <li><a href="#quick-start" id="markdown-toc-quick-start">Quick Start</a></li>
</ul>

  </nav>
</aside>

<h2 id="differ-structure-multi-service-center-synchronization-tool">Differ-structure, multi-service center synchronization tool</h2>
<p>Syncer is a multiple servicecenters synchronization tool designed for large microservice architectures,supporting differ-structure servicecenters.</p>

<h2 id="quick-start">Quick Start</h2>
<p>1 Getting &amp; Running Service center</p>

<p>Take Service-center as an example, reference to <a href="/docs/products/service-center/install/">Install ServiceCenter</a></p>

<ol>
  <li>Download and decompression <a href="/release/service-center-downloads/">ServiceCenter发布包（&gt;=1.3.0）</a>
    <div class="language-bash highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="c"># 解压tar包</span>
<span class="nv">$ </span><span class="nb">tar</span> <span class="nt">-zxvf</span>  apache-servicecomb-service-center-1.3.0-linux-amd64.tar.gz
<span class="nv">$ </span><span class="nb">cd </span>apache-servicecomb-service-center-1.3.0-linux-amd64/
</code></pre></div>    </div>
  </li>
</ol>

<h5 id="33-running-servicecenter-syncer">3.3 Running ServiceCenter Syncer</h5>
<h6 id="parameter-description">Parameter Description</h6>
<ul>
  <li>
    <p>node</p>

    <p>The member name of syncer, that must be unique in the cluster</p>
  </li>
  <li>
    <p>sc-addr</p>

    <p>Service center address, which is the service registry address. Cluster mode is supported, and multiple addresses are separated by commas.</p>
  </li>
  <li>
    <p>bind-addr</p>

    <p>P2P address of Syncer for communication with other Syner members in P2P networks by Gossip.</p>
  </li>
  <li>
    <p>rpc-addr</p>

    <p>Address of Syncer for data transmission, used to synchronize microservices data  between Syncers.</p>
  </li>
  <li>
    <p>join-addr</p>

    <p>The bind-addr of target syncer, one of other syncer members, the current Syncer will join the network by this.</p>
  </li>
  <li>
    <p>mode</p>

    <p>Runtime mode of Syncer, specify ‘cluster’ for cluster mode which enables each Syncer to have three instance, default to ‘single’ mode.</p>
  </li>
  <li>
    <p>cluster-name</p>

    <p>Name of the Syncer cluster when mode is set to be ‘cluster’.</p>
  </li>
  <li>
    <p>cluster-port</p>

    <p>The port that the Syner cluster members communicate with when mode is set to be “cluster”.</p>
  </li>
</ul>

<p>Suppose there are 2 Service centers, each of them with a Service-center cluster for microservices discovery and registry, as following,</p>

<table>
  <thead>
    <tr>
      <th style="text-align: center">Servicecenter</th>
      <th style="text-align: center">Local address</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td style="text-align: center">http://10.0.0.10:30100</td>
      <td style="text-align: center">10.0.0.10</td>
    </tr>
    <tr>
      <td style="text-align: center">http://10.0.0.11:30100</td>
      <td style="text-align: center">10.0.0.11</td>
    </tr>
  </tbody>
</table>

<h4 id="single-mode">Single Mode</h4>

<p>Start Service-center Syncer to enable communication between 2 service centers</p>

<ul>
  <li>Start Sycner  on host 10.0.0.10</li>
</ul>

<div class="language-bash highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="nv">$ </span>./syncer daemon <span class="nt">--sc-addr</span> http://10.0.0.10:30100 <span class="nt">--bind-addr</span> 10.0.0.10:30190 <span class="nt">--rpc-addr</span> 10.0.0.10:30191
</code></pre></div></div>

<ul>
  <li>Start Syncer on host 10.0.0.11 and join into 10.0.0.10 gossip pool</li>
</ul>

<div class="language-bash highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="nv">$ </span>./syncer daemon <span class="nt">--sc-addr</span> http://10.0.0.11:30100 <span class="nt">--bind-addr</span> 10.0.0.11:30190 <span class="nt">--rpc-addr</span> 10.0.0.11:30191 <span class="nt">--join-addr</span> 10.0.0.10:30191
</code></pre></div></div>

<h4 id="cluster-mode">Cluster Mode</h4>

<p>Start 2 Syncer clusters on there host to synchronize microservice data between the 2 service centers</p>

<ul>
  <li>Start Syncer cluster on host 10.0.0.10</li>
</ul>

<div class="language-bash highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="nv">$ </span>./syncer daemon <span class="nt">--sc-addr</span> http://10.0.0.10:30100 <span class="nt">--bind-addr</span> 10.0.0.10:30190 <span class="nt">--rpc-addr</span> 10.0.0.10:30191 <span class="nt">--mode</span> cluster <span class="nt">--node</span> syncer011 <span class="nt">--cluster-port</span> 30201 <span class="nt">--join-addr</span> 10.0.0.10:30190
<span class="nv">$ </span>./syncer daemon <span class="nt">--sc-addr</span> http://10.0.0.10:30100 <span class="nt">--bind-addr</span> 10.0.0.10:30290 <span class="nt">--rpc-addr</span> 10.0.0.10:30291 <span class="nt">--mode</span> cluster <span class="nt">--node</span> syncer012 <span class="nt">--cluster-port</span> 30202 <span class="nt">--join-addr</span> 10.0.0.10:30190
<span class="nv">$ </span>./syncer daemon <span class="nt">--sc-addr</span> http://10.0.0.10:30100 <span class="nt">--bind-addr</span> 10.0.0.10:30390 <span class="nt">--rpc-addr</span> 10.0.0.10:30391 <span class="nt">--mode</span> cluster <span class="nt">--node</span> syncer013 <span class="nt">--cluster-port</span> 30203 <span class="nt">--join-addr</span> 10.0.0.10:30190
</code></pre></div></div>

<ul>
  <li>Start Syncer cluster on host 10.0.0.11</li>
</ul>

<div class="language-bash highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="nv">$ </span>./syncer daemon <span class="nt">--sc-addr</span> http://10.0.0.11:30100 <span class="nt">--bind-addr</span> 10.0.0.11:30190 <span class="nt">--rpc-addr</span> 10.0.0.11:30191 <span class="nt">--mode</span> cluster <span class="nt">--node</span> syncer021 <span class="nt">--cluster-port</span> 30201 <span class="nt">--join-addr</span> 10.0.0.10:30190
<span class="nv">$ </span>./syncer daemon <span class="nt">--sc-addr</span> http://10.0.0.11:30100 <span class="nt">--bind-addr</span> 10.0.0.11:30290 <span class="nt">--rpc-addr</span> 10.0.0.11:30291 <span class="nt">--mode</span> cluster <span class="nt">--node</span> syncer022 <span class="nt">--cluster-port</span> 30202 <span class="nt">--join-addr</span> 10.0.0.10:30190
<span class="nv">$ </span>./syncer daemon <span class="nt">--sc-addr</span> http://10.0.0.11:30100 <span class="nt">--bind-addr</span> 10.0.0.11:30390 <span class="nt">--rpc-addr</span> 10.0.0.11:30391 <span class="nt">--mode</span> cluster <span class="nt">--node</span> syncer023 <span class="nt">--cluster-port</span> 30203 <span class="nt">--join-addr</span> 10.0.0.10:30190
</code></pre></div></div>

<p><strong>Verification</strong><br />
30 seconds after registering a microservice to one of the Service-centers,  the information about it can be get from the other one.</p>


        
      </section>

      <footer class="page__meta">
        
        


        
      </footer>

      

      

    </div>

    
  </article>

  
  
</div>


    <script async src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>
    <div align="center" style="margin: 0 0;">
    <ins class="adsbygoogle"
         style="display:block; border-bottom: initial;"
         data-ad-client="ca-pub-7328585512091257"
         data-ad-slot="3049671934"
         data-ad-format="auto"></ins>
    </div>

    <div class="page__footer">
      <footer>
        <!-- start custom footer snippets -->

<!-- end custom footer snippets -->

        <div class="container">
  <div class="row justify-content-md-center">
    
    <div class="col">
      <ul>
        <p class="header">Resources</p>
        <li><a href="/docs/getting-started/">Getting started</a></li>
        <li><a href="/docs/users/">User Guide</a></li>
        <li><a href="/slides/">Slides</a></li>
        <li><a href="/users/faq/">Common Questions</a></li>
      </ul>
    </div>
    <div class="col">
      <ul>
        <p class="header">ASF</p>
        <li><a href="http://www.apache.org">Foundation</a></li>
        <li><a href="http://www.apache.org/licenses/">License</a></li>
        <li><a href="http://www.apache.org/events/current-event">Events</a></li>
        <li><a href="http://www.apache.org/foundation/sponsorship.html">Sponsorship</a></li>
        <li><a href="http://www.apache.org/foundation/thanks.html">Thanks</a></li>
      </ul>
    </div>
    <div class="col">
      <ul>
        <p class="header">Contribute</p>
        <li><a href="http://issues.apache.org/jira/browse/SCB">Report a Doc Issue</a></li>
        <li><a href="https://github.com/apache/servicecomb-website/edit/master/_docs/products/syncer/quick-start.md">Edit This Page on Github</a></li>
        <li><a href="/developers/submit-codes/">Code Submit Guide</a></li>
        <li><a href="/security">Security</a></li>
      </ul>
    </div>
    <div class="col">
      <ul class="social-icons">
        <p class="header">Community</p>
        <li>
            <a href="mailto:dev-subscribe@servicecomb.incubator.apache.org" rel="nofollow"><span class="mail">Mailing List</span></a>
        </li>
        <li>
            <a href="https://github.com/apache?q=ServiceComb" target="_blank"><span class="github">Github</span></a>
        </li>
        <li>
            <a href="https://twitter.com/ServiceComb" target="_blank"><span class="twitter">Twitter</span></a>
        </li>
        <li>
            <a href="/feed.xml" target="_blank"><span class="rss">Feed</span></a>
        </li>
      </ul>
    </div>
  </div>
</div>
<div class="page__footer-bottom">
  <div>&copy; 2020 Apache ServiceComb. Powered by <a href="http://jekyllrb.com" rel="nofollow">Jekyll</a> &amp; <a href="https://mademistakes.com/work/minimal-mistakes-jekyll-theme/" rel="nofollow">Minimal Mistakes</a>.</div>
  <div>All other marks mentioned may be trademarks or registered trademarks of their respective owners.</div>
</div>

      </footer>
    </div>

    <script src="/assets/js/main.min.js"></script>




  <script>
  (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
  (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
  m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
  })(window,document,'script','https://www.google-analytics.com/analytics.js','ga');

  ga('create', 'UA-101622733-1', 'auto');
  ga('send', 'pageview');
</script>







  </body>
</html>
