Запуск Glarus BI на Microsoft Azure¶
В этом руководстве рассматриваются вопросы запуска Glarus BI в Microsoft Azure с помощью Docker.
Шаг 1. Создание группы ресурсов¶
В консоли управления Azure щёлкните значок Группы ресурсов в верхней части страницы (или просто найдите группы ресурсов). Если у вас уже есть группа ресурсов, вы можете сразу перейти к Шаг 2.
На странице группы ресурсов нажмите кнопку + Добавить на верхней панели, чтобы создать новую группу ресурсов. Далее выберите действующую подписку Azure, введите имя группы ресурсов и выберите регион.
Нажимайте Далее, пока не появится кнопка Создать, затем нажмите её.
При выборе региона для Glarus BI вам следует учитывать местоположение ваших пользователей и вашего хранилища данных, а также затраты на инфраструктуру и законы о конфиденциальности, которые могут ограничивать передачу данных.
Шаг 2. Создание VNET (виртуальной сети)¶
В центре страницы нажмите кнопку Создать ресурсы. Найдите VNET:
Выберите продукт VNET от Microsoft и нажмите Создать:
Введите имя виртуальной сети и выберите тот же регион, который вы использовали для группы ресурсов. Нажмите кнопку Далее: IP-адреса внизу.
Сейчас мы создадим безопасную сеть, состоящую из общедоступной подсети (сети, доступной в Интернет) и частной сети, которая будет содержать базу данных вашего приложения.
В адресе IPv4 у вас должно быть значение по умолчанию 10.0.0.0/16 (в противном случае добавьте нужное вручную). Затем добавьте две подсети:
- одна подсеть с именем public с диапазоном адресов подсети 10.0.1.0/24 и
- одна подсеть с именем private с диапазоном подсетей 10.0.2.0/24.
Нажимайте Далее, пока не дойдёте до страницы Просмотр и создание, затем нажмите кнопку Создать внизу, чтобы создать свою сеть.
Шаг 3. Создание базы данных приложения (PostgreSQL)¶
На странице консоли управления Azure создайте новый ресурс. На этот раз выполните поиск База данных Azure для PostgreSQL. Вы также можете найти эту базу данных в меню Marketplace в разделе Базы данных.
На следующей странице вам нужно будет выбрать способ использования сервиса. На данный момент выберите Один сервер, но учтите, что при этом будет создан только один экземпляр PostgreSQL, который станет вашей единственной точкой отказа.
На следующем экране выберите или введите следующее:
- Группа ресурсов: та, в которую вы включите все свои компоненты.
- Имя сервера: уникальное имя для вашей базы данных.
- Источник данных: можно оставить «Нет».
- Местоположение: то же, которое вы использовали для своей группы ресурсов и виртуальной сети.
- Версия: используйте самую последнюю версию.
- Вычисления + хранилище: вы можете изменить размер своей базы данных, но вы должны выбрать
Общее назначение
, так как это единственный вариант, который предоставит вам приватный линк.
Затем выберите имя пользователя и пароль администратора на ваш вкус.
Нажимайте Далее, пока не дойдёте до последней страницы, затем нажмите Создать. Потребуется некоторое время, чтобы создать вашу базу данных, после завершения этого процесса нажмите кнопку Перейти к ресурсу.
Шаг 4. Создание подключения к частной точке доступа¶
На странице свойств базы данных Azure для PostgreSQL вы можете управлять параметрами своей базы данных. Вам необходимо создать частную точку доступа для базы данных, чтобы весь трафик из веб-приложения направлялся внутри сети Azure.
В меню слева нажмите Подключение к частной точке доступа, которое находится в разделе Безопасность.
Теперь нажмите кнопку на верхней панели со знаком «плюс» с надписью частная точка доступа. На открывшейся странице:
- Укажите имя для этой ссылки (подойдёт любое имя, описывающее контекст, например
metabase_link
). Выберите регион, в котором находится база данных, нажмите Далее. - В разделе Ресурс убедитесь, что Тип ресурса установлен в
Microsoft.DBforPostgreSQL/servers
, это позволит вам выбрать далее сервер, созданный на предыдущем шаге, также оставьте Целевой подресурс со значением по умолчанию. - В разделе Конфигурация нужно изменить только значение Подсеть, где вам нужно выбрать частную подсеть, которую вы создали на первом шаге этого руководства, а всё остальное оставить как есть.
Теперь перейдите к последнему шагу и нажмите Создать. После создания конечной точки вам нужно будет ещё сделать два дополнительных действия:
- На только что созданной странице сервера базы данных перейдите к пункту Безопасность подключения и запретите доступ к общедоступной сети.
- На странице виртуальной сети, созданной на предыдущем шаге, перейдите к настройке Подключенные устройства, там вы должны увидеть устройство, подключенное к сети. Запишите IP-адрес, так как он понадобится вам на шаге 5 (это IP-адрес, который сеть предоставила серверу базы данных).
Шаг 5. Создание веб-приложения (установка Glarus BI)¶
Наконец, завершающий шаг: перейдите в свою группу ресурсов и добавьте новый ресурс или найдите Веб-приложение в Marketplace (значок синего глобуса).
Теперь настройте следующие значения (группа ресурсов должна быть такой же, как и в первом шаге):
- Имя: имя должно быть уникальным, так как субдомен является общим для всех развёртываний Azure.
- Опубликовать: контейнер Docker.
- Операционная система: Linux.
- Регион: используйте тот же регион, что и в предыдущих шагах.
- План обслуживания приложений: если у вас нет плана обслуживания, Azure автоматически создаст новый.
- SKU и размер: установите
production
план с как минимум 200 ACU и 3,5 ГБ памяти и нажмите Применить.
Перейдите к следующему шагу и выберите следующее:
- Опции: Один контейнер.
- Источник образа: DockerHub.
- Тип доступа: Общий.
- Образ и тег: repo/glarus-bi:latest (или любой другой тег образа docker по вашему выбору, например, корпоративную версию).
- Команда запуска: оставьте это поле пустым.
Нажимайте Далее, пока не дойдете до последнего раздела, затем нажмите Создать и подождите, пока ваше приложение инициализируется.
Теперь перейдите на страницу конфигурации приложения и нажмите Настройки > Сеть в левой части страницы. На следующей странице нажмите Нажмите здесь, чтобы настроить в разделе Интеграция с виртуальной сетью.
Теперь щёлкните значок плюса рядом с Добавить виртуальную сеть и выберите созданную вами виртуальную сеть и общедоступную подсеть. Нажмите ОК.
Вернитесь на страницу конфигурации приложения и нажмите Настройки > Конфигурация в левой части страницы. Вы должны увидеть несколько уже настроенных параметров приложения.
Вам нужно будет добавить переменные среды для подключения Glarus BI к её базе данных приложений PostgreSQL. Убедитесь, что вы используете полный MB_DB_CONNECTION_URI.
Кроме того учтите, что имя пользователя в Azure PostgreSQL — user@name_of_your_database_engine
, поэтому в этом случае полный URI подключения будет следующим:
postgresql://databasePrivateIPAddress:port/postgres?user=user@name_of_your_database_engine&password=configuredpassword&ssl=true&sslmode=required
Например, если ваши значения:
- частный IP-адрес базы данных:
10.0.2.4
- порт базы данных:
5432
(в случае Postgres порт MySQL/MariaDB по умолчанию —3306
) - имя сервера базы данных:
metabase-app-database
- имя пользователя базы данных:
metabase
- пароль:
Password1!
тогда ваша строка подключения будет:
postgresql://10.0.2.4:5432/postgres?user=metabase%40metabase-app-database&password=Password1!&ssl=true&sslmode=require
Примечание: символ "@" был заменён на "%40", так как "@" не работает в версиях > 43.
Нажмите Сохранить, и экземпляр перезапустится.
После завершения вы сможете открыть Glarus BI по URL, указанному на вкладке «Обзор» в веб-приложении (в разделе «URL»).
Дополнительные настройки¶
Как включить проверку работоспособности¶
Включение проверки работоспособности в Glarus BI является хорошей практикой. Перейдите в свое веб-приложение > Мониторинг > Проверка работоспособности > Включить проверку работоспособности и укажите в пути /api/health
.
Как обновиться на новую версию¶
Перейдите в созданное вами веб-приложение Glarus BI и нажмите Развертывание > Центр развертывания.
Измените версию контейнера на новую версию в текстовом поле Полное имя изображения и тег в разделе Настройки реестра и нажмите Сохранить.
Предупреждение
Всегда проверяйте, что у вас есть резервная копия вашей базы данных перед обновлением версии, особенно при обновлении между основными версиями. Также помните, что Glarus BI официально не поддерживает понижение версий.
Как посмотреть логи¶
Откройте свое веб-приложение в Azure и перейдите к Мониторинг > Поток журнала.
У вас так же есть возможность просматривать журналы в Glarus BI, выбрав Управление > Решение проблем > Журналы.
Настройка производительности¶
- Отключить состояние FTP
- Изменить версию HTTP на 2.0
- Включить веб-сокеты
- Включить ARR Affinity
Пользовательские домены¶
В веб-приложении Azure перейдите в раздел Настройки > Пользовательские домены, чтобы использовать личный домен с собственными сертификатами.
Масштабирование: горизонтальное или вертикальное¶
Azure предоставляет простой способ увеличить ёмкость сервера, выполнив вертикальное масштабирование. Просто выберите ценовую категорию с бо́льшим количеством ОЗУ и ЦП и перезапустите экземпляр. Этот подход проще, чем горизонтальное масштабирование, и вы должны сначала выбрать этот вариант.
Для развёртывания Glarus BI с учётом высокой доступности вы можете задать настройки горизонтального масштабирования (увеличив количество серверов для параллельной работы). Для этого перейдите в раздел «Горизонтальное масштабирование» и увеличьте количество серверов или настройте политику автоматического масштабирования (например, используя больше серверов в рабочее время и меньше — в нерабочее).
CORS¶
Если вы внедряете Glarus BI, вам может потребоваться включить CORS в Настройки > CORS в веб-приложении. Необходимо будет задать домены для приложений, в которые встроен Glarus BI, чтобы Azure "знал", что нужно разрешить перекрёстные запросы из этих доменов.
Название базы данных¶
Azure не позволяет пользователям создавать базу данных при создании службы, поэтому мы использовали postgres
в качестве базы данных для установки Glarus BI. Хотя это не должно быть проблемой, хорошей практикой было бы установить базу метаданных в отдельную базу данных metabase
. Если вы не спешите попробовать продукт, вы можете создать базу данных с именем metabase
сразу после создания базы данных, а затем использовать соответствующую строку подключения при развёртывании контейнера docker.
В приведенном выше примере строка подключения будет:
postgresql://10.0.2.4:5432/metabase?user=metabase@metabase-app-database&password=Password1!&ssl=true&sslmode=require
Если у вас возникли проблемы с подключением, обратитесь к инструкциям по настройке postgres, так как вы можете столкнуться с проблемой с символом @
в части имени пользователя строки подключения. Использование комбинации MB_DB_CONNECTION_URI
с отдельными полями MB_DB_USER
и MB_DB_PASSWORD
также работает.