Кластеризация СХД NetApp используя подручные свичи

    Кластеризация систем хранения данных сейчас набирает оборотов, особенно в свете бурно развивающихся Flash технологий, которые требуют наличия большего количества контроллеров способных обрабатывать выскокопроизводительные накопители. Кроме поддерживаемых кластерных свичей есть множетсво других, которые временно можно исспользовать для этих целей. В этой статье я хотел бы привести пример настройки нескольких свичей, которые мною протестированны для кластерной сети. Многие другие свичи, уверен, тоже будут работать, ведь это обычный Ethernet


    Схема подключения свичей для Cluster Interconnect

    Когда у вас есть на руках (хотябы временно) больше двух контроллеров FAS, кластерный свич может понадобится, в случае:

    • Конвертации FAS2240/255x в полку с последующим подключением к новой FAS истеме (у которой тоже есть полка с дисками), при этом требуется онлайн перенос без останова доступа к данным. На обоих системах должны работать ОС cDOT
    • Обновление 7M до cDOT с последующей онлайн миграцией данных назад. Подробнее о преимуществах Cluster-Mode.
    • Обновление прошивки контроллеров (хотя его и можно выполнять без останова, исспользуя всего два контроллера, но если у вас есть ещё пара контроллеров с дисками, почему бы их не задейстовать)
    • В случае если нужно выполнить более рациональную перезазбивку дисков (к примеру для получения фичи ADP: Root-Data Partitioning или Storage Pool)
    • И др.


    Как для временных конфигураций кластера сосстоящего из более двух контроллеров, так и для постоянных, требуется наличие поддерживаемого кластерного свича. На данный момент таких свича всего два это NetApp CN1610 и Cisco Nexus 5596. Если вы покупали сразу четыре или более контроллера, то этот свич у вас конечно же есть. А если это временная конфигурация из примеров выше, скорее всего такого свича нет. И что делать? Ответ очевиден: настроить тот свич, который у вас есть сейчас под рукой для создания временной конфигурации.

    Не смотря на то, что другие свичи официально не поддержуются, они конечно же работают:
    Тестировались следующие свичи с MTU 1500:
    • HP Pro Curve 6120XG (Image stamp Z.14.44, 1564) from HP c7000 with 10Gb links to 2240 and 8020
    • Cisco WS-C3850-48T (IOS 03.03.03SE RELEASE SOFTWARE (fc2)) with 1Gb links to 2240 and 8020

    Настройки HP Pro Curve 6120XG from HP c7000
    # HP Pro Curve 6120XG from HP c7000
    
    swbl2# sh ver
    Image stamp:    /ws/swbuildm/Z_zinfandel_fip_t4b_qaoff/code/build/vern(Z_zinfandel_fip_t4b_qaoff)
                    Aug 26 2013 16:32:58
                    Z.14.44
                    1564
    Boot Image:     Primary
    
    swbl2# sh vlan
    
     Status and Counters - VLAN Information
    
      Maximum VLANs to support : 256
      Primary VLAN : TECH
      Management VLAN :
    
      VLAN ID Name                 | Status     Voice Jumbo
      ------- -------------------- + ---------- ----- -----
      1       DEFAULT_VLAN         | Port-based No    No
      210     NetApp-Cluster       | Port-based No    No
    
    
    vlan 210
       name "NetApp-Cluster"
       untagged 19-20,22
       tagged Trk1-Trk2
    # Trk1-Trk2 - connection of both HP switches to each other and to Cisco WS-C3850-48T
       no ip address
       exit
    
    
    wbl1# sh vlans 210
    
     Status and Counters - VLAN Information - VLAN 210
    
      VLAN ID : 210
      Name : NetApp-Cluster
      Status : Port-based
      Voice : No
      Jumbo : Yes
    
      Port Information Mode     Unknown VLAN Status
      ---------------- -------- ------------ ----------
      22               Untagged Learn        Up
    
    swbl2# sh cdp neighbors 22 detail
    
     CDP neighbors information for port 22
    
      Port : 22
      Device ID : clA-02
      Address Type : IP
      Address      : 169.254.166.38
      Platform     : NetApp Release 8.3RC1: Fri Oct 31 20:13:33 PDT 2014FAS8020
      Capability   :
      Device Port  : e0b
      Version      : NetApp Release 8.3RC1: Fri Oct 31 20:13:33 PDT 2014FAS8020
    


    Настройка Cisco WS-C3850
    #Cisco WS-C3850-48T
    interface Vlan210
     description NetApp-Cluster
     no ip address
    
    interface GigabitEthernet2/0/10
     switchport access vlan 210
     switchport mode access
     flowcontrol receive on
     spanning-tree portfast
    !
    
    core1-co2#sh cdp neighbors
    Capability Codes: R - Router, T - Trans Bridge, B - Source Route Bridge
                      S - Switch, H - Host, I - IGMP, r - Repeater, P - Phone,
                      D - Remote, C - CVTA, M - Two-port Mac Relay
    
    Device ID        Local Intrfce     Holdtme    Capability  Platform  Port ID
    
    
    netapp2          Gig 1/0/10        149               H    FAS2240-2 e0b
    netapp2          Gig 1/0/9         149               H    FAS2240-2 e0a
    netapp2          Gig 2/0/9         149               H    FAS2240-2 e0d
    netapp2          Gig 2/0/10        149               H    FAS2240-2 e0c
    netapp2          Gig 1/0/40        149               H    FAS2240-2 e0M
    netapp1          Gig 2/0/8         166               H    FAS2240-2 e0d
    netapp1          Gig 2/0/7         166               H    FAS2240-2 e0c
    netapp1          Gig 1/0/8         166               H    FAS2240-2 e0a
    netapp1          Gig 1/0/7         166               H    FAS2240-2 e0b
    netapp1          Gig 1/0/39        166               H    FAS2240-2 e0M
    
    clA-02           Gig 2/0/12        142               H    FAS8020   e0f
    clA-02           Gig 2/0/6         142               H    FAS8020   e0e
    clA-01           Gig 2/0/11        168               H    FAS8020   e0f
    clA-01           Gig 1/0/6         168               H    FAS8020   e0e
    
    core1-co2#sh vlan
    
    VLAN Name                             Status    Ports
    ---- -------------------------------- --------- -------------------------------
    1    default                          active    Te1/1/3, Te1/1/4, Gi2/0/37, Gi2/0/38, Gi2/0/41, Gi2/0/48, Te2/1/3
                                                    Te2/1/4
    210  NetApp-Cluster                   active    Gi1/0/6, Gi1/0/7, Gi1/0/8, Gi1/0/9, Gi1/0/10, Gi2/0/6, Gi2/0/7
                                                    Gi2/0/8, Gi2/0/9, Gi2/0/10, Gi2/0/11, Gi2/0/12
    
    VLAN Type  SAID       MTU   Parent RingNo BridgeNo Stp  BrdgMode Trans1 Trans2
    ---- ----- ---------- ----- ------ ------ -------- ---- -------- ------ ------
    210  enet  100210     1500  -      -      -        -    -        0      0
    
    ore1-co2#sh ver
    Cisco IOS Software, IOS-XE Software, Catalyst L3 Switch Software
    (CAT3K_CAA-UNIVERSALK9-M), Version 03.03.03SE RELEASE SOFTWARE (fc2)
    Technical Support: http://www.cisco.com/techsupport
    Copyright (c) 1986-2014 by Cisco Systems, Inc.
    Compiled Sun 27-Apr-14 18:33 by prod_rel_team
    ROM: IOS-XE ROMMON
    BOOTLDR: CAT3K_CAA Boot Loader (CAT3K_CAA-HBOOT-M) Version 1.2, RELEASE SOFTWARE (P)
    
    Ipbase
    License Type: Permanent
    Next reload license Level: Ipbase
    
    cisco WS-C3850-48T (MIPS) processor with 4194304K bytes of physical memory.
    Processor board ID FOC1801U0WU
    11 Virtual Ethernet interfaces
    104 Gigabit Ethernet interfaces
    8 Ten Gigabit Ethernet interfaces
    2048K bytes of non-volatile configuration memory.
    4194304K bytes of physical memory.
    250456K bytes of Crash Files at crashinfo:.
    250456K bytes of Crash Files at crashinfo-2:.
    1609272K bytes of Flash at flash:.
    1609272K bytes of Flash at flash-2:.
    0K bytes of Dummy USB Flash at usbflash0:.
    0K bytes of Dummy USB Flash at usbflash0-2:.
    0K bytes of  at webui:.
    
    Base Ethernet MAC Address          : 50:1c:bf:6c:65:00
    Motherboard Assembly Number        : 73-14444-06
    Motherboard Serial Number          : FOC180112WY
    Model Revision Number              : M0
    Motherboard Revision Number        : A0
    Model Number                       : WS-C3850-48T
    System Serial Number               : FOC1801U0WU
    
    
    Switch Ports Model              SW Version        SW Image              Mode
    ------ ----- -----              ----------        ----------            ----
    *    1 56    WS-C3850-48T       03.03.03SE        cat3k_caa-universalk9 INSTALL
         2 56    WS-C3850-48T       03.03.03SE        cat3k_caa-universalk9 INSTALL 
    


    С MTU 9000 Cisco Nexus 5548UP:
    Nexus 5548UP Software version 7.1(1)N1(1)
    banner motd # Nexus 5548 NetApp Reference Configuration File (RCF) version 1.3-48p (2012-10-15)
    #
    
    feature lacp
    
    cdp enable
    cdp advertise v1
    cdp timer 5
    
    snmp-server community cshm1! ro
    
    errdisable recovery interval 30
    errdisable recovery cause pause-rate-limit
    
    policy-map type network-qos cluster
      class type network-qos class-default
        mtu 9216
    system qos
      service-policy type network-qos cluster
    
    spanning-tree port type edge default
    port-channel load-balance ethernet source-dest-port
    
    interface port-channel1
      switchport mode trunk
      spanning-tree port type network
     
    interface Ethernet1/1
      description Cluster Node 1  
      no lldp transmit
      no lldp receive
      spanning-tree port type edge
      spanning-tree bpduguard enable
    
    interface Ethernet1/2
      description Cluster Node 2  
      no lldp transmit
      no lldp receive
      spanning-tree port type edge
      spanning-tree bpduguard enable
    
    interface Ethernet1/3
      description Cluster Node 3
      no lldp transmit
      no lldp receive  
      spanning-tree port type edge
      spanning-tree bpduguard enable
    
    interface Ethernet1/4
      description Cluster Node 4
      no lldp transmit
      no lldp receive  
      spanning-tree port type edge
      spanning-tree bpduguard enable
    
    interface Ethernet1/5
      description Cluster Node 5
      no lldp transmit
      no lldp receive  
      spanning-tree port type edge
      spanning-tree bpduguard enable
    
    interface Ethernet1/6
      description Cluster Node 6
      no lldp transmit
      no lldp receive  
      spanning-tree port type edge
      spanning-tree bpduguard enable
    
    interface Ethernet1/7
      description Cluster Node 7
      no lldp transmit
      no lldp receive  
      spanning-tree port type edge
      spanning-tree bpduguard enable
    
    interface Ethernet1/8
      description Cluster Node 8
      no lldp transmit
      no lldp receive  
      spanning-tree port type edge
      spanning-tree bpduguard enable
    
    interface Ethernet1/9
      description Cluster Node 9
      no lldp transmit
      no lldp receive  
      spanning-tree port type edge
      spanning-tree bpduguard enable
    
    interface Ethernet1/10
      description Cluster Node 10
      no lldp transmit
      no lldp receive  
      spanning-tree port type edge
      spanning-tree bpduguard enable
    
    interface Ethernet1/11
      description Cluster Node 11
      no lldp transmit
      no lldp receive  
      spanning-tree port type edge
      spanning-tree bpduguard enable
    
    interface Ethernet1/12
      description Cluster Node 12
      no lldp transmit
      no lldp receive 
      spanning-tree port type edge
      spanning-tree bpduguard enable
    
    interface Ethernet1/13
      description Cluster Node 13
      no lldp transmit
      no lldp receive
      spanning-tree port type edge
      spanning-tree bpduguard enable
      
    interface Ethernet1/14
      description Cluster Node 14
      no lldp transmit
      no lldp receive
      spanning-tree port type edge
      spanning-tree bpduguard enable
      
    interface Ethernet1/15
      description Cluster Node 15
      no lldp transmit
      no lldp receive
      spanning-tree port type edge
      spanning-tree bpduguard enable
      
    interface Ethernet1/16
      description Cluster Node 16
      no lldp transmit
      no lldp receive
      spanning-tree port type edge
      spanning-tree bpduguard enable
      
    interface Ethernet1/17
      description Cluster Node 17
      no lldp transmit
      no lldp receive
      spanning-tree port type edge
      spanning-tree bpduguard enable
      
    interface Ethernet1/18
      description Cluster Node 18
      no lldp transmit
      no lldp receive
      spanning-tree port type edge
      spanning-tree bpduguard enable
      
    interface Ethernet1/19
      description Cluster Node 19
      no lldp transmit
      no lldp receive
      spanning-tree port type edge
      spanning-tree bpduguard enable
      
    interface Ethernet1/20
      description Cluster Node 20
      no lldp transmit
      no lldp receive
      spanning-tree port type edge
      spanning-tree bpduguard enable
      
    interface Ethernet1/21
      description Cluster Node 21
      no lldp transmit
      no lldp receive
      spanning-tree port type edge
      spanning-tree bpduguard enable
      
    interface Ethernet1/22
      description Cluster Node 22
      no lldp transmit
      no lldp receive
      spanning-tree port type edge
      spanning-tree bpduguard enable
      
    interface Ethernet1/23
      description Cluster Node 23
      no lldp transmit
      no lldp receive
      spanning-tree port type edge
      spanning-tree bpduguard enable
      
     interface Ethernet1/24
      description Cluster Node 24
      no lldp transmit
      no lldp receive
      spanning-tree port type edge
      spanning-tree bpduguard enable
      
    interface Ethernet1/25
      description Inter-Cluster Switch ISL Port 25 (port channel)
      no lldp transmit
      no lldp receive
      switchport mode trunk
      channel-group 1 mode active
      
    interface Ethernet1/26
      description Inter-Cluster Switch ISL Port 26 (port channel)
      no lldp transmit
      no lldp receive
      switchport mode trunk
      channel-group 1 mode active
      
    interface Ethernet1/27
      description Inter-Cluster Switch ISL Port 27 (port channel)
      no lldp transmit
      no lldp receive
      switchport mode trunk
      channel-group 1 mode active
      
    interface Ethernet1/28
      description Inter-Cluster Switch ISL Port 28 (port channel)
      no lldp transmit
      no lldp receive
      switchport mode trunk
      channel-group 1 mode active
      
    interface Ethernet1/29
      description Inter-Cluster Switch ISL Port 29 (port channel)
      no lldp transmit
      no lldp receive
      switchport mode trunk
      channel-group 1 mode active
      
    interface Ethernet1/30
      description Inter-Cluster Switch ISL Port 30 (port channel)
      no lldp transmit
      no lldp receive
      switchport mode trunk
      channel-group 1 mode active
      
    interface Ethernet1/31
      description Inter-Cluster Switch ISL Port 31 (port channel)
      no lldp transmit
      no lldp receive
      switchport mode trunk
      channel-group 1 mode active
      
    interface Ethernet1/32
      description Inter-Cluster Switch ISL Port 32 (port channel)
      no lldp transmit
      no lldp receive
      switchport mode trunk
      channel-group 1 mode active
    
    end
    


    Тестировались следующие операционные cисиетмы cDOT 8.3RC1, 8.3.1RC1 с хранилищами:
    • FAS2240
    • FAS8020

    При необходимости перенастраиваем MTU для кластерных портов NetApp:
    network port broadcast-domain modify -broadcast-domain Cluster -mtu 1500-or-9000 -ipspace Cluster
    

    При необходимости конвертируем SwitchLess-Cluster в Switched:
    cluster1::*> network options switchless-cluster modify -enabled true
    


    При необходимости мигрируем кластерные LIF'ы
    Если у ноды только один кластерный LIF, создайте второй и мигрируйте их по-очереди, так чтобы все ноды видели друг-друга хотябы по одному пути: через swichless коммутацию или через свичи.
    Не мигрируйте все LIF'ы одной ноды сразу, отвалившаяся нода с включённым HA сразу ребутнётся!
    HA конечно же сработает, но зачем, если можно без этого обойтись?
    cluster1::> network interface show -role cluster
    cluster1::> network interface modify -vserver vsm0 -lif clus1_1 -home-node node01 -home-port e0c -auto-revert false
    cluster1::> network interface modify -vserver vsm0 -lif clus2_1 -home-node node02 -home-port e0c -auto-revert false
    #Мигрируем LIF
    #Выполняем из Cluster Node Management консоли, той ноды на которой расположен LIF.
    cluster1-01::> network interface revert -vserver vsm0 -lif clus1_1
    cluster1-02::> network interface revert -vserver vsm0 -lif clus2_1
    


    Обязательно тестируем кластреную сеть из advanced режима:
    cluster1::*> cluster ping-cluster -node local
    Host is node1
    Getting addresses from network interface table...
    Local = 10.254.231.102  10.254.91.42
    Remote = 10.254.42.25    10.254.16.228
    Ping status:
    ....
    Basic connectivity succeeds on 4 path(s)
    Basic connectivity fails on 0 path(s)
    ................
    Detected 1500 byte MTU on 4 path(s):
        Local 10.254.231.102 to Remote 10.254.16.228
        Local 10.254.231.102 to Remote 10.254.42.25
        Local 10.254.91.42 to Remote 10.254.16.228
        Local 10.254.91.42 to Remote 10.254.42.25
    Larger than PMTU communication succeeds on 4 path(s)
    RPC status:
    2 paths up, 0 paths down (tcp check)
    2 paths up, 0 paths down (udp check)
    



    В продакшн, NetApp не рекомендует исспользовать Cluster Interconnect свичи для чего бы то ни было, кроме как для кластерного подключения хранилищ NetApp, для этого необходимо иметь отдельные свичи, хотя технически возможно исспользовать те же свичи для обоих задач.

    Блочный доступ:


    Напомню, что начиная с cDOT 8.3 по-умолчанию работает новая фича SLM и в случае онлайн миграции необходимо, на нодах которые принимают мигрирующий лун, разрешить «рассказывать» драйверам мультипасинга хостов, что лун теперь доступен по новым, дополнительным путям.
    cluster1::> lun mapping add-reporting-nodes -vserver vserver_name -path lun_path -igroup igroup_name [-destination-aggregate aggregate_name | -destination-volume volume_name]

    Удостоверьтесь, что драйвер мультипасинга на хосте обнаружил эти новые пути.

    NAS:


    В случае миграции вольюма, который исспользуется для файловых протоколов NFS/CIFS(SMB), после миграции не забудьте переместить LIF на ноду, куда переехал вольюм.
    cluster1::> network interface migrate -vserver vs0 -lif datalif1 -source-node vs0 -dest-node node2 -dest-port e0c
    


    Подробнее том, как вывести ноды из кластера.
    Подробнее том, как настроить зонинг для кластерного хранилища.

    Замечания по ошибкам и предложения правок в тексте прошу направлять в ЛС.

    Похожие публикации

    AdBlock похитил этот баннер, но баннеры не зубы — отрастут

    Подробнее
    Реклама

    Комментарии 11

      +2
      А не тестировали производительность? Хотелось бы увидеть сравнение Catalyst с Nexus по IOPS и Latency.
        +1
        проверял nexus 5010
        для iscsi печально с латенси, FC\FCoE не пробовал, бытует мнение что они годны только для FC\FCoE
        HP Pro Curve 6120XG from HP c7000 хорошо себя показал
          +1
          На счет FC/FCoE могу заверить, что проблем с latency вообще не было, у меня была отдельная плата FC, как положено, настроен zoning и прочее, если честно завелось с пол пинка, поэтому проводить замеры по скоростям не стали, да и особо времени не было.
          На счет iscsi к сожалению ничего сказать не могу.
            0
            А вы использовали QoS, MTU900, функции DCB такие как LLDP, TLV, PFC?
              +1
              QoS и MTU 9000
              nexus 5010 не умеет DCB нормально для iscsi, нету всех TLVs
              согласно рекомендациям делл отключили DCB
              Задержка заметно возросла по сравнению с 6120XG
            +1
            Использую HP Pro Curve 6120XG (MTU 9000) и FAS2240. Игрался с дёрганьем линков и ребутом голов/свичей под нагрузкой. Протормозок не заметил, но им особо не откуда было бы взяться, максимальная нагрузка на порт составила всего 40%
              0
              У меня с 6120 и mtu 9000 почему-то кластерная сеть не поднялась с ontap 8.3rc1/8.3.1rc1.
              Вы могли бы дать свой конфиг свича, версию прошивки, включенные фичи?
                +1
                Не уточнил, у меня не кластер, а обычный HA Pair 7-Mode. Стоит ontap 8.1.2, одна полка FAS2240-2 с двумя головами, два свича, с каждой головы по шнурку в каждый свич. У каждого коннекта свой IP и на клиенте все 4 подключены в iSCSI Multipath. Всё как по учебнику :)
                Первый вариант был с объединением линков в LAGG, но тогда при пропадании линка терялась пара пакетов, что не айс, а в таком конфиге как сейчас, всё ок.
            0
            navion
            Производительность свичей не тестировалась. В данном случае в этом нет большой надобности.

            Так как архитектура кластеризации Data ONTAP устроена таким образом, чтобы кластерные интерконнекты исспользовались только в редких ситуациях. Как правило каждый контроллер и его порты обслуживают данные, которые непосредственно расположены на том же контроллере, для, чего разработан ряд механизмов, таких как:
            • ALUA (для SAN)
            • pNFS 4.1 (NAS)
            • и CIFS v3.0 (NAS)

            Таким образом кластерные свичи, как правило, нужны только для подстраховки на тот момент, пока данные мигрируют из одной ноды на другую. Другими словами в нормально настроенном и работающем продакшн кластерные свичи не вносят коррективов в скорость отклика к данным так как практически не исспользуются.

            Вопрос ухудшения отклика меня не интересовал, так при выборе двух из трех пунктов
            • Онлайн миграция
            • Скорость отклика
            • Возможность исспользования подручных свичей

            Вопрос скорости отклика был на самом последнем приоритете.
              +1
              Неплохо бы добавить информацию о том, что при обращении в техподдержку NetApp, такое решение поддерживаться не будет :)
              А в целом очень полезная статья. У многих существует соблазн построить кластер на уже имеющихся коммутаторах хотя бы для тестов. Хоть цены на CN1610 более, чем адекватные.
                0
                Вы абсолютно правы, именно по-этому во всей статье постоянно делается упор на то, что это временная конфигурация.

              Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.

              Самое читаемое