Maison  >  Article  >  Opération et maintenance  >  Comment configurer la redirection de port hautement disponible sous Linux

Comment configurer la redirection de port hautement disponible sous Linux

PHPz
PHPzoriginal
2023-07-06 08:57:063209parcourir

Comment configurer la redirection de port haute disponibilité sous Linux

1. Aperçu du contexte
Dans l'architecture des systèmes distribués, la redirection de port est une technologie réseau très courante. Grâce à la redirection de port, les demandes de connexion du réseau externe peuvent être transmises aux nœuds internes, obtenant ainsi une haute disponibilité et un équilibrage de charge des services externes. Sur le système d'exploitation Linux, nous pouvons utiliser certains outils et configurations pour obtenir une redirection de port haute disponibilité. Cet article présentera en détail comment configurer et gérer la redirection de port haute disponibilité à l'aide du système d'exploitation Linux.

2. Utilisez iptables pour implémenter la redirection de port
iptables est un logiciel de pare-feu couramment utilisé sur les systèmes Linux et peut également être utilisé pour implémenter des fonctions de redirection de port. Voici un exemple d'utilisation d'iptables pour implémenter la redirection de port :

  1. Tout d'abord, vous devez confirmer que le logiciel iptables a été installé sur le système. Exécutez la commande suivante sur le terminal :
sudo apt-get install iptables
  1. Configurez les règles de redirection de port. Supposons que nous devions transmettre la demande d'accès de l'IP du réseau public vers un nœud sur l'intranet, vous pouvez utiliser la commande suivante pour configurer la redirection de port :
sudo iptables -A PREROUTING -t nat -i eth0 -p tcp --dport 80 -j DNAT --to 192.168.0.10:80
sudo iptables -A FORWARD -p tcp -d 192.168.0.10 --dport 80 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT

Parmi eux, eth0 est le réseau externe interface, 192.168.0.10 est l'adresse IP du nœud intranet et 80 est le numéro de port qui doit être transféré. eth0为外部网络接口,192.168.0.10为内网节点的IP地址,80为需要转发的端口号。

  1. 保存配置。当以上配置完成后,我们需要将配置保存到iptables配置文件中,以便系统重启后自动加载配置。执行以下命令保存配置:
sudo sh -c "iptables-save > /etc/iptables.rules"
  1. 添加自启动脚本。为了使配置在系统启动时自动加载,我们可以创建一个自启动脚本,并添加到系统的启动服务中。创建一个名为iptables.sh的脚本,内容如下:
#!/bin/sh
/sbin/iptables-restore < /etc/iptables.rules

将脚本保存到/etc/init.d目录下,并为脚本添加执行权限:

sudo chmod +x /etc/init.d/iptables.sh

然后,将脚本添加到启动服务中:

sudo update-rc.d iptables.sh defaults 99

至此,我们完成了使用iptables实现端口转发的配置。

三、使用HAProxy实现高可用的端口转发
除了使用iptables外,我们还可以使用HAProxy来实现高可用的端口转发。HAProxy是一款可靠的、高性能的负载均衡软件,适用于分布式系统中的端口转发需求。以下是一个使用HAProxy配置高可用的端口转发的示例:

  1. 首先,需要确认HAProxy软件已经安装在系统上。在终端上执行以下命令:
sudo apt-get install haproxy
  1. 编辑HAProxy的配置文件。打开配置文件/etc/haproxy/haproxy.cfg,添加以下内容:
frontend http-in
     bind *:80
     default_backend backend_servers

backend backend_servers
     balance roundrobin
     server server1 192.168.0.10:80 check
     server server2 192.168.0.11:80 check

其中,192.168.0.10192.168.0.11为内部节点的IP地址,80

    Enregistrez la configuration. Une fois la configuration ci-dessus terminée, nous devons enregistrer la configuration dans le fichier de configuration iptables afin que la configuration puisse être automatiquement chargée après le redémarrage du système. Exécutez la commande suivante pour enregistrer la configuration :
  1. sudo service haproxy restart
      Ajoutez un script de démarrage automatique. Afin de charger automatiquement la configuration au démarrage du système, nous pouvons créer un script à démarrage automatique et l'ajouter au service de démarrage du système. Créez un script nommé iptables.sh avec le contenu suivant :

      rrreee

      Enregistrez le script dans le répertoire /etc/init.d et ajoutez des autorisations d'exécution au script :
      rrreee

      Ensuite, ajoutez le script au service de démarrage :🎜rrreee🎜À ce stade, nous avons terminé la configuration de la redirection de port à l'aide d'iptables. 🎜🎜3. Utilisez HAProxy pour obtenir une redirection de port haute disponibilité🎜En plus d'utiliser iptables, nous pouvons également utiliser HAProxy pour obtenir une redirection de port haute disponibilité. HAProxy est un logiciel d'équilibrage de charge fiable et hautes performances adapté aux besoins de redirection de port dans les systèmes distribués. Voici un exemple d'utilisation de HAProxy pour configurer la redirection de port haute disponibilité : 🎜🎜🎜Tout d'abord, vous devez confirmer que le logiciel HAProxy a été installé sur le système. Exécutez la commande suivante sur le terminal : 🎜🎜rrreee🎜🎜Modifiez le fichier de configuration de HAProxy. Ouvrez le fichier de configuration /etc/haproxy/haproxy.cfg et ajoutez le contenu suivant : 🎜🎜rrreee🎜Parmi eux, 192.168.0.10 et 192.168.0.11 est l'adresse IP du nœud interne et <code>80 est le numéro de port qui doit être transféré. 🎜🎜🎜Redémarrez le service HAProxy. Exécutez la commande suivante pour redémarrer le service HAProxy : 🎜🎜rrreee🎜À ce moment, HAProxy transmettra la demande d'accès au nœud interne selon les règles du fichier de configuration pour obtenir une redirection de port haute disponibilité. 🎜🎜4. Résumé🎜Cet article présente la méthode de configuration de la redirection de port haute disponibilité sur le système d'exploitation Linux, en utilisant iptables et HAProxy comme exemples. Dans les applications réelles, nous pouvons choisir la méthode de configuration et de déploiement appropriée en fonction des besoins spécifiques. En utilisant rationnellement la redirection de port, la fiabilité et la capacité de charge du système peuvent être améliorées et des services plus stables et plus efficaces peuvent être fournis. 🎜

    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!

    Déclaration:
    Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn