Развёртывание на Digital Ocean
Стек OpenReplay можно установить на одной машине (droplet), и Digital Ocean является идеальным кандидатом для этого. Вот как это сделать.
Создание droplet
Section titled Создание droplet- Создайте новый проект (если вы ещё этого не сделали), затем перейдите в него и нажмите ‘Create’ droplet
- Выберите образ Ubuntu Server 22.04 LTS
- Выберите ‘Shared CPU’ и план
Regular Intel | 4 CPUs | 8GB(архитектура x86). Это минимальные характеристики, иначе серверные службы OpenReplay просто не запустятся. Их достаточно для умеренного объёма, но если вы ожидаете высокий трафик, вам следует масштабироваться выше этого уровня. - Нажмите ‘New SSH key’ в разделе ‘Authentication’ и следуйте инструкциям для создания ключа
- Дайте имя вашей машине, затем нажмите ‘Create droplet’
Развёртывание OpenReplay
Section titled Развёртывание OpenReplay- Убедитесь, что ваш droplet находится в состоянии
active, затем подключитесь к нему:
## From your terminal
SSH_KEY=~/Downloads/openreplay-key.pem ## wherever you've saved the SSH key
INSTANCE_IP=REPLACE_WITH_DROPLET_PUBLIC_IP
chmod 400 $SSH_KEY
ssh -i $SSH_KEY root@$INSTANCE_IP
- Установите 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
Настройка TLS/SSL
Section titled Настройка TLS/SSLOpenReplay работает с конфиденциальными данными пользователей и поэтому требует HTTPS для работы. Это обязательно, иначе трекер просто не начнёт запись. То же самое касается панели управления: без HTTPS вы не сможете воспроизводить пользовательские сессии.
Поэтому вы должны сгенерировать (или предоставить) собственный SSL-сертификат.
-
Сначала перейдите в ‘Manage’ > ‘Networking’ > ‘Domains’ (или к вашему другому поставщику услуг DNS) и создайте
A Record. Используйте домен, который вы указали ранее на этапе установки, и направьте его на droplet с помощью его публичного IP (его можно найти на вкладке Droplets). -
Если вы предоставляете собственный сертификат, создайте SSL-секрет с помощью следующей команды:
kubectl create secret tls openreplay-ssl -n app --key="private_key_file.pem" --cert="certificate.crt".
Примечание: Если у вас нет сертификата, сгенерируйте его, с автоматическим продлением, для вашего поддомена (того, что был указан во время установки), используя Let’s Encrypt. Просто подключитесь к droplet OpenReplay, выполните
cd /var/lib/openreplay/openreplay/scripts/helmcharts && bash certmanager.shи следуйте шагам.
- Если вы хотите включить перенаправление с 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
- Наконец, переустановите NGINX OpenReplay:
openreplay -R
Теперь всё готово, OpenReplay должен быть доступен в вашем поддомене. Вы можете создать учётную запись, посетив страницу /signup (то есть openreplay.mycompany.com/signup).
Примечание: Вы также можете запустить OpenReplay за существующим балансировщиком нагрузки. В этом случае настройте SSL на уровне балансировщика (LB):
- В правилах перенаправления (Load Balancer): выберите HTTPS (443) в разделе Load Balancer, затем нажмите ‘Certificate’ > ‘Add a new certificate’. Если ваш домен управляется Digital Ocean, вы можете следовать инструкциям в опции Let’s Encrypt. В противном случае вы должны импортировать собственный сертификат.
- В правилах перенаправления (Droplet): выберите HTTP (80) в разделе Droplet.
Есть вопросы?
Section titled Есть вопросы?Если у вас возникнут какие-либо проблемы, присоединяйтесь к нашему Slack или загляните на наш Форум и получите помощь от нашего сообщества.