Extremos regionales y globales
En esta página, se describen los extremos de Bigtable, se explica lo que debes tener en cuenta antes de usarlos y se muestra cómo configurar un extremo con la
cbt CLI.
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 la 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 de API de datos predeterminado accede al endpoint 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 datos). 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 un extremo 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 de >=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 requieran que uses un extremo regional.
- Necesitas usar Data Boost.
- Necesitas usar la API de Cloud Bigtable Admin.
- Necesitas un porcentaje de tiempo de actividad mensual de al menos 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 que puedas 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 rechaza 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 aplicación 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 en 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 atienden desde los clústeres de 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 aplicación. 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 replican 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 configurar 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 de >=99.999%. Un tiempo de actividad mensual de >=99.999% requiere la conmutación por error automática de solicitudes a través de límites regionales. Un extremo regional impide la conmutación por error automática porque limita todas las solicitudes a una sola región. Para obtener más información sobre los porcentajes de tiempo de actividad mensual, 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, donde
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, debido a 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 información adicional 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 configurar 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 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
Uso de extremo restringido.