CARP + LAGG를 사용하는 두 개의 BSD 서버, 두 서버 모두 MASTER이고 보조 서버는 STANDBY로 다운그레이드할 수 없습니다.

CARP + LAGG를 사용하는 두 개의 BSD 서버, 두 서버 모두 MASTER이고 보조 서버는 STANDBY로 다운그레이드할 수 없습니다.

CARP(Common Address Redundancy Protocol)를 사용하는 두 개의 BSD 서버는 LAGG(링크 집계)를 사용하여 인터페이스에서 실행되도록 구성됩니다. 두 서버 모두 CARP MASTER이고 하나를 STANDBY로 다운그레이드할 수는 없는 것 같습니다. 두 번째 서버를 수동으로 강제로 대기 상태로 만들 수 있지만 몇 초 내에 기본 서버로 되돌아갑니다. 나는 "tcpdump"를 사용했고 두 서버 모두에서 두 서버 모두에 도착하는 많은 수의 CARP Keepalive를 보았습니다.

누구든지 이것을 작동하게 만들었습니까? 어떤 팁이 있나요?

이것은 stackoverflow의 교차 게시물입니다. 아마도 이 질문에 대한 더 나은 사이트일 것입니다.

서버 1(메인 서버여야 함)

   $ ifconfig lagg0
   lagg0: flags=8943<UP,BROADCAST,RUNNING,PROMISC,SIMPLEX,MULTICAST> metric 0 mtu 1500
           options=e507bb<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,JUMBO_MTU,VLAN_HWCSUM, \
                 TSO4,TSO6,LRO,VLAN_HWFILTER,VLAN_HWTSO,RXCSUM_IPV6,TXCSUM_IPV6>
           ether 00:25:90:e9:d5:74
           inet 111.222.333.83 netmask 0xfffffff0 broadcast 104.225.9.95
           inet 111.222.333.84 netmask 0xffffffff broadcast 104.225.9.84 vhid 1
           inet 111.222.333.85 netmask 0xffffffff broadcast 104.225.9.85 vhid 3
           inet 101.24.0.83 netmask 0xffffffff broadcast 10.242.0.83
           inet6 fe80::225:90ff:fee9:d574%lagg0 prefixlen 64 scopeid 0x4
           inet6 2607:fc50:3000:4::83 prefixlen 64
           inet6 2607:fc50:3000:4::84 prefixlen 64 vhid 2
           inet6 2607:fc50:3000:4::85 prefixlen 64 vhid 4
           laggproto lacp lagghash l2,l3,l4
           laggport: igb0 flags=1c<ACTIVE,COLLECTING,DISTRIBUTING>
           laggport: igb1 flags=1c<ACTIVE,COLLECTING,DISTRIBUTING>
           groups: lagg
           carp: MASTER vhid 1 advbase 1 advskew 100
           carp: MASTER vhid 3 advbase 1 advskew 0
           carp: MASTER vhid 2 advbase 1 advskew 100
           carp: MASTER vhid 4 advbase 1 advskew 0
           media: Ethernet autoselect
           status: active
           nd6 options=21<PERFORMNUD,AUTO_LINKLOCAL>

   $ sysctl -a | egrep 'lagg|carp'
          net.inet.carp.ifdown_demotion_factor: 240
          net.inet.carp.senderr_demotion_factor: 240
          net.inet.carp.demotion: 0
          net.inet.carp.log: 1
          net.inet.carp.preempt: 1
          net.inet.carp.dscp: 56
          net.inet.carp.allow: 1
          net.link.lagg.lacp.default_strict_mode: 1
          net.link.lagg.lacp.debug: 0
          net.link.lagg.default_flowid_shift: 16
          net.link.lagg.default_use_flowid: 0
          net.link.lagg.failover_rx_all: 0

서버 2(백업이어야 함)

   lagg0: flags=8943<UP,BROADCAST,RUNNING,PROMISC,SIMPLEX,MULTICAST> metric 0 mtu 1500
           options=e527bb<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,JUMBO_MTU,VLAN_HWCSUM,TSO4, \
                 TSO6,LRO,WOL_MAGIC,VLAN_HWFILTER,VLAN_HWTSO,RXCSUM_IPV6,TXCSUM_IPV6>
           ether 78:45:c4:fa:d2:99
           inet 111.222.333.82 netmask 0xfffffff0 broadcast 104.225.9.95
           inet 111.222.333.84 netmask 0xffffffff broadcast 104.225.9.84 vhid 1
           inet 111.222.333.85 netmask 0xffffffff broadcast 104.225.9.85 vhid 3
           inet 101.24.0.82 netmask 0xffffffff broadcast 10.242.0.82
           inet6 fe80::7a45:c4ff:fefa:d299%lagg0 prefixlen 64 scopeid 0x4
           inet6 2607:fc50:3000:4::82 prefixlen 64
           inet6 2607:fc50:3000:4::84 prefixlen 64 vhid 2
           inet6 2607:fc50:3000:4::85 prefixlen 64 vhid 4
           laggproto lacp lagghash l2,l3,l4
           laggport: igb0 flags=1c<ACTIVE,COLLECTING,DISTRIBUTING>
           laggport: igb1 flags=1c<ACTIVE,COLLECTING,DISTRIBUTING>
           groups: lagg
           carp: MASTER vhid 1 advbase 1 advskew 200
           carp: MASTER vhid 3 advbase 1 advskew 200
           carp: MASTER vhid 2 advbase 1 advskew 100
           carp: MASTER vhid 4 advbase 1 advskew 0
           media: Ethernet autoselect
           status: active
           nd6 options=21<PERFORMNUD,AUTO_LINKLOCAL>

   sysctl -a | egrep 'lagg|carp'
           <6>[26809290] carp: 3@lagg0: MASTER -> BACKUP (user requested via ifconfig)
           <6>[26809290] lagg0: deletion failed: 3
           <6>[26809294] carp: 3@lagg0: BACKUP -> MASTER (master timed out)
           <6>[26809296] carp: 1@lagg0: MASTER -> BACKUP (user requested via ifconfig)
           <6>[26809296] lagg0: deletion failed: 3
           <6>[26809300] carp: 1@lagg0: BACKUP -> MASTER (master timed out)
           net.inet.carp.ifdown_demotion_factor: 240
           net.inet.carp.senderr_demotion_factor: 240
           net.inet.carp.demotion: 0
           net.inet.carp.log: 1
           net.inet.carp.preempt: 1
           net.inet.carp.dscp: 56
           net.inet.carp.allow: 1
           net.link.lagg.lacp.default_strict_mode: 1
           net.link.lagg.lacp.debug: 0
           net.link.lagg.default_flowid_shift: 16
           net.link.lagg.default_use_flowid: 0
           net.link.lagg.failover_rx_all: 0

답변1

방화벽 규칙을 확인해주세요. CARP 프로토콜은 이 네트워크(이러한 호스트 간)에서 활성화되어야 합니다.

관련 정보