Vous apprendre à utiliser NGINX et PM2 pour obtenir une haute disponibilité des serveurs VPS
Avec la popularité d'Internet et l'avancement continu de la technologie, les serveurs VPS sont devenus l'une des solutions de serveur préférées de nombreuses entreprises et développeurs. Cependant, face à une panne de serveur ou à des problèmes de réseau, la manière de garantir la haute disponibilité du serveur devient un problème important. Cet article expliquera comment utiliser NGINX et PM2 pour obtenir une haute disponibilité des serveurs VPS et fournira des exemples de code spécifiques.
Tout d'abord, nous devons installer et configurer NGINX sur le serveur VPS. Voici les étapes pour installer NGINX sur un système Ubuntu :
1.1 Mettre à jour le logiciel système : exécutez la commande suivante pour mettre à jour la liste des packages logiciels du système.
sudo apt update
1.2 Installer NGINX : Exécutez la commande suivante pour installer NGINX.
sudo apt install nginx
1.3 Configurer NGINX : Editez le fichier /etc/nginx/nginx.conf et modifiez la partie serveur comme suit :
server {
listen 80; server_name your_domain.com; location / { proxy_pass http://localhost:3000; }
}
Ici, NGINX est configuré comme reverse proxy forwards all demandes au port local 3000. Vous pouvez modifier les valeurs de server_name et proxy_pass en fonction de la situation réelle.
1.4 Redémarrer NGINX : exécutez la commande suivante pour redémarrer NGINX.
sudo service nginx restart
À ce stade, l'installation et la configuration de NGINX sont terminées.
Ensuite, nous devons installer et configurer PM2 sur le serveur VPS. Voici les étapes pour installer PM2 sur le système Ubuntu :
2.1 Installer PM2 : exécutez la commande suivante pour installer PM2.
sudo npm install -g pm2
2.2 Démarrez l'application : Dans le répertoire racine du projet, exécutez la commande suivante pour démarrer l'application.
pm2 start app.js
On suppose que le fichier d'entrée de votre application est app.js. Si votre application utilise d'autres fichiers d'entrée, modifiez la commande en conséquence.
2.3 Configurer le script de démarrage PM2 : exécutez la commande suivante pour configurer le script de démarrage PM2.
démarrage pm2
Cela générera un script de démarrage qui démarrera automatiquement PM2 au démarrage du système.
Maintenant, l'installation et la configuration de PM2 sont terminées.
Avec la base de NGINX et PM2, nous pouvons commencer à atteindre la haute disponibilité du serveur VPS. Voici les étapes spécifiques :
3.1 Définir le nombre de processus PM2 : Dans le répertoire racine du projet, exécutez la commande suivante pour définir le nombre de processus PM2.
pm2 scale app.js 3
Ici, le nombre de processus de l'application est fixé à 3. Vous pouvez définir la quantité appropriée en fonction des besoins réels.
3.2 Configurer l'équilibrage de charge NGINX : éditez le fichier /etc/nginx/nginx.conf et modifiez la partie serveur comme suit :
backend amont {
server localhost:4000; server localhost:5000; server localhost:6000;
}
serveur {
listen 80; server_name your_domain.com; location / { proxy_pass http://backend; }
}
ici Configurez NGINX comme un équilibreur de charge pour transmettre les demandes de manière uniforme aux trois processus d'application.
3.3 Redémarrer NGINX : exécutez la commande suivante pour redémarrer NGINX.
sudo service nginx restart
À ce stade, la configuration haute disponibilité du serveur VPS est terminée.
Résumé :
Cet article explique comment utiliser NGINX et PM2 pour obtenir une haute disponibilité des serveurs VPS et fournit des exemples de code spécifiques. En configurant le proxy inverse et l'équilibrage de charge de NGINX, ainsi qu'en définissant le nombre de processus PM2, nous pouvons garantir que le serveur peut toujours maintenir une haute disponibilité face aux pannes. J'espère que cet article vous aidera avec l'architecture et la configuration de votre serveur VPS. Si vous avez des questions, n'hésitez pas à laisser un message.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!