环境与版本
- mac osx,big sur
- jdk 8
- dolphin scheduler - 2.0.0
错误一:plugin dir not exists ! lib\plugin\registry
插件目录不存在,这货不会自己创建的。
相对路径:就在工程根目录创建这个目录。
绝对路径:就随便在哪儿搞个目录就行,registry.properties中配置好path就行。
错误二:No service providers the plugin Service org.apache.dolphinscheduler.spi.DolphinSchedulerPlugin
说的就是上面创建的那个插件目录里面没东西,找不到这个接口的实现,但是registry.properties中又配置了zookeeper这个插件是要加载的,矛盾。
我尝试不去加载zookeeper,结果不行。
于是,在工程中,找到了org.apache.dolphinscheduler.spi.DolphinSchedulerPlugin的zookeeper实现类,就是dolphinscheduler-registry-plugin模块下的dolphinscheduler-registry-plugin,给它打个包。
把target下的那个zip包拷贝到插件目录里面,解压,文件夹重命名为zookeeper。
错误三:zookeeper connect timeout
读了下源码,找到一个配置项:block.until.connected.wait,默认为600。改成6000。
配置写到registry.properties中,像这样
registry.plugin.dir=lib/plugin/registry
registry.plugin.name=zookeeper
registry.servers=127.0.0.1:2181
registry.block.until.connected.wait=6000
终于把master启起来了。
错误四:Task Plugin Not Found,Please Check Config File
跟上面的插件类似,在工程中,dolphinscheduler-task-plugin,把里面除了dolphinscheduler-task-api之外的模块都package一下,按同样的方式,把文件夹放到lib/plugin/task下面。