gcloud compute service-attachments create

NAME
gcloud compute service-attachments create - create a Google Compute Engine service attachment
SYNOPSIS
gcloud compute service-attachments create NAME --nat-subnets=NAT_SUBNETS,[NAT_SUBNETS,…] (--producer-forwarding-rule=PRODUCER_FORWARDING_RULE     | --target-service=TARGET_SERVICE) [--connection-preference=CONNECTION_PREFERENCE; default="ACCEPT_AUTOMATIC"] [--consumer-accept-list=[PROJECT_OR_NETWORK=LIMIT,…]] [--consumer-reject-list=[REJECT_LIST,…]] [--description=DESCRIPTION] [--domain-names=[DOMAIN_NAMES,…]] [--enable-proxy-protocol] [--nat-subnets-region=NAT_SUBNETS_REGION] [--producer-forwarding-rule-region=PRODUCER_FORWARDING_RULE_REGION] [--propagated-connection-limit=PROPAGATED_CONNECTION_LIMIT] [--reconcile-connections] [--region=REGION] [GCLOUD_WIDE_FLAG]
DESCRIPTION
gcloud compute service-attachments create is used to create service attachments. A service producer creates service attachments to make a service available to consumers. Service consumers use Private Service Connect endpoints to privately forward traffic to the service attachment.
EXAMPLES
If there is an already-created internal load balancer (ILB) with the name MY_ILB in region us-central1 and there is an already-created Private Service Connect subnets MY_SUBNET1 and MY_SUBNET2, create a service attachment pointing to the ILB by running:
gcloud compute service-attachments create SERVICE_ATTACHMENT_NAME --region=us-central1 --producer-forwarding-rule=MY_ILB --connection-preference=ACCEPT_AUTOMATIC --nat-subnets=MY_SUBNET1,MY_SUBNET2

To create a service attachment with a textual description, run:

gcloud compute service-attachments create SERVICE_ATTACHMENT_NAME --region=us-central1 --producer-forwarding-rule=MY_ILB --connection-preference=ACCEPT_AUTOMATIC --nat-subnets=MY_SUBNET1,MY_SUBNET2 --description='default service attachment'
POSITIONAL ARGUMENTS
NAME
Name of the service attachment to create.
REQUIRED FLAGS
--nat-subnets=NAT_SUBNETS,[NAT_SUBNETS,…]
The subnetworks provided by service producer to use for NAT
Exactly one of these must be specified:
--producer-forwarding-rule=PRODUCER_FORWARDING_RULE
Target forwarding rule that receives forwarded traffic.
--target-service=TARGET_SERVICE
URL of the target service that receives forwarded traffic.
OPTIONAL FLAGS
--connection-preference=CONNECTION_PREFERENCE; default="ACCEPT_AUTOMATIC"
This defines the service attachment's connection preference. CONNECTION_PREFERENCE must be one of:
ACCEPT_AUTOMATIC
Always accept connection requests from consumers automatically.
ACCEPT_MANUAL
Only accept connection requests from consumers with the approval of the service provider.
--consumer-accept-list=[PROJECT_OR_NETWORK=LIMIT,…]
Specifies which consumer projects or networks are allowed to connect to the service attachment. Each project or network has a connection limit. A given service attachment can manage connections at either the project or network level. Therefore, both the accept and reject lists for a given service attachment must contain either only projects or only networks.

For example, --consumer-accept-list myProjectId1=20 accepts a consumer project myProjectId1 with connection limit 20; --consumer-accept-list projects/myProjectId1/global/networks/myNet1=20 accepts a consumer network myNet1 with connection limit 20

  • PROJECT_OR_NETWORK - Consumer project ID, project number or network URL.
  • CONNECTION_LIMIT - The maximum number of allowed connections.
--consumer-reject-list=[REJECT_LIST,…]
Specifies a comma separated list of projects or networks that are not allowed to connect to this service attachment. The project can be specified using its project ID or project number and the network can be specified using its URL. A given service attachment can manage connections at either the project or network level. Therefore, both the reject and accept lists for a given service attachment must contain either only projects or only networks.
--description=DESCRIPTION
An optional, textual description for the service attachment.
--domain-names=[DOMAIN_NAMES,…]
Specifies a comma separated list of DNS domain names that are used during DNS integration on PSC connected endpoints.
--enable-proxy-protocol
If True, then enable the proxy protocol which is for supplying client TCP/IP address data in TCP connections that traverse proxies on their way to destination servers.
--nat-subnets-region=NAT_SUBNETS_REGION
Region of the subnetworks to operate on. If not specified, it will be set to the region of the service attachment. Overrides the default compute/region property value for this command invocation.
--producer-forwarding-rule-region=PRODUCER_FORWARDING_RULE_REGION
Region of the forwarding rule to operate on. If not specified, you might be prompted to select a region (interactive mode only).

To avoid prompting when this flag is omitted, you can set the compute/region property:

gcloud config set compute/region REGION

A list of regions can be fetched by running:

gcloud compute regions list

To unset the property, run:

gcloud config unset compute/region

Alternatively, the region can be stored in the environment variable CLOUDSDK_COMPUTE_REGION.

--propagated-connection-limit=PROPAGATED_CONNECTION_LIMIT
The number of consumer spokes that connected Private Service Connect endpoints can be propagated to through Network Connectivity Center. This limit lets the service producer limit how many propagated Private Service Connect connections can be established to this service attachment from a single consumer.

If the connection preference of the service attachment is ACCEPT_MANUAL, the limit applies to each project or network that is listed in the consumer accept list. If the connection preference of the service attachment is ACCEPT_AUTOMATIC, the limit applies to each project that contains a connected endpoint.

If unspecified, the default propagated connection limit is 250.

--reconcile-connections
Determines whether to apply changes to consumer accept or reject lists to existing connections or only to new connections.

If false, existing endpoints with a connection status of ACCEPTED or REJECTED are not updated.

If true, existing endpoints with a connection status of ACCEPTED or REJECTED are updated based on the connection policy update. For example, if a project or network is removed from the --consumer-accept-list and added to --consumer-reject-list, all the endpoints in that project or network with the ACCEPTED state are set to REJECTED.

--region=REGION
Region of the service attachment to create. If not specified, you might be prompted to select a region (interactive mode only).

To avoid prompting when this flag is omitted, you can set the compute/region property:

gcloud config set compute/region REGION

A list of regions can be fetched by running:

gcloud compute regions list

To unset the property, run:

gcloud config unset compute/region

Alternatively, the region can be stored in the environment variable CLOUDSDK_COMPUTE_REGION.

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
These variants are also available:
gcloud alpha compute service-attachments create
gcloud beta compute service-attachments create