OpenAPI для Managed Postgres
Используйте ClickHouse OpenAPI, чтобы программно управлять сервисами Managed Postgres так же, как сервисами ClickHouse. Тот же API также предоставляет [конечную точку Prometheus] для сбора метрик сервиса. Уже знакомы с OpenAPI? Получите [API-ключи] и сразу переходите к справочнику по API Managed Postgres. Если нет, ниже приведён краткий обзор.
Ключи API
Для использования ClickHouse OpenAPI требуется аутентификация; о том, как создать ключи, см. в разделе [Ключи API]. Затем используйте их в учетных данных Basic Auth следующим образом:
Идентификатор организации
Далее вам понадобится идентификатор организации.
- Выберите название организации в левом нижнем углу консоли.
- Выберите Сведения об организации.
- Нажмите значок копирования справа от Идентификатор организации, чтобы сразу скопировать его в буфер обмена.
CRUD
Рассмотрим жизненный цикл сервиса Postgres.
Создание
Сначала создайте новый экземпляр с помощью create API. Для этого в JSON-теле запроса должны быть указаны следующие свойства:
name: Имя нового сервиса Postgresprovider: Имя облачного провайдераregion: Регион в инфраструктуре провайдера, где будет развернут сервисsize: Размер VMstorageSize: Размер хранилища для VM
В документации по create API приведены возможные значения этих свойств. Кроме того, укажем Postgres 18 вместо версии по умолчанию — 17:
Теперь используйте эти данные, чтобы создать новый экземпляр; обратите внимание, что для этого требуется заголовок Content-Type:
В случае успеха будет создан новый экземпляр и возвращена информация о нём, включая данные для подключения:
Получение
Используйте id из ответа, чтобы повторно получить сервис:
Вывод будет похож на JSON, возвращаемый при создании, но следите
за state; когда его значение изменится на running, сервер будет готов к работе:
Теперь вы можете использовать свойство connectionString для подключения, например, через
psql:
Введите \q, чтобы выйти из psql.
Обновление
patch API поддерживает обновление части свойств сервиса Managed Postgres с помощью JSON Merge Patch по RFC 7396. Теги могут быть особенно полезны при сложных развертываниях; просто отправьте в запросе только их:
Возвращённые данные должны содержать новые теги:
Удаление
Используйте [API удаления], чтобы удалить сервис Postgres.
Удаление сервиса Postgres полностью удаляет сам сервис и все его данные. Перед удалением сервиса убедитесь, что у вас есть резервная копия или что вы предварительно повысили реплику до основной.
В случае успеха в ответе будет указан код состояния 200, например:
Мониторинг
Две совместимые с Prometheus конечные точки предоставляют метрики CPU, памяти, I/O, подключений и транзакций для сервисов Managed Postgres: одна возвращает метрики для всех сервисов в организации, другая — для одного сервиса. Сведения о настройке см. на странице конечная точка Prometheus, а полный список метрик — в metrics reference.