Reorganize interpreter installation docs

This commit is contained in:
AhyoungRyu 2016-06-21 23:40:31 -07:00 committed by Lee moon soo
parent 4c1f029078
commit 13899fb05b
3 changed files with 205 additions and 176 deletions

View file

@ -42,6 +42,7 @@
<li><a href="{{BASE_PATH}}/manual/interpreters.html">Overview</a></li>
<li role="separator" class="divider"></li>
<li class="title"><span><b>Usage</b><span></li>
<li><a href="{{BASE_PATH}}/manual/interpreterinstallation.html">Interpreter Installation</a></li>
<li><a href="{{BASE_PATH}}/manual/dynamicinterpreterload.html">Dynamic Interpreter Loading</a></li>
<li><a href="{{BASE_PATH}}/manual/dependencymanagement.html">Interpreter Dependency Management</a></li>
<li role="separator" class="divider"></li>
@ -109,4 +110,4 @@
</ul>
</nav><!--/.navbar-collapse -->
</div>
</div>
</div>

View file

@ -19,115 +19,40 @@ limitations under the License.
-->
{% include JB/setup %}
# Quick Start
Welcome to your first trial to explore Apache Zeppelin!
This page will help you to get started and here is the list of topics covered.
## Zeppelin Installation
Welcome to your first trial to explore Zeppelin!
* [Installation](#installation)
* [Downloading Binary Package](#downloading-binary-package)
* [Building from Source](#building-from-source)
* [Starting Apache Zeppelin with Command Line](#starting-apache-zeppelin-with-command-line)
* [Start Zeppelin](#start-zeppelin)
* [Stop Zeppelin](#stop-zeppelin)
* [(Optional) Start Apache Zeppelin with a service manager](#optional-start-apache-zeppelin-with-a-service-manager)
* [What is the next?](#what-is-the-next)
* [Apache Zeppelin Configuration](#apache-zeppelin-configuration)
In this documentation, we will explain how you can install Zeppelin from **Binary Package** or build from **Source** by yourself. Plus, you can see all of Zeppelin's configurations in the [Zeppelin Configuration](install.html#zeppelin-configuration) section below.
## Installation
### Install with Binary Package
Apache Zeppelin officially supports and is tested on next environments.
If you want to install Zeppelin with latest binary package, please visit [this page](http://zeppelin.apache.org/download.html).
<table class="table-configuration">
<tr>
<th>Name</th>
<th>Value</th>
</tr>
<tr>
<td>Oracle JDK</td>
<td>1.7 <br /> (set <code>JAVA_HOME</code>)</td>
</tr>
<tr>
<td>OS</td>
<td>Mac OSX <br /> Ubuntu 14.X <br /> CentOS 6.X <br /> Windows 7 Pro SP1</td>
</tr>
</table>
If you have downloaded `netinst` binary, [install additional interpreters](../manual/interpreterinstallation.html) before you start Zeppelin. Or simply run `./bin/install-interpreter.sh --all`.
There are two options to install Apache Zeppelin on your machine. One is [downloading prebuild binary package](#downloading-binary-package) from the archive.
You can download not only the latest stable version but also the older one if you need.
The other option is [building from the source](#building-from-source).
Although it can be unstable somehow since it is on development status, you can explore newly added feature and change it as you want.
### Build from Zeppelin Source
### Downloading Binary Package
You can also build Zeppelin from the source.
If you want to install Apache Zeppelin with a stable binary package, please visit [Apache Zeppelin download Page](http://zeppelin.apache.org/download.html).
After unpacking, jump to [Starting Apache Zeppelin with Command Line](#starting-apache-zeppelin-with-command-line) section.
#### Prerequisites for build
* Java 1.7
* Git
* Maven(3.1.x or higher)
* Node.js Package Manager
If you have downloaded `netinst` binary, [install additional interpreters](http://localhost:4000/install/install.html#install-interpreters) or simply run `./bin/install-interpreter.sh --all` before you jump to [Starting Apache Zeppelin with Command Line](#starting-apache-zeppelin-with-command-line) section.
If you don't have requirements prepared, please check instructions in [README.md](https://github.com/apache/zeppelin/blob/master/README.md) for the details.
### Building from Source
If you want to build from the source, the software below needs to be installed on your system.
<table class="table-configuration">
<tr>
<th>Name</th>
<th>Value</th>
</tr>
<tr>
<td>Git</td>
<td></td>
</tr>
<tr>
<td>Maven</td>
<td>3.1.x or higher</td>
</tr>
</table>
If you don't have it installed yet, please check [Before Build](https://github.com/apache/zeppelin/blob/master/README.md#before-build) section and follow step by step instructions from there.
Maybe you need to configure individual interpreter. If so, please check **Interpreter** section in Zeppelin documentation.
[Spark Interpreter for Apache Zeppelin](../interpreter/spark.html) will be a good example.
####1. Clone Apache Zeppelin repository
```
git clone https://github.com/apache/zeppelin.git
```
####2. Build source with options
Each interpreters requires different build options. For the further information about options, please see [Build](https://github.com/apache/zeppelin#build) section.
```
mvn clean package -DskipTests [Options]
```
Here are some examples with several options
```
# basic build
mvn clean package -Pspark-1.6 -Phadoop-2.4 -Pyarn -Ppyspark
# spark-cassandra integration
mvn clean package -Pcassandra-spark-1.5 -Dhadoop.version=2.6.0 -Phadoop-2.6 -DskipTests
# with CDH
mvn clean package -Pspark-1.5 -Dhadoop.version=2.6.0-cdh5.5.0 -Phadoop-2.6 -Pvendor-repo -DskipTests
# with MapR
mvn clean package -Pspark-1.5 -Pmapr50 -DskipTests
```
For the further information about building with source, please see [README.md](https://github.com/apache/zeppelin/blob/master/README.md) in Zeppelin repository.
## Starting Apache Zeppelin with Command Line
## Zeppelin Start / Stop
#### Start Zeppelin
```
bin/zeppelin-daemon.sh start
```
If you are using Windows
```
bin\zeppelin.cmd
```
After successful start, visit [http://localhost:8080](http://localhost:8080) with your web browser.
#### Stop Zeppelin
@ -136,28 +61,21 @@ After successful start, visit [http://localhost:8080](http://localhost:8080) wit
bin/zeppelin-daemon.sh stop
```
#### (Optional) Start Apache Zeppelin with a service manager
#### Start Zeppelin with a service manager such as upstart
> **Note :** The below description was written based on Ubuntu Linux.
Zeppelin can auto start as a service with an init script, such as services managed by upstart.
Apache Zeppelin can be auto started as a service with an init script, such as services managed by **upstart**.
The following is an example of upstart script to be saved as `/etc/init/zeppelin.conf`
The following is an example upstart script to be saved as `/etc/init/zeppelin.conf`
This example has been tested with Ubuntu Linux.
This also allows the service to be managed with commands such as
```
sudo service zeppelin start
sudo service zeppelin stop
sudo service zeppelin restart
```
`sudo service zeppelin start`
`sudo service zeppelin stop`
`sudo service zeppelin restart`
Other service managers could use a similar approach with the `upstart` argument passed to the `zeppelin-daemon.sh` script.
Other service managers could use a similar approach with the `upstart` argument passed to the zeppelin-daemon.sh script: `bin/zeppelin-daemon.sh upstart`
```
bin/zeppelin-daemon.sh upstart
```
**zeppelin.conf**
##### zeppelin.conf
```
description "zeppelin"
@ -177,16 +95,15 @@ chdir /usr/share/zeppelin
exec bin/zeppelin-daemon.sh upstart
```
## What is the next?
Congratulation on your successful Apache Zeppelin installation! Here are two next steps you might need.
#### Running on Windows
* For an in-depth overview of Apache Zeppelin UI, head to [Explore Apache Zeppelin UI](../quickstart/explorezeppelinui.html)
* After getting familiar with Apache Zeppelin UI, have fun with a short walk-through [Tutorial](../quickstart/tutorial.html) that uses Apache Spark backend
* If you need more configuration setting for Apache Zeppelin, jump to the next section: [Apache Zeppelin Configuration](#apache-zeppelin-configuration)
```
bin\zeppelin.cmd
```
## Apache Zeppelin Configuration
## Zeppelin Configuration
You can configure Apache Zeppelin with both **environment variables** in `conf/zeppelin-env.sh` (`conf\zeppelin-env.cmd` for Windows) and **Java properties** in `conf/zeppelin-site.xml`. If both are defined, then the **environment variables** will take priority.
You can configure Zeppelin with both **environment variables** in `conf/zeppelin-env.sh` (`conf\zeppelin-env.cmd` for Windows) and **Java properties** in `conf/zeppelin-site.xml`. If both are defined, then the **environment variables** will take priority.
<table class="table-configuration">
<tr>
@ -295,13 +212,13 @@ You can configure Apache Zeppelin with both **environment variables** in `conf/z
<td>ZEPPELIN_NOTEBOOK_HOMESCREEN</td>
<td>zeppelin.notebook.homescreen</td>
<td></td>
<td>A notebook id displayed in Apache Zeppelin homescreen <br />i.e. 2A94M5J1Z</td>
<td>A notebook id displayed in Zeppelin homescreen <br />i.e. 2A94M5J1Z</td>
</tr>
<tr>
<td>ZEPPELIN_NOTEBOOK_HOMESCREEN_HIDE</td>
<td>zeppelin.notebook.homescreen.hide</td>
<td>false</td>
<td>This value can be "true" when to hide the notebook id set by <code>ZEPPELIN_NOTEBOOK_HOMESCREEN</code> on the Apache Zeppelin homescreen. <br />For the further information, please read <a href="../manual/notebookashomepage.html">Customize your Zeppelin homepage</a>.</td>
<td>This value can be "true" when to hide the notebook id set by <code>ZEPPELIN_NOTEBOOK_HOMESCREEN</code> on the Zeppelin homescreen. <br />For the further information, please read <a href="../manual/notebookashomepage.html">Customize your Zeppelin homepage</a>.</td>
</tr>
<tr>
<td>ZEPPELIN_WAR_TEMPDIR</td>
@ -313,13 +230,13 @@ You can configure Apache Zeppelin with both **environment variables** in `conf/z
<td>ZEPPELIN_NOTEBOOK_DIR</td>
<td>zeppelin.notebook.dir</td>
<td>notebook</td>
<td>The root directory where notebook directories are saved</td>
<td>The root directory where Zeppelin notebook directories are saved</td>
</tr>
<tr>
<td>ZEPPELIN_NOTEBOOK_S3_BUCKET</td>
<td>zeppelin.notebook.s3.bucket</td>
<td>zeppelin</td>
<td>S3 Bucket where notebook files will be saved</td>
<td>S3 Bucket where Zeppelin notebook files will be saved</td>
</tr>
<tr>
<td>ZEPPELIN_NOTEBOOK_S3_USER</td>
@ -355,7 +272,7 @@ You can configure Apache Zeppelin with both **environment variables** in `conf/z
<td>ZEPPELIN_NOTEBOOK_AZURE_SHARE</td>
<td>zeppelin.notebook.azure.share</td>
<td>zeppelin</td>
<td>Share where the notebook files will be saved</td>
<td>Share where the Zeppelin notebook files will be saved</td>
</tr>
<tr>
<td>ZEPPELIN_NOTEBOOK_AZURE_USER</td>
@ -376,13 +293,13 @@ You can configure Apache Zeppelin with both **environment variables** in `conf/z
<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 /> The first interpreter will be a default value. <br /> It means only the first interpreter in this list can be available without <code>%interpreter_name</code> annotation in notebook paragraph. </td>
<td>Comma separated interpreter configurations [Class] <br /> The first interpreter will be a default value. <br /> It means only the first interpreter in this list can be available without <code>%interpreter_name</code> annotation in Zeppelin notebook paragraph. </td>
</tr>
<tr>
<td>ZEPPELIN_INTERPRETER_DIR</td>
<td>zeppelin.interpreter.dir</td>
<td>interpreter</td>
<td>Interpreter directory</td>
<td>Zeppelin interpreter directory</td>
</tr>
<tr>
<td>ZEPPELIN_WEBSOCKET_MAX_TEXT_MESSAGE_SIZE</td>
@ -391,56 +308,3 @@ You can configure Apache Zeppelin with both **environment variables** in `conf/z
<td>Size in characters of the maximum text message to be received by websocket.</td>
</tr>
</table>
## Install interpreters
You can install additional [interpreters](../manual/interpreters.html) using `bin/install-interpreter.sh` command.
### Community managed interpreters
Informations of community managed interpreters are listed in `conf/interpreter-list` file. `bin/install-interpreter.sh` command will read this file to install interpreters.
##### Install all community managed interpreters
```
./bin/install-interpreter.sh --all
```
##### Install specific interpreters
```
./bin/install-interpreter.sh --name md,shell,jdbc,python
```
You can get full list of community managed interpreters by running
```
./bin/install-interpreter.sh --list
```
Once you have installed interpreter, restart Zeppelin. And then you'll need [create interpreter setting](../manual/interpreters.html#what-is-zeppelin-interpreter) and [binding it with your notebook](../manual/interpreters.html#what-is-zeppelin-interpreter-setting).
### 3rd party interpreters
`./bin/install-interpreter.sh` command can install 3rd party interpreters available in maven repository.
##### Install 3rd party interpreters
```
./bin/install-interpreter.sh --name interpreter1 --repository groupId1:artifact1:version1
```
The command will download maven artifact `groupId1:artifact1:version1` and all of it's transitive dependencies into `interpreter/interpreter1` directory.
Once you have installed interpreters, you'll need to add interpreter class name into `zeppelin.interpreters` property in [configuration](install.html#zeppelin-configuration).
And then restart Zeppelin, [create interpreter setting](../manual/interpreters.html#what-is-zeppelin-interpreter) and [binding it with your notebook](../manual/interpreters.html#what-is-zeppelin-interpreter-setting).
##### Install multiple 3rd party interpreters at once
`--name` and `--repository` argument receives comma separated list
```
./bin/install-interpreter.sh --name interpreter1,interpreter2 --repository groupId1:artifact1:version1,groupId2:artifact2:version2
```

View file

@ -0,0 +1,164 @@
---
layout: page
title: "Getting Started"
description: ""
group: install
---
<!--
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.
-->
{% include JB/setup %}
# Interpreter Installation
Apache Zeppelin provides **Interpreter Installation** mechanism for whom downloaded Zeppelin `netinst` binary package, or just want to install another 3rd party interpreters.
## Community managed interpreters
Apache Zeppelin provides several interpreters as [community managed interpreters](#available-community-managed-interpreters).
If you downloaded `netinst` binary package, you need to install by using below commands.
#### Install all community managed interpreters
```
./bin/install-interpreter.sh --all
```
#### Install specific interpreters
```
./bin/install-interpreter.sh --name md,shell,jdbc,python
```
You can get full list of community managed interpreters by running
```
./bin/install-interpreter.sh --list
```
Once you have installed interpreter, restart Zeppelin. And then you'll need to [create interpreter setting](../manual/interpreters.html#what-is-zeppelin-interpreter) and [bind it with your notebook](../manual/interpreters.html#what-is-zeppelin-interpreter-setting).
## 3rd party interpreters
You can also install 3rd party interpreters located in the maven repository by using below commands.
#### Install 3rd party interpreters
```
./bin/install-interpreter.sh --name interpreter1 --repository groupId1:artifact1:version1
```
The above command will download maven artifact `groupId1:artifact1:version1` and all of it's transitive dependencies into `interpreter/interpreter1` directory.
Once you have installed interpreters, you'll need to add interpreter class name into `zeppelin.interpreters` property in [configuration](../install/install.html#zeppelin-configuration).
And then restart Zeppelin, [create interpreter setting](../manual/interpreters.html#what-is-zeppelin-interpreter) and [bind it with your notebook](../manual/interpreters.html#what-is-zeppelin-interpreter-setting).
#### Install multiple 3rd party interpreters at once
```
./bin/install-interpreter.sh --name interpreter1,interpreter2 --repository groupId1:artifact1:version1,groupId2:artifact2:version2
```
`--name` and `--repository` argument will recieve comma separated list.
## Available community managed interpreters
You can also find the below community managed interpreter list in `conf/interpreter-list` file.
<table class="table-configuration">
<tr>
<th>Name</th>
<th>Maven Artifact</th>
<th>Description</th>
</tr>
<tr>
<td>alluxio</td>
<td>org.apache.zeppelin.zeppelin-alluxio:0.6.0</td>
<td>Alluxio interpreter</td>
</tr>
<tr>
<td>angular</td>
<td>org.apache.zeppelin.zeppelin-angular:0.6.0</td>
<td>HTML and AngularJS view rendering</td>
</tr>
<tr>
<td>cassandra</td>
<td>org.apache.zeppelin.zeppelin-cassandra:0.6.0</td>
<td>HTML and AngularJS view rendering</td>
</tr>
<tr>
<td>elasticsearch</td>
<td>org.apache.zeppelin.zeppelin-elasticsearch:0.6.0</td>
<td>Elasticsearch interpreter</td>
</tr>
<tr>
<td>file</td>
<td>org.apache.zeppelin:zeppelin-file:0.6.0</td>
<td>HDFS file interpreter</td>
</tr>
<tr>
<td>flink</td>
<td>org.apache.zeppelin:zeppelin-flink:0.6.0</td>
<td>Flink interpreter</td>
</tr>
<tr>
<td>hbase</td>
<td>org.apache.zeppelin:zeppelin-hbase:0.6.0</td>
<td>Hbase interpreter</td>
</tr>
<tr>
<td>ignite</td>
<td>org.apache.zeppelin:zeppelin-ignite:0.6.0</td>
<td>Ignite interpreter</td>
</tr>
<tr>
<td>jdbc</td>
<td>org.apache.zeppelin:zeppelin-jdbc:0.6.0</td>
<td>Jdbc interpreter</td>
</tr>
<tr>
<td>kylin</td>
<td>org.apache.zeppelin:zeppelin-kylin:0.6.0</td>
<td>Kylin interpreter</td>
</tr>
<tr>
<td>lens</td>
<td>org.apache.zeppelin:zeppelin-lens:0.6.0</td>
<td>Lens interpreter</td>
</tr>
<tr>
<td>livy</td>
<td>org.apache.zeppelin:zeppelin-livy:0.6.0</td>
<td>Livy interpreter</td>
</tr>
<tr>
<td>md</td>
<td>org.apache.zeppelin:zeppelin-markdown:0.6.0</td>
<td>Markdown support</td>
</tr>
<tr>
<td>postgresql</td>
<td>org.apache.zeppelin:zeppelin-postgresql:0.6.0</td>
<td>Postgresql interpreter</td>
</tr>
<tr>
<td>python</td>
<td>org.apache.zeppelin:zeppelin-python:0.6.0</td>
<td>Python interpreter</td>
</tr>
<tr>
<td>shell</td>
<td>org.apache.zeppelin:zeppelin-shell:0.6.0</td>
<td>Shell command</td>
</tr>
</table>