Updates the metadata and configuration of a specific Redis instance. Completed longrunning.Operation will contain the new instance object in the response field. The returned operation is automatically deleted after a few hours, so there is no need to call DeleteOperation.

Scopes

You will need authorization for the https://www.googleapis.com/auth/cloud-platform scope to make a valid call.

If unset, the scope for this method defaults to https://www.googleapis.com/auth/cloud-platform. You can set the scope for this method like this: redis1 --scope <scope> projects locations-instances-patch ...

Required Scalar Argument

  • <name> (string)
    • Required. Unique name of the resource in this scope including project and location using the form: projects/{project_id}/locations/{location_id}/instances/{instance_id} Note: Redis instances are managed and addressed at regional level so location_id here refers to a GCP region; however, users may choose which specific zone (or collection of zones for cross-zone instances) an instance should be provisioned in. Refer to location_id and alternative_location_id fields for more details.

Required Request Value

The request value is a data-structure with various fields. Each field may be a simple scalar or another data-structure. In the latter case it is advised to set the field-cursor to the data-structure's field to specify values more concisely.

For example, a structure like this:

Instance:
  alternative-location-id: string
  auth-enabled: boolean
  authorized-network: string
  available-maintenance-versions: [string]
  connect-mode: string
  create-time: string
  current-location-id: string
  customer-managed-key: string
  display-name: string
  host: string
  labels: { string: string }
  location-id: string
  maintenance-policy:
    create-time: string
    description: string
    update-time: string
  maintenance-schedule:
    can-reschedule: boolean
    end-time: string
    schedule-deadline-time: string
    start-time: string
  maintenance-version: string
  memory-size-gb: integer
  name: string
  persistence-config:
    persistence-mode: string
    rdb-next-snapshot-time: string
    rdb-snapshot-period: string
    rdb-snapshot-start-time: string
  persistence-iam-identity: string
  port: integer
  read-endpoint: string
  read-endpoint-port: integer
  read-replicas-mode: string
  redis-configs: { string: string }
  redis-version: string
  replica-count: integer
  reserved-ip-range: string
  satisfies-pzi: boolean
  satisfies-pzs: boolean
  secondary-ip-range: string
  state: string
  status-message: string
  suspension-reasons: [string]
  tier: string
  transit-encryption-mode: string

can be set completely with the following arguments which are assumed to be executed in the given order. Note how the cursor position is adjusted to the respective structures, allowing simple field names to be used most of the time.

  • -r . alternative-location-id=stet
    • Optional. If specified, at least one node will be provisioned in this zone in addition to the zone specified in location_id. Only applicable to standard tier. If provided, it must be a different zone from the one provided in [location_id]. Additional nodes beyond the first 2 will be placed in zones selected by the service.
  • auth-enabled=false
    • Optional. Indicates whether OSS Redis AUTH is enabled for the instance. If set to "true" AUTH is enabled on the instance. Default value is "false" meaning AUTH is disabled.
  • authorized-network=elitr
    • Optional. The full name of the Google Compute Engine network to which the instance is connected. If left unspecified, the default network will be used.
  • available-maintenance-versions=lorem
    • Optional. The available maintenance versions that an instance could update to.
    • Each invocation of this argument appends the given value to the array.
  • connect-mode=diam
    • Optional. The network connect mode of the Redis instance. If not provided, the connect mode defaults to DIRECT_PEERING.
  • create-time=no
    • Output only. The time the instance was created.
  • current-location-id=ipsum
    • Output only. The current zone where the Redis primary node is located. In basic tier, this will always be the same as [location_id]. In standard tier, this can be the zone of any node in the instance.
  • customer-managed-key=accusam
    • Optional. The KMS key reference that the customer provides when trying to create the instance.
  • display-name=takimata
    • An arbitrary and optional user-provided name for the instance.
  • host=consetetur
    • Output only. Hostname or IP address of the exposed Redis endpoint used by clients to connect to the service.
  • labels=key=voluptua.
    • Resource labels to represent user provided metadata
    • the value will be associated with the given key
  • location-id=et
    • Optional. The zone where the instance will be provisioned. If not provided, the service will choose a zone from the specified region for the instance. For standard tier, additional nodes will be added across multiple zones for protection against zonal failures. If specified, at least one node will be provisioned in this zone.
  • maintenance-policy create-time=erat
    • Output only. The time when the policy was created.
  • description=consetetur
    • Optional. Description of what this policy is for. Create/Update methods return INVALID_ARGUMENT if the length is greater than 512.
  • update-time=amet.

    • Output only. The time when the policy was last updated.
  • ..maintenance-schedule can-reschedule=true

    • If the scheduled maintenance can be rescheduled, default is true.
  • end-time=et
    • Output only. The end time of any upcoming scheduled maintenance for this instance.
  • schedule-deadline-time=accusam
    • Output only. The deadline that the maintenance schedule start time can not go beyond, including reschedule.
  • start-time=voluptua.

    • Output only. The start time of any upcoming scheduled maintenance for this instance.
  • .. maintenance-version=dolore

    • Optional. The self service update maintenance version. The version is date based such as "20210712_00_00".
  • memory-size-gb=67
    • Required. Redis memory size in GiB.
  • name=dolore
    • Required. Unique name of the resource in this scope including project and location using the form: projects/{project_id}/locations/{location_id}/instances/{instance_id} Note: Redis instances are managed and addressed at regional level so location_id here refers to a GCP region; however, users may choose which specific zone (or collection of zones for cross-zone instances) an instance should be provisioned in. Refer to location_id and alternative_location_id fields for more details.
  • persistence-config persistence-mode=voluptua.
    • Optional. Controls whether Persistence features are enabled. If not provided, the existing value will be used.
  • rdb-next-snapshot-time=amet.
    • Output only. The next time that a snapshot attempt is scheduled to occur.
  • rdb-snapshot-period=ea
    • Optional. Period between RDB snapshots. Snapshots will be attempted every period starting from the provided snapshot start time. For example, a start time of 01/01/2033 06:45 and SIX_HOURS snapshot period will do nothing until 01/01/2033, and then trigger snapshots every day at 06:45, 12:45, 18:45, and 00:45 the next day, and so on. If not provided, TWENTY_FOUR_HOURS will be used as default.
  • rdb-snapshot-start-time=sadipscing

    • Optional. Date and time that the first snapshot was/will be attempted, and to which future snapshots will be aligned. If not provided, the current time will be used.
  • .. persistence-iam-identity=lorem

    • Output only. Cloud IAM identity used by import / export operations to transfer data to/from Cloud Storage. Format is "serviceAccount:". The value may change over time for a given instance so should be checked before each import/export operation.
  • port=63
    • Output only. The port number of the exposed Redis endpoint.
  • read-endpoint=no
    • Output only. Hostname or IP address of the exposed readonly Redis endpoint. Standard tier only. Targets all healthy replica nodes in instance. Replication is asynchronous and replica nodes will exhibit some lag behind the primary. Write requests must target 'host'.
  • read-endpoint-port=94
    • Output only. The port number of the exposed readonly redis endpoint. Standard tier only. Write requests should target 'port'.
  • read-replicas-mode=at
    • Optional. Read replicas mode for the instance. Defaults to READ_REPLICAS_DISABLED.
  • redis-configs=key=sed
    • Optional. Redis configuration parameters, according to http://redis.io/topics/config. Currently, the only supported parameters are: Redis version 3.2 and newer: * maxmemory-policy * notify-keyspace-events Redis version 4.0 and newer: * activedefrag * lfu-decay-time * lfu-log-factor * maxmemory-gb Redis version 5.0 and newer: * stream-node-max-bytes * stream-node-max-entries
    • the value will be associated with the given key
  • redis-version=sit
    • Optional. The version of Redis software. If not provided, latest supported version will be used. Currently, the supported values are: * REDIS_3_2 for Redis 3.2 compatibility * REDIS_4_0 for Redis 4.0 compatibility (default) * REDIS_5_0 for Redis 5.0 compatibility * REDIS_6_X for Redis 6.x compatibility * REDIS_7_0 for Redis 7.0 compatibility
  • replica-count=66
    • Optional. The number of replica nodes. The valid range for the Standard Tier with read replicas enabled is [1-5] and defaults to 2. If read replicas are not enabled for a Standard Tier instance, the only valid value is 1 and the default is 1. The valid value for basic tier is 0 and the default is also 0.
  • reserved-ip-range=tempor
    • Optional. For DIRECT_PEERING mode, the CIDR range of internal addresses that are reserved for this instance. Range must be unique and non-overlapping with existing subnets in an authorized network. For PRIVATE_SERVICE_ACCESS mode, the name of one allocated IP address ranges associated with this private service access connection. If not provided, the service will choose an unused /29 block, for example, 10.0.0.0/29 or 192.168.0.0/29. For READ_REPLICAS_ENABLED the default block size is /28.
  • satisfies-pzi=true
    • Optional. Output only. Reserved for future use.
  • satisfies-pzs=true
    • Optional. Output only. Reserved for future use.
  • secondary-ip-range=et
    • Optional. Additional IP range for node placement. Required when enabling read replicas on an existing instance. For DIRECT_PEERING mode value must be a CIDR range of size /28, or "auto". For PRIVATE_SERVICE_ACCESS mode value must be the name of an allocated address range associated with the private service access connection, or "auto".
  • state=sed
    • Output only. The current state of this instance.
  • status-message=no
    • Output only. Additional information about the current status of this instance, if available.
  • suspension-reasons=et
    • Optional. reasons that causes instance in "SUSPENDED" state.
    • Each invocation of this argument appends the given value to the array.
  • tier=elitr
    • Required. The service tier of the instance.
  • transit-encryption-mode=sed
    • Optional. The TLS mode of the Redis instance. If not provided, TLS is disabled for the instance.

About Cursors

The cursor position is key to comfortably set complex nested structures. The following rules apply:

  • The cursor position is always set relative to the current one, unless the field name starts with the . character. Fields can be nested such as in -r f.s.o .
  • The cursor position is set relative to the top-level structure if it starts with ., e.g. -r .s.s
  • You can also set nested fields without setting the cursor explicitly. For example, to set a value relative to the current cursor position, you would specify -r struct.sub_struct=bar.
  • You can move the cursor one level up by using ... Each additional . moves it up one additional level. E.g. ... would go three levels up.

Optional Output Flags

The method's return value a JSON encoded structure, which will be written to standard output by default.

  • -o out
    • out specifies the destination to which to write the server's result to. It will be a JSON-encoded structure. The destination may be - to indicate standard output, or a filepath that is to contain the received bytes. If unset, it defaults to standard output.

Optional Method Properties

You may set the following properties to further configure the call. Please note that -p is followed by one or more key-value-pairs, and is called like this -p k1=v1 k2=v2 even though the listing below repeats the -p for completeness.

  • -p update-mask=string
    • Required. Mask of fields to update. At least one path must be supplied in this field. The elements of the repeated paths field may only include these fields from Instance: * displayName * labels * memorySizeGb * redisConfig * replica_count

Optional General Properties

The following properties can configure any call, and are not specific to this method.

  • -p $-xgafv=string

    • V1 error format.
  • -p access-token=string

    • OAuth access token.
  • -p alt=string

    • Data format for response.
  • -p callback=string

    • JSONP
  • -p fields=string

    • Selector specifying which fields to include in a partial response.
  • -p key=string

    • API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.
  • -p oauth-token=string

    • OAuth 2.0 token for the current user.
  • -p pretty-print=boolean

    • Returns response with indentations and line breaks.
  • -p quota-user=string

    • Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.
  • -p upload-type=string

    • Legacy upload protocol for media (e.g. "media", "multipart").
  • -p upload-protocol=string

    • Upload protocol for media (e.g. "raw", "multipart").