Yandex Cloud
  • Сервисы
  • Решения
  • Почему Yandex Cloud
  • Сообщество
  • Тарифы
  • Документация
  • Связаться с нами
Подключиться
Language / Region
Проект Яндекса
© 2023 ООО «Яндекс.Облако»
Практические руководства
  • Веб-сервис
    • Все руководства
    • Статический сайт в Object Storage
    • Сайт на LAMP- или LEMP-стеке
    • Отказоустойчивый сайт с балансировкой нагрузки с помощью Network Load Balancer
    • Отказоустойчивый сайт с балансировкой нагрузки с помощью Application Load Balancer
    • Сайт на базе Joomla с БД PostgreSQL
    • Создание сайта на WordPress
    • Сайт на WordPress с БД MySQL
    • Перенос WordPress сайта с хостинга в Yandex Cloud
    • Сайт на базе 1С-Битрикс
    • Организация виртуального хостинга
    • Создание балансировщика с защитой от DDoS
    • Публикация обновлений для игр с помощью Cloud CDN
    • Интеграция L7-балансировщика с Cloud CDN и Object Storage
    • Сине-зеленое и канареечное развертывание версий сервиса
    • Терминирование TLS-соединений
  • Интернет-магазины
    • Все руководства
    • Интернет-магазин на 1С-Битрикс
    • Интернет-магазин на OpenCart
  • Архив данных
    • Все руководства
    • Однонодовый файловый сервер
    • Настройка SFTP-сервера на Centos 7
    • Резервное копирование в Object Storage через Acronis
    • Резервное копирование в Object Storage с помощью CloudBerry Desktop Backup
    • Резервное копирование в Object Storage через Duplicati
    • Резервное копирование в Object Storage с помощью Bacula
    • Резервное копирование в Object Storage с помощью Veritas Backup Exec
    • Распознавание архива изображений в Vision
  • Тестовая среда
    • Все руководства
    • Тестирование приложений с помощью GitLab
    • Создание тестовых ВМ через GitLab CI
    • Высокопроизводительные вычисления на прерываемых ВМ
    • Эмуляция множества IoT-устройств
    • Нагрузочное тестирование gRPC-сервиса
    • Развертывание и нагрузочное тестирование gRPC-сервиса с масштабированием
    • HTTPS-тест с постоянной нагрузкой с помощью Phantom
    • HTTPS-тест со ступенчатой нагрузкой с помощью Pandora
    • Нагрузочное тестирование с нескольких агентов
  • Управление инфраструктурой
    • Все руководства
    • Начало работы с Terraform
    • Загрузка состояний Terraform в Object Storage
    • Начало работы с Packer
    • Сборка образа ВМ с набором инфраструктурных инструментов с помощью Packer
    • Автоматизация сборки образов с помощью Jenkins и Packer
    • Непрерывное развертывание контейнеризованных приложений с помощью GitLab
    • Создание кластера Linux-серверов «1С:Предприятия» с кластером Managed Service for PostgreSQL
    • Миграция в Yandex Cloud с помощью Hystax Acura
    • Защита от сбоев с помощью Hystax Acura
    • Настройка синхронизации часов с помощью NTP
    • Работа с группой ВМ с автомасштабированием
    • Масштабирование группы ВМ по расписанию
    • Автомасштабирование группы ВМ для обработки сообщений из очереди Message Queue
    • Обновление группы ВМ под нагрузкой
    • Передача логов с ВМ в Cloud Logging
    • Резервное копирование ВМ с помощью Hystax Acura Backup
    • Настройка отказоустойчивой архитектуры в Yandex Cloud
    • Создание SAP-программы в Yandex Cloud
    • Настройка локального кеширующего DNS-резолвера
    • Миграция DNS-зон из Яндекс 360 в Cloud DNS
    • Интеграция Cloud DNS и корпоративного сервиса DNS
    • Создание веб-хука резолвера ACME для ответов на DNS01-проверки
    • Запись логов балансировщика в PostgreSQL
    • Создание триггера для бюджетов, который вызывает функцию для остановки ВМ
  • Построение Data Platform
    • Все руководства
    • Миграция БД из стороннего кластера Apache Kafka® в Managed Service for Apache Kafka®
    • Поставка данных из Managed Service for MySQL в Managed Service for Apache Kafka® с помощью Data Transfer
    • Поставка данных из Managed Service for PostgreSQL в Managed Service for Apache Kafka® с помощью Data Transfer
    • Поставка данных из Managed Service for Apache Kafka® в Managed Service for ClickHouse с помощью Data Transfer
    • Перенос данных между кластерами Managed Service for Apache Kafka® с помощью Data Transfer
    • Поставка данных из Managed Service for Apache Kafka® в Managed Service for YDB с помощью Data Transfer
    • Поставка данных из Managed Service for MySQL в Managed Service for Apache Kafka® с помощью Debezium
    • Поставка данных из Managed Service for PostgreSQL в Managed Service for Apache Kafka® с помощью Debezium
    • Настройка Kafka Connect для работы с кластером Managed Service for Apache Kafka®
    • Управление схемами данных в Managed Service for Apache Kafka®
    • Использование Managed Schema Registry с Managed Service for Apache Kafka®
    • Использование Confluent Schema Registry с Managed Service for Apache Kafka®
    • Миграция базы данных из MySQL в ClickHouse с помощью Data Transfer
    • Асинхронная репликация данных из PostgreSQL в ClickHouse
    • Обмен данными между Managed Service for ClickHouse и Data Proc
    • Настройка Managed Service for ClickHouse для Graphite
    • Получение данных из Managed Service for Apache Kafka® в Managed Service for ClickHouse
    • Поставка данных из Managed Service for Apache Kafka® в Managed Service for ClickHouse с помощью Data Transfer
    • Получение данных из RabbitMQ в Managed Service for ClickHouse
    • Сохранение потока данных Data Streams в Managed Service for ClickHouse
    • Использование гибридного хранилища в Managed Service for ClickHouse
    • Шардирование таблиц Managed Service for ClickHouse
    • Настройка Cloud DNS для доступа к кластерам управляемых баз данных из других облачных сетей
    • Настройка Cloud DNS для доступа к кластеру Managed Service for ClickHouse из других облачных сетей
    • Обмен данными между Managed Service for ClickHouse и Data Proc
    • Импорт данных из Managed Service for MySQL в Data Proc с помощью Sqoop
    • Импорт данных из Managed Service for PostgreSQL в Data Proc с помощью Sqoop
    • Использование скриптов инициализации для настройки GeeseFS в Data Proc
    • Миграция данных из стороннего кластера Elasticsearch в Managed Service for Elasticsearch с помощью Reindex API
    • Миграция коллекций из стороннего кластера MongoDB в Managed Service for MongoDB
    • Миграция данных в Managed Service for MongoDB
    • Шардирование коллекций MongoDB
    • Анализ производительности и оптимизация MongoDB
    • Миграция БД из стороннего кластера MySQL в кластер Managed Service for MySQL
    • Анализ производительности и оптимизация Managed Service for MySQL
    • Синхронизация данных из стороннего кластера MySQL в Managed Service for MySQL с помощью Data Transfer
    • Миграция БД из Managed Service for MySQL в сторонний кластер MySQL
    • Миграция БД из Managed Service for MySQL в Object Storage с помощью Data Transfer
    • Импорт данных из Managed Service for MySQL в Data Proc с помощью Sqoop
    • Поставка данных из Managed Service for MySQL в Managed Service for Apache Kafka® с помощью Data Transfer
    • Поставка данных из Managed Service for MySQL в Managed Service for Apache Kafka® с помощью Debezium
    • Миграция БД из Managed Service for MySQL в Managed Service for YDB с помощью Data Transfer
    • Создание кластера PostgreSQL для «1С:Предприятия»
    • Анализ производительности и оптимизация Managed Service for PostgreSQL
    • Миграция БД из Managed Service for PostgreSQL
    • Миграция БД из стороннего кластера PostgreSQL в Managed Service for PostgreSQL
    • Асинхронная репликация данных из PostgreSQL в ClickHouse
    • Поставка данных из Managed Service for PostgreSQL в Managed Service for Apache Kafka® с помощью Data Transfer
    • Поставка данных из Managed Service for PostgreSQL в Managed Service for Apache Kafka® с помощью Debezium
    • Импорт данных из Managed Service for PostgreSQL в Data Proc с помощью Sqoop
    • Поставка данных из Managed Service for PostgreSQL в Managed Service for YDB с помощью Data Transfer
    • Миграция БД из Managed Service for PostgreSQL в Object Storage
    • Миграция БД из Greenplum® в ClickHouse
    • Миграция БД из Greenplum® в PostgreSQL
    • Миграция БД из стороннего кластера Redis в Managed Service for Redis
    • Использование кластера Managed Service for Redis в качестве хранилища сессий PHP
  • Продукты Microsoft в Yandex Cloud
    • Все руководства
    • Развертывание Active Directory
    • Развертывание Microsoft Exchange
    • Развертывание Remote Desktop Services
    • Развертывание группы доступности Always On с внутренним сетевым балансировщиком
    • Развертывание Remote Desktop Gateway
  • Сетевая инфраструктура
    • Все руководства
    • Архитектура и защита базового интернет-сервиса
    • Настройки DHCP для работы с корпоративным DNS-сервером
    • Маршрутизация с помощью NAT-инстанса
    • Создание туннеля IPSec VPN
    • Установка виртуального роутера Cisco CSR 1000v
    • Установка виртуального роутера Mikrotik CHR
    • Соединение с облачной сетью при помощи OpenVPN
    • Создание и настройка шлюза UserGate в режиме прокси-сервера
    • Создание и настройка шлюза UserGate в режиме межсетевого экрана
    • Настройка сети для Data Proc
  • Визуализация и анализ данных
    • Все руководства
    • Визуализация данных из файла
    • Создание и публикация диаграммы с картой Москвы из CSV-файла
    • Анализ продаж сети магазинов из БД ClickHouse
    • Анализ открытых данных ДТП на дорогах России
    • Анализ продаж и локаций пиццерий на данных из БД ClickHouse и Cloud Marketplace
    • Веб-аналитика с подключением к Яндекс Метрике
    • Веб-аналитика с расчетом воронок и когорт на данных Яндекс Метрики
    • Аналитика мобильного приложения на данных AppMetrica
    • Анализ статистики подкастов Яндекс Музыки (для авторов подкастов)
    • Визуализация данных с помощью QL-чарта
    • Анализ customer journey мобильного приложения на данных AppMetrica
    • Анализ логов Object Storage при помощи DataLens
  • Интернет вещей
    • Руководства по работе с интернетом вещей
    • Мониторинг состояния географически распределенных устройств
    • Мониторинг показаний датчиков и уведомления о событиях
  • Бессерверные технологии
    • Сокращатель ссылок
    • Ввод данных в системы хранения
    • Хранение журналов работы приложения
    • Развертывание веб-приложения с использованием Java Servlet API
    • Разработка Slack-бота
    • Разработка Telegram-бота
    • Разработка пользовательской интеграции в API Gateway
    • Разработка CRUD API для сервиса фильмов
    • Разработка навыка Алисы и сайта с авторизацией
  1. Веб-сервис
  2. Сайт на базе 1С-Битрикс

Веб-сайт на базе 1С-Битрикс

Статья создана
Yandex Cloud
  • Подготовьте облако к работе
    • Необходимые платные ресурсы
  • Создайте виртуальную машину в облаке
  • Создайте кластер баз данных MySQL
  • Настройте сервер для работы с 1C-Битрикс
  • Настройте 1С-Битрикс
  • Как удалить созданные ресурсы
  • Как создать инфраструктуру с помощью Terraform

1С-Битрикс: Управление сайтом — это система управления веб-проектами от компании 1С-Битрикс. С его помощью вы можете достаточно просто управлять структурой и содержимым вашего веб-сайта, не обладая специальными знаниями программирования и верстки. Техническую часть работы за вас выполнит «1С-Битрикс: Управление сайтом».

В этой инструкции вы развернете и настроите веб-сайт, используя шаблон информационного портала на платформе 1С-Битрикс. В процессе настройки вы создадите виртуальную машину в инфраструктуре Yandex Cloud, на которой развернете образ платформы 1С-Битрикс и требуемые для нее сервисы. В качестве базы данных вами будет развернут кластер управляемой базы данных MySQL с возможностью обеспечения его отказоустойчивости.

Используемые ресурсы для правильной работы 1С-Битрикс:

  • ВМ на базе Ubuntu 20.04 LTS с доступом во внешнюю сеть, на которой будет установлен 1С-Битрикс.
  • Кластер MySQL, являющийся базой данных для веб-сайта 1С-Битрикс.

Чтобы развернуть и настроить 1С-Битрикс:

  1. Подготовьте облако к работе.
  2. Создайте ВМ в облаке.
  3. Создайте кластер баз данных MySQL.
  4. Настройте сервер для работы с 1C-Битрикс.
  5. Настройте 1С-Битрикс.

Если сайт вам больше не нужен, удалите все используемые им ресурсы.

Также инфраструктуру для веб-сайта на Битрикс можно развернуть через Terraform с помощью готового файла конфигурации.

Подготовьте облако к работе

Перед работой нужно зарегистрироваться в Yandex Cloud и создать платежный аккаунт:

  1. Перейдите в консоль управления, затем войдите в Yandex Cloud или зарегистрируйтесь, если вы еще не зарегистрированы.
  2. На странице биллинга убедитесь, что у вас подключен платежный аккаунт, и он находится в статусе ACTIVE или TRIAL_ACTIVE. Если платежного аккаунта нет, создайте его.

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

Подробнее об облаках и каталогах.

Необходимые платные ресурсы

В стоимость поддержки сервера для 1С-Битрикс и базы данных входит:

  • плата за диски Yandex Compute Cloud и постоянно запущенную ВМ (см. тарифы Yandex Compute Cloud);
  • плата за использование динамического или статического внешнего IP-адреса (см. тарифы Yandex Virtual Private Cloud);
  • плата за использование управляемой базы данных (см. тарифы Managed Service for MySQL).

Для текущего сценария используется пробная версия 1С-Битрикс с ознакомительным периодом в 30 дней. Стоимость электронных версий продукта вы можете уточнить на официальном ресурсе «1С-Битрикс».

Создайте виртуальную машину в облаке

Чтобы создать ВМ:

Консоль управления
Terraform
  1. В консоли управления выберите каталог, в котором будет создана виртуальная машина.

  2. В списке сервисов выберите Compute Cloud.

  3. Нажмите кнопку Создать ВМ.

  4. В поле Имя введите имя ВМ, например bitrixwebsite.

  5. Зону доступности оставьте выбранной по умолчанию.

  6. В блоке Cloud Marketplace выберите образ операционной системы Ubuntu 20.04 lts.

  7. В блоке Диски выберите жесткий диск SSD размером 20 ГБ.

  8. В блоке Вычислительные ресурсы:

    • Выберите платформу ВМ.
    • Для корректной работы системы 1С-Битрикс укажите конфигурацию:
      • Платформа - Intel Ice Lake.
      • Гарантированная доля vCPU — 20%.
      • vCPU — 2.
      • RAM — 4 ГБ.
  9. В блоке Сетевые настройки:

    • Выберите Сеть и Подсеть, к которым нужно подключить ВМ. Если нужной сети или подсети еще нет, вы можете создать их прямо на странице создания ВМ.
    • В поле Публичный адрес оставьте значение Автоматически, чтобы назначить ВМ случайный внешний IP-адрес из пула Yandex Cloud, или выберите статический адрес из списка, если вы зарезервировали его заранее.
  10. В блоке Доступ укажите данные для доступа к ВМ:

    • В поле Логин введите предпочтительное имя пользователя, который будет создан на ВМ, например ubuntu.
    • В поле SSH-ключ скопируйте ваш открытый SSH-ключ. Пару ключей для подключения по SSH необходимо создать самостоятельно.
  11. Нажмите кнопку Создать ВМ.

В процессе работы вам может потребоваться сохранять снимки диска ВМ. Они содержат копию файловой системы ВМ на момент создания снимка.

Вы можете использовать снимки для различных целей, например:

  • перенос данных с одного диска на другой — например, на диск в другой зоне доступности;
  • создание резервной копии диска перед операциями, которые могут повлечь повреждение данных;
  • версионирование диска путем регулярного создания снимков диска.

См. раздел Как создать инфраструктуру с помощью Terraform.

Создайте кластер баз данных MySQL

Чтобы создать кластер баз данных MySQL:

Консоль управления
Terraform
  1. На странице каталога в консоли управления выберите сервис Managed Service for MySQL.

  2. Нажмите кнопку Создать ресурс и выберите пункт Кластер MySQL.

  3. В поле Имя введите имя кластера, например BitrixMySQL.

  4. В блоке Класс хоста выберите s2.micro. Данных характеристик хватит для работы системы 1С-Битрикс.

  5. В блоке Размер хранилища выберите тип хранилища — network-ssd размером 10 ГБ.

  6. В блоке База данных укажите:

    • Имя БД. В этой инструкции оставьте значение по умолчанию db1.
    • Имя пользователя, которое является логином для подключения к базе данных. В этой инструкции оставьте значение по умолчанию user1.
    • Пароль, будет использоваться для доступа системой 1С-Битрикс к базе данных MySQL, например p@s$woRd!.
  7. В блоке Хосты, при необходимости, поменяйте Зону доступности, в которой должна находиться база данных. Для этого нажмите значок в строке с деталями о хосте. В открывшемся окне выберите нужную зону доступности и нажмите кнопку Сохранить.

    Рекомендуется выбрать ту же зону доступности, которую вы выбрали при создании ВМ. Это позволит уменьшить задержку (latency) между ВМ и базой данных.

    Шаг 3

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

  9. Остальные поля оставьте без изменений.

  10. Нажмите на кнопку Создать кластер.

Создание кластера БД может занять несколько минут. Проверить доступность созданного кластера вы можете в консоли управления Yandex Cloud, выбрав сервис Managed Service for MySQL. На вкладке Кластеры статус кластера должен быть Running, состояние Alive.

См. раздел Как создать инфраструктуру с помощью Terraform.

Настройте сервер для работы с 1C-Битрикс

Для настройки сервера для работы с 1С-Битрикс выполните следующие шаги:

  1. Войдите на созданную ВМ с помощью SSH.

    ssh ubuntu@<публичный-IP-адрес-ВМ>
    

    Где ubuntu — имя пользователя в поле Логин, которое вы указывали при создании ВМ.

    Чтобы узнать публичный IP-адрес вашей ВМ на странице каталога в консоли управления:

    1. Выберите блок Compute Cloud.
    2. Нажмите на имя вашей ВМ (в данном примере — bitrixwebsite).
    3. Откроется окно с общей информацией о вашей ВМ. Публичный IP-адрес вы можете найти в блоке Сеть, в поле Публичный IPv4.
  2. Установите необходимое программное обеспечение:

    sudo apt-get update
    sudo apt-get install -y apache2 libapache2-mod-php php-gd php-mbstring php-mysql
    
  3. Перейдите в рабочий каталог проекта и скачайте дистрибутив 1С-Битрикс: Управление сайтом:

    cd /var/www/html/
    sudo wget https://www.1c-bitrix.ru/download/standard_encode.tar.gz
    
  4. Распакуйте полученный архив и после этого удалите ненужные файлы:

    sudo tar -zxf standard_encode.tar.gz
    sudo rm -f index.html standard_encode.tar.gz
    
  5. Назначьте пользователя www-data владельцем рабочего каталога проекта:

    sudo chown -R www-data:www-data /var/www/html
    

    Проверьте права и владельцев рабочего каталога:

    ls -l
    

    Результат:

    total 76
    drwxrwxr-x 6 www-data www-data  4096 May 15 13:50 bitrix
    -rwxrwxr-x 1 www-data www-data  1378 May 15 13:50 index.php
    -rwxrwxr-x 1 www-data www-data   150 Mar 11  2013 install.config
    -rwxrwxr-x 1 www-data www-data 30741 Apr 10 14:36 license.html
    -rwxrwxr-x 1 www-data www-data   113 Nov 20  2012 license.php
    -rwxrwxr-x 1 www-data www-data 14054 Feb  6  2017 readme.html
    -rwxrwxr-x 1 www-data www-data   112 Mar 27  2013 readme.php
    drwxrwxr-x 2 www-data www-data  4096 May 15 13:50 upload
    -rwxrwxr-x 1 www-data www-data   691 Oct 27  2009 web.config
    
  6. Для корректной работы 1С настройте параметры PHP. Для этого воспользуйтесь встроенным редактором nano и отредактируйте следующие переменные в файле конфигурации php.ini:

    sudo nano /etc/php/7.4/apache2/php.ini
    
    Было Стало
    short_open_tag = Off short_open_tag = On
    memory_limit = 128M memory_limit = 256M
    ;date.timezone = date.timezone = Europe/Moscow
    ;opcache.revalidate_freq =2 opcache.revalidate_freq =0
    ;session.save_path = "/var/lib/php/sessions" session.save_path = "/var/lib/php/sessions"

    Совет

    Чтобы найти нужный параметр в редакторе nano нажмите сочетание клавиш Ctrl + W. Найдите требуемый параметр из таблицы выше, далее сохраните изменения при помощи сочетания клавиш Ctrl + O. Выход из редактора Ctrl + X.

  7. Настройте веб-сервер Apache. Для этого отредактируйте файл конфигурации /etc/apache2/sites-enabled/000-default.conf.

    1. Откройте файл в текстовом редакторе:

      sudo nano /etc/apache2/sites-enabled/000-default.conf
      
    2. Добавьте после строки DocumentRoot /var/www/html следующий блок:

      <Directory /var/www/html>
      Options Indexes FollowSymLinks
      AllowOverride All
      Require all granted
      </Directory>
      
    3. Перезапустите веб-сервер, чтобы все измененные настройки применились.

      sudo service apache2 restart
      

После выполнения этих команд серверная часть будет сконфигурирована для корректной работы 1С-Битрикс.

Настройте 1С-Битрикс

Установите и настройте 1С-Битрикс:

  1. Откройте веб-интерфейс 1С-Битрикс: Управление сайтом: перейдите по адресу http://<публичный-IP-адрес-ВМ>/. Должна открыться страница с приглашением установить 1С-Битрикс.

  2. Нажмите кнопку Далее.

    Шаг 1

  3. Ознакомьтесь с лицензионным соглашением и выберите Я принимаю лицензионное соглашение. Затем нажмите кнопку Далее.

    Шаг 2

  4. Регистрация необязательна, поэтому уберите соответствующую галочку, но оставьте Установить в кодировке UTF-8 и нажмите кнопку Далее.

    Шаг 3

  5. Система проверит, верно ли сконфигурирован сервер. Просмотрите все параметры на данной странице и нажмите кнопку Далее.

    Шаг 4

  6. Укажите параметры созданной базы данных:

    1. В поле Сервер укажите полное доменное имя созданной вами базы данных. Чтобы его узнать:
      1. В консоли управления перейдите в новой вкладке браузера на страницу каталога.
      2. Выберите раздел Managed Service for MySQL.
      3. В таблице выберите созданную вами базу данных.
      4. В меню слева выберите вкладку Хосты.
      5. Подведите курсор к Имени хоста (вида rc1c-cfazv1dbzv02u4qk) и скопируйте полное доменное имя базы данных, нажав появившийся значок . К имени хоста добавится полное доменное имя, в результате в поле Сервер должно быть указано имя вида rc1c-cfazv1dbzv02u4qk.mdb.yandexcloud.net.
    2. В полях Имя пользователя и Пароль укажите данные, с которыми вы создавали базу данных в разделе Создайте кластер баз данных MySQL.
    3. В поле Имя базы данных укажите имя созданной базы данных (db1).
    4. Нажмите кнопку Далее.

    Шаг 6

  7. Дождитесь инициализации базы данных MySQL.

    Шаг 7

  8. Создайте аккаунт администратора, который сможет вносить изменения в вашу систему. Заполните все поля и нажмите кнопку Далее.

    Шаг 8

  9. Выберите шаблон Информационный портал и нажмите кнопку Далее.

    Шаг 9

  10. Подтвердите выбор единственного шаблона оформления, нажав кнопку Далее.

    Шаг 10

  11. Выберите цветовое оформление и нажмите кнопку Далее.

    Шаг 11

  12. Заполните все поля в соответствии с требованиями к веб-сайту и нажмите кнопку Установить. Начнется установка и настройка всех компонентов системы. Дождитесь ее окончания.

    Шаг 12

  13. Через некоторое время появится страница, уведомляющая о том, что система установлена и настроена. Для начала работы с веб-сайтом нажмите кнопку Перейти на сайт.

    Шаг 13

  14. Вы попали в веб-интерфейс полностью готовой для дальнейшей эксплуатации системы и находитесь в режиме редактирования содержимого.

    Шаг 14

  15. Чтобы увидеть главную страницу сайта глазами пользователя, нажмите Выйти из панели администрирования вашим сайтом, в правом верхнем углу страницы, затем перейдите по адресу http://<публичный-IP-адрес-ВМ>/. Чтобы вернуться обратно в режим редактирования, авторизуйтесь на сайте с теми учетными данными, которые вы указали для администратора 1С-Битрикс.

    Шаг 15

Как удалить созданные ресурсы

Чтобы перестать платить за развернутый сервер:

  1. Удалите виртуальную машину bitrixwebsite.

    Если вы зарезервировали статический публичный IP-адрес специально для этой ВМ:

    1. Выберите сервис VPC в вашем каталоге.
    2. Перейдите на вкладку IP-адреса.
    3. Найдите нужный адрес, нажмите значок и выберите пункт Удалить.
  2. Удалите кластер баз данных BitrixMySQL.

Как создать инфраструктуру с помощью Terraform

Terraform позволяет быстро создать облачную инфраструктуру в Yandex Cloud и управлять ею с помощью файлов конфигураций. В файлах конфигураций хранится описание инфраструктуры на языке HCL (HashiCorp Configuration Language). Terraform и его провайдеры распространяются под лицензией Mozilla Public License.

Подробную информацию о ресурсах провайдера смотрите в документации на сайте Terraform или в зеркале.

При изменении файлов конфигураций Terraform автоматически определяет, какая часть вашей конфигурации уже развернута, что следует добавить или удалить.

Чтобы разместить веб-сайт на Битрикс с помощью Terraform:

  1. Установите Terraform, получите данные для аутентификации и укажите источник для установки провайдера Yandex Cloud (раздел Настройте провайдер, шаг 1).

  2. Подготовьте файлы с описанием инфраструктуры:

    Готовый архив
    Создание вручную
    1. Создайте папку для файлов.
    2. Скачайте архив (1 КБ).
    3. Разархивируйте архив в папку. В результате в ней должны появиться конфигурационный файл bitrix.tf.
    1. Создайте папку для файлов.

    2. Создайте в папке конфигурационный файл bitrix.tf:

      bitrix.tf
      terraform {
        required_providers {
          yandex = {
            source  = "yandex-cloud/yandex"
            version = ">= 0.47.0"
          }
        }
      }
      
      provider "yandex" {
        zone = "ru-central1-a"
      }
      
      resource "yandex_compute_instance" "vm-bitrix" {
        name        = "bitrixwebsite"
        platform_id = "standard-v3"
        zone        = "ru-central1-a"
      
        resources {
          core_fraction = 20
          cores         = 2
          memory        = 4
        }
      
        boot_disk {
          initialize_params {
            image_id = "fd8kdq6d0p8sij7h5qe3"
            type     = "network-ssd"
            size     = "20"
          }
        }
      
        network_interface {
          subnet_id          = yandex_vpc_subnet.subnet-1.id
          security_group_ids = ["${yandex_vpc_security_group.sg-1.id}"]
          nat                = true
        }
      
        metadata = {
          ssh-keys = "<имя_пользователя>:<содержимое_SSH-ключа>"
        }
      }
      
      resource "yandex_mdb_mysql_cluster" "bitrix-cluster" {
        name               = "BitrixMySQL"
        environment        = "PRESTABLE"
        network_id         = yandex_vpc_network.network-1.id
        version            = "8.0"
        security_group_ids = ["${yandex_vpc_security_group.sg-1.id}"]
      
        resources {
          resource_preset_id = "s2.micro"
          disk_type_id       = "network-ssd"
          disk_size          = "10"
        }
      
        host {
          zone             = "ru-central1-a"
          subnet_id        = yandex_vpc_subnet.subnet-1.id
          assign_public_ip = false
        }
      
        host {
          zone             = "ru-central1-b"
          subnet_id        = yandex_vpc_subnet.subnet-2.id
          assign_public_ip = false
        }
      }
      
      resource "yandex_mdb_mysql_database" "bitrix-db" {
        cluster_id = yandex_mdb_mysql_cluster.bitrix-cluster.id
        name       = "db1"
      }
      
      resource "yandex_mdb_mysql_user" "bitrix-user" {
        cluster_id = yandex_mdb_mysql_cluster.bitrix-cluster.id
        name       = "user1"
        password   = "p@s$woRd!"
        permission {
          database_name = yandex_mdb_mysql_database.bitrix-db.name
          roles         = ["ALL"]
        }
      }
      
      resource "yandex_vpc_security_group" "sg-1" {
        name        = "wordpress"
        description = "Description for security group"
        network_id  = yandex_vpc_network.network-1.id
      
        ingress {
          protocol       = "TCP"
          description    = "ext-http"
          v4_cidr_blocks = ["0.0.0.0/0"]
          port           = 80
        }
      
        ingress {
          protocol       = "TCP"
          description    = "ext-ssh"
          v4_cidr_blocks = ["0.0.0.0/0"]
          port           = 22
        }
      
        ingress {
          protocol       = "TCP"
          description    = "ext-https"
          v4_cidr_blocks = ["0.0.0.0/0"]
          port           = 443
        }
      
        ingress {
          protocol       = "TCP"
          description    = "ext-msql"
          v4_cidr_blocks = ["0.0.0.0/0"]
          port           = 3306
        }
      
        egress {
          protocol       = "ANY"
          description    = "any"
          v4_cidr_blocks = ["0.0.0.0/0"]
        }
      }
      
      resource "yandex_vpc_network" "network-1" {
        name = "network1"
      }
      
      resource "yandex_vpc_subnet" "subnet-1" {
        name           = "subnet1"
        zone           = "ru-central1-a"
        network_id     = yandex_vpc_network.network-1.id
        v4_cidr_blocks = ["192.168.1.0/24"]
      }
      
      resource "yandex_vpc_subnet" "subnet-2" {
        name           = "subnet2"
        zone           = "ru-central1-b"
        network_id     = yandex_vpc_network.network-1.id
        v4_cidr_blocks = ["192.168.2.0/24"]
      }
      
      resource "yandex_vpc_subnet" "subnet-3" {
        name           = "subnet3"
        zone           = "ru-central1-c"
        network_id     = yandex_vpc_network.network-1.id
        v4_cidr_blocks = ["192.168.3.0/24"]
      }
      

    Более подробную информацию о параметрах используемых ресурсов в Terraform см. в документации провайдера:

    • yandex_compute_instance
    • yandex_mdb_mysql_cluster
    • yandex_mdb_mysql_database
    • yandex_mdb_mysql_user
    • yandex_vpc_security_group
    • yandex_vpc_network
    • yandex_vpc_subnet
  3. В блоке metadata укажите имя пользователя и содержимое SSH-ключа. Подробнее см. в разделе Метаданные виртуальной машины.

  4. Создайте ресурсы:

    1. В терминале перейдите в папку, где вы отредактировали конфигурационный файл.

    2. Проверьте корректность конфигурационного файла с помощью команды:

      terraform validate
      

      Если конфигурация является корректной, появится сообщение:

      Success! The configuration is valid.
      
    3. Выполните команду:

      terraform plan
      

      В терминале будет выведен список ресурсов с параметрами. На этом этапе изменения не будут внесены. Если в конфигурации есть ошибки, Terraform на них укажет.

    4. Примените изменения конфигурации:

      terraform apply
      
    5. Подтвердите изменения: введите в терминале слово yes и нажмите Enter.

  5. Настройте сервер для работы с 1C-Битрикс.

  6. Настройте 1С-Битрикс.

Была ли статья полезна?

Language / Region
Проект Яндекса
© 2023 ООО «Яндекс.Облако»
В этой статье:
  • Подготовьте облако к работе
  • Необходимые платные ресурсы
  • Создайте виртуальную машину в облаке
  • Создайте кластер баз данных MySQL
  • Настройте сервер для работы с 1C-Битрикс
  • Настройте 1С-Битрикс
  • Как удалить созданные ресурсы
  • Как создать инфраструктуру с помощью Terraform