¡Diga adiós a la programación manual, la implementación del clúster Dolphin Scheduler 3.1.x le permite administrar fácilmente varias máquinas!

archivo

Reimpreso del primer pedazo de corazón.

1. Introducción

Dado que el documento de implementación del clúster de Dolphin Scheduling Organ Network está escrito de manera desordenada y es necesario saltar a muchos lugares para su operación durante el proceso de instalación, he resumido un documento que puede seguir directamente de principio a fin para facilitar el seguimiento. implementación y actualizaciones, operaciones relacionadas de agregar nodos y reducir nodos.

2. Prepárese con anticipación

2.1. Componentes básicos

  • JDK: descargue JDK (1.8+), instale y configure la variable de entorno JAVA_HOME y agregue el directorio bin debajo de él a la variable de entorno PATH. Si ya existe en su entorno, puede omitir este paso.
  • Paquete binario: descargue el paquete binario DolphinScheduler en la página de descarga
  • Base de datos: PostgreSQL (8.2.15+) o MySQL (5.7+), puede elegir uno de los dos. Por ejemplo, MySQL requiere la versión JDBC Driver 8, que se puede descargar desde el almacén central.
  • Centro de registro: ZooKeeper (3.4.6+), dirección de descarga.
  • Análisis del árbol de procesos
    • pstree de instalación de macOS
    • Fedora/Red/Hat/CentOS/Ubuntu/Debian instala psmisc.

Nota: DolphinScheduler en sí no depende de Hadoop, Hive, Spark, etc., pero si las tareas que ejecuta deben depender de ellos, necesita el soporte ambiental correspondiente.

3. Subir

Cargue el paquete binario y extráigalo a un directorio determinado. Usted mismo puede decidir la ubicación del directorio específico.

Preste atención al nombre del directorio. Es mejor agregar algunos caracteres después. El directorio de instalación y el directorio de descompresión del paquete binario deben tener nombres diferentes para distinguirlos.

tar -xvf apache-dolphinscheduler-3.1.7-bin.tar.gz
mv apache-dolphinscheduler-3.1.7-bin dolphinscheduler-3.1.7-origin

El siguiente origen indica que este es el archivo de descompresión del paquete binario original. Si hay cambios de configuración posteriores, puede modificar los archivos en el directorio y volver a ejecutar el script de instalación.

4. Usuario

4.1. Configurar permisos y exención de contraseña de usuario

Cree un usuario de implementación y asegúrese de configurar sudo sin contraseña. Tomemos como ejemplo la creación del usuario Dolphinscheduler:

# 创建用户需使用 root 登录
useradd dolphinscheduler

# 添加密码
echo "dolphinscheduler" | passwd --stdin dolphinscheduler

# 配置 sudo 免密
sed -i '$adolphinscheduler  ALL=(ALL)  NOPASSWD: ALL' /etc/sudoers
sed -i 's/Defaults    requirett/#Defaults    requirett/g' /etc/sudoers

# 修改目录权限,使得部署用户对二进制包解压后的 apache-dolphinscheduler-*-bin 目录有操作权限
chown -R dolphinscheduler:dolphinscheduler apache-dolphinscheduler-*-bin

Aviso:

  • Debido a que el servicio de ejecución de tareas usa sudo -u {linux-user} para cambiar entre diferentes usuarios de Linux para implementar trabajos en ejecución multiinquilino, el usuario de implementación debe tener permisos sudo y no tener contraseña. Si los principiantes no lo entienden, pueden ignorar este punto temporalmente.
  • Si encuentra la línea "Requisito predeterminado" en el archivo /etc/sudoers, coméntela también.

4.2. Configurar el inicio de sesión sin contraseña SSH de la máquina

Dado que los recursos deben enviarse a diferentes máquinas durante la instalación, se requiere un inicio de sesión sin contraseña SSH entre cada máquina. Los pasos para configurar el inicio de sesión sin contraseña son los siguientes:

su dolphinscheduler

ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
# 一定要执行下面这个命令,否则免密登录会失败
chmod 600 ~/.ssh/authorized_keys

Nota: Una vez completada la configuración, puede ejecutar el comando ssh localhostpara determinar si fue exitoso. Si puede iniciar sesión a través de ssh sin ingresar una contraseña, es exitoso.

5. Inicie el cuidador del zoológico

Simplemente inicie zookeeper en el clúster.

6. Modificar la configuración

Todas las operaciones siguientes se realizan bajo el usuario de DolphinScheduler.

Después de completar la preparación del entorno básico, debe modificar el archivo de configuración de acuerdo con el entorno de su máquina. Los archivos de configuración se pueden encontrar en el directorio bin/env, son install_env.shy dolphinscheduler_env.sh.

6.1. instalar_env.sh

install_env.shEl archivo configura en qué máquinas se instalará DolphinScheduler y qué servicios se instalarán en cada máquina. Puede encontrar este archivo en la ruta bin/env/y luego modificar la configuración correspondiente de acuerdo con las instrucciones a continuación.

# ---------------------------------------------------------
# INSTALL MACHINE
# ---------------------------------------------------------
# A comma separated list of machine hostname or IP would be installed DolphinScheduler,
# including master, worker, api, alert. If you want to deploy in pseudo-distributed
# mode, just write a pseudo-distributed hostname
# Example for hostnames: ips="ds1,ds2,ds3,ds4,ds5", Example for IPs: ips="192.168.8.1,192.168.8.2,192.168.8.3,192.168.8.4,192.168.8.5"
# 配置海豚调度器要安装到那些机器上
ips=${ips:-"ds01,ds02,ds03,hadoop02,hadoop03,hadoop04,hadoop05,hadoop06,hadoop07,hadoop08"}

# Port of SSH protocol, default value is 22. For now we only support same port in all `ips` machine
# modify it if you use different ssh port
sshPort=${sshPort:-"22"}

# A comma separated list of machine hostname or IP would be installed Master server, it
# must be a subset of configuration `ips`.
# Example for hostnames: masters="ds1,ds2", Example for IPs: masters="192.168.8.1,192.168.8.2"
# 配置 master 角色要安装到哪些机器上
masters=${masters:-"ds01,ds02,ds03,hadoop04,hadoop05,hadoop06,hadoop07,hadoop08"}

# A comma separated list of machine <hostname>:<workerGroup> or <IP>:<workerGroup>.All hostname or IP must be a
# subset of configuration `ips`, And workerGroup have default value as `default`, but we recommend you declare behind the hosts
# Example for hostnames: workers="ds1:default,ds2:default,ds3:default", Example for IPs: workers="192.168.8.1:default,192.168.8.2:default,192.168.8.3:default"
# 配置 worker 角色要安装到哪些机器上,默认都放到 default 的 worker 分组内,其他分组,可以通过海豚调度器界面进行单独配置
workers=${workers:-"ds01:default,ds02:default,ds03:default,hadoop02:default,hadoop03:default,hadoop04:default,hadoop05:default,hadoop06:default,hadoop07:default,hadoop08:default"}

# A comma separated list of machine hostname or IP would be installed Alert server, it
# must be a subset of configuration `ips`.
# Example for hostname: alertServer="ds3", Example for IP: alertServer="192.168.8.3"
# 配置 alert 角色安装到哪个机器上,配置一台机器即可
alertServer=${alertServer:-"hadoop03"}

# A comma separated list of machine hostname or IP would be installed API server, it
# must be a subset of configuration `ips`.
# Example for hostname: apiServers="ds1", Example for IP: apiServers="192.168.8.1"
# 配置 api 角色安装到哪个机器上,配置一台机器即可
apiServers=${apiServers:-"hadoop04"}

# The directory to install DolphinScheduler for all machine we config above. It will automatically be created by `install.sh` script if not exists.
# Do not set this configuration same as the current path (pwd). Do not add quotes to it if you using related path.
# 配置安装路径,将会在所有海豚集群的机器上安装服务,一定要和上面解压的二进制包目录区分开,最好带上版本号,以方便后续的升级操作。
installPath=${installPath:-"/opt/dolphinscheduler-3.1.5"}

# The user to deploy DolphinScheduler for all machine we config above. For now user must create by yourself before running `install.sh`
# script. The user needs to have sudo privileges and permissions to operate hdfs. If hdfs is enabled than the root directory needs
# to be created by this user
# 部署使用的用户,用上面自己新建的用户即可
deployUser=${deployUser:-"dolphinscheduler"}

# The root of zookeeper, for now DolphinScheduler default registry server is zookeeper.
# 配置注册到 zookeeper znode 名称,如果配置了多个海豚集群,则需要配置不同的名称
zkRoot=${zkRoot:-"/dolphinscheduler"}

6.2. delfinescheduler_env.sh

Este archivo se puede bin/env/encontrar en la ruta. Este archivo se utiliza para configurar algunos entornos utilizados. Simplemente siga las instrucciones a continuación para modificar la configuración correspondiente:

# JDK 路径,一定要修改
export JAVA_HOME=${JAVA_HOME:-/usr/java/jdk1.8.0_202}

# 数据库类型,支持 mysql、postgresql
export DATABASE=${DATABASE:-mysql}
export SPRING_PROFILES_ACTIVE=${DATABASE}
# 连接 url,主要修改下面的 hostname,最后配置的是东八区
export SPRING_DATASOURCE_URL="jdbc:mysql://hostname:3306/dolphinscheduler?useUnicode=true&characterEncoding=UTF-8&useSSL=false&serverTimezone=Asia/Shanghai"
export SPRING_DATASOURCE_USERNAME=dolphinscheduler
# 如果密码比较复杂,则需要前后使用英文单引号括起来
export SPRING_DATASOURCE_PASSWORD='xxxxxxxxxxxxx'

export SPRING_CACHE_TYPE=${SPRING_CACHE_TYPE:-none}
# 配置各角色 JVM 启动时使用的时区,默认为 -UTC,如果想要完全支持东八区,则设置为 -GMT+8
export SPRING_JACKSON_TIME_ZONE=${SPRING_JACKSON_TIME_ZONE:-GMT+8}
export MASTER_FETCH_COMMAND_NUM=${MASTER_FETCH_COMMAND_NUM:-10}

export REGISTRY_TYPE=${REGISTRY_TYPE:-zookeeper}
# 配置使用的 zookeeper 地址
export REGISTRY_ZOOKEEPER_CONNECT_STRING=${REGISTRY_ZOOKEEPER_CONNECT_STRING:-hadoop01:2181,hadoop02:2181,hadoop03:2181}

# 配置使用到的一些环境变量,按照自己的需要进行配置即可,所有需要的组件,都自己安装
export HADOOP_HOME=${HADOOP_HOME:-/opt/cloudera/parcels/CDH/lib/hadoop}
export HADOOP_CONF_DIR=${HADOOP_CONF_DIR:-/etc/hadoop/conf}
export SPARK_HOME1=${SPARK_HOME1:-/opt/soft/spark1}
export SPARK_HOME2=${SPARK_HOME2:-/opt/spark-3.3.2}
export PYTHON_HOME=${PYTHON_HOME:-/opt/python-3.9.16}
export HIVE_HOME=${HIVE_HOME:-/opt/cloudera/parcels/CDH/lib/hive}
export FLINK_HOME=${FLINK_HOME:-/opt/flink-1.15.3}
export DATAX_HOME=${DATAX_HOME:-/opt/datax}
export SEATUNNEL_HOME=${SEATUNNEL_HOME:-/opt/seatunnel-2.1.3}
export CHUNJUN_HOME=${CHUNJUN_HOME:-/opt/soft/chunjun}

export PATH=$HADOOP_HOME/bin:$SPARK_HOME1/bin:$SPARK_HOME2/bin:$PYTHON_HOME/bin:$JAVA_HOME/bin:$HIVE_HOME/bin:$FLINK_HOME/bin:$DATAX_HOME/bin:$SEATUNNEL_HOME/bin:$CHUNJUN_HOME/bin:$PATH

6.3. propiedades.comunes

Descargue hdfs-site.xml los core-site.xmlarchivos y de su propio clúster de hadoop y luego colóquelos en el directorio api-server/conf/y worker-server/conf/. Si es un clúster nativo de Apache creado por usted mismo, puede encontrarlo en el directorio conf de cada componente. Si es CDH, puede descargarlo directamente a través de la interfaz CDH.

Modifique este archivo en el directorio api-server/conf/y worker-server/conf/. Este archivo se utiliza principalmente para configurar parámetros relacionados con la carga de recursos, como cargar recursos de Dolphin a HDFS, etc. Simplemente modifíquelo de acuerdo con las siguientes instrucciones:

# 本地路径,主要用来存放任务运行时的临时文件,要保证用户对该文件具有读写权限,一般保持默认即可,如果后续任务运行报错说是对该目录下的文件没有操作权限,直接将该目录权限修改为 777 即可
data.basedir.path=/tmp/dolphinscheduler

# resource view suffixs
#resource.view.suffixs=txt,log,sh,bat,conf,cfg,py,java,sql,xml,hql,properties,json,yml,yaml,ini,js

# 保存资源的地方,可用值为: HDFS, S3, OSS, NONE
resource.storage.type=HDFS
# 资源上传的基本路径,必须以 /dolphinscheduler 开头,要保证用户对该目录有读写权限
resource.storage.upload.base.path=/dolphinscheduler

# The AWS access key. if resource.storage.type=S3 or use EMR-Task, This configuration is required
resource.aws.access.key.id=minioadmin
# The AWS secret access key. if resource.storage.type=S3 or use EMR-Task, This configuration is required
resource.aws.secret.access.key=minioadmin
# The AWS Region to use. if resource.storage.type=S3 or use EMR-Task, This configuration is required
resource.aws.region=cn-north-1
# The name of the bucket. You need to create them by yourself. Otherwise, the system cannot start. All buckets in Amazon S3 share a single namespace; ensure the bucket is given a unique name.
resource.aws.s3.bucket.name=dolphinscheduler
# You need to set this parameter when private cloud s3. If S3 uses public cloud, you only need to set resource.aws.region or set to the endpoint of a public cloud such as S3.cn-north-1.amazonaws.com.cn
resource.aws.s3.endpoint=http://localhost:9000

# alibaba cloud access key id, required if you set resource.storage.type=OSS
resource.alibaba.cloud.access.key.id=<your-access-key-id>
# alibaba cloud access key secret, required if you set resource.storage.type=OSS
resource.alibaba.cloud.access.key.secret=<your-access-key-secret>
# alibaba cloud region, required if you set resource.storage.type=OSS
resource.alibaba.cloud.region=cn-hangzhou
# oss bucket name, required if you set resource.storage.type=OSS
resource.alibaba.cloud.oss.bucket.name=dolphinscheduler
# oss bucket endpoint, required if you set resource.storage.type=OSS
resource.alibaba.cloud.oss.endpoint=https://oss-cn-hangzhou.aliyuncs.com

# if resource.storage.type=HDFS, the user must have the permission to create directories under the HDFS root path
resource.hdfs.root.user=hdfs
# if resource.storage.type=S3, the value like: s3a://dolphinscheduler; if resource.storage.type=HDFS and namenode HA is enabled, you need to copy core-site.xml and hdfs-site.xml to conf dir
# 
resource.hdfs.fs.defaultFS=hdfs://bigdata:8020

# whether to startup kerberos
hadoop.security.authentication.startup.state=false

# java.security.krb5.conf path
java.security.krb5.conf.path=/opt/krb5.conf

# login user from keytab username
[email protected]

# login user from keytab path
login.user.keytab.path=/opt/hdfs.headless.keytab

# kerberos expire time, the unit is hour
kerberos.expire.time=2


# resourcemanager port, the default value is 8088 if not specified
resource.manager.httpaddress.port=8088
# if resourcemanager HA is enabled, please set the HA IPs; if resourcemanager is single, keep this value empty
yarn.resourcemanager.ha.rm.ids=hadoop02,hadoop03
# if resourcemanager HA is enabled or not use resourcemanager, please keep the default value; If resourcemanager is single, you only need to replace ds1 to actual resourcemanager hostname
yarn.application.status.address=http://ds1:%s/ws/v1/cluster/apps/%s
# job history status url when application number threshold is reached(default 10000, maybe it was set to 1000)
yarn.job.history.status.address=http://hadoop02:19888/ws/v1/history/mapreduce/jobs/%s

# datasource encryption enable
datasource.encryption.enable=false

# datasource encryption salt
datasource.encryption.salt=!@#$%^&*

# data quality option
data-quality.jar.name=dolphinscheduler-data-quality-dev-SNAPSHOT.jar

#data-quality.error.output.path=/tmp/data-quality-error-data

# Network IP gets priority, default inner outer

# Whether hive SQL is executed in the same session
support.hive.oneSession=false

# use sudo or not, if set true, executing user is tenant user and deploy user needs sudo permissions; if set false, executing user is the deploy user and doesn't need sudo permissions
sudo.enable=true
setTaskDirToTenant.enable=false

# network interface preferred like eth0, default: empty
#dolphin.scheduler.network.interface.preferred=

# network IP gets priority, default: inner outer
#dolphin.scheduler.network.priority.strategy=default

# system env path
#dolphinscheduler.env.path=dolphinscheduler_env.sh

# development state
development.state=false

# rpc port
alert.rpc.port=50052

# set path of conda.sh
conda.path=/opt/anaconda3/etc/profile.d/conda.sh

# Task resource limit state
task.resource.limit.state=false

# mlflow task plugin preset repository
ml.mlflow.preset_repository=https://github.com/apache/dolphinscheduler-mlflow
# mlflow task plugin preset repository version
ml.mlflow.preset_repository_version="main"

6.4. aplicación.yaml

Debe modificar los archivos /conf/application.yaml en todos los roles, incluidos: master-server/conf/application.yaml, Workers-server/conf/application.yaml, api-server/conf/application.yaml, alert- server/conf /application.yaml, la modificación principal es la configuración de la zona horaria, las modificaciones específicas son las siguientes:

spring:
  banner:
    charset: UTF-8
  jackson:
    # 将时区设置为东八区,只修改这一个地方即可
    time-zone: GMT+8
    date-format: "yyyy-MM-dd HH:mm:ss"

6.5. servicio.57a50399.js y servicio.57a50399.js.gz

Estos dos archivos están en los directorios api-server/ui/assets/y .ui/assets/

Cambie a estos dos directorios respectivamente, luego busque estos dos archivos respectivamente, luego ábralos con el comando vim, luego busque 15e3 y, después de encontrarlos, cámbielos a 15e5. Esto cambia el tiempo de espera de respuesta de la página. El valor predeterminado 15e3 significa 15 segundos. Lo cambiamos a 1500 segundos. Al cargar archivos grandes, no se informará ningún error debido al tiempo de espera de la página.

archivo

7. Inicialice la base de datos

Configuración del controlador

Copie el controlador mysql (8.x) al directorio lib de cada función del programador Dolphin, incluido: api-server/libs, alert-server/libs, master-server/libs, worker-server/libs, tools/libs.

usuario de base de datos

Inicie sesión en mysql como usuario root y luego ejecute el siguiente sql. Tanto mysql5 como mysql8 son compatibles:

create database `dolphinscheduler` character set utf8mb4 collate utf8mb4_general_ci;
create user 'dolphinscheduler'@'%' IDENTIFIED WITH mysql_native_password by 'your_password';
grant ALL PRIVILEGES ON dolphinscheduler.* to 'dolphinscheduler'@'%';
flush privileges;

Ejecute el script de actualización de la base de datos:

bash tools/bin/upgrade-schema.sh

8. Instalación

bash ./bin/install.sh

La ejecución de este script transferirá de forma remota todos los archivos locales a todas las máquinas configuradas en el archivo de configuración anterior a través de scp, luego detendrá los roles en las máquinas correspondientes y luego iniciará los roles en todas las máquinas.

Después de la primera instalación, se han iniciado todos los roles y no es necesario iniciar ningún rol por separado. Si alguno de los roles no se inicia, puede consultar los registros correspondientes en la máquina correspondiente para ver qué está causando el problema.

9. Iniciar y detener servicios.

# 一键停止集群所有服务
bash ./bin/stop-all.sh

# 一键开启集群所有服务
bash ./bin/start-all.sh

# 启停 Master
bash ./bin/dolphinscheduler-daemon.sh stop master-server
bash ./bin/dolphinscheduler-daemon.sh start master-server

# 启停 Worker
bash ./bin/dolphinscheduler-daemon.sh start worker-server
bash ./bin/dolphinscheduler-daemon.sh stop worker-server

# 启停 Api
bash ./bin/dolphinscheduler-daemon.sh start api-server
bash ./bin/dolphinscheduler-daemon.sh stop api-server

# 启停 Alert
bash ./bin/dolphinscheduler-daemon.sh start alert-server
bash ./bin/dolphinscheduler-daemon.sh stop alert-server

Es importante tener en cuenta que estos scripts deben ser ejecutados por el usuario que instaló Dolphin Scheduler; de lo contrario, habrá algunos problemas de permisos.

Cada servicio <service>/conf/dolphinscheduler_env.shtiene dolphinscheduler_env.sharchivos en la ruta para facilitar las necesidades del microservicio. Esto significa que puede configurarlo en el servicio correspondiente <service>/conf/dolphinscheduler_env.shy luego usar <service>/bin/start.shcomandos para iniciar cada servicio en función de diferentes variables de entorno. Pero si usa el comando /bin/dolphinscheduler-daemon.sh start <service>para iniciar el servidor, sobrescribirá bin/env/dolphinscheduler_env.shel archivo <service>/conf/dolphinscheduler_env.shy luego iniciará el servicio. Esto se hace para reducir el costo para los usuarios de modificar la configuración.

10. Expansión

10.1. Enfoque estándar

Consulte los pasos anteriores y proceda de la siguiente manera:

  1. nuevo nodo
    1. Instalar y configurar JDK.
    2. Cree un nuevo usuario de Dolphin (usuario de Linux) y luego configure el inicio de sesión sin contraseña, permisos, etc.
  2. En la máquina donde se extrajo el paquete de instalación binario antes de instalar el programador Dolphin.
    1. Inicie sesión como el usuario que instaló Dolphin.
    2. Al cambiar a la instalación anterior de Dolphin Scheduler, descomprima el paquete de instalación binario y modifique el archivo de configuración: bin/env/install_env.shEn el archivo de configuración, modifique los roles que deben implementarse en el nuevo nodo.
    3. Ejecute /bin/install.shel archivo para instalar. El script reubicará bin/env/install_env.shtodo el directorio en todas las máquinas de acuerdo con la configuración en el archivo, scpluego detendrá las funciones en todas las máquinas y luego iniciará todas las funciones nuevamente.

Desventajas de este método: si hay muchas tareas de nivel minuto en el programador Dolphin, o tareas en tiempo real como flink y spark, esta operación detendrá todos los roles y luego los iniciará, lo que llevará una cierta cantidad de tiempo durante. Durante este período, estas tareas pueden detenerse de manera anormal debido al reinicio de todo el clúster o pueden no programarse normalmente. Sin embargo, el programador Dolphin implementa funciones como la tolerancia automática a fallas y la recuperación ante desastres, por lo que puede hacer esto y finalmente observar si todas las tareas se ejecutan normalmente.

10.2. El camino fácil

Consulte los pasos anteriores y proceda de la siguiente manera:

  1. nuevo nodo
    1. Instalar y configurar JDK.
    2. Cree un nuevo usuario de Dolphin (usuario de Linux) y luego configure el inicio de sesión sin contraseña, permisos, etc.
  2. En la máquina donde se extrajo el paquete de instalación binario antes de instalar el programador Dolphin.
    1. Inicie sesión como el usuario que instaló Dolphin.
    2. Comprima directamente todo el directorio donde se modificó la configuración anteriormente y luego transfiéralo al nuevo nodo.
  3. nuevo nodo
    1. Descomprima el archivo en el nuevo nodo y cámbiele el nombre al bin/env/install_env.shdirectorio de instalación configurado en el archivo de configuración anterior.
    2. Inicie sesión como el usuario que instaló Dolphin.
    3. Inicie qué roles deben implementarse en el nuevo nodo. La ubicación del script específico es: /bin/dolphinscheduler-daemon.shy el comando de inicio es:
./dolphinscheduler-daemon.sh start master-server
./dolphinscheduler-daemon.sh start worker-server
  1. Inicie sesión en la interfaz de Dolphin Scheduler y luego observe en el "Centro de monitoreo" si la función correspondiente se inicia en el nuevo nodo.

11.Reducir

  1. En la máquina que necesita estar fuera de línea, /bin/dolphinscheduler-daemon.shdetenga todos los roles en la máquina mediante el script. El comando de detención es:
./dolphinscheduler-daemon.sh stop worker-server
  1. Inicie sesión en la interfaz de Dolphin Scheduler y luego observe en el "Centro de monitoreo" si el carácter que se detuvo en la máquina ha desaparecido.
  2. En la máquina donde se descomprimió el paquete de instalación binaria al instalar Dolphin Scheduler anteriormente
  3. Inicie sesión como el usuario que instaló Dolphin.
  4. Modificar el archivo de configuración: bin/env/install_env.shen este archivo de configuración, elimine la máquina correspondiente al rol fuera de línea.

12. Actualizar

Siga los pasos anteriores y opere paso a paso. Para las operaciones que ya se han realizado, no es necesario realizar una segunda operación. Aquí hay algunos pasos específicos:

  1. Cargue el nuevo paquete binario.
  2. Descomprímalo en un directorio diferente al directorio de instalación de la versión anterior o cámbiele el nombre.
  3. Una forma relativamente sencilla de modificar el archivo de configuración es copiar todos los archivos de configuración involucrados en los pasos anteriores desde el directorio instalado previamente al directorio de la nueva versión y reemplazarlos.
  4. Empaquete todos los componentes implementados en otros nodos, luego descomprímalos y colóquelos en la ubicación correspondiente del nuevo nodo. Para componentes específicos que deben copiarse, puede ver la configuración en el archivo Dolphinscheduler_env.sh.
  5. Para configurar el controlador, consulte los pasos en "Inicialización de la base de datos".
  6. Detenga el clúster anterior.
  7. Haga una copia de seguridad de toda la base de datos.
  8. Ejecute el script de actualización de la base de datos y consulte los pasos en "Inicialización de la base de datos".
  9. Para ejecutar el script de instalación, consulte "Instalación".
  10. Una vez completada la actualización, inicie sesión en la interfaz y verifique el "Centro de monitoreo" para ver si todos los roles se iniciaron exitosamente.

Al reimprimir el documento, indique la fuente. Todos son bienvenidos a discutir tecnología juntos. Si algo anda mal, discútanlo juntos.

Enlace original: https://blog.csdn.net/u012443641/article/details/131419391

¡Este artículo fue publicado por Beluga Open Source Technology !

Linus tomó el asunto en sus propias manos para evitar que los desarrolladores del kernel reemplacen las pestañas con espacios. Su padre es uno de los pocos líderes que puede escribir código, su segundo hijo es el director del departamento de tecnología de código abierto y su hijo menor es un núcleo. Colaborador de código abierto Huawei: tomó 1 año convertir 5000 aplicaciones móviles de uso común Migración completa a Hongmeng Java es el lenguaje más propenso a vulnerabilidades de terceros Wang Chenglu, el padre de Hongmeng: el código abierto Hongmeng es la única innovación arquitectónica. En el campo del software básico en China, Ma Huateng y Zhou Hongyi se dan la mano para "eliminar rencores". Ex desarrollador de Microsoft: el rendimiento de Windows 11 es "ridículamente malo " " Aunque lo que Laoxiangji es de código abierto no es el código, las razones detrás de él. Son muy conmovedores. Meta Llama 3 se lanza oficialmente. Google anuncia una reestructuración a gran escala.
{{o.nombre}}
{{m.nombre}}

Supongo que te gusta

Origin my.oschina.net/dailidong/blog/11054375
Recomendado
Clasificación