Apprentissage rapide - Déploiement de la console Saturn

Déploiement de la console Saturn

Cette section présentera comment installer et déployer Saturn Console à partir de zéro.

1 Préparation avant le déploiement

1.1 Préparation du matériel

Au moins un serveur Linux, le nombre de serveurs dépend du cluster Saturn Console prévu et de la taille du cluster ZK.

1.2 Préparation du logiciel

JDK: 1.7+

ZooKeeper: 3.4.6+ (ZooKeeper 3.4.6 est recommandé ( lien de téléchargement sur le site officiel ), les versions supérieures ne sont pas vérifiées)

nodejs: 7.8.0+

2 Démarrez le déploiement

2.1 Installez ZooKeeper

Suivez la documentation officielle pour installer.

Pour un environnement de production, il est recommandé d'utiliser un cluster de 5 serveurs (1 Leader + 4 Follower).

Reportez-vous ici pour la configuration recommandée de ZooKeeper .

2.2 Installer MySQL

Actuellement, Saturn prend en charge 2 bases de données: MySQL et H2. H2 est principalement utilisé pour les tests et MySQL est recommandé pour les environnements de production. MySQL est principalement utilisé pour stocker la configuration des tâches et l'historique de configuration, la configuration du système et les informations d'espace de noms et de cluster zk, etc.

Concernant la version de MySQL, il n'y a aucune exigence.

Installez MySQL, suivez la documentation officielle de MySQL pour aucune instruction ici.

2.3 Préparation des données

L'opération suivante est pour MySQL, et une approche similaire peut être imitée pour H2.

2.3.1 Création de base de données

Le nom de la base de données peut être spécifié par vous-même. Voici un exemple:

CREATE DATABASE saturn CHARACTER SET utf8 COLLATE utf8_general_ci;

2.3.2 Création de schéma

Obtenez le dernier schema.sql à partir d' ici . Si vous souhaitez obtenir d'autres versions du schéma, vous pouvez les obtenir sur d'autres balises du code source.

Exécutez schema.sql.

2.4 Installer la console

2.4.1 Télécharger

Cliquez sur la dernière version de "Console Zip File" depuis https://github.com/vipshop/Saturn/releases , téléchargez saturn-console- {version} -exec.jar et placez-la dans un répertoire approprié.

Ce didacticiel utilise 3.x comme exemple.

2.4.2 Démarrer la console

nohup java -DSATURN_CONSOLE_DB_URL=jdbc:mysql://localhost:3306/saturn -DSATURN_CONSOLE_DB_USERNAME=your_username -DSATURN_CONSOLE_DB_PASSWORD=your_password -jar saturn-console-{
    
    version}-exec.jar &

Visitez http: // {ip}: 9088 pour voir la console saturn. Où ip fait référence à l'adresse IP de la machine sur laquelle la console est installée.

Le journal sera généré dans le chemin /apps/logs/saturn_console/saturn.console.log

2.4.2.1 Recommandation des paramètres JVM

Notez que si vous démarrez la console dans un environnement de production, il est recommandé d'ajouter quelques paramètres de démarrage JVM:

JDK 1.7:

-Xmx2G -Xms2G -XX:PermSize=256m -XX:MaxPermSize=512m -XX:+UseConcMarkSweepGC -XX:+UseCMSInitiatingOccupancyOnly -XX:CMSInitiatingOccupancyFraction=75 -XX:+ExplicitGCInvokesConcurrent -Xloggc:${HOME}/gc_zk.log -XX:+PrintGCDetails -XX:+PrintGCDateStamps -XX:ErrorFile=${HOME}/hs_err_%p.log -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=${HOME}

JDK 1.8:

-Xmx2G -Xms2G -XX:MetaspaceSize=256m -MaxMetaspaceSize=512m -XX:+UseConcMarkSweepGC -XX:+UseCMSInitiatingOccupancyOnly -XX:CMSInitiatingOccupancyFraction=75 -XX:+ExplicitGCInvokesConcurrent -Xloggc:${HOME}/gc_zk.log -XX:+PrintGCDetails -XX:+PrintGCDateStamps -XX:ErrorFile=${HOME}/hs_err_%p.log -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=${HOME}
2.4.2.2 Description des paramètres de démarrage
le nom du paramètre S'il faut prendre en charge les variables d'environnement / les paramètres JVM la description Dois tu
VIP_SATURN_CONSOLE_CLUSTER Tout soutien ID du cluster de la console N
SATURN_CONSOLE_DB_URL Tout soutien URL de connexion à la base de données ET
SATURN_CONSOLE_DB_USERNAME Tout soutien Nom d'utilisateur DB ET
SATURN_CONSOLE_DB_PASSWORD Tout soutien mot de passe ET
saturn.console.log Paramètres JVM (-D) Répertoire des journaux. La valeur par défaut est / apps / logs / saturn_console N
VIP_SATURN_DASHBOARD_REFRESH_INTERVAL_MINUTE Tout soutien Fréquence d'actualisation de l'arrière-plan du tableau de bord, en minutes. La valeur par défaut est 1. N
port de serveur Paramètres JVM (-D) Port de démarrage, par défaut 9088 N
authentification.enabled Paramètres JVM (-D) Activer ou non l'authentification utilisateur. Le défaut est faux. Voir la section sur l'authentification et l'autorisation pour plus de détails N
autorisation.enabled.default Paramètres JVM (-D) Activer ou non l'authentification utilisateur par défaut. Le défaut est faux. Voir la section sur l'authentification et l'autorisation pour plus de détails N
VIP_SATURN_DASHBOARD_NOT_RUNNING_WARN_DELAY_MS_WHEN_JOB_RUNNING Tout soutien Délai d'alarme du travail non exécuté lorsque le travail est en cours d'exécution, en millisecondes. La valeur par défaut est de 2 heures. N

Utilisez votre navigateur pour visiter http: // localhost: 9088 pour voir votre console Saturn!

2.4.3 Créer un cluster ZK

L'exécuteur obtiendra les informations de travail du domaine correspondant à partir de ZK et rapportera l'état d'exécution du travail à ZK. Et une console (cluster) peut gérer plusieurs clusters ZK. Ce qui suit présente comment ajouter un cluster zk dans la console. Supposons que l'id du cluster zk que nous voulons ajouter est test.

2.4.3.1 Lier la console et le cluster zk dans la configuration système

Dans CONSOLE_ZK_CLUSTER_MAPPING sous "Configuration système", liez la console et le cluster zk, le format est {console_id}: {zk_cluster_id}. Si VIP_SATURN_CONSOLE_CLUSTER n'est pas spécifié pour le démarrage de la console, la valeur par défaut est utilisée.

Insérez la description de l'image ici

2.4.3.2 Créer un cluster zk

Cliquez sur "Menu Centre d'enregistrement" et cliquez sur le bouton "Ajouter un cluster" dans le sous-menu "Gestion du cluster ZK". Entrez les informations ZK comme suit:
Insérez la description de l'image ici

Après l'ajout, vous verrez zk en ligne.

Remarque: l'ID de cluster doit être en anglais, pas en chinois ou en symboles spéciaux
Insérez la description de l'image ici

2.4.4 Créer un domaine

Le domaine est l'unité de gestion de plusieurs travaux. Le domaine est lié au cluster zk et les deux sont dans une relation plusieurs à un. Un domaine appartient à un seul cluster zk.

Sur la page "Gestion de domaine" du centre d'enregistrement, ajoutez un domaine (espace de noms) et liez-le au cluster zk.

Insérez la description de l'image ici

Après avoir créé le domaine, le chapitre suivant vous expliquera comment créer un travail Java.

2.5 À propos du déploiement du cluster de la console

Afin d'atteindre la haute disponibilité de la console, nous espérons tous que la console se compose de plusieurs serveurs. Il suffit de spécifier le même VIP_SATURN_CONSOLE_CLUSTER dans les variables d'environnement de plusieurs serveurs différents. Quant à la valeur de VIP_SATURN_CONSOLE_CLUSTER, vous pouvez la spécifier vous-même, juste un identifiant de cluster.

Je suppose que tu aimes

Origine blog.csdn.net/weixin_42528266/article/details/108603224
conseillé
Classement