---
title: 'Настроить приватное подключение к inference-сервису через облачный сервер'
sidebar_label: 'Настроить приватное подключение через облачный сервер'
sidebar_position: 10
description: 'Как настроить приватное подключение к inference-сервису через облачный сервер'
---

import CopyIcon from '@selectel/docux/icons/copy';
import TerminalIcon from '@selectel/docux/icons/terminal';
import Tabs from '@theme/Tabs';
import TabItem from '@theme/TabItem';
import {TabItemLabel} from '@selectel/docux/components';
import Formbricks from '@theme/MDXComponents/Formbricks';

# Настроить приватное подключение к inference-сервису через облачный сервер

Вы можете настроить приватное подключение к inference-сервису через облачный сервер.
Это позволит напрямую отправлять запросы к модели из облачного сервера по приватному эндпоинту внутри [приватной подсети](/cloud-servers/cloud-networks/private-networks-and-subnets.mdx).

Для настройки используется inference-сервис в [приватном доступе](/foundation-models-catalog/create/connection-types.mdx#private-connection).
Облачный сервер, из которого вы планируете подключаться, должен быть создан в том же [пуле](/infrastructure/locations/#pool) и той же приватной подсети, что и inference-сервис.

1. [Создайте облачный сервер в приватной подсети inference-сервиса](#create-cloud-server).
2. [Отправьте тестовый запрос к модели](#send-test-request).

### 1. Создать облачный сервер в приватной подсети inference-сервиса \{#create-cloud-server}

1. В [панели управления](https://my.selectel.ru/vpc/default/servers/) в верхнем меню нажмите **Продукты** и выберите **Облачные серверы**.

2. Нажмите **Создать сервер**.

3. Заполните блоки:

   * [Имя и расположение](#name-and-placement);
   * [Источник](#source);
   * [Конфигурация](#configuration);
   * [Диски](#disks);
   * [Интернет](#internet);
   * [Приватная сеть](#private-network);
   * [Безопасность](#security);
   * [Доступ](#access);
   * опционально: [Дополнительные настройки](#additional-settings).

4. Проверьте цену облачного сервера.
   Подробнее в инструкции [Модель оплаты и цены облачного сервера](/cloud-servers/about/payment.mdx).

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

#### Имя и расположение \{#name-and-placement}

1. Введите имя сервера.
   Оно будет установлено как имя хоста в операционной системе.

2. Выберите [локацию](/infrastructure/locations.mdx), в которой будет создан сервер.
   Сервер должен находиться в одном [пуле](/infrastructure/locations/#pool) с inference-сервисом.
   Пул inference-сервиса можно посмотреть в [панели управления](https://my.selectel.ru/ml/default/inference-services/): в верхнем меню нажмите **Продукты** → **Inference-сервисы** → карточка inference-сервиса.

   От локации зависит список доступных конфигураций сервера и стоимость ресурсов.
   После создания сервера изменить локацию нельзя.

#### Источник \{#source}

Вы можете создать сервер:

* из [готового образа](/cloud-servers/images/about-images.mdx#default-images) с предустановленной и настроенной операционной системой;
* [приложения](/cloud-servers/applications/);
* [собственного образа](/cloud-servers/images/about-images.mdx#own-images);
* [сетевого диска](/cloud-servers/volumes/about-network-volumes.mdx);
* или [снапшота](/cloud-servers/volumes/snapshots.mdx).

<Tabs queryString="choose-source">
  <TabItem value="default-image" default>
    <TabItemLabel>
      Готовый образ
    </TabItemLabel>

    1. Откройте вкладку **ОС**.

    2. Выберите образ.
       Готовые образы доступны во всех сегментах пула.

    3. Если вы создаете сервер c GPU, включите тумблер **Автовыбор GPU образа**, чтобы при выборе конфигурации автоматически выбирался оптимизированный образ ОС.

    4. Опционально: если вам нужна другая актуальная или архивная версия ОС, в поле **Версия** выберите нужную версию.
       ОС, которые отмечены как **GPU optimized**, содержат драйверы, необходимые для работы с графическими процессорами.
  </TabItem>

  <TabItem value="application">
    <TabItemLabel>
      Приложение
    </TabItemLabel>

    1. Откройте вкладку **Приложения**.

    2. Выберите приложение.
       Все приложения, кроме ML-приложений, доступны во всех сегментах пула.

    3. Опционально: если вам нужна другая актуальная или архивная версия приложения, в поле **Версия** выберите нужную версию.
  </TabItem>

  <TabItem value="network-volume">
    <TabItemLabel>
      Сетевой диск
    </TabItemLabel>

    1. Откройте вкладку **Диски**.

    2. Выберите диск. Диск должен находиться в одном сегменте пула с сервером.
  </TabItem>

  <TabItem value="own-image">
    <TabItemLabel>
      Собственный образ
    </TabItemLabel>

    1. Откройте вкладку **Образы**.

    2. Выберите образ. Образ должен находиться в одном пуле с сервером.
  </TabItem>

  <TabItem value="snapshot">
    <TabItemLabel>
      Снапшот
    </TabItemLabel>

    1. Откройте вкладку **Снапшоты**.

    2. Выберите снапшот. Снапшот должен находиться в одном сегменте пула с сервером.
  </TabItem>
</Tabs>

#### Конфигурация \{#configuration}

Для всех [линеек](/cloud-servers/create/configurations.mdx#lines), кроме [Shared](/cloud-servers/create/configurations.mdx#shared) и [Dedicated](/cloud-servers/create/configurations.mdx#dedicated), доступны два вида конфигураций сервера:

* фиксированные конфигурации — конфигурации линеек с разными техническими характеристиками, в которых зафиксировано соотношение ресурсов;
* произвольные конфигурации — конфигурации, в которых можно указать любое соотношение ресурсов.

В конфигурациях используются разные [процессоры](/cloud-servers/create/configurations.mdx#available-processors) в зависимости от линейки и сегмента пула.
Вы можете настроить выбранную конфигурацию.
После создания сервера можно будет [изменить конфигурацию](/cloud-servers/manage/change-server-configuration.mdx).

<Tabs queryString="select-configuration">
  <TabItem value="fixed" default>
    <TabItemLabel>
      Фиксированная конфигурация
    </TabItemLabel>

    1. Откройте вкладку с линейкой.

    2. Нажмите **Фиксированная**.

    3. Опционально: вы можете настроить конфигурацию, если создаете сервер в сегменте [мультизонального пула](/infrastructure/locations.mdx#multi-az-pool) ru-6 или сегментах пулов ru-3b, ru-7a и ru-7b:

       3.1. Разверните блок с описанием настроек конфигурации.

       3.2. Опционально: выберите производителя процессора. Выбор производителя доступен не во всех пулах.

       3.3. Опционально: если вы хотите, чтобы за vCPU облачного сервера не закреплялись ядра физического процессора, снимите чекбокс **Выделенные ядра**.
       Подробнее в инструкции [Выделенные ядра](/cloud-servers/about/dedicated-cores.mdx).

       3.4. Опционально: если для сервера с выделенными ядрами вы хотите выключить [Hyper-Threading](/cloud-servers/about/dedicated-cores.mdx#hyper-threading), снимите чекбокс **Hyper-Threading (SMT)**.

       3.5. Опционально: если вы создаете сервер с выделенными ядрами и хотите разместить многопроцессорный сервер на одной NUMA-ноде, отметьте чекбокс **Обязательное размещение на одной NUMA-ноде**.
       Разместить на одной NUMA-ноде можно сервер с 4 vCPU и больше.
       Если ресурсы облачного сервера не получится разместить на одной ноде, он не создаcтся.
       Подробнее в подразделе [Размещение на одной NUMA-ноде](/cloud-servers/about/dedicated-cores.mdx#placing-on-one-numa-node) инструкции [Выделенные ядра](/cloud-servers/about/dedicated-cores.mdx).

    4. Выберите [конфигурацию](/cloud-servers/create/configurations.mdx).

    5. Если в выбранной конфигурации доступны и локальные, и сетевые диски, выберите диск, который будет использоваться в качестве загрузочного:

       * [локальный диск](/cloud-servers/volumes/about-local-disks.mdx) — отметьте чекбокс **Локальный SSD NVMe диск**. Сервер с локальным диском можно создать только из образов и приложений;
       * [сетевой диск](/cloud-servers/volumes/about-network-volumes.mdx) — не отмечайте чекбокс **Локальный SSD NVMe диск**.

       Объем оперативной памяти, который выделяется серверу, может быть меньше указанного в конфигурации — ядро операционной системы резервирует часть оперативной памяти в зависимости от версии ядра и дистрибутива.
       Выделенный объем на сервере можно проверить с помощью команды `sudo dmesg | grep Memory`.
  </TabItem>

  <TabItem value="flex">
    <TabItemLabel>
      Произвольная конфигурация
    </TabItemLabel>

    1. Откройте вкладку с линейкой.

    2. Нажмите **Произвольная**.

    3. Опционально: вы можете настроить конфигурацию, если создаете сервер в сегменте [мультизонального пула](/infrastructure/locations.mdx#multi-az-pool) ru-6 или сегментах пулов ru-3b, ru-7a и ru-7b:

       3.1. Разверните блок с описанием настроек конфигурации.

       3.2. Опционально: выберите производителя процессора. Выбор производителя доступен не во всех пулах.

       3.3. Опционально: если вы хотите, чтобы за vCPU облачного сервера не закреплялись ядра физического процессора, снимите чекбокс **Выделенные ядра**.
       Подробнее в инструкции [Выделенные ядра](/cloud-servers/about/dedicated-cores.mdx).

       3.4. Опционально: если для облачного сервера с выделенными ядрами вы хотите выключить [Hyper-Threading](/cloud-servers/about/dedicated-cores.mdx#hyper-threading), снимите чекбокс **Hyper-Threading (SMT)**.

       3.5. Опционально: если вы создаете облачный сервер с выделенными ядрами и хотите разместить многопроцессорный сервер на одной NUMA-ноде, отметьте чекбокс **Обязательное размещение на одной NUMA-ноде**.
       Разместить на одной NUMA-ноде можно облачный сервер с 4 vCPU и больше.
       Если ресурсы облачного сервера не получится разместить на одной ноде, он не создаcтся.
       Подробнее в подразделе [Размещение на одной NUMA-ноде](/cloud-servers/about/dedicated-cores.mdx#placing-on-one-numa-node) инструкции [Выделенные ядра](/cloud-servers/about/dedicated-cores.mdx).

    4. Укажите количество vCPU.

    5. Укажите размер RAM.

    6. Если нужно добавить к серверу графические процессоры, нажмите **Добавить GPU**, выберите [тип GPU](/cloud-servers/create/gpus.mdx#available-gpus) и укажите количество GPU.
       Выбранная линейка изменится на линейку GPU.
       Если в блоке **Источник** вы выбрали образ без GPU-оптимизации и у вас включен тумблер **Автовыбор GPU образа**, то выбранный образ автоматически сменится на образ с GPU-оптимизацией.

    7. Если в выбранной конфигурации доступны и локальные, и сетевые диски, выберите диск, который будет использоваться в качестве загрузочного:

       * [локальный диск](/cloud-servers/volumes/about-local-disks.mdx) — отметьте чекбокс **Локальный SSD NVMe диск**. Сервер с локальным диском можно создать только из образов и приложений;
       * [сетевой диск](/cloud-servers/volumes/about-network-volumes.mdx) — не отмечайте чекбокс **Локальный SSD NVMe диск**.

       Объем оперативной памяти, который выделяется серверу, может быть меньше указанного в конфигурации — ядро операционной системы резервирует часть оперативной памяти в зависимости от версии ядра и дистрибутива.
       Выделенный объем на сервере можно проверить с помощью команды `sudo dmesg | grep Memory`.
  </TabItem>
</Tabs>

#### Диски \{#disks}

1. Если при настройке конфигурации вы не отметили чекбокс **Локальный SSD NVMe диск**, в качестве загрузочного диска сервера будет использоваться первый указанный сетевой диск. Чтобы настроить его:

   1.1. Выберите [тип сетевого загрузочного диска](/cloud-servers/volumes/about-network-volumes.mdx#network-volume-types).

   1.2. Укажите размер сетевого загрузочного диска в ГБ или ТБ. Учитывайте [лимиты сетевых дисков](/cloud-servers/volumes/about-network-volumes.mdx#network-volume-limits) на максимальный размер.

   1.3. Если вы выбрали тип диска Универсальный v2 или SSD Быстрый v2, укажите общее количество операций чтения и записи в IOPS. После создания диска вы можете [изменить количество IOPS](/cloud-servers/volumes/edit-volume.mdx#update-iops) — уменьшить или увеличить. Количество изменений IOPS не ограничено.

2. Опционально: чтобы добавить дополнительные [сетевые диски](/cloud-servers/volumes/about-network-volumes.mdx) сервера:

   2.1. Нажмите **Добавить**.

   2.2. Выберите [тип сетевого диска](/cloud-servers/volumes/about-network-volumes.mdx#network-volume-types).

   2.3. Укажите размер сетевого диска в ГБ или ТБ. Учитывайте [лимиты сетевых дисков](/cloud-servers/volumes/about-network-volumes.mdx#network-volume-limits) на максимальный размер.

   2.4. Если вы выбрали тип диска Универсальный v2 или SSD Быстрый v2, укажите общее количество операций чтения и записи в IOPS. После создания диска вы можете [изменить количество IOPS](/cloud-servers/volumes/edit-volume.mdx#update-iops) — уменьшить или увеличить. Количество изменений IOPS не ограничено.

   После создания сервера можно будет [отключить от него дополнительные диски или подключить новые](/cloud-servers/volumes/attach-detach-volume.mdx).

#### Интернет \{#internet}

Настройте публичный доступ к серверу.

<Tabs queryString="configure-public-access">
  <TabItem value="public-floating-ip" default>
    <TabItemLabel>
      Публичный плавающий IP-адрес
    </TabItemLabel>

    Облачный сервер будет добавлен в [приватную подсеть](/cloud-servers/cloud-networks/private-networks-and-subnets.mdx) inference-сервиса, которая будет подключена к [облачному роутеру](/cloud-servers/cloud-networks/cloud-routers.mdx) с функцией 1:1 NAT и выходом в интернет.
    Доступ в интернет и из интернета будет осуществляться через облачный роутер.
    Сервер будет доступен из интернета по [публичному плавающему IP-адресу](/cloud-servers/cloud-networks/public-floating-ip-addresses.mdx).

    1. В поле **Подключение из интернета** выберите тип доступа **Публичный плавающий IP-адрес**.

    2. Выберите свободный IP-адрес или создайте новый.
  </TabItem>

  <TabItem value="no-access-from-internet">
    <TabItemLabel>
      Без доступа из интернета
    </TabItemLabel>

    Облачный сервер будет добавлен в [приватную подсеть](/cloud-servers/cloud-networks/private-networks-and-subnets.mdx) inference-сервиса.

    Доступ к серверу можно будет получить по приватной сети или через [консоль](/cloud-servers/manage/connect-to-server.mdx#connect-through-console).

    В поле **Подключение из интернета** выберите тип доступа **Без доступа из интернета**.
  </TabItem>
</Tabs>

#### Приватная сеть \{#private-network}

1. В поле **Подсеть** выберите приватную подсеть inference-сервиса.
   Подсеть inference-сервиса можно посмотреть в [панели управления](https://my.selectel.ru/ml/default/inference-services/): в верхнем меню нажмите **Продукты** → **Inference-сервисы** → страница inference-сервиса → вкладка **Быстрый старт** → блок **Подключение** → строка **Сеть**.

2. В поле **IP-адрес** введите свободный IP-адрес из диапазона подсети inference-сервиса.
   Три IP-адреса в подсети заняты под служебные нужды и не могут быть назначены на другие устройства.
   Чаще всего это первые IP-адреса диапазона подсети, например: `172.16.0.1`, `172.16.0.2`, `172.16.0.3`.
   Если при создании сервера вы получите ошибку о том, что IP-адрес занят, попробуйте следующий IP-адрес по порядку.

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

   3.1.  Если вы выбрали подключение без доступа из интернета и вам не нужен роутер, в поле **Роутер** выберите **Без роутера**;

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

   3.3.  Если вы выбрали подключение к интернету через публичный плавающий IP-адрес, в поле **Роутер** выберите существующий роутер или создайте новый.
   Если выбранный роутер не подключен к интернету, он будет автоматически подключен к интернету после создания сервера.

#### Безопасность \{#security}

Выберите [группы безопасности](/cloud-servers/security-groups/) для фильтрации трафика на портах сервера. Без групп безопасности трафик будет запрещен. Если блок отсутствует, в сети сервера выключена [фильтрация трафика (port security)](/cloud-servers/cloud-networks/about-networks.mdx#traffic-filtering-port-security). С выключенной фильтрацией трафика весь трафик будет разрешен.

#### Доступ \{#access}

1. Разместите на сервере [SSH-ключ для проекта](/cloud-servers/manage/create-and-place-ssh-key.mdx#place-public-ssh-key) для безопасного подключения:

   1.1. Если SSH-ключ для проекта не добавлен в облачную платформу, нажмите **Добавить SSH-ключ**, введите имя ключа, вставьте публичный ключ в формате OpenSSH и нажмите **Добавить**.

   1.2. Если SSH-ключ для проекта добавлен в облачную платформу, в поле **SSH-ключ** выберите существующий ключ.
   SSH-ключ доступен только в том пуле, в котором он размещен.

2. Опционально: в поле **Пароль для «root»**:

   2.1. Скопируйте пароль пользователя `root` — пользователя с неограниченными правами на все действия над системой.

   2.2. Сохраните пароль в безопасном месте и не передавайте в открытом виде.

#### Опционально: дополнительные настройки \{#additional-settings}

1. Чтобы создать [прерываемый сервер](/cloud-servers/about/preemptible-servers/), отметьте чекбокс **Прерываемый сервер**.

2. Если вы планируете создать несколько серверов и хотите повысить отказоустойчивость инфраструктуры, добавьте сервер в [группу размещения](/cloud-servers/placement-groups/about-placement-groups/):

   2.1. Чтобы создать новую группу, в поле **Группа размещения** выберите **Новая группа**, введите имя группы и выберите политику размещения на разных хостах:

   * желательно — soft-anti-affinity. Система постарается разместить серверы на разных хостах. Если при создании сервера не будет подходящего хоста, он будет создан на том же хосте;
   * обязательно — anti-affinity. Серверы в группе обязательно располагаются на разных хостах. Если при создании сервера не будет подходящего хоста, сервер не будет создан.

   2.4. Если группа создана, в поле **Группа размещения** выберите группу размещения.

3. Чтобы добавить дополнительную информацию или фильтровать серверы в списке, добавьте [теги](/cloud-servers/manage/tags.mdx) сервера. Автоматически добавляются теги операционной системы и конфигурации. Чтобы добавить новый тег, в поле **Теги** введите тег.

4. Чтобы добавить скрипт, который выполнится с помощью агента [cloud-init](https://cloud-init.io/) при первом запуске операционной системы, в блоке **Автоматизация** в поле **User data**:

   * откройте вкладку **Текст** и вставьте скрипт текстом;
   * или откройте вкладку **Файл** и загрузите файл со скриптом.

   Примеры скриптов и поддерживаемые форматы можно посмотреть в инструкции [User data](/cloud-servers/manage/user-data.mdx).

### 2. Отправить тестовый запрос к модели \{#send-test-request}

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

   1.1.  В [панели управления](https://my.selectel.ru/vpc/default/servers/) в верхнем меню нажмите **Продукты** и выберите **Облачные серверы**.

   1.2.  В строке сервера нажмите <TerminalIcon />.

   1.3.  Введите имя пользователя (логин).
   Можно посмотреть в поле **Логин**.

   1.4.  Введите пароль.
   Можно посмотреть в поле **Пароль**.

2. Отправьте тестовый запрос к модели через консоль облачного сервера.

   Структура данных запроса зависит от модели, типа API и вида запроса.
   Примеры тестовых запросов к модели можно скопировать в [панели управления](https://my.selectel.ru/ml/default/inference-services/): в верхнем меню нажмите **Продукты** → **Inference-сервисы** → страница inference-сервиса → вкладка **Быстрый старт** → в блоке **Тестовый запрос** выберите тип API, вид запроса и нажмите <CopyIcon />.

   Подробнее про виды запросов и типы API в инструкции [Режимы взаимодействия с inference-сервисом](/foundation-models-catalog/manage/interaction-modes.mdx).

<Formbricks />
