注意:如果是基于 Kubernetes 容器的话,部署 Zeppelin 无法使用。
1. 下载
在官网下载页面 https://zeppelin.apache.org/download.html 下载 Zeeplin 安装包,历史版本可选择在 https://archive.apache.org/dist/ 下载。
$ wget -c https://dlcdn.apache.org/zeppelin/zeppelin-0.10.0/zeppelin-0.10.0-bin-all.tgz
$ tar vf zeppelin-0.10.0-bin-all.tgz -C ~/bigdata
$ mv zeppelin-0.10.0-bin-all zeppelin-0.10.0
2. 修改配置文件
$ cp conf/zeppelin-site.xml.template conf/zeppelin-site.xml
$ alias zeppelin=/home/yumingmin/bigdata/zeppelin-0.10.0-bin-all/bin/zeppelin-daemon.sh # 可添加到配置环境中
主要修改 IP 、端口、 notebook 路径以及 Job Manager 的部分:
<property>
<name>zeppelin.server.addr</name>
<value>0.0.0.0</value>
<description>Server binding address</description>
</property>
<property>
<name>zeppelin.server.port</name>
<value>8998</value>
<description>Server port.</description>
</property>
<property>
<name>zeppelin.notebook.dir</name>
<value>/opt/workspace/khzx_team_drive/yumingmin/notebooks</value>
<description>path or URI for notebook persist</description>
</property>
<property>
<name>zeppelin.jobmanager.enable</name>
<value>true</value>
<description>The Job tab in zeppelin page seems not so useful instead it cost lots of memory and affect the performance.
Disable it can save lots of memory</description>
</property>
3. 设置用户登录验证
Zeeplin 默认使用时 Shiro 进行验证的,但是它也支持 LDAP 的方式来进行用户验证。
$ cp conf/shiro.ini.template conf/shiro.ini
修改 conf/shiro.ini 配置文件,其余暂不需要修改
[users]
admin = admin, admin
yumingmin = yumingmin, role1
4. 安装Python相关库
如果需要跑通 Zeeplin 官方提供的所有 Python 示例,需要安装以下库:
$ conda install matplotlib pandas grpcio protobuf jupyter seaborn
$ conda install bokeh Holoviews altair hvplot plotly intake vega_datasets
$ pip install ipykernel pyspark plotnine intake-parquet msgpack intake-xarray keras==2.4.0 tensorflow==2.4.0
Zepplin 需要使用 Python 3.7.11,使用 3.8 以上会有 BUG,会报 TypeError: required field “type_ignores“ missing from Module
错误
5. 安装 R 解释器
$ install.packages('IRkernel', repos = 'https://mirrors.tuna.tsinghua.edu.cn/CRAN/')
$ IRkernel::installspec()
$ install.packages(c('devtools', 'ggplot2', 'knitr'), repos = 'https://mirrors.tuna.tsinghua.edu.cn/CRAN/')
$ install.packages(c('devtools','mplot', 'googleVis'), repos = 'https://mirrors.tuna.tsinghua.edu.cn/CRAN/'); require(devtools); install_github('ramnathv/rCharts')
$ install.packages(c('markdown', 'data.table', 'knitr'), repos = 'https://mirrors.tuna.tsinghua.edu.cn/CRAN/')
报错:No module named ‘mpl_config’
[
](https://www.cnblogs.com/huanghanyu/p/13792739.html)
Kubernetes 上并不行,使用任何解释器报错:
io.fabric8.kubernetes.client.KubernetesClientException: Failure executing: POST at: https://kubernetes.default.svc/api/v1/namespaces/default/pods. Message: Forbidden!Configured service account doesn't have access. Service account may have been revoked. pods is forbidden: User "system:serviceaccount:default:default" cannot create resource "pods" in API group "" in the namespace "default".