Sintaxis de las políticas de cuota

En el siguiente tema se describe la sintaxis de la política de cuota de compartimento.

Están disponibles tres tipos de sentencias de política de cuota:

  • set: define el número máximo de un recurso en la nube que se puede utilizar para un compartimento.
  • unset: restablece las cuotas a los límites de servicio por defecto.
  • zero: elimina el acceso a un recurso en la nube para un compartimento.
Las sentencias de política de cuota tienen el siguiente formato:
Diagrama de sentencias de política de cuota "set"
Diagrama de sentencias de política de cuota "unset"
Diagrama de sentencias de política de cuota "zero"

Los componentes de lenguaje para una sentencia de política de cuota son los siguientes:

  • La palabra clave action, que corresponde al tipo de cuota que se define. La palabra clave puede ser set, unset o zero.
  • El nombre de la familia de servicios, por ejemplo: compute-core.
  • La palabra clave quota o quotas.
  • Nombre de la cuota, que varía según la familia de servicios. Por ejemplo, una cuota válida en la familia compute-core es standard-e4-core-count.
    • También puede utilizar comodines para especificar un rango de nombres. Por ejemplo, "/standard*/" coincide con todas las cuotas de Compute que empiezan por la frase "standard".
  • Para sentencias "set", el valor de la cuota.
  • El compartimento que abarca la cuota.
  • Una condición opcional. Por ejemplo, where request.region = 'us-phoenix-1'. Las condiciones soportadas actualmente son request.region y request.ad.

Consulte también Cuotas de ejemplo para ver algunos ejemplos de uso comunes.

Ámbito

Las cuotas pueden tener diferentes ámbitos y funcionar en el dominio de disponibilidad, la región o globalmente. A continuación se muestran algunos puntos importantes que debe comprender sobre el ámbito al trabajar con cuotas de compartimento:

  • Al configurar una cuota en el nivel del dominio de disponibilidad (AD), la cuota se asigna a cada AD. Por ejemplo, la definición de una cuota de 120 OCPU en un compartimento define, en realidad, un límite de 120 OCPU por dominio de disponibilidad. Para dirigirse a un dominio de disponibilidad específico, use el parámetro request.ad en la cláusula where.

  • Las cuotas regionales se aplican a cada región. Consulte Cuotas de ejemplo para ver un ejemplo de una cuota regional.

  • El uso de subcompartimentos se tiene en cuenta para el uso del compartimento principal.

Para obtener más información, consulte Regiones y dominios de disponibilidad.

Permisos y anidación

Puede definir cuotas de compartimento en cualquier compartimento del arrendamiento. Un administrador puede definir cuotas para sus compartimentos y los compartimentos secundarios.

Una política de cuota puede contener sentencias que se aplican a un compartimento y sus compartimentos secundarios. La ubicación de una política de cuota no afecta a su prioridad. Una sentencia de cuota se aplica cuando la sentencia está en el ámbito del compartimento en el que se produce la solicitud de recurso.

Nota

Las políticas que están dirigidas a compartimentos anidados se escriben de la siguiente manera:
set compute quota standard-e4-core-count to 10 in compartment parent:child:another_child

Evaluación y precedencia de cuota

Las siguientes reglas se aplican cuando se evalúan sentencias de cuota:

  • En una política, las sentencias de cuota se evalúan en orden. Una sentencia posterior sustituye a una sentencia anterior que se dirige al mismo recurso.

  • Si varias políticas tienen como destino el mismo recurso, se aplica la política más restrictiva.

  • El compartimento en el que se crea una política de cuota no determina la prioridad. Para las políticas que tienen como destino el mismo recurso dentro del mismo linaje de compartimentos, se aplica la política más restrictiva.

  • Los límites de servicio tienen prioridad sobre las cuotas. Puede especificar una cuota que exceda el límite de servicio para un recurso, pero el límite de servicio se seguirá aplicando.

Comodines

Algunas familias de cuotas tienen muchos recursos, por ejemplo, la familia de cuotas de la base de datos está compuesta por muchas cuotas. En tales casos, se puede utilizar el nombre de cuota wildcards para especificar un rango de nombres.

En este ejemplo se utiliza un comodín para asignar todos los recursos exadata al compartimento ProductionApp:

zero database quota /*exadata*/ in tenancy
unset database quota /*exadata*/ in compartment ProductionApp