日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

iptables加载顺序问题及优化方法

發布時間:2025/7/14 编程问答 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 iptables加载顺序问题及优化方法 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

iptables加載順序問題及優化方法

?

  • 1. iptables加載順序問題及優化方法
    • 1.1. 1. 問題背景
    • 1.2. 2. 問題排查
    • 1.3. 3. 根因分析
    • 1.4. 4. 附帶影響
    • 1.5. 5. 解決方法
    • 1.6. 5.后續安排
    • 1.7. 6. iptables涉及語句

?

1. 問題背景

近期, 在跟進存儲節點升級 RAID 卡固件的事情時, 發現部分集群在重啟機器后, 有極大的概率出現 client request block 的問題, block 時業務受到影響, 但隔一小段時間后, 故障能自行恢復. 問題重現機率高, 影響面大, 所以深入進一步排查.

2. 問題排查

  • 通過 OSD 日志發現, 故障期間 OSD 日志有報出連接問題, 并在問題連接最終斷開并重新連上后, 故障恢復
  • 檢查所有節點的網絡通迅, 路由表, MTU, 防火墻, 均無發現問題
  • 線索1: 在解決部分 block request 時, 為解決 block request, 停了全部 OSD; 發現全停了 OSD 后, 再次啟動后并沒有出現 block request, 獲得線索1?
    • 線索1: 重新啟動的 OSD 表現正常, 并多次驗證依然如此, 推測第一次 OSD 啟動時, 可能有部分設置有問題導致故障
  • 根據線索1, 第一時間想到了 /etc/rc.local 中最后加載的配置, 其中存儲節點只有防火墻及 sysctl 配置加載
  • 驗證: 注釋 rc.local, 進行重啟, 確認沒有出現 block request, 問題原因縮小到防火墻及 sysctl 配置差異
  • 一開始懷疑到 sysctl 最后才加載, 導致前面 OSD 節點在并發啟動 OSD 服務時, backlog等網絡參數過小, 導致丟包或連接丟失問題
  • 排除驗證: 通過對 /etc/rcS.d 的過濾, 確認在 ceph 服務啟動前, sysctl 已經由系統內置的加載過一遍
  • 鉤子驗證: 通過在 /etc/init.d/ceph 的啟動配置中, 加入輸出 sysctl 配置的操作, 進一步驗證了 sysctl 的配置已經是加載過(在 /etc/rcS.d/S11procps 中加載)
  • 至此基本可以確認防火墻的加載導致故障, 但尚未進行根因分析
  • 3. 根因分析

    這段時間正好遇到新上的一波計算節點出現不少節點的 nova 服務異常故障, 一聯想可能是同個問題導致, 并做進一步的根因分析

  • 拿兩臺有問題的計算節點, 一臺注釋防火墻加載, 一臺保持原配置, 重啟機器, 觀察到不加載防火墻的計算節點nova-compute服務正常, 而加載了防火墻的節點 nova-compute 服務異常?
    • 表現: nova-compute 服務異常時, 日志不定時刷新, 但從master的nova service-list 以及 rabbitmap的狀態中, 卻能觀察到正常的心跳及連接
  • 通過觀察防火墻規則, 初步判斷為 TCP 連接的建立先于 conntrack 規則的加載, 導致 conntrack 規則加載后, 原來已經握手完成的 TCP 數據包被識別為異常數據包, 進而被 Drop, 導致 網絡連接狀態異常

    • 這也就可以解釋為什么重啟一次服務后, 又能正常, 因為此次 conntrack 規則已經生效中
    • 這也就可以解釋為什么nova-compute服務異常后, 還能有正常的心跳反饋出去(因為這只是出去的包, 無限制)
  • 通過開啟iptables的 LOG, 進行debug, 確認該猜測, 原因明確

  • root@cld-acc162-32:/etc/rcS.d# dmesg | grep 'DROP' | grep '10.200.12.102' [ 140.173826] INPUT:DROP IN=eth0 OUT= MAC=9c:dc:71:64:9e:b0:5c:b9:01:d0:9e:c0:08:00 SRC=10.200.12.102 DST=10.200.13.135 LEN=60 TOS=0x00 PREC=0x00 TTL=64 ID=47100 DF PROTO=TCP SPT=5672 DPT=40445 WINDOW=59 RES=0x00 ACK PSH URGP=0 [ 140.381274] INPUT:DROP IN=eth0 OUT= MAC=9c:dc:71:64:9e:b0:5c:b9:01:d0:9e:c0:08:00 SRC=10.200.12.102 DST=10.200.13.135 LEN=60 TOS=0x00 PREC=0x00 TTL=64 ID=47101 DF PROTO=TCP SPT=5672 DPT=40445 WINDOW=59 RES=0x00 ACK PSH URGP=0 [ 140.589186] INPUT:DROP IN=eth0 OUT= MAC=9c:dc:71:64:9e:b0:5c:b9:01:d0:9e:c0:08:00 SRC=10.200.12.102 DST=10.200.13.135 LEN=60 TOS=0x00 PREC=0x00 TTL=64 ID=47102

    轉載于:https://www.cnblogs.com/lifei02/p/9892675.html

    總結

    以上是生活随笔為你收集整理的iptables加载顺序问题及优化方法的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。