[Документация Yandex Cloud](../../index.md) > [Практические руководства](../index.md) > Прикладные решения > 1С > Создание кластера Linux-серверов «1С:Предприятия» с кластером Managed Service for PostgreSQL

# Создание кластера Linux-серверов «1С:Предприятия» с кластером Managed Service for PostgreSQL


{% note info %}

В [регионе Казахстан](../../overview/concepts/region.md) доступна только [зона доступности](../../overview/concepts/geo-scope.md) `kz1-a`.

{% endnote %}


В Yandex Cloud вы можете создать кластер Yandex Managed Service for PostgreSQL, оптимизированный для работы с системой «1С:Предприятие».

Создаваемая инфраструктура «1С:Предприятие» будет состоять из рабочего сервера 1С, сервера лицензий 1С и [кластера Managed Service for PostgreSQL](../../managed-postgresql/concepts/index.md).  Серверы 1С будут работать под управлением ОС [CentOS 7](https://yandex.cloud/ru-kz/marketplace/products/yc/centos-7) и не будут иметь выхода в интернет. Доступ к кластеру будет осуществляться через шифрованное [соединение с сервером OpenVPN](../routing/openvpn.md).

Для настройки кластера 1С и проверки работоспособности созданной инфраструктуры на вашем локальном компьютере под управлением ОС Windows (вне Yandex Cloud) должен быть установлен клиент «1С:Предприятия» с консолью администрирования 1С.

Создание инфраструктуры «1С:Предприятие», описанной в руководстве, проверялось на платформе 1С версии `8.3.25`.

{% note info %}

Для работы с системой «1С:Предприятие» вам понадобится лицензия. Подробная информация о лицензиях и их установке, а также необходимые дистрибутивы доступны на [сайте «1С:Предприятия»](https://its.1c.ru/).

{% endnote %}

Чтобы настроить кластер серверов «1С:Предприятия»:

1. [Подготовьте облако к работе](#before-you-begin).
1. [Настройте VPN для доступа к облачной инфраструктуре](#setup-vpn). 
1. [Создайте виртуальные машины для серверов «1С:Предприятия»](#create-1c-vms).
1. [Создайте кластер Managed Service for PostgreSQL](#create-pg-cluster).
1. [Настройте Samba-сервер на серверах 1С](#set-up-samba).
1. [Настройте серверы «1С:Предприятия»](#setup-1c-server).
1. [Настройте кластер серверов и информационную базу 1С](#setup-cluster).
1. [Подключитесь к информационной базе](#connect-to-infobase).

Если созданные ресурсы вам больше не нужны, [удалите их](#clear-out).

## Подготовьте облако к работе {#before-you-begin}

Зарегистрируйтесь в Yandex Cloud и создайте [платежный аккаунт](../../billing/concepts/billing-account.md):
1. Перейдите в [консоль управления](https://kz.console.yandex.cloud), затем войдите в Yandex Cloud или зарегистрируйтесь.
1. На странице **[Yandex Cloud Billing](https://kz.console.yandex.cloud/billing)** убедитесь, что у вас подключен платежный аккаунт, и он находится в [статусе](../../billing/concepts/billing-account-statuses.md) `ACTIVE` или `TRIAL_ACTIVE`. Если платежного аккаунта нет, [создайте его](../../billing/quickstart/index.md) и [привяжите](../../billing/operations/pin-cloud.md) к нему облако.

Если у вас есть активный платежный аккаунт, вы можете создать или выбрать [каталог](../../resource-manager/concepts/resources-hierarchy.md#folder), в котором будет работать ваша инфраструктура, на [странице облака](https://kz.console.yandex.cloud/cloud).

[Подробнее об облаках и каталогах](../../resource-manager/concepts/resources-hierarchy.md).


### Необходимые платные ресурсы {#paid-resources}

* Виртуальная машина: использование вычислительных ресурсов, хранилища, публичного IP-адреса и операционной системы ([тарифы Compute Cloud](../../compute/pricing.md)).
* Кластер Managed Service for PostgreSQL: выделенные хостам вычислительные ресурсы, объем хранилища и резервных копий ([тарифы Managed Service for PostgreSQL](../../managed-postgresql/pricing.md)).


## Настройте VPN для доступа к облачной инфраструктуре {#setup-vpn}

Для безопасного доступа к создаваемой в Yandex Cloud инфраструктуре «1С:Предприятия» необходимо настроить [VPN](../../glossary/vpn.md). Для решения этой задачи будет использоваться продукт [OpenVPN Access Server](https://yandex.cloud/ru-kz/marketplace/products/yc/openvpn-access-server) и предоставляемый им клиент для ОС Windows.

### Создайте облачную сеть и подсети {#setup-network}

Чтобы создать [облачную сеть](../../vpc/concepts/network.md) с [подсетями](../../vpc/concepts/network.md#subnet) в трех [зонах доступности](../../overview/concepts/geo-scope.md):

{% list tabs group=instructions %}

- Консоль управления {#console}

  1. В [консоли управления](https://kz.console.yandex.cloud) перейдите в каталог, где требуется создать облачную сеть.
  1. Перейдите в сервис **Virtual Private Cloud**.
  1. В правом верхнем углу нажмите **Создать сеть**.
  1. В поле **Имя** укажите имя сети `my-1c-network`.
  1. Включите опцию **Создать подсети**.
  1. Нажмите **Создать сеть**.

{% endlist %}

### Настройте разрешения сетевого трафика {#network-settings}

[Группы безопасности](../../vpc/concepts/security-groups.md) работают как виртуальный брандмауэр для входящего и исходящего трафика. Смотрите подробнее о [группе безопасности по умолчанию](../../vpc/concepts/security-groups.md#default-security-group)
  
Для корректной работы OpenVPN Access Server и кластера Managed Service for PostgreSQL [добавьте](../../vpc/operations/security-group-add-rule.md) дополнительные правила в группу безопасности по умолчанию облачной сети `my-1c-network`:

Направление<br>трафика | Описание | Диапазон портов | Протокол | Источник | CIDR блоки
--- | --- | --- | --- | --- | ---
Входящий | `VPN Server 443` | `443` | `TCP` | `CIDR` | `0.0.0.0/0`
Входящий | `VPN Server 1194` | `1194` | `UDP` | `CIDR` | `0.0.0.0/0`
Входящий | `Admin Web UI,`</br>`Client Web UI` | `943` | `TCP` | `CIDR` | `0.0.0.0/0`
Входящий | `Managed Service for PostgreSQL` | `6432` | `TCP` | `CIDR` | `0.0.0.0/0`

### Запустите VPN-сервер {#create-vpn-server}

Создайте ВМ, которая будет работать шлюзом для VPN-подключений:

{% list tabs group=instructions %}

- Консоль управления {#console}

  1. [Зарезервируйте](../../vpc/operations/get-static-ip.md) публичный IP-адрес для вашего VPN-сервера.
  1. На странице [каталога](../../resource-manager/concepts/resources-hierarchy.md#folder) в [консоли управления](https://kz.console.yandex.cloud) нажмите кнопку ![plus](../../_assets/console-icons/plus.svg) **Создать ресурс** и выберите `Виртуальная машина`.
  1. В блоке **Образ загрузочного диска** в поле **Поиск продукта** введите `OpenVPN Access Server` и выберите публичный образ [OpenVPN Access Server](https://yandex.cloud/ru-kz/marketplace/products/yc/openvpn-access-server).
  1. В блоке **Расположение** выберите [зону доступности](../../overview/concepts/geo-scope.md), например: `kz1-b`.
  1. В блоке **Диски и файловые хранилища** выберите [тип диска](../../compute/concepts/disk.md#disks_types) `HDD` и задайте размер `20 ГБ`.
  1. В блоке **Вычислительные ресурсы** перейдите на вкладку `Своя конфигурация` и укажите необходимую [платформу](../../compute/concepts/vm-platforms.md), количество vCPU и объем RAM:

      * **Платформа** — `Intel Ice Lake`.
      * **vCPU** — `2`.
      * **Гарантированная доля vCPU** — `100%`.
      * **RAM** — `2 ГБ`.
  
  1. В блоке **Сетевые настройки**:

      * В поле **Подсеть** выберите сеть `my-1c-network` и подсеть, соответствующую выбранной зоне доступности ВМ.
      * В поле **Публичный IP-адрес** выберите `Список` и зарезервированный ранее публичный IP-адрес из списка.

          При настройке VPN-сервера используйте только статический публичный IP-адрес. Динамический IP-адрес может измениться после перезагрузки ВМ, и соединения перестанут работать.

      * Поле **Группы безопасности** оставьте пустым. Создаваемой виртуальной машине будет назначена [группа безопасности по умолчанию](../../vpc/concepts/security-groups.md#default-security-group).

  1. В блоке **Доступ** выберите вариант **SSH-ключ** и укажите данные для доступа на ВМ:

      * В поле **Логин** введите имя пользователя, например: `yc-user`. Не используйте имя `root` или другие имена, зарезервированные ОС. Для выполнения операций, требующих прав суперпользователя, используйте команду `sudo`.
      * В поле **SSH-ключ** выберите SSH-ключ, сохраненный в вашем профиле [пользователя организации](../../organization/concepts/membership.md).
        
        Если в вашем профиле нет сохраненных SSH-ключей или вы хотите добавить новый ключ:
        
        1. Нажмите кнопку **Добавить ключ**.
        1. Задайте имя SSH-ключа.
        1. Выберите вариант:
        
            * `Ввести вручную` — вставьте содержимое открытого [SSH](../../glossary/ssh-keygen.md)-ключа. Пару SSH-ключей необходимо [создать](../../compute/operations/vm-connect/ssh.md#creating-ssh-keys) самостоятельно.
            * `Загрузить из файла` — загрузите открытую часть SSH-ключа. Пару SSH-ключей необходимо создать самостоятельно.
            * `Сгенерировать ключ` — автоматическое создание пары SSH-ключей.
            
              При добавлении сгенерированного SSH-ключа будет создан и загружен архив с парой ключей. В ОС на базе Linux или macOS распакуйте архив в папку `/home/<имя_пользователя>/.ssh`. В ОС Windows распакуйте архив в папку `C:\Users\<имя_пользователя>/.ssh`. Дополнительно вводить открытый ключ в консоли управления не требуется.
        
        1. Нажмите кнопку **Добавить**.
        
        SSH-ключ будет добавлен в ваш профиль пользователя организации. Если в организации [отключена](../../organization/operations/os-login-access.md) возможность добавления пользователями SSH-ключей в свои профили, добавленный открытый SSH-ключ будет сохранен только в профиле пользователя внутри создаваемого ресурса.

  1. В блоке **Общая информация** задайте имя ВМ: `vpn-server`.
  1. Нажмите кнопку **Создать ВМ**.
  1. Появится окно с информацией о типе тарификации: BYOL (Bring Your Own License). Нажмите кнопку **Создать**.

{% endlist %}

### Получите пароль администратора {#get-admin-password}

На сервере OpenVPN заранее создан пользователь `openvpn` с административными правами. Пароль генерируется автоматически при создании [виртуальной машины](../../compute/concepts/vm.md).

Получите пароль в [выводе последовательного порта](../../compute/operations/vm-info/get-serial-port-output.md) или в серийной консоли. Пароль отобразится в строке:

```text
To login please use the "openvpn" account with <пароль> password.
```

Где `<пароль>` — пароль пользователя `openvpn`.

Для первого входа в административную панель используйте логин `openvpn` и полученный пароль.

Если вы не получили пароль после первого [запуска сервера VPN](#create-vpn-server), необходимо заново создать ВМ с [OpenVPN Access Server](https://yandex.cloud/ru-kz/marketplace/products/yc/openvpn-access-server). При перезапусках пароль не отображается.

### Активируйте лицензию {#get-license}

{% note info %}

Если у вас до двух VPN-подключений, используйте продукт бесплатно (активация не требуется).

{% endnote %}

Чтобы активировать лицензию:

1. Создайте учетную запись на [сайте openvpn.net](https://myaccount.openvpn.com/signup).
1. Введите код подтверждения, полученный по электронной почте.
1. В окне **Where would you like to Go?** отметьте опцию **Remember my choice** и выберите продукт **Access server**.
1. В окне **Tell us more** выберите назначение: **Business use** или **Personal Use**.
1. На вкладке **Subscriptions** выберите максимальное количество подключений в поле **How many VPN connections do you need?** и нажмите кнопку **Create**.
1. На экране отобразится ваша подписка: **Subscription 1**.
1. Чтобы скопировать ключ активации, нажмите кнопку **Copy Key** в блоке **Subscription Key**.

Дождитесь перехода ВМ в статус `RUNNING` и введите ключ активации в административной панели по адресу `https://<публичный_IP-адрес_ВМ>/admin/`. 

Публичный IP-адрес ВМ можно узнать в [консоли управления](https://kz.console.yandex.cloud) в поле **Публичный IPv4-адрес** блока **Сеть** на странице ВМ.

### Создайте пользователя OpenVPN {#configure-openvpn}

OpenVPN Access Server предоставляет два веб-интерфейса:

1. **Client Web UI** по адресу `https://<публичный_IP-адрес_ВМ>/`. Интерфейс предназначен для входа обычных пользователей, скачивания клиентских программ и профилей конфигурации.
1. **Admin Web UI** по адресу `https://<публичный_IP-адрес_ВМ>/admin/`. Интерфейс предназначен для настройки сервера.

{% note info %}

По умолчанию на сервер установлен самоподписанный сертификат. Если вам необходимо поменять сертификат, воспользуйтесь [инструкцией](https://openvpn.net/vpn-server-resources/installing-a-valid-ssl-web-certificate-in-access-server/).

{% endnote %}

Чтобы создать пользователя, войдите в административную панель:

1. Откройте в браузере URL вида `https://<публичный_IP-адрес_ВМ>/admin/`.
1. Введите имя пользователя `openvpn` и пароль (смотрите раздел [про получение пароля администратора](#get-admin-password)).
1. Ознакомьтесь с лицензионным соглашением и нажмите кнопку **Agree**. Откроется главный экран административной панели OpenVPN.
1. Разверните вкладку **User management** и выберите пункт **User permissions**.
1. В списке пользователей в поле **New Username** введите имя нового пользователя. Например: `test-user`.
1. В столбце **More Settings** нажмите значок карандаша и в поле **Password** введите пароль нового пользователя.
1. Нажмите кнопку **Save settings**.
1. Нажмите кнопку **Update running server**.

### Подключитесь к VPN {#test-vpn}

В панели пользователя можно загрузить клиента [OpenVPN Connect](https://openvpn.net/vpn-client/) для Windows, Linux, MacOS, Android, iOS.

Поскольку в настоящем руководстве рассматривается настройка клиента «1С:Предприятие» в ОС Windows, скачайте и установите на вашем локальном компьютере клиента OpenVPN для Windows:

1. Скачайте дистрибутив для установки:

    * Откройте в браузере панель пользователя по адресу `https://<публичный_IP-адрес_ВМ>/`.
    * Войдите с помощью логина `test-user` и пароля.
    * Скачайте дистрибутив OpenVPN Connect версии 2 или версии 3, нажав на значок Windows.
1. Установите и запустите OpenVPN Connect.
1. VPN-соединение включится автоматически, если в профиле пользователя разрешен автоматический вход.

В приложение можно импортировать новый профиль конфигурации. Для этого укажите адрес `https://<публичный_IP-адрес_ВМ>/` или выберите файл с профилем.

## Создайте виртуальные машины для серверов «1С:Предприятия» {#create-1c-vms}

Лицензия для «1С:Предприятия» должна быть установлена на отдельном сервере, чтобы изменения конфигурации других серверов системы 1С не затрагивали установленную лицензию. На этом этапе вы создадите две виртуальные машины, одна из которых будет выполнять роль сервера «1С:Предприятия», а вторая — роль сервера лицензирования.

Создайте ВМ для сервера «1С:Предприятия»: 

{% list tabs group=instructions %}

- Консоль управления {#console}

  1. На странице [каталога](../../resource-manager/concepts/resources-hierarchy.md#folder) в [консоли управления](https://kz.console.yandex.cloud) нажмите кнопку ![plus](../../_assets/console-icons/plus.svg) **Создать ресурс** и выберите `Виртуальная машина`.
  1. В блоке **Образ загрузочного диска** в поле **Поиск продукта** введите `CentOS 7` и выберите публичный образ [CentOS 7](https://yandex.cloud/ru-kz/marketplace/products/yc/centos-7).
  1. В блоке **Расположение** выберите [зону доступности](../../overview/concepts/geo-scope.md), в которой расположен ранее созданный VPN-сервер.
  1. В блоке **Вычислительные ресурсы** перейдите на вкладку `Своя конфигурация` и укажите необходимую [платформу](../../compute/concepts/vm-platforms.md), количество vCPU и объем RAM:

      * **Платформа** — `Intel Ice Lake`.
      * **vCPU** — `4`.
      * **Гарантированная доля vCPU** — `100%`.
      * **RAM** — `4 ГБ`.

  1. В блоке **Сетевые настройки**:

      * В поле **Подсеть** выберите сеть `my-1c-network` и подсеть, соответствующую выбранной зоне доступности ВМ.
      * В поле **Публичный IP-адрес** оставьте значение `Автоматически`, чтобы назначить ВМ случайный внешний IP-адрес из пула Yandex Cloud.

          Публичный адрес потребуется виртуальной машине для настройки программного обеспечения. После завершения настройки ПО вы отвяжете публичный IP-адрес от ВМ, а доступ к ней будет осуществляться через сервер OpenVPN.
      * Поле **Группы безопасности**, оставьте пустым. Создаваемой виртуальной машине будет назначена [группа безопасности по умолчанию](../../vpc/concepts/security-groups.md#default-security-group).

  1. В блоке **Доступ** выберите вариант **SSH-ключ** и укажите данные для доступа на ВМ:

      * В поле **Логин** введите имя пользователя, например: `yc-user`. Не используйте имя `root` или другие имена, зарезервированные ОС. Для выполнения операций, требующих прав суперпользователя, используйте команду `sudo`.
      * В поле **SSH-ключ** выберите SSH-ключ, сохраненный в вашем профиле [пользователя организации](../../organization/concepts/membership.md).
        
        Если в вашем профиле нет сохраненных SSH-ключей или вы хотите добавить новый ключ:
        
        1. Нажмите кнопку **Добавить ключ**.
        1. Задайте имя SSH-ключа.
        1. Выберите вариант:
        
            * `Ввести вручную` — вставьте содержимое открытого [SSH](../../glossary/ssh-keygen.md)-ключа. Пару SSH-ключей необходимо [создать](../../compute/operations/vm-connect/ssh.md#creating-ssh-keys) самостоятельно.
            * `Загрузить из файла` — загрузите открытую часть SSH-ключа. Пару SSH-ключей необходимо создать самостоятельно.
            * `Сгенерировать ключ` — автоматическое создание пары SSH-ключей.
            
              При добавлении сгенерированного SSH-ключа будет создан и загружен архив с парой ключей. В ОС на базе Linux или macOS распакуйте архив в папку `/home/<имя_пользователя>/.ssh`. В ОС Windows распакуйте архив в папку `C:\Users\<имя_пользователя>/.ssh`. Дополнительно вводить открытый ключ в консоли управления не требуется.
        
        1. Нажмите кнопку **Добавить**.
        
        SSH-ключ будет добавлен в ваш профиль пользователя организации. Если в организации [отключена](../../organization/operations/os-login-access.md) возможность добавления пользователями SSH-ключей в свои профили, добавленный открытый SSH-ключ будет сохранен только в профиле пользователя внутри создаваемого ресурса.

  1. В блоке **Общая информация** задайте имя ВМ: `server-1c`.
  1. Нажмите кнопку **Создать ВМ**.

{% endlist %}

Аналогичным образом с теми же параметрами создайте ВМ с именем `licensing-server-1c` для сервера лицензирования.

## Создайте кластер Managed Service for PostgreSQL {#create-pg-cluster}

В Yandex Cloud можно создать кластер Managed Service for PostgreSQL с настройками, оптимизированными для работы с платформой «1С:Предприятие». Настройки кластера могут варьироваться в зависимости от требований вашего проекта.

Чтобы создать оптимизированный для работы с 1С кластер Managed Service for PostgreSQL:

{% list tabs group=instructions %}

- Консоль управления {#console}

  1. На странице каталога в [консоли управления](https://kz.console.yandex.cloud) нажмите кнопку ![plus](../../_assets/console-icons/plus.svg) **Создать ресурс** и выберите **Кластер PostgreSQL**.
  1. В блоке **Базовые параметры**:

      * В поле **Имя кластера** введите имя кластера: `1c-pg`.
      * В списке **Версия** выберите `15-1c`.

  1. В блоке **Класс хоста** выберите `s3-c2-m8`. Такой конфигурации будет достаточно для проверки работоспособности решения. Если вы прогнозируете значительную нагрузку на создаваемую базу данных «1С:Предприятия», выберите более производительный класс хоста.
  1. В блоке **Размер хранилища** выберите `network-ssd` и укажите размер `114 ГБ`.
  1. В блоке **База данных** укажите:

      * **Имя БД** — `1c-database`.
      * **Имя пользователя** — `user1`.
      * **Пароль** – пароль, который вы будете использовать для доступа к базе данных.
      * **Локаль сортировки (LC_COLLATE)** — `ru_RU.UTF-8`.
      * **Локаль набора символов (LC_CTYPE)** — `ru_RU.UTF-8`.

  1. В блоке **Сетевые настройки** выберите сеть `my-1c-network`.

      Поле **Группы безопасности**, оставьте пустым. Создаваемому кластеру будет назначена [группа безопасности по умолчанию](../../vpc/concepts/security-groups.md#default-security-group).

  1. В блоке **Хосты** выберите разные зоны доступности для ваших хостов, чтобы обеспечить отказоустойчивость.
  1. Нажмите кнопку **Создать кластер**.

{% endlist %}

Создание кластера БД может занять несколько минут.

## Настройте Samba-сервер на серверах 1С {#set-up-samba}

1. [Подключитесь](../../compute/operations/vm-connect/ssh.md) к ВМ `server-1c` по SSH.

1. Установите Samba, необходимые зависимости и текстовый редактор `nano`:

    ```bash
    sudo yum install nano samba samba-client samba-common
    ```

1. Отключите работу протокола IPv6, чтобы избежать конфликтов в работе сервера.

    * Откройте файл `/etc/sysctl.conf`:

        ```bash
        sudo nano /etc/sysctl.conf
        ```

        Добавьте в файл `/etc/sysctl.conf` следующие строки:

        ```text
        net.ipv6.conf.all.disable_ipv6 = 1
        net.ipv6.conf.default.disable_ipv6 = 1
        ```

    * Откройте файл `/etc/sysconfig/network`:

        ```bash
        sudo nano /etc/sysconfig/network
        ```

        Добавьте в файл `/etc/sysconfig/network` следующие строки:

        ```text
        NETWORKING_IPv6=no
        HOSTNAME=server-1c
        ```

1. Настройте Samba. Для этого откройте файл конфигурации `/etc/samba/smb.conf`:

    ```bash
    sudo nano /etc/samba/smb.conf
    ```

    Приведите файл к следующему виду:

    ```text
    [global]
            workgroup = WORKGROUP
            server string = Samba Server%v
            netbios name = centos
            security = user
            map to guest = bad user
            dns proxy = no
            passdb backend = tdbsam
            printing = cups
            printcap name = cups
            load printers = yes
            cups iptions = raw
            security = user

    [files]
            path = /1c-files
            browsable = yes
            writable = yes
            guest ok = yes
            read only = no
    ```

1. Создайте общий каталог и назначьте на него необходимые права:

    ```bash
    sudo mkdir /1c-files
    sudo chmod -R 777 /1c-files
    ```

1. Отключите SELinux. Для этого откройте файл конфигурации `/etc/sysconfig/selinux`:

    ```bash
    sudo nano /etc/sysconfig/selinux
    ```

    Измените значение параметра `SELINUX`:

    ```text
    SELINUX=disabled
    ```

1. Добавьте службу сервера Samba в список автозагрузки:

    ```bash
    sudo systemctl enable smb.service
    ```

    Результат:

    ```text
    Created symlink from /etc/systemd/system/multi-user.target.wants/smb.service to /usr/lib/systemd/system/smb.service.
    ```

1. Перезапустите службу сервера Samba:

    ```bash
    sudo systemctl restart smb.service
    ```

Аналогичным образом настройте Samba-сервер на ВМ `licensing-server-1c`.

## Настройте серверы «1С:Предприятия» {#setup-1c-server}

1. Скопируйте дистрибутив сервера «1С:Предприятия» с локального компьютера на ВМ `server-1c`:

    ```bash
    scp <имя_файла> <имя_пользователя>@<публичный_IP-адрес_ВМ>:/1c-files
    ```

    Где:
    * `<имя_файла>` — имя бинарного файла с дистрибутивом. Например: `setup-full-8.3.25.1257-x86_64.run`.
    * `<имя_пользователя>` — имя пользователя ВМ. Например: `yc-user`.
    * `<публичный_IP-адрес_ВМ>` — публичный IP-адрес ВМ с сервером 1С.

1. [Подключитесь](../../compute/operations/vm-connect/ssh.md) к ВМ `server-1c` по SSH.

1. Установите сервер «1С:Предприятия» на ВМ:

    ```bash
    cd /1c-files
    sudo ./<имя_файла> --mode unattended --enable-components server,ws,server_admin
    ```

    Где `<имя_файла>` — имя бинарного файла с дистрибутивом. Например: `setup-full-8.3.25.1257-x86_64.run`.

1. После завершения установки удалите дистрибутив, указав имя бинарного файла с дистрибутивом:

    ```bash
    rm <имя_файла>
    ```

1. Запустите службу сервера 1С и добавьте ее в список автозагрузки:

    ```bash
    sudo ln /opt/1cv8/x86_64/8.3.25.1257/srv1cv8-8.3.25.1257@.service /etc/systemd/system
    sudo systemctl start srv1cv8-8.3.25.1257@.services.service
    sudo systemctl enable srv1cv8-8.3.25.1257@.services.service
    ```

    Результат:

    ```text
    Created symlink from /etc/systemd/system/multi-user.target.wants/srv1cv8-8.3.25.1257@.services.service to /etc/systemd/system/srv1cv8-8.3.25.1257@.service.
    ```

    Путь к файлам установки сервера «1С:Предприятие» зависит от версии установленной платформы 1С. В примере приведены команды для запуска службы сервера «1С:Предприятие» версии `8.3.25`.

1. Убедитесь, что служба сервера «1С:Предприятие» запущена:

    ```bash
    systemctl status -l srv1cv8-8.3.25.1257@.services
    ```

    Результат:

    ```bash
    ● srv1cv8-8.3.25.1257@.services.service - 1C:Enterprise Server 8.3 (8.3.25.1257) (.services)
       Loaded: loaded (/etc/systemd/system/srv1cv8-8.3.25.1257@.service; disabled; vendor preset: disabled)
       Active: active (running) since Thu 2024-07-18 09:09:12 UTC; 6min ago
     Main PID: 16656 (ragent)
       CGroup: /system.slice/system-srv1cv8\x2d8.3.25.1257.slice/srv1cv8-8.3.25.1257@.services.service
               ├─16656 /opt/1cv8/x86_64/8.3.25.1257/ragent -d /home/usr1cv8/.1cv8/1C/1cv8 -port 1540 -regport 1541 -range 1560:1591 -seclev 0 -pingPeriod 1000 -pingTimeout 5000
               ├─16670 /opt/1cv8/x86_64/8.3.25.1257/rmngr -port 1541 -host server-1c.ru-central1.internal -range 1560:1591 -d /home/usr1cv8/.1cv8/1C/1cv8/ -clstid 29361c8c-d4b8-47fd-8b53-43d8349f0e94
               └─16769 /opt/1cv8/x86_64/8.3.25.1257/rphost -range 1560:1591 -reghost server-1c.ru-central1.internal -regport 1541 -pid 43049953-184b-453f-985c-604fb96300ae
    ```

Аналогичным образом настройте сервер 1С на ВМ `licensing-server-1c`.

После завершения настройки обоих серверов 1С [отвяжите публичные IP-адреса](../../compute/operations/vm-control/vm-detach-public-ip.md) от виртуальных машин `server-1c` и `licensing-server-1c`. Дальнейший доступ к серверам 1С будет осуществляться через сервер OpenVPN.

## Настройте кластер серверов и информационную базу 1С {#setup-cluster}

Перед началом работы с системой «1С:Предприятие» настройте роли серверов и добавьте в кластер информационную базу:

1. Запустите консоль администрирования 1С на вашем локальном компьютере с ОС Windows и запущенным клиентом OpenVPN.
1. Добавьте в кластер серверов центральный сервер «1С:Предприятия»:
    1. Правой кнопкой мыши нажмите **Central 1C:Enterprise 8.3 servers** и в открывшемся контекстном меню выберите **Создать** → **Центральный сервер 1С:Предприятия 8.3**. В открывшемся окне:
        1. В поле **Имя** введите внутренний [FQDN](../../glossary/fqdn.md) сервера: `server-1c.kz1.internal`.

            Внутренний FQDN ВМ можно узнать в [консоли управления](https://kz.console.yandex.cloud) в поле **Внутренний FQDN** на странице ВМ.

        1. Нажмите **OK**.

        В дереве слева отобразится локальный кластер. 

1. Добавьте сервер лицензирования 1С в кластер серверов:
    1. Раскройте вкладку **Кластеры** → **Local cluster**.
    1. Правой кнопкой мыши нажмите **Рабочие серверы** и в открывшемся контекстном меню выберите **Создать** → **Рабочий сервер**.
    1. В открывшемся окне в поле **Компьютер** укажите `licensing-server-1c.kz1.internal` и нажмите **OK**.

    Этот сервер будет использоваться для раздачи лицензий другим серверам 1С.

1. Добавьте требования назначения функциональности серверу `licensing-server-1c`:
    1. Раскройте вкладку добавленного сервера `licensing-server-1c.kz1.internal`, правой кнопкой мыши нажмите **Требования назначения функциональности** и в открывшемся контекстном меню выберите **Создать** → **Требование назначения функциональности**. В открывшемся окне:
        * В списке **Объект требования** выберите `Любой объект требования`.
        * В списке **Тип требования** выберите `Не назначать`.
        * Остальные параметры оставьте без изменений и нажмите **OK**.

    1. Откройте контекстное меню кластера **Local cluster** и выберите **Применить требования назначения функциональности (полное)**, чтобы применить новое требование назначения к кластеру.
    1. Добавьте еще одно требование назначения функциональности серверу `licensing-server-1c.kz1.internal` со следующими параметрами:
        * В списке **Объект требования** выберите `Сервис лицензирования`.
        * В списке **Тип требования** выберите `Назначать`.
        * Остальные параметры оставьте без изменений и нажмите **OK**.

    1. Откройте контекстное меню кластера **Local cluster** и выберите **Применить требования назначения функциональности (полное)**, чтобы применить новое требование назначения к кластеру.

1. Добавьте требования назначения функциональности серверу `server-1c`:
    1. Раскройте вкладку сервера `server-1c.kz1.internal`, правой кнопкой мыши нажмите **Требования назначения функциональности** и в открывшемся контекстном меню выберите **Создать** → **Требование назначения функциональности**. В открывшемся окне:
        * В списке **Объект требования** выберите `Клиентское соединение с ИБ`.
        * В списке **Тип требования** выберите `Назначать`.
        * Остальные параметры оставьте без изменений и нажмите **OK**.

    1. Откройте контекстное меню кластера **Local cluster** и выберите **Применить требования назначения функциональности (полное)**, чтобы применить новое требование назначения к кластеру.
    1. Добавьте еще одно требование назначения функциональности серверу `server-1c.kz1.internal` со следующими параметрами:
        * В списке **Объект требования** выберите `Сервис лицензирования`.
        * В списке **Тип требования** выберите `Не назначать`.
        * Остальные параметры оставьте без изменений и нажмите **OK**.

    1. Откройте контекстное меню кластера **Local cluster** и выберите **Применить требования назначения функциональности (полное)**, чтобы применить новое требование назначения к кластеру.

1. Правой кнопкой мыши нажмите элемент **Информационные базы** внутри блока элементов **Local cluster** и в открывшемся контекстном меню выберите **Создать** → **Информационная база**. В открывшемся окне укажите:
    * **Имя** — `1c-database`.
    * **Защищенное соединение** — `постоянно`.
    * **Сервер баз данных** — адрес вашего хоста БД и порт. Например, `rc1b-cfazv1db********.mdb.yandexcloud.kz port=6432`.

        Чтобы узнать адрес хоста:

        {% list tabs group=instructions %}

        - Консоль управления {#console}

          * В [консоли управления](https://kz.console.yandex.cloud) перейдите на страницу каталога.
          * Перейдите в сервис **Managed Service for&nbsp;PostgreSQL**.
          * В открывшемся окне выберите созданный ранее кластер `1c-pg`.
          * В меню слева выберите вкладку **Хосты**.
          * В поле **FQDN хоста** подведите курсор к имени хоста (вида `rc1b-cfazv1db********`) и скопируйте полное доменное имя базы данных, нажав появившийся значок ![copy](../../_assets/copy.svg). К имени хоста добавится полное доменное имя, в результате в поле **Сервер баз данных** должно быть указано имя вида `rc1c-cfazv1db********.mdb.yandexcloud.kz port=6432`.

        {% endlist %}

    * **Тип СУБД** — `PostgreSQL`.
    * **База данных** — имя базы данных, `1c-database`.
    * **Пользователь сервера БД** — `user1`.
    * **Пароль пользователя БД** — пароль пользователя, который вы задали при создании кластера.
    * **Разрешить выдачу лицензий сервером 1С:Предприятия** — `Да`.
    * **Язык (Страна)** — `русский (Россия)`.
    * **Создать базу данных в случае ее отсутствия** — отключено.
    * **Установить блокировку регламентных заданий** — отключено.

   Нажмите **ОК**.

## Подключитесь к информационной базе {#connect-to-infobase}

1. Запустите клиент «1С:Предприятия» на вашем локальном компьютере с ОС Windows и запущенным клиентом OpenVPN.
1. Нажмите кнопку **Добавить**.
1. Выберите **Добавление в список существующей информационной базы** и нажмите **Далее**.
1. Введите имя информационной базы, выберите **На сервере 1С:Предприятия** и задайте следующие настройки:
    * **Кластер серверов** — `server-1c.kz1.internal`.
    * **Имя информационной базы** — `1c-database`.

1. Нажмите **Далее**.
1. Нажмите **Готово**.

Информационная база должна появиться в списке баз. После этого вы можете приступить к ее конфигурированию и использованию.

## Удалите созданные ресурсы {#clear-out}

Чтобы перестать платить за развернутую инфраструктуру:
1. [Удалите](../../compute/operations/vm-control/vm-delete.md) ВМ `server-1c`, `licensing-server-1c` и `vpn-server`.
1. [Удалите](../../managed-postgresql/operations/cluster-delete.md) кластер `1c-pg`.
1. [Удалите](../../vpc/operations/address-delete.md) публичный статический IP-адрес.