Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Azure Cosmos DB для Postgres — это полностью управляемая облачная распределенная база данных SQL для транзакционных приложений.
API-интерфейсы передачи репрезентативного состояния (REST) поставщика ресурсов позволяют управлять ресурсами Azure Cosmos DB программным способом. Основные поддерживаемые категории включают:
- Развертывание, управление или повышение уровня кластера.
- Управляйте конфигурациями координатора \ рабочего узла.
- Управляйте правилами брандмауэра.
- Управляйте частными конечными точками и ресурсами приватного канала.
- Управляйте ролями.
Авторизация
Для успешного выполнения всех вызовов REST Azure Resource Manager требуется действительный маркер авторизации в заголовке запроса. Дополнительные сведения о том, как получить этот маркер авторизации, см. в разделе Создание запроса: получение маркера доступа .
Как выполнять вызовы REST API
Существует несколько способов выполнения вызовов REST API для любой службы Azure, включая Azure Cosmos DB для PostgreSQL. Вы можете использовать Postman как наиболее универсальный универсальный инструмент для вызовов REST API. Вы также можете использовать curl для некоторых других сценариев, включая автоматические скрипты, такие как те, которые используются в автоматизации DevOps. Вы также можете использовать az rest в качестве простого способа выполнения вызовов REST API из Azure CLI.
Плейсхолдеры и значения
Приведенная ниже информация является общей для всех задач, которые можно выполнять с помощью этих REST API.
- Замените
{api-version}на последнюю доступную версию API , например 2022-11-08. - Замените
{subscriptionId}его идентификатором подписки в URI. Это значение является уникальным идентификатором GUID для вашей подписки, например 6B29FC40-CA47-1067-B31D-00DD010662DA. Найдите идентификатор подписки с помощью колонки подписок на портале Azure. - Замените
{resourceGroupName}группу ресурсов. Дополнительные сведения см. в статье "Использование групп ресурсов для управления ресурсами Azure". - Замените
{clusterName}его именем кластера Azure Cosmos DB для PostgreSQL. Используйте короткое имя, например mydemocluster. - Задайте для заголовка Content-Type значение application/json.
- Задайте для заголовка Authorization веб-маркер JSON, полученный из Azure Active Directory. Для получения дополнительной информации см. раздел Авторизация.
Ценности
Используйте следующий справочник, чтобы определить поддерживаемые значения для различных вызовов REST API для кластеров и узлов Azure Cosmos DB для PostgreSQL.
Создание и обновление кластера
-
properties.postgresqlVersion: основная версия PostgreSQL на всех узлах кластера. Укажите поддерживаемую основную версию PostgreSQL. Например, «15». Ознакомьтесь со списком поддерживаемых версий Postgres. Кластер создается с последней дополнительной версией PostgreSQL и последней соответствующей версией Citus , доступной в выбранном регионе.
- Вы также можете обновить основную версию PostgreSQL с помощью вызова API обновления кластера.
-
properties.citusVersion: версия расширения Citus, установленного на всех узлах кластера. Например, "11.3". Смотрите поддерживаемую в настоящее время версию Citus.
- Это свойство является необязательным для подготовки нового кластера. Если это свойство опущено, устанавливается последняя версия Citus, поддерживаемая для указанной основной версии PostgreSQL.
- Основным случаем использования этого свойства является обновление версии Citus, например, с 11.0 до 11.3. Когда обновленная версия Citus выпущена для основной версии PostgreSQL в вашем кластере, вы можете использовать вызов API обновления кластера для обновления только версии Citus до последней версии, поддерживаемой для текущей основной версии PostgreSQL.
-
properties.administratorLoginPassword: Пароль для роли 'citus' на всех узлах в вашем кластере. Пароль должен соответствовать следующим требованиям
- Длина: не менее 8 и не более 128 символов
- Сложность: Должен содержать персонажей из каждой из следующих категорий:
- прописные латинские буквы;
- строчные латинские буквы;
- Числа (0-9)
- Символы, не являющиеся буквенно-цифровыми (!, $, #, %и т.д.)
- Имя роли в пароле: не может содержать полное или частичное имя роли. Часть имени роли определяется как три или более последовательных буквенно-цифровых символа
-
properties.coordinatorServerEdition: тип вычислений в координаторе кластера с одним узлом или кластером с несколькими узлами. Используйте следующие значения для поддерживаемых вычислений с одним и несколькими узлами
- Один узел
- Burstable, 1 vCore: BurstableMemoryOptimized
- Burstable, 2 vCores: BurstableGeneralPurpose
- Без увеличения скорости, любые поддерживаемые виртуальные ядра: общего назначения
- Многоузловой
- Без увеличения скорости, любые поддерживаемые виртуальные ядра: общего назначения
- Один узел
- properties.coordinatorVCores: количество вычислительных виртуальных ядер в координаторе кластера с одним узлом или кластером с несколькими узлами. Поддерживаемые значения см. на этой странице.
- properties.coordinatorStorageQuotaInMb: Размер хранилища в МиБ на одном узле или на координаторе в кластере с несколькими узлами. Ознакомьтесь с поддерживаемыми размерами хранилища для конфигураций с одним и несколькими узлами. Например, чтобы указать 128 ГиБ хранилища, используйте значение "131072" (128 ГиБ * 1024 = 131072 МиБ).
- properties.nodeServerEdition: Тип вычислений в рабочих узлах. Поддерживается только значение "MemoryOptimized".
- properties.nodeVCores: количество вычислительных виртуальных ядер в каждом рабочем узле в кластере с несколькими узлами. Поддерживаемые значения см. на этой странице.
- properties.nodeStorageQuotaInMb: размер хранилища в МиБ на рабочем узле в кластере с несколькими узлами. Ознакомьтесь с поддерживаемыми размерами хранилища , конфигурациями с несколькими узлами. Например, чтобы указать 2 ТиБ хранилища, используйте значение "2097152" (2 ТиБ * 1024 = 2048 ГиБ * 1024 = 2097152 МиБ).
- properties.coordinatorEnablePublicIpAccess: Когда установлено значение "False", это свойство отключает публичный доступ к координатору кластера.
- properties.nodeEnablePublicIpAccess: Значение по умолчанию для этого свойства — false, что фактически отключает прямой публичный доступ к рабочим узлам. Чтобы включить необязательный прямой доступ к рабочим узлам в многоузловых кластерах, необходимо задать для этого свойства значение "True" и создать правила брандмауэра для этих общедоступных IP-адресов. Все правила брандмауэра применяются к координатору и всем рабочим узлам.
Создание правил брандмауэра
-
properties.startIpAddress и properties.endIpAddress
- Чтобы создать правило брандмауэра для одного общедоступного IP-адреса, укажите этот IP-адрес в качестве значения как для startIpAddress, так и для endIpAddress.
- Чтобы разрешить подключения с любого IP-адреса, управляемого Azure, укажите "0.0.0.0" для значений startIpAddress и endIpAddress. Обратите внимание, что это правило брандмауэра разрешает подключения из подписок Azure других клиентов.
Создание роли
-
properties.password: Пароль для роли Postgres, которая будет создана на всех узлах вашего кластера. Пароль должен соответствовать следующим требованиям
- Длина: не менее 8 и не более 128 символов
- Сложность: Должен содержать персонажей из каждой из следующих категорий:
- прописные латинские буквы;
- строчные латинские буквы;
- Числа (0-9)
- Символы, не являющиеся буквенно-цифровыми (!, $, #, %и т.д.)
- Имя роли в пароле: не может содержать полное или частичное имя роли. Часть имени роли определяется как три или более последовательных буквенно-цифровых символа