[xxl-job] Construction d'un système de planification de tâches distribué xxl-job

XXL-JOB est une plate-forme légère de planification de tâches distribuées. Ses principaux objectifs de conception sont un développement rapide, un apprentissage facile, léger, facile à étendre et prêt à l'emploi.

Pour plus d'introduction, veuillez visiter le site officiel : Plateforme de planification de tâches distribuée XXL-JOB

Insérer la description de l'image ici

1. Centre de planification des tâches (basé sur Docker) [Version 2.4.0]

Prérequis : Le centre de planification des tâches (administrateur du travail xxl) dépend de mysql , donc mysql doit être installé ! Il existe deux manières d'installer MySQL : le déploiement Docker ou l'installation ou la compilation en ligne, l'installation et le déploiement. Veuillez résoudre l'opération spécifique par vous-même.

La méthode d'implémentation principale est légèrement différente de la recommandation officielle. Ici, application.propertiesle fichier de configuration est mappé à l'intérieur du conteneur, puis spring.config.locationle fichier de configuration de démarrage par défaut est remplacé.

1. Téléchargez le script de base de données et exécutez-le dans la base de données

wget https://github.com/xuxueli/xxl-job/raw/2.4.0/doc/db/tables_xxl_job.sql

La manière de procéder ne sera pas décrite ici.

2. Tirez l'image

Adresse officielle de l'image de Docker Hub : xxl-job-admin

docker pull xuxueli/xxl-job-admin

L'exécution signalera une erreur :

Using default tag: latest Error response from daemon: manifest for xuxueli/xxl-job-admin:latest not found

pourquoi ? Parce que le responsable n'a pas la dernière balise, il vous indiquera que le téléchargement a échoué ! Alors comment le télécharger ? Une version doit être formulée ! Au moment de la publication de cet article, la dernière version est la 2.4.0

Ensuite, la commande de téléchargement est :

docker pull xuxueli/xxl-job-admin:2.4.0

L'image peut également être automatiquement extraite au démarrage du menu fixe suivant.

3. Téléchargez application.properties

wget https://github.com/xuxueli/xxl-job/raw/2.4.0/xxl-job-admin/src/main/resources/application.properties

4. Modifier application.properties

Modifiez principalement le port de démarrage du service (si vous utilisez le 8080 par défaut, vous ne pouvez pas le modifier), les informations de connexion mysql, les informations de connexion SMTP (vous ne pouvez pas le modifier si vous n'avez pas besoin de SMTP pour envoyer des e-mails)
Insérer la description de l'image ici

5. Démarrez le conteneur

docker run -d --name xxl-job-admin \

-v [修改后的配置文件位置]:/application.properties \

-p 8008:8080 --network=1panel-network \

-e PARAMS='--spring.config.location=/application.properties' \

--restart always \

xuxueli/xxl-job-admin:2.4.0

Vous trouverez ci-dessous une explication de chaque paramètre :

  • -d: Exécutez le conteneur en arrière-plan (exécuté en mode démon).
  • --name xxl-job-admin: Spécifiez le nom du conteneur comme "xxl-job-admin".
  • -v [修改后的配置文件位置]:/application.properties: Le chemin pour monter le fichier de configuration modifié dans le conteneur /application.properties. Vous pouvez utiliser ce fichier pour configurer l'application xxl-job-admin.
  • -p 8008:8080:Mappage de port, mappez le port 8008 de l'hôte au port 8080 du conteneur, afin que vous puissiez accéder à l'application xxl-job-admin via le port 8008 de l'hôte.
  • --network=1panel-network: Connectez le conteneur à un réseau nommé "1panel-network" afin qu'il puisse communiquer avec d'autres conteneurs.
  • -e PARAMS='--spring.config.location=/application.properties': Définissez les variables d'environnement PARAMS, qui --spring.config.location=/application.propertiesfont référence au démarrage de xxl-job admin à l'aide du fichier de configuration spécifié.
  • --restart always, lorsque le conteneur se ferme de manière inattendue ou que l'hôte est redémarré, Docker redémarrera automatiquement xxl-job-adminle conteneur
  • xuxueli/xxl-job-admin:2.4.0: Spécifiez l'image Docker à exécuter, le numéro de version est 2.4.0, qui est l'image officielle de l'application xxl-job-admin.

Visitez simplement http://ip:8008/xxl-job-admin (si la configuration a été modifiée, visitez http://ip:[server.port]/[server.context-path] ). Le nom d'utilisateur par défaut est admin. Le mot de passe est 123456

Insérer la description de l'image ici

2. Actionneur [Version 2.4.0]

1. Téléchargez la source et compilez-la dans un package jar

2. Installez l'environnement openjdk [Ubuntu 2202]

Exécutez simplement le code suivant

sudo apt install openjdk-11-jdk -y

Une fois terminé, cela peut être vérifié en vérifiant la version Java :

java -version

La sortie de ce type indique le succès

openjdk 19.0.2 2023-01-17
OpenJDK Runtime Environment (build 19.0.2+7-Ubuntu-0ubuntu322.04)
OpenJDK 64-Bit Server VM (build 19.0.2+7-Ubuntu-0ubuntu322.04, mixed mode, sharing)

3. Téléchargez et modifiez en fonction de la situation réelle

wget https://github.com/xuxueli/xxl-job/raw/2.4.0/xxl-job-executor-samples/xxl-job-executor-sample-springboot/src/main/resources/application.properties

Modifiez principalement l'adresse de l'administrateur du travail xxl et le nom de l'exécuteur testamentaire

Insérer la description de l'image ici

4. Courez

nohup java -jar ./xxl-job-executor-sample-springboot.jar --spring.config.location=./application.properties &

Voici une explication de la ligne de commande ci-dessus :

  • nohupLa commande :nohup permet au programme de s'exécuter en arrière-plan et le programme continuera à s'exécuter même si la session de terminal en cours est fermée.
  • java -jar ./xxl-job-executor-sample-springboot.jar: Il s'agit de la commande pour exécuter une application Java. Utilisez java -jarpour spécifier le fichier JAR à exécuter, le voici xxl-job-executor-sample-springboot.jar.
  • --spring.config.location=./application.properties: Spécifiez le chemin du fichier de configuration utilisé par l'application via ce paramètre ./application.properties. Le chemin du fichier de configuration peut être modifié en fonction de la situation réelle.
  • &: Ce symbole signifie placer le programme en arrière-plan, vous permettant de continuer à exécuter d'autres commandes dans le terminal.

5. Vérification

Le nœud correspondant dans la gestion de l'exécuteur a été automatiquement enregistré, et vous pouvez ensuite organiser un calendrier régulier pour exécuter le script shell, etc.

Insérer la description de l'image ici

Après avoir terminé le déploiement initial du système de planification de tâches distribuées xxl-job, vous pouvez ajouter plus d'exécuteurs et de nœuds en fonction de la situation, ou ajouter le déploiement HA du centre de planification des tâches d'administration xxl-job en fonction de la situation réelle. Il y a encore beaucoup de choses dans l'article que je n'ai pas encore compris et je dois continuer à étudier. Désolé s'il y a des défauts.

Guess you like

Origin blog.csdn.net/u012153104/article/details/131704125