NAME
    gcloud beta filestore instances update - update a Filestore instance

SYNOPSIS
    gcloud beta filestore instances update (INSTANCE : --zone=ZONE) [--async]
        [--description=DESCRIPTION] [--location=LOCATION]
        [--performance=[max-iops=MAX-IOPS],[max-iops-per-tb=MAX-IOPS-PER-TB]]
        [--region=REGION] [--update-labels=[KEY=VALUE,...]]
        [--clear-labels | --remove-labels=[KEY,...]]
        [--disconnect-managed-ad
          | --managed-ad=[computer=COMPUTER],[domain=DOMAIN]]
        [[--file-share=[capacity=CAPACITY],
          [name=NAME],[nfs-export-options=NFS-EXPORT-OPTIONS]
          : --clear-nfs-export-options]]
        [--[no-]deletion-protection
          --deletion-protection-reason=DELETION_PROTECTION_REASON]
        [GCLOUD_WIDE_FLAG ...]

DESCRIPTION
    (BETA) Update a Filestore instance.

EXAMPLES
    The following command updates the Filestore instance NAME to change the
    description to "A new description."

        $ gcloud beta filestore instances update NAME \
            --description="A new description."

    The following command updates a Filestore instance named NAME to add the
    label "key1=value1" and remove any metadata with the label "key2".

        $ gcloud beta filestore instances update NAME \
            --update-labels=key1=value1 --remove-labels=key2

        $ gcloud beta filestore instances update NAME --zone=ZONE \
            --flags-file=FILE_PATH

    Example json configuration file:        {
        "--file-share":
        {
          "capacity": "102400",
          "name": "my_vol",
          "nfs-export-options": [
            {
              "access-mode": "READ_WRITE",
              "ip-ranges": [
                "10.0.0.0/29",
                "10.2.0.0/29"
              ],
              "squash-mode": "ROOT_SQUASH",
              "anon_uid": 1003,
              "anon_gid": 1003
            }
          ]
        }
        }

    The following command updates a Filestore instance named NAME to change the
    capacity to CAPACITY.

        $ gcloud beta filestore instances update NAME --project=PROJECT_ID \
            --zone=ZONE --file-share=name=VOLUME_NAME,capacity=CAPACITY

    The following command updates a Filestore instance named NAME to configure
    the max-iops-per-tb to MAX-IOPS-PER-TB.

        $ gcloud beta filestore instances update NAME --project=PROJECT_ID \
            --zone=ZONE --performance=max-iops-per-tb=MAX-IOPS-PER-TB

POSITIONAL ARGUMENTS
     Instance resource - The instance to update. The arguments in this group
     can be used to specify the attributes of this resource. (NOTE) Some
     attributes are not given arguments in this group but can be set in other
     ways.

     To set the project attribute:
      ◆ provide the argument instance on the command line with a fully
        specified name;
      ◆ provide the argument --project on the command line;
      ◆ set the property core/project.

     This must be specified.

       INSTANCE
          ID of the instance or fully qualified identifier for the instance.

          To set the instance attribute:
          ▸ provide the argument instance on the command line.

          This positional argument must be specified if any of the other
          arguments in this group are specified.

       --zone=ZONE
          The zone of the instance.

          To set the zone attribute:
          ▸ provide the argument instance on the command line with a fully
            specified name;
          ▸ provide the argument --zone on the command line;
          ▸ provide the argument region on the command line;
          ▸ provide the argument location on the command line;
          ▸ set the property filestore/zone;
          ▸ set the property filestore/region;
          ▸ set the property filestore/location.

FLAGS
     --async
        Return immediately, without waiting for the operation in progress to
        complete.

     --description=DESCRIPTION
        A description of the Cloud Filestore instance.

     --location=LOCATION
        Location of the Cloud Filestore instance/operation.

     --performance=[max-iops=MAX-IOPS],[max-iops-per-tb=MAX-IOPS-PER-TB]
        Performance configuration for the instance. This flag is used to
        configure the read IOPS provisioned for the instance. The instance's
        write IOPS and read/write throughputs will be derived from the
        configured read IOPS. For more information about the derived
        performance limits and default performance see:
        https://cloud.google.com/filestore/docs/performance. Must be one of:

            max-iops
              The number of IOPS to provision for the instance.
              MAX-IOPS must be in multiple of 1000 and in the supported IOPS
              range for the current capacity of the instance.
              For more details, see: https://cloud.google.com/filestore/docs/performance.

            max-iops-per-tb
              Is used for setting the max IOPS of the instance by
              specifying the IOPS per TB. When this parameter is used, the
              max IOPS are derived from the instance capacity:
              The instance max IOPS will be calculated by multiplying the
              capacity of the instance (TB) by MAX-IOPS-PER-TB, and rounding
              to the nearest 1000. The max IOPS will be changed
              dynamically based on the instance capacity.
              MAX-IOPS-PER-TB must be in the supported range of the instance.
              For more details, see: https://cloud.google.com/filestore/docs/performance.

        Examples:

        Configure an instance with max-iops performance:

            $ gcloud beta filestore instances update example-cluster \
                --performance=max-iops=17000

        Configure an instance with max-iops-per-tb performance:

            $ gcloud beta filestore instances update example-cluster \
                --performance=max-iops-per-tb=17000

     --region=REGION
        Region of the Cloud Filestore instance.

     --update-labels=[KEY=VALUE,...]
        List of label KEY=VALUE pairs to update. If a label exists, its value
        is modified. Otherwise, a new label is created.

        Keys must start with a lowercase character and contain only hyphens
        (-), underscores (_), lowercase characters, and numbers. Values must
        contain only hyphens (-), underscores (_), lowercase characters, and
        numbers.

     At most one of these can be specified:

       --clear-labels
          Remove all labels. If --update-labels is also specified then
          --clear-labels is applied first.

          For example, to remove all labels:

              $ gcloud beta filestore instances update --clear-labels

          To remove all existing labels and create two new labels, foo and baz:

              $ gcloud beta filestore instances update --clear-labels \
                --update-labels foo=bar,baz=qux

       --remove-labels=[KEY,...]
          List of label keys to remove. If a label does not exist it is
          silently ignored. If --update-labels is also specified then
          --update-labels is applied first.

     At most one of these can be specified:

       --disconnect-managed-ad
          Disconnect the instance from Managed Active Directory.

       --managed-ad=[computer=COMPUTER],[domain=DOMAIN]
          Managed Active Directory configuration for an instance. Specifies
          both the domain name and a computer name (unique to the domain) to be
          created by the filestore instance.

              domain
                 The desired domain full uri. i.e.:
                 projects/PROJECT/locations/global/domains/DOMAIN

              computer
                 The desired active directory computer name to be created by
                 the filestore instance when connecting to the domain.

     Parameters for file-share.

     --file-share=[capacity=CAPACITY],[name=NAME],[nfs-export-options=NFS-EXPORT-OPTIONS]
        File share configuration for an instance. Specifying both name and
        capacity is required.

         capacity
            The desired capacity of the volume in GB or TB units. If no
            capacity unit is specified, GB is assumed. Acceptable instance
            capacities for each tier are as follows:
            ▸ BASIC_HDD: 1TB-63.9TB in 1GB increments or its multiples.
            ▸ BASIC_SSD: 2.5TB-63.9TB in 1GB increments or its multiples.
            ▸ HIGH_SCALE_SSD: 10TB-100TB in 2.5TB increments or its
              multiples.
            ▸ ZONAL: 1TB-100TB:
              ▫ 1TB-9.75TB in 256GB increments or its multiples.
              ▫ 10TB-100TB in 2.5TB increments or its multiples.
            ▸ ENTERPRISE: 1TB-10TB in 256GB increments or its multiples.
            ▸ REGIONAL: 1TB-100TB:
              ▫ 1TB-9.75TB in 256GB increments or its multiples.
              ▫ 10TB-100TB in 2.5TB increments or its multiples.

         name
            The desired logical name of the volume.

         nfs-export-options
            The NfsExportOptions for the Cloud Filestore instance file share.
            Configuring NfsExportOptions is optional and can only be set using
            flags-file. Use the --flags-file flag to specify the path to a JSON
            or YAML configuration file that contains the required
            NfsExportOptions flags.

         ip-ranges
            A list of IPv4 addresses or CIDR ranges that are allowed to mount
            the file share. IPv4 addresses format: {octet 1}.{octet 2}.{octet
            3}.{octet 4}. CIDR range format: {octet 1}.{octet 2}.{octet
            3}.{octet 4}/{mask size}. Overlapping IP ranges are allowed for all
            tiers other than BASIC_HDD and BASIC_SSD. The limit of IP
            ranges/addresses for each FileShareConfig among all
            NfsExportOptions is 64 per instance.

         access-mode
            The type of access allowed for the specified IP-addresses or CIDR
            ranges. READ_ONLY: Allows only read requests on the exported file
            share. READ_WRITE: Allows both read and write requests on the
            exported file share. The default setting is READ_WRITE.

         squash-mode
            Enables or disables root squash for the specified IP addresses or
            CIDR ranges. NO_ROOT_SQUASH: Disables root squash to allow root
            access on the exported file share. ROOT_SQUASH. Enables root squash
            to remove root access on the exported file share. The default
            setting is NO_ROOT_SQUASH.

         anon_uid
            An integer that represents the user ID of anonymous users. Anon_uid
            may only be set when squash_mode is set to ROOT_SQUASH. If
            NO_ROOT_SQUASH is specified, an error will be returned. The default
            value is 65534.

         anon_gid
            An integer that represents the group ID of anonymous groups.
            Anon_gid may only be set when squash_mode is set to ROOT_SQUASH. If
            NO_ROOT_SQUASH is specified, an error will be returned. The default
            value is 65534.

         security-flavors
            A list of security flavors that are allowed to be used during mount
            command in NFSv4.1 filestore instances. The security flavors
            supported are:
              ▫ SECURITY_FLAVOR_UNSPECIFIED: SecurityFlavor not set. Defaults
                to AUTH_SYS.
              ▫ AUTH_SYS: The user's UNIX user-id and group-ids are passed in
                the clear.
              ▫ KRB5: The end-user authentication is done using Kerberos V5.
              ▫ KRB5I: KRB5 plus integrity protection (data packets are
                tamper proof).
              ▫ KRB5P: KRB5I plus privacy protection (data packets are tamper
                proof and encrypted).

         network
            The source VPC network for ip-ranges. Required for instances using
            Private Service Connect, optional otherwise. If provided, must be
            the same network specified in the network.name field.

            This flag argument must be specified if any of the other arguments
            in this group are specified.

     --clear-nfs-export-options
        Clears the NfsExportOptions. Must specify --file-share flag if
        --clear-nfs-export-options is specified.

     Deletion protection control options. When deletion protection is enabled,
     the instance cannot be deleted.

     --[no-]deletion-protection
        Enables deletion protection for the instance. Use --deletion-protection
        to enable and --no-deletion-protection to disable.

     --deletion-protection-reason=DELETION_PROTECTION_REASON
        The reason for enabling deletion protection for the instance.

GCLOUD WIDE FLAGS
    These flags are available to all commands: --access-token-file, --account,
    --billing-project, --configuration, --flags-file, --flatten, --format,
    --help, --impersonate-service-account, --log-http, --project, --quiet,
    --trace-token, --user-output-enabled, --verbosity.

    Run $ gcloud help for details.

NOTES
    This command is currently in beta and might change without notice. These
    variants are also available:

        $ gcloud filestore instances update

        $ gcloud alpha filestore instances update

