Method: Aws::RedshiftServerless::Client#update_workgroup

Defined in:
lib/aws-sdk-redshiftserverless/client.rb

#update_workgroup(params = {}) ⇒ Types::UpdateWorkgroupResponse

Updates a workgroup with the specified configuration settings. You can’t update multiple parameters in one request. For example, you can update ‘baseCapacity` or `port` in a single request, but you can’t update both in the same request.

VPC Block Public Access (BPA) enables you to block resources in VPCs and subnets that you own in a Region from reaching or being reached from the internet through internet gateways and egress-only internet gateways. If a workgroup is in an account with VPC BPA turned on, the following capabilities are blocked:

  • Creating a public access workgroup

  • Modifying a private workgroup to public

  • Adding a subnet with VPC BPA turned on to the workgroup when the workgroup is public

For more information about VPC BPA, see [Block public access to VPCs and subnets] in the *Amazon VPC User Guide*.

[1]: docs.aws.amazon.com/vpc/latest/userguide/security-vpc-bpa.html

Examples:

Request syntax with placeholder values


resp = client.update_workgroup({
  base_capacity: 1,
  config_parameters: [
    {
      parameter_key: "ParameterKey",
      parameter_value: "ParameterValue",
    },
  ],
  enhanced_vpc_routing: false,
  ip_address_type: "IpAddressType",
  max_capacity: 1,
  port: 1,
  price_performance_target: {
    level: 1,
    status: "ENABLED", # accepts ENABLED, DISABLED
  },
  publicly_accessible: false,
  security_group_ids: ["SecurityGroupId"],
  subnet_ids: ["SubnetId"],
  track_name: "TrackName",
  workgroup_name: "WorkgroupName", # required
})

Response structure


resp.workgroup.base_capacity #=> Integer
resp.workgroup.config_parameters #=> Array
resp.workgroup.config_parameters[0].parameter_key #=> String
resp.workgroup.config_parameters[0].parameter_value #=> String
resp.workgroup.creation_date #=> Time
resp.workgroup. #=> Array
resp.workgroup.[0] #=> String
resp.workgroup.custom_domain_certificate_arn #=> String
resp.workgroup.custom_domain_certificate_expiry_time #=> Time
resp.workgroup.custom_domain_name #=> String
resp.workgroup.endpoint.address #=> String
resp.workgroup.endpoint.port #=> Integer
resp.workgroup.endpoint.vpc_endpoints #=> Array
resp.workgroup.endpoint.vpc_endpoints[0].network_interfaces #=> Array
resp.workgroup.endpoint.vpc_endpoints[0].network_interfaces[0].availability_zone #=> String
resp.workgroup.endpoint.vpc_endpoints[0].network_interfaces[0].ipv6_address #=> String
resp.workgroup.endpoint.vpc_endpoints[0].network_interfaces[0].network_interface_id #=> String
resp.workgroup.endpoint.vpc_endpoints[0].network_interfaces[0].private_ip_address #=> String
resp.workgroup.endpoint.vpc_endpoints[0].network_interfaces[0].subnet_id #=> String
resp.workgroup.endpoint.vpc_endpoints[0].vpc_endpoint_id #=> String
resp.workgroup.endpoint.vpc_endpoints[0].vpc_id #=> String
resp.workgroup.enhanced_vpc_routing #=> Boolean
resp.workgroup.ip_address_type #=> String
resp.workgroup.max_capacity #=> Integer
resp.workgroup.namespace_name #=> String
resp.workgroup.patch_version #=> String
resp.workgroup.pending_track_name #=> String
resp.workgroup.port #=> Integer
resp.workgroup.price_performance_target.level #=> Integer
resp.workgroup.price_performance_target.status #=> String, one of "ENABLED", "DISABLED"
resp.workgroup.publicly_accessible #=> Boolean
resp.workgroup.security_group_ids #=> Array
resp.workgroup.security_group_ids[0] #=> String
resp.workgroup.status #=> String, one of "CREATING", "AVAILABLE", "MODIFYING", "DELETING"
resp.workgroup.subnet_ids #=> Array
resp.workgroup.subnet_ids[0] #=> String
resp.workgroup.track_name #=> String
resp.workgroup.workgroup_arn #=> String
resp.workgroup.workgroup_id #=> String
resp.workgroup.workgroup_name #=> String
resp.workgroup.workgroup_version #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :base_capacity (Integer)

    The new base data warehouse capacity in Redshift Processing Units (RPUs).

  • :config_parameters (Array<Types::ConfigParameter>)

    An array of parameters to set for advanced control over a database. The options are ‘auto_mv`, `datestyle`, `enable_case_sensitive_identifier`, `enable_user_activity_logging`, `query_group`, `search_path`, `require_ssl`, `use_fips_ssl`, and query monitoring metrics that let you define performance boundaries. For more information about query monitoring rules and available metrics, see [ Query monitoring metrics for Amazon Redshift Serverless].

    [1]: docs.aws.amazon.com/redshift/latest/dg/cm-c-wlm-query-monitoring-rules.html#cm-c-wlm-query-monitoring-metrics-serverless

  • :enhanced_vpc_routing (Boolean)

    The value that specifies whether to turn on enhanced virtual private cloud (VPC) routing, which forces Amazon Redshift Serverless to route traffic through your VPC.

  • :ip_address_type (String)

    The IP address type that the workgroup supports. Possible values are ‘ipv4` and `dualstack`.

  • :max_capacity (Integer)

    The maximum data-warehouse capacity Amazon Redshift Serverless uses to serve queries. The max capacity is specified in RPUs.

  • :port (Integer)

    The custom port to use when connecting to a workgroup. Valid port ranges are 5431-5455 and 8191-8215. The default is 5439.

  • :price_performance_target (Types::PerformanceTarget)

    An object that represents the price performance target settings for the workgroup.

  • :publicly_accessible (Boolean)

    A value that specifies whether the workgroup can be accessible from a public network.

  • :security_group_ids (Array<String>)

    An array of security group IDs to associate with the workgroup.

  • :subnet_ids (Array<String>)

    An array of VPC subnet IDs to associate with the workgroup.

  • :track_name (String)

    An optional parameter for the name of the track for the workgroup. If you don’t provide a track name, the workgroup is assigned to the ‘current` track.

  • :workgroup_name (required, String)

    The name of the workgroup to update. You can’t update the name of a workgroup once it is created.

Returns:

See Also:



4338
4339
4340
4341
# File 'lib/aws-sdk-redshiftserverless/client.rb', line 4338

def update_workgroup(params = {}, options = {})
  req = build_request(:update_workgroup, params)
  req.send_request(options)
end