keepalived腦裂問題查找

在自己環境做keepalived+redis實驗時,當重啟了備用redies機器后,發現兩臺redies主機都拿到了VIP

?

[plain]?view plain?copy
  1. [root@redis2?~]#?ip?addr?list??
  2. 1:?lo:?<LOOPBACK,UP,LOWER_UP>?mtu?65536?qdisc?noqueue?state?UNKNOWN???
  3. ????link/loopback?00:00:00:00:00:00?brd?00:00:00:00:00:00??
  4. ????inet?127.0.0.1/8?scope?host?lo??
  5. ????inet6?::1/128?scope?host???
  6. ???????valid_lft?forever?preferred_lft?forever??
  7. 2:?eth0:?<BROADCAST,MULTICAST,UP,LOWER_UP>?mtu?1500?qdisc?pfifo_fast?state?UP?qlen?1000??
  8. ????link/ether?52:54:00:72:6a:7c?brd?ff:ff:ff:ff:ff:ff??
  9. ????inet?192.168.122.54/24?brd?192.168.122.255?scope?global?eth0??
  10. ????inet?192.168.122.50/32?scope?global?eth0??
  11. ????inet6?fe80::5054:ff:fe72:6a7c/64?scope?link???
  12. ???????valid_lft?forever?preferred_lft?forever??

?

[plain]?view plain?copy
  1. [root@localhost?~]#?ip?addr?list??
  2. 1:?lo:?<LOOPBACK,UP,LOWER_UP>?mtu?65536?qdisc?noqueue?state?UNKNOWN???
  3. ????link/loopback?00:00:00:00:00:00?brd?00:00:00:00:00:00??
  4. ????inet?127.0.0.1/8?scope?host?lo??
  5. ????inet6?::1/128?scope?host???
  6. ???????valid_lft?forever?preferred_lft?forever??
  7. 2:?eth0:?<BROADCAST,MULTICAST,UP,LOWER_UP>?mtu?1500?qdisc?pfifo_fast?state?UP?qlen?1000??
  8. ????link/ether?52:54:00:85:7b:a9?brd?ff:ff:ff:ff:ff:ff??
  9. ????inet?192.168.122.96/24?brd?192.168.122.255?scope?global?eth0??
  10. ????inet?192.168.122.50/32?scope?global?eth0??
  11. ????inet6?fe80::5054:ff:fe85:7ba9/64?scope?link???
  12. ???????valid_lft?forever?preferred_lft?forever??



也就是出現了keepalived的腦裂現象,檢查了兩臺主機的網絡連通狀態,發現網絡是好的。然后在備機上抓包

?

[html]?view plain?copy
  1. [root@localhost?~]#??tcpdump?-i?eth0|grep?VRRP??
  2. tcpdump:?verbose?output?suppressed,?use?-v?or?-vv?for?full?protocol?decode??
  3. listening?on?eth0,?link-type?EN10MB?(Ethernet),?capture?size?65535?bytes??
  4. 15:51:17.146322?IP?192.168.122.54?>?vrrp.mcast.net:?VRRPv2,?Advertisement,?vrid?51,?prio?160,?authtype?simple,?intvl?1s,?length?20??
  5. 15:51:17.146577?IP?192.168.122.96?>?vrrp.mcast.net:?VRRPv2,?Advertisement,?vrid?51,?prio?50,?authtype?simple,?intvl?1s,?length?20??
  6. 15:51:17.146972?IP?192.168.122.54?>?vrrp.mcast.net:?VRRPv2,?Advertisement,?vrid?51,?prio?160,?authtype?simple,?intvl?1s,?length?20??
  7. 15:51:18.147136?IP?192.168.122.96?>?vrrp.mcast.net:?VRRPv2,?Advertisement,?vrid?51,?prio?50,?authtype?simple,?intvl?1s,?length?20??
  8. 15:51:18.147576?IP?192.168.122.54?>?vrrp.mcast.net:?VRRPv2,?Advertisement,?vrid?51,?prio?160,?authtype?simple,?intvl?1s,?length?20??
  9. 15:51:25.151399?IP?192.168.122.96?>?vrrp.mcast.net:?VRRPv2,?Advertisement,?vrid?51,?prio?50,?authtype?simple,?intvl?1s,?length?20??
  10. 15:51:25.151942?IP?192.168.122.54?>?vrrp.mcast.net:?VRRPv2,?Advertisement,?vrid?51,?prio?160,?authtype?simple,?intvl?1s,?length?20??
  11. 15:51:26.151703?IP?192.168.122.96?>?vrrp.mcast.net:?VRRPv2,?Advertisement,?vrid?51,?prio?50,?authtype?simple,?intvl?1s,?length?20??
  12. 15:51:26.152623?IP?192.168.122.54?>?vrrp.mcast.net:?VRRPv2,?Advertisement,?vrid?51,?prio?160,?authtype?simple,?intvl?1s,?length?20??
  13. 15:51:27.152456?IP?192.168.122.96?>?vrrp.mcast.net:?VRRPv2,?Advertisement,?vrid?51,?prio?50,?authtype?simple,?intvl?1s,?length?20??
  14. 15:51:27.153261?IP?192.168.122.54?>?vrrp.mcast.net:?VRRPv2,?Advertisement,?vrid?51,?prio?160,?authtype?simple,?intvl?1s,?length?20??
  15. 15:51:28.152955?IP?192.168.122.96?>?vrrp.mcast.net:?VRRPv2,?Advertisement,?vrid?51,?prio?50,?authtype?simple,?intvl?1s,?length?20??
  16. 15:51:28.153461?IP?192.168.122.54?>?vrrp.mcast.net:?VRRPv2,?Advertisement,?vrid?51,?prio?160,?authtype?simple,?intvl?1s,?length?20??
  17. 15:51:29.153766?IP?192.168.122.96?>?vrrp.mcast.net:?VRRPv2,?Advertisement,?vrid?51,?prio?50,?authtype?simple,?intvl?1s,?length?20??
  18. 15:51:29.155652?IP?192.168.122.54?>?vrrp.mcast.net:?VRRPv2,?Advertisement,?vrid?51,?prio?160,?authtype?simple,?intvl?1s,?length?20??
  19. 15:51:30.154275?IP?192.168.122.96?>?vrrp.mcast.net:?VRRPv2,?Advertisement,?vrid?51,?prio?50,?authtype?simple,?intvl?1s,?length?20??
  20. 15:51:30.154587?IP?192.168.122.54?>?vrrp.mcast.net:?VRRPv2,?Advertisement,?vrid?51,?prio?160,?authtype?simple,?intvl?1s,?length?20??
  21. 15:51:31.155042?IP?192.168.122.96?>?vrrp.mcast.net:?VRRPv2,?Advertisement,?vrid?51,?prio?50,?authtype?simple,?intvl?1s,?length?20??
  22. 15:51:31.155428?IP?192.168.122.54?>?vrrp.mcast.net:?VRRPv2,?Advertisement,?vrid?51,?prio?160,?authtype?simple,?intvl?1s,?length?20??
  23. 15:51:32.155539?IP?192.168.122.96?>?vrrp.mcast.net:?VRRPv2,?Advertisement,?vrid?51,?prio?50,?authtype?simple,?intvl?1s,?length?20??
  24. 15:51:32.155986?IP?192.168.122.54?>?vrrp.mcast.net:?VRRPv2,?Advertisement,?vrid?51,?prio?160,?authtype?simple,?intvl?1s,?length?20??
  25. 15:51:33.156357?IP?192.168.122.96?>?vrrp.mcast.net:?VRRPv2,?Advertisement,?vrid?51,?prio?50,?authtype?simple,?intvl?1s,?length?20??
  26. 15:51:33.156979?IP?192.168.122.54?>?vrrp.mcast.net:?VRRPv2,?Advertisement,?vrid?51,?prio?160,?authtype?simple,?intvl?1s,?length?20??
  27. 15:51:34.156801?IP?192.168.122.96?>?vrrp.mcast.net:?VRRPv2,?Advertisement,?vrid?51,?prio?50,?authtype?simple,?intvl?1s,?length?20??
  28. 15:51:34.156989?IP?192.168.122.54?>?vrrp.mcast.net:?VRRPv2,?Advertisement,?vrid?51,?prio?160,?authtype?simple,?intvl?1s,?length?20??

?

備機能接收到master發過來的VRRP廣播,那為什么還會有腦裂現象?發現重啟后iptables還開著,檢查了防火墻配置

?

[plain]?view plain?copy
  1. root@localhost?~]#?iptables?-S??
  2. -P?INPUT?ACCEPT??
  3. -P?FORWARD?ACCEPT??
  4. -P?OUTPUT?ACCEPT??
  5. -A?INPUT?-m?state?--state?RELATED,ESTABLISHED?-j?ACCEPT???
  6. -A?INPUT?-p?icmp?-j?ACCEPT???
  7. -A?INPUT?-i?lo?-j?ACCEPT???
  8. -A?INPUT?-p?tcp?-m?state?--state?NEW?-m?tcp?--dport?22?-j?ACCEPT???
  9. -A?INPUT?-j?REJECT?--reject-with?icmp-host-prohibited???
  10. -A?FORWARD?-j?REJECT?--reject-with?icmp-host-prohibited???


發現系統不接收VRRP協議,于是修改iptables

?

[plain]?view plain?copy
  1. [root@localhost?~]#?iptables?-I?INPUT?4?-p?vrrp?-j?ACCEPT??
[plain]?view plain?copy
  1. [root@localhost?~]#?iptables?-S??
  2. -P?INPUT?ACCEPT??
  3. -P?FORWARD?ACCEPT??
  4. -P?OUTPUT?ACCEPT??
  5. -A?INPUT?-m?state?--state?RELATED,ESTABLISHED?-j?ACCEPT???
  6. -A?INPUT?-p?icmp?-j?ACCEPT???
  7. -A?INPUT?-i?lo?-j?ACCEPT???
  8. -A?INPUT?-p?vrrp?-j?ACCEPT???
  9. -A?INPUT?-p?tcp?-m?state?--state?NEW?-m?tcp?--dport?22?-j?ACCEPT???
  10. -A?INPUT?-j?REJECT?--reject-with?icmp-host-prohibited???
  11. -A?FORWARD?-j?REJECT?--reject-with?icmp-host-prohibited???
[plain]?view plain?copy
  1. [root@localhost?~]#?ip?addr?list??
  2. 1:?lo:?<LOOPBACK,UP,LOWER_UP>?mtu?65536?qdisc?noqueue?state?UNKNOWN???
  3. ????link/loopback?00:00:00:00:00:00?brd?00:00:00:00:00:00??
  4. ????inet?127.0.0.1/8?scope?host?lo??
  5. ????inet6?::1/128?scope?host???
  6. ???????valid_lft?forever?preferred_lft?forever??
  7. 2:?eth0:?<BROADCAST,MULTICAST,UP,LOWER_UP>?mtu?1500?qdisc?pfifo_fast?state?UP?qlen?1000??
  8. ????link/ether?52:54:00:85:7b:a9?brd?ff:ff:ff:ff:ff:ff??
  9. ????inet?192.168.122.96/24?brd?192.168.122.255?scope?global?eth0??
  10. ????inet6?fe80::5054:ff:fe85:7ba9/64?scope?link???
  11. ???????valid_lft?forever?preferred_lft?forever??

發現VIP沒了。雖然問題解決了,但為什么備機明明能抓到master發來的VRRP廣播包,但卻無法改變自身狀態呢?只能說明網卡接收到數據包是在iptables處理數據包之前發生的事情。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/538993.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/538993.shtml
英文地址,請注明出處:http://en.pswp.cn/news/538993.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

python 多線程并行 矩陣乘法_python實現簡單的并行矩陣乘法

python實現簡單的并行矩陣乘法python實現簡單的并行矩陣乘法本文采用的矩陣乘法方式是利用一個矩陣的行和二個矩陣的列相乘時不會互相影響。假設A(m,n)表示矩陣的m行&#xff0c;n列。那么C(m,m)A(m,n) * B(n,m) &#xff1a;計算C矩陣時候分解成&#xff1a;process-1&#xf…

停止Java線程,小心interrupt()方法

轉自http://www.blogjava.NET/jinfeng_wang/archive/2008/04/27/196477.html ---------------------------------------------------------------------------------------------------- 程序是很簡易的。然而&#xff0c;在編程人員面前&#xff0c;多線程呈現出了一組新的難…

python輸入數學表達式并求值_用Python3實現表達式求值

一、題目描述 請用 python3編寫一個計算器的控制臺程序&#xff0c;支持加減乘除、乘方、括號、小數點&#xff0c;運算符優先級為括號>乘方>乘除>加減&#xff0c;同級別運算按照從左向右的順序計算。 二、輸入描述 數字包括"0123456789"&#xff0c;小數點…

mac上的mysql管理工具sequel pro

https://blog.csdn.net/wan_zaiyunduan/article/details/54909389 以前用過Plsql、Navicat、Workbench&#xff0c;現在換到mac上&#xff0c;用了現在這一款管理工具&#xff0c;很好用&#xff0c;所以推薦給大家。 完整的MySQL支持 Sequel Pro是一個快速,易于使用的Mac數據庫…

報錯 classes 拒絕訪問_3種方式“移除”快速訪問;為什么移除?你懂的...

Windows 10 在文件資源管理器中引入了"快速訪問"這個功能&#xff0c;每當打開文件資源管理器窗口時&#xff0c;您都會看到常用文件夾和最近訪問的文件的列表&#xff0c;這個功能雖然方便了日常使用&#xff0c;可能會提高工作效率&#xff0c;但是如果是公司的電腦…

java set是重復_java算法題,set內出現重復元素

題目將數字 1…9 填入一個33 的九宮格中&#xff0c;使得格子中每一橫行和的值全部相等&#xff0c;每一豎列和的值全部相等。請你計算有多少種填數字的方案。這個是計蒜客上面的一個模擬題&#xff0c;我采用暴力。public class _3 {/** 將數字 1…9 填入一個33 的九宮格中&am…

Lock的lockInterruptibly()

概述 lockInterruptibly()方法比較特殊&#xff0c;當通過這個方法去獲取鎖時&#xff0c;如果其他線程正在等待獲取鎖&#xff0c;則這個線程能夠響應中斷&#xff0c;即中斷線程的等待狀態。也就使說&#xff0c;當兩個線程同時通過lock.lockInterruptibly()想獲取某個鎖時&…

python中把輸出結果寫到一個文件中_Python3.6筆記之將程序運行結果輸出到文件的方法...

Python3.6筆記之將程序運行結果輸出到文件的方法 更新時間&#xff1a;2018年04月22日 14:27:32 投稿&#xff1a;jingxian 下面小編就為大家分享一篇Python3.6筆記之將程序運行結果輸出到文件的方法&#xff0c;具有很好的參考價值&#xff0c;希望對大家有所幫助。一起跟隨小…

hangfire.mysql.core_abp 使用 hangfire結合mysql

abp 官方使用的hangfire 默認使用的是sqlserver的存儲mysql須要引入支持mysql的類庫sql我這邊使用的是Hangfire.MySql.Core數據庫直接用nuget安裝便可app首先按照官方文檔要求&#xff0c;改幾個地方sqlserver分別是 Startup 文件下serverservices.AddHangfire(config >{con…

python 圖標題上移_Python-Matplotlib將圖形標題移動到y軸

我目前在python中使用matplotlib來繪制一些數據,但是我希望圖表的標題位于Y軸上,因為沒有足夠的空間來存儲一個圖形的標題和另一個圖形的x軸標簽.我知道我可以將hspace設置為更大的數字但是,我不想這樣做,因為我計劃將幾個圖表堆疊在一起,如果我調整hspace,那么圖表將是真的簡短…

solr的基礎使用

查詢運算符 例如&#xff1a;http://localhost:8984/solr/mycore/select?q*:* : 指定字段查指定值&#xff0c;如返回所有值q*:* ? 匹配單個字符&#xff0c; 例如: qtitle:??拳 可以匹配標題為“形意拳”的文檔 * 匹配零個或多個字符, 例如: qtitle:*形意拳 或者 qtitl…

同步關鍵詞lock

概述 1、API在JDK的java.util.concurrent.locks下。 2、不是Java關鍵字&#xff0c;是接口。 3、ReentrantLock是JDK唯一實現了Lock接口的類。 public interface Lock {//獲取鎖void lock();//可以響應中斷的鎖void lockInterruptibly() throws InterruptedException;//嘗試…

Java bitset轉string_將java BitSet保存到DB

默認情況下,JPA使用Java序列化來保存未知Serializable類型的屬性(以便將序列化表示存儲為byte []).通常它不是您想要的,因為可以有更有效的方式來表示您的數據.例如,BitSet可以有效地表示為數字(如果它的大小有界),或者byte [],或其他東西(遺憾的是,BitSet不提供進行這些轉換的…

python讀取raw圖片文件_在python下讀取并展示raw格式的圖片實例

raw文件可能有些人沒有&#xff0c;因此&#xff0c;先用一張圖片創建一個raw格式的文件&#xff08;其實可以是其他類型的格式文件&#xff09; import numpy as np import cv2 img cv2.imread(cat.jpg) # 這里需要我們在當前目錄下放一張名為cat.jpg的文件 img.tofile(cat.r…

python怎么網絡通信_深入Python中的網絡通信

TCP/IP計算機與網絡設備兩情侶要談戀愛&#xff0c;相互通信&#xff0c;那么雙方就必須有規則。基于相同的方法&#xff0c;不同的硬件、操作系統之間的通信&#xff0c;都需要一種規則。而我們就把這種規則稱為協議(protocol)。TCP/IP 是互聯網相關各類協議族的總稱。TCP/IP是…

ReadWriteLock讀寫文件

概述 ReadWriteLock是一個接口&#xff0c;在它里面只定義了兩個方法&#xff1a;一個讀的鎖和一個寫的鎖。 讀的鎖&#xff1a;A線程獲取了讀的鎖&#xff0c;那么B線程也可以獲取讀的鎖。 寫的鎖&#xff1a;A線程獲取了寫的鎖&#xff0c;那么B線程不能獲取讀也不能獲取寫…

搞懂 Java HashMap 源碼

HashMap 源碼分析 前幾篇分析了 ArrayList &#xff0c; LinkedList &#xff0c;Vector &#xff0c;Stack List 集合的源碼&#xff0c;Java 容器除了包含 List 集合外還包含著 Set 和 Map 兩個重要的集合類型。而 HashMap 則是最具有代表性的&#xff0c;也是我們最常使用到…

python 怎么表示sqlserver null_如何使用Python將sqlserver查詢輸出寫入.txt文件?

我是Python新手&#xff0c;嘗試連接到sqlserverdb并將查詢的輸出轉換成一個flat.txt文件。在一些代碼正在工作&#xff0c;但是只寫了將近1000條記錄&#xff0c;然后就停止了。在Python版本&#xff1a;2.7.13。在下面的代碼能夠把100萬條記錄全部寫入csv文件而不是.txt文件&…

python中object是什么類型_Python 的 type 和 object 之間是怎么一種關系?

class&#xff0c;metaclass&#xff0c;instance&#xff0c;subclass&#xff0c;base 以下成立&#xff1a; 對任意的A&#xff0c;A是instance&#xff08;推論&#xff1a;任意class也是instance&#xff09; 對任意A&#xff0c;存在B&#xff0c;使得B是A的class A是cla…

java8新生代_jdk8.0的jvm詳情

jstat命令可以查看堆內存各部分的使用量&#xff0c;以及加載類的數量。命令的格式如下&#xff1a;jstat [-命令選項] [vmid] [間隔時間/毫秒] [查詢次數]注意&#xff1a;使用的jdk版本是jdk8.[work16-11-118qf-pms]$ jstat -class 32417Loaded?? Bytes?? Unloaded?? B…