Added: zeppelin/site/docs/0.8.2/setup/deployment/yarn_install.html
URL:
http://svn.apache.org/viewvc/zeppelin/site/docs/0.8.2/setup/deployment/yarn_install.html?rev=1867691&view=auto
==============================================================================
--- zeppelin/site/docs/0.8.2/setup/deployment/yarn_install.html (added)
+++ zeppelin/site/docs/0.8.2/setup/deployment/yarn_install.html Sun Sep 29
07:08:10 2019
@@ -0,0 +1,430 @@
+
+<!DOCTYPE html>
+<html lang="en">
+ <head>
+ <meta charset="utf-8">
+ <title>Apache Zeppelin 0.8.0 Documentation: Install Zeppelin to connect
with existing YARN cluster</title>
+ <meta name="description" content="This page describes how to pre-configure
a bare metal node, configure Apache Zeppelin and connect it to existing YARN
cluster running Hortonworks flavour of Hadoop.">
+ <meta name="author" content="The Apache Software Foundation">
+
+ <!-- Enable responsive viewport -->
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
+
+ <!-- Le HTML5 shim, for IE6-8 support of HTML elements -->
+ <!--[if lt IE 9]>
+ <script src="http://html5shim.googlecode.com/svn/trunk/html5.js"></script>
+ <![endif]-->
+
+ <link
href="//maxcdn.bootstrapcdn.com/font-awesome/4.2.0/css/font-awesome.min.css"
rel="stylesheet">
+
+ <!-- Le styles -->
+ <link href="/docs/0.8.0/assets/themes//bootstrap/css/bootstrap.css"
rel="stylesheet">
+ <link href="/docs/0.8.0/assets/themes//css/style.css?body=1"
rel="stylesheet" type="text/css">
+ <link href="/docs/0.8.0/assets/themes//css/syntax.css" rel="stylesheet"
type="text/css" media="screen" />
+ <!-- Le fav and touch icons -->
+ <!-- Update these with your own images
+ <link rel="shortcut icon" href="images/favicon.ico">
+ <link rel="apple-touch-icon" href="images/apple-touch-icon.png">
+ <link rel="apple-touch-icon" sizes="72x72"
href="images/apple-touch-icon-72x72.png">
+ <link rel="apple-touch-icon" sizes="114x114"
href="images/apple-touch-icon-114x114.png">
+ -->
+
+ <!-- Js -->
+ <script src="https://code.jquery.com/jquery-1.10.2.min.js"></script>
+ <script
src="/docs/0.8.0/assets/themes//bootstrap/js/bootstrap.min.js"></script>
+ <script src="/docs/0.8.0/assets/themes//js/docs.js"></script>
+ <script src="/docs/0.8.0/assets/themes//js/anchor.min.js"></script>
+ <script src="/docs/0.8.0/assets/themes//js/toc.js"></script>
+ <script src="/docs/0.8.0/assets/themes//js/lunr.min.js"></script>
+ <script src="/docs/0.8.0/assets/themes//js/search.js"></script>
+
+ <!-- atom & rss feed -->
+ <link href="/docs/0.8.0/atom.xml" type="application/atom+xml"
rel="alternate" title="Sitewide ATOM Feed">
+ <link href="/docs/0.8.0/rss.xml" type="application/rss+xml"
rel="alternate" title="Sitewide RSS Feed">
+ </head>
+
+ <body>
+
+ <div id="menu" class="navbar navbar-inverse navbar-fixed-top"
role="navigation">
+ <div class="container navbar-container">
+ <div class="navbar-header">
+ <button type="button" class="navbar-toggle" data-toggle="collapse"
data-target=".navbar-collapse">
+ <span class="sr-only">Toggle navigation</span>
+ <span class="icon-bar"></span>
+ <span class="icon-bar"></span>
+ <span class="icon-bar"></span>
+ </button>
+ <div class="navbar-brand">
+ <a class="navbar-brand-main" href="http://zeppelin.apache.org">
+ <img
src="/docs/0.8.0/assets/themes/zeppelin/img/zeppelin_logo.png" width="50"
+ style="margin-top: -2px;" alt="I'm zeppelin">
+ <span style="margin-left: 5px; font-size: 27px;">Zeppelin</span>
+ <a class="navbar-brand-version" href="/docs/0.8.0"
+ style="font-size: 15px; color: white;"> 0.8.0
+ </a>
+ </a>
+ </div>
+ </div>
+ <nav class="navbar-collapse collapse" role="navigation">
+ <ul class="nav navbar-nav">
+ <li>
+ <a href="#" data-toggle="dropdown" class="dropdown-toggle">Quick
Start <b class="caret"></b></a>
+ <ul class="dropdown-menu">
+ <li class="title"><span>Getting Started</span></li>
+ <li><a
href="/docs/0.8.0/quickstart/install.html">Install</a></li>
+ <li><a href="/docs/0.8.0/quickstart/explore_ui.html">Explore
UI</a></li>
+ <li><a
href="/docs/0.8.0/quickstart/tutorial.html">Tutorial</a></li>
+ <li role="separator" class="divider"></li>
+ <li><a
href="/docs/0.8.0/quickstart/spark_with_zeppelin.html">Spark with
Zeppelin</a></li>
+ <li><a
href="/docs/0.8.0/quickstart/sql_with_zeppelin.html">SQL with Zeppelin</a></li>
+ <li><a
href="/docs/0.8.0/quickstart/python_with_zeppelin.html">Python with
Zeppelin</a></li>
+ </ul>
+ </li>
+
+ <li>
+ <a href="#" data-toggle="dropdown"
class="dropdown-toggle">Usage<b class="caret"></b></a>
+ <ul class="dropdown-menu scrollable-menu">
+ <li class="title"><span>Dynamic Form</span></li>
+ <li><a href="/docs/0.8.0/usage/dynamic_form/intro.html">What
is Dynamic Form?</a></li>
+ <li role="separator" class="divider"></li>
+ <li class="title"><span>Display System</span></li>
+ <li><a
href="/docs/0.8.0/usage/display_system/basic.html#text">Text Display</a></li>
+ <li><a
href="/docs/0.8.0/usage/display_system/basic.html#html">HTML Display</a></li>
+ <li><a
href="/docs/0.8.0/usage/display_system/basic.html#table">Table Display</a></li>
+ <li><a
href="/docs/0.8.0/usage/display_system/basic.html#network">Network
Display</a></li>
+ <li><a
href="/docs/0.8.0/usage/display_system/angular_backend.html">Angular Display
using Backend API</a></li>
+ <li><a
href="/docs/0.8.0/usage/display_system/angular_frontend.html">Angular Display
using Frontend API</a></li>
+ <li role="separator" class="divider"></li>
+ <li class="title"><span>Interpreter</span></li>
+ <li><a
href="/docs/0.8.0/usage/interpreter/overview.html">Overview</a></li>
+ <li><a
href="/docs/0.8.0/usage/interpreter/interpreter_binding_mode.html">Interpreter
Binding Mode</a></li>
+ <li><a
href="/docs/0.8.0/usage/interpreter/user_impersonation.html">User
Impersonation</a></li>
+ <li><a
href="/docs/0.8.0/usage/interpreter/dependency_management.html">Dependency
Management</a></li>
+ <li><a
href="/docs/0.8.0/usage/interpreter/installation.html">Installing
Interpreters</a></li>
+ <!--<li><a
href="/docs/0.8.0/usage/interpreter/dynamic_loading.html">Dynamic Interpreter
Loading (Experimental)</a></li>-->
+ <li><a
href="/docs/0.8.0/usage/interpreter/execution_hooks.html">Execution Hooks
(Experimental)</a></li>
+ <li role="separator" class="divider"></li>
+ <li class="title"><span>Other Features</span></li>
+ <li><a
href="/docs/0.8.0/usage/other_features/publishing_paragraphs.html">Publishing
Paragraphs</a></li>
+ <li><a
href="/docs/0.8.0/usage/other_features/personalized_mode.html">Personalized
Mode</a></li>
+ <li><a
href="/docs/0.8.0/usage/other_features/customizing_homepage.html">Customizing
Zeppelin Homepage</a></li>
+ <li><a
href="/docs/0.8.0/usage/other_features/notebook_actions.html">Notebook
Actions</a></li>
+ <li><a
href="/docs/0.8.0/usage/other_features/cron_scheduler.html">Cron
Scheduler</a></li>
+ <li><a
href="/docs/0.8.0/usage/other_features/zeppelin_context.html">Zeppelin
Context</a></li>
+ <li role="separator" class="divider"></li>
+ <li class="title"><span>REST API</span></li>
+ <li><a
href="/docs/0.8.0/usage/rest_api/interpreter.html">Interpreter API</a></li>
+ <li><a
href="/docs/0.8.0/usage/rest_api/zeppelin_server.html">Zeppelin Server
API</a></li>
+ <li><a
href="/docs/0.8.0/usage/rest_api/notebook.html">Notebook API</a></li>
+ <li><a
href="/docs/0.8.0/usage/rest_api/notebook_repository.html">Notebook Repository
API</a></li>
+ <li><a
href="/docs/0.8.0/usage/rest_api/configuration.html">Configuration API</a></li>
+ <li><a
href="/docs/0.8.0/usage/rest_api/credential.html">Credential API</a></li>
+ <li><a href="/docs/0.8.0/usage/rest_api/helium.html">Helium
API</a></li>
+ </ul>
+ </li>
+
+ <li>
+ <a href="#" data-toggle="dropdown"
class="dropdown-toggle">Setup<b class="caret"></b></a>
+ <ul class="dropdown-menu scrollable-menu">
+ <li class="title"><span>Basics</span></li>
+ <li><a href="/docs/0.8.0/setup/basics/how_to_build.html">How
to Build Zeppelin</a></li>
+ <li><a
href="/docs/0.8.0/setup/basics/multi_user_support.html">Multi-user
Support</a></li>
+ <li role="separator" class="divider"></li>
+ <li class="title"><span>Deployment</span></li>
+ <!--<li><a
href="/docs/0.8.0/setup/deployment/docker.html">Docker Image for
Zeppelin</a></li>-->
+ <li><a
href="/docs/0.8.0/setup/deployment/spark_cluster_mode.html#spark-standalone-mode">Spark
Cluster Mode: Standalone</a></li>
+ <li><a
href="/docs/0.8.0/setup/deployment/spark_cluster_mode.html#spark-on-yarn-mode">Spark
Cluster Mode: YARN</a></li>
+ <li><a
href="/docs/0.8.0/setup/deployment/spark_cluster_mode.html#spark-on-mesos-mode">Spark
Cluster Mode: Mesos</a></li>
+ <li><a
href="/docs/0.8.0/setup/deployment/flink_and_spark_cluster.html">Zeppelin with
Flink, Spark Cluster</a></li>
+ <li><a href="/docs/0.8.0/setup/deployment/cdh.html">Zeppelin
on CDH</a></li>
+ <li><a
href="/docs/0.8.0/setup/deployment/virtual_machine.html">Zeppelin on VM:
Vagrant</a></li>
+ <li role="separator" class="divider"></li>
+ <li class="title"><span>Security</span></li>
+ <li><a
href="/docs/0.8.0/setup/security/authentication_nginx.html">HTTP Basic Auth
using NGINX</a></li>
+ <li><a
href="/docs/0.8.0/setup/security/shiro_authentication.html">Shiro
Authentication</a></li>
+ <li><a
href="/docs/0.8.0/setup/security/notebook_authorization.html">Notebook
Authorization</a></li>
+ <li><a
href="/docs/0.8.0/setup/security/datasource_authorization.html">Data Source
Authorization</a></li>
+ <li><a
href="/docs/0.8.0/setup/security/http_security_headers.html">HTTP Security
Headers</a></li>
+ <li role="separator" class="divider"></li>
+ <li class="title"><span>Notebook Storage</span></li>
+ <li><a
href="/docs/0.8.0/setup/storage/storage.html#notebook-storage-in-local-git-repository">Git
Storage</a></li>
+ <li><a
href="/docs/0.8.0/setup/storage/storage.html#notebook-storage-in-s3">S3
Storage</a></li>
+ <li><a
href="/docs/0.8.0/setup/storage/storage.html#notebook-storage-in-azure">Azure
Storage</a></li>
+ <li><a
href="/docs/0.8.0/setup/storage/storage.html#notebook-storage-in-zeppelinhub">ZeppelinHub
Storage</a></li>
+ <li><a
href="/docs/0.8.0/setup/storage/storage.html#notebook-storage-in-mongodb">MongoDB
Storage</a></li>
+ <li role="separator" class="divider"></li>
+ <li class="title"><span>Operation</span></li>
+ <li><a
href="/docs/0.8.0/setup/operation/configuration.html">Configuration</a></li>
+ <li><a
href="/docs/0.8.0/setup/operation/proxy_setting.html">Proxy Setting</a></li>
+ <li><a
href="/docs/0.8.0/setup/operation/upgrading.html">Upgrading</a></li>
+ <li><a
href="/docs/0.8.0/setup/operation/trouble_shooting.html">Trouble
Shooting</a></li>
+ </ul>
+ </li>
+
+ <li>
+ <a href="#" data-toggle="dropdown"
class="dropdown-toggle">Interpreter <b class="caret"></b></a>
+ <ul class="dropdown-menu scrollable-menu">
+ <li class="title"><span>Interpreters</span></li>
+ <li><a
href="/docs/0.8.0/usage/interpreter/overview.html">Overview</a></li>
+ <li role="separator" class="divider"></li>
+ <li><a href="/docs/0.8.0/interpreter/spark.html">Spark</a></li>
+ <li><a href="/docs/0.8.0/interpreter/jdbc.html">JDBC</a></li>
+ <li><a
href="/docs/0.8.0/interpreter/python.html">Python</a></li>
+ <li role="separator" class="divider"></li>
+ <li><a
href="/docs/0.8.0/interpreter/alluxio.html">Alluxio</a></li>
+ <li><a href="/docs/0.8.0/interpreter/beam.html">Beam</a></li>
+ <li><a
href="/docs/0.8.0/interpreter/bigquery.html">BigQuery</a></li>
+ <li><a
href="/docs/0.8.0/interpreter/cassandra.html">Cassandra</a></li>
+ <li><a
href="/docs/0.8.0/interpreter/elasticsearch.html">Elasticsearch</a></li>
+ <li><a href="/docs/0.8.0/interpreter/flink.html">Flink</a></li>
+ <li><a href="/docs/0.8.0/interpreter/geode.html">Geode</a></li>
+ <li><a
href="/docs/0.8.0/interpreter/groovy.html">Groovy</a></li>
+ <li><a href="/docs/0.8.0/interpreter/hbase.html">HBase</a></li>
+ <li><a href="/docs/0.8.0/interpreter/hdfs.html">HDFS</a></li>
+ <li><a href="/docs/0.8.0/interpreter/hive.html">Hive</a></li>
+ <li><a
href="/docs/0.8.0/interpreter/ignite.html">Ignite</a></li>
+ <li><a href="/docs/0.8.0/interpreter/kylin.html">Kylin</a></li>
+ <li><a href="/docs/0.8.0/interpreter/lens.html">Lens</a></li>
+ <li><a href="/docs/0.8.0/interpreter/livy.html">Livy</a></li>
+ <li><a
href="/docs/0.8.0/interpreter/markdown.html">Markdown</a></li>
+ <li><a href="/docs/0.8.0/interpreter/neo4j.html">Neo4j</a></li>
+ <li><a href="/docs/0.8.0/interpreter/pig.html">Pig</a></li>
+ <li><a
href="/docs/0.8.0/interpreter/postgresql.html">Postgresql, HAWQ</a></li>
+ <li><a href="/docs/0.8.0/interpreter/r.html">R</a></li>
+ <li><a
href="/docs/0.8.0/interpreter/scalding.html">Scalding</a></li>
+ <li><a href="/docs/0.8.0/interpreter/scio.html">Scio</a></li>
+ <li><a href="/docs/0.8.0/interpreter/shell.html">Shell</a></li>
+ </ul>
+ </li>
+ <li>
+ <a href="#" data-toggle="dropdown"
class="dropdown-toggle">More<b class="caret"></b></a>
+ <ul class="dropdown-menu scrollable-menu" style="right: 0; left:
auto;">
+ <li class="title"><span>Extending Zeppelin</span></li>
+ <li><a
href="/docs/0.8.0/development/writing_zeppelin_interpreter.html">Writing
Zeppelin Interpreter</a></li>
+ <li role="separator" class="divider"></li>
+ <li class="title"><span>Helium (Experimental)</span></li>
+ <li><a
href="/docs/0.8.0/development/helium/overview.html">Overview</a></li>
+ <li><a
href="/docs/0.8.0/development/helium/writing_application.html">Writing Helium
Application</a></li>
+ <li><a
href="/docs/0.8.0/development/helium/writing_spell.html">Writing Helium
Spell</a></li>
+ <li><a
href="/docs/0.8.0/development/helium/writing_visualization_basic.html">Writing
Helium Visualization: Basics</a></li>
+ <li><a
href="/docs/0.8.0/development/helium/writing_visualization_transformation.html">Writing
Helium Visualization: Transformation</a></li>
+ <li role="separator" class="divider"></li>
+ <li class="title"><span>Contributing to Zeppelin</span></li>
+ <li><a href="/docs/0.8.0/setup/basics/how_to_build.html">How
to Build Zeppelin</a></li>
+ <li><a
href="/docs/0.8.0/development/contribution/useful_developer_tools.html">Useful
Developer Tools</a></li>
+ <li><a
href="/docs/0.8.0/development/contribution/how_to_contribute_code.html">How to
Contribute (code)</a></li>
+ <li><a
href="/docs/0.8.0/development/contribution/how_to_contribute_website.html">How
to Contribute (website)</a></li>
+ <li role="separator" class="divider"></li>
+ <li class="title"><span>External Resources</span></li>
+ <li><a target="_blank" href="">Mailing List</a></li>
+ <li><a target="_blank" href="">Apache Zeppelin Wiki</a></li>
+ <li><a target="_blank" href="">Stackoverflow Questions about
Zeppelin</a></li>
+ </ul>
+ </li>
+ <li>
+ <a href="/docs/0.8.0/search.html" class="nav-search-link">
+ <span class="fa fa-search nav-search-icon"></span>
+ </a>
+ </li>
+ </ul>
+ </nav><!--/.navbar-collapse -->
+ </div>
+ </div>
+
+
+
+ <div class="content">
+
+<!--<div class="hero-unit Install Zeppelin to connect with existing YARN
cluster">
+ <h1></h1>
+</div>
+-->
+
+<div class="row">
+ <div class="col-md-12">
+ <!--
+Licensed under the Apache License, Version 2.0 (the "License");
+you may not use this file except in compliance with the License.
+You may obtain a copy of the License at
+
+http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+-->
+
+<h2>Introduction</h2>
+
+<p>This page describes how to pre-configure a bare metal node, configure
Zeppelin and connect it to existing YARN cluster running Hortonworks flavour of
Hadoop. It also describes steps to configure Spark interpreter of Zeppelin.</p>
+
+<h2>Prepare Node</h2>
+
+<h3>Zeppelin user (Optional)</h3>
+
+<p>This step is optional, however its nice to run Zeppelin under its own user.
In case you do not like to use Zeppelin (hope not) the user could be deleted
along with all the packages that were installed for Zeppelin, Zeppelin binary
itself and associated directories.</p>
+
+<p>Create a zeppelin user and switch to zeppelin user or if zeppelin user is
already created then login as zeppelin.</p>
+<div class="highlight"><pre><code class="language-bash"
data-lang="bash"><span></span>useradd zeppelin
+su - zeppelin
+whoami
+</code></pre></div>
+<p>Assuming a zeppelin user is created then running whoami command must
return</p>
+<div class="highlight"><pre><code class="language-bash"
data-lang="bash"><span></span>zeppelin
+</code></pre></div>
+<p>Its assumed in the rest of the document that zeppelin user is indeed
created and below installation instructions are performed as zeppelin user.</p>
+
+<h3>List of Prerequisites</h3>
+
+<ul>
+<li>CentOS 6.x, Mac OSX, Ubuntu 14.X</li>
+<li>Java 1.7</li>
+<li>Hadoop client</li>
+<li>Spark</li>
+<li>Internet connection is required.</li>
+</ul>
+
+<p>It's assumed that the node has CentOS 6.x installed on it. Although any
version of Linux distribution should work fine.</p>
+
+<h4>Hadoop client</h4>
+
+<p>Zeppelin can work with multiple versions & distributions of Hadoop. A
complete list is available <a
href="https://github.com/apache/zeppelin#build">here</a>. This document assumes
Hadoop 2.7.x client libraries including configuration files are installed on
Zeppelin node. It also assumes /etc/hadoop/conf contains various Hadoop
configuration files. The location of Hadoop configuration files may vary, hence
use appropriate location.</p>
+<div class="highlight"><pre><code class="language-bash"
data-lang="bash"><span></span>hadoop version
+Hadoop <span class="m">2</span>.7.1.2.3.1.0-2574
+Subversion [email protected]:hortonworks/hadoop.git -r
f66cf95e2e9367a74b0ec88b2df33458b6cff2d0
+Compiled by jenkins on <span class="m">2015</span>-07-25T22:36Z
+Compiled with protoc <span class="m">2</span>.5.0
+From <span class="nb">source</span> with checksum
54f9bbb4492f92975e84e390599b881d
+This <span class="nb">command</span> was run using
/usr/hdp/2.3.1.0-2574/hadoop/lib/hadoop-common-2.7.1.2.3.1.0-2574.jar
+</code></pre></div>
+<h4>Spark</h4>
+
+<p>Spark is supported out of the box and to take advantage of this, you need
to Download appropriate version of Spark binary packages from <a
href="http://spark.apache.org/downloads.html">Spark Download page</a> and unzip
it.
+Zeppelin can work with multiple versions of Spark. A complete list is
available <a href="https://github.com/apache/zeppelin#build">here</a>.
+This document assumes Spark 1.6.0 is installed at /usr/lib/spark.</p>
+
+<blockquote>
+<p>Note: Spark should be installed on the same node as Zeppelin.</p>
+
+<p>Note: Spark's pre-built package for CDH 4 doesn't support yarn.</p>
+</blockquote>
+
+<h4>Zeppelin</h4>
+
+<p>Checkout source code from <a
href="https://github.com/apache/zeppelin.git">git://git.apache.org/zeppelin.git</a>
or download binary package from <a
href="https://zeppelin.apache.org/download.html">Download page</a>.
+You can refer <a href="install.html">Install</a> page for the details.
+This document assumes that Zeppelin is located under
<code>/home/zeppelin/zeppelin</code>.</p>
+
+<h2>Zeppelin Configuration</h2>
+
+<p>Zeppelin configuration needs to be modified to connect to YARN cluster.
Create a copy of zeppelin environment shell script.</p>
+<div class="highlight"><pre><code class="language-bash"
data-lang="bash"><span></span>cp
/home/zeppelin/zeppelin/conf/zeppelin-env.sh.template
/home/zeppelin/zeppelin/conf/zeppelin-env.sh
+</code></pre></div>
+<p>Set the following properties</p>
+<div class="highlight"><pre><code class="language-bash"
data-lang="bash"><span></span><span class="nb">export</span> <span
class="nv">JAVA_HOME</span><span class="o">=</span><span
class="s2">"/usr/java/jdk1.7.0_79"</span>
+<span class="nb">export</span> <span class="nv">HADOOP_CONF_DIR</span><span
class="o">=</span><span class="s2">"/etc/hadoop/conf"</span>
+<span class="nb">export</span> <span class="nv">ZEPPELIN_JAVA_OPTS</span><span
class="o">=</span><span class="s2">"-Dhdp.version=2.3.1.0-2574"</span>
+<span class="nb">export</span> <span class="nv">SPARK_HOME</span><span
class="o">=</span><span class="s2">"/usr/lib/spark"</span>
+</code></pre></div>
+<p>As /etc/hadoop/conf contains various configurations of YARN cluster,
Zeppelin can now submit Spark/Hive jobs on YARN cluster form its web interface.
The value of hdp.version is set to 2.3.1.0-2574. This can be obtained by
running the following command</p>
+<div class="highlight"><pre><code class="language-bash"
data-lang="bash"><span></span>hdp-select status hadoop-client <span
class="p">|</span> sed <span class="s1">'s/hadoop-client -
\(.*\)/\1/'</span>
+<span class="c1"># It returned 2.3.1.0-2574</span>
+</code></pre></div>
+<h2>Start/Stop</h2>
+
+<h3>Start Zeppelin</h3>
+<div class="highlight"><pre><code class="language-bash"
data-lang="bash"><span></span><span class="nb">cd</span> /home/zeppelin/zeppelin
+bin/zeppelin-daemon.sh start
+</code></pre></div>
+<p>After successful start, visit http://[zeppelin-server-host-name]:8080 with
your web browser.</p>
+
+<h3>Stop Zeppelin</h3>
+<div class="highlight"><pre><code class="language-bash"
data-lang="bash"><span></span>bin/zeppelin-daemon.sh stop
+</code></pre></div>
+<h2>Interpreter</h2>
+
+<p>Zeppelin provides various distributed processing frameworks to process data
that ranges from Spark, JDBC, Ignite and Lens to name a few. This document
describes to configure JDBC & Spark interpreters.</p>
+
+<h3>Hive</h3>
+
+<p>Zeppelin supports Hive through JDBC interpreter. You might need the
information to use Hive and can find in your hive-site.xml</p>
+
+<p>Once Zeppelin server has started successfully, visit
http://[zeppelin-server-host-name]:8080 with your web browser. Click on
Interpreter tab next to Notebook dropdown. Look for Hive configurations and set
them appropriately. Set them as per Hive installation on YARN cluster.
+Click on Save button. Once these configurations are updated, Zeppelin will
prompt you to restart the interpreter. Accept the prompt and the interpreter
will reload the configurations.</p>
+
+<h3>Spark</h3>
+
+<p>It was assumed that 1.6.0 version of Spark is installed at /usr/lib/spark.
Look for Spark configurations and click edit button to add the following
properties</p>
+
+<table class="table-configuration">
+ <tr>
+ <th>Property Name</th>
+ <th>Property Value</th>
+ <th>Remarks</th>
+ </tr>
+ <tr>
+ <td>master</td>
+ <td>yarn-client</td>
+ <td>In yarn-client mode, the driver runs in the client process, and the
application master is only used for requesting resources from YARN.</td>
+ </tr>
+ <tr>
+ <td>spark.driver.extraJavaOptions</td>
+ <td>-Dhdp.version=2.3.1.0-2574</td>
+ <td></td>
+ </tr>
+ <tr>
+ <td>spark.yarn.am.extraJavaOptions</td>
+ <td>-Dhdp.version=2.3.1.0-2574</td>
+ <td></td>
+ </tr>
+</table>
+
+<p>Click on Save button. Once these configurations are updated, Zeppelin will
prompt you to restart the interpreter. Accept the prompt and the interpreter
will reload the configurations.</p>
+
+<p>Spark & Hive notebooks can be written with Zeppelin now. The resulting
Spark & Hive jobs will run on configured YARN cluster.</p>
+
+<h2>Debug</h2>
+
+<p>Zeppelin does not emit any kind of error messages on web interface when
notebook/paragraph is run. If a paragraph fails it only displays ERROR. The
reason for failure needs to be looked into log files which is present in logs
directory under zeppelin installation base directory. Zeppelin creates a log
file for each kind of interpreter.</p>
+<div class="highlight"><pre><code class="language-bash"
data-lang="bash"><span></span><span class="o">[</span>zeppelin@zeppelin-3529
logs<span class="o">]</span>$ <span class="nb">pwd</span>
+/home/zeppelin/zeppelin/logs
+<span class="o">[</span>zeppelin@zeppelin-3529 logs<span class="o">]</span>$
ls -l
+total <span class="m">844</span>
+-rw-rw-r-- <span class="m">1</span> zeppelin zeppelin <span
class="m">14648</span> Aug <span class="m">3</span> <span
class="m">14</span>:45 zeppelin-interpreter-hive-zeppelin-zeppelin-3529.log
+-rw-rw-r-- <span class="m">1</span> zeppelin zeppelin <span
class="m">625050</span> Aug <span class="m">3</span> <span
class="m">16</span>:05 zeppelin-interpreter-spark-zeppelin-zeppelin-3529.log
+-rw-rw-r-- <span class="m">1</span> zeppelin zeppelin <span
class="m">200394</span> Aug <span class="m">3</span> <span
class="m">21</span>:15 zeppelin-zeppelin-zeppelin-3529.log
+-rw-rw-r-- <span class="m">1</span> zeppelin zeppelin <span
class="m">16162</span> Aug <span class="m">3</span> <span
class="m">14</span>:03 zeppelin-zeppelin-zeppelin-3529.out
+<span class="o">[</span>zeppelin@zeppelin-3529 logs<span class="o">]</span>$
+</code></pre></div>
+ </div>
+</div>
+
+
+ <hr>
+ <footer>
+ <!-- <p>© 2019 The Apache Software Foundation</p>-->
+ </footer>
+ </div>
+
+
+
+
+ <script type="text/javascript">
+ (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','//www.google-analytics.com/analytics.js','ga');
+
+ ga('create', 'UA-45176241-5', 'zeppelin.apache.org');
+ ga('require', 'linkid', 'linkid.js');
+ ga('send', 'pageview');
+
+</script>
+
+
+
+ </body>
+</html>
+
Propchange: zeppelin/site/docs/0.8.2/setup/deployment/yarn_install.html
------------------------------------------------------------------------------
svn:executable = *
Added: zeppelin/site/docs/0.8.2/setup/operation/configuration.html
URL:
http://svn.apache.org/viewvc/zeppelin/site/docs/0.8.2/setup/operation/configuration.html?rev=1867691&view=auto
==============================================================================
--- zeppelin/site/docs/0.8.2/setup/operation/configuration.html (added)
+++ zeppelin/site/docs/0.8.2/setup/operation/configuration.html Sun Sep 29
07:08:10 2019
@@ -0,0 +1,777 @@
+
+<!DOCTYPE html>
+<html lang="en">
+ <head>
+ <meta charset="utf-8">
+ <title>Apache Zeppelin 0.8.0 Documentation: Apache Zeppelin
Configuration</title>
+ <meta name="description" content="This page will guide you to configure
Apache Zeppelin using either environment variables or Java properties. Also,
you can configure SSL for Zeppelin.">
+ <meta name="author" content="The Apache Software Foundation">
+
+ <!-- Enable responsive viewport -->
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
+
+ <!-- Le HTML5 shim, for IE6-8 support of HTML elements -->
+ <!--[if lt IE 9]>
+ <script src="http://html5shim.googlecode.com/svn/trunk/html5.js"></script>
+ <![endif]-->
+
+ <link
href="//maxcdn.bootstrapcdn.com/font-awesome/4.2.0/css/font-awesome.min.css"
rel="stylesheet">
+
+ <!-- Le styles -->
+ <link href="/docs/0.8.0/assets/themes//bootstrap/css/bootstrap.css"
rel="stylesheet">
+ <link href="/docs/0.8.0/assets/themes//css/style.css?body=1"
rel="stylesheet" type="text/css">
+ <link href="/docs/0.8.0/assets/themes//css/syntax.css" rel="stylesheet"
type="text/css" media="screen" />
+ <!-- Le fav and touch icons -->
+ <!-- Update these with your own images
+ <link rel="shortcut icon" href="images/favicon.ico">
+ <link rel="apple-touch-icon" href="images/apple-touch-icon.png">
+ <link rel="apple-touch-icon" sizes="72x72"
href="images/apple-touch-icon-72x72.png">
+ <link rel="apple-touch-icon" sizes="114x114"
href="images/apple-touch-icon-114x114.png">
+ -->
+
+ <!-- Js -->
+ <script src="https://code.jquery.com/jquery-1.10.2.min.js"></script>
+ <script
src="/docs/0.8.0/assets/themes//bootstrap/js/bootstrap.min.js"></script>
+ <script src="/docs/0.8.0/assets/themes//js/docs.js"></script>
+ <script src="/docs/0.8.0/assets/themes//js/anchor.min.js"></script>
+ <script src="/docs/0.8.0/assets/themes//js/toc.js"></script>
+ <script src="/docs/0.8.0/assets/themes//js/lunr.min.js"></script>
+ <script src="/docs/0.8.0/assets/themes//js/search.js"></script>
+
+ <!-- atom & rss feed -->
+ <link href="/docs/0.8.0/atom.xml" type="application/atom+xml"
rel="alternate" title="Sitewide ATOM Feed">
+ <link href="/docs/0.8.0/rss.xml" type="application/rss+xml"
rel="alternate" title="Sitewide RSS Feed">
+ </head>
+
+ <body>
+
+ <div id="menu" class="navbar navbar-inverse navbar-fixed-top"
role="navigation">
+ <div class="container navbar-container">
+ <div class="navbar-header">
+ <button type="button" class="navbar-toggle" data-toggle="collapse"
data-target=".navbar-collapse">
+ <span class="sr-only">Toggle navigation</span>
+ <span class="icon-bar"></span>
+ <span class="icon-bar"></span>
+ <span class="icon-bar"></span>
+ </button>
+ <div class="navbar-brand">
+ <a class="navbar-brand-main" href="http://zeppelin.apache.org">
+ <img
src="/docs/0.8.0/assets/themes/zeppelin/img/zeppelin_logo.png" width="50"
+ style="margin-top: -2px;" alt="I'm zeppelin">
+ <span style="margin-left: 5px; font-size: 27px;">Zeppelin</span>
+ <a class="navbar-brand-version" href="/docs/0.8.0"
+ style="font-size: 15px; color: white;"> 0.8.0
+ </a>
+ </a>
+ </div>
+ </div>
+ <nav class="navbar-collapse collapse" role="navigation">
+ <ul class="nav navbar-nav">
+ <li>
+ <a href="#" data-toggle="dropdown" class="dropdown-toggle">Quick
Start <b class="caret"></b></a>
+ <ul class="dropdown-menu">
+ <li class="title"><span>Getting Started</span></li>
+ <li><a
href="/docs/0.8.0/quickstart/install.html">Install</a></li>
+ <li><a href="/docs/0.8.0/quickstart/explore_ui.html">Explore
UI</a></li>
+ <li><a
href="/docs/0.8.0/quickstart/tutorial.html">Tutorial</a></li>
+ <li role="separator" class="divider"></li>
+ <li><a
href="/docs/0.8.0/quickstart/spark_with_zeppelin.html">Spark with
Zeppelin</a></li>
+ <li><a
href="/docs/0.8.0/quickstart/sql_with_zeppelin.html">SQL with Zeppelin</a></li>
+ <li><a
href="/docs/0.8.0/quickstart/python_with_zeppelin.html">Python with
Zeppelin</a></li>
+ </ul>
+ </li>
+
+ <li>
+ <a href="#" data-toggle="dropdown"
class="dropdown-toggle">Usage<b class="caret"></b></a>
+ <ul class="dropdown-menu scrollable-menu">
+ <li class="title"><span>Dynamic Form</span></li>
+ <li><a href="/docs/0.8.0/usage/dynamic_form/intro.html">What
is Dynamic Form?</a></li>
+ <li role="separator" class="divider"></li>
+ <li class="title"><span>Display System</span></li>
+ <li><a
href="/docs/0.8.0/usage/display_system/basic.html#text">Text Display</a></li>
+ <li><a
href="/docs/0.8.0/usage/display_system/basic.html#html">HTML Display</a></li>
+ <li><a
href="/docs/0.8.0/usage/display_system/basic.html#table">Table Display</a></li>
+ <li><a
href="/docs/0.8.0/usage/display_system/basic.html#network">Network
Display</a></li>
+ <li><a
href="/docs/0.8.0/usage/display_system/angular_backend.html">Angular Display
using Backend API</a></li>
+ <li><a
href="/docs/0.8.0/usage/display_system/angular_frontend.html">Angular Display
using Frontend API</a></li>
+ <li role="separator" class="divider"></li>
+ <li class="title"><span>Interpreter</span></li>
+ <li><a
href="/docs/0.8.0/usage/interpreter/overview.html">Overview</a></li>
+ <li><a
href="/docs/0.8.0/usage/interpreter/interpreter_binding_mode.html">Interpreter
Binding Mode</a></li>
+ <li><a
href="/docs/0.8.0/usage/interpreter/user_impersonation.html">User
Impersonation</a></li>
+ <li><a
href="/docs/0.8.0/usage/interpreter/dependency_management.html">Dependency
Management</a></li>
+ <li><a
href="/docs/0.8.0/usage/interpreter/installation.html">Installing
Interpreters</a></li>
+ <!--<li><a
href="/docs/0.8.0/usage/interpreter/dynamic_loading.html">Dynamic Interpreter
Loading (Experimental)</a></li>-->
+ <li><a
href="/docs/0.8.0/usage/interpreter/execution_hooks.html">Execution Hooks
(Experimental)</a></li>
+ <li role="separator" class="divider"></li>
+ <li class="title"><span>Other Features</span></li>
+ <li><a
href="/docs/0.8.0/usage/other_features/publishing_paragraphs.html">Publishing
Paragraphs</a></li>
+ <li><a
href="/docs/0.8.0/usage/other_features/personalized_mode.html">Personalized
Mode</a></li>
+ <li><a
href="/docs/0.8.0/usage/other_features/customizing_homepage.html">Customizing
Zeppelin Homepage</a></li>
+ <li><a
href="/docs/0.8.0/usage/other_features/notebook_actions.html">Notebook
Actions</a></li>
+ <li><a
href="/docs/0.8.0/usage/other_features/cron_scheduler.html">Cron
Scheduler</a></li>
+ <li><a
href="/docs/0.8.0/usage/other_features/zeppelin_context.html">Zeppelin
Context</a></li>
+ <li role="separator" class="divider"></li>
+ <li class="title"><span>REST API</span></li>
+ <li><a
href="/docs/0.8.0/usage/rest_api/interpreter.html">Interpreter API</a></li>
+ <li><a
href="/docs/0.8.0/usage/rest_api/zeppelin_server.html">Zeppelin Server
API</a></li>
+ <li><a
href="/docs/0.8.0/usage/rest_api/notebook.html">Notebook API</a></li>
+ <li><a
href="/docs/0.8.0/usage/rest_api/notebook_repository.html">Notebook Repository
API</a></li>
+ <li><a
href="/docs/0.8.0/usage/rest_api/configuration.html">Configuration API</a></li>
+ <li><a
href="/docs/0.8.0/usage/rest_api/credential.html">Credential API</a></li>
+ <li><a href="/docs/0.8.0/usage/rest_api/helium.html">Helium
API</a></li>
+ </ul>
+ </li>
+
+ <li>
+ <a href="#" data-toggle="dropdown"
class="dropdown-toggle">Setup<b class="caret"></b></a>
+ <ul class="dropdown-menu scrollable-menu">
+ <li class="title"><span>Basics</span></li>
+ <li><a href="/docs/0.8.0/setup/basics/how_to_build.html">How
to Build Zeppelin</a></li>
+ <li><a
href="/docs/0.8.0/setup/basics/multi_user_support.html">Multi-user
Support</a></li>
+ <li role="separator" class="divider"></li>
+ <li class="title"><span>Deployment</span></li>
+ <!--<li><a
href="/docs/0.8.0/setup/deployment/docker.html">Docker Image for
Zeppelin</a></li>-->
+ <li><a
href="/docs/0.8.0/setup/deployment/spark_cluster_mode.html#spark-standalone-mode">Spark
Cluster Mode: Standalone</a></li>
+ <li><a
href="/docs/0.8.0/setup/deployment/spark_cluster_mode.html#spark-on-yarn-mode">Spark
Cluster Mode: YARN</a></li>
+ <li><a
href="/docs/0.8.0/setup/deployment/spark_cluster_mode.html#spark-on-mesos-mode">Spark
Cluster Mode: Mesos</a></li>
+ <li><a
href="/docs/0.8.0/setup/deployment/flink_and_spark_cluster.html">Zeppelin with
Flink, Spark Cluster</a></li>
+ <li><a href="/docs/0.8.0/setup/deployment/cdh.html">Zeppelin
on CDH</a></li>
+ <li><a
href="/docs/0.8.0/setup/deployment/virtual_machine.html">Zeppelin on VM:
Vagrant</a></li>
+ <li role="separator" class="divider"></li>
+ <li class="title"><span>Security</span></li>
+ <li><a
href="/docs/0.8.0/setup/security/authentication_nginx.html">HTTP Basic Auth
using NGINX</a></li>
+ <li><a
href="/docs/0.8.0/setup/security/shiro_authentication.html">Shiro
Authentication</a></li>
+ <li><a
href="/docs/0.8.0/setup/security/notebook_authorization.html">Notebook
Authorization</a></li>
+ <li><a
href="/docs/0.8.0/setup/security/datasource_authorization.html">Data Source
Authorization</a></li>
+ <li><a
href="/docs/0.8.0/setup/security/http_security_headers.html">HTTP Security
Headers</a></li>
+ <li role="separator" class="divider"></li>
+ <li class="title"><span>Notebook Storage</span></li>
+ <li><a
href="/docs/0.8.0/setup/storage/storage.html#notebook-storage-in-local-git-repository">Git
Storage</a></li>
+ <li><a
href="/docs/0.8.0/setup/storage/storage.html#notebook-storage-in-s3">S3
Storage</a></li>
+ <li><a
href="/docs/0.8.0/setup/storage/storage.html#notebook-storage-in-azure">Azure
Storage</a></li>
+ <li><a
href="/docs/0.8.0/setup/storage/storage.html#notebook-storage-in-zeppelinhub">ZeppelinHub
Storage</a></li>
+ <li><a
href="/docs/0.8.0/setup/storage/storage.html#notebook-storage-in-mongodb">MongoDB
Storage</a></li>
+ <li role="separator" class="divider"></li>
+ <li class="title"><span>Operation</span></li>
+ <li><a
href="/docs/0.8.0/setup/operation/configuration.html">Configuration</a></li>
+ <li><a
href="/docs/0.8.0/setup/operation/proxy_setting.html">Proxy Setting</a></li>
+ <li><a
href="/docs/0.8.0/setup/operation/upgrading.html">Upgrading</a></li>
+ <li><a
href="/docs/0.8.0/setup/operation/trouble_shooting.html">Trouble
Shooting</a></li>
+ </ul>
+ </li>
+
+ <li>
+ <a href="#" data-toggle="dropdown"
class="dropdown-toggle">Interpreter <b class="caret"></b></a>
+ <ul class="dropdown-menu scrollable-menu">
+ <li class="title"><span>Interpreters</span></li>
+ <li><a
href="/docs/0.8.0/usage/interpreter/overview.html">Overview</a></li>
+ <li role="separator" class="divider"></li>
+ <li><a href="/docs/0.8.0/interpreter/spark.html">Spark</a></li>
+ <li><a href="/docs/0.8.0/interpreter/jdbc.html">JDBC</a></li>
+ <li><a
href="/docs/0.8.0/interpreter/python.html">Python</a></li>
+ <li role="separator" class="divider"></li>
+ <li><a
href="/docs/0.8.0/interpreter/alluxio.html">Alluxio</a></li>
+ <li><a href="/docs/0.8.0/interpreter/beam.html">Beam</a></li>
+ <li><a
href="/docs/0.8.0/interpreter/bigquery.html">BigQuery</a></li>
+ <li><a
href="/docs/0.8.0/interpreter/cassandra.html">Cassandra</a></li>
+ <li><a
href="/docs/0.8.0/interpreter/elasticsearch.html">Elasticsearch</a></li>
+ <li><a href="/docs/0.8.0/interpreter/flink.html">Flink</a></li>
+ <li><a href="/docs/0.8.0/interpreter/geode.html">Geode</a></li>
+ <li><a
href="/docs/0.8.0/interpreter/groovy.html">Groovy</a></li>
+ <li><a href="/docs/0.8.0/interpreter/hbase.html">HBase</a></li>
+ <li><a href="/docs/0.8.0/interpreter/hdfs.html">HDFS</a></li>
+ <li><a href="/docs/0.8.0/interpreter/hive.html">Hive</a></li>
+ <li><a
href="/docs/0.8.0/interpreter/ignite.html">Ignite</a></li>
+ <li><a href="/docs/0.8.0/interpreter/kylin.html">Kylin</a></li>
+ <li><a href="/docs/0.8.0/interpreter/lens.html">Lens</a></li>
+ <li><a href="/docs/0.8.0/interpreter/livy.html">Livy</a></li>
+ <li><a
href="/docs/0.8.0/interpreter/markdown.html">Markdown</a></li>
+ <li><a href="/docs/0.8.0/interpreter/neo4j.html">Neo4j</a></li>
+ <li><a href="/docs/0.8.0/interpreter/pig.html">Pig</a></li>
+ <li><a
href="/docs/0.8.0/interpreter/postgresql.html">Postgresql, HAWQ</a></li>
+ <li><a href="/docs/0.8.0/interpreter/r.html">R</a></li>
+ <li><a
href="/docs/0.8.0/interpreter/scalding.html">Scalding</a></li>
+ <li><a href="/docs/0.8.0/interpreter/scio.html">Scio</a></li>
+ <li><a href="/docs/0.8.0/interpreter/shell.html">Shell</a></li>
+ </ul>
+ </li>
+ <li>
+ <a href="#" data-toggle="dropdown"
class="dropdown-toggle">More<b class="caret"></b></a>
+ <ul class="dropdown-menu scrollable-menu" style="right: 0; left:
auto;">
+ <li class="title"><span>Extending Zeppelin</span></li>
+ <li><a
href="/docs/0.8.0/development/writing_zeppelin_interpreter.html">Writing
Zeppelin Interpreter</a></li>
+ <li role="separator" class="divider"></li>
+ <li class="title"><span>Helium (Experimental)</span></li>
+ <li><a
href="/docs/0.8.0/development/helium/overview.html">Overview</a></li>
+ <li><a
href="/docs/0.8.0/development/helium/writing_application.html">Writing Helium
Application</a></li>
+ <li><a
href="/docs/0.8.0/development/helium/writing_spell.html">Writing Helium
Spell</a></li>
+ <li><a
href="/docs/0.8.0/development/helium/writing_visualization_basic.html">Writing
Helium Visualization: Basics</a></li>
+ <li><a
href="/docs/0.8.0/development/helium/writing_visualization_transformation.html">Writing
Helium Visualization: Transformation</a></li>
+ <li role="separator" class="divider"></li>
+ <li class="title"><span>Contributing to Zeppelin</span></li>
+ <li><a href="/docs/0.8.0/setup/basics/how_to_build.html">How
to Build Zeppelin</a></li>
+ <li><a
href="/docs/0.8.0/development/contribution/useful_developer_tools.html">Useful
Developer Tools</a></li>
+ <li><a
href="/docs/0.8.0/development/contribution/how_to_contribute_code.html">How to
Contribute (code)</a></li>
+ <li><a
href="/docs/0.8.0/development/contribution/how_to_contribute_website.html">How
to Contribute (website)</a></li>
+ <li role="separator" class="divider"></li>
+ <li class="title"><span>External Resources</span></li>
+ <li><a target="_blank" href="">Mailing List</a></li>
+ <li><a target="_blank" href="">Apache Zeppelin Wiki</a></li>
+ <li><a target="_blank" href="">Stackoverflow Questions about
Zeppelin</a></li>
+ </ul>
+ </li>
+ <li>
+ <a href="/docs/0.8.0/search.html" class="nav-search-link">
+ <span class="fa fa-search nav-search-icon"></span>
+ </a>
+ </li>
+ </ul>
+ </nav><!--/.navbar-collapse -->
+ </div>
+ </div>
+
+
+
+ <div class="content">
+
+<!--<div class="hero-unit Apache Zeppelin Configuration">
+ <h1></h1>
+</div>
+-->
+
+<div class="row">
+ <div class="col-md-12">
+ <!--
+Licensed under the Apache License, Version 2.0 (the "License");
+you may not use this file except in compliance with the License.
+You may obtain a copy of the License at
+
+http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+-->
+
+<h1>Apache Zeppelin Configuration</h1>
+
+<div id="toc"></div>
+
+<h2>Zeppelin Properties</h2>
+
+<p>There are two locations you can configure Apache Zeppelin.</p>
+
+<ul>
+<li><strong>Environment variables</strong> can be defined
<code>conf/zeppelin-env.sh</code>(<code>conf\zeppelin-env.cmd</code> for
Windows).</li>
+<li><strong>Java properties</strong> can be defined in
<code>conf/zeppelin-site.xml</code>.</li>
+</ul>
+
+<p>If both are defined, then the <strong>environment variables</strong> will
take priority.</p>
+
+<blockquote>
+<p>Mouse hover on each property and click <i class="fa fa-link
fa-flip-horizontal"></i> then you can get a link for that.</p>
+</blockquote>
+
+<table class="table-configuration">
+ <tr>
+ <th>zeppelin-env.sh</th>
+ <th>zeppelin-site.xml</th>
+ <th>Default value</th>
+ <th class="col-md-4">Description</th>
+ </tr>
+ <tr>
+ <td><h6 class="properties">ZEPPELIN_ADDR</h6></td>
+ <td><h6 class="properties">zeppelin.server.addr</h6></td>
+ <td>127.0.0.1</td>
+ <td>Zeppelin server binding address</td>
+ </tr>
+ <tr>
+ <td><h6 class="properties">ZEPPELIN_PORT</h6></td>
+ <td><h6 class="properties">zeppelin.server.port</h6></td>
+ <td>8080</td>
+ <td>Zeppelin server port </br>
+ <span style="font-style:italic; color: gray"> Note: Please make sure
you're not using the same port with
+ <a
href="https://zeppelin.apache.org/contribution/webapplication.html#dev-mode"
target="_blank">Zeppelin web application development port</a> (default:
9000).</span></td>
+ </tr>
+ <tr>
+ <td><h6 class="properties">ZEPPELIN_SSL_PORT</h6></td>
+ <td><h6 class="properties">zeppelin.server.ssl.port</h6></td>
+ <td>8443</td>
+ <td>Zeppelin Server ssl port (used when ssl environment/property is set to
true)</td>
+ </tr>
+ <tr>
+ <td><h6 class="properties">ZEPPELIN_JMX_ENABLE</h6></td>
+ <td><h6 class="properties">N/A</h6></td>
+ <td></td>
+ <td>Enable JMX by defining "true"</td>
+ </tr>
+ <tr>
+ <td><h6 class="properties">ZEPPELIN_JMX_PORT</h6></td>
+ <td><h6 class="properties">N/A</h6></td>
+ <td>9996</td>
+ <td>Port number which JMX uses</td>
+ </tr>
+ <tr>
+ <td><h6 class="properties">ZEPPELIN_MEM</h6></td>
+ <td>N/A</td>
+ <td>-Xmx1024m -XX:MaxPermSize=512m</td>
+ <td>JVM mem options</td>
+ </tr>
+ <tr>
+ <td><h6 class="properties">ZEPPELIN_INTP_MEM</h6></td>
+ <td>N/A</td>
+ <td>ZEPPELIN_MEM</td>
+ <td>JVM mem options for interpreter process</td>
+ </tr>
+ <tr>
+ <td><h6 class="properties">ZEPPELIN_JAVA_OPTS</h6></td>
+ <td>N/A</td>
+ <td></td>
+ <td>JVM options</td>
+ </tr>
+ <tr>
+ <td><h6 class="properties">ZEPPELIN_ALLOWED_ORIGINS</h6></td>
+ <td><h6 class="properties">zeppelin.server.allowed.origins</h6></td>
+ <td>*</td>
+ <td>Enables a way to specify a ',' separated list of allowed origins for
REST and websockets. <br /> e.g. http://localhost:8080</td>
+ </tr>
+ <tr>
+ <td><h6 class="properties">ZEPPELIN_CREDENTIALS_PERSIST</h6></td>
+ <td><h6 class="properties">zeppelin.credentials.persist</h6></td>
+ <td>true</td>
+ <td>Persist credentials on a JSON file (credentials.json)</td>
+ </tr>
+ <tr>
+ <td><h6 class="properties">ZEPPELIN_CREDENTIALS_ENCRYPT_KEY</h6></td>
+ <td><h6 class="properties">zeppelin.credentials.encryptKey</h6></td>
+ <td></td>
+ <td>If provided, encrypt passwords on the credentials.json file (passwords
will be stored as plain-text otherwise</td>
+ </tr>
+ <tr>
+ <td>N/A</td>
+ <td><h6 class="properties">zeppelin.anonymous.allowed</h6></td>
+ <td>true</td>
+ <td>The anonymous user is allowed by default.</td>
+ </tr>
+ <tr>
+ <td><h6 class="properties">ZEPPELIN_SERVER_CONTEXT_PATH</h6></td>
+ <td><h6 class="properties">zeppelin.server.context.path</h6></td>
+ <td>/</td>
+ <td>Context path of the web application</td>
+ </tr>
+ <tr>
+ <td><h6 class="properties">ZEPPELIN_SSL</h6></td>
+ <td><h6 class="properties">zeppelin.ssl</h6></td>
+ <td>false</td>
+ <td></td>
+ </tr>
+ <tr>
+ <td><h6 class="properties">ZEPPELIN_SSL_CLIENT_AUTH</h6></td>
+ <td><h6 class="properties">zeppelin.ssl.client.auth</h6></td>
+ <td>false</td>
+ <td></td>
+ </tr>
+ <tr>
+ <td><h6 class="properties">ZEPPELIN_SSL_KEYSTORE_PATH</h6></td>
+ <td><h6 class="properties">zeppelin.ssl.keystore.path</h6></td>
+ <td>keystore</td>
+ <td></td>
+ </tr>
+ <tr>
+ <td><h6 class="properties">ZEPPELIN_SSL_KEYSTORE_TYPE</h6></td>
+ <td><h6 class="properties">zeppelin.ssl.keystore.type</h6></td>
+ <td>JKS</td>
+ <td></td>
+ </tr>
+ <tr>
+ <td><h6 class="properties">ZEPPELIN_SSL_KEYSTORE_PASSWORD</h6></td>
+ <td><h6 class="properties">zeppelin.ssl.keystore.password</h6></td>
+ <td></td>
+ <td></td>
+ </tr>
+ <tr>
+ <td><h6 class="properties">ZEPPELIN_SSL_KEY_MANAGER_PASSWORD</h6></td>
+ <td><h6 class="properties">zeppelin.ssl.key.manager.password</h6></td>
+ <td></td>
+ <td></td>
+ </tr>
+ <tr>
+ <td><h6 class="properties">ZEPPELIN_SSL_TRUSTSTORE_PATH</h6></td>
+ <td><h6 class="properties">zeppelin.ssl.truststore.path</h6></td>
+ <td></td>
+ <td></td>
+ </tr>
+ <tr>
+ <td><h6 class="properties">ZEPPELIN_SSL_TRUSTSTORE_TYPE</h6></td>
+ <td><h6 class="properties">zeppelin.ssl.truststore.type</h6></td>
+ <td></td>
+ <td></td>
+ </tr>
+ <tr>
+ <td><h6 class="properties">ZEPPELIN_SSL_TRUSTSTORE_PASSWORD</h6></td>
+ <td><h6 class="properties">zeppelin.ssl.truststore.password</h6></td>
+ <td></td>
+ <td></td>
+ </tr>
+ <tr>
+ <td><h6 class="properties">ZEPPELIN_NOTEBOOK_HOMESCREEN</h6></td>
+ <td><h6 class="properties">zeppelin.notebook.homescreen</h6></td>
+ <td></td>
+ <td>Display note IDs on the Apache Zeppelin homescreen <br />e.g.
2A94M5J1Z</td>
+ </tr>
+ <tr>
+ <td><h6 class="properties">ZEPPELIN_NOTEBOOK_HOMESCREEN_HIDE</h6></td>
+ <td><h6 class="properties">zeppelin.notebook.homescreen.hide</h6></td>
+ <td>false</td>
+ <td>Hide the note ID set by <code>ZEPPELIN_NOTEBOOK_HOMESCREEN</code> on
the Apache Zeppelin homescreen. <br />For the further information, please read
<a href="../usage/other_features/customizing_homepage.html">Customize your
Zeppelin homepage</a>.</td>
+ </tr>
+ <tr>
+ <td><h6 class="properties">ZEPPELIN_WAR_TEMPDIR</h6></td>
+ <td><h6 class="properties">zeppelin.war.tempdir</h6></td>
+ <td>webapps</td>
+ <td>Location of the jetty temporary directory</td>
+ </tr>
+ <tr>
+ <td><h6 class="properties">ZEPPELIN_NOTEBOOK_DIR</h6></td>
+ <td><h6 class="properties">zeppelin.notebook.dir</h6></td>
+ <td>notebook</td>
+ <td>The root directory where notebook directories are saved</td>
+ </tr>
+ <tr>
+ <td><h6 class="properties">ZEPPELIN_NOTEBOOK_S3_BUCKET</h6></td>
+ <td><h6 class="properties">zeppelin.notebook.s3.bucket</h6></td>
+ <td>zeppelin</td>
+ <td>S3 Bucket where notebook files will be saved</td>
+ </tr>
+ <tr>
+ <td><h6 class="properties">ZEPPELIN_NOTEBOOK_S3_USER</h6></td>
+ <td><h6 class="properties">zeppelin.notebook.s3.user</h6></td>
+ <td>user</td>
+ <td>User name of an S3 bucket<br />e.g.
<code>bucket/user/notebook/2A94M5J1Z/note.json</code></td>
+ </tr>
+ <tr>
+ <td><h6 class="properties">ZEPPELIN_NOTEBOOK_S3_ENDPOINT</h6></td>
+ <td><h6 class="properties">zeppelin.notebook.s3.endpoint</h6></td>
+ <td>s3.amazonaws.com</td>
+ <td>Endpoint for the bucket</td>
+ </tr>
+ <tr>
+ <td><h6 class="properties">ZEPPELIN_NOTEBOOK_S3_KMS_KEY_ID</h6></td>
+ <td><h6 class="properties">zeppelin.notebook.s3.kmsKeyID</h6></td>
+ <td></td>
+ <td>AWS KMS Key ID to use for encrypting data in S3 (optional)</td>
+ </tr>
+ <tr>
+ <td><h6 class="properties">ZEPPELIN_NOTEBOOK_S3_EMP</h6></td>
+ <td><h6
class="properties">zeppelin.notebook.s3.encryptionMaterialsProvider</h6></td>
+ <td></td>
+ <td>Class name of a custom S3 encryption materials provider implementation
to use for encrypting data in S3 (optional)</td>
+ </tr>
+ <tr>
+ <td><h6 class="properties">ZEPPELIN_NOTEBOOK_S3_SSE</h6></td>
+ <td><h6 class="properties">zeppelin.notebook.s3.sse</h6></td>
+ <td>false</td>
+ <td>Save notebooks to S3 with server-side encryption enabled</td>
+ </tr>
+ <tr>
+ <td><h6 class="properties">ZEPPELIN_NOTEBOOK_S3_SIGNEROVERRIDE</h6></td>
+ <td><h6 class="properties">zeppelin.notebook.s3.signerOverride</h6></td>
+ <td></td>
+ <td>Optional override to control which signature algorithm should be used
to sign AWS requests</td>
+ </tr>
+ <tr>
+ <td><h6
class="properties">ZEPPELIN_NOTEBOOK_AZURE_CONNECTION_STRING</h6></td>
+ <td><h6
class="properties">zeppelin.notebook.azure.connectionString</h6></td>
+ <td></td>
+ <td>The Azure storage account connection string<br />e.g.
<br/><code>DefaultEndpointsProtocol=https;<br/>AccountName=<accountName>;<br/>AccountKey=<accountKey></code></td>
+ </tr>
+ <tr>
+ <td><h6 class="properties">ZEPPELIN_NOTEBOOK_AZURE_SHARE</h6></td>
+ <td><h6 class="properties">zeppelin.notebook.azure.share</h6></td>
+ <td>zeppelin</td>
+ <td>Azure Share where the notebook files will be saved</td>
+ </tr>
+ <tr>
+ <td><h6 class="properties">ZEPPELIN_NOTEBOOK_AZURE_USER</h6></td>
+ <td><h6 class="properties">zeppelin.notebook.azure.user</h6></td>
+ <td>user</td>
+ <td>Optional user name of an Azure file share<br />e.g.
<code>share/user/notebook/2A94M5J1Z/note.json</code></td>
+ </tr>
+ <tr>
+ <td><h6 class="properties">ZEPPELIN_NOTEBOOK_STORAGE</h6></td>
+ <td><h6 class="properties">zeppelin.notebook.storage</h6></td>
+ <td>org.apache.zeppelin.notebook.repo.GitNotebookRepo</td>
+ <td>Comma separated list of notebook storage locations</td>
+ </tr>
+ <tr>
+ <td><h6 class="properties">ZEPPELIN_NOTEBOOK_ONE_WAY_SYNC</h6></td>
+ <td><h6 class="properties">zeppelin.notebook.one.way.sync</h6></td>
+ <td>false</td>
+ <td>If there are multiple notebook storage locations, should we treat the
first one as the only source of truth?</td>
+ </tr>
+ <tr>
+ <td><h6 class="properties">ZEPPELIN_NOTEBOOK_PUBLIC</h6></td>
+ <td><h6 class="properties">zeppelin.notebook.public</h6></td>
+ <td>true</td>
+ <td>Make notebook public (set only <code>owners</code>) by default when
created/imported. If set to <code>false</code> will add <code>user</code> to
<code>readers</code> and <code>writers</code> as well, making it private and
invisible to other users unless permissions are granted.</td>
+ </tr>
+ <tr>
+ <td><h6 class="properties">ZEPPELIN_INTERPRETERS</h6></td>
+ <td><h6 class="properties">zeppelin.interpreters</h6></td>
+ <description></description>
+ <td>org.apache.zeppelin.spark.SparkInterpreter,<br
/>org.apache.zeppelin.spark.PySparkInterpreter,<br
/>org.apache.zeppelin.spark.SparkSqlInterpreter,<br
/>org.apache.zeppelin.spark.DepInterpreter,<br
/>org.apache.zeppelin.markdown.Markdown,<br
/>org.apache.zeppelin.shell.ShellInterpreter,<br />
+ ...
+ </td>
+ <td>
+ Comma separated interpreter configurations [Class] <br/><br />
+ <span style="font-style:italic; color: gray">NOTE: This property is
deprecated since Zeppelin-0.6.0 and will not be supported from
Zeppelin-0.7.0.</span>
+ </td>
+ </tr>
+ <tr>
+ <td><h6 class="properties">ZEPPELIN_INTERPRETER_DIR</h6></td>
+ <td><h6 class="properties">zeppelin.interpreter.dir</h6></td>
+ <td>interpreter</td>
+ <td>Interpreter directory</td>
+ </tr>
+ <tr>
+ <td><h6 class="properties">ZEPPELIN_INTERPRETER_DEP_MVNREPO</h6></td>
+ <td><h6 class="properties">zeppelin.interpreter.dep.mvnRepo</h6></td>
+ <td>http://repo1.maven.org/maven2/</td>
+ <td>Remote principal repository for interpreter's additional dependency
loading</td>
+ </tr>
+ <tr>
+ <td><h6 class="properties">ZEPPELIN_INTERPRETER_OUTPUT_LIMIT</h6></td>
+ <td><h6 class="properties">zeppelin.interpreter.output.limit</h6></td>
+ <td>102400</td>
+ <td>Output message from interpreter exceeding the limit will be
truncated</td>
+ </tr>
+ <tr>
+ <td><h6 class="properties">ZEPPELIN_INTERPRETER_CONNECT_TIMEOUT</h6></td>
+ <td><h6 class="properties">zeppelin.interpreter.connect.timeout</h6></td>
+ <td>30000</td>
+ <td>Output message from interpreter exceeding the limit will be
truncated</td>
+ </tr>
+ <tr>
+ <td><h6 class="properties">ZEPPELIN_DEP_LOCALREPO</h6></td>
+ <td><h6 class="properties">zeppelin.dep.localrepo</h6></td>
+ <td>local-repo</td>
+ <td>Local repository for dependency loader.<br>ex)visualiztion modules of
npm.</td>
+ </tr>
+ <tr>
+ <td><h6 class="properties">ZEPPELIN_HELIUM_NODE_INSTALLER_URL</h6></td>
+ <td><h6 class="properties">zeppelin.helium.node.installer.url</h6></td>
+ <td>https://nodejs.org/dist/</td>
+ <td>Remote Node installer url for Helium dependency loader</td>
+ </tr>
+ <tr>
+ <td><h6 class="properties">ZEPPELIN_HELIUM_NPM_INSTALLER_URL</h6></td>
+ <td><h6 class="properties">zeppelin.helium.npm.installer.url</h6></td>
+ <td>http://registry.npmjs.org/</td>
+ <td>Remote Npm installer url for Helium dependency loader</td>
+ </tr>
+ <tr>
+ <td><h6 class="properties">ZEPPELIN_HELIUM_YARNPKG_INSTALLER_URL</h6></td>
+ <td><h6 class="properties">zeppelin.helium.yarnpkg.installer.url</h6></td>
+ <td>https://github.com/yarnpkg/yarn/releases/download/</td>
+ <td>Remote Yarn package installer url for Helium dependency loader</td>
+ </tr>
+ <tr>
+ <td><h6
class="properties">ZEPPELIN_WEBSOCKET_MAX_TEXT_MESSAGE_SIZE</h6></td>
+ <td><h6
class="properties">zeppelin.websocket.max.text.message.size</h6></td>
+ <td>1024000</td>
+ <td>Size(in characters) of the maximum text message that can be received
by websocket.</td>
+ </tr>
+ <tr>
+ <td><h6 class="properties">ZEPPELIN_SERVER_DEFAULT_DIR_ALLOWED</h6></td>
+ <td><h6 class="properties">zeppelin.server.default.dir.allowed</h6></td>
+ <td>false</td>
+ <td>Enable directory listings on server.</td>
+ </tr>
+ <tr>
+ <td><h6 class="properties">ZEPPELIN_NOTEBOOK_GIT_REMOTE_URL</h6></td>
+ <td><h6 class="properties">zeppelin.notebook.git.remote.url</h6></td>
+ <td></td>
+ <td>GitHub's repository URL. It could be either the HTTP URL or the SSH
URL. For example [email protected]:apache/zeppelin.git</td>
+ </tr>
+ <tr>
+ <td><h6 class="properties">ZEPPELIN_NOTEBOOK_GIT_REMOTE_USERNAME</h6></td>
+ <td><h6 class="properties">zeppelin.notebook.git.remote.username</h6></td>
+ <td>token</td>
+ <td>GitHub username. By default it is `token` to use GitHub's API</td>
+ </tr>
+ <tr>
+ <td><h6
class="properties">ZEPPELIN_NOTEBOOK_GIT_REMOTE_ACCESS_TOKEN</h6></td>
+ <td><h6
class="properties">zeppelin.notebook.git.remote.access-token</h6></td>
+ <td>token</td>
+ <td>GitHub access token to use GitHub's API. If username/password
combination is used and not GitHub API, then this value is the password</td>
+ </tr>
+ <tr>
+ <td><h6 class="properties">ZEPPELIN_NOTEBOOK_GIT_REMOTE_ORIGIN</h6></td>
+ <td><h6 class="properties">zeppelin.notebook.git.remote.origin</h6></td>
+ <td>token</td>
+ <td>GitHub remote name. Default is `origin`</td>
+ </tr>
+</table>
+
+<h2>SSL Configuration</h2>
+
+<p>Enabling SSL requires a few configuration changes. First, you need to
create certificates and then update necessary configurations to enable server
side SSL and/or client side certificate authentication.</p>
+
+<h3>Creating and configuring the Certificates</h3>
+
+<p>Information how about to generate certificates and a keystore can be found
<a href="https://wiki.eclipse.org/Jetty/Howto/Configure_SSL">here</a>.</p>
+
+<p>A condensed example can be found in the top answer to this <a
href="http://stackoverflow.com/questions/4008837/configure-ssl-on-jetty">StackOverflow
post</a>.</p>
+
+<p>The keystore holds the private key and certificate on the server end. The
trustore holds the trusted client certificates. Be sure that the path and
password for these two stores are correctly configured in the password fields
below. They can be obfuscated using the Jetty password tool. After Maven pulls
in all the dependency to build Zeppelin, one of the Jetty jars contain the
Password tool. Invoke this command from the Zeppelin home build directory with
the appropriate version, user, and password.</p>
+<div class="highlight"><pre><code class="language-bash"
data-lang="bash"><span></span>java -cp
./zeppelin-server/target/lib/jetty-all-server-<version>.jar <span
class="se">\</span>
+org.eclipse.jetty.util.security.Password <user> <password>
+</code></pre></div>
+<p>If you are using a self-signed, a certificate signed by an untrusted CA, or
if client authentication is enabled, then the client must have a browser create
exceptions for both the normal HTTPS port and WebSocket port. This can by done
by trying to establish an HTTPS connection to both ports in a browser (e.g. if
the ports are 443 and 8443, then visit https://127.0.0.1:443 and
https://127.0.0.1:8443). This step can be skipped if the server certificate is
signed by a trusted CA and client auth is disabled.</p>
+
+<h3>Configuring server side SSL</h3>
+
+<p>The following properties needs to be updated in the
<code>zeppelin-site.xml</code> in order to enable server side SSL.</p>
+<div class="highlight"><pre><code class="language-xml"
data-lang="xml"><span></span><span class="nt"><property></span>
+ <span class="nt"><name></span>zeppelin.server.ssl.port<span
class="nt"></name></span>
+ <span class="nt"><value></span>8443<span
class="nt"></value></span>
+ <span class="nt"><description></span>Server ssl port. (used when ssl
property is set to true)<span class="nt"></description></span>
+<span class="nt"></property></span>
+
+<span class="nt"><property></span>
+ <span class="nt"><name></span>zeppelin.ssl<span
class="nt"></name></span>
+ <span class="nt"><value></span>true<span
class="nt"></value></span>
+ <span class="nt"><description></span>Should SSL be used by the
servers?<span class="nt"></description></span>
+<span class="nt"></property></span>
+
+<span class="nt"><property></span>
+ <span class="nt"><name></span>zeppelin.ssl.keystore.path<span
class="nt"></name></span>
+ <span class="nt"><value></span>keystore<span
class="nt"></value></span>
+ <span class="nt"><description></span>Path to keystore relative to
Zeppelin configuration directory<span class="nt"></description></span>
+<span class="nt"></property></span>
+
+<span class="nt"><property></span>
+ <span class="nt"><name></span>zeppelin.ssl.keystore.type<span
class="nt"></name></span>
+ <span class="nt"><value></span>JKS<span
class="nt"></value></span>
+ <span class="nt"><description></span>The format of the given keystore
(e.g. JKS or PKCS12)<span class="nt"></description></span>
+<span class="nt"></property></span>
+
+<span class="nt"><property></span>
+ <span class="nt"><name></span>zeppelin.ssl.keystore.password<span
class="nt"></name></span>
+ <span class="nt"><value></span>change me<span
class="nt"></value></span>
+ <span class="nt"><description></span>Keystore password. Can be
obfuscated by the Jetty Password tool<span
class="nt"></description></span>
+<span class="nt"></property></span>
+
+<span class="nt"><property></span>
+ <span class="nt"><name></span>zeppelin.ssl.key.manager.password<span
class="nt"></name></span>
+ <span class="nt"><value></span>change me<span
class="nt"></value></span>
+ <span class="nt"><description></span>Key Manager password. Defaults to
keystore password. Can be obfuscated.<span
class="nt"></description></span>
+<span class="nt"></property></span>
+</code></pre></div>
+<h3>Enabling client side certificate authentication</h3>
+
+<p>The following properties needs to be updated in the
<code>zeppelin-site.xml</code> in order to enable client side certificate
authentication.</p>
+<div class="highlight"><pre><code class="language-xml"
data-lang="xml"><span></span><span class="nt"><property></span>
+ <span class="nt"><name></span>zeppelin.server.ssl.port<span
class="nt"></name></span>
+ <span class="nt"><value></span>8443<span
class="nt"></value></span>
+ <span class="nt"><description></span>Server ssl port. (used when ssl
property is set to true)<span class="nt"></description></span>
+<span class="nt"></property></span>
+
+<span class="nt"><property></span>
+ <span class="nt"><name></span>zeppelin.ssl.client.auth<span
class="nt"></name></span>
+ <span class="nt"><value></span>true<span
class="nt"></value></span>
+ <span class="nt"><description></span>Should client authentication be
used for SSL connections?<span class="nt"></description></span>
+<span class="nt"></property></span>
+
+<span class="nt"><property></span>
+ <span class="nt"><name></span>zeppelin.ssl.truststore.path<span
class="nt"></name></span>
+ <span class="nt"><value></span>truststore<span
class="nt"></value></span>
+ <span class="nt"><description></span>Path to truststore relative to
Zeppelin configuration directory. Defaults to the keystore path<span
class="nt"></description></span>
+<span class="nt"></property></span>
+
+<span class="nt"><property></span>
+ <span class="nt"><name></span>zeppelin.ssl.truststore.type<span
class="nt"></name></span>
+ <span class="nt"><value></span>JKS<span
class="nt"></value></span>
+ <span class="nt"><description></span>The format of the given
truststore (e.g. JKS or PKCS12). Defaults to the same type as the keystore
type<span class="nt"></description></span>
+<span class="nt"></property></span>
+
+<span class="nt"><property></span>
+ <span class="nt"><name></span>zeppelin.ssl.truststore.password<span
class="nt"></name></span>
+ <span class="nt"><value></span>change me<span
class="nt"></value></span>
+ <span class="nt"><description></span>Truststore password. Can be
obfuscated by the Jetty Password tool. Defaults to the keystore password<span
class="nt"></description></span>
+<span class="nt"></property></span>
+</code></pre></div>
+<h3>Storing user credentials</h3>
+
+<p>In order to avoid having to re-enter credentials every time you
restart/redeploy Zeppelin, you can store the user credentials. Zeppelin
supports this via the ZEPPELIN<em>CREDENTIALS</em>PERSIST configuration.</p>
+
+<p>Please notice that passwords will be stored in <em>plain text</em> by
default. To encrypt the passwords, use the
ZEPPELIN<em>CREDENTIALS</em>ENCRYPT_KEY config variable. This will encrypt
passwords using the AES-128 algorithm.</p>
+
+<p>You can generate an appropriate encryption key any way you'd like - for
instance, by using the openssl tool:</p>
+<div class="highlight"><pre><code class="language-bash"
data-lang="bash"><span></span>openssl enc -aes-128-cbc -k secret -P -md sha1
+</code></pre></div>
+<p><em>Important</em>: storing your encryption key in a configuration file is
<em>not advised</em>. Depending on your environment security needs, you may
want to consider utilizing a credentials server, storing the
ZEPPELIN<em>CREDENTIALS</em>ENCRYPT_KEY as an OS env variable, or any other
approach that would not colocate the encryption key and the encrypted content
(the credentials.json file).</p>
+
+<h3>Obfuscating Passwords using the Jetty Password Tool</h3>
+
+<p>Security best practices advise to not use plain text passwords and Jetty
provides a password tool to help obfuscating the passwords used to access the
KeyStore and TrustStore.</p>
+
+<p>The Password tool documentation can be found <a
href="http://www.eclipse.org/jetty/documentation/current/configuring-security-secure-passwords.html">here</a>.</p>
+
+<p>After using the tool:</p>
+<div class="highlight"><pre><code class="language-bash"
data-lang="bash"><span></span>java -cp <span
class="nv">$ZEPPELIN_HOME</span>/zeppelin-server/target/lib/jetty-util-9.2.15.v20160210.jar
<span class="se">\</span>
+ org.eclipse.jetty.util.security.Password <span class="se">\</span>
+ password
+
+<span class="m">2016</span>-12-15 <span
class="m">10</span>:46:47.931:INFO::main: Logging initialized @101ms
+password
+OBF:1v2j1uum1xtv1zej1zer1xtn1uvk1v1v
+MD5:5f4dcc3b5aa765d61d8327deb882cf99
+</code></pre></div>
+<p>update your configuration with the obfuscated password :</p>
+<div class="highlight"><pre><code class="language-xml"
data-lang="xml"><span></span><span class="nt"><property></span>
+ <span class="nt"><name></span>zeppelin.ssl.keystore.password<span
class="nt"></name></span>
+ <span
class="nt"><value></span>OBF:1v2j1uum1xtv1zej1zer1xtn1uvk1v1v<span
class="nt"></value></span>
+ <span class="nt"><description></span>Keystore password. Can be
obfuscated by the Jetty Password tool<span
class="nt"></description></span>
+<span class="nt"></property></span>
+</code></pre></div>
+<h3>Create GitHub Access Token</h3>
+
+<p>When using GitHub to track notebooks, one can use GitHub's API for
authentication. To create an access token, please use the following link
https://github.com/settings/tokens.
+The value of the access token generated is set in the
<code>zeppelin.notebook.git.remote.access-token</code> property.</p>
+
+<p><strong>Note:</strong> After updating these configurations, Zeppelin server
needs to be restarted.</p>
+
+ </div>
+</div>
+
+
+ <hr>
+ <footer>
+ <!-- <p>© 2019 The Apache Software Foundation</p>-->
+ </footer>
+ </div>
+
+
+
+
+ <script type="text/javascript">
+ (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','//www.google-analytics.com/analytics.js','ga');
+
+ ga('create', 'UA-45176241-5', 'zeppelin.apache.org');
+ ga('require', 'linkid', 'linkid.js');
+ ga('send', 'pageview');
+
+</script>
+
+
+
+ </body>
+</html>
+
Propchange: zeppelin/site/docs/0.8.2/setup/operation/configuration.html
------------------------------------------------------------------------------
svn:executable = *