This is an automated email from the ASF dual-hosted git repository.

nic pushed a commit to branch 3.0.x
in repository https://gitbox.apache.org/repos/asf/kylin.git

commit 31cca883cd242bd958dd3ca1188ae7b7b8b9f2e1
Author: weibin0516 <codingfor...@126.com>
AuthorDate: Wed Nov 13 14:15:53 2019 +0800

    KYLIN-4251 Add livy to docker
---
 docker/Dockerfile       | 24 ++++++++++++++++++++++--
 docker/entrypoint.sh    | 12 ++++++++++++
 docker/run_container.sh |  1 +
 3 files changed, 35 insertions(+), 2 deletions(-)

diff --git a/docker/Dockerfile b/docker/Dockerfile
index 5be1ae4..06d051e 100644
--- a/docker/Dockerfile
+++ b/docker/Dockerfile
@@ -26,16 +26,21 @@ ENV HBASE_VERSION 1.1.2
 ENV SPARK_VERSION 2.3.1
 ENV ZK_VERSION 3.4.6
 ENV KAFKA_VERSION 1.1.1
+ENV LIVY_VERSION 0.6.0
+ENV KYLIN_VERSION 3.0.0-alpha2
 
 ENV JAVA_HOME /home/admin/jdk1.8.0_141
 ENV MVN_HOME /home/admin/apache-maven-3.6.1
 ENV HADOOP_HOME /home/admin/hadoop-$HADOOP_VERSION
 ENV HIVE_HOME /home/admin/apache-hive-$HIVE_VERSION-bin
 ENV HADOOP_CONF $HADOOP_HOME/etc/hadoop
+ENV HADOOP_CONF_DIR $HADOOP_HOME/etc/hadoop
 ENV HBASE_HOME /home/admin/hbase-$HBASE_VERSION
 ENV SPARK_HOME /home/admin/spark-$SPARK_VERSION-bin-hadoop2.6
+ENV SPARK_CONF_DIR /home/admin/spark-$SPARK_VERSION-bin-hadoop2.6/conf
 ENV ZK_HOME /home/admin/zookeeper-$ZK_VERSION
 ENV KAFKA_HOME /home/admin/kafka_2.11-$KAFKA_VERSION
+ENV LIVY_HOME /home/admin/apache-livy-$LIVY_VERSION-incubating-bin
 ENV PATH 
$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HIVE_HOME/bin:$HBASE_HOME/bin:$MVN_HOME/bin:spark-$SPARK_VERSION-bin-hadoop2.6/bin:$KAFKA_HOME/bin
 
 USER root
@@ -43,7 +48,7 @@ USER root
 WORKDIR /home/admin
 
 # install tools
-RUN yum -y install lsof.x86_64 wget.x86_64 tar.x86_64 git.x86_64 
mysql-server.x86_64 mysql.x86_64
+RUN yum -y install lsof.x86_64 wget.x86_64 tar.x86_64 git.x86_64 
mysql-server.x86_64 mysql.x86_64 unzip.x86_64
 
 # install mvn
 RUN wget 
http://mirrors.ocf.berkeley.edu/apache/maven/maven-3/3.6.1/binaries/apache-maven-3.6.1-bin.tar.gz
 \
@@ -88,17 +93,32 @@ RUN wget 
https://archive.apache.org/dist/spark/spark-$SPARK_VERSION/spark-$SPARK
     && rm -f /home/admin/spark-$SPARK_VERSION-bin-hadoop2.6.tgz \
     && cp $HIVE_HOME/conf/hive-site.xml $SPARK_HOME/conf \
     && cp $SPARK_HOME/yarn/*.jar $HADOOP_HOME/share/hadoop/yarn/lib
+RUN cp $HIVE_HOME/lib/mysql-connector-java-5.1.24.jar $SPARK_HOME/jars
+RUN echo spark.sql.catalogImplementation=hive > 
$SPARK_HOME/conf/spark-defaults.conf
 
 # setup kafka
 RUN wget 
https://archive.apache.org/dist/kafka/$KAFKA_VERSION/kafka_2.11-$KAFKA_VERSION.tgz
 \
     && tar -zxvf /home/admin/kafka_2.11-$KAFKA_VERSION.tgz \
     && rm -f /home/admin/kafka_2.11-$KAFKA_VERSION.tgz
 
+# setup livy
+RUN 
wgethttps://www.apache.org/dist/incubator/livy/$LIVY_VERSION-incubating/apache-livy-$LIVY_VERSION-incubating-bin.zip
 \
+    && unzip /home/admin/apache-livy-$LIVY_VERSION-incubating-bin.zip \
+    && rm -f /home/admin/apache-livy-$LIVY_VERSION-incubating-bin.zip
+
 # copy kylin source code
 COPY ./kylin /home/admin/kylin_sourcecode
+
 RUN sed -i -e 's#<!--<version>3.4.1</version>-->#<version>3.4.1</version>#g' 
/home/admin/kylin_sourcecode/pom.xml \
     && echo "kylin.engine.spark-conf.spark.executor.memory=1G" >> 
/home/admin/kylin_sourcecode/build/conf/kylin.properties \
-    && echo "kylin.engine.spark-conf-mergedict.spark.executor.memory=1.5G" >> 
/home/admin/kylin_sourcecode/build/conf/kylin.properties
+    && echo "kylin.engine.spark-conf-mergedict.spark.executor.memory=1.5G" >> 
/home/admin/kylin_sourcecode/build/conf/kylin.properties \
+    && echo "kylin.engine.livy-conf.livy-url=http://127.0.0.1:8998"; >> 
/home/admin/kylin_sourcecode/build/conf/kylin.properties \
+    && echo 
kylin.engine.livy-conf.livy-key.file=hdfs://localhost:9000/kylin/livy/kylin-job-$KYLIN_VERSION.jar
 >> /home/admin/kylin_sourcecode/build/conf/kylin.properties \
+    && echo 
kylin.engine.livy-conf.livy-arr.jars=hdfs://localhost:9000/kylin/livy/hbase-client-$HBASE_VERSION.jar,hdfs://localhost:9000/kylin/livy/hbase-common-$HBASE_VERSION.jar,hdfs://localhost:9000/kylin/livy/hbase-hadoop-compat-$HBASE_VERSION.jar,hdfs://localhost:9000/kylin/livy/hbase-hadoop2-compat-$HBASE_VERSION.jar,hdfs://localhost:9000/kylin/livy/hbase-server-$HBASE_VERSION.jar,hdfs://localhost:9000/kylin/livy/htrace-core-*-incubating.jar,hdfs://localhost:9000/kylin/livy/metrics-
 [...]
+    && echo kylin.source.hive.quote-enabled=false >> 
/home/admin/kylin_sourcecode/build/conf/kylin.properties \
+    && echo 
kylin.engine.spark-conf.spark.eventLog.dir=hdfs://localhost:9000/kylin/spark-history
 >> /home/admin/kylin_sourcecode/build/conf/kylin.properties \
+    && echo 
kylin.engine.spark-conf.spark.history.fs.logDirectory=hdfs://localhost:9000/kylin/spark-history
 >> /home/admin/kylin_sourcecode/build/conf/kylin.properties \
+    && echo kylin.source.hive.redistribute-flat-table=false >> 
/home/admin/kylin_sourcecode/build/conf/kylin.properties
 
 COPY ./entrypoint.sh /home/admin/entrypoint.sh
 RUN chmod u+x /home/admin/entrypoint.sh
diff --git a/docker/entrypoint.sh b/docker/entrypoint.sh
index 2fe1d7f..97c0be8 100644
--- a/docker/entrypoint.sh
+++ b/docker/entrypoint.sh
@@ -47,6 +47,18 @@ $HBASE_HOME/bin/start-hbase.sh
 rm -rf /tmp/kafka-logs
 nohup $KAFKA_HOME/bin/kafka-server-start.sh 
$KAFKA_HOME/config/server.properties &
 
+# start livy
+hdfs dfs -mkdir -p /kylin/livy
+hdfs dfs -put -f $HBASE_HOME/lib/hbase-client-$HBASE_VERSION.jar 
hdfs://localhost:9000/kylin/livy/
+hdfs dfs -put -f $HBASE_HOME/lib/hbase-common-$HBASE_VERSION.jar 
hdfs://localhost:9000/kylin/livy/
+hdfs dfs -put -f $HBASE_HOME/lib/hbase-hadoop-compat-$HBASE_VERSION.jar 
hdfs://localhost:9000/kylin/livy/
+hdfs dfs -put -f $HBASE_HOME/lib/hbase-hadoop2-compat-$HBASE_VERSION.jar 
hdfs://localhost:9000/kylin/livy/
+hdfs dfs -put -f $HBASE_HOME/lib/hbase-server-$HBASE_VERSION.jar 
hdfs://localhost:9000/kylin/livy/
+hdfs dfs -put -f $HBASE_HOME/lib/htrace-core-*-incubating.jar 
hdfs://localhost:9000/kylin/livy/
+hdfs dfs -put -f $HBASE_HOME/lib/metrics-core-*.jar 
hdfs://localhost:9000/kylin/livy/
+hdfs dfs -put -f $KYLIN_HOME/lib/kylin-job-$KYLIN_VERSION.jar 
hdfs://localhost:9000/kylin/livy/
+$LIVY_HOME/bin/livy-server start
+
 # prepare kafka topic and data
 $KAFKA_HOME/bin/kafka-topics.sh --create --zookeeper localhost:2181 
--replication-factor 1 --partitions 3 --topic kylin_streaming_topic
 
diff --git a/docker/run_container.sh b/docker/run_container.sh
index a0acc2f..5213c55 100644
--- a/docker/run_container.sh
+++ b/docker/run_container.sh
@@ -23,4 +23,5 @@ docker run -d \
 -p 8032:8032 \
 -p 8042:8042 \
 -p 60010:60010 \
+-p 8998:8998 \
 apache-kylin-standalone
\ No newline at end of file

Reply via email to