# Виртуальные серверы

## Выбор образа операционной системы

Для проектов уже подготовлены образы на базе операционной системы UNIX.

| Образ        | OC             | slug                    | Версия   | Минимальный размер системного диска |
|--------------|----------------|-------------------------|----------|-------------------------------------|
| Ubuntu       | Ubuntu         | ubuntu-22-04            | 22.04    | 40 Гб                               |



## Создать сервер

1. Перейдите в консоль управления.
2. Откройте раздел **Облачные вычисления**.
3. Нажмите **Создать сервер**.
4. В блоке **Имя и расположение** укажите имя и расположение виртуального сервера:
   - **Имя сервера**: введите название виртуального сервера:
     - допустимая длина 63 символа с учетом зоны DNS проекта;
   - **Зона доступности**: выберите подходящий [регион ЦОД](../../admin/availability-matrix.md).
   - Укажите количество создаваемых серверов.
5. В блоке **Выбор образа** выберите тип и версию операционной системы.
6. В блоке **Конфигурация** выберите количество ОЗУ и ЦПУ. Наборы ресурсов заранее скомпонованы по оптимальным параметрам.
   ::: tip Информация
   При выборе ресурсов рекомендуется в первую очередь ориентироваться на требуемое количество ОЗУ.
   :::
7. В блоке **Диски** настройте загрузочный диск и, при необходимости, добавьте дополнительные диске: 
   - **Загрузочный диск**: выберите тип хранения и укажите размер загрузочного диска.
   - Рекомендуется создать дополнительный диск для размещения ваших данных: нажмите **Добавьте диск** и настройте дополнительный диск. [Дополнительный диск можно создать](#добавить-диск) позже.
   ::: warning Важно
   К виртуальному серверу можно подключить не более 28 дисков, включая системный.
   :::   
8.  Выберите SSH-ключи, с помощью которых вы можете подключаться к виртуальному серверу по SSH. Если подходящий SSH-ключ отсутствует, то нажмите [**Создать ключ**](../../admin/ssh.md#создать-ssh-ключ). 
9.  В блоке **Настройки сети** выберите:
    - **IPv4-адрес**: выберите способ получения внутреннего IP-адреса для виртуального сервера:
      - выберите **Автоматически**, чтобы получить IP-адрес автоматически;
      - выберите адрес из списка. В списке адресов отображаются [созданные вручную IP-адреса](compute-ip.md#создать-ip-адрес) и [сохраненные IP-адреса](compute-ip.md#сохранить-ip-адрес-в-проекте), которые доступны для переиспользования.
10. В блоке **Размещения** выберите: 
    - **Группа размещения**: выберите правило размещения сервера на физическом хосте. [Группу размещения](compute-affinity.md) создайте заранее.
11. Установите флажок **Расширенные настройки**, чтобы использовать [cloud-init](https://cloudinit.readthedocs.io/en/latest/) для настройки виртуального сервера.
12. Нажмите **Создать сервер**.

Виртуальный сервер появится на странице **Облачные вычисления → Серверы** в статусе `Cоздается`. Выполняется сборка виртуального сервера, назначается [IP-адрес](compute-ip.md) и полное доменное имя (FQDN). После окончания сборки сервер перейдет в статус `Включен`.

## Добавить диск 

Добавление дополнительного диска к виртуальному серверу состоит из двух шагов:

- 1 шаг. Добавить новое устройство.
- 2 шаг. Подключить диск внутри операционной системы.

Новое устройство добавляется в консоли управления: 

1. Перейдите в консоль управления.
4. Откройте **Облачные вычисления → Серверы**.
5. Нажмите на имя сервера.
6. Перейдите на вкладку **Диски**.
7. Нажмите **Добавить диск**.
8. Введите параметры добавляемого диска:
   - **Имя диска**: введите название диска.
   - **Тип**: выберите из списка тип хранения.
   - **Размер диска**: введите размер добавляемого диска в Гб.
9. Нажмите **Создать диск**.

Далее требуется подключить диск в операционной системе. 

## Подключиться к виртуальному серверу

Подключиться к серверу по протоколу SSH может пользователь с ролью **DevOps-инженер**.

Для подключения к виртуальному серверу по SSH выполните команду в терминале:

- по IP-адресу сервера:

```
ssh -l <логин пользователя> -i <путь до приватного ключа> <IP-адрес сервера>
```
- по полному доменному имени сервера (FQDN):

```
ssh -l <логин пользователя> -i <путь до приватного ключа> <FQDN сервера>
```

Пример команды подключения к серверу по IP-адресу:

```
$ ssh -l ivanov -i /home/user/.ssh/id_rsa 10.0.0.1
```