Crea una instancia de Filestore con gcloud CLI

En esta guía de inicio rápido, se muestra cómo comenzar a trabajar rápidamente con Filestore usando Google Cloud CLI. En esta guía de inicio rápido, aprenderás a realizar lo siguiente:

  • Crear una instancia de Filestore
  • Activar el archivo compartido desde esa instancia en una máquina virtual de cliente de Compute Engine.
  • Crear un archivo en el archivo compartido activado.
  • Eliminar la instancia de Filestore.

Antes de comenzar

  1. Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
  2. Install the Google Cloud CLI.

  3. Si usas un proveedor de identidad externo (IdP), primero debes acceder a la gcloud CLI con tu identidad federada.

  4. Para inicializar gcloud CLI, ejecuta el siguiente comando:

    gcloud init
  5. Create or select a Google Cloud project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator role (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.
    • Create a Google Cloud project:

      gcloud projects create PROJECT_ID

      Replace PROJECT_ID with a name for the Google Cloud project you are creating.

    • Select the Google Cloud project that you created:

      gcloud config set project PROJECT_ID

      Replace PROJECT_ID with your Google Cloud project name.

  6. Si usas un proyecto existente en esta guía, verifica que tengas los permisos necesarios para completarla. Si creaste un proyecto nuevo, ya tienes los permisos necesarios.

  7. Verify that billing is enabled for your Google Cloud project.

  8. Enable the Filestore API:

    Roles required to enable APIs

    To enable APIs, you need the Service Usage Admin IAM role (roles/serviceusage.serviceUsageAdmin), which contains the serviceusage.services.enable permission. Learn how to grant roles.

    gcloud services enable file.googleapis.com
  9. Install the Google Cloud CLI.

  10. Si usas un proveedor de identidad externo (IdP), primero debes acceder a la gcloud CLI con tu identidad federada.

  11. Para inicializar gcloud CLI, ejecuta el siguiente comando:

    gcloud init
  12. Create or select a Google Cloud project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator role (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.
    • Create a Google Cloud project:

      gcloud projects create PROJECT_ID

      Replace PROJECT_ID with a name for the Google Cloud project you are creating.

    • Select the Google Cloud project that you created:

      gcloud config set project PROJECT_ID

      Replace PROJECT_ID with your Google Cloud project name.

  13. Si usas un proyecto existente en esta guía, verifica que tengas los permisos necesarios para completarla. Si creaste un proyecto nuevo, ya tienes los permisos necesarios.

  14. Verify that billing is enabled for your Google Cloud project.

  15. Enable the Filestore API:

    Roles required to enable APIs

    To enable APIs, you need the Service Usage Admin IAM role (roles/serviceusage.serviceUsageAdmin), which contains the serviceusage.services.enable permission. Learn how to grant roles.

    gcloud services enable file.googleapis.com
  16. Roles obligatorios

    Si quieres obtener los permisos que necesitas para completar esta guía de inicio rápido, pídele a tu administrador que te otorgue los siguientes roles de IAM en tu proyecto:

    Para obtener más información sobre cómo otorgar roles, consulta Administra el acceso a proyectos, carpetas y organizaciones.

    También puedes obtener los permisos necesarios a través de roles personalizados o cualquier otro rol predefinido.

    Cuando completes las tareas que se describen en este documento, podrás borrar los recursos que creaste para evitar que se te siga facturando. Para obtener más información, consulta Realiza una limpieza.

    Crea una VM de Compute Engine

    Linux

    1. Create a Compute Engine instance. Configure the instance as follows:
      • Name the instance nfs-client.
      • Establece la marca --zone en us-central1-c.
      • Establece la marca --image-project en debian-cloud.
      • Establece la marca --image-family en debian-11.
      • Establece la marca --tags en http-server,.
      • gcloud compute instances create nfs-client --zone=us-central1-c --image-project=debian-cloud --image-family=debian-11 --tags=http-server,

    Windows

    1. Create a Compute Engine instance. Configure the instance as follows:
      • Name the instance nfs-client.
      • Establece la marca --zone en us-central1-c.
      • Establece la marca --image-project en windows-cloud.
      • Establece la marca --image-family en windows-2012-r2.
      • Establece la marca --tags en http-server,http-server,.
      • gcloud compute instances create nfs-client --zone=us-central1-c --image-project=windows-cloud --image-family=windows-2012-r2 --tags=http-server,http-server,

    Crea una instancia de Filestore

    En esta guía de inicio rápido, se muestra cómo crear una instancia en el nivel de servicio regional con el rendimiento personalizado habilitado. Para obtener detalles sobre cómo crear instancias, consulta Crea una instancia.

    1. Crear una instancia de Filestore Configúrala como se indica a continuación:

      • Asígnale el nombre nfs-server a la instancia.
      • Establece la marca --region en us-central1.
      • Establece la marca --tier en REGIONAL.
      • Establece la marca --performance en max-iops-per-tb=17000.

      • Establece la marca --file-share en name="vol1",capacity=1TB.

      • Establece la marca --network en name="default".

        gcloud filestore instances create nfs-server --region=us-central1 --tier=REGIONAL --performance=max-iops-per-tb=17000 --file-share=name="vol1",capacity=1TB --network=name="default"
    2. Obtén información sobre la instancia de Filestore que acabas de crear:

        gcloud filestore instances describe nfs-server --region=us-central1 

      El comando muestra un resultado similar al siguiente:

          createTime: '2025-02-12T09:15:08.163246004Z'
          customPerformanceSupported: true
          fileShares:
           -capacityGb: '1024'
              name: vol1
          name: projects/yourproject/locations/us-central1/instances/nfs-server
          networks:
          -connectMode: DIRECT_PEERING
            ipAddresses:
             - 10.0.0.2
            network: default
            reservedIpRange: 10.0.0.2/26
          performanceConfig:
            iopsPerTb:
              maxIopsPerTb: '17000'
          performanceLimits:
            maxIops: '17000'
            maxReadIops: '17000'
            maxReadThroughputBps: '417792000'
            maxWriteIops: '5100'
            maxWriteThroughputBps: '139264000'
          protocol: NFS_V3
          state: READY
          tier: REGIONAL

    Copia la dirección IP de la instancia para usarla cuando actives el recurso compartido de archivos. Para esta guía de inicio rápido, usamos la dirección IP 10.0.0.2.

    Active el archivo compartido de Filestore en la instancia nfs-client

    Linux

    1. Establish an SSH connection to the nfs-client instance:
      gcloud compute ssh nfs-client

    1. Ejecuta los siguientes comandos en la ventana de la terminal de nfs-client para instalar NFS:

      sudo apt-get -y update &&
      sudo apt-get -y install nfs-common
      
    2. Cree un directorio de activación en la instancia nfs-client para el archivo compartido de Filestore:

      sudo mkdir /mnt/test
      
    3. Activa el recurso compartido en la instancia nfs-client con el comando mount especificando la dirección IP de la instancia de Filestore, el nombre del recurso compartido y el directorio de activación en el que se realizará la activación:

      sudo mount MOUNT-POINT-DIRECTORY /mnt/test
      

      Donde:

      MOUNT-POINT-DIRECTORY es la ruta al directorio donde se activa el archivo compartido de Filestore. Por ejemplo: 10.0.0.2:/vol1.

    4. Opcional: confirme que el archivo compartido de Filestore esté activado:

      df -h --type=nfs

    5. Haga que el archivo compartido sea accesible cambiando sus permisos:

      sudo chmod go+rw /mnt/test
      

    Windows

    Accede a la instancia nfs-client y abre un símbolo del sistema como administrador

    1. Crea una cuenta y establece una contraseña inicial para la instancia nfs-client:

      gcloud compute reset-windows-password nfs-client
      
    2. Configura la instancia para habilitar la conexión a los puertos en serie:

      gcloud compute instances add-metadata nfs-client --metadata=serial-port-enable=1
      
    3. Ingresa a una sesión interactiva:

      gcloud compute connect-to-serial-port nfs-client --port=2
      
    4. Cuando se te solicite SAC>, crea un canal nuevo:

      cmd
      

      Se crea un canal con el nombre Cmd0001.

    5. Conéctate al canal:

      ch -sn Cmd0001
      
    6. Ingresa el nombre de usuario y la contraseña de la instancia nfs-client y deja el campo Domain en blanco. Estás conectado a la interfaz Command Prompt de la instancia nfs-client.

    Instalar cliente de NFS

    1. En Command Prompt de nfs-client, cambie a Windows PowerShell:

      powershell
      
    2. Instala el cliente de NFS:

      Install-WindowsFeature -Name NFS-Client
      
    3. Reinicia la instancia nfs-client cuando se te solicite:

      restart-computer
      
    4. En el mensaje de SAC>, espera a que aparezca la siguiente notificación:

      EVENT: The CMD command is now available.

      Luego, ejecuta los comandos cmd y ch -sn como se indicó antes para acceder y volver a conectarte a la instancia nfs-client.

    Configure el ID de usuario utilizado por el cliente de NFS

    1. En el símbolo del sistema, ejecuta powershell para cambiar a WindowsPowerShell.
    2. En PowerShell, ejecuta los siguientes comandos para crear dos entradas de registro nuevas, AnonymousUid y AnonymousGid:

      New-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\ClientForNFS\CurrentVersion\Default" `
          -Name "AnonymousUid" -Value "0" -PropertyType DWORD
      
      New-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\ClientForNFS\CurrentVersion\Default" `
          -Name "AnonymousGid" -Value "0" -PropertyType DWORD
      
    3. Reinicie el servicio del cliente de NFS:

      nfsadmin client stop
      
      nfsadmin client start
      

    Asigne el archivo compartido vol1 a la instancia nfs-client

    1. Salga de PowerShell:

      exit
      
    2. Desde Command Prompt, activa el archivo compartido en la instancia nfs-client con el comando mount especificando la dirección IP de la instancia de Filestore, el nombre del archivo compartido y la letra de unidad en la que se realizará la activación:

      mount -o mtype=hard 10.0.0.2:/vol1 z:
      

    Crear un archivo en el archivo compartido activado

    Linux

    1. En la ventana de la terminal de nfs-client, ejecuta el siguiente comando para crear un archivo llamado testfile:

      echo 'This is a test' > /mnt/test/testfile
      
    2. Confirme que el archivo se creó ejecutando el siguiente comando y verificando que testfile está en el contenido del directorio mostrado:

      ls /mnt/test
      

    Windows

    1. En la ventana del símbolo del sistema de la instancia nfs-client, crea un archivo llamado testfile:

      echo 'This is a test' > Z:\testfile
      
    2. Para confirmar que se creó el archivo, ejecuta el siguiente comando:

      dir Z:
      

      y verificar que testfile está en el contenido del directorio mostrado.

    Realiza una limpieza

    Para evitar que se apliquen cargos a tu cuenta de Google Cloud por los recursos que usaste en esta página, borra el proyecto de Google Cloud que tiene los recursos.

    Borra el Google Cloud proyecto

      Delete a Google Cloud project:

      gcloud projects delete PROJECT_ID

    Borra la instancia de Filestore

    Borra la instancia nfs-server:

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

    Borra la instancia de Compute Engine

    Borra la instancia:
    gcloud compute instances delete nfs-client

    ¿Qué sigue?