Перейти к основному содержимому
Подключить файловое хранилище к облачному серверу в другом пуле

Подключить файловое хранилище к облачному серверу в другом пуле

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

  1. Создайте глобальный роутер.
  2. Создайте на глобальном роутере сеть и подсеть для облачного сервера.
  3. Создайте на глобальном роутере сеть и подсеть для файлового хранилища.
  4. Назначьте IP-адрес на облачный сервер.
  5. Пропишите маршруты на облачном сервере.
  6. Создайте файловое хранилище.
  7. Примонтируйте файловое хранилище к облачному серверу.

Посмотрите пример подключения файлового хранилища к облачному серверу в другом пуле.

В инструкции описаны примеры подключения для облачных серверов с операционными системами Ubuntu, Debian, CentOS и Windows. Инструкция для серверов с ОС VMware ESXi, Proxmox и FreeNAS — в статье блога Selectel Selectel File Storage.

Если с помощью файлового хранилища нужно увеличить дисковое пространство, мы рекомендуем создавать хранилище в одном пуле с облачным сервером. Подробнее в инструкции Подключить файловое хранилище к облачному серверу в одном пуле.

Пример подключения файлового хранилища к облачному серверу

Например, нужно подключить файловое хранилище в пуле ru-2 к облачному серверу в пуле ru-8.

  1. Создайте глобальный роутер.
  2. Создайте две приватные подсети глобального роутера — 192.168.0.0/24 для пула ru-8 и 10.10.0.0/24 для пула ru-2.
  3. Назначьте адрес из подсети 192.168.0.0/24 на облачный сервер, например 192.168.0.2.
  4. Пропишите маршруты на облачном сервере в пуле ru-8 — в подсеть 10.10.0.0/24 через шлюз 192.168.0.1.
  5. Создайте файловое хранилище в подсети 10.10.0.0/24.
  6. Примонтируйте файловое хранилище к облачному серверу.

Создать глобальный роутер

  1. В панели управления перейдите в раздел Сетевые сервисыГлобальный роутер Selectel.
  2. Нажмите Создать роутер. Для каждого аккаунта установлен лимит в пять глобальных роутеров.
  3. Введите имя роутера.
  4. Нажмите Создать.
  5. Если роутер создался со статусом ERROR или завис в одном из статусов, создайте тикет.

Создать сеть и подсеть для облачного сервера

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

  1. В панели управления перейдите в раздел Сетевые сервисыГлобальный роутер Selectel.

  2. Откройте страницу роутера → вкладка Сети.

  3. Нажмите Создать сеть.

  4. Введите имя сети, оно будет использоваться только в панели управления.

  5. Выберите услугу Облачная платформа.

  6. Выберите пул, в котором создан облачный сервер.

  7. Выберите проект облачной платформы, в котором создан облачный сервер.

  8. Введите имя подсети — оно будет использоваться только в панели управления.

  9. Введите CIDR — IP-адрес и маску подсети. В форме можно ввести только новую подсеть. Если нужно добавить существующую подсеть, проверьте, что она еще не добавлена на любой из глобальных роутеров в аккаунте, и создайте тикет. Подсеть должна соответствовать условиям:

    • принадлежать диапазону приватных адресов по RFC 1918: 10.0.0.0/8, 172.16.0.0/12 или 192.168.0.0/16;
    • если в сеть глобального роутера будут включены ноды Managed Kubernetes, подсеть не должна пересекаться с диапазонами 10.250.0.0/16, 10.10.0.0/16 и 10.96.0.0/12. Эти подсети участвуют во внутренней адресации Managed Kubernetes, их использование может привести к конфликтам в сети глобального роутера;
    • иметь размер не меньше /29, так как три адреса будут заняты сетевым оборудованием Selectel;
    • не пересекаться с другими подсетями, добавленными на этот роутер: доступные IP-адреса каждой подсети на роутере не должны совпадать с IP-адресами других подсетей на нем.
  10. Введите IP шлюза или оставьте первый адрес из подсети, который назначается по умолчанию. Не назначайте этот адрес на свои устройства, чтобы не нарушить работу сети.

  11. Введите служебные IP или оставьте последние адреса из подсети, которые назначаются по умолчанию. Не назначайте эти адреса на свои устройства, чтобы не нарушить работу сети.

  12. Нажмите Создать сеть.

  13. Опционально: проверьте топологию сети на глобальном роутере. В панели управления перейдите в раздел Сетевые сервисыГлобальный роутер Selectel → откройте страницу роутера → нажмите Карта сети.

Создать сеть и подсеть для файлового хранилища

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

  1. В панели управления перейдите в раздел Сетевые сервисыГлобальный роутер Selectel.

  2. Откройте страницу роутера → вкладка Сети.

  3. Нажмите Создать сеть.

  4. Введите имя сети, оно будет использоваться только в панели управления.

  5. Выберите услугу Облачная платформа.

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

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

  8. Введите имя подсети — оно будет использоваться только в панели управления.

  9. Введите CIDR — IP-адрес и маску подсети. В форме можно ввести только новую подсеть. Если нужно добавить существующую подсеть, проверьте, что она еще не добавлена на любой из глобальных роутеров в аккаунте, и создайте тикет. Подсеть должна соответствовать условиям:

    • принадлежать диапазону приватных адресов по RFC 1918: 10.0.0.0/8, 172.16.0.0/12 или 192.168.0.0/16;
    • если в сеть глобального роутера будут включены ноды Managed Kubernetes, подсеть не должна пересекаться с диапазонами 10.250.0.0/16, 10.10.0.0/16 и 10.96.0.0/12. Эти подсети участвуют во внутренней адресации Managed Kubernetes, их использование может привести к конфликтам в сети глобального роутера;
    • иметь размер не меньше /29, так как три адреса будут заняты сетевым оборудованием Selectel;
    • не пересекаться с другими подсетями, добавленными на этот роутер: доступные IP-адреса каждой подсети на роутере не должны совпадать с IP-адресами других подсетей на нем.
  10. Введите IP шлюза или оставьте первый адрес из подсети, который назначается по умолчанию. Не назначайте этот адрес на свои устройства, чтобы не нарушить работу сети.

  11. Введите служебные IP или оставьте последние адреса из подсети, которые назначаются по умолчанию. Не назначайте эти адреса на свои устройства, чтобы не нарушить работу сети.

  12. Нажмите Создать сеть.

  13. Опционально: проверьте топологию сети на глобальном роутере. В панели управления перейдите в раздел Сетевые сервисыГлобальный роутер Selectel → откройте страницу роутера → нажмите Карта сети.

Назначить IP-адрес на облачный сервер

Настройте локальный порт на облачном сервере, который включается в сеть глобального роутера. На порт назначьте IP-адрес из подсети, которую вы создали на глобальном роутере для соответствующего пула.

  1. Добавьте облачный сервер в созданную подсеть глобального роутера. Если у вас еще нет облачного сервера, создайте его. При создании в качестве подсети выберите подсеть глобального роутера.

  2. Примените изменения в зависимости от параметра Применять изменения в блоке Настройка портов. Значение параметра можно посмотреть в панели управления в разделе Облачная платформаСерверы → страница облачного сервера:

    • При перезагрузке серверапрограммно перезагрузите облачный сервер или вручную внесите изменения в файле конфигурации сети на сервере;
    • Вручную в файле конфигурации сети на сервере — вручную внесите изменения в файле конфигурации сети на сервере.

Прописать маршруты на облачном сервере

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

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

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

  2. Отключите конфигурирование сети. Для этого создайте файл 99-disable-network-config.cfg:

    echo "network: {config: disabled}" >> /etc/cloud/cloud.cfg.d/99-disable-network-config.cfg
  3. Откройте файл конфигурации:

    vi /etc/network/interfaces.d/50-cloud-init.cfg
  4. Найдите блок с данными соответствующего сетевого интерфейса.

  5. В конце этого блока добавьте нужный маршрут:

    up route add -net <ip> netmask <netmask> gw <gateway>

    Укажите:

    • <ip> — подсеть, до которой нужен маршрут (например, 192.168.1.0);
    • <netmask> — маска подсети, до которой нужен маршрут (например, 255.255.255.0);
    • <gateway> — шлюз для подсети текущего сервера, который указан на глобальном роутере.
  6. Если вам нужно прописать несколько маршрутов, добавьте их последовательно в том же блоке.

  7. Перезагрузите сервер.

Создать файловое хранилище

  1. В панели управления перейдите в раздел Облачная платформаФайловое хранилище.

  2. Нажмите Создать хранилище.

  3. Введите новое имя хранилища или оставьте имя, которое создано автоматически.

  4. Выберите пул, в котором будет расположено хранилище.

  5. Выберите подсеть приватной сети глобального роутера Selectel, которую вы создали для файлового хранилища.

  6. Выберите тип файлового хранилища. Хранилища отличаются скоростью чтения/записи и значениями пропускной способности:

    • HDD Базовое;

    • SSD Универсальное;

    • SSD Быстрое.

      После создания тип хранилища нельзя будет изменить.

  7. Укажите размер хранилища: от 50 ГБ до 50 ТБ. После создания можно будет увеличить файловое хранилище, но нельзя уменьшить.

  8. Выберите протокол:

    • NFSv4 — для подключения хранилища к серверам с операционной системой Linux и другими Unix-системами;

    • CIFS SMBv3 — для подключения хранилища к серверам с операционной системой Windows.

      После создания протокол нельзя будет изменить.

  9. Проверьте стоимость файлового хранилища.

  10. Нажмите Создать.

Примонтировать файловое хранилище к облачному серверу

Процесс монтирования зависит от операционной системы на облачном сервере и протокола файлового хранилища: NFSv4 или CIFS SMBv3.

Примонтировать хранилище по протоколу NFSv4

  1. Подключитесь к облачному серверу.

  2. Установите пакет для работы с протоколом NFS:

    sudo apt install nfs-common
  3. Создайте папку для монтирования хранилища:

    sudo mkdir -p /mnt/nfs
  4. Примонтируйте файловое хранилище:

    sudo mount -vt nfs "<filestorage_ip_address>:/shares/share-<filestorage_uuid>" /mnt/nfs

    Укажите:

    • <filestorage_ip_address> — IP-адрес файлового хранилища. Можно посмотреть в панели управления в разделе Облачная платформаФайловое хранилище → страница хранилища → вкладка Настройки → поле IP;
    • <filestorage_uuid> — ID файлового хранилища. Можно посмотреть в панели управления в разделе Облачная платформаФайловое хранилище → строка нужного хранилища → нажмите .

Примонтировать хранилище по протоколу CIFS SMBv3

  1. Подключитесь к облачному серверу.

  2. Установите пакет для работы с протоколом CIFS:

    sudo apt install cifs-utils
  3. Создайте папку для монтирования хранилища:

    sudo mkdir -p /mnt/cifs
  4. Примонтируйте файловое хранилище:

    sudo mount.cifs -o guest //<filestorage_ip_address>/share-<filestorage_uuid> /mnt/cifs

    Укажите:

    • <filestorage_ip_address> — IP-адрес файлового хранилища. Можно посмотреть в панели управления в разделе Облачная платформаФайловое хранилище → страница хранилища → вкладка Настройки → поле IP;
    • <filestorage_uuid> — ID файлового хранилища. Можно посмотреть в панели управления в разделе Облачная платформаФайловое хранилище → строка нужного хранилища → нажмите .