目录结构

Linkis代码层级目录结构,以及安装包目录结构和部署后的目录结构说明,如果想详细了解各个模块,请查看Linkis的相关架构设计

1. ├── docs
2. │   ├── configuration //linkis所有模块的配置项文档
3. │   ├── errorcode //linkis所有模块的错误码文档
4. │   ├── configuration-change-records.md
5. │   ├── index.md
6. │   ├── info-1.1.3.md
7. │   ├── info-1.2.1.md
8. │   ├── info-1.3.1.md
9. │   └── trino-usage.md
10. ├── linkis-commons //核心抽象,里面放有所有的公用模块
11. │   ├── linkis-common //通用模块,内置很多通用工具类
12. │   ├── linkis-hadoop-common
13. │   ├── linkis-httpclient  //Java SDK顶层接口 对httpclient的进一步封装
14. │   ├── linkis-module // linkis的服务顶层公用模块 涉及到服务启动时的参数和服务初始化 统一的Restful处理 登录态校验等
15. │   ├── linkis-mybatis //SpringCloud的Mybatis模块
16. │   ├── linkis-protocol //服务请求/响应的一些接口和实体类
17. │   ├── linkis-rpc  //RPC模块,基于Feign实现的复杂双向通信
18. │   ├── linkis-scheduler //通用调度模块
19. │   ├── linkis-storage //文件操作工具集
20. ├── linkis-computation-governance //计算治理服务
21. │   ├── linkis-client //Java SDK,用户通过Client可直接访问Linkis
22. │   ├── linkis-computation-governance-common
23. │   ├── linkis-engineconn
24. │   ├── linkis-engineconn-manager
25. │   ├── linkis-entrance //通用底层entrance模块
26. │   ├── linkis-jdbc-driver //可以类似jdbc sdk方式连接使用linkis
27. │   ├── linkis-manager
28. ├── linkis-dist //编译打包最后阶段步骤 整合所有lib包和安装部署脚本配置等
29. │   ├── bin
30. │   │   ├── checkEnv.sh
31. │   │   ├── common.sh
32. │   │   └── install.sh //安装脚本
33. │   ├── deploy-config
34. │   │   ├── db.sh  //数据库配置
35. │   │   └── linkis-env.sh  //linkis 启动相关配置
36. │   ├── docker
37. │   │   └── scripts
38. │   ├── helm
39. │   │   ├── charts
40. │   │   ├── scripts
41. │   │   ├── README_CN.md
42. │   │   └── README.md
43. │   ├── package
44. │   │   ├── bin
45. │   │   ├── conf
46. │   │   ├── db
47. │   │   └── sbin
48. │   ├── release-docs
49. │   │   ├── licenses
50. │   │   ├── LICENSE
51. │   │   └── NOTICE
52. │   ├── src
53. │   └── pom.xml
54. ├── linkis-engineconn-plugins // 引擎
55. │   ├── elasticsearch
56. │   ├── flink
57. │   ├── hive
58. │   ├── io_file
59. │   ├── jdbc
60. │   ├── openlookeng
61. │   ├── pipeline
62. │   ├── presto
63. │   ├── python
64. │   ├── seatunnel
65. │   ├── shell
66. │   ├── spark
67. │   ├── sqoop
68. ├── linkis-extensions // 扩展功能增强插件模块
69. │   ├── linkis-io-file-client // 对linkis-storage的功能扩展
70. ├── linkis-orchestrator //服务的编排
71. │   ├── linkis-code-orchestrator
72. │   ├── linkis-computation-orchestrator
73. │   ├── linkis-orchestrator-core
74. ├── linkis-public-enhancements //公共增强服务
75. │   ├── linkis-basedata-manager
76. │   ├── linkis-bml  // 物料库
77. │   ├── linkis-configuration
78. │   ├── linkis-context-service //统一上下文
79. │   ├── linkis-datasource //数据源服务
80. │   ├── linkis-error-code
81. │   ├── linkis-instance-label
82. │   ├── linkis-jobhistory
83. │   ├── linkis-ps-common-lock
84. │   ├── linkis-script-dev
85. │   ├── linkis-udf
86. │   ├── linkis-variable
87. ├── linkis-spring-cloud-services //微服务治理
88. │   ├── linkis-service-discovery
89. │   ├── linkis-service-gateway //网关Gateway
90. ├── linkis-web //linkis的管理台代码
91. │   ├── release-docs
92. │   │   ├── licenses
93. │   │   └── LICENSE
94. │   ├── src
95. │   ├── config.sh
96. │   ├── install.sh
97. │   ├── package.json
98. │   ├── pom.xml
99. │   └── vue.config.js
100. ├── tool
101. │   ├── dependencies
102. │   │   ├── known-dependencies.txt
103. │   │   └── regenerate_konwn_dependencies_txt.sh
104. │   ├── code-style-idea.xml
105. │   ├── license-header
106. │   └── modify_license.sh
107. ├── CONTRIBUTING_CN.md
108. ├── CONTRIBUTING.md
109. ├── DISCLAIMER
110. ├── linkis-tree.txt
111. ├── mvnw
112. ├── mvnw.cmd
113. ├── pom.xml
114. ├── README_CN.md
115. ├── README.md
116. └── scalastyle-config.xml
2. ├── bin
3. │   ├── checkEnv.sh ── 环境变量检测
4. │   ├── common.sh ── 部分公共shell函数
5. │   └── install.sh ── Linkis安装的主脚本
6. ├── deploy-config
7. │   ├── db.sh       //数据库连接配置
8. │   └── linkis-env.sh //相关环境配置信息
9. ├── docker
10. ├── helm
11. ├── licenses
12. ├── linkis-package  //微服务相关的启动配置文件,依赖,脚本,linkis-cli等
13. │   ├── bin
14. │   ├── conf
15. │   ├── db
16. │   ├── lib
17. │   └── sbin
18. ├── NOTICE
19. ├── DISCLAIMER
20. ├── LICENSE
21. ├── README_CN.md
22. └── README.md
1. ├── bin              ──  linkis-cli  用于向Linkis提交任务的Shell命令行程序
2. │   ├── linkis-cli
3. │   ├── linkis-cli-hive
4. │   ├── linkis-cli-pre
5. │   ├── linkis-cli-spark-sql
6. │   ├── linkis-cli-spark-submit
7. │   └── linkis-cli-sqoop
8. ├── conf 配置目录
9. │   ├── application-eureka.yml
10. │   ├── application-linkis.yml    ── 微服务通用yml
11. │   ├── linkis-cg-engineconnmanager.properties
12. │   ├── linkis-cg-engineplugin.properties
13. │   ├── linkis-cg-linkismanager.properties
14. │   │── linkis-cli
15. │   │   ├── linkis-cli.properties
16. │   │   └── log4j2.xml
17. │   ├── linkis-env.sh    ── linkis 环境变量配置
18. │   ├── linkis-mg-gateway.properties
19. │   ├── linkis.properties  ── linkis 服务的全局配合,所有微服务启动都会加载使用
20. │   ├── linkis-ps-publicservice.properties
21. │   ├── log4j2.xml
22. ├── db 数据库DML和DDL文件目录
23. │   ├── linkis_ddl.sql ── 数据库表定义SQL
24. │   ├── linkis_dml.sql ── 数据库表初始化SQL
25. │   └── module    ── 包含各个微服务的DML和DDL文件
26. │   └── upgrade   ── 针对每个版本 增量DML/DDL
27. ├── lib lib目录
28. │   ├── linkis-commons ── 公共依赖包 大多服务启动时(linkis-mg-gateway除外) -cp 路径参数 都会加载这个目录
29. │   ├── linkis-computation-governance ──计算治理模块的lib目录
30. │   ├── linkis-engineconn-plugins ──所有引擎插件的lib目录
31. │   ├── linkis-public-enhancements ──公共增强服务的lib目录
32. │   └── linkis-spring-cloud-services ──SpringCloud的lib目录
33. ├── logs 日志目录
34. │   ├── linkis-cg-engineconnmanager-gc.log
35. │   ├── linkis-cg-engineconnmanager.log
36. │   ├── linkis-cg-engineconnmanager.out
37. │   ├── linkis-cg-engineplugin-gc.log
38. │   ├── linkis-cg-engineplugin.log
39. │   ├── linkis-cg-engineplugin.out
40. │   ├── linkis-cg-entrance-gc.log
41. │   ├── linkis-cg-entrance.log
42. │   ├── linkis-cg-entrance.out
43. │   ├── linkis-cg-linkismanager-gc.log
44. │   ├── linkis-cg-linkismanager.log
45. │   ├── linkis-cg-linkismanager.out
46. │   ├── linkis-cli
47. │   │   ├── linkis-client.hadoop.log.20220409162400037523664
48. │   │   ├── linkis-client.hadoop.log.20220409162524417944443
49. │   ├── linkis-mg-eureka-gc.log
50. │   ├── linkis-mg-eureka.log
51. │   ├── linkis-mg-eureka.out
52. │   ├── linkis-mg-gateway-gc.log
53. │   ├── linkis-mg-gateway.log
54. │   ├── linkis-mg-gateway.out
55. │   ├── linkis-ps-publicservice-gc.log
56. │   ├── linkis-ps-publicservice.log
57. │   └── linkis-ps-publicservice.out
58. ├── pid 所有微服务的进程ID
59. │   ├── linkis_cg-engineconnmanager.pid ──引擎管理器微服务
60. │   ├── linkis_cg-engineconnplugin.pid ──引擎插件微服务
61. │   ├── linkis_cg-entrance.pid ──引擎入口微服务
62. │   ├── linkis_cg-linkismanager.pid ──linkis管理器微服务
63. │   ├── linkis_mg-eureka.pid ──eureka微服务
64. │   ├── linkis_mg-gateway.pid ──gateway微服务
65. │   └── linkis_ps-publicservice.pid ──公共微服务
66. └── sbin 微服务启停脚本目录
67. ├── ext ──各个微服务的启停脚本目录
68. ├── linkis-daemon.sh ── 快捷启停、重启单个微服务脚本
69. ├── linkis-start-all.sh ── 一键启动全部微服务脚本
70. └── linkis-stop-all.sh ── 一键停止全部微服务脚本

在执行完Linkis安装后,所有配置项位于conf目录下, 如果需要进行配置项修改,修改配置${LINKIS_HOME}/conf/*properties文件后,重启对应的服务, 如:sh sbin/linkis-daemon.sh start ps-publicservice。 如果修改的是公共配置文件application-eureka.yml/application-linkis.yml/linkis.properties,需要重启所有服务sh sbin/linkis-start-all.sh

所有微服务名称如下:

1. ├── linkis-cg-engineconnmanager 引擎管理服务
2. ├── linkis-cg-engineplugin 引擎插件管理服务
3. ├── linkis-cg-entrance 计算治理入口服务
4. ├── linkis-cg-linkismanager 计算治理管理服务
5. ├── linkis-mg-eureka 微服务注册中心服务
6. ├── linkis-mg-gateway Linkis网关服务
7. ├── linkis-ps-publicservice 公共服务

微服务简称:

简称 英文全称 中文全称
cg Computation Governance 计算治理
mg Microservice Covernance 微服务治理
ps Public Enhancement Service 公共增强服务
1. # 一次性启动所有微服务:

3. sh linkis-start-all.sh

5. # 一次性关停所有微服务

7. sh linkis-stop-all.sh

9. # 启动单个微服务(服务名需要去掉linkis前缀如:mg-eureka)

11. sh linkis-daemon.sh start service-name

13. 例如: sh linkis-daemon.sh start mg-eureka

15. # 关闭单个微服务

17. sh linkis-daemon.sh stop service-name

19. 例如: sh linkis-daemon.sh stop mg-eureka

21. # 重启单个微服务

23. sh linkis-daemon.sh restart service-name

25. 例如: sh linkis-daemon.sh restart mg-eureka
26. # 查看单个微服务的状态

28. sh linkis-daemon.sh status service-name

30. 例如: sh linkis-daemon.sh status mg-eureka