Перейти к основному содержимому
Подключить сетевой диск к серверу
Последнее изменение:

Подключить сетевой диск к серверу

  1. Создать SAN-сеть.
  2. Соединить сетевой диск с сервером.
  3. Подключить сетевой диск к серверу ОС сервера.
  4. Настройте MPIO.

1. Создать SAN-сеть

  1. В панели управления перейдите в раздел Серверы и оборудованиеСетевые диски и СХД → вкладка Сетевые диски.
  2. Откройте страницу диска → вкладка Подключение к серверу.
  3. Нажмите на ссылку Создать SAN-сеть.
  4. Нажмите Добавить SAN-сеть.
  5. Выберите расположение диска — зона доступности.
  6. Введите подсеть или оставьте подсеть, которая сформирована по умолчанию. Подсеть должна принадлежать диапазону приватных адресов 10.0.0.0/8, 172.16.0.0/12 или 192.168.0.0/16 и не должна уже использоваться в вашей инфраструктуре.
  7. Нажмите Создать SAN-сеть.

2. Соединить сетевой диск с сервером

  1. В панели управления перейдите в раздел Серверы и оборудованиеСетевые диски и СХД → вкладка Сетевые диски.
  2. Откройте страницу диска → вкладка Подключение к серверу.
  3. В поле Сервер нажмите Выбрать.
  4. Выберите сервер, к которому будет подключен сетевой диск. Сетевой диск можно подключить только к выделенному серверу готовой конфигурации с сетевой картой к SAN-сети.
  5. Нажмите Соединить.

3. Подключить сетевой диск к серверу в ОС сервера

  1. Подключитесь к серверу по SSH или через KVM-консоль.

  2. Откройте конфигурационный файл утилиты netplan текстовым редактором vi:

    vi /etc/netplan/50-cloud-init.yaml
  3. Добавьте на сетевые интерфейсы, подключенные к SAN-коммутатору, IP-адреса и пропишите маршруты для получения доступа к iSCSI-таргетам:

        <eth_name_1>:
    addresses:
    - <ip_address_1>
    routes:
    - to: <destination_subnet_1>
    via: <next_hop_1>
    <eth_name_2>:
    addresses:
    - <ip_address_2>
    routes:
    - to: <destination_subnet_2>
    via: <next_hop_2>

    Укажите:

    • <eth_name_1> — имя первого сетевого интерфейса. Первый сетевой интерфейс настраивается на порте №1 сетевой карты;
    • <eth_name_2> — имя второго сетевого интерфейса. Второй сетевой интерфейс настраивается на порте №2 сетевой карты;
    • <ip_address_1> — IP-адрес порта №1 сетевой карты. Можно посмотреть в панели управления в разделе Серверы и оборудованиеСетевые диски и СХД → вкладка Сетевые диски → страница диска → раздел Параметры iSCSI-инициатора → поле IP-адрес порта №1 сетевой карты;
    • <ip_address_2> — IP-адрес порта №2 сетевой карты. Можно посмотреть в панели управления в разделе Серверы и оборудованиеСетевые диски и СХД → вкладка Сетевые диски → страница диска → раздел Параметры iSCSI-инициатора → поле IP-адрес порта №2 сетевой карты;
    • <destination_subnet_1> — подсеть назначения для порта №1 сетевой карты. Можно посмотреть в панели управления в разделе Серверы и оборудованиеСетевые диски и СХД → вкладка Сетевые диски → страница диска → раздел Статические маршруты для подключения к iSCSI-таргетам → столбец Подсеть назначения;
    • <destination_subnet_2> — подсеть назначения для порта №2 сетевой карты. Можно посмотреть в панели управления в разделе Серверы и оборудованиеСетевые диски и СХД → вкладка Сетевые диски → страница диска → раздел Статические маршруты для подключения к iSCSI-таргетам → столбец Подсеть назначения;
    • <next_hop_1> — шлюз для порта №1 сетевой карты. Можно посмотреть в панели управления в разделе Серверы и оборудованиеСетевые диски и СХД → вкладка Сетевые диски → страница диска → раздел Статические маршруты для подключения к iSCSI-таргетам → столбец Next hop (шлюз);
    • <next_hop_2> — шлюз для порта №2 сетевой карты. Можно посмотреть в панели управления в разделе Серверы и оборудованиеСетевые диски и СХД → вкладка Сетевые диски → страница диска → раздел Статические маршруты для подключения к iSCSI-таргетам → столбец Next hop (шлюз).
  4. Выйдите из текстового редактора vi с сохранением изменений:

    :wq
  5. Примените конфигурацию:

    netplan apply
  6. Выведите информацию о сетевых интерфейсах и проверьте, что они настроены корректно:

    ip a
  7. Опционально: перезагрузите сервер.

  8. Проверьте скорость работы каждого сетевого интерфейса. Она должна быть не ниже 10 ГБит/сек:

    ethtool <eth_name_1> | grep -i speed
    ethtool <eth_name_2> | grep -i speed

    Укажите <eth_name_1> и <eth_name_2> — имена сетевых интерфейсов, настроенных на шаге 3.

  9. Если скорость ниже 10 Гбит/с, создайте тикет. Если скорость выше или равна 10 Гбит/с, перейдите на шаг 9.

  10. Проверьте, что iSCSI-таргет доступен:

    ping -c5 <iscsi_target_ip_address_1>
    ping -c5 <iscsi_target_ip_address_2>
    ethtool <eth_name_2> | grep -i speed

    Укажите:

    • <iscsi_target_ip_address_1> — IP-адрес первого iSCSI-таргета. Можно посмотреть в панели управления в разделе Серверы и оборудованиеСетевые диски и СХД → вкладка Сетевые диски → страница диска → вкладка Подключение к серверу → раздел Параметры диска для iSCSI-соединения → поле IP-адрес iSCSI-таргета 1;
    • <iscsi_target_ip_address_2> — IP-адрес второго iSCSI-таргета. Можно посмотреть в панели управления в разделе Серверы и оборудованиеСетевые диски и СХД → вкладка Сетевые диски → страница диска → вкладка Подключение к серверу → раздел Параметры диска для iSCSI-соединения → поле IP-адрес iSCSI-таргета 2.
  11. Задайте имя iSCSI-инициатора:

    vi /etc/iscsi/initiatorname.iscsi 
    InitiatorName= <initiator_name>

    Укажите <initiator_name> — имя iSCSI-инициатора. Можно посмотреть в панели управления в разделе Серверы и оборудованиеСетевые диски и СХД → вкладка Сетевые диски → страница диска → раздел Параметры iSCSI-инициатора → поле Имя инициатора;

  12. Перезапустите iSCSI:

    systemctl restart iscsid.service
    systemctl restart multipathd.service
  13. Создайте iSCSI-интерфейсы:

    iscsiadm -m iface -I <iscsi_eth_name_1> --op new
    iscsiadm -m iface -I <iscsi_eth_name_2> --op new

    Укажите:

    • <iscsi_eth_name_1> — имя первого iSCSI-интерфейса;
    • <iscsi_eth_name_2> — имя второго iSCSI-интерфейса.
  14. Привяжите iSCSI-интерфейсы к сетевым интерфейсам, настроенным на шаге 3:

    iscsiadm -m iface --interface <iscsi_eth_name_1> --op update -n iface.net_ifacename -v <eth_name_1>
    iscsiadm -m iface --interface <iscsi_eth_name_2> --op update -n iface.net_ifacename -v <eth_name_2>

    Укажите:

    • <iscsi_eth_name_1> — имя первого iSCSI-интерфейса, который вы создали на шаге 12;
    • <iscsi_eth_name_2> — имя второго iSCSI-интерфейса, который вы создали на шаге 12;
    • <eth_name_1> — имя первого сетевого интерфейса, который вы настроили на шаге 3;
    • <eth_name_2> — имя второго сетевого интерфейса, который вы настроили на шаге 3.
  15. Проверьте доступность iSCSI-таргета через интерфейсы iSCSI:

    iscsiadm -m discovery -t sendtargets -p <iscsi_target_ip_address_1> --interface <iscsi_eth_name_1>
    iscsiadm -m discovery -t sendtargets -p <iscsi_target_ip_address_2> --interface <ieth_name_2>

    Укажите:

    • <iscsi_target_ip_address_1> — IP-адрес первого iSCSI-таргета;
    • <iscsi_target_ip_address_2> — IP-адрес второго iSCSI-таргета;
    • <iscsi_eth_name_1> — имя первого iSCSI-интерфейса, который вы создали на шаге 13;
    • <iscsi_eth_name_2> — имя второго iSCSI-интерфейса, который вы создали на шаге 13.
  16. В ответе появится список iSCSI-таргетов. Например:

    10.100.1.2:3260,1 iqn.2003-01.com.redhat.iscsi-gw:workshop-target
    10.100.1.6:3260,2 iqn.2003-01.com.redhat.iscsi-gw:workshop-target

    Здесь:

    • 10.100.1.2:3260 — IP-адрес первого iSCSI-таргета;
    • iqn.2003-01.com.redhat.iscsi-gw:workshop-target — IQN первого iSCSI-таргета. IQN (iSCSI Qualified Name) — полный уникальный идентификатор устройства iSCSI;
    • 10.100.1.6:3260 — IP-адрес второго iSCSI-таргета;
    • iqn.2003-01.com.redhat.iscsi-gw:workshop-target — IQN второго iSCSI-таргета.
  17. Настройте CHAP-аутентификацию на iSCSI-Initiator:

    iscsiadm --mode node -T <IQN> -p <iscsi_target_ip_address_1> --op update -n node.session.auth.authmethod --value CHAP

    iscsiadm --mode node -T <IQN> -p <iscsi_target_ip_address_2> --op update -n node.session.auth.authmethod --value CHAP

    iscsiadm --mode node -T <IQN> --op update -n node.session.auth.username --value <username>

    iscsiadm --mode node -T <IQN> -p <iscsi_target_ip_address_1> --op update -n node.session.auth.password --value <password>

    iscsiadm --mode node -T <IQN> -p <iscsi_target_ip_address_2> --op update -n node.session.auth.password --value <password>

    Укажите:

    • <iscsi_target_ip_address_1> — IP-адрес первого iSCSI-таргета;
    • <iscsi_target_ip_address_2> — IP-адрес второго iSCSI-таргета;
    • <IQN> — IQN iSCSI-таргета. Можно посмотреть в панели управления в разделе Серверы и оборудованиеСетевые диски и СХД → вкладка Сетевые диски → страница диска → вкладка Подключение к серверу → раздел Параметры диска для iSCSI-соединения → поле Имя таргета;
    • <username> — имя пользователя для авторизации iSCSI-инициатора. Можно посмотреть в панели управления в разделе Серверы и оборудованиеСетевые диски и СХД → вкладка Сетевые диски → страница диска → вкладка Подключение к серверу → раздел CHAP-аутентификация → поле Username;
    • <password> — пароль для авторизации iSCSI-инициатора. Можно посмотреть в панели управления в разделе Серверы и оборудованиеСетевые диски и СХД → вкладка Сетевые диски → страница диска → вкладка Подключение к серверу → раздел CHAP-аутентификация → поле Рassword.
  18. Авторизуйтесь на iSCSI-таргете через iSCSI-интерфейсы:

    iscsiadm --mode node -T <IQN> -p <iscsi_target_ip_address_1> --login --interface <iscsi_eth_name_1>
    iscsiadm --mode node -T <IQN> -p <iscsi_target_ip_address_2> --login --interface <iscsi_eth_name_2>

    Укажите:

    • <IQN> — IQN первого и второго iSCSI-таргета;
    • <iscsi_target_ip_address_1> — IP-адрес первого iSCSI-таргета;
    • <iscsi_target_ip_address_2> — IP-адрес второго iSCSI-таргета;
    • <iscsi_eth_name_1> — имя первого iSCSI-интерфейса;
    • <iscsi_eth_name_2> — имя второго iSCSI-интерфейса.
  19. Проверьте, что iSCSI-сессия для каждого iSCSI-таргета запустилась:

    iscsiadm -m session

    В ответе появятся две активные iSCSI-сессии. Например:

    tcp: [1] 10.100.1.2:3260,1 iqn.2003-01.com.redhat.iscsi-gw:workshop-target (non-flash)
    tcp: [3] 10.100.1.6:3260,2 iqn.2003-01.com.redhat.iscsi-gw:workshop-target (non-flash)

    Здесь [1] и [3] — номера iSCSI-сессий.

  20. Установите настройку node.startup iSCSI-сессий в режим automatic. Это означает, что при перезагрузке диски подключатся автоматически:

    iscsiadm --mode node -T  <IQN> -p <iscsi_target_ip_address_1> --op update -n node.startup -v automatic
    iscsiadm --mode node -T <IQN> -p <iscsi_target_ip_address_2> --op update -n node.startup -v automatic
    systemctl enable iscsid.service
    systemctl restart iscsid.service

    Укажите:

    • <IQN> — IQN iSCSI-таргета;
    • <iscsi_target_ip_address_1> — IP-адрес первого iSCSI-таргета;
    • <iscsi_target_ip_address_2> — IP-адрес второго iSCSI-таргета.
  21. Опционально: перезагрузите сервер.

4. Настроить MPIO

MPIO настроено по умолчанию. Проверьте корректность настроек.

  1. Откройте конфигурационный файл утилиты Device Mapper Multipath текстовым редактором vi:

    vi /etc/multipath.conf
  2. Убедитесь, что файл /etc/multipath.conf содержит только следующие строки:

    defaults {
    user_friendly_names yes
    }
  3. Откройте файл bindings текстовым редактором vi:

    vi /etc/multipath/bindings
  4. Убедитесь, что в файле есть информация о WWID блочного устройства. Например:

    # Multipath bindings, Version : 1.0
    # NOTE: this file is automatically maintained by the multipath program.
    # You should not need to edit this file in normal circumstances.
    #
    # Format:
    # alias wwid
    #
    mpatha 3600140530fab7e779fa41038a0a08f8e
  5. Откройте файл wwids текстовым редактором vi:

    vi /etc/multipath/wwids
  6. Убедитесь, что в файле есть информация о WWID блочного устройства. Например:

    vi /etc/multipath/wwids
  7. Проверьте подключение сетевого диска и убедитесь, что для параметра policy указано значение service-time 0:

    multipath -ll

    В выводе команды отобразится информация об устройствах, путях и текущей политике. Например:

    mpatha (3600140530fab7e779fa41038a0a08f8e) dm-0 LIO-ORG,TCMU device
    size=20G features='0' hwhandler='1 alua' wp=rw
    |-+- policy='service-time 0' prio=10 status=active
    | `- 8:0:0:0 sdc 8:32 active ready running
    `-+- policy='service-time 0' prio=10 status=enabled
    `- 9:0:0:0 sdd 8:48 active ready running