Configuração do Apache DolphinScheduler em Modo Standalone com Persistência em MySQL

O Apache DolphinScheduler, quando executado em modo Standalone padrão, utiliza o banco de dados H2 e o Zookeeper Testing Server integrados. Embora prático para testes rápidos, essa configuração não é recomendada para persistência de dados a longo prazo, pois o desligamento do processo pode resultar na perda de metadados. Para contornar essa limitação em ambientes com recursos de memória restritos, é possível configurar o modo Standalone para utilizar um banco de dados externo, como o MySQL.

Preparação do Ambiente e Instalação

Inicie extraindo o pacote binário do DolphinScheduler para o diretório de destino no servidor Linux:

tar -zxvf apache-dolphinscheduler-3.1.8-bin.tar.gz -C /opt/app/
cd /opt/app/apache-dolphinscheduler-3.1.8-bin

Para que o DolphinScheduler se comunique com o MySQL, é necessário copiar o driver JDBC correspondente para o diretório de bibliotecas do servidor standalone:

# Exemplo copiando de um diretório central de drivers
cp /usr/share/java/mysql-connector-java-8.0.26.jar ./standalone-server/libs/standalone-server/

Configuração do Banco de Dados MySQL

Acesse o console do MySQL e execute os comandos abaixo para criar o banco de dados e definir as permissões do usuário dedicado:

-- Criação do Schema
CREATE DATABASE ds_metadata DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;

-- Configuração de políticas de senha (caso necessário para testes)
SET GLOBAL validate_password.policy=LOW;
SET GLOBAL validate_password.length=4;

-- Criação do usuário e concessão de privilégios
CREATE USER 'ds_admin'@'%' IDENTIFIED BY 'senha123';
GRANT ALL PRIVILEGES ON ds_metadata.* TO 'ds_admin'@'%';
FLUSH PRIVILEGES;

Inicialização dos Metadados

Antes de iniciar o serviço, cofnigure as variáveis de ambiente necessárias para que o script de migração localize o banco de dados externo e execute a criação das tabelas:

export DATABASE=mysql
export SPRING_PROFILES_ACTIVE=dolphinscheduler
export SPRING_DATASOURCE_URL="jdbc:mysql://192.168.1.10:3306/ds_metadata?useUnicode=true&characterEncoding=UTF-8&useSSL=false&allowPublicKeyRetrieval=true"
export SPRING_DATASOURCE_USERNAME=ds_admin
export SPRING_DATASOURCE_PASSWORD=senha123

# Execução do script de upgrade/inicialização
bash tools/bin/upgrade-schema.sh

Ajustes nos Arquivos de Configuração

Edite o arquivo standalone-server/conf/application.yaml para garantir que a aplicação utilize a conexão MySQL permanentemente:

spring:
  datasource:
    driver-class-name: com.mysql.cj.jdbc.Driver
    url: jdbc:mysql://192.168.1.10:3306/ds_metadata?useUnicode=true&characterEncoding=UTF-8&useSSL=false&allowPublicKeyRetrieval=true
    username: ds_admin
    password: senha123

Para configurar o armazenamento de logs e recursos no HDFS, altere o arquivo standalone-server/conf/common.properties:

# Ativar armazenamento em HDFS
resource.storage.type=HDFS
resource.storage.upload.base.path=/dolphinscheduler_data
resource.hdfs.fs.defaultFS=hdfs://cluster-master:9820

Certifique-se de que as permissões no sistema de arquivos distribuído estejam adequadas:

hdfs dfs -chmod -R 777 /dolphinscheduler_data

Gerenciamento do Serviço Standalone

O DolphinScheduler fornece scripts para gerenciar o ciclo de vida do servidor daemon. Utilize os comandos abaixo conforme necessário:

Iniciar o serviço:

bash ./bin/dolphinscheduler-daemon.sh start standalone-server

Verificar o status:

bash ./bin/dolphinscheduler-daemon.sh status standalone-server

Interromper o serviço:

bash ./bin/dolphinscheduler-daemon.sh stop standalone-server

Após a inicialização bem-sucedida, a interface web poderá ser acessada via navegador. Por padrão, a URL segue o formato http://[IP_DO_SERVIDOR]:12345/dolphinscheduler/ui. As credenciais iniciais de administrador são:

  • Usuário: admin
  • Senha: dolphinscheduler123

Tags: DolphinScheduler MySQL Workflow-Automation Big-Data devops

Publicado em 6-23 22:12