베어메탈 솔루션에서 Oracle RAC용 점보 프레임 구성

개요

RAC 환경에서 한 노드에서 다른 노드로 전송되는 패킷의 단편화를 방지하기 위해 Oracle은 점보 프레임(MTU 크기 9000) 구성을 권장합니다. 이 문서에는 Oracle RAC용 베어메탈 솔루션 서버에 점보 프레임(MTU 9000)을 만드는 단계가 포함되어 있습니다.

고려사항

  1. Oracle RAC를 설치하기 전에 구성을 완료해야 합니다.

  2. 구성은 클러스터의 모든 노드에서 일관되어야 합니다.

  3. Partner Interconnect는 아직 점보 프레임을 지원하지 않습니다. (Google Cloud -> 베어메탈 솔루션 통신은 점보 프레임을 사용할 수 없습니다.)

  4. 베어메탈 솔루션 간 통신에만 점보 프레임을 사용할 수 있습니다.

구성 단계

  1. 다음 명령어를 실행하여 네트워크 인터페이스와 상호 연결의 mtu 크기를 확인합니다.

    ip link show | grep mtu
    

    샘플 결과:

    1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000
    2: enp55s0f1: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc mq state DOWN mode DEFAULT group default qlen 1000
    3: enp55s0f2: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc mq state DOWN mode DEFAULT group default qlen 1000
    4: enp55s0f3: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc mq state DOWN mode DEFAULT group default qlen 1000
    5: enp17s0f0: <BROADCAST,MULTICAST,SLAVE,UP,LOWER_UP> mtu 1500 qdisc mq master bond0 state UP mode DEFAULT group default qlen 1000
    6: enp17s0f1: <BROADCAST,MULTICAST,SLAVE,UP,LOWER_UP> mtu 1500 qdisc mq master bond1 state UP mode DEFAULT group default qlen 1000
    7: enp173s0f0: <BROADCAST,MULTICAST,SLAVE,UP,LOWER_UP> mtu 1500 qdisc mq master bond0 state UP mode DEFAULT group default qlen 1000
    8: enp173s0f1: <BROADCAST,MULTICAST,SLAVE,UP,LOWER_UP> mtu 1500 qdisc mq master bond1 state UP mode DEFAULT group default qlen 1000
    9: bond1: <BROADCAST,MULTICAST,MASTER,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP mode DEFAULT group default qlen 1000
    10: bond1.117@bond1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP mode DEFAULT group default qlen 1000
    11: bond0: <BROADCAST,MULTICAST,MASTER,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP mode DEFAULT group default qlen 1000
    12: bond0.118@bond0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP mode DEFAULT group default qlen 1000
    13: virbr0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN mode DEFAULT group default qlen 1000
    14: virbr0-nic: <BROADCAST,MULTICAST> mtu 1500 qdisc pfifo_fast master virbr0 state DOWN mode DEFAULT group default qlen 1000
    
  2. 모든 노드에서 인터페이스 구성 파일을 루트로 수정하고 MTU=9000을 추가합니다. 이 파일은 /etc/sysconfig/network-scripts/ifcfg-interface_name에서 찾을 수 있습니다.

    샘플 결과:

    BONDING_OPTS="lacp_rate=1 miimon=100 mode=802.3ad xmit_hash_policy=1"
    TYPE=Bond
    BONDING_MASTER=yes
    PROXY_METHOD=none
    BROWSER_ONLY=no
    DEFROUTE=yes
    IPV4_FAILURE_FATAL=no
    IPV6INIT=no
    IPV6_AUTOCONF=yes
    IPV6_DEFROUTE=yes
    IPV6_FAILURE_FATAL=no
    IPV6_ADDR_GEN_MODE=stable-privacy
    NAME=bond1
    UUID=0e7da685-64bf-44f3-812f-9846d747a801
    DEVICE=bond1
    ONBOOT=yes
    AUTOCONNECT_SLAVES=yes
    MTU=9000
    
  3. 변경사항이 적용되도록 네트워킹 서비스를 다시 시작합니다.

    service network restart
    
  4. ping을 사용하여 MTU configuration를 테스트합니다.

     ping -c 2 -M do -s 8972 svr001-priv
     PING svr001-priv (172.16.1.10) 8972(9000) bytes of data.
     8980 bytes from svr001-priv (172.16.1.10): icmp_seq=1 ttl=64 time=0.153 ms
     8980 bytes from svr001-priv (172.16.1.10): icmp_seq=2 ttl=64 time=0.151 ms
    
    --- svr001-priv ping statistics ---
    2 packets transmitted, 2 received, 0% packet loss, time 1001ms
    rtt min/avg/max/mdev = 0.151/0.152/0.153/0.001 ms