Editar instancias

En esta página se explica cómo editar una instancia de Filestore mediante laGoogle Cloud consola o la CLI de gcloud.

Una vez creada, puede modificar una instancia de Filestore de las siguientes formas:

Para obtener información sobre cómo escalar la capacidad, consulta Escalar la capacidad.

Algunas especificaciones, como la dirección IP de la instancia, son inmutables.

Instrucciones para editar una instancia

Google Cloud consola

Para editar instancias de Filestore con la consola, ve a la página Editar instancia, donde puedes editar la descripción de la instancia, gestionar las reglas de control de acceso basado en IP y escalar el rendimiento del recurso compartido de archivos: Google Cloud

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

    Ve a la página Instancias de Filestore.

  2. Haga clic en el ID de instancia de la instancia que quiera editar.

  3. En la página Detalles de la instancia, haz clic en Editar para ir a la página Editar instancia.

  4. Cambia la descripción de la instancia, las reglas de control de acceso basadas en IP y la capacidad según sea necesario. Para obtener más información, consulta el artículo sobre cómo crear instancias.

  5. Haz clic en Guardar.

gcloud

Antes de empezar

Para usar la CLI de gcloud, debes instalar la CLI de gcloud o usar Cloud Shell que está integrado en la consola de Google Cloud :

Ir a la Google Cloud consola

Comando gcloud para editar una instancia

Para editar una instancia de Filestore, ejecuta el comando instances update. Si necesitas actualizar las reglas de configuración del control de acceso basado en IP, debes usar la marca --flags-file y especificar un archivo de configuración JSON. Si eliges este método, no tienes que usar la marca --file-share porque ya está incluida en el archivo de configuración JSON.

gcloud filestore instances update INSTANCE_ID
    --[project="PROJECT_ID"]
    --[location=LOCATION]
    --[performance=PERFORMANCE] \
    --[file-share=name="FILE_SHARE_NAME",CAPACITY=FILE_SHARE_SIZE]
    --[description="DESCRIPTION"]
    --[flags-file=FILE_NAME.json]

donde:

  • INSTANCE_ID es el ID de instancia de la instancia de Filestore que quieres editar.
  • PROJECT_ID es el ID del proyecto que contiene la instancia de Filestore. Google Cloud Puedes omitir esta marca si la instancia de Filestore está en el proyecto gcloudpredeterminado. Para definir el proyecto predeterminado, ejecuta el siguiente comando:

    gcloud config set project project-id
    
  • LOCATION es la ubicación en la que reside la instancia de Filestore. En el caso de las instancias regionales y de empresa, especifica una región. En el resto de las instancias, especifica una zona. Ejecuta el comando gcloud filestore zones list para obtener una lista de las zonas admitidas. Puedes omitir esta marca si la instancia de Filestore está en la zona predeterminada gcloud. Puedes definir la zona predeterminada ejecutando el siguiente comando:

    gcloud config set filestore/zone zone
    
  • PERFORMANCE es la configuración de rendimiento que se usa para especificar ajustes de rendimiento personalizados independientemente de la capacidad elegida.

    Solo puedes usar una de las siguientes opciones:

    • max-iops-per-tb especifica una tasa de IOPS por TiB que se ajusta de forma lineal a la capacidad de la instancia.
    • max-iops especifica una tasa de IOPS fija que no se escala con la capacidad de la instancia.

      El formato es el siguiente:

      --performance=max-iops-per-tb=17000
      
  • FILE_SHARE_NAME es el nombre del recurso compartido de archivos que se sirve desde la instancia de Filestore. Los nombres de los recursos compartidos de archivos no se pueden cambiar después de crear la instancia.

  • FILE_SHARE_SIZE es el nuevo tamaño que quieres asignar al archivo compartido. Puedes especificar el tamaño del recurso compartido de archivos con números enteros mediante GiB (valor predeterminado) o TiB.

    Para ver la cuota disponible, ve a la página Cuotas de la Google Cloud consola:

    Ir a la página Cuotas

  • DESCRIPTION es la descripción opcional de la instancia de Filestore.

  • FILE_NAME es el nombre del archivo de configuración JSON para el control de acceso basado en IP.

    Ejemplo de archivo de configuración JSON:

     {
    "--file-share":
      {
        "capacity": "4096",
        "name": "my_vol",
        "nfs-export-options": [
          {
            "access-mode": "READ_WRITE",
            "ip-ranges": [
              "10.0.0.0",
              "10.2.0.0"
            ],
            "squash-mode": "ROOT_SQUASH",
            "anon_uid": 1003,
            "anon_gid": 1003
          },
           {
            "access-mode": "READ_ONLY",
            "ip-ranges": [
              "10.0.1.0/28"
            ],
            "squash-mode": "NO_ROOT_SQUASH"
          }
        ],
      }
    }
    

    donde:

    • ip-ranges es la dirección IP o el intervalo de direcciones IP al que se va a conceder acceso. Puede especificar varias direcciones o intervalos de IP separándolos con comas. Solo los siguientes niveles de servicio admiten la configuración de intervalos de direcciones IP superpuestos:
      • Por zonas
      • Regional
      • Empresa
    • access-mode es el nivel de acceso que se va a conceder a los clientes cuya dirección IP esté dentro de ip-range. Puede tener los valores READ_WRITE o READ_ONLY. El valor predeterminado es READ_WRITE.
    • squash-mode puede tener los valores ROOT_SQUASH o NO_ROOT_SQUASH. ROOT_SQUASH elimina el acceso de nivel raíz a los clientes cuya dirección IP se encuentre en ip-range, mientras que NO_ROOT_SQUASH habilita el acceso raíz. El valor predeterminado es NO_ROOT_SQUASH.
    • anon_uid es el valor del ID de usuario que quieres asignar a anon_uid. El valor predeterminado es 65534.
    • anon_gid es el valor del ID de grupo que quiere asignar a anon_gid. El valor predeterminado es 65534.
Ejemplo

En el siguiente ejemplo se actualiza la instancia nfs-server aumentando el tamaño del archivo compartido a 3 TiB.

    gcloud filestore instances update nfs-server --zone=us-central1-c --file-share=name="vol1",capacity=3TiB
  ```

API REST

  1. Tener instalada e inicializadala CLI de gcloud, que te permite generar un token de acceso para el encabezado Authorization.

  2. Usa cURL para llamar a la API Filestore:

    curl --request PATCH \
        'https://file.googleapis.com/v1/projects/PROJECT/locations/LOCATION/instances?instanceId=NAME?updateMask=performanceConfig%2CdeletionProtectionReason%2CdeletionProtectionEnabled&key=YOUR_API_KEY' \
        --header "Authorization: Bearer $(gcloud auth print-access-token)" \
        --header 'Accept: application/json' \
        --header 'Content-Type: application/json' \
        --data '{
                "tier":"TIER",
                "networks":[
                    {
                    "network":"NETWORK"
                    }
                  ],
                "performanceConfig": {"PERFORMANCE"}
                "fileShares":[
                  {"capacityGb":CAPACITY,"name":"SHARE_NAME"}
                  ],
                "deletionProtectionEnabled": true,
                "deletionProtectionReason": "PROTECTION_REASON"}' \
        --compressed
    
    

    Donde:

    • PROJECT es el nombre del proyecto en el que se ubicará tu instancia. Por ejemplo, my-genomics-project.
    • LOCATION es la ubicación en la que se alojará la instancia. Por ejemplo, us-east1 o us-central1-a.
    • NAME es el nombre de la instancia que quieres crear. Por ejemplo, my-genomics-instance.
    • PERFORMANCE es la configuración de rendimiento que se usa para especificar ajustes de rendimiento personalizados.

      Solo puedes usar una de las opciones proporcionadas.

      • iopsPerTB permite un rendimiento personalizado con una tasa de IOPS definida por el usuario que se adapta a la capacidad de la instancia. Para definir las IOPS por TiB, usa el campo maxIopsPerTb.
      • fixedIops permite personalizar el rendimiento con una tasa de IOPS fija que no se escala con la capacidad de la instancia. Para definir un valor de IOPS fijo, usa el campo maxIops.

        El formato es el siguiente:

        "performanceConfig": {
            "iopsPerTb" : {
                "maxIopsPerTb":17000
            }
          }
        
    • CAPACITY es el tamaño, en GiB, que quieres asignar a la instancia. Por ejemplo, 1024.

    • SHARE_NAME es el nombre del recurso compartido de archivos. Por ejemplo, vol1.

    • PROTECTION_REASON Si elige usar la marca deletionProtectionEnabled, puede añadir una nota sobre el ajuste. Para añadir la nota, usa la marca opcional deletionProtectionReason e incluye una descripción de la justificación del ajuste que has elegido. Por ejemplo, "Todos los datos genómicos deben cumplir las políticas actuales de la organización". Para obtener más información, consulta Protección contra eliminación.

    Ejemplo

    En el siguiente ejemplo se actualiza la instancia nfs-server reduciendo la relación IOPS por TiB a 12000.

    curl --request PATCH \
        'https://file.googleapis.com/v1/projects/my-project/locations/us-central1/instances?instanceId=nfs-server?updateMask=performanceConfig%2CdeletionProtectionReason&key=12334fr232' \
        --header "Authorization: Bearer $(gcloud auth print-access-token)" \
        --header 'Accept: application/json' \
        --header 'Content-Type: application/json' \
        --data '{
                  "performanceConfig":
                    {
                      "iopsPerTb":
                        {
                          "maxIopsPerTb":12000
                        }
                    },
                  "deletionProtectionReason":"Deletion+not+allowed"}' \
        --compressed
    
    

Siguientes pasos