MySQL相互主従及びKeepalived配置vip——keepalived配置編
4471 ワード
前のログでは、データベースのプライマリ・スレーブ環境の構成について説明し、keepalived構成について説明します.
1、サーバーの役割とip:
サーバーの役割
IP
VIP
master A
192.168.112.133
192.168.112.88
master B
192.168.112.135
192.168.112.88
user
192.168.112.134
-
2、 keepalived.confプロファイル master A:192.168.112.133(データベースノード) master B:192.168.112.135(データベースノード) keepalived_down.sh自殺シナリオ
ファイル権限の向上を忘れないでください.
説明:keepalived構成については、データベースのプライマリ・セカンダリよりもずっと簡単です.唯一注意すべき点はkeepalivedにセルフテストスクリプトが組み込まれているため、サーバの起動順序に一定の要求があることです.サードパーティの中立的なサーバ、すなわち構成中の192.168.112.134を起動する必要があります.そうでないと、サーバが起動し、keepalivedプロセスが起動しません.その後、データベース・サービスに障害が発生した場合、修復後もデータベース・サービスを開始してからkeepalivedプロセスを開始する必要があります.mysqlプロセスがない場合、keepalivedを起動してもすぐに自殺するからです.本稿ではkeepalivedの構成について多くの不足点があり,今後徐々に改善し,ログを徐々に修正する.keepalivedの構成について詳しくて理解しやすいブログをお勧めします:keepalivedの動作原理と構成の説明
これでMySQLは互いに主従し,keepalivedはvipドリフトを実現することをまとめた.
MySQL相互マスターおよびKeepalived構成シリーズ記事リンク:
MySQL相互主従及びKeepalived配置vip——環境編MySQL相互主従及びKeepalived配置vip——主従配置編MySQL相互主従及びKeepalived配置vip——keepalived配置編
1、サーバーの役割とip:
サーバーの役割
IP
VIP
master A
192.168.112.133
192.168.112.88
master B
192.168.112.135
192.168.112.88
user
192.168.112.134
-
2、 keepalived.confプロファイル
# keepalived , ,
# ,
# ,
! Configuration File for keepalived
global_defs {
notification_email {
[email protected]
[email protected]
[email protected]
}
notification_email_from [email protected]
smtp_server 127.0.0.1
smtp_connect_timeout 30
# router_id , keepalived , vip , router_id
router_id HA_MySQL
vrrp_skip_check_adv_addr
vrrp_strict
vrrp_garp_interval 0
vrrp_gna_interval 0
}
vrrp_instance HA_1 {
state BACKUP
# interface
interface ens33
virtual_router_id 51
# , keepalived master, vip
priority 100
advert_int 1
nopreempt
authentication {
auth_type PASS
auth_pass 1111
}
virtual_ipaddress {
# vip, ,
192.168.112.88
}
}
virtual_server 192.168.112.88 3306 {
delay_loop 2
# lb_algo/lb_kind , , vip , 3306 filtered, vip
# lb_algo rr
# lb_kind NAT
nat_mask 255.255.255.0
persistence_timeout 60
protocol TCP
real_server 192.168.112.133 3306{
weight 3
# , mysql (keepalived )
notify_down /usr/local/keepalived_down.sh
TCP_CHECK {
connect_timeout 10
nb_get_retry 3
delay_before_retry 3
connect_port 3306
}
}
# ,
# , ,
# , ,
real_server 192.168.112.134 22{
weight 3
notify_down /usr/local/keepalived_down.sh
TCP_CHECK {
connect_timeout 10
nb_get_retry 3
delay_before_retry 3
connect_port 22
}
}
}
! Configuration File for keepalived
global_defs {
notification_email {
[email protected]
[email protected]
[email protected]
}
notification_email_from [email protected]
smtp_server 127.0.0.1
smtp_connect_timeout 30
router_id HA_MySQL
vrrp_skip_check_adv_addr
vrrp_strict
vrrp_garp_interval 0
vrrp_gna_interval 0
}
vrrp_instance HA_1 {
state BACKUP
interface ens33
virtual_router_id 51
priority 90
advert_int 1
nopreempt
authentication {
auth_type PASS
auth_pass 1111
}
virtual_ipaddress {
192.168.112.88
}
}
virtual_server 192.168.112.88 3306 {
delay_loop 2
# lb_algo rr
# lb_kind NAT
nat_mask 255.255.255.0
persistence_timeout 60
protocol TCP
real_server 192.168.112.135 3306{
weight 3
notify_down /usr/local/keepalived_down.sh
TCP_CHECK {
connect_timeout 10
nb_get_retry 3
delay_before_retry 3
connect_port 3306
}
}
real_server 192.168.112.134 22{
weight 3
notify_down /usr/local/keepalived_down.sh
TCP_CHECK {
connect_timeout 10
nb_get_retry 3
delay_before_retry 3
connect_port 22
}
}
}
#!/bin/bash
service keepalived stop
ファイル権限の向上を忘れないでください.
chmod +777 keepalived_down.sh
説明:keepalived構成については、データベースのプライマリ・セカンダリよりもずっと簡単です.唯一注意すべき点はkeepalivedにセルフテストスクリプトが組み込まれているため、サーバの起動順序に一定の要求があることです.サードパーティの中立的なサーバ、すなわち構成中の192.168.112.134を起動する必要があります.そうでないと、サーバが起動し、keepalivedプロセスが起動しません.その後、データベース・サービスに障害が発生した場合、修復後もデータベース・サービスを開始してからkeepalivedプロセスを開始する必要があります.mysqlプロセスがない場合、keepalivedを起動してもすぐに自殺するからです.本稿ではkeepalivedの構成について多くの不足点があり,今後徐々に改善し,ログを徐々に修正する.keepalivedの構成について詳しくて理解しやすいブログをお勧めします:keepalivedの動作原理と構成の説明
これでMySQLは互いに主従し,keepalivedはvipドリフトを実現することをまとめた.
MySQL相互マスターおよびKeepalived構成シリーズ記事リンク:
MySQL相互主従及びKeepalived配置vip——環境編MySQL相互主従及びKeepalived配置vip——主従配置編MySQL相互主従及びKeepalived配置vip——keepalived配置編