-
确保安装的系统为CentOS为6或者7
-
服务器存在多网卡问题。首先通过命令
ifconfig
命令查看服务器激活状态的网卡,若激活状态的网卡数大于1,那么用户就需要通过命令ifconfig [NIC_NAME] down
([NIC_NAME]
为网卡名称)来关闭多余的网卡,以确保激活的网卡数只有1个 -
网卡多IP问题。在确保服务器只存在一个网卡是激活状态的情况下,通过命令
echo $(hostname -I)
查看网卡对应的IP数,若大于1,那么就需要去掉网卡中指定的IP,采用动态获取IP的方式,具体命令如下:ip addr flush dev [NIC_NAME] ifdown [NIC_NAME] ifup [NIC_NAME]
-
hostname配置。在安装前用户需要配置hostname到ip的映射
-
需要的命令工具(在正式安装前,脚本会自动检测这些命令是否可用,如果不存在会尝试自动安装,安装失败则需用户手动安装以下基础shell命令工具):
telnet; tar; sed; dos2unix; mysql; yum; java; unzip; zip; expect
-
需要安装的软件:
MySQL (5.5+); JDK (1.8.0_141以上); Python(2.x和3.x都支持); Nginx
-
下面的服务必须可从本机访问:
Hadoop(2.7.2,Hadoop其他版本需自行编译Linkis) ,安装的机器必须支持执行
hdfs dfs -ls /
命令Hive(2.3.3,Hive其他版本需自行编译Linkis),安装的机器必须支持执行
hive -e "show databases"
命令Spark(支持2.0以上所有版本) ,安装的机器必须支持执行
spark-sql -e "show databases"
命令 -
Tips:
如用户是第一次安装Hadoop,单机部署Hadoop可参考:Hadoop单机部署 ;分布式部署Hadoop可参考:Hadoop分布式部署
如用户是第一次安装Hive,可参考:Hive快速安装部署
如用户是第一次安装Spark,On Yarn模式可参考:Spark on Yarn部署
-
假设部署用户是hadoop账号(可以不是hadoop用户,但是推荐使用Hadoop的超级用户进行部署,这里只是一个示例)
-
在所有需要部署的机器上创建部署用户,用于安装 ,如下命令创建部署用户hadoop
sudo useradd hadoop
-
因为Linkis的服务是以
sudo -u ${linux-user}
方式来切换引擎,从而执行作业,所以部署用户需要有 sudo 权限,而且是免密的,按下面步骤修改部署用户权限编辑/etc/sudoers文件:
vi /etc/sudoers
在/etc/sudoers文件中添加下面内容:
hadoop ALL=(ALL) NOPASSWD: NOPASSWD: ALL
-
确保部署 DSS 和 Linkis 的服务器可正常执行 hdfs 、hive -e 和 spark-sql -e 等命令。在一键安装脚本中,会对组件进行检查。
-
如果用户的Pyspark想拥有画图功能,则还需在所有安装节点,安装画图模块。命令如下:
python -m pip install matplotlib
-
用户可以自行编译或者去 release 页面下载安装包:DSS Release-1.1.1
请注意:为了能正常使用 Visualis1.0.0 和 Exchangis1.0.0,请去 releases 页面下载最新的一键安装部署包。
请注意:为了能正常使用 Visualis1.0.0 和 Exchangis1.0.0,请去 releases 页面下载最新的一键安装部署包。
-
DSS & Linkis 一键安装部署包的层级目录结构如下:
├── dss_linkis # 一键部署主目录 ├── bin # 用于一键安装,以及一键启动 DSS + Linkis ├── conf # 一键部署的参数配置目录 ├── wedatasphere-dss-x.x.x-dist.tar.gz # DSS后端安装包 ├── wedatasphere-dss-web-x.x.x-dist.zip # DSS前端和Linkis前端安装包 ├── wedatasphere-linkis-x.x.x-dist.tar.gz # Linkis后端安装包
-
如果用户选择采用下载安装包直接部署的形式,可直接跳转到 修改配置
-
如果用户选择自行编译 Linkis 或 DSS,请确保编译的是 Linkis1.1.1 和已拉取了 DSS
master
分支的最新代码,编译方式可以参考:
DSS后端编译文档
DSS前端编译文档
Linkis后端编译文档
Linkis前端编译文档1. 针对后端安装包可直接将上面的 Linkis 后端安装包或 DSS 后端安装包替换成编译后相关安装包即可。 2. 针对前端安装包,则需要特别注意,整个前端安装包目录结构如下: ``` ├── wedatasphere-dss-web-x.x.x-dist # DSS和Linkis前端安装包 ├── config.sh # 参数配置脚本 ├── install.sh # 前端部署脚本 ├── dist # DSS前端包 ├── dss # 用于存放与DSS一键部署的应用的前端包 ├── linkis # Linkis前端包目录 ├── build.zip # 压缩后的Linkis前端包 ``` 3. DSS前端包可直接替换成用户编译后的相关安装包,Linkis前端包需要压缩成名称为build.zip的安装包,然后用其替换掉xx/dss_linkis/wedatasphere-dss-web-x.x.x-dist/dss/linkis目录下面的build.zip。 4. 用户在打包wedatasphere-dss-web-x.x.x-dist.zip和build.zip的时候需要特别注意,不要在父级目录对其直接压缩,应全选目录下面的所有文件然后压缩。
-
用户需要对
xx/dss_linkis/conf
目录下的config.sh
和db.sh
进行修改。 -
打开
config.sh
,按需修改相关配置参数,参数说明如下:
#################### 一键安装部署的基本配置 ####################
### deploy user(部署用户,默认为当前登录用户)
deployUser=hadoop
### Linkis_VERSION
LINKIS_VERSION=1.1.1
### DSS Web(本机安装一般无需修改,但需确认此端口是否占用,若被占用,修改一个可用端口即可)
DSS_NGINX_IP=127.0.0.1
DSS_WEB_PORT=8085
### DSS VERSION
DSS_VERSION=1.1.1
############## linkis的其他默认配置信息 start ##############
### Specifies the user workspace, which is used to store the user's script files and log files.
### Generally local directory
##file:// required. 指定用户使用的目录路径,一般用于存储用户的脚本文件和日志文件等,是用户的工作空间
WORKSPACE_USER_ROOT_PATH=file:///tmp/linkis/
### User's root hdfs path
##hdfs:// required. 结果集日志等文件路径,用于存储Job的结果集文件
HDFS_USER_ROOT_PATH=hdfs:///tmp/linkis
### Path to store job ResultSet:file or hdfs path
##hdfs:// required. 结果集日志等文件路径,用于存储Job的结果集文件,如果未配置 使用HDFS_USER_ROOT_PATH的配置
RESULT_SET_ROOT_PATH=hdfs:///tmp/linkis
### Path to store started engines and engine logs, must be local. 存放执行引擎的工作路径,需要部署用户有写权限的本地目录
ENGINECONN_ROOT_PATH=/appcom/tmp
### 基础组件环境信息
###HADOOP CONF DIR #/appcom/config/hadoop-config(用户根据实际情况修改)
HADOOP_CONF_DIR=/appcom/config/hadoop-config
###HIVE CONF DIR #/appcom/config/hive-config(用户根据实际情况修改)
HIVE_CONF_DIR=/appcom/config/hive-config
###SPARK CONF DIR #/appcom/config/spark-config(用户根据实际情况修改)
SPARK_CONF_DIR=/appcom/config/spark-config
###for install (用户根据实际情况修改)
LINKIS_PUBLIC_MODULE=lib/linkis-commons/public-module
##YARN REST URL spark engine required(根据实际情况修改IP和端口)
YARN_RESTFUL_URL=http://127.0.0.1:8088
## Engine version
#SPARK_VERSION(根据实际版本情况修改版本号)
SPARK_VERSION=2.4.3
##HIVE_VERSION(根据实际版本情况修改版本号)
HIVE_VERSION=2.3.3
##PYTHON_VERSION(根据实际版本情况修改版本号)
PYTHON_VERSION=python2
## LDAP is for enterprise authorization, if you just want to have a try, ignore it.
#LDAP_URL=ldap://localhost:1389/
#LDAP_BASEDN=dc=webank,dc=com
#LDAP_USER_NAME_FORMAT=cn=%[email protected],OU=xxx,DC=xxx,DC=com
############## linkis的其他默认配置信息 end ##############
################### The install Configuration of all Linkis's Micro-Services #####################
################### 用户可以根据实际情况修改IP和端口 ###################
#
# NOTICE:
# 1. If you just wanna try, the following micro-service configuration can be set without any settings.
# These services will be installed by default on this machine.
# 2. In order to get the most complete enterprise-level features, we strongly recommend that you install
# the following microservice parameters
#
### EUREKA install information
### You can access it in your browser at the address below:http://${EUREKA_INSTALL_IP}:${EUREKA_PORT}
### Microservices Service Registration Discovery Center
LINKIS_EUREKA_INSTALL_IP=127.0.0.1
LINKIS_EUREKA_PORT=9600
#LINKIS_EUREKA_PREFER_IP=true
### Gateway install information
#LINKIS_GATEWAY_INSTALL_IP=127.0.0.1
LINKIS_GATEWAY_PORT=9001
### ApplicationManager
#LINKIS_MANAGER_INSTALL_IP=127.0.0.1
LINKIS_MANAGER_PORT=9101
### EngineManager
#LINKIS_ENGINECONNMANAGER_INSTALL_IP=127.0.0.1
LINKIS_ENGINECONNMANAGER_PORT=9102
### EnginePluginServer
#LINKIS_ENGINECONN_PLUGIN_SERVER_INSTALL_IP=127.0.0.1
LINKIS_ENGINECONN_PLUGIN_SERVER_PORT=9103
### LinkisEntrance
#LINKIS_ENTRANCE_INSTALL_IP=127.0.0.1
LINKIS_ENTRANCE_PORT=9104
### publicservice
#LINKIS_PUBLICSERVICE_INSTALL_IP=127.0.0.1
LINKIS_PUBLICSERVICE_PORT=9105
### cs
#LINKIS_CS_INSTALL_IP=127.0.0.1
LINKIS_CS_PORT=9108
########## Linkis微服务配置完毕 ##########
################### The install Configuration of all DataSphereStudio's Micro-Services #####################
#################### 非注释的参数必须配置,注释掉的参数可按需修改 ####################
# NOTICE:
# 1. If you just wanna try, the following micro-service configuration can be set without any settings.
# These services will be installed by default on this machine.
# 2. In order to get the most complete enterprise-level features, we strongly recommend that you install
# the following microservice parameters
#
# 用于存储发布到 Schedulis 的临时ZIP包文件
WDS_SCHEDULER_PATH=file:///appcom/tmp/wds/scheduler
### DSS_SERVER
### This service is used to provide dss-server capability.
### project-server
#DSS_FRAMEWORK_PROJECT_SERVER_INSTALL_IP=127.0.0.1
#DSS_FRAMEWORK_PROJECT_SERVER_PORT=9002
### orchestrator-server
#DSS_FRAMEWORK_ORCHESTRATOR_SERVER_INSTALL_IP=127.0.0.1
#DSS_FRAMEWORK_ORCHESTRATOR_SERVER_PORT=9003
### apiservice-server
#DSS_APISERVICE_SERVER_INSTALL_IP=127.0.0.1
#DSS_APISERVICE_SERVER_PORT=9004
### dss-workflow-server
#DSS_WORKFLOW_SERVER_INSTALL_IP=127.0.0.1
#DSS_WORKFLOW_SERVER_PORT=9005
### dss-flow-execution-server
#DSS_FLOW_EXECUTION_SERVER_INSTALL_IP=127.0.0.1
#DSS_FLOW_EXECUTION_SERVER_PORT=9006
###dss-scriptis-server
#DSS_SCRIPTIS_SERVER_INSTALL_IP=127.0.0.1
#DSS_SCRIPTIS_SERVER_PORT=9008
########## DSS微服务配置完毕#####
############## other default configuration 其他默认配置信息 ##############
## java application default jvm memory(Java应用的堆栈大小。如果部署机器的内存少于8G,推荐128M;
## 达到16G时,推荐至少256M;如果想拥有非常良好的用户使用体验,推荐部署机器的内存至少达到32G)
export SERVER_HEAP_SIZE="128M"
##sendemail配置,只影响DSS工作流中发邮件功能
EMAIL_HOST=smtp.163.com
EMAIL_PORT=25
EMAIL_USERNAME[email protected]
EMAIL_PASSWORD=xxxxx
EMAIL_PROTOCOL=smtp
### Save the file path exported by the orchestrator service
ORCHESTRATOR_FILE_PATH=/appcom/tmp/dss
### Save DSS flow execution service log path
EXECUTION_LOG_PATH=/appcom/tmp/dss
############## other default configuration 其他默认配置信息 ##############
-
请注意:DSS 推荐使用 LDAP 进行用户登录鉴权,如您想接入公司的 LDAP,还需在上面的
config.sh
中填写 LDAP 的配置参数。 如何安装 LDAP? -
修改数据库配置。请确保配置的数据库,安装机器可以正常访问,否则将会出现 DDL 和 DML 导入失败的错误,打开
db.sh
,按需修改相关配置参数,参数说明如下:
### 配置DSS数据库
MYSQL_HOST=127.0.0.1
MYSQL_PORT=3306
MYSQL_DB=dss
MYSQL_USER=xxx
MYSQL_PASSWORD=xxx
## Hive metastore的数据库配置,用于Linkis访问Hive的元数据信息
HIVE_HOST=127.0.0.1
HIVE_PORT=3306
HIVE_DB=xxx
HIVE_USER=xxx
HIVE_PASSWORD=xxx
- 若从未安装过DSS及Linkis服务,忽略此步骤
-
cd xx/dss_linkis/bin
-
sh install.sh
-
该安装脚本会检查各项集成环境命令,如果没有请按照提示进行安装,以下命令为必须项:
yum; java; mysql; unzip; expect; telnet; tar; sed; dos2unix; nginx
-
安装时,脚本会询问您是否需要初始化数据库并导入元数据,Linkis 和 DSS 均会询问,第一次安装必须选是
-
通过查看控制台打印的日志信息查看是否安装成功,如果有错误信息,可以查看具体报错原因
-
除非用户想重新安装整个应用,否则该命令执行一次即可
-
若用户的Linkis安装包是通过自己编译获取且用户想启用数据源管理功能,那么就需要去修改配置以启动该项功能,使用下载的安装包无需操作
## 切换到Linkis配置文件目录 cd xx/dss_linkis/linkis/conf ## 打开配置文件linkis-env.sh vi linkis-env.sh ## 将如下配置改为true export ENABLE_METADATA_MANAGER=true
-
若用户的Linkis安装包是通过自己编译获取,在启动服务前尽量将后续用到的密码改成和部署用户名一致,使用下载的安装包无需操作
## 切换到Linkis配置文件目录 cd xx/dss_linkis/linkis/conf/ ## 打开配置文件linkis-mg-gateway.properties vi linkis-mg-gateway.properties ## 修改密码 wds.linkis.admin.password=hadoop
-
在xx/dss_linkis/bin目录下执行启动服务脚本
sh start-all.sh
-
如果启动产生了错误信息,可以查看具体报错原因。启动后,各项微服务都会进行通信检测,如果有异常则可以帮助用户定位异常日志和原因
-
# 切换目录到dss,正常情况下dss目录就在xx/dss_linkis目录下, cd xx/dss_linkis/dss/bin # 执行启动默认Appconn脚本 sh install-default-appconn.sh
- 该命令执行一次即可,除非用户想重新安装整个应用
-
用户可以在Eureka界面查看 Linkis & DSS 后台各微服务的启动情况,默认情况下DSS有7个微服务,Linkis有10个微服务(包括启用数据源管理功能后的两个微服务) (Eureka地址在xx/dss_linkis/conf/config.sh有配置)
-
用户可以使用谷歌浏览器访问以下前端地址:
http://DSS_NGINX_IP:DSS_WEB_PORT
启动日志会打印此访问地址(在xx/dss_linkis/conf/config.sh中也配置了此地址)。登陆时默认管理员的用户名和密码均为部署用户为hadoop(用户若想修改密码,可以通过修改 xx/dss_linkis/linkis/conf/linkis-mg-gateway.properties 文件中的 wds.linkis.admin.password 参数)
-
sh stop-all.sh
- 若用户需要停止所有服务可执行该命令
sh stop-all.sh
,重新启动所有服务就执行sh start-all.sh
,这两条命令均在xx/dss_linkis/bin目录下执行
-
考虑到安装包过于大的问题,Linkis默认仅提供Hive, Python, Shell, Spark引擎插件,用户若想使用其他引擎,可参考文档: Linkis引擎的安装
-
DSS默认未安装调度系统,用户可以选择安装 Schedulis 或者 DolphinScheduler,具体安装方式见下面表格
-
DSS默认仅安装DateChecker, EventSender, EventReceiver AppConn,用户可参考文档安装其他AppConn,如Visualis, Exchangis, Qualitis, Prophecis, Streamis。调度系统可使用Schedulis或DolphinScheduler
组件名 组件版本要求 组件部署链接 AppConn部署链接 Schedulis Schedulis0.7.0 Schedulis部署 Schedulis AppConn安装 Visualis Visualis1.0.0 Visualis部署 Visualis AppConn安装 Exchangis Exchangis1.0.0 Exchangis部署 Exchangis AppConn安装 Qualitis Qualitis0.9.2 Qualitis部署 Qualitis AppConn安装 Prophecis Prophecis0.3.2 Prophecis部署 Prophecis AppConn安装 Streamis Streamis0.2.0 Streamis部署 Streamis AppConn安装 DolphinScheduler DolphinScheduler1.3.x DolphinScheduler部署 DolphinScheduler AppConn安装