部署环境:Centos7

部署方式:docker部署

步骤:

1---------------------------------------安装JDK1.8

2---------------------------------------安装docker、docker-compose

3---------------------------------------下载源码

4---------------------------------------构建docker镜像

5----------------------------------------启动docker

1.安装jdk1.8

1.1 首先判断本机是否已经安装jdk8

执行命令 #> java -version

提示-bash: java: command not found 代表未安装

提示java version "1.8.x_xxx"代表安装了1.8版本的JDK,数字不同就是不同版本的JDK,本项目必须是1.8.x

1.2 安装对应版本JDK

a.创建jdk目录: #> mkdir -p /usr/local/java

b.下载jdk1.8并上传到linux服务器

c.解压jdk #> tar -zxvf jdk-8u171-linux-x64.tar.gz /usr/local/java

d.配置jdk环境变量:

A> 如果1.1.1步骤中提示已经安装了但是版本不对

获取已经安装jdk环境并修改为现在的jdk版本

 #> echo $JAVA_HOME  ---查看已安装java目录                 #> vi ~/.bash_profile  ---进入编辑文件#> /JAVA_HOME  ----回车找JAVA_HOME#> i        ---进入编辑模式#>JAVA_HOME=/usr/local/java/jdk1.8 ---JAVA_HOME=xxx修改为JAVA_HOME=/usr/local/java/jdk1.8#> :wq#>source ~/bash_profile ---使修改生效在.bash_profile未找到JAVA_HOME执行以下命令#> vi /etc/profile --进入编辑模式#> /JAVA_HOME  ----回车找JAVA_HOME#> i        ---进入编辑模式#>JAVA_HOME=/usr/local/java/jdk1.8 ---JAVA_HOME=xxx修改为JAVA_HOME=/usr/local/java/jdk1.8#> :wq#>source /etc/profile ---使修改生效

B>如果未安装JDK版本

#> vim  /etc/profile   --进入编辑模式

#> vim  /etc/profile   --进入编辑模式#> i    ---进入编辑模式

在文件最后加入

export PATH USER LOGNAME MAIL HOSTNAME HISTSIZE HISTCONTROLexport JAVA_HOME=/usr/local/java/jdk1.8export JRE_HOME=${JAVA_HOME}/jreexport CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/libexport PATH=${JAVA_HOME}/bin:$PATH#> source /etc/profile

使环境变量生效
#> source /etc/profile

验证JDK安装成功

#> java -version ---提示java version "1.8.xxx" 就代表安装成功

2.安装docker、docker-compose、git

#>yum install docker -y
#>yum install docker-compse -y
#>yum install git -y

3.下载源码

git clone https://github.com/linkedin/WhereHows.git

4.构建docker镜像

4.1 修改配置文件及任务脚本

修改backend配置文件

#> vim Wherehows/wherehows-backend/application.conf
# 无需修改
WHZ_KRB5_DIR="/dir/to/krb5conf"# 需要修改为自定义secret,只要不是change_me就可以
WHZ_SECRET="change_me"# Database Connection wherehows本身数据库对应的账号、密码 url 数据库等
WHZ_DB_DRIVER="com.mysql.jdbc.Driver"
WHZ_DB_USERNAME="wherehows"
WHZ_DB_PASSWORD="wherehows"
# Fully qualified jdbc url
WHZ_DB_URL="jdbc:mysql://<ip>:<port>/wherehows"#mysql setup
WHZ_DB_DSCLASSNAME="com.mysql.jdbc.jdbc2.optional.MysqlDataSource"
WHZ_DB_DIALECT="org.hibernate.dialect.MySQLInnoDBDialect"# Directory containing ETL job files  docker 启动无需修改
WHZ_ETL_JOBS_DIR="/var/tmp/jobs"# Temp directory for ETL job docker启动无需修改
WHZ_ETL_TEMP_DIR="/var/tmp/wherehows"

修改Frontend配置文件

#> vim Wherehows/wherehows-frontend/application.conf

参考backend修改

# Secret Key
WHZ_SECRET="change_me"# Database Connection
WHZ_DB_NAME="wherehows"
WHZ_DB_USERNAME="wherehows"
WHZ_DB_PASSWORD="wherehows"# Fully qualified jdbc url
WHZ_DB_URL="jdbc:mysql://<ip>:<port>/wherehows"# Serach Engine
WHZ_SEARCH_ENGINE=elasticsearch# Elasticsearch (Change "localhost" to your Es host )
WHZ_ES_DATASET_URL="http://localhost:9200/wherehows/dataset/_search"
WHZ_ES_METRIC_URL="http://localhost:9200/wherehows/metric/_search"
WHZ_ES_FLOW_URL="http://localhost:9200/wherehows/flow_jobs/_search"# LDAP
WHZ_LDAP_URL=your_ldap_url
WHZ_LDAP_PRINCIPAL_DOMAIN=your_ldap_principal_domain
WHZ_LDAP_SEARCH_BASE=your_ldap_search_base# Piwik tracking configuration
PIWIK_SITE_ID="0000" # change_to_your_piwik_id
PIWIK_URL="change_to_your_piwik_url"
~                   

修改环境变量文件.env

#>cd Wherehows/wherehows-docker
#>vim .env

修改以下内容:

# Secret 未知可以无需更改
WHZ_SECRET=your_crpto_secret# MySQL wherehows本身使用的mysql账号 密码 及数据库名称,这个数据库不要使用阿里云的数据库,阿里云数据库开启了GTID
WHZ_DB_NAME=wherehows
WHZ_DB_USERNAME=wherehows
WHZ_DB_PASSWORD=wherehows# Elasticsearch es配置可以不用修改
WHZ_SEARCH_ENGINE=elasticsearch
WHZ_ES_DATASET_URL=http://localhost:9200/wherehows/dataset/_search
WHZ_ES_METRIC_URL=http://localhost:9200/wherehows/metric/_search
WHZ_ES_FLOW_URL=http://localhost:9200/wherehows/flow_jobs/_search#templateQuery
WHZ_ELASTICSEARCH_DATASET_QUERY_TEMPLATE=/var/tmp/dataset_query_template.json
WHZ_ELASTICSEARCH_METRIC_QUERY_TEMPLATE=/var/tmp/metric_query_template.json
WHZ_ELASTICSEARCH_FLOW_QUERY_TEMPLATE=/var/tmp/flow_query_template.json
WHZ_ELASTICSEARCH_COMMENT_QUERY_TEMPLATE=/var/tmp/comment_query_template.json
WHZ_ELASTICSEARCH_SUGGESTER_QUERY_TEMPLATE=/var/tmp/suggester_query_template.json
WHZ_ELASTICSEARCH_AUTO_COMPLETION_QUERY_TEMPLATE=/var/tmp/auto_completion_query_template.json
WHZ_ELASTICSEARCH_FILTER_UNIT=/var/tmp/filter_unit.json# LDAP 未知也可以暂时不用修改
WHZ_LDAP_URL=your_ldap_url
WHZ_LDAP_PRINCIPAL_DOMAIN=your_ldap_principal_domain
WHZ_LDAP_SEARCH_BASE=your_ldap_search_base
WHZ_APP_HOME=/var/tmp/wherehows

添加hive爬取任务:

把模板拷贝到jobs里面并修改配置

#>cd Wherehows/wherehows-backend
#>cp jobs/templates/HIVE_METADATA_ETL.job ./jobs/
# Fetch Hive dataset metadata# Common ETL configs,corn表达式指定采集的时间间隔
job.class=metadata.etl.dataset.hive.HiveMetadataEtl
job.cron.expr=0 0 19 * * ? *
job.timeout=12000
#job.cmd.params=
#job.disabled=1
job.ref.id=65# hive metastore jdbc hive数据库的url
hive.metastore.jdbc.url=your_metastore_jdb_url# hive metastore jdbc hive数据库驱动
hive.metastore.jdbc.driver=com.mysql.jdbc.Driver# hive metastore user name hive数据库账号
hive.metastore.username=your_metastore_username# hive metastore password hive数据库密码
hive.metastore.password=your_metastore_password# hive metastore DB reconnect interval hive数据库重连间隔
hive.metastore.reconnect.time=your_reconnect_interval_seconds
#爬取数据白名单 无需求可以不配置
hive.database_black_list=your_databsae_black_list
#爬取数据黑名单无需求可以不配置
hive.database_white_list=your_database_white_list# 白名单开启状态 false即可
hive.table_white_list_enabled=False# 黑名单开启状态 false即可
hive.table_black_list_enabled=False# 转换缓存文件存放位置
hive.schema_csv_file=/var/tmp/hive_schema.csv# 爬取缓存文件存放位置
hive.schema_json_file=/var/tmp/hive_schema.json# 同上,仅仅类型不同
hive.field_metadata=/var/tmp/hive_field_metadata.csv# 同上仅仅类型不同
hive.hdfs_map_csv_file=/var/tmp/hive_hdfs_map.csv# Place to store the hive instance csv file
hive.instance_csv_file=/var/tmp/hive_instance.csv# Place to store the dependency csv file
hive.dependency_csv_file=/var/tmp/hive_dependency.csv# HDFS namenode IPC URI
hdfs.namenode.ipc.uri=your_namenode_ipc_uri# Enable/disable kerberos authentication & related configs
kerberos.auth=True
kerberos.keytab.file=your_keytab_file
kerberos.principal=your_principalkrb5.kdc=your_kdc
krb5.realm=your_realm# innodb_lock_wait_timeout when accessing MySQL Db
innodb_lock_wait_timeout=1500

4.2 构建docker镜像

#>./build.sh 1

漫长的等待。。。。

5.启动docker

#>Wherehows/wherehows-docker
#>docker-compose up
#> source /etc/profile

Wherehows项目部署文档相关推荐

  1. Django+Linux+Uwsgi+Nginx项目部署文档

    Django+Linux+Uwsgi+Nginx项目部署文档 WSGI 在生产环境中使用WSGI作为python web的服务器 WSGI:全拼为Python Web服务器网关接口,Python We ...

  2. django+nginx+uwsgi项目部署文档整理

    django+nginx+uwsgi项目部署文档整理 参考文章:https://blog.csdn.net/qq_42314550/article/details/81805328 一.python安 ...

  3. jeeplus mysql_2.jeeplus源码-项目部署文档.docx

    项目部署文档官方网址: 作者:lgf更新日期:2016-5-9开发工具:eclipse/myeclipse+ mysql/oracle+tomcat6/7/8.打开eclipse右键 -> Im ...

  4. 基于大数据的音乐数据中心平台(附:源码 课件 项目部署文档)

    项目介绍 音乐数据中心数仓综合项目主要是针对公司过去收集到的用户点播.购买音乐等数据(包括业务数据与用户行为数据),为公司业务更健康的发展提供决策服务支持(BI商业决策). 数据中心项目中包含业务系统 ...

  5. 【Selenium+Pytest+allure报告生成自动化测试框架】附带项目源码和项目部署文档

    目录 前言 [文章末尾给大家留下了大量的福利] 测试框架简介 首先管理时间 添加配置文件 conf.py config.ini 读取配置文件 记录操作日志 简单理解POM模型 简单学习元素定位 管理页 ...

  6. JAVA微信开源项目(jeewx)百度BAE 部署文档

    JeeWx(捷微) 百度BAE 部署文档 开始前的准备 1. WAR包 下载地址: 链接: http://pan.baidu.com/s/1bnlcsk3 密码: 592i 下载war包和sql脚本文 ...

  7. java web部署文档_javaweb项目实施部署文档

    javaweb项目实施部署文档 一 .安装配置jdk Jdk的下载地址: http://www.oracle.com/technetwork/java/javase/downloads/index.h ...

  8. IM开源项目OpenIM部署文档-从准备工作到nginx配置

    IM开源项目OpenIM部署文档-从准备工作到nginx配置 2022-11-14 22:27·OpenIM 一.准备工作 运行环境 linux系统即可, Ubuntu 7.5.0-3ubuntu1~ ...

  9. Docker部署文档

    Docker部署文档 目录 Docker部署文档 1 一.什么是Docker 3 1.1Docker简介 3 1.2对比传统虚拟机总结 4 1.3Docker通常用于如下场景: 5 1.4基本概念 5 ...

  10. 部署文档撰写经验分享

    2011年,公司调我和几个同事去广西,与现场的同事一起撰写部署文档.去之前还感觉领导有点小题大做,写个部署文档至于么?我在公司半天就能写出一版了,还叫这么多人跑到广西写这个,真是崽卖爷田不心疼,公司费 ...

最新文章

  1. 从零开始学习jQuery (十一) 实战表单验证与自动完成提示插件
  2. Quartz分布式实现
  3. 关于CacheLookup一个有趣的问题
  4. 用awk 取出ifconfig eth0中IP的方法
  5. Matlab:dicominfo函数
  6. git 修改tag 备注_【Git】第十二章:Git高级实战技巧
  7. win7 32位系统安装postmant无法正常启动。启动显示黑屏界面
  8. 实现文件下载的java代码
  9. emq mysql消息存储_EMQ X 规则引擎系列(二)存储消息到 MySQL 数据库
  10. 概率统计学习笔记(7)
  11. 91卫图助手给我的帮助
  12. delphi 剪切板变量_Delphi操作剪贴板
  13. mbedtls 交叉编译
  14. 蜂鸣器播放天空之城详细解析
  15. 怎样使表格中的数字自动计算机,直观:Excel电子表格一次打印入场数据-Excel如何将数字设置为每次打印时自动递增...
  16. VMware 虚拟机三种网络模式详解
  17. 规范小区电瓶车充电桩的分布保障充电安全
  18. codeup刷题2.1~2.4小节 ——《算法笔记》(胡凡)
  19. 20200524西瓜视频的视频下载打开的步骤(未完成)
  20. 微信红包封面小程序源码-逢年过节非常火爆

热门文章

  1. 宠物医院app开发的功能有哪些?
  2. nslookup测试网络命令
  3. 【Android】雾霾定位探测系统
  4. python wxpython常用控件实例
  5. vs2015注册密钥
  6. 麦子学院python百度云_麦子学院python
  7. jmeter-json提取器提取数据
  8. JQuery Easyui/TopJUI 多表头创建
  9. 你想要的宏基因组-微生物组知识全在这(2020.8)
  10. cad的font文件夹有字体但是标注显示问号的问题