<!DOCTYPE html>
<html lang="dev" class="js csstransforms3d">
  <head>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta name="generator" content="Hugo 0.54.0" />
    <meta name="description" content="A set of micro-services for connecting millions of devices.">
<meta name="author" content="The Eclipse Hono Project">

    <link rel="apple-touch-icon" sizes="180x180" href="/hono/docs/favicon/apple-touch-icon.png">
<link rel="icon" type="image/png" sizes="48x48" href="/hono/docs/favicon/favicon-48x48.png">
<link rel="icon" type="image/png" sizes="32x32" href="/hono/docs/favicon/favicon-32x32.png">
<link rel="icon" type="image/png" sizes="16x16" href="/hono/docs/favicon/favicon-16x16.png">
<link rel="manifest" href="/hono/docs/favicon/site.webmanifest">
<link rel="mask-icon" href="/hono/docs/favicon/safari-pinned-tab.svg" color="#5bbad5">
<link rel="shortcut icon" href="/hono/docs/favicon/favicon.ico">
<meta name="msapplication-TileColor" content="#da532c">
<meta name="msapplication-config" content="/hono/docs/favicon/browserconfig.xml">
<meta name="theme-color" content="#ffffff">

    <title>OpenShift / OKD :: Eclipse Hono&trade; Vers.: dev</title>

    
    <link href="/hono/docs/css/nucleus.css?1568711528" rel="stylesheet">
    <link href="/hono/docs/css/fontawesome-all.min.css?1568711528" rel="stylesheet">
    <link href="/hono/docs/css/hybrid.css?1568711528" rel="stylesheet">
    <link href="/hono/docs/css/featherlight.min.css?1568711528" rel="stylesheet">
    <link href="/hono/docs/css/perfect-scrollbar.min.css?1568711528" rel="stylesheet">
    <link href="/hono/docs/css/auto-complete.css?1568711528" rel="stylesheet">
    <link href="/hono/docs/css/theme.css?1568711528" rel="stylesheet">
    <link href="/hono/docs/css/hugo-theme.css?1568711528" rel="stylesheet">
    
      <link href="/hono/docs/css/theme-hono.css?1568711528" rel="stylesheet">
    

    <script src="/hono/docs/js/jquery-2.x.min.js?1568711528"></script>

    <style type="text/css">
      :root #header + #content > #left > #rlblock_left{
          display:none !important;
      }
      
        :not(pre) > code + span.copy-to-clipboard {
            display: none;
        }
      
    </style>
    

<link rel="stylesheet" href="https://www.eclipse.org/eclipse.org-common/themes/solstice/public/stylesheets/vendor/cookieconsent/cookieconsent.min.css">
<link rel="stylesheet" href='/hono/docs/css/hono.css'>


<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:site" content="@EclipseHono">
<meta name="twitter:title" content="OpenShift / OKD :: Eclipse Hono&amp;trade; Vers.: dev">
<meta name="twitter:image" content="https://www.eclipse.org/hono/docs/images/twitter_image.png">
<meta name="twitter:description" content="A set of micro-services for connecting millions of devices.">


<meta property="og:title" content="OpenShift / OKD :: Eclipse Hono&amp;trade; Vers.: dev" />
<meta property="og:type" content="website" />
<meta property="og:url" content="https://www.eclipse.org/hono/docs/dev/deployment/openshift//" />
<meta property="og:image" content="https://www.eclipse.org/hono/docs/images/twitter_image.png" />

  </head>
  <body class="" data-url="/hono/docs/dev/deployment/openshift/">
    <nav id="sidebar" class="">



  <div id="header-wrapper">
    <div id="header">
      <a href="https://www.eclipse.org/hono">
    <img src="/hono/docs/images/HONO-Logo_Bild-Wort_quer-w-310x120px.svg" alt="Hono logo" class="logo-img">
</a>

    </div>
    
        <div class="searchbox">
    <label for="search-by"><i class="fas fa-search"></i></label>
    <input data-search-input id="search-by" type="search" placeholder="Search...">
    <span data-search-clear=""><i class="fas fa-times"></i></span>
</div>

<script type="text/javascript" src="/hono/docs/js/lunr.min.js?1568711528"></script>
<script type="text/javascript" src="/hono/docs/js/auto-complete.js?1568711528"></script>
<script type="text/javascript">
    
        var baseurl = "https:\/\/www.eclipse.org\/hono\/docs\/\/dev";
    
</script>
<script type="text/javascript" src="/hono/docs/js/search.js?1568711528"></script>

    
  </div>

    <div class="highlightable">
    <ul class="topics">

        
          
          


 
  
    
    <li data-nav-id="/hono/docs/dev/concepts/" title="Concepts" class="dd-item 
        
        
        
        ">
      <a href="/hono/docs/dev/concepts/">
          <i class="far fa-lightbulb"></i> Concepts
          
      </a>
      
      
        <ul>
          
          
          
          
        
          
            
            


 
  
    
      <li data-nav-id="/hono/docs/dev/concepts/device-identity/" title="Device Identity" class="dd-item ">
        <a href="/hono/docs/dev/concepts/device-identity/">
        Device Identity
        
        </a>
    </li>
     
  
 

            
          
            
            


 
  
    
      <li data-nav-id="/hono/docs/dev/concepts/tenancy/" title="Multi-Tenancy" class="dd-item ">
        <a href="/hono/docs/dev/concepts/tenancy/">
        Multi-Tenancy
        
        </a>
    </li>
     
  
 

            
          
            
            


 
  
    
      <li data-nav-id="/hono/docs/dev/concepts/device-notifications/" title="Device Notifications" class="dd-item ">
        <a href="/hono/docs/dev/concepts/device-notifications/">
        Device Notifications
        
        </a>
    </li>
     
  
 

            
          
            
            


 
  
    
      <li data-nav-id="/hono/docs/dev/concepts/command-and-control/" title="Command &amp; Control" class="dd-item ">
        <a href="/hono/docs/dev/concepts/command-and-control/">
        Command &amp; Control
        
        </a>
    </li>
     
  
 

            
          
            
            


 
  
    
      <li data-nav-id="/hono/docs/dev/concepts/resource-limits/" title="Resource limits" class="dd-item ">
        <a href="/hono/docs/dev/concepts/resource-limits/">
        Resource limits
        
        </a>
    </li>
     
  
 

            
          
            
            


 
  
    
      <li data-nav-id="/hono/docs/dev/concepts/connection-events/" title="Connection Events" class="dd-item ">
        <a href="/hono/docs/dev/concepts/connection-events/">
        Connection Events
        
        </a>
    </li>
     
  
 

            
          
        
        </ul>
              
    </li>
  
 

          
          


 
  
    
    <li data-nav-id="/hono/docs/dev/user-guide/" title="User Guide" class="dd-item 
        
        
        
        ">
      <a href="/hono/docs/dev/user-guide/">
          <i class="fas fa-book-reader"></i> User Guide
          
      </a>
      
      
        <ul>
          
          
          
          
        
          
            
            


 
  
    
      <li data-nav-id="/hono/docs/dev/user-guide/device-registry/" title="Device Registry" class="dd-item ">
        <a href="/hono/docs/dev/user-guide/device-registry/">
        Device Registry
        
        </a>
    </li>
     
  
 

            
          
            
            


 
  
    
      <li data-nav-id="/hono/docs/dev/user-guide/http-adapter/" title="HTTP Adapter" class="dd-item ">
        <a href="/hono/docs/dev/user-guide/http-adapter/">
        HTTP Adapter
        
        </a>
    </li>
     
  
 

            
          
            
            


 
  
    
      <li data-nav-id="/hono/docs/dev/user-guide/mqtt-adapter/" title="MQTT Adapter" class="dd-item ">
        <a href="/hono/docs/dev/user-guide/mqtt-adapter/">
        MQTT Adapter
        
        </a>
    </li>
     
  
 

            
          
            
            


 
  
    
      <li data-nav-id="/hono/docs/dev/user-guide/amqp-adapter/" title="AMQP Adapter" class="dd-item ">
        <a href="/hono/docs/dev/user-guide/amqp-adapter/">
        AMQP Adapter
        
        </a>
    </li>
     
  
 

            
          
            
            


 
  
    
      <li data-nav-id="/hono/docs/dev/user-guide/kura-adapter/" title="Kura Adapter" class="dd-item ">
        <a href="/hono/docs/dev/user-guide/kura-adapter/">
        Kura Adapter
        
        </a>
    </li>
     
  
 

            
          
            
            


 
  
    
      <li data-nav-id="/hono/docs/dev/user-guide/sigfox-adapter/" title="Sigfox Adapter" class="dd-item ">
        <a href="/hono/docs/dev/user-guide/sigfox-adapter/">
        Sigfox Adapter
        
        </a>
    </li>
     
  
 

            
          
            
            


 
  
    
      <li data-nav-id="/hono/docs/dev/user-guide/jmeter_load_tests/" title="Load Tests with JMeter" class="dd-item ">
        <a href="/hono/docs/dev/user-guide/jmeter_load_tests/">
        Load Tests with JMeter
        
        </a>
    </li>
     
  
 

            
          
        
        </ul>
              
    </li>
  
 

          
          


 
  
    
    <li data-nav-id="/hono/docs/dev/admin-guide/" title="Admin Guide" class="dd-item 
        
        
        
        ">
      <a href="/hono/docs/dev/admin-guide/">
          <i class="fas fa-sliders-h"></i> Admin Guide
          
      </a>
      
      
        <ul>
          
          
          
          
        
          
            
            


 
  
    
      <li data-nav-id="/hono/docs/dev/admin-guide/common-config/" title="Common Configuration" class="dd-item ">
        <a href="/hono/docs/dev/admin-guide/common-config/">
        Common Configuration
        
        </a>
    </li>
     
  
 

            
          
            
            


 
  
    
      <li data-nav-id="/hono/docs/dev/admin-guide/auth-server-config/" title="Auth Server Configuration" class="dd-item ">
        <a href="/hono/docs/dev/admin-guide/auth-server-config/">
        Auth Server Configuration
        
        </a>
    </li>
     
  
 

            
          
            
            


 
  
    
      <li data-nav-id="/hono/docs/dev/admin-guide/device-registry-config/" title="Device Registry Configuration" class="dd-item ">
        <a href="/hono/docs/dev/admin-guide/device-registry-config/">
        Device Registry Configuration
        
        </a>
    </li>
     
  
 

            
          
            
            


 
  
    
      <li data-nav-id="/hono/docs/dev/admin-guide/device-connection-config/" title="Configuring the Device Connection Service" class="dd-item ">
        <a href="/hono/docs/dev/admin-guide/device-connection-config/">
        Device Connection Service Configuration
        
        </a>
    </li>
     
  
 

            
          
            
            


 
  
    
      <li data-nav-id="/hono/docs/dev/admin-guide/http-adapter-config/" title="HTTP Adapter Configuration" class="dd-item ">
        <a href="/hono/docs/dev/admin-guide/http-adapter-config/">
        HTTP Adapter Configuration
        
        </a>
    </li>
     
  
 

            
          
            
            


 
  
    
      <li data-nav-id="/hono/docs/dev/admin-guide/amqp-adapter-config/" title="AMQP Adapter Configuration" class="dd-item ">
        <a href="/hono/docs/dev/admin-guide/amqp-adapter-config/">
        AMQP Adapter Configuration
        
        </a>
    </li>
     
  
 

            
          
            
            


 
  
    
      <li data-nav-id="/hono/docs/dev/admin-guide/mqtt-adapter-config/" title="MQTT Adapter Configuration" class="dd-item ">
        <a href="/hono/docs/dev/admin-guide/mqtt-adapter-config/">
        MQTT Adapter Configuration
        
        </a>
    </li>
     
  
 

            
          
            
            


 
  
    
      <li data-nav-id="/hono/docs/dev/admin-guide/kura-adapter-config/" title="Kura Adapter Configuration" class="dd-item ">
        <a href="/hono/docs/dev/admin-guide/kura-adapter-config/">
        Kura Adapter Configuration
        
        </a>
    </li>
     
  
 

            
          
            
            


 
  
    
      <li data-nav-id="/hono/docs/dev/admin-guide/hono-client-configuration/" title="Hono Client Configuration" class="dd-item ">
        <a href="/hono/docs/dev/admin-guide/hono-client-configuration/">
        Hono Client Configuration
        
        </a>
    </li>
     
  
 

            
          
            
            


 
  
    
      <li data-nav-id="/hono/docs/dev/admin-guide/amqp-network-config/" title="AMQP 1.0 Messaging Network Configuration" class="dd-item ">
        <a href="/hono/docs/dev/admin-guide/amqp-network-config/">
        AMQP 1.0 Messaging Network Configuration
        
        </a>
    </li>
     
  
 

            
          
            
            


 
  
    
      <li data-nav-id="/hono/docs/dev/admin-guide/secure_communication/" title="Secure Communication" class="dd-item ">
        <a href="/hono/docs/dev/admin-guide/secure_communication/">
        Secure Communication
        
        </a>
    </li>
     
  
 

            
          
            
            


 
  
    
      <li data-nav-id="/hono/docs/dev/admin-guide/monitoring-tracing-config/" title="Monitoring &amp; Tracing" class="dd-item ">
        <a href="/hono/docs/dev/admin-guide/monitoring-tracing-config/">
        Monitoring &amp; Tracing
        
        </a>
    </li>
     
  
 

            
          
        
        </ul>
              
    </li>
  
 

          
          


 
  
    
    <li data-nav-id="/hono/docs/dev/dev-guide/" title="Developer Guide" class="dd-item 
        
        
        
        ">
      <a href="/hono/docs/dev/dev-guide/">
          <i class="fas fa-tools"></i> Developer Guide
          
      </a>
      
      
        <ul>
          
          
          
          
        
          
            
            


 
  
    
      <li data-nav-id="/hono/docs/dev/dev-guide/building_hono/" title="Building from Source" class="dd-item ">
        <a href="/hono/docs/dev/dev-guide/building_hono/">
        Building from Source
        
        </a>
    </li>
     
  
 

            
          
            
            


 
  
    
      <li data-nav-id="/hono/docs/dev/dev-guide/java_client_consumer/" title="Consuming Messages from Java" class="dd-item ">
        <a href="/hono/docs/dev/dev-guide/java_client_consumer/">
        Consuming Messages from Java
        
        </a>
    </li>
     
  
 

            
          
            
            


 
  
    
      <li data-nav-id="/hono/docs/dev/dev-guide/custom_http_adapter/" title="Implement a Custom Hono HTTP Protocol Adapter" class="dd-item ">
        <a href="/hono/docs/dev/dev-guide/custom_http_adapter/">
        Implement a Custom Hono HTTP Protocol Adapter
        
        </a>
    </li>
     
  
 

            
          
        
        </ul>
              
    </li>
  
 

          
          


 
  
    
    <li data-nav-id="/hono/docs/dev/api/" title="API" class="dd-item 
        
        
        
        ">
      <a href="/hono/docs/dev/api/">
          &nbsp;<i class='fas fa-plug'></i>&nbsp;API
          
      </a>
      
      
        <ul>
          
          
          
          
        
          
            
            


 
  
    
      <li data-nav-id="/hono/docs/dev/api/telemetry/" title="Telemetry API Specification" class="dd-item ">
        <a href="/hono/docs/dev/api/telemetry/">
        Telemetry API
        
        </a>
    </li>
     
  
 

            
          
            
            


 
  
    
      <li data-nav-id="/hono/docs/dev/api/event/" title="Event API Specification" class="dd-item ">
        <a href="/hono/docs/dev/api/event/">
        Event API
        
        </a>
    </li>
     
  
 

            
          
            
            


 
  
    
      <li data-nav-id="/hono/docs/dev/api/command-and-control/" title="Command &amp; Control API Specification" class="dd-item ">
        <a href="/hono/docs/dev/api/command-and-control/">
        Command &amp; Control API
        
        </a>
    </li>
     
  
 

            
          
            
            


 
  
    
      <li data-nav-id="/hono/docs/dev/api/tenant/" title="Tenant API Specification" class="dd-item ">
        <a href="/hono/docs/dev/api/tenant/">
        Tenant API
        
        </a>
    </li>
     
  
 

            
          
            
            


 
  
    
      <li data-nav-id="/hono/docs/dev/api/device-connection/" title="Device Connection API Specification" class="dd-item ">
        <a href="/hono/docs/dev/api/device-connection/">
        Device Connection API
        
        </a>
    </li>
     
  
 

            
          
            
            


 
  
    
      <li data-nav-id="/hono/docs/dev/api/device-registration/" title="Device Registration API Specification" class="dd-item ">
        <a href="/hono/docs/dev/api/device-registration/">
        Device Registration API
        
        </a>
    </li>
     
  
 

            
          
            
            


 
  
    
      <li data-nav-id="/hono/docs/dev/api/credentials/" title="Credentials API Specification" class="dd-item ">
        <a href="/hono/docs/dev/api/credentials/">
        Credentials API
        
        </a>
    </li>
     
  
 

            
          
            
            


 
  
    
      <li data-nav-id="/hono/docs/dev/api/authentication/" title="Authentication API Specification" class="dd-item ">
        <a href="/hono/docs/dev/api/authentication/">
        Authentication API
        
        </a>
    </li>
     
  
 

            
          
            
            


 
  
    
      <li data-nav-id="/hono/docs/dev/api/management/" title="Device Registry Management API Specification" class="dd-item ">
        <a href="/hono/docs/dev/api/management/">
        Device Registry Management API
        
        </a>
    </li>
     
  
 

            
          
            
            


 
  
    
      <li data-nav-id="/hono/docs/dev/api/metrics/" title="Metrics" class="dd-item ">
        <a href="/hono/docs/dev/api/metrics/">
        Metrics
        
        </a>
    </li>
     
  
 

            
          
        
        </ul>
              
    </li>
  
 

          
          


 
  
    
    <li data-nav-id="/hono/docs/dev/deployment/" title="Deployment" class="dd-item 
        parent
        
        
        ">
      <a href="/hono/docs/dev/deployment/">
          <i class="fas fa-shipping-fast"></i> Deployment
          
      </a>
      
      
        <ul>
          
          
          
          
        
          
            
            


 
  
    
      <li data-nav-id="/hono/docs/dev/deployment/helm-based-deployment/" title="Helm based Deployment" class="dd-item ">
        <a href="/hono/docs/dev/deployment/helm-based-deployment/">
        Helm based Deployment
        
        </a>
    </li>
     
  
 

            
          
            
            


 
  
    
      <li data-nav-id="/hono/docs/dev/deployment/openshift/" title="OpenShift / OKD" class="dd-item active">
        <a href="/hono/docs/dev/deployment/openshift/">
        OpenShift / OKD
        
        </a>
    </li>
     
  
 

            
          
            
            


 
  
    
      <li data-nav-id="/hono/docs/dev/deployment/create-kubernetes-cluster/" title="Setting up a Kubernetes Cluster" class="dd-item ">
        <a href="/hono/docs/dev/deployment/create-kubernetes-cluster/">
        Setting up a Kubernetes Cluster
        
        </a>
    </li>
     
  
 

            
          
            
            


 
  
    
      <li data-nav-id="/hono/docs/dev/deployment/resource-limitation/" title="Limiting Resource Usage" class="dd-item ">
        <a href="/hono/docs/dev/deployment/resource-limitation/">
        Limiting Resource Usage
        
        </a>
    </li>
     
  
 

            
          
        
        </ul>
              
    </li>
  
 

          
          


 
  
    
    <li data-nav-id="/hono/docs/dev/architecture/" title="Architecture" class="dd-item 
        
        
        
        ">
      <a href="/hono/docs/dev/architecture/">
          <i class="fas fa-landmark"></i> Architecture
          
      </a>
      
      
        <ul>
          
          
          
          
        
          
            
            


 
  
    
      <li data-nav-id="/hono/docs/dev/architecture/component-view/" title="Component View" class="dd-item ">
        <a href="/hono/docs/dev/architecture/component-view/">
        Component View
        
        </a>
    </li>
     
  
 

            
          
            
            


 
  
    
      <li data-nav-id="/hono/docs/dev/architecture/auth/" title="Authentication/Authorization" class="dd-item ">
        <a href="/hono/docs/dev/architecture/auth/">
        Authentication/Authorization
        
        </a>
    </li>
     
  
 

            
          
        
        </ul>
              
    </li>
  
 

          
         
    </ul>

    
    

    
    <section id="prefooter">
      <hr/>
      <ul>
      
        <li>
          <div id="select-box-wrapper">
          <div id="select-box">
          <a class="padding">
            Version:&nbsp;
          <div class="select-style">
            <select id="select-language" onchange="location = this.value;">
          
          
          
              
              
                  
                    
                    
                      <option id="stable" value="/hono/docs/deployment/openshift/">stable (1.0-M7)</option>
                    
                  
              
                  
              
          
              
              
                  
              
                  
                    
                    
                      <option id="dev" value="/hono/docs/dev/deployment/openshift/" selected>dev</option>
                    
                  
              
          
        </select>
        <svg version="1.1" id="Capa_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
          width="255px" height="255px" viewBox="0 0 255 255" style="enable-background:new 0 0 255 255;" xml:space="preserve">
          <g>
            <g id="arrow-drop-down">
              <polygon points="0,63.75 127.5,191.25 255,63.75 		" />
            </g>
          </g>
        </svg>
        </div>
        </a>
        </div>
        </div>
        </li>
      
      
      
      </ul>
    </section>
    
    <section id="footer">
      

<p>&copy; 2019 <a href="https://www.eclipse.org/hono">The Eclipse Hono Project</a></p>

<p>
    Documentation built with
    <a href="https://www.gohugo.io" target="_blank">Hugo</a>
    using the
    <a href="https://github.com/matcornic/hugo-theme-learn" target="_blank">Learn</a> theme.
</p>

<div class="eclipse-logo">
    <a href="https://www.eclipse.org" target="_blank">
        <img src="https://www.eclipse.org/hono/docs/images/eclipse_foundation_logo.svg"/>
    </a>
</div>

    </section>
  </div>
</nav>





        <section id="body">
        <div id="overlay"></div>
        
        
    <div class="old-version-hint">
        <p>This page refers to version <em>dev</em>.
            You might want to use the <a href="https://www.eclipse.org/hono/docs/">current stable</a> version.
        </p>
    </div>


    
        <div class="padding highlightable">
              
              <div>
                <div id="top-bar">
                
                  
                  
                  
                  <div id="top-github-link">
                    <a class="github-link" title='Edit this page' href="https://github.com/eclipse/hono/edit/master/site/documentation/content/deployment/openshift.md" target="blank">
                      <i class="fas fa-code-branch"></i>
                      <span id="top-github-link-text">Edit this page</span>
                    </a>
                  </div>
                  
                
                
                <div id="breadcrumbs" itemscope="" itemtype="http://data-vocabulary.org/Breadcrumb">
                    <span id="sidebar-toggle-span">
                        <a href="#" id="sidebar-toggle" data-sidebar-toggle="">
                          <i class="fas fa-bars"></i>
                        </a>
                    </span>
                  
                  <span id="toc-menu"><i class="fas fa-list-alt"></i></span>
                  
                  <span class="links">
                 
                 
                    
          
          
            
            
          
          
            
            
          
          
            <a href='/hono/docs/dev/'>Documentation</a> > <a href='/hono/docs/dev/deployment/'>Deployment</a> > OpenShift / OKD
          
         
          
         
          
        
                 
                  </span>
                </div>
                
                    <div class="progress">
    <div class="wrapper">
<nav id="TableOfContents">
<ul>
<li>
<ul>
<li><a href="#prerequisites">Prerequisites</a>
<ul>
<li><a href="#assumptions">Assumptions</a></li>
<li><a href="#linux-like-environment">Linux like environment</a></li>
<li><a href="#openshift-origin-client-tools">OpenShift Origin client tools</a></li>
<li><a href="#minishift">Minishift</a></li>
<li><a href="#operator-lifecycle-manager">Operator Lifecycle Manager</a></li>
<li><a href="#persistent-volumes">Persistent volumes</a>
<ul>
<li><a href="#minishift-1">Minishift</a></li>
<li><a href="#local">Local</a></li>
<li><a href="#nfs">NFS</a></li>
</ul></li>
<li><a href="#ability-to-create-new-projects">Ability to create new projects</a></li>
<li><a href="#certificates">Certificates</a></li>
</ul></li>
<li><a href="#clone-the-hono-repository">Clone the Hono repository</a></li>
<li><a href="#setting-up-enmasse">Setting up EnMasse</a></li>
<li><a href="#setting-up-hono">Setting up Hono</a></li>
<li><a href="#enabling-metrics">Enabling metrics</a>
<ul>
<li><a href="#adding-prometheus-support">Adding Prometheus support</a></li>
<li><a href="#setting-up-grafana">Setting up Grafana</a></li>
</ul></li>
<li><a href="#configuring-the-installation">Configuring the installation</a>
<ul>
<li><a href="#configure-maximum-number-of-devices-per-tenant">Configure maximum number of devices per tenant</a></li>
<li><a href="#adding-jaeger-support">Adding Jaeger support</a>
<ul>
<li><a href="#enable-the-build-profile">Enable the build profile</a></li>
<li><a href="#add-the-jaeger-agent-sidecar">Add the Jaeger agent sidecar</a></li>
<li><a href="#deploy-jaeger">Deploy Jaeger</a></li>
</ul></li>
</ul></li>
<li><a href="#using-the-installation">Using the installation</a>
<ul>
<li><a href="#extract-certificates">Extract certificates</a></li>
<li><a href="#running-consumer">Running consumer</a></li>
<li><a href="#register-device">Register device</a></li>
<li><a href="#uploading-telemetry-with-http">Uploading Telemetry with HTTP</a></li>
</ul></li>
</ul></li>
</ul>
</nav>
    </div>
</div>

                
              </div>
            </div>
            

        
        <div id="body-inner">
          
            <h1>OpenShift / OKD</h1>
          

        


<p>This guide describes how Eclipse Hono™ can be deployed on OpenShift with
EnMasse, using the source-to-image (S2I) way. Using this approach, it is possible
to customize and refresh the base images where Hono runs in. It also uses
a more complex, multi-project setup and separates EnMasse and Grafana from
the core Hono project.</p>

<div class="alert alert-warning">
    <h4 class="alert-heading"><i class="fas fa-exclamation-triangle"></i> Use for demos only</h4>
    <div><p>While this deployment model is closer to a production-ready deployment
it still is missing some important aspects, so please do use this only as a
base for your setup or as a demo setup. The following topics are currently
not covered by this example deployment:</p>

<ul>
<li>Integration between EnMasse and Hono authentication</li>
<li>Use your own versions of the device registry and authorization service</li>
</ul>

<p>These are all subjects to current and future developments in this area. This
document will be updated accordingly with the progress.</p>
</div>
</div>


<h2 id="prerequisites">Prerequisites</h2>

<p>In order to work through this example deployment you will need the OpenShift
client tools installed. Please align the version of the client tools with
the version of your OpenShift cluster. This guide was tested with
OpenShift 3.11.0. It might work with older or newer versions as well, but that
is untested.</p>

<h3 id="assumptions">Assumptions</h3>

<p>This tutorial makes the following assumptions about your environment, if those
assumptions are not true in your specific environment you will need to adapt
the following instructions:</p>

<ul>
<li>The admin URL of your OpenShift cluster is: <code>https://my-cluster:8443</code></li>
<li>The name of your OpenShift user is <code>developer</code></li>
<li>All scripts and paths are relative to the folder
<code>deploy/src/main/deploy/openshift</code></li>
<li>Some parts of this tutorial may need <em>cluster admin</em> privileges. When cluster
admin privileges are required, the tutorial will indicate this by the command
<code>oc login -u admin</code>. It will indicate the end of a section requiring cluster
admin privileges by the command <code>oc login -u developer</code>.
<br /></li>
</ul>

<p><strong>Note:</strong> Those command may be different on your installation. They only act
  as an example.</p>

<h3 id="linux-like-environment">Linux like environment</h3>

<p>The deployment guide assumes that you have a Linux like environment with things
like <code>bash</code>, <code>curl</code>, <code>git</code>, … Mac OS X 10.13+ works as well, Windows with
some kind of Unix tooling should also be possible.</p>

<h3 id="openshift-origin-client-tools">OpenShift Origin client tools</h3>

<p>The client tools can be downloaded from the
<a href="https://github.com/openshift/origin/releases">OpenShift Origin</a> project
repository. Simply download the archive, unpack it and drop it into a directory
where it can be found by the local PATH lookup.</p>

<h3 id="minishift">Minishift</h3>

<p>This tutorial is targeted towards running Hono on a production-ready OpenShift
cluster. However it still is possible and useful to run the same setup on
a local test cluster with &ldquo;minishift&rdquo;.</p>

<p>Minishift is a tool that helps you run OpenShift locally by running a
single-node OpenShift cluster inside a VM. Follow
<a href="https://docs.openshift.org/latest/minishift/getting-started/index.html">this guide</a>
for installing and having Minishift up and running.</p>

<p>The default resource limits for Minishift however are to small, so please
ensure that you are running Minishift with the following settings:</p>

<pre><code>minishift start --cpus 4 --memory 16GB --disk-size 40GB
</code></pre>

<div class="alert alert-notice">
    <h4 class="alert-heading"><i class="fas fa-info-circle"></i> Resource limits</h4>
    <div>Once you created your Minishift cluster instance with <code>minishift start</code> the
resource arguments (like <code>--cpus</code>) are ignored in future calls to
<code>minishift start</code> as the virtual machine has already been created. You will
need to destroy the instance using <code>minishift delete</code> before it will accept
the new resource limits.</div>
</div>


<p>When using minishift you can find your cluster URL by executing the following
command:</p>

<pre><code>minishift console --url
</code></pre>

<p>Some of the operations may require <em>cluster admin</em> privileges. For minishift
an admin user can be created by executing the following commands, having a
running minishift instance:</p>

<pre><code>minishift addons apply admin-user
</code></pre>

<p>This will create a user named <code>admin</code>, with a password of <code>admin</code>, that has
cluster admin privileges.</p>

<h3 id="operator-lifecycle-manager">Operator Lifecycle Manager</h3>

<p>A simple way to install additional operators in your cluster is via the
<a href="https://github.com/operator-framework/operator-lifecycle-manager">Operator Lifecycle Manager</a> (aka OLM).
It can be enabled in OpenShift 3.11+ by setting <code>openshift_enable_olm=true</code>
in the Ansible inventory file.</p>

<p>For Minishift, it can be enabled by execute the following commands as
cluster admin:</p>

<pre><code>git clone https://github.com/operator-framework/operator-lifecycle-manager
cd operator-lifecycle-manager

oc login -u admin
oc new-project operator-lifecycle-manager
oc create -f deploy/okd/manifests/latest/
oc login -u developer
</code></pre>

<p>See also: <a href="https://github.com/operator-framework/operator-lifecycle-manager/blob/master/Documentation/install/install.md">https://github.com/operator-framework/operator-lifecycle-manager/blob/master/Documentation/install/install.md</a></p>

<p>This guide will use OLM in order to install the optional
<a href="https://github.com/coreos/prometheus-operator">Prometheus Operator</a>,
which enables the aggregation of metrics from different Hono components.</p>

<h3 id="persistent-volumes">Persistent volumes</h3>

<p>You will need two persistent volumes for this deployment. The default
required volumes are:</p>

<table>
<thead>
<tr>
<th>Name</th>
<th align="right">Size</th>
<th>Purpose</th>
</tr>
</thead>

<tbody>
<tr>
<td>hono-pv</td>
<td align="right">128 Mi</td>
<td>Storing device registry information</td>
</tr>

<tr>
<td>grafana-pv</td>
<td align="right">1 Gi</td>
<td>Grafana configuration database</td>
</tr>
</tbody>
</table>

<p>In the folder <code>admin/storage</code> you will find a set of sub folders containing
YAML files for setting up the persistent volumes (PVs). As there are multiple
storage providers available you need to choose <strong>only one</strong> and must modify it
to match your OpenShift setup (see the following subsections).</p>

<p>It may also be possible that your cluster supports automatic provisioning of
storage, in this case you don&rsquo;t need to create PVs explicitly.</p>

<p>The PVs can be created by executing the following command with a user that
has cluster wide privileges:</p>

<pre><code>oc create -f admin/storage/&lt;type&gt;/grafana-pv.yml
oc create -f admin/storage/&lt;type&gt;/hono-pv.yml
</code></pre>

<h4 id="minishift-1">Minishift</h4>

<p>When you are running minishift, then you have automatic provisioning for PVs
available. There is no need to create any PVs manually.</p>

<h4 id="local">Local</h4>

<p>In the <code>admin/storage/local</code> folder you will find YAML files for setting up
local storage volumes. Those volumes will be kept available when pods are
restarted, but are only available on he local disk of a node. So pods can
only run on this single node and not be migrated throughout a cluster.</p>

<p>If you have a single node cluster anyway, it might still be an easy option.</p>

<p>You will need to change the field <code>.spec.hostPath.path</code> to point to an
existing directory which grants all access to &ldquo;other&rdquo; (<code>chmod a+rwx .</code>).</p>

<p>The storage capacity will only be used for matching PVs with PVCs and is not
being enforced with this storage type.</p>

<h4 id="nfs">NFS</h4>

<p>The folder <code>admin/storage/nfs</code> contains a set of YAML files for setting up
NFS based PVs. For this to work you will need a running NFS server and set up
proper exports. It is possible to re-use the NFS server of your OpenShift
installation if you already have one.</p>

<p>You will need to change the following fields:</p>

<ul>
<li><code>.spec.nfs.server</code> – Hostname of the NFS server</li>
<li><code>.spec.nfs.path</code> – The name of the exported path</li>
</ul>

<div class="alert alert-warning">
    <h4 class="alert-heading"><i class="fas fa-exclamation-triangle"></i> Don&#39;t use in production</h4>
    <div>Applications running of top of NFS may have issues with things like file locking
behavior, …. So it isn&rsquo;t recommended to use NFS without proper testing and
ensuring that it works the way you expect it. If you accept the risk of
corrupted data, it might still be a simple setup for testing a multi-node setup.</div>
</div>


<p>Also see: <a href="https://docs.openshift.org/latest/install_config/persistent_storage/persistent_storage_nfs.html">https://docs.openshift.org/latest/install_config/persistent_storage/persistent_storage_nfs.html</a></p>

<h3 id="ability-to-create-new-projects">Ability to create new projects</h3>

<p>The following guide requires three projects in the OpenShift cluster. It still
is possible to modify the deployment to deploy to a single project, however this
guide focuses on a setup having multiple projects.</p>

<p>If you don&rsquo;t have permissions to create new projects yourself, then you will
need to request three projects. The guide expects the projects names to be:</p>

<ul>
<li><code>enmasse</code> – Hosting the EnMasse components.</li>
<li><code>hono</code> – For running Eclipse Hono.</li>
<li><code>grafana</code> – For running an instance of Grafana. Primarily
           for showing Hono dashboards.</li>
</ul>

<p>Those projects must be allowed to perform internal communication.</p>

<p>If projects will be created for you, then you can ignore the
calls to <code>oc new-project</code> in the following sections.</p>

<h3 id="certificates">Certificates</h3>

<p>Certificates are a difficult topic, as every components brings in its own
concept about how certificates are handled. This deployment guide tries to
align everything with OpenShifts capabilities of managing certificates. That
means that internal communication tries to use cluster generated certificates,
signed by the cluster CA. And externally it tries to re-use the OpenShift
router certificates, which are provided during the installation of OpenShift.
One exception to that are the AMQP and MQTT protocols. As those currently
cannot be re-encrypted.</p>

<p>If you deploy OpenShift without proper certificates, then you will automatically
have self-signed certificates. In this case it is required to disable e.g.
hostname validation later on. This deployment guide assumes that you have
proper certificates set up, and will try to assist if that is not the case.</p>

<div class="alert alert-notice">
    <h4 class="alert-heading"><i class="fas fa-info-circle"></i> Let&#39;s encrypt</h4>
    <div>As <a href="https://letsencrypt.org/">Let&rsquo;s encrypt</a> now supports wildcard certificates,
having proper certificates may only be a few commands away for you.</div>
</div>


<p>In general, <code>curl</code> commands require the parameter <code>--insecure</code> in order to
work with self-signed certificates.</p>

<div class="alert alert-warning">
    <h4 class="alert-heading"><i class="fas fa-exclamation-triangle"></i> Mac OS X 10.13&#43;</h4>
    <div><p>The <code>curl</code> binary on Mac OS X before 10.13 suffers from an issue with TLS SNI.
Also see: <a href="https://github.com/curl/curl/issues/1533">https://github.com/curl/curl/issues/1533</a></p>

<p>As the use of SNI is required for Kubernetes/OpenShift, when it comes to routing
requests to services, it is not possible to use the provided version of
<code>curl</code> on Mac OS X before 10.13.</p>

<p>You can install a working <code>curl</code> version using in those Mac OS X released with
the following commands:</p>

<pre><code>brew install curl --with-openssl
</code></pre>

<p>Or upgrade your existing installation using:</p>

<pre><code>brew reinstall curl --with-openssl
</code></pre>

<p>Or use proper certificates.</p>
</div>
</div>


<h2 id="clone-the-hono-repository">Clone the Hono repository</h2>

<p>In order to have access to some of the requires scripts and resource of this
deployment guide, you will need to clone the Hono repository to your local
machine. You can do this with the following command:</p>

<pre><code>git clone https://github.com/eclipse/hono.git
</code></pre>

<p>Or if you want to check out a specific branch (e.g. <code>0.9.x</code>):</p>

<pre><code>git clone -b 0.9.x https://github.com/eclipse/hono.git
</code></pre>

<div class="alert alert-notice">
    <h4 class="alert-heading"><i class="fas fa-info-circle"></i> Different branches</h4>
    <div><p>This deployment description is based on the master branch of Hono. However this
branch is also the current development and may be unstable at times.</p>

<p>If you experience any problems, it is
recommended to switch to a release branch (e.g. <code>0.9.x</code>) instead of using
the default master branch. However this documentation is only published from
the master branch, so there may be inconsistencies between the repository
content and the documentation. In this case you can read through <code>index.md</code>
file, checked out from the branch you cloned. The file is located in the
directory <code>hono-site/content/deployment/openshift</code>.</p>
</div>
</div>


<h2 id="setting-up-enmasse">Setting up EnMasse</h2>

<p>This section describes how to install EnMasse, the messaging layer which Hono is
based on.</p>

<p>Start by downloading and unpacking EnMasse:</p>

<pre><code>curl -LO https://github.com/EnMasseProject/enmasse/releases/download/0.25.0/enmasse-0.25.0.tgz
tar xzf enmasse-0.25.0.tgz
</code></pre>

<div class="alert alert-notice">
    <h4 class="alert-heading"><i class="fas fa-info-circle"></i> Other versions</h4>
    <div>Other versions of EnMasse might work as well, but are untested by this deployment
guide. Unless you explicitly want to try out a different version, it is
recommended to use to the version documented in this tutorial.</div>
</div>


<p>First switch to a user with <em>cluster admin</em> privileges, e.g.:</p>

<pre><code>oc login -u admin
</code></pre>

<p>Then create a new project:</p>

<pre><code>oc new-project enmasse-infra --display-name='EnMasse'
</code></pre>

<p>And perform the deployment:</p>

<pre><code>oc apply -f enmasse-0.25.0/install/bundles/enmasse-with-standard-authservice
</code></pre>

<p>Wait for the admin console to completely start up. You can check this with
the following command:</p>

<pre><code>oc get deploy/api-server deploy/keycloak
</code></pre>

<p>Verify that the &ldquo;AVAILABLE&rdquo; column shows &ldquo;1&rdquo;:</p>

<pre><code>NAME         DESIRED   CURRENT   UP-TO-DATE   AVAILABLE   AGE
api-server   1         1         1            1           1m
keycloak     1         1         1            1           1m
</code></pre>

<p>Finally switch back to your normal application user:</p>

<pre><code>oc login -u developer
</code></pre>

<h2 id="setting-up-hono">Setting up Hono</h2>

<p>Start by creating a new project using:</p>

<pre><code>oc new-project hono --display-name='Eclipse Hono™'
</code></pre>

<p>Then create the EnMasse address space to use:</p>

<pre><code>oc create -f hono-address-space.yml
</code></pre>

<p>Before proceeding to the next step, ensure that the address space has been
created and is ready. Executing the following command should contain
<code>Is Ready: true</code> in the status section:</p>

<pre><code>oc describe addressspace/default
</code></pre>

<p>You can also quickly check for <code>isReady</code> with a JSON path query:</p>

<pre><code>oc get addressspace/default -o jsonpath='{.status.isReady}'
</code></pre>

<p>Then process and execute the main Hono template in order to deploy the
Hono services:</p>

<pre><code>oc process -f hono-template.yml | oc create -f -
</code></pre>

<p>OpenShift templates allow to use <em>parameters</em> which can customize provided
templates. If you want to specify template parameters from the command line
use the following syntax:</p>

<pre><code>oc process -f hono-template.yml \
  -p GIT_REPOSITORY=https://github.com/your/hono.git \
  -p GIT_BRANCH=0.9.x| oc create -f -
</code></pre>

<div class="alert alert-notice">
    <h4 class="alert-heading"><i class="fas fa-info-circle"></i> Align branches</h4>
    <div><p>By default the Hono template uses the <code>master</code> branch for deploying Hono. As
this branch might be unstable this may not be what you are looking for, but it
also is the default branch of the Hono Git repository where you checked out
the deployment template.</p>

<p>It is recommended that when you execute the guide from an alternate branch
(e.g. <code>0.9.x</code>) that you also pass the same branch as <code>GIT_BRANCH</code> to the
template.</p>
</div>
</div>


<p>And register the template for creating new Hono tenants. This only registers
the template, but does not create a new tenant yet:</p>

<pre><code>oc create -f hono-tenant-template.yml
</code></pre>

<p>Next you will need to create a tenant, execute the following command to create
the <em>default tenant</em>:</p>

<pre><code>oc process hono-tenant HONO_TENANT_NAME=DEFAULT_TENANT RESOURCE_NAME=defaulttenant CONSUMER_USER_NAME=consumer CONSUMER_USER_PASSWORD=&quot;$(echo -n verysecret | base64)&quot;| oc create -f -
</code></pre>

<div class="alert alert-notice">
    <h4 class="alert-heading"><i class="fas fa-info-circle"></i> Creating tenants</h4>
    <div>Creating a new tenant using the template currently only creates the necessary
resources in EnMasse for the tenant. It does not create the tenant in the Hono
device registry.</div>
</div>


<h2 id="enabling-metrics">Enabling metrics</h2>

<p>The default OpenShift deployment of Hono does support the use of Prometheus as
a metrics backend. However it is still required to deploy an instance of
Prometheus and Grafana to your installation in order to actually gather and
visualize the metrics.</p>

<h3 id="adding-prometheus-support">Adding Prometheus support</h3>

<p>This section will explain how to set up Prometheus via the OLM and the
Prometheus Operator. This is only an example, it is possible to install
Prometheus in different ways. Or skip the installation of Prometheus, if you
want to use a different metrics backend.</p>

<p>Run the following commands to register the prometheus operator and create a
new instance:</p>

<pre><code>oc project hono
oc create -f ../resource-descriptors/prometheus/operator.yml
oc create -f ../resource-descriptors/prometheus/instance.yml
</code></pre>

<h3 id="setting-up-grafana">Setting up Grafana</h3>

<p>Start by creating a new project using:</p>

<pre><code>oc new-project grafana --display-name='Grafana Dashboard'
</code></pre>

<p>Create the config resources:</p>

<pre><code>oc create configmap grafana-provisioning-dashboards --from-file=../../config/grafana/provisioning/dashboards
oc create configmap grafana-dashboard-defs --from-file=../../config/grafana/dashboard-definitions
oc label configmap grafana-provisioning-dashboards app=hono-metrics
oc label configmap grafana-dashboard-defs app=hono-metrics
</code></pre>

<p>Then deploy the Grafana instance using:</p>

<pre><code>oc process -f grafana-template.yml \
  -p ADMIN_PASSWORD=admin | oc create -f -
</code></pre>

<p>OpenShift templates allow to use <em>parameters</em> which can customize provided
templates. If you want to specify template parameters from the command line
use the following syntax:</p>

<pre><code>oc process -f grafana-template.yml \
  -p ADMIN_PASSWORD=admin \
  -p HONO_NAMESPACE=hono \
  -p GIT_REPOSITORY=https://github.com/your/hono.git \
  -p GIT_BRANCH=0.9.x| oc create -f -
</code></pre>

<h2 id="configuring-the-installation">Configuring the installation</h2>

<p>The default installation of Hono can be tweaked in a few ways. The following
sub-sections describe a few aspects that can be modified.</p>

<h3 id="configure-maximum-number-of-devices-per-tenant">Configure maximum number of devices per tenant</h3>

<p>The default settings for the example Hono device registry limit the number of
devices to 100 per tenant. If this is not enough for your setup you can change
the setting by executing the following command, which will increase the number
to 10.000 devices per tenant:</p>

<pre><code>oc set env -n hono dc/hono-service-device-registry HONO_REGISTRY_SVC_MAX_DEVICES_PER_TENANT=10000
</code></pre>

<h3 id="adding-jaeger-support">Adding Jaeger support</h3>

<p>By default Hono has the capability to work with OpenTracing, and it also
provides a build profile for enabling the &ldquo;Jaeger&rdquo; implementation of
OpenTracing.</p>

<p>There are a few manual steps required to modify the default Hono deployment
for OpenShift in order to enable this profile.</p>

<h4 id="enable-the-build-profile">Enable the build profile</h4>

<p>The Hono profile needs to be enabled, to include the Jaeger components in the
S2I builds.</p>

<p>Modify the Hono templates to add the <code>jaeger</code> profile in the builds. e.g.:</p>

<pre><code class="language-diff">           name: fabric8-s2i-java-custom:2.3
         env:
         - name: MAVEN_ARGS_APPEND
-          value: -B -pl org.eclipse.hono:hono-adapter-mqtt-vertx --also-make -Pnetty-tcnative
+          value: -B -pl org.eclipse.hono:hono-adapter-mqtt-vertx --also-make -Pnetty-tcnative -Pjaeger
         - name: ARTIFACT_DIR
           value: adapters/mqtt-vertx/target
         - name: ARTIFACT_COPY_ARGS
</code></pre>

<p>Be sure to trigger new builds if you already built the container images before.</p>

<h4 id="add-the-jaeger-agent-sidecar">Add the Jaeger agent sidecar</h4>

<p>In order to add capture output from the Jaeger client and forward it to the
main Jaeger application, a Jaeger agent is required. This will be deployed
alongside each Hono service, as a dedicated container, but in the same pod
(aka sidecar).</p>

<p>This requires a new image stream:</p>

<pre><code class="language-yml">kind: ImageStream
apiVersion: v1
metadata:
  name: jaeger-agent
spec:
  lookupPolicy:
    local: false
  tags:
  - name: &quot;latest&quot;
    from:
      kind: DockerImage
      name: docker.io/jaegertracing/jaeger-agent:latest
    importPolicy:
      scheduled: true
    referencePolicy:
      type: Source
</code></pre>

<p>Then you need to modify the deployment configuration for each Hono service that
should use the Jaeger agent:</p>

<pre><code class="language-diff"> - kind: DeploymentConfig
   apiVersion: v1
   metadata:
     name: hono-adapter-mqtt-vertx
     labels:
       app: hono-adapter
       deploymentconfig: hono-adapter-mqtt-vertx
   spec:
     replicas: 1
     selector:
       app: hono-adapter
       deploymentconfig: hono-adapter-mqtt-vertx
     strategy:
       type: Rolling
       rollingParams:
         timeoutSeconds: 3600
     triggers:
       - type: ConfigChange
       - type: ImageChange
         imageChangeParams:
           automatic: true
           containerNames:
             - eclipsehono-hono-adapter-mqtt-vertx
           from:
             kind: ImageStreamTag
             name: hono-adapter-mqtt-vertx:latest
+      - type: ImageChange
+        imageChangeParams:
+          automatic: true
+          containerNames:
+            - jaeger-agent
+          from:
+            kind: ImageStreamTag
+            name: jaeger-agent:latest
     template:
       metadata:
         labels:
           app: hono-adapter
           deploymentconfig: hono-adapter-mqtt-vertx
       spec:
         containers:
         - name: eclipsehono-hono-adapter-mqtt-vertx
           image: hono-adapter-mqtt-vertx
           imagePullPolicy: Always
           env:
           - name: SPRING_CONFIG_LOCATION
             value: file:///etc/config/
           - name: SPRING_PROFILES_ACTIVE
             value: 
           - name: LOGGING_CONFIG
             value: file:///etc/config/logback-spring.xml
           - name: KUBERNETES_NAMESPACE
             valueFrom:
               fieldRef:
                 fieldPath: metadata.namespace
           - name: HONO_MESSAGING_HOST
             valueFrom:
               configMapKeyRef:
                 name: hono-configuration
                 key: downstream.host
           - name: HONO_MESSAGING_PORT
             valueFrom:
               configMapKeyRef:
                 name: hono-configuration
                 key: downstream.port
           - name: HONO_COMMAND_HOST
             valueFrom:
               configMapKeyRef:
                 name: hono-configuration
                 key: downstream.host
           - name: HONO_COMMAND_PORT
             valueFrom:
               configMapKeyRef:
                 name: hono-configuration
                 key: downstream.port
           - name: HONO_REGISTRATION_HOST
             value: hono-service-device-registry.$(KUBERNETES_NAMESPACE).svc
           - name: HONO_CREDENTIALS_HOST
             value: hono-service-device-registry.$(KUBERNETES_NAMESPACE).svc
           - name: HONO_TENANT_HOST
             value: hono-service-device-registry.$(KUBERNETES_NAMESPACE).svc
           - name: MANAGEMENT_METRICS_EXPORT_GRAPHITE_HOST
             value: influxdb.$(KUBERNETES_NAMESPACE).svc
           - name: AB_JOLOKIA_USER
             value: jolokia
           - name: AB_JOLOKIA_PASSWORD_RANDOM
             value: &quot;false&quot;
           - name: AB_JOLOKIA_PASSWORD
             valueFrom:
               secretKeyRef:
                 name: hono-secrets
                 key: jolokia.password
           readinessProbe:
             httpGet:
               path: /readiness
               port: 8088
               scheme: HTTPS
             initialDelaySeconds: 10
           livenessProbe:
             httpGet:
               path: /liveness
               port: 8088
               scheme: HTTPS
             initialDelaySeconds: 180
           resources:
             limits:
               memory: 512Mi
           ports:
           - containerPort: 8778 
             name: jolokia
           - containerPort: 8088
             name: radan-http
             protocol: TCP
           - containerPort: 8883
             name: secure-mqtt
             protocol: TCP
           - containerPort: 1883
             name: mqtt
             protocol: TCP
           securityContext:
             privileged: false
           volumeMounts:
           - mountPath: /etc/config
             name: conf
           - mountPath: /etc/secrets
             name: secrets
             readOnly: true
           - mountPath: /etc/tls
             name: tls
             readOnly: true
+        - image: jaeger-agent
+          name: jaeger-agent
+          ports:
+          - containerPort: 5775
+            protocol: UDP
+          - containerPort: 5778
+          - containerPort: 6831
+            protocol: UDP
+          - containerPort: 6832
+            protocol: UDP
+          command:
+            - &quot;/go/bin/agent-linux&quot;
+            - &quot;--collector.host-port=jaeger-collector.jaeger.svc:14267&quot;
+          env:
+            - name: JAEGER_SERVICE_NAME
+              value: hono-adapter-mqtt
         volumes:
         - name: conf
           configMap:
             name: hono-adapter-mqtt-vertx-config
         - name: secrets
           secret:
             secretName: hono-mqtt-secrets
         - name: tls
           secret:
             secretName: hono-adapter-mqtt-vertx-tls
</code></pre>

<p>The important parts are only the modifications, which add a new image stream
trigger, and also add the additional agent container to the deployment. This
example assumes that the Jaeger collector will be available at the hostname
<code>jaeger-collector.jaeger.svc</code>. This will be true if you follow the next
section on deploying a development-only Jaeger cluster. Should you deploy
Jaeger differently, then this hostname and/or port may be different.</p>

<h4 id="deploy-jaeger">Deploy Jaeger</h4>

<p>Setting up a full Jaeger cluster is a complicated task. However there is a good
tutorial at the Jaeger repository at: <a href="https://github.com/jaegertracing/jaeger-openshift">https://github.com/jaegertracing/jaeger-openshift</a></p>

<p>A simple deployment, for testing purposes only, can be performed by running
the development setup template of Jaeger for OpenShift:</p>

<pre><code>oc new-project jaeger
oc process -f https://raw.githubusercontent.com/jaegertracing/jaeger-openshift/master/all-in-one/jaeger-all-in-one-template.yml | oc create -f -
</code></pre>

<p>Please be aware of the official note in the <a href="https://github.com/jaegertracing/jaeger-openshift#development-setup">documentation</a>:</p>

<blockquote>
<p>This template uses an in-memory storage with a limited functionality for local testing and development. Do not use this template in production environments.</p>
</blockquote>

<h2 id="using-the-installation">Using the installation</h2>

<p>All following examples make use of the running Hono instance. They pretty much
follow the other examples. Please note that, compared to the more simple
OpenShift deployment, in this case we need to take care of different project
names when looking up route host names via <code>oc get</code>. You can use the command
line argument <code>-n &lt;project&gt;</code> to specify the project name without changing the
default selected project.</p>

<p>All examples in the following sub-sections assume that you are located in the
<code>cli</code> directory.</p>

<h3 id="extract-certificates">Extract certificates</h3>

<p>In order to connect the external consumer to Enmasse, we need to extract the
certificate which messaging endpoint of EnMasse uses. This allows to validate
the connection to the endpoint and encrypt the communication using TLS.</p>

<p>The following command extracts the certificate of the endpoint (not the key):</p>

<pre><code>oc -n hono get addressspace default -o jsonpath={.status.endpointStatuses[?(@.name==\'messaging\')].cert} | base64 -d &gt; target/config/hono-demo-certs-jar/tls.crt
</code></pre>

<p>This will retrieve the certificate, decode the base64 encoded string and
store it in the file <code>target/config/hono-demo-certs-jar/tls.crt</code>. Although
the file is a &ldquo;demo cert&rdquo; as the path might indicate, it still is stored in
the same location in order to align the with the other example commands of the
Hono documentation.</p>

<h3 id="running-consumer">Running consumer</h3>

<p>As described in the <a href="https://www.eclipse.org/hono/getting-started/
">Getting Started</a>
guide, data produced by devices is usually consumed by downstream applications
which connect directly to the router network service. You can start the client
from the <code>cli</code> folder as follows:</p>

<pre><code>mvn spring-boot:run -Dspring-boot.run.arguments=--hono.client.host=$(oc -n hono get addressspace default -o jsonpath={.status.endpointStatuses[?(@.name==\'messaging\')].externalHost}),--hono.client.port=443,--hono.client.username=consumer,--hono.client.password=verysecret,--hono.client.trustStorePath=target/config/hono-demo-certs-jar/tls.crt
</code></pre>

<h3 id="register-device">Register device</h3>

<p>In order to upload telemetry data to Hono, the device needs to be registered
with the system. You can register the device using the <em>Device Registry</em> by
running the following command (i.e. for a device with ID <code>4711</code>):</p>

<pre><code>curl -X POST -i -H 'Content-Type: application/json' -d '{&quot;device-id&quot;: &quot;4711&quot;}' https://$(oc get -n hono route hono-service-device-registry-https --template='{{.spec.host}}')/registration/DEFAULT_TENANT
</code></pre>

<h3 id="uploading-telemetry-with-http">Uploading Telemetry with HTTP</h3>

<p>After having the device registered, uploading telemetry is just a simple
HTTP POST command to the <em>HTTP Adapter</em>:</p>

<pre><code>curl -X POST -i -u sensor1@DEFAULT_TENANT:hono-secret -H 'Content-Type: application/json' --data-binary '{&quot;temp&quot;: 5}' https://$(oc -n hono get route hono-adapter-http-vertx-sec --template='{{.spec.host}}')/telemetry
</code></pre>

<footer class=" footline" >
	
</footer>


        
        </div> 
        

      </div>

    <div id="navigation">
        
        
        
        
            
            
                
                    
                    
                
                

                    
                    
                        
                    
                    

                    
                        
            
            
                
                    
                        
                        
                    
                
                

                    
                    
                    

                    
                        
            
            
                
                    
                
                

                    
                    
                    

                    
            
        
                    
                        
            
            
                
                    
                
                

                    
                    
                    

                    
            
        
                    
                        
            
            
                
                    
                
                

                    
                    
                    

                    
            
        
                    
                        
            
            
                
                    
                
                

                    
                    
                    

                    
            
        
                    
                        
            
            
                
                    
                
                

                    
                    
                    

                    
            
        
                    
                        
            
            
                
                    
                
                

                    
                    
                    

                    
            
        
                    
            
        
                    
                        
            
            
                
                    
                
                

                    
                    
                    

                    
                        
            
            
                
                    
                
                

                    
                    
                    

                    
            
        
                    
                        
            
            
                
                    
                
                

                    
                    
                    

                    
            
        
                    
                        
            
            
                
                    
                
                

                    
                    
                    

                    
            
        
                    
                        
            
            
                
                    
                
                

                    
                    
                    

                    
            
        
                    
                        
            
            
                
                    
                
                

                    
                    
                    

                    
            
        
                    
                        
            
            
                
                    
                
                

                    
                    
                    

                    
            
        
                    
                        
            
            
                
                    
                
                

                    
                    
                    

                    
            
        
                    
            
        
                    
                        
            
            
                
                    
                
                

                    
                    
                    

                    
                        
            
            
                
                    
                
                

                    
                    
                    

                    
            
        
                    
                        
            
            
                
                    
                
                

                    
                    
                    

                    
            
        
                    
                        
            
            
                
                    
                
                

                    
                    
                    

                    
            
        
                    
                        
            
            
                
                    
                
                

                    
                    
                    

                    
            
        
                    
                        
            
            
                
                    
                
                

                    
                    
                    

                    
            
        
                    
                        
            
            
                
                    
                
                

                    
                    
                    

                    
            
        
                    
                        
            
            
                
                    
                
                

                    
                    
                    

                    
            
        
                    
                        
            
            
                
                    
                
                

                    
                    
                    

                    
            
        
                    
                        
            
            
                
                    
                
                

                    
                    
                    

                    
            
        
                    
                        
            
            
                
                    
                
                

                    
                    
                    

                    
            
        
                    
                        
            
            
                
                    
                
                

                    
                    
                    

                    
            
        
                    
                        
            
            
                
                    
                
                

                    
                    
                    

                    
            
        
                    
            
        
                    
                        
            
            
                
                    
                
                

                    
                    
                    

                    
                        
            
            
                
                    
                
                

                    
                    
                    

                    
            
        
                    
                        
            
            
                
                    
                
                

                    
                    
                    

                    
            
        
                    
                        
            
            
                
                    
                
                

                    
                    
                    

                    
            
        
                    
            
        
                    
                        
            
            
                
                    
                
                

                    
                    
                    

                    
                        
            
            
                
                    
                
                

                    
                    
                    

                    
            
        
                    
                        
            
            
                
                    
                
                

                    
                    
                    

                    
            
        
                    
                        
            
            
                
                    
                
                

                    
                    
                    

                    
            
        
                    
                        
            
            
                
                    
                
                

                    
                    
                    

                    
            
        
                    
                        
            
            
                
                    
                
                

                    
                    
                    

                    
            
        
                    
                        
            
            
                
                    
                
                

                    
                    
                    

                    
            
        
                    
                        
            
            
                
                    
                
                

                    
                    
                    

                    
            
        
                    
                        
            
            
                
                    
                
                

                    
                    
                    

                    
            
        
                    
                        
            
            
                
                    
                
                

                    
                    
                    

                    
            
        
                    
                        
            
            
                
                    
                
                

                    
                    
                    

                    
            
        
                    
            
        
                    
                        
            
            
                
                    
                    
                
                

                    
                    
                    

                    
                        
            
            
                
                    
                        
                        
                    
                
                

                    
                    
                    

                    
            
        
                    
                        
            
            
                
                    
                    
                
                

                    
                    
                    

                    
            
        
                    
                        
            
            
                
                    
                        
                        
                    
                
                

                    
                    
                    

                    
            
        
                    
                        
            
            
                
                    
                
                

                    
                    
                    

                    
            
        
                    
            
        
                    
                        
            
            
                
                    
                
                

                    
                    
                    

                    
                        
            
            
                
                    
                
                

                    
                    
                    

                    
            
        
                    
                        
            
            
                
                    
                
                

                    
                    
                    

                    
            
        
                    
            
        
                    
            
        
        
        


	 
	 
    </div>

    </section>
    
    <div style="left: -1000px; overflow: scroll; position: absolute; top: -1000px; border: none; box-sizing: content-box; height: 200px; margin: 0px; padding: 0px; width: 200px;">
      <div style="border: none; box-sizing: content-box; height: 200px; margin: 0px; padding: 0px; width: 200px;"></div>
    </div>
    <script src="/hono/docs/js/clipboard.min.js?1568711528"></script>
    <script src="/hono/docs/js/perfect-scrollbar.min.js?1568711528"></script>
    <script src="/hono/docs/js/perfect-scrollbar.jquery.min.js?1568711528"></script>
    <script src="/hono/docs/js/jquery.sticky.js?1568711528"></script>
    <script src="/hono/docs/js/featherlight.min.js?1568711528"></script>
    <script src="/hono/docs/js/html5shiv-printshiv.min.js?1568711528"></script>
    <script src="/hono/docs/js/highlight.pack.js?1568711528"></script>
    <script>hljs.initHighlightingOnLoad();</script>
    <script src="/hono/docs/js/modernizr.custom.71422.js?1568711528"></script>
    <script src="/hono/docs/js/learn.js?1568711528"></script>
    <script src="/hono/docs/js/hugo-learn.js?1568711528"></script>

    <link href="/hono/docs/mermaid/mermaid.css?1568711528" type="text/css" rel="stylesheet" />
    <script src="/hono/docs/mermaid/mermaid.js?1568711528"></script>
    <script>
        mermaid.initialize({ startOnLoad: true });
    </script>
    




<script>
    (function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':
            new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],
        j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=
        'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);
    })(window,document,'script','dataLayer','GTM-5WLCZXC');
</script>


<script src="https://www.eclipse.org/eclipse.org-common/themes/solstice/public/javascript/vendor/cookieconsent/default.min.js"></script>

  </body>
</html>

