Extremos regionales y globales
En esta página, se describen los extremos de Bigtable, se explica qué debes tener en cuenta antes de usarlos y se muestra cómo configurar un extremo con la CLI de cbt.
Para enviar solicitudes a Bigtable, puedes usar un extremo de servicio global o regional. Los extremos regionales de Bigtable garantizan que los datos de una instancia se almacenen y procesen en la región de Bigtable en la que residen los datos. Es posible que debas usar extremos regionales para Bigtable en una región geográfica específica para satisfacer las necesidades de seguridad y cumplimiento de tu proyecto.
Antes de leer este documento, familiarízate con Instancias, clústeres y nodos y Perfiles de aplicación.
Entre los conceptos clave, se incluyen los siguientes:
Extremo de servicio: Es una URL base que especifica la dirección de red de un servicio de API. Bigtable tiene extremos globales y regionales.
Extremo global: Permite que Bigtable almacene y enrute los datos en una instancia de Bigtable a cualquier región que contenga uno de los clústeres de la instancia. El extremo global de la API de Cloud Bigtable (API de datos) es
bigtable.googleapis.com. El extremo predeterminado de la API de Data accede al extremo global.Extremo regional: Aplica restricciones regionales, lo que garantiza que Bigtable almacene y procese datos en una región especificada. Solo puedes usar extremos regionales con la API de Cloud Bigtable (API de Data). Bigtable no admite extremos regionales para la API de Cloud Bigtable Admin.
Cuándo usar extremos regionales
El beneficio de usar un extremo regional de Bigtable en lugar de uno global es que el extremo regional proporciona aislamiento y protección regionales para satisfacer los requisitos de seguridad, cumplimiento y reglamentarios.
Sin embargo, los extremos regionales no admiten Data Boost ni la API de Cloud Bigtable Admin. Además, no puedes configurar Bigtable para lograr un porcentaje de tiempo de actividad mensual superior al 99.999% cuando usas extremos regionales. Para obtener más información, consulta la sección Consideraciones para usar un extremo regional de este documento.
Cuándo usar extremos globales
Usa un extremo global en los siguientes casos:
- No tienes requisitos de restricción regional que te obliguen a usar un extremo regional.
- Debes usar Data Boost.
- Debes usar la API de Cloud Bigtable Admin.
- Necesitas un porcentaje de tiempo de actividad mensual de al menos el 99.999%.
Consideraciones para usar un extremo regional
Si usas un extremo regional, ten en cuenta los siguientes factores:
Ubicaciones de clústeres
Antes de usar un extremo regional, debes crear una instancia con al menos un clúster en la región en la que deseas aislar tus datos. Los extremos regionales de Bigtable están disponibles en regiones selectas de Bigtable. Para obtener una lista de las regiones disponibles, consulta Extremos de servicios regionales.
Solo puedes usar un extremo regional que pertenezca a la región en la que deseas aislar tus datos. Por ejemplo, si un clúster está en la región us-central1, no puedes usar bigtable.us-west1.rep.googleapis.com para atender solicitudes.
Si intentas usar un extremo regional para acceder a un clúster que se encuentra en una región diferente, Bigtable rechazará la solicitud con un mensaje de error FAILED_PRECONDITION que indica que no se puede acceder a ningún clúster con el clúster y el extremo especificados. Para obtener más información sobre este mensaje de error, consulta Códigos de estado de Bigtable.
Perfiles de aplicación
Después de configurar un extremo regional, debes usar un perfil de app configurado para enrutar solicitudes a un clúster en la región del extremo.
Si intentas usar un perfil de aplicación configurado para enviar escrituras solo a un clúster (con enrutamiento de un solo clúster) o a clústeres en una región diferente del extremo (con enrutamiento de varios clústeres), recibirás el mensaje de error FAILED_PRECONDITION. Para obtener más información sobre el enrutamiento de clústeres, consulta Política de enrutamiento.
Si usas un perfil de aplicación configurado para enrutar a cualquier clúster de una instancia para lograr alta disponibilidad (HA) y también usas un extremo regional, el extremo regional garantiza que todas las solicitudes se enruten solo a los clústeres de su región, incluso si la instancia tiene clústeres en otras regiones. La conmutación por error automática está restringida, por lo que las solicitudes solo se entregan desde clústeres en la región del extremo.
Considera un ejemplo en el que envías solicitudes con un perfil de aplicación configurado para el enrutamiento de varios clústeres a una instancia que tiene clústeres en us-west1-a (Oregón), us-west1-b (Oregón) y us-central1-a (Iowa). Si envías estas solicitudes al extremo regional bigtable.us-central1.rep.googleapis.com, us-central1-a atenderá todas las solicitudes, incluso si no vuelves a configurar el perfil de la app. Las solicitudes que no puede atender us-central1-a fallan.
Replicación
Los extremos regionales no afectan ni impiden la replicación. Si configuras un extremo regional en la región A y, luego, agregas un clúster a tu instancia en la región B, tus datos se replicarán en la región B como si hubieras usado el extremo global.
Para evitar la replicación de datos en otra región, crea clústeres solo en la región deseada.
Para evitar que los usuarios de tu organización agreguen clústeres fuera de la región del extremo, puedes establecer una política de la organización que use restricciones de ubicación.
Disponibilidad
Cuando usas extremos regionales, no puedes configurar Bigtable para lograr un porcentaje de tiempo de actividad mensual superior o igual al 99.999%. Un tiempo de actividad mensual igual o superior al 99.999% requiere la conmutación por error automática de las solicitudes a través de los límites regionales. Un extremo regional impide la conmutación por error automática, ya que limita todas las solicitudes a una sola región. Para obtener más información sobre los porcentajes de tiempo de actividad mensuales, consulta el Acuerdo de Nivel de Servicio (ANS) de Bigtable.
Semántica de los extremos regionales
Un extremo regional sigue el formato bigtable.REGION.rep.googleapis.com, en el que REGION es un nombre de región Google Cloud , como northamerica-northeast2.
Por ejemplo, si deseas aislar tus datos en la región de Iowa, dado que el nombre de la región de Iowa es us-central1, la URL del extremo regional para la región de Iowa es bigtable.us-central1.rep.googleapis.com.
Especifica un extremo regional
Puedes especificar un extremo regional de Bigtable con la CLI de cbt o las bibliotecas cliente de Cloud Bigtable.
cbt
Para especificar un extremo regional y anular el extremo global con la CLI de cbt, puedes usar la opción --data-endpoint en tu solicitud o agregar lo siguiente a tu archivo ~/.cbtrc. Para obtener más información sobre cómo crear un archivo ~/.cbtrc, consulta la referencia de la CLI de cbt.
data-endpoint = https://bigtable.REGION.rep.googleapis.com/
Reemplaza REGION por la región en la que deseas establecer un extremo regional, como us-central1 o europe-west1.
Por ejemplo, para configurar el extremo regional como us-central1, agrega lo siguiente al archivo ~/.cbtrc:
data-endpoint = https://bigtable.us-central1.rep.googleapis.com/
Especifica el extremo global
cbt
Para especificar el extremo global, envía tu solicitud sin usar la opción --data-endpoint. Si anteriormente agregaste una línea data-endpoint a tu archivo ~/.cbtrc, bórrala.
Restringe el uso del extremo de API global
Para ayudar a aplicar de manera forzosa el uso de extremos regionales, usa la
restricción de políticas de la organización constraints/gcp.restrictEndpointUsage y bloquea
las solicitudes al extremo de API global. Para obtener más información, consulta
Cómo restringir el uso de extremos.