Nota
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Azure Cosmos DB para Postgres es una base de datos SQL distribuida distribuida en la nube totalmente administrada para aplicaciones transaccionales.
Las API de transferencia de estado representacional (REST) del proveedor de recursos le permiten administrar los recursos de Azure Cosmos DB mediante programación. Entre las categorías principales admitidas se incluyen:
- Implemente, administre o promueva un clúster.
- Administrar configuraciones de nodos de trabajo \ coordinador.
- Administrar reglas de firewall.
- Administrar conexiones de punto de conexión privado y recursos de vínculo privado.
- Administrar roles.
Authorization
Todas las llamadas REST de Azure Resource Manager necesitan un token de autorización válido en el encabezado de solicitud para que se realice correctamente. Consulte Creación de la solicitud: Adquisición de un token de acceso para obtener más información sobre cómo obtener este token de autorización.
Realización de llamadas a la API REST
Hay varias maneras de realizar llamadas api REST para cualquier servicio de Azure, incluido Azure Cosmos DB for PostgreSQL. Puede usar Postman como la herramienta de uso general más universal para las llamadas API REST. También puede usar curl para algunos otros escenarios, incluidos scripts desatendidos, como los que se usan en la automatización de devops. También puede usar "az rest" como una manera sencilla de realizar llamadas API REST desde la CLI de Azure.
Marcadores de posición y valores
La siguiente información es común a todas las tareas que puede realizar con estas API REST:
- Reemplace por
{api-version}
la versión de API disponible más reciente , como 2022-11-08. - Reemplace por
{subscriptionId}
el identificador de suscripción en el URI. Este valor es un GUID único para su suscripción, como 6B29FC40-CA47-1067-B31D-00DD010662DA. Busque el identificador de suscripción mediante la hoja Azure Portal suscripciones. - Sustituya
{resourceGroupName}
por el grupo de recursos. Para más información, consulte el artículo Uso de grupos de recursos para administrar los recursos de Azure. - Reemplace
{clusterName}
por el nombre del clúster de Azure Cosmos DB para PostgreSQL. Use el nombre corto, como mydemocluster. - Establezca el encabezado Content-Type en application/json.
- Define el encabezado Authorization en un token de web JSON que obtenga de Azure Active Directory. Para obtener más información, consulte la sección Autorización.
Valores
Use la siguiente referencia para determinar los valores admitidos para varias llamadas api REST para clústeres y nodos de Azure Cosmos DB para PostgreSQL.
Creación y actualización de clústeres
-
properties.postgresqlVersion: versión principal de PostgreSQL en todos los nodos del clúster. Especifique una versión principal de PostgreSQL compatible. Por ejemplo, "15". Consulte la lista de versiones de Postgres admitidas. El clúster se crea con la versión secundaria más reciente de PostgreSQL y la versión de Citus correspondiente más reciente disponible en la región seleccionada.
- También puede actualizar la versión principal de PostgreSQL mediante la llamada API de actualización de clúster.
-
properties.citusVersion: versión de la extensión Citus instalada en todos los nodos del clúster. Por ejemplo, "11.3". Consulte la versión de Citus admitida actualmente.
- Esta propiedad es opcional para un nuevo aprovisionamiento de clústeres. Si se omite esta propiedad, se instala la versión más reciente de Citus compatible con la versión principal de PostgreSQL especificada.
- El caso principal de esta propiedad es la actualización de la versión de Citus, como 11.0 a 11.3. Cuando se publica una versión actualizada de Citus para la versión principal de PostgreSQL en el clúster, puede usar la llamada API de actualización del clúster para actualizar solo la versión de Citus a la más reciente compatible con la versión principal actual de PostgreSQL.
-
properties.administratorLoginPassword: contraseña para el rol "citus" en todos los nodos del clúster. La contraseña debe cumplir los siguientes requisitos:
- Longitud: al menos 8 caracteres y como máximo 128 caracteres
- Complejidad: debe contener caracteres de cada una de las categorías siguientes:
- Letras del alfabeto inglés en mayúscula
- Letras del alfabeto inglés en minúscula
- Números (0 al 9)
- Caracteres no alfanuméricos (!, $, #, %, etc.)
- Nombre de rol en la contraseña: no puede contener todas las partes o del nombre del rol. Parte de un nombre de rol se define como tres o más caracteres alfanuméricos consecutivos.
-
properties.coordinatorServerEdition: tipo de proceso en un único nodo o coordinador del clúster de varios nodos. Use los siguientes valores para el nodo único admitido y el proceso de varios nodos.
- Nodo único
- Ampliable, 1 núcleo virtual: BurstableMemoryOptimized
- Ampliable, 2 núcleos virtuales: BurstableGeneralPurpose
- No ampliable, cualquier núcleo virtual compatible: GeneralPurpose
- Varios nodos
- No ampliable, cualquier núcleo virtual compatible: GeneralPurpose
- Nodo único
- properties.coordinatorVCores: número de núcleos virtuales de proceso en el coordinador del clúster de un solo nodo o de varios nodos. Consulte los valores admitidos en esta página.
- properties.coordinatorStorageQuotaInMb: tamaño de almacenamiento en MiB en un solo nodo o en el coordinador del clúster de varios nodos. Consulte los tamaños de almacenamiento admitidos para configuraciones de nodo único y de varios nodos. Por ejemplo, para especificar 128 GiB de almacenamiento, use el valor "131072" (128 GiB * 1024 = 131072 MiB).
- properties.nodeServerEdition: tipo de proceso en nodos de trabajo. Solo se admite el valor "MemoryOptimized".
- properties.nodeVCores: número de núcleos virtuales de proceso en cada nodo de trabajo del clúster de varios nodos. Consulte los valores admitidos en esta página.
- properties.nodeStorageQuotaInMb: tamaño de almacenamiento en MiB en un nodo de trabajo en un clúster de varios nodos. Consulte los tamaños de almacenamiento compatibles con configuraciones de varios nodos. Por ejemplo, para especificar 2 TiB del valor "2097152" de almacenamiento (2 TiB * 1024 = 2048 GiB * 1024 = 2097152 MiB).
- properties.coordinatorEnablePublicIpAccess: cuando se establece en "False", esta propiedad deshabilita el acceso público al coordinador de clústeres.
- properties.nodeEnablePublicIpAccess: el valor predeterminado de esta propiedad es "false" deshabilitando eficazmente el acceso público directo a los nodos de trabajo. Para habilitar el acceso directo opcional a los nodos de trabajo en clústeres de varios nodos, debe establecer esta propiedad en "True" y crear reglas de firewall para esas direcciones IP públicas. Todas las reglas de firewall se aplican al coordinador y a todos los nodos de trabajo.
Creación de reglas de firewall
-
properties.startIpAddress y properties.endIpAddress
- Para crear una regla de firewall para una única dirección IP pública, especifique esta dirección IP como un valor para startIpAddress y endIpAddress.
- Para permitir conexiones desde cualquier dirección IP administrada por Azure, especifique "0.0.0.0.0" para los valores startIpAddress y endIpAddress. Tenga en cuenta que esta regla de firewall permitiría conexiones de las suscripciones de Azure de otros clientes.
Creación de roles
-
properties.password: contraseña para el rol postgres que se va a crear en todos los nodos del clúster. La contraseña debe cumplir los siguientes requisitos:
- Longitud: al menos 8 caracteres y como máximo 128 caracteres
- Complejidad: debe contener caracteres de cada una de las categorías siguientes:
- Letras del alfabeto inglés en mayúscula
- Letras del alfabeto inglés en minúscula
- Números (0 al 9)
- Caracteres no alfanuméricos (!, $, #, %, etc.)
- Nombre de rol en la contraseña: no puede contener todas las partes o del nombre del rol. Parte de un nombre de rol se define como tres o más caracteres alfanuméricos consecutivos.