首先找到单机安装linkis的教程,可以看到第一次先执行install.sh
我们就从这个install.sh作为突破口,看看安装的时候,做了什么?
看到install.sh的前面就是设置了一些变量和环境检测,然后就执行了common.sh了,所以先暂时暂停到install.sh的48行,先去看一下common.sh这个脚本做了什么?
分析完成了common.sh,我们接着回到install.sh,因为common.sh其实并没有执行什么关键的命令,只是定义了几个函数,方便install.sh可以直接调用。
到此处,安装脚本的解读完毕。
接下来看看启动脚本。
可以看到启动的脚本是linkis-start-all.sh脚本,接下来我们分析一下这个linkis-start-all.sh脚本在启动的工程中分别启动了哪些类?
可以看到,总共启动了6个类,顺序如下:
1:mg-eureka
2:mg-gateway
3:
ps-publicservice
4:
cg-linkismanager
5:
cg-entrance
6:
cg-engineconnmanager
然后我们需要找到这6个类具体的类名称是啥。这个去linkis-daemon.sh里去找。
核心的映射关系就是这里了。
然后我们把上面的类映射到执行脚本里去:如下图所示:
1:mg-eureka------------------------>
sbin/ext/linkis-mg-eureka
2:mg-gateway
----------------------->
sbin/ext/linkis-
mg-gateway
3:
ps-publicservice
----------------->
sbin/ext/linkis-
ps-publicservice
4:
cg-linkismanager
----------------->
sbin/ext/linkis-
cg-linkismanager
5:
cg-entrance
---------------------->
sbin/ext/linkis-
cg-entrance
6:
cg-engineconnmanager
------------->
sbin/ext/linkis-
cg-engineconnmanager
所以接下来就很明白了,就是去看下面6个启动文件:
sbin/ext/linkis-mg-eureka
sbin/ext/linkis-mg-gateway
sbin/ext/linkis-ps-publicservice
sbin/ext/linkis-cg-linkismanager
sbin/ext/linkis-cg-entrance
sbin/ext/linkis-cg-engineconnmanager
我们先看看第一个文件:sbin/ext/linkis-mg-eureka
可以找到核心的启动类就是 org.apache.linkis.eureka.SpringCloudEurekaApplication
接着看第二个文件:
sbin/ext/linkis-mg-gateway
可以找到核心的启动类就是 org.apache.linkis.gateway.springcloud.LinkisGatewayApplication
接着看第三个文件:
sbin/ext/
linkis-
ps-publicservice
可以找到核心的启动类就是 org.apache.linkis.filesystem.LinkisPublicServiceApp
接着看第四个文件:
sbin/ext/
linkis-
cg-linkismanager
可以找到核心的启动类就是 org.apache.linkis.manager.am.LinkisManagerApplication
接着看第五个文件:
sbin/ext/
linkis-
cg-entrance
可以找到核心的启动类就是 org.apache.linkis.entrance.LinkisEntranceApplication
接着看第六个文件:
sbin/ext/
linkis-
cg-engineconnmanager
可以找到核心的启动类就是 org.apache.linkis.ecm.server.LinkisECMApplication
所以总结一下就是,按照顺序依次启动如下6个类:
1:
org.apache.linkis.eureka.SpringCloudEurekaApplication
2:
org.apache.linkis.gateway.springcloud.LinkisGatewayApplication
3:
org.apache.linkis.filesystem.LinkisPublicServiceApp
4:
org.apache.linkis.manager.am.LinkisManagerApplication
5:
org.apache.linkis.entrance.LinkisEntranceApplication
6:
org.apache.linkis.ecm.server.LinkisECMApplication
var code = "522b50cb-7ad1-4c93-955f-c5747e8ddf1b"