专栏首页极客运维【Dr.Elephant中文文档-3】快速安装说明

【Dr.Elephant中文文档-3】快速安装说明

快速安装说明

Step 1: 在 GitHub 上注册一个账号,并 fork 一份Dr. Elephant项目代码。

Step 2: 检出代码。

$> git clone https://github.com/<username>/dr-elephant
$> cd dr-elephant*

Step 3: 先决条件:

  • 你必须先安装play或者activator命令行。下载activatorzip 包https://downloads.typesafe.com/typesafe-activator/1.3.12/typesafe-activator-1.3.12.zip ,解压并添加activator命令到你自己的环境变量$PATH。对于老版的play,你需要添加paly命令并替换activator
export ACTIVATOR_HOME=/path/to/unzipped/activator
export PATH=$ACTIVATOR_HOME/bin:$PATH
  • Dr.Elephant将分析数据结果存储在 MySQL 数据中。如果你还没装,请先安装好 MySQL。(推荐 5.5 以上版本)
  • 为了正常使用Dr. ElephantUI 界面,需要安装npm及其依赖
sudo yum install npm
sudo npm install -g bower
cd web; bower install; cd ..
  • 最后,你还需要安装好 Hadoop 或者 Spark。

Step 4:(可选,Beta 阶段)如果你想尝试自动优化的新功能,请按照以下步骤来操作。(更多详情:https://github.com/linkedin/dr-elephant/wiki/Auto-Tuning)

  • 修改app-conf/AutoTuningConf.xmlautotuning.enabled的选项为true来启用自动优化功能
  • 安装 python2.6 以上的版本
  • 如果你想使用自定义安装的 python 版本: $> export PYTHON_PATH=/path/to/python/executable
    • 或者注释app-conf/AutoTuningConf.xml配置文件中的python.path选项。
    • PYTHON_PATH设置为所需要的 python 版本的可执行文件路径即可:
  • 安装inspyred包: sudo pip install inspyred
  • 如果 pip 安装失败,可以从https://pip.pypa.io/en/stable/installing/ 处安装。

Step 5: 编译Dr. Elephant代码并打包生产zip包。Compile.sh脚本可以带一个配置文件路径参数,其中包含要编译的 Hadoop 和 Spark 的版本信息。具体信息请参阅开发者指南。

$> ./compile.sh [./compile.conf]

编译完成后,打包文件在dist目录下。

$> ls dist
dr-elephant*.zip

Step 6: 复制打包后的程序到你打算安装Dr. Elephant的服务器上。

Step 7: 在你安装Dr. Elephant的服务器上,确认以下环境变量配置好了。

$> export HADOOP_HOME=/path/to/hadoop/home
$> export HADOOP_CONF_DIR=$HADOOP_HOME/etc/hadoop
$> export SPARK_HOME=/path/to/spark/home
$> export SPARK_CONF_DIR=/path/to/conf

Step 8: 你同样需要一个存储数据的后端数据库。在elephant.conf配置文件中配置 MySQL 数据库的相关连接信息。

# Database configuration
db_url=localhost
db_name=drelephant
db_user=root
db_password=""

Step 9: 如果你的群集是kerberised,则更新keytab用户和elephant.conf文件中的keytab文件位置。

Step 10: 如果你是第一次运行Dr. Elephant,你需要打开evolutions功能,为此,请在elephant.conf配置文件中添加(或取消注释),-Devolutionplugin=enabled-DapplyEvolutions.default=true。这将会让Dr. Elephant自动创建相关的 MySQL 表,下次重启程序时记得关闭这个选项。

$> vim ./app-conf/elephant.conf
jvm_props=" -Devolutionplugin=enabled -DapplyEvolutions.default=true"

Step 11: 要启动Dr. Elephant,需要在运行启动脚本时指定配置文件目录。

$> /bin/start.sh /path/to/app-conf/directory

要验证Dr. Elephant是否启动成功,请检查dr.log文件。

$> less $DR_RELEASE/dr.log
...
play - database [default] connected at jdbc:mysql://localhost/drelephant?characterEncoding=UTF-8
application - Starting Application...
play - Application started (Prod)
play - Listening for HTTP on /0:0:0:0:0:0:0:0:8080

要分析Dr. Elephant是否正确的分析作业,请检查dr.log文件。

$> less $DR_RELEASE/../logs/elephant/dr_elephant.log

Step 12: 一旦应用启动,你可以打开 ip:port (localhost:8080),查看 UI 界面。

Step 13: 要停止应用,只需执行

$> bin/stop.sh

本文分享自微信公众号 - 极客运维(hypernetworker),作者:hyperxu

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2019-10-28

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 【Dr.Elephant中文文档-4】开发者指南

    为了在本地部署Dr.Elephant测试,你需要安装Hadoop(version 2.x)或者Spark(Yarn mode, version > 1.4.0)...

    一条老狗
  • 【Dr.Elephant中文文档-1】Dr. Elephant简介

    Dr. Elephant是一个Hadoop和Spark的性能监控和调优工具。它能自动采集作业的度量指标并分析他,然后以简单明了的方式展现出来。Dr. Eleph...

    一条老狗
  • kafka集群扩容后的数据均衡

    生产环境的kafka集群扩容,是一个比较常见的需求和操作。然而kafka在新增节点后并不会像elasticsearch那样感知到新节点加入后,自动将数据rebl...

    一条老狗
  • python实现线性回归之岭回归

    上述式子中w为长度为n的向量,不包括偏置项的系数 θ0,θ是长度为n+1的向量,包括偏置项系数θ0;m为样本数,n为特征数。

    绝命生
  • Libra硬刚微信、支付宝? 你也试试!

    本文是 「Libra 编程」系列文章的第 3 篇,也是最后一篇。在之前的两篇文章,我们分别探讨了 Libra 项目的技术意义以及 Libra Client 与 ...

    区块链大本营
  • 【SAP S/4 1511之变】:主数据之变

          本博文主要讲述SAP S/4 1511版本的变化,主要是跟ECC版本的对比。变化还是挺多的,相当一部分是后勤,但绝大部分还是财务成本这一块。作为从事...

    SAP梦心
  • vue之vue-router传值

    开发架构二三事
  • 如何通过Java代码判断当前的环境是否支持JRE 9

    JDK9已经出来有一段时间了,因此很多流行的Java应用纷纷增添了对JDK9乃至JDK10的支持,比如Tomcat。

    Jerry Wang
  • 用代码判断当前系统是否支持某个版本的feature

    版权声明:本文为博主汪子熙原创文章,未经博主允许不得转载。 https://jerry.blog.c...

    Jerry Wang
  • 世界上最奇葩的编程语言,认真的吗?

    有些编程语言,格外地不一样!下班路上,来认识认识这几个“特别”的语言吧,不知道你有没有用过呢~

    养码场

扫码关注云+社区

领取腾讯云代金券