Развёртывание в Azure

Пошаговое руководство по развёртыванию OpenReplay в Azure.

Развёртывание в Azure

Video Tutorial

Посмотрите, как развернуть OpenReplay в вашей инфраструктуре Azure

Если вам не нравится читать, вы можете посмотреть это видеоруководство, в котором показано, как развернуть OpenReplay в Azure

Стек OpenReplay можно установить на одну машину, и Microsoft Azure является идеальным кандидатом для этого. Вот как это сделать.

Запуск виртуальной машины

Section titled Запуск виртуальной машины
  1. Войдите в свой портал
  2. Нажмите «Virtual Machine», если эта опция доступна на главном экране. В противном случае нажмите «Create a Resource» > «Compute» > «Virtual Machine»
  3. На странице «Virtual Machine» нажмите «Add», если вы не были автоматически перенаправлены на страницу создания
  4. Выберите Ubuntu Server 22.04 LTS для «Image»
  5. Выберите характеристики вашей виртуальной машины. Минимальные ресурсы — 2 vCPUs, 8 GB of RAM, 50 GB of storage на архитектуре x86, иначе серверные сервисы OpenReplay просто не запустятся. Минимальных характеристик достаточно для низкого/умеренного объёма. Если вы ожидаете высокий трафик, вам следует масштабироваться, начиная отсюда.
  6. Включите порты HTTP (80), HTTPS (443) и SSH (22) и запишите username
  7. Нажмите «Review + create»

Развёртывание OpenReplay

Section titled Развёртывание OpenReplay
  1. Убедитесь, что ваша виртуальная машина находится в состоянии Running, затем подключитесь к ней:
## From your terminal
SSH_KEY=~/Downloads/openreplay-key.pem ## only if you've previously created an SSH key
chmod 400 $SSH_KEY
INSTANCE_IP=REPLACE_WITH_INSTANCE_PUBLIC_IP
ssh <username>@$INSTANCE_IP ## or ssh -i $SSH_KEY <username>@$INSTANCE_IP if you have a key
  1. Установите OpenReplay, указав домен, на котором он будет работать (например, DOMAIN_NAME=openreplay.mycompany.com):
sudo wget https://raw.githubusercontent.com/openreplay/openreplay/main/scripts/helmcharts/openreplay-cli -O /bin/openreplay 
sudo chmod +x /bin/openreplay
openreplay -i DOMAIN_NAME

OpenReplay работает с конфиденциальными данными пользователей и поэтому требует HTTPS для работы. Это обязательно, иначе трекер просто не начнёт запись. То же самое касается дашборда: без HTTPS вы не сможете воспроизводить пользовательские сессии.

Поэтому вы должны сгенерировать (или предоставить) свой собственный SSL-сертификат.

  1. Сначала перейдите в Azure DNS (или к другому вашему поставщику услуг DNS) и создайте A Record. Используйте домен, который вы ранее указали на этапе установки, и направьте его на виртуальную машину, используя её публичный IP-адрес.

  2. Если вы используете свой собственный сертификат, создайте SSL-секрет с помощью следующей команды: kubectl create secret tls openreplay-ssl -n app --key="private_key_file.pem" --cert="certificate.crt".

Примечание: Если у вас нет сертификата, сгенерируйте сертификат с автоматическим обновлением для вашего поддомена (того, который был указан при установке) с помощью Let’s Encrypt. Просто подключитесь к виртуальной машине OpenReplay, выполните cd /var/lib/openreplay/openreplay/scripts/helmcharts && bash certmanager.sh и следуйте инструкциям.

  1. Если вы хотите включить перенаправление с http на https (рекомендуется), раскомментируйте приведённый ниже блок в разделе ingress-nginx в файле /var/lib/openreplay/vars.yaml:
ingress-nginx: &ingress-nginx
  controller:
    config:
      ssl-redirect: true
      force-ssl-redirect: true

Стоит отметить, что наш ingress-nginx по умолчанию работает на портах 80|443, но при необходимости это можно легко изменить в vars.yaml:

ingress-nginx: &ingress-nginx
  controller:
    service:
      ports:
        http: 80
        https: 443
  1. Наконец, переустановите NGINX OpenReplay:
openreplay -R

Теперь всё готово, OpenReplay должен быть доступен на вашем поддомене. Вы можете создать учётную запись, посетив страницу /signup (т. е. openreplay.mycompany.com/signup).

Примечание: Для дополнительной безопасности вы также можете запускать экземпляр OpenReplay за Azure Load Balancer. Подробнее см. в документации по Azure LB.

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