De forma predeterminada, las instantáneas se crean con un alcance global. Las instantáneas de alcance global se almacenan en una ubicación de almacenamiento específica y se pueden restablecer (usar para crear un disco nuevo) en cualquier región o zona. Para obtener un control de aislamiento adicional basado en la ubicación, puedes crear instantáneas de alcance regional. Las instantáneas de alcance regional almacenan todos los datos y metadatos de las instantáneas juntos en la región de alcance. Con las instantáneas de alcance regional, también puedes restringir las regiones en las que puedes crear y restablecer instantáneas.
En este documento, se explica cómo establecer ubicaciones permitidas para la creación y el restablecimiento de instantáneas regionales.
Antes de comenzar
-
Si aún no lo hiciste, configura la autenticación.
La autenticación verifica tu identidad para acceder a los Google Cloud servicios y las APIs. Para ejecutar
código o muestras desde un entorno de desarrollo local, puedes autenticarte en
Compute Engine seleccionando una de las siguientes opciones:
Selecciona la pestaña según cómo planeas usar las muestras en esta página:
Console
Cuando usas la Google Cloud consola para acceder a los Google Cloud servicios y las APIs, no necesitas configurar la autenticación.
gcloud
-
Instala la Google Cloud CLI. Después de la instalación, inicializa Google Cloud CLI con el siguiente comando:
gcloud initSi usas un proveedor de identidad (IdP) externo, primero debes acceder a gcloud CLI con tu identidad federada.
-
- Configura una región y una zona predeterminadas.
REST
Para usar las muestras de la API de REST incluidas en esta página en un entorno de desarrollo local, debes usar las credenciales que proporciones a la gcloud CLI.
Instala la Google Cloud CLI.
Si usas un proveedor de identidad (IdP) externo, primero debes acceder a gcloud CLI con tu identidad federada.
Para obtener más información, consulta Autentícate para usar REST en la documentación de autenticación de. Google Cloud
Limitaciones
- Establecer un alcance regional anula toda la configuración de ubicación de almacenamiento predeterminada para el proyecto.
- Establecer un alcance regional solo se aplica a las instantáneas regionales nuevas.
- No puedes convertir una instantánea de alcance global en una de alcance regional. Debes crear una instantánea nueva con el alcance adecuado.
Roles y permisos requeridos
Para obtener los permisos que necesitas para establecer ubicaciones de almacenamiento y restablecimiento para instantáneas de alcance regional, pídele a tu administrador que te otorgue los siguientes roles de IAM en el proyecto:
- Administrador de instancias de Compute (v1)
(
roles/compute.instanceAdmin.v1) - Para conectarte a una VM que puede ejecutarse como una cuenta de servicio: Usuario de cuenta de servicio (v1)
(
roles/iam.serviceAccountUser)
Para obtener más información sobre cómo otorgar roles, consulta Administra el acceso a proyectos, carpetas y organizaciones.
Estos roles predefinidos contienen los permisos necesarios para establecer ubicaciones de creación y restablecimiento de instantáneas. Para ver los permisos exactos que son necesarios, expande la sección Permisos requeridos:
Establece ubicaciones de creación de instantáneas permitidas
De forma predeterminada, puedes crear instantáneas en todas las regiones. Para restringir dónde puedes crear instantáneas de alcance regional, establece ubicaciones de acceso permitidas a nivel del proyecto. Una vez que establezcas las ubicaciones de acceso, podrás crear instantáneas de alcance regional para el proyecto solo en esas ubicaciones.
gcloud
Para permitir que los discos zonales de la zona A creen instantáneas en cualquier región, usa el
gcloud beta compute disk-settings update comando:
gcloud beta compute disk-settings update \
--zone=ZONE_A \
--access-location-policy=all-regions \
Para permitir que los discos regionales de la región A creen instantáneas en cualquier región, usa el
gcloud beta compute disk-settings update comando:
gcloud beta compute disk-settings update \
--region=REGION_A \
--access-location-policy=all-regions
Para permitir que los discos de la región A creen instantáneas solo en la región B, usa el
gcloud beta compute disk-settings update comando:
gcloud beta compute disk-settings update \
--access-location-policy=specific-regions \
--region=REGION_A \
--add-access-locations=REGION_B
Reemplaza lo siguiente:
ZONE_A: Es la zona de los discos que pueden crear instantáneas en cualquier región.REGION_A: Es la región de todos los discos (en un proyecto) que requieren restricciones de creación de instantáneas de alcance regional.REGION_B: Es una región permitida para la creación de instantáneas de alcance regional. Puedes establecer varias regiones como ubicaciones de acceso permitidas. Debes incluir la región en la que se almacena el disco de origen como una de las regiones permitidas.
REST
Para permitir que los discos zonales de la zona A creen instantáneas en cualquier región, realiza una solicitud PATCH al método diskSettings.patch:
PATCH https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/zones/ZONE_A/diskSettings?updateMask=accessLocation
{
"accessLocation":
{
"policy":"ALL_REGIONS"
}
}
Para permitir que los discos regionales de la región A creen instantáneas solo en la región B, realiza una solicitud PATCH al método regionDiskSettings.patch:
PATCH https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/regions/REGION_A/diskSettings?updateMask=accessLocation
{
"accessLocation":
{
"policy":"SPECIFIC_REGIONS",
"locations":
{
"REGION_B":{"region":"REGION_B"}
}
}
}
Reemplaza lo siguiente:
PROJECT_ID: El ID del proyecto.ZONE_A: La zona del disco.REGION_A: La región del disco.REGION_B: Es una región permitida para la creación de instantáneas. Puedes establecer varias regiones como ubicaciones de acceso permitidas. Debes incluir la región en la que se almacena el disco de origen como una de las regiones permitidas.
Establece ubicaciones de restablecimiento de instantáneas permitidas
De forma predeterminada, puedes restablecer instantáneas de alcance regional y global en cualquier región. Para configurar ubicaciones de restablecimiento para tus instantáneas de alcance regional, establece ubicaciones de acceso permitidas a nivel del proyecto. Debes establecer ubicaciones de acceso permitidas para cada proyecto de forma individual. Una vez que establezcas las ubicaciones de acceso, podrás restablecer instantáneas de alcance regional para el proyecto solo en esas ubicaciones.
gcloud
Para permitir que las instantáneas de un proyecto en la región A se restablezcan en todas las regiones,
usa el
gcloud beta compute snapshot-settings update comando:
gcloud beta compute snapshot-settings update \
--project=PROJECT_ID \
--region=REGION_A \
--access-location-policy=all-regions
Para permitir que las instantáneas de un proyecto en la región A se restablezcan solo en la región B,
usa el
gcloud beta compute snapshot-settings update comando:
gcloud beta compute snapshot-settings update \
--project=PROJECT_ID \
--access-location-policy=specific-regions \
--region=REGION_A \
--add-access-locations=REGION_B
Reemplaza lo siguiente:
PROJECT_ID: El ID del proyecto.REGION_A: Es la región en la que se almacenan las instantáneas de alcance regional.REGION_B: Es una región permitida en la que se pueden restablecer las instantáneas de alcance regional. Puedes establecer varias regiones como ubicaciones de restablecimiento permitidas.
REST
Para permitir que las instantáneas de un proyecto en la región A se restablezcan en todas las regiones,
realiza una PATCH
solicitud al método regionSnapshotSettings.patch:
PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION_A/snapshotSettings?updateMask=accessLocation
{
"accessLocation":
{
"policy":"ALL_REGIONS"
}
}
Para permitir que las instantáneas de un proyecto en la región A se restablezcan solo en la región B,
realiza una
PATCH solicitud al método regionSnapshotSettings.patch:
PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION_A/snapshotSettings?updateMask=accessLocation
{
"accessLocation":
{
"policy":"SPECIFIC_REGIONS",
"locations":
{"REGION_B":
{"region":"REGION_B"}
}
}
}
Reemplaza lo siguiente:
PROJECT_ID: El ID del proyecto.REGION_A: Es la región en la que se almacenan las instantáneas de alcance regional.REGION_B: Es una región permitida en la que se pueden restablecer las instantáneas de alcance regional. Puedes establecer varias regiones como ubicaciones de restablecimiento permitidas.
Edita las ubicaciones de restablecimiento de instantáneas permitidas
gcloud
Para ver las ubicaciones de restablecimiento permitidas para las instantáneas de un proyecto almacenado en
la región A, usa el
gcloud beta compute snapshot-settings describe comando:
gcloud beta compute snapshot-settings describe \
--project=PROJECT_ID \
--region=REGION_A
Para quitar la región B de la lista de ubicaciones de restablecimiento permitidas para las instantáneas
de un proyecto almacenado en la región A, usa
el gcloud beta compute snapshot-settings update comando:
gcloud beta compute snapshot-settings update \
--project=PROJECT_ID \
--access-location-policy=specific-regions \
--remove-access-locations=REGION_B \
--region=REGION_A
Reemplaza lo siguiente:
PROJECT_ID: El ID del proyecto.REGION_A: Es la región en la que se almacenan las instantáneas de alcance regional.REGION_B: Es la región en la que deseas quitar el acceso de restablecimiento para las instantáneas de alcance regional.
REST
Para ver las ubicaciones de restablecimiento permitidas para las instantáneas de un proyecto almacenado en
la región A, realiza una solicitud GET al
regionSnapshotSettings.get método:
GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION_A/snapshotSettings
Para quitar la región B de la lista de ubicaciones de restablecimiento permitidas para las instantáneas
de un proyecto almacenado en la región A, realiza una solicitud
PATCH al método regionSnapshotSettings.patch:
PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION_A/snapshotSettings?updateMask=accessLocation
{
"accessLocation":
{
"policy":"SPECIFIC_REGIONS",
"locations":
{"REGION_B":{}}
}
}
Reemplaza lo siguiente:
PROJECT_ID: El ID del proyecto.REGION_A: Es la región en la que se almacenan las instantáneas de alcance regional.REGION_B: Es la región en la que deseas quitar el acceso de restablecimiento para las instantáneas de alcance regional.