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

Подключить сетевой диск к выделенному серверу с ОС Proxmox

Сетевые диски доступны для подключения к выделенным серверам в пуле MSK-1. Подключить сетевой диск можно к выделенным серверам готовой конфигурации с тегом Можно подключить сетевые диски и к выделенным серверам произвольной конфигурации с дополнительной сетевой картой 2 × 10 GE + подключение к SAN сети Сетевых дисков 10 Гбит/с.

Сетевой диск можно подключить к одному или нескольким серверам.

  1. Создайте SAN-сеть.
  2. Соедините сетевой диск с сервером.
  3. Подключите сетевой диск к серверу в ОС сервера.
  4. Настройте MPIO.
  5. Добавьте диск в ProxmoxVE.
  6. Опционально: подключите сетевой диск к еще одному серверу.

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

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

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

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

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

Подключить сетевой диск к серверу можно вручную или при помощи готового скрипта, который формируется в панели управления. Использовать скрипт можно только на ОС Ubuntu.

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

  2. Откройте конфигурационный файл /etc/network/interfaces.d/01-san текстовым редактором vi:

    vi /etc/network/interfaces.d/01-san
  3. На сетевые интерфейсы, подключенные к SAN-коммутатору, добавьте IP-адреса и пропишите маршруты для получения доступа к iSCSI-таргетам:

    auto <eth_name_1>
    iface <eth_name_1> inet static
    address <ip_address_1>
    up ip route add <destination_subnet_1> via <next_hop_1> dev <eth_name_1>

    auto <eth_name_2>
    iface <eth_name_2> inet static
    address <ip_address_2>
    up ip route add <destination_subnet_2> via <next_hop_2> dev <eth_name_2>

    Укажите:

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

    :wq
  5. Примените конфигурацию, для этого перезагрузите сеть:

    systemctl restart networking
  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. Проверьте, что iSCSI-таргет доступен:

    ping -c5 <iscsi_target_ip_address_1>
    ping -c5 <iscsi_target_ip_address_2>

    Укажите:

    • <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-соединения → поле Initiator name.

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

    systemctl restart iscsid.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-интерфейса, который вы создали на шаге 13;
    • <iscsi_eth_name_2> — имя второго iSCSI-интерфейса, который вы создали на шаге 13;
    • <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 <iscsi_eth_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.

    В ответе появится список 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-таргета.
  16. Настройте 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-соединения → поле Target name;
    • <username> — имя пользователя для авторизации iSCSI-инициатора. Можно посмотреть в панели управления: в верхнем меню нажмите ПродуктыВыделенные серверы → раздел Сетевые диски и СХД → вкладка Сетевые диски → страница диска → блок Настройка iSCSI-соединения → поле Username;
    • <password> — пароль для авторизации iSCSI-инициатора. Можно посмотреть в панели управления: в верхнем меню нажмите ПродуктыВыделенные серверы → раздел Сетевые диски и СХД → вкладка Сетевые диски → страница диска → блок Настройка iSCSI-соединения → поле Рassword.
  17. Авторизуйтесь на 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-интерфейса.
  18. Проверьте, что 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-сессий.

  19. Включите автоматическое подключение дисков при перезагрузке сервера, для этого установите параметр node.startup в режим 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-таргета.
  20. Опционально: перезагрузите сервер.

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

MultiPath-IO (MPIO) — многопутевой ввод-вывод для повышения отказоустойчивости передачи данных на сетевой диск.

  1. Обновите список пакетов:

    apt update
    apt upgrade
  2. Установите multipath:

    apt install multipath-tools
  3. Откройте конфигурационный файл /etc/multipath.conf текстовым редактором vi:

    vi /etc/multipath.conf
  4. Вставьте в конфигурационный файл параметры:

    defaults {
    user_friendly_names yes
    find_multipaths yes
    }

    blacklist {
    }
  5. Выйдите из текстового редактора vi с сохранением изменений:

    :wq
  6. Примените конфигурацию, для этого перезапустите multipath:

    systemctl restart multipathd
  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
  8. Убедитесь, что в файле bindings есть информация о WWID блочного устройства:

    cat /etc/multipath/bindings

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

    # Format:
    # alias wwid
    #
    mpatha 3600140530fab7e779fa41038a0a08f8e
  9. Убедитесь, что в файле wwids есть информация о WWID блочного устройства:

    cat /etc/multipath/wwids

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

    # Valid WWIDs:
    /3600140530fab7e779fa41038a0a08f8e/

5. Добавить диск ProxmoxVE

  1. В браузере откройте страницу:

    https://<ip_address>:8006

    Укажите <ip_address> — публичный IP-адрес сервера. Можно скопировать в панели управления: в верхнем меню нажмите ПродуктыВыделенные серверы → страница сервера → вкладка Операционная система → в поле IP нажмите .

  2. В меню слева перейдите в раздел DatacenterStorage.

  3. В поле Add выберите iSCSI.

  4. В поле ID введите имя подключения.

  5. В поле Portal введите IP-адрес iSCSI-таргета. Можно посмотреть в панели управления: в верхнем меню нажмите ПродуктыВыделенные серверы → раздел Сетевые диски и СХД → вкладка Сетевые диски → страница диска → блок Настройка iSCSI-соединения → поле IP-адрес iSCSI-таргета.

  6. В поле Target выберите IQN iSCSI-таргета. IQN (iSCSI Qualified Name) — полный уникальный идентификатор устройства iSCSI.

  7. Если в поле Target нет IQN iSCSI-таргета, добавьте его вручную:

    7.1. Откройте конфигурационный файл /etc/pve/storage.cfg текстовым редактором vi:

    vi /etc/pve/storage.cfg

    7.2. Добавьте два подключения:

    iscsi: <iscsi_target_name_1>
    portal <iscsi_target_ip_address_1>
    target <iqn>
    content none

    iscsi: <iscsi_target_name_2>
    portal <iscsi_target_ip_address_2>
    target <iqn>
    content none

    Укажите:

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

    7.3. Выйдите из текстового редактора vi с сохранением изменений:

    :wq
  8. Отметьте чекбокс Enabled.

  9. Отметьте чекбокс Use LUNs directly.

  10. Нажмите Add.

  11. В меню слева перейдите в раздел DatacenterStorage.

  12. Нажмите Add и выберите LVM.

  13. В поле ID введите имя тома.

  14. В поле Base storage выберите имя подключения, которое указали на шаге 4.

  15. В поле Base volume выберите сетевой диск.

  16. В поле Volume group введите имя группы томов.

  17. Отметьте чекбокс Enable.

  18. Отметьте чекбокс Shared.

  19. Нажмите Add.

6. Опционально: подключить сетевой диск к еще одному серверу

  1. Соедините сетевой диск с сервером в панели управления.
  2. Подключите сетевой диск к серверу в ОС сервера.
  3. Настройте MPIO.
  4. Добавьте диск в ProxmoxVE.