Este artigo descreve sistematicamente o processo geral para configurar um ambiente de depuração native para o Apache Dolphinscheduler na Concept, incluindo preparação para o meio ambiente, configuração de código, inicialização de serviços e outras etapas principais para referência.
1. Preparação básica de componentes
1. JDK: v1.8.x (presently doesn't assist JDK 11)
2. Maven: v3.5+
3. Node.js: v18.19.1+, set up pnpm
// World set up
npm set up pnpm -g
// Examine registry
pnpm config get registry
// Change to Taobao registry
pnpm config set registry
4. Zookeeper: 3.6.3 (this model is utilized by large information platforms, DS reuses the platform's Zookeeper). When utilizing the most recent DS, it makes use of curator 5.3.0
Curator 5.0 helps Zookeeper 3.6.X, now not helps Zookeeper 3.4.X
Curator 4.X helps Zookeeper 3.5.X, with tender compatibility for 3.4.X
Curator 2.X helps Zookeeper 3.4.X
5. MySQL model examine:
mysql> choose model();
+-----------+
| model() |
+-----------+
| 5.7.44 |
+-----------+
1 row in set (0.00 sec)
2. Inicialização
2.1 Inicialize o banco de dados
supply /Customers/xxx/IdeaProjects/dolphinscheduler/dolphinscheduler-dao/src/most important/sources/sql/dolphinscheduler_mysql.sql;
2.2 Configurações -chave em Widespread.properties
# Native listing for storing scripts
information.basedir.path=/tmp/dolphinscheduler
# Storage medium choice (e.g., HDFS); for useful resource middle and tenant directories
useful resource.storage.sort=HDFS
# Root listing of useful resource middle
useful resource.storage.add.base.path=/dolphinscheduler
# Consumer for HDFS operations (usually hdfs consumer)
useful resource.hdfs.root.consumer=hdfs
# HDFS defaultFS (for HA mode, place core-site.xml and hdfs-site.xml in sources folder)
useful resource.hdfs.fs.defaultFS=hdfs://10.253.26.85:8020
# Improvement mode (really helpful for simpler troubleshooting)
growth.state=true
# YARN port
useful resource.supervisor.httpaddress.port=8088
# For YARN HA, configure a number of IPs separated by commas
yarn.resourcemanager.ha.rm.ids=
# For single YARN, change ds1 with YARN IP; go away unchanged for HA mode
yarn.utility.standing.tackle=
2.3 Configurar o aplicativo.yaml para cada serviço
Observação: Configure principalmente o endereço de conexão do Zookeeper e o endereço MYSQL (detalhes omitidos).
2.4 Configurar logback-spring.xml para cada serviço
Definir
para saída do console.
Aqui está a tradução em inglês linha por linha:
3. Inicialização de componentes
1) MasterServer:
Execute the primary technique of org.apache.dolphinscheduler.server.grasp.MasterServer in IntelliJ IDEA,
with VM Choices:
-Dlogging.config=classpath:logback-spring.xml
-Ddruid.mysql.usePingMethod=false
-Dspring.profiles.energetic=mysql
2) WorkerServer:
Execute the primary technique of org.apache.dolphinscheduler.server.employee.WorkerServer in IntelliJ IDEA,
with VM Choices:
-Dlogging.config=classpath:logback-spring.xml
-Ddruid.mysql.usePingMethod=false
-Dspring.profiles.energetic=mysql
3) ApiApplicationServer:
Execute the primary technique of org.apache.dolphinscheduler.api.ApiApplicationServer in IntelliJ IDEA,
with VM Choices:
-Dlogging.config=classpath:logback-spring.xml
-Dspring.profiles.energetic=api,mysql
After startup, you'll be able to browse OpenAPI documentation at:
4) Frontend:
cd dolphinscheduler-ui
pnpm set up
pnpm run dev
Error encountered:
qiaozhanwei@ dolphinscheduler-ui % pnpm run dev
> [email protected] dev /Customers/qiaozhanwei/IdeaProjects/dolphinscheduler/dolphinscheduler-ui
> vite
error when beginning dev server:
Error: pay attention EADDRNOTAVAIL: tackle not out there 192.168.1.4:5173
at Server.setupListenHandle [as _listen2] (node:internet:1313:21)
at listenInCluster (node:internet:1378:12)
at GetAddrInfoReqWrap.doListen [as callback] (node:internet:1516:7)
at GetAddrInfoReqWrap.onlookup [as oncomplete] (node:dns:73:8)
Code modification:
On Mac, discover IP tackle in terminal utilizing command:
ipconfig getifaddr en0
After discovering IP tackle, find vite.config.ts file in undertaking and modify as follows:
import { defineConfig } from 'vite'
import vue from '@vitejs/plugin-vue'
//
export default defineConfig({
plugins: [vue()],
base:'/',
server:{
host:'192.168.x.x',
port:'5173',
https:'false',
open:'true',
hmr:{
protocol:'ws',
host:'192.168.x.x'
},
}
})
Login URL:
Use credentials admin/dolphinscheduler123 to login
4. Versão 2.x Startup de componentes
api server:
-Dlogging.config=classpath.logback-api.xml
-Ddruid.mysql.usePingMethod=false
-Dspring.profiles.energetic="default,api,mysql"
grasp:
-Dlogging.config=classpath.logback-master.xml
-Ddruid.mysql.usePingMethod=false
-Dspring.profiles.energetic="default,grasp,mysql"
employee:
-Dlogging.config=classpath.logback-worker.xml
[Note:The worker configuration appears to be truncated in original text]