Heim > Artikel > Betrieb und Instandhaltung > Nginx + Keepalived Hochverfügbarkeits-Master-Slave-Konfigurationsmethode
1. 38.66
vip:192.168.38.100
2. Nginx-Installation (Master-Slave-Installation ist konsistent)
1. Abhängige Umgebung installieren
Code kopieren Der Code lautet wie folgt:yum gcc gcc installieren c++ make automake autoconf libtool pcre pcre-devel zlib zlib-developenssl openssl-devel
2.Nginx in das Opt-Verzeichnis hochladen
3. Entpacken und installieren
# tar -zxvf nginx-1.6.2.tar.gz # cd nginx-1.6.2 # ./configure --prefix=/opt/nginx (prefix=/opt/nginx 这个指定的是 nginx目录) # make && make install4. Ändern Sie den Nginx-Listening-Port und index.html# vi / opt/nginx/conf/nginx.conf
vi /opt/nginx/html/index.html
5. Nginx-Start und allgemeine Befehle
Konfiguration Test: /opt/nginx/sbin /nginx -t Die folgende Schnittstelle wird angezeigt und zeigt an, dass die Konfiguration in Ordnung ist
Start: /opt/nginx/sbin/nginxNeustart: /opt/nginx/sbin/nginx -s reload
Stop: /opt/nginx/ sbin/nginx -s stop
6. Hochfahren und nginx starten
vi /etc/rc.localJoin: /opt/nginx/sbin/nginx7. Ändern Sie den offenen Port der Firewall Firewall neu starten: service iptables restart
8. Frage
Probleme beim Starten von nginx
vi /etc/ld.so.conf
Hinzufügen: /opt/nginx/lib/
9 .nginx-Lastausgleich
Der Nginx-Lastausgleich wird hauptsächlich durch das Upstream-Modul abgeschlossenÄndern Sie die Nginx-Konfigurationsdatei
vi /data/nginx/conf/nginx.conf
Fügen Sie den folgenden Inhalt hinzu: (Der Name von web_pools lautet Variable)
upstream web_pools { server 10.0.6.108:7080weight=1; server 10.0.0.85:8980weight=1; }Fügen Sie den Standortknoten unter dem Serverknoten hinzu. Die Proxy_Pass-Konfiguration lautet: http:// + Upstream-Name. Das Ergebnis ist wie folgt:
wobei Gewicht das Gewicht und Backup der Sicherungsserver ist Der Sicherungsserver startet nur, wenn andere Server ausgefallen sind.
3. Keepalived-Installation1. Keepalived in das Opt-Verzeichnis hochladen
2. Keepalived als Linux-Dienst installieren
tar -zxvf keepalived-1.2.18.tar.gz cd keepalived-1.2.18 ./configure --prefix=/opt/keepalived make && make install
4
cp /opt/keepalived/etc/rc.d/init.d/keepalived /etc/init.d/ cp /opt/keepalived/etc/sysconfig/keepalived /etc/sysconfig/ ln -s /opt/sbin/keepalived /usr/sbin/ ln -s /opt/keepalived/sbin/keepalived /sbin/5 .
Ändern Sie die Keepalived-Konfigurationsdatei
vi /etc/keepalived/keepalived.conf
chkconfig keepalived on
6. Schreiben Sie ein Nginx-Statuserkennungsskript
vi /etc/keepalived/nginx_check.shDer Inhalt ist wie folgt:
! configuration file for keepalived (!、#都是注释) global_defs { #全局配置 notification_email { acassen@firewall.loc failover@firewall.loc sysadmin@firewall.loc } notification_email_from alexandre.cassen@firewall.loc smtp_server 192.168.200.1 smtp_connect_timeout 30 router_id lvs_01 #这个配置要唯一 } vrrp_script chk_nginx { script "/etc/keepalived/nginx_check.sh" ## 检测 nginx 状态的脚本路径 interval 2 ## 检测时间间隔 weight -20 ## 如果条件成立,权重-20 } vrrp_instance vi_1 { #实例 vi_1 名字可以随意 但是不建议修改 state master # 主服务器master 从服务器 backup interface em1 # em1 网卡 virtual_router_id 51 #virtual_router_id 主备要一致 priority 100 # 优先级 数字越大 优先级越高 priority 的值 主服务器要大于 从服务器 advert_int 1 #设定master与backup负载均衡器之间同步检查的时间间隔,单位是秒 authentication { # 主从通信 验证类型及密码 auth_type pass #设置vrrp验证类型,主要有pass和ah两种 auth_pass 1111 #设置vrrp验证密码,在同一个vrrp_instance下,master与backup必须使用相同的密码才能正常通信 } ## 将 track_script 块加入 instance 配置块 track_script { chk_nginx ## 执行 nginx 监控的服务 } virtual_ipaddress { 192.168.38.100/24 #vrrp ha 虚拟地址 如果有多个vip,继续换行填写 } }
Erteilen Sie nach dem Speichern Ausführungsberechtigungen für das Skript:
7. Hinweis: Die Keepalived-Master-Slave-Konfigurationsdateien sind unterschiedlich a.router_id ist inkonsistent b.state Der Hauptserver ist Master, und der Slave-Server ist ein Backup Problema.vip ist nicht erfolgreich gebunden
Lösung: IP-Adresse lokal anzeigen Der Name der Netzwerkkarte, auf der sich die IP befindet, und dann die Konfigurationsdatei ändernNach dem Speichern kann der Servicekeepalived-Neustart den Keepalived-Dienst neu startenchmod +x/etc/keepalived/nginx_check.sh
beim Beenden des Master-Servers Das Keepalived stammt vom Server
Wenn Sie Keepalived auf dem Master-Server erneut starten, werden auf dem Master-Server Ergebnisse angezeigt, auf dem Slave-Server jedoch keine Ergebnisse.当杀死 nginx后,keepalived则会自动启动 nginx服务
11. keepalived脑裂 (ip add | grep 192.168.38.100 在主从都有结果)
解决方案:防火墙问题
iptables-iinput4-pvrrp-jaccept service iptables save service iptables restart
Das obige ist der detaillierte Inhalt vonNginx + Keepalived Hochverfügbarkeits-Master-Slave-Konfigurationsmethode. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!