Crea una instancia en una red de VPC compartida en proyectos de servicio


En este instructivo, se explica el proceso de creación de una instancia de Filestore en una red de VPC compartida desde un proyecto de servicio.

Puedes crear instancias de Filestore en una red de VPC compartida en el proyecto host o en uno de sus proyectos de servicio asociados. Cuando se crea una instancia en el proyecto host, puedes seleccionar la red de VPC compartida como normal y los clientes del proyecto de servicio pueden conectarse a la instancia. Sin embargo, si deseas crear la instancia en un proyecto de servicio, primero debes habilitar el acceso privado a los servicios en la red de VPC compartida desde el proyecto host.

Objetivos

  • Habilita el acceso privado a servicios en la red de VPC compartida.
  • Crea una instancia en la red de VPC compartida.
  • Activa la instancia.

Costos

En este documento, usarás los siguientes componentes facturables de Google Cloud:

Para generar una estimación de costos en función del uso previsto, usa la calculadora de precios. Es posible que los usuarios nuevos de Google Cloud califiquen para obtener una prueba gratuita.

Cuando finalices las tareas que se describen en este documento, puedes borrar los recursos que creaste para evitar que continúe la facturación. Para obtener más información, consulta Cómo realizar una limpieza.

Antes de comenzar

  1. Make sure that billing is enabled for your Google Cloud project.

  2. Crea una red de VPC compartida con un proyecto host y un proyecto de servicio conectado.
  3. Enable the Filestore and Service Networking APIs.

    Enable the APIs

Habilita el acceso privado a servicios en la red de VPC compartida

Para crear una instancia de Filestore en un proyecto de servicio que use una red de VPC compartida, la red de VPC compartida debe tener habilitado el acceso privado a servicios (PSA). Consulta Configura un rango de direcciones IP reservadas para conocer los requisitos específicos de Filestore.

Verifica si el acceso privado a servicios está habilitado para la red de VPC compartida

Verifica si el acceso privado a servicios ya está habilitado para la red de VPC compartida mediante uno de los siguientes métodos:

Consola de Google Cloud

  1. En la consola de Google Cloud, ve a la página de instancias de Filestore.

    Vaya a la página de instancias de Filestore

  2. Haga clic en Crear instancia.

  3. Selecciona la red de VPC compartida que deseas usar.

  4. Haz clic en Opciones avanzadas de redes.

  5. En la sección Conexión de acceso a servicios privados se indica si el acceso privado a servicios está habilitado.

gcloud CLI

Ejecuta el siguiente comando services vpc-peerings list:

gcloud beta services vpc-peerings list \
    --network=SHARED_VPC_NAME \
    --project=HOST_PROJECT_ID

Reemplaza lo siguiente:

  • SHARED_VPC_NAME por el nombre de la red de VPC compartida que deseas usar para tu instancia de Filestore
  • HOST_PROJECT_ID por el ID del proyecto host que contiene la red de VPC compartida

Si el acceso privado a los servicios ya está habilitado, la respuesta muestra que se estableció un intercambio de tráfico para servicenetworking-googleapis-com:

network: projects/PROJECT_NUMBER/global/networks/SHARED_VPC_NAME
peering: servicenetworking-googleapis-com
reservedPeeringRanges: RANGES

Si el acceso privado a servicios está habilitado para la red de VPC compartida, puedes comenzar a crear instancias de Filestore en él. De lo contrario, primero debes habilitar el acceso privado a los servicios.

Habilita el acceso privado a los servicios

Debes tener la función de propietario (roles/owner), editor (roles/editor) o administrador de la administración de redes (roles/networkmanagement.admin) para crear rangos de direcciones IP asignados y administrar conexiones privadas. Si no tienes estos privilegios, comunícate con tu administrador de red. Para obtener más información, consulta Información sobre las funciones.

Habilita el acceso privado a los servicios en una red de VPC compartida mediante uno de los siguientes métodos:

Consola de Google Cloud

Reserva un rango de direcciones IP en la red de VPC compartida para los servicios administrados de Google

  1. Ve a la página Redes de VPC en la consola de Google Cloud.

    Ir a la página Redes de VPC

  2. Selecciona el proyecto host que contiene la red de VPC compartida que deseas usar.

  3. Haz clic en el nombre de la red de VPC compartida en la que deseas crear tu instancia de Filestore.

  4. Selecciona la pestaña Conexión privada a servicios.

  5. En la pestaña Conexión privada a servicios, selecciona la pestaña Rangos de IP asignados para servicios.

  6. Haz clic en Asigna rangos de IP y configúralos de la siguiente manera:

    • Name: google-service-range
    • Descripción: Peering range for Google managed services
    • Rango de IP:

      • Selecciona Automático.
      • En el campo de texto, ingresa 20 para el prefijo. Todos los servicios administrados de Google Cloud usan este rango, por lo que, en la práctica, es posible que necesites algo más grande. Las instancias de nivel básico requieren un prefijo de /29, y las instancias de nivel zonal con un rango de capacidad más alto (antes, SSD de escala alta) y las instancias de nivel zonal con un rango de capacidad más bajo requieren un prefijo de /26.
  7. Haz clic en Asignar para crear un rango asignado.

Crea una conexión privada para la red de VPC compartida y la red de servicios administrados de Google

  1. Ve a la página Redes de VPC en la consola de Google Cloud.

    Ir a la página Redes de VPC

  2. Selecciona el proyecto host que contiene la red de VPC compartida que deseas usar.

  3. Haz clic en el nombre de la red de VPC compartida en la que deseas crear tu instancia de Filestore.

  4. Selecciona la pestaña Conexión privada a servicios.

  5. En la pestaña Conexión privada a servicios, selecciona la pestaña Conexiones privadas a los servicios.

  6. Haz clic en Crear conexión (Create connection).

  7. En Asignación designada, selecciona google-service-range.

  8. Haz clic en Conectar para crear la conexión.

gcloud CLI

  1. Ejecuta el siguiente comando compute addresses create para reservar un rango de direcciones IP en la red de VPC compartida para los servicios administrados de Google:

    gcloud compute addresses create google-service-range \
        --global \
        --purpose=VPC_PEERING \
        --prefix-length=PREFIX \
        --description="Peering range for Google managed services" \
        --network=SHARED_VPC_NAME \
        --project=PROJECT_ID
    

    Reemplaza lo siguiente:

    • PREFIX con una longitud de prefijo. Las instancias de nivel básico requieren un prefijo /29 y las instancias de nivel zonal requieren un prefijo /26. Sin embargo, todos los servicios administrados de Google Cloud usan este rango. Si planeas usar varias instancias de Filestore o algún otro servicio administrado de Google Cloud, necesitas un prefijo más grande, por ejemplo, /20.
    • SHARED_VPC_NAME por el nombre de la red de VPC compartida en la que deseas crear tu instancia de Filestore
    • PROJECT_ID por el ID del proyecto host que contiene la red de VPC compartida
  2. Ejecuta el comando services vpc-peerings connect para crear una conexión privada a la red de VPC compartida y la red de servicios administrados de Google:

    gcloud services vpc-peerings connect \
        --service=servicenetworking.googleapis.com \
        --ranges=google-service-range \
        --network=SHARED_VPC_NAME \
        --project=HOST_PROJECT_ID
    

    Reemplaza lo siguiente:

    • SHARED_VPC_NAME por el nombre de la red de VPC compartida en la que deseas crear tu instancia de Filestore
    • HOST_PROJECT_ID por el ID del proyecto host que contiene la red de VPC compartida

    El comando inicia una operación de larga duración y muestra un nombre de operación.

  3. Verifica si la operación se realizó correctamente con el comando services vpc-peerings operations describe:

    gcloud services vpc-peerings operations describe \
        --name=OPERATION_NAME
    

    Reemplaza OPERATION_NAME por el nombre de la operación que se mostró en el paso anterior.

Si deseas obtener más información para asignar rangos de direcciones IP y crear conexiones privadas, consulta Configura el acceso privado a los servicios.

Habilita los Controles del servicio de VPC (opcional)

Una vez habilitado el acceso privado a servicios, puedes habilitar los Controles del servicio de VPC de forma opcional. Para ello, ejecuta el comando services vpc-peerings enable-vpc-service-controls:

gcloud beta services vpc-peerings enable-vpc-service-controls \
    --network=SHARED_VPC_NAME \
    --project=HOST_PROJECT_ID \
    --service=servicenetworking.googleapis.com

Reemplaza lo siguiente:

  • SHARED_VPC_NAME por el nombre de la red de VPC compartida en la que deseas crear tu instancia de Filestore
  • HOST_PROJECT_ID por el ID del proyecto host que contiene la red de VPC compartida

Para obtener más información sobre el uso de Filestore con los Controles del servicio de VPC, consulta Protege instancias con un perímetro de servicio.

Crea una instancia de Filestore en la red de VPC compartida

Una vez que tu red de VPC compartida tiene habilitado el acceso privado a los servicios, puedes comenzar a crear instancias de Filestore en ella desde un proyecto de servicio.

Consola de Google Cloud

  1. En la consola de Google Cloud, ve a la página de instancias de Filestore.

    Vaya a la página de instancias de Filestore

  2. Haz clic en Crear instancia y configúrala como se indica a continuación:

    • Establece el ID de instancia como nfs-server.
    • Configura el Tipo de instancia como Básico.
    • Configura Tipo de almacenamiento como HDD.
    • Configura la Asigna la capacidad a 1TB.
    • Establece la Región en us-central1 y la Zona en us-central1-c.
    • Establece la red de VPC en la red de VPC compartida, que aparece en el formato “projects/HOST_PROJECT_ID/global/networks/SHARED_VPC_NAME”.
    • Configura el Nombre del archivo compartido como vol1.
    • Configura el Rango de IP asignado como Usar un rango de IP asignado automáticamente.
    • Configura Controles de acceso como Otorgar acceso a todos los clientes.
  3. Haz clic en Crear.

gcloud CLI

Ejecuta el siguiente comando instances create:

gcloud filestore instances create nfs-server \
    --project=SERVICE_PROJECT_ID \
    --zone=us-central1-c \
    --tier=BASIC_HDD \
    --file-share=name="vol1",capacity=1TiB \
    --network=name="projects/HOST_PROJECT_ID/global/networks/SHARED_VPC_NAME",connect-mode=PRIVATE_SERVICE_ACCESS

Reemplaza lo siguiente:

  • SERVICE_PROJECT_ID por el ID del proyecto de servicio en el que deseas crear una instancia de Filestore
  • HOST_PROJECT_ID por el ID del proyecto host que contiene la red de VPC compartida
  • SHARED_VPC_NAME por el nombre de la red de VPC compartida en la que deseas crear tu instancia de Filestore

Opcional: Importa rutas de subred

Si tus instancias de Filestore usan IP públicas (direcciones IP que no son RFC 1918) y decides habilitar PSA, debes importar las rutas de subred de IP pública de la instancia a la red de VPC compartida. Para ello, actualiza el intercambio de tráfico de VPC de la red de servicios para permitir la importación de rutas de subred con IP públicas. Para obtener más información, consulta Actualiza una conexión de intercambio de tráfico.

Activa la instancia en un cliente de proyecto de servicio

Una vez que creas una instancia de Filestore en una red de VPC compartida, puedes activar esa instancia en cualquier cliente que esté en la misma red. Para obtener instrucciones sobre la activación, consulta Activa los archivos compartidos en clientes de Compute Engine.

Limpia

Para evitar que se apliquen cargos a tu cuenta de Google Cloud por los recursos usados en este instructivo, borra el proyecto que contiene los recursos o conserva el proyecto y borra los recursos individuales.

Cómo borrar la instancia de Filestore

Consola de Google Cloud

  1. En la consola de Google Cloud, ve a la página Instancias de Filestore.

    Vaya a la página de instancias de Filestore

  2. Haz clic en el ID de la instancia nfs-server para abrir la página de detalles de la instancia.

  3. Haz clic en Borrar .

  4. Escribe el ID de la instancia cuando se te solicite.

  5. Haz clic en Borrar.

gcloud CLI

Borra la instancia de nfs-server con el comando instances delete:

gcloud filestore instances delete nfs-server --zone=us-central1-c

¿Qué sigue?