Create a Looker (Google Cloud core) Private Service Connect instance Stay organized with collections Save and categorize content based on your preferences.
This page describes the process for using the Google Cloud console, thegcloud CLI or Terraform to create a Looker (Google Cloud core) production ornon-production instance withPrivate Service Connect enabled.
For instructions on how to create a public secure connections instance, see theCreate a public secure connections Looker (Google Cloud core) instance documentation page. For instructions on how to create a Looker (Google Cloud core) instance that is enabled for private services access, see theCreate a private connections Looker (Google Cloud core) instance documentation page.
Private Service Connect can be enabled for a Looker (Google Cloud core) instance that meets the following criteria:
- The Looker (Google Cloud core) instance must be new. Private Service Connect can be enabled only at the time of instance creation.
- Theinstance edition must be Enterprise (
core-enterprise-annual) or Embed (core-embed-annual).
Before you begin
- Work with Sales to ensure that yourannual contract is completed and that you havequota allocated in your project.
- Make sure that billing is enabled for your Google Cloud project.
- In the Google Cloud console, on the project selector page, select the project where you want to create the Private Service Connect instance.
- Enable the Looker API for your project in the Google Cloud console. When enabling the API, you may need to refresh the console page to confirm that the API has been enabled.Caution: Disabling the Looker API after instance creation will affect Looker (Google Cloud core) features. For example, disabling the API will disable the ability to createinstance backups.
- Set up an OAuth client and create authorization credentials. The OAuth client lets you authenticate and access the instance. You must set up OAuth to create a Looker (Google Cloud core) instance, even if you are using a differentauthentication method to authenticate users into your instance.
- If you want to useVPC Service Controls orcustomer-managed encryption keys (CMEK) with the Looker (Google Cloud core) instance that you are creating, additional setup is required prior to instance creation. Additional edition and network configuration may also be required during instance creation.
Required roles
To get the permissions that you need to create a Looker (Google Cloud core) instance, ask your administrator to grant you theLooker Admin (roles/looker.admin) IAM role on the project the instance will reside in. For more information about granting roles, seeManage access to projects, folders, and organizations.
You might also be able to get the required permissions throughcustom roles or otherpredefined roles.
Note:IAM basic roles might also contain permissions to create a Looker (Google Cloud core) instance. You shouldn't grant basic roles in a production environment, but you can grant them in a development or test environment.You may also need additional IAM roles to set upVPC Service Controls orcustomer-managed encryption keys (CMEK). Visit the documentation pages for those features to learn more.
Create a Private Service Connect instance
console
- Navigate to the Looker (Google Cloud core) product page from your project in the Google Cloud console. If you have already created a Looker (Google Cloud core) instance within this project, theInstances page will open.
- ClickCREATE INSTANCE.
- In theInstance name section, provide a name for your Looker (Google Cloud core) instance. The instance name isn't associated with the URL of the Looker (Google Cloud core) instance once it is created. The instance name cannot be changed after instance creation.
- In theOAuth Application Credentials section, enter the OAuth client ID and OAuth secret that you created when youset up your OAuth client.
In theRegion section, select the appropriate option from the drop-down menu to host your Looker (Google Cloud core) instance. Select the region that matches the region in the subscription contract, which is where thequota for your project is allocated. Available regions are listed on theLooker (Google Cloud core) locations documentation page.
You cannot change the region once the instance has been created.
In theEdition section, choose anEnterprise orEmbed (production or non-production) edition option. The edition type affects some of thefeatures that are available for the instance. Make sure that you choose the same edition type as listed in yourannual contract and that you havequota allocated for that edition type.
- Enterprise: Looker (Google Cloud core) platform with enhanced security features for addressing a wide variety of internal BI and analytics use cases
- Embed: Looker (Google Cloud core) platform for deploying and maintaining reliable external analytics and custom applications at scale
- Non-production editions: If you want a staging and testing environment, select one of the non-production editions. For more information, see theNon-production instances documentation.
- Trial editions: Atrial edition has the same feature support as its corresponding production edition, with the exception that trial editions are valid for 90 days.
Editions cannot be changed after instance creation. If you want to change an edition, you can useimport and export to move your Looker (Google Cloud core) instance data into a new instance that is configured with a different edition.
Tip: If your project doesn't have quota, you won't be able to select an edition type.Contact Sales to allocate quota to your project.In theCustomize your instance section, clickShow configuration options to display a group of additional settings that you can customize for the instance.
In theConnections section, underInstance IP assignment, choose eitherUse hybrid connections orUse private connections. The type of network connection that you select impacts theLooker features that are available to the instance. The following network connection options are available:
- Use public secure connections: Looker will have a public URL and use a public network for outbound connections.
Use hybrid connections: Looker will have a public URL and use PSC endpoints for outbound connections.
Note: If hybrid connections are assigned at the time of instance creation, you can change tousing private connections later.Use private connections: Assigns an internal, customer-defined IP address that is accessible in aVirtual Private Cloud (VPC) for ingress. To communicate to VPC and on-premises or multi-cloud workloads, you must deploy service attachments for egress traffic. If you want to use VPC Service Controls, you must selectUse private connections.
If you are creating an instance that uses only private connections, set at least one allowed VPC that will be grantedinbound connections into the instance. UnderConfigure inbound connections, in theProject 1 field, select the project in which this network was created.
To add additional inbound connections, clickAdd Item to add each VPC. In theProject X field, select the project in which the network was created. In theNetwork drop-down menu, select the network.
If you selectUse hybrid connections in theConnections section, theConfigure inbound connections section doesn't appear. You can set up access to the instance through the instance's web URL.
In theLocal FQDN section, specify one or more service attachments that expose an endpoint for outbound connections that Looker can connect to. In theLocal FQDN 1 field, enter the fully qualified domain name of the service, and in theTarget Service Attachment URI 1 field, enter thefull service attachment URI for the external service.
To add additional service attachments, clickAdd Item to add each service attachment. In theLocal FQDN field, enter the fully qualified domain name of the service. In theTarget Service Attachment URI field, enter thefull service attachment URI for the external service.
In theEncryption section, you can select the type of encryption to use on your instance. The following encryption options are available:
- Google-managed encryption key: This option is the default and doesn't require any additional configuration.
- Customer-managed encryption key (CMEK): See theUsing customer-managed encryption keys with Looker (Google Cloud core) documentation page for more information on CMEK and how to configure it during instance creation. The type of encryption cannot be changed after instance creation.
- EnableFIPS 140-2 Validated Encryption: See theEnable FIPS 140-2 level 1 compliance on a Looker (Google Cloud core) instance documentation page for more information on FIPS 140-2 support on Looker (Google Cloud core).
In theMaintenance Window section, you can optionallyspecify the day of the week and the hour in which Looker (Google Cloud core) schedules maintenance. Maintenance windows last for one hour. By default, thePreferred Window option in theMaintenance Window is set toAny window.
In theDeny Maintenance Period section, you can optionallyspecify a block of days on which Looker (Google Cloud core) doesn't schedule maintenance. Deny maintenance periods can be up to 60 days long. You must allow at least 14 days of maintenance availability between any 2 deny maintenance periods.
In theGemini in Looker section, you can optionally makeGemini in Looker features available for the Looker (Google Cloud core) instance. To enable Gemini in Looker, selectGemini, and then selectTrusted Tester features. WhenTrusted Tester features is enabled, users can access the Trusted Tester capabilities of Gemini in Looker. You may request access to the non-public Trusted Tester capabilities through theGemini in Looker preview form on a per-user basis. You must enable this setting to use Gemini during the pre-GA preview. Optionally, selectTrusted Tester data use. When this setting is enabled, you consent to your data being used by Google as described in theGemini for Google Cloud Trusted Tester Program termsTo disable Gemini for a Looker (Google Cloud core) instance, clear theGemini setting.
ClickCreate.
gcloud
To create a Private Service Connect instance, run thegcloud looker instances create command with all the following flags:
gcloud looker instances createINSTANCE_NAME \--psc-enabled \--oauth-client-id=OAUTH_CLIENT_ID \--oauth-client-secret=OAUTH_CLIENT_SECRET \--region=REGION \--edition=EDITION \[--psc-allowed-vpcs=ALLOWED_VPC,ADDITIONAL_ALLOWED_VPCS][--no-public-ip-enabled][--public-ip-enabled]--async
Replace the following:
INSTANCE_NAME: a name for your Looker (Google Cloud core) instance; it is not associated with the instance URL.OAUTH_CLIENT_IDandOAUTH_CLIENT_SECRET: the OAuth client ID and OAuth secret that you created when youset up your OAuth client. After the instance has been created,enter the instance's URL in theAuthorized redirect URIs section of the OAuth client.REGION: the region in which your Looker (Google Cloud core) instance is hosted. Select the region that matches the region in the subscription contract. Available regions are listed on theLooker (Google Cloud core) locations documentation page.EDITION: the edition, environment type (production ornon-production), and whether this is atrial edition for the instance. Its possible values arecore-enterprise-annual,core-embed-annual,nonprod-core-enterprise-annual,nonprod-core-embed-annual,core-trial-enterprise, orcore-trial-embed. Editions cannot be changed after instance creation. If you want to change an edition, you can useimport and export to move your Looker (Google Cloud core) instance data into a new instance that is configured with a different edition.ALLOWED_VPC: If you are creating an instance that uses only private connections, list a VPC that will be allowedinbound (ingress) access into Looker (Google Cloud core). To access the instance from outside the VPC that the instance is located in, you must list at least one VPC. Specify a VPC using one of the following formats:projects/{project}/global/networks/{network}https://www.googleapis.com/compute/v1/projects/{project}/global/networks/{network}
If you are creating an instance that uses hybrid connections, you don't need to set an allowed VPC.
ADDITIONAL_ALLOWED_VPCS: any additional VPCs to be allowed inbound access into Looker (Google Cloud core) can be added to the--psc-allowed-vpcsflag in a comma-separated list.
You must also includeone of the following flags to enable or disable public connections:
--public-ip-enabledenables public connections. If you enable public connections for the instance, incoming traffic will be routed through public connections, and outgoing traffic will be routed through Private Service Connect.--no-public-ip-enableddisables public connections.
create command. Outbound connections must be specified after the instance has been created.If you want, you can add more parameters to apply other instance settings:
[--maintenance-window-day=MAINTENANCE_WINDOW_DAY --maintenance-window-time=MAINTENANCE_WINDOW_TIME] [--deny-maintenance-period-end-date=DENY_MAINTENANCE_PERIOD_END_DATE --deny-maintenance-period-start-date=DENY_MAINTENANCE_PERIOD_START_DATE --deny-maintenance-period-time=DENY_MAINTENANCE_PERIOD_TIME] --kms-key=KMS_KEY_ID [--fips-enabled]
MAINTENANCE_WINDOW_DAY: must be one of the following:friday,monday,saturday,sunday,thursday,tuesday,wednesday. See theManage maintenance policies for Looker (Google Cloud core) documentation page for more information about maintenance window settings.MAINTENANCE_WINDOW_TIMEandDENY_MAINTENANCE_PERIOD_TIME: must be in UTC in 24-hour format (for example, 13:00, 17:45).DENY_MAINTENANCE_PERIOD_START_DATEandDENY_MAINTENANCE_PERIOD_END_DATE: must be in the formatYYYY-MM-DD.KMS_KEY_ID: must be the key that is created when setting upcustomer-managed encryption keys (CMEK).
You may include the--fips-enabled flag toenable FIPS 140-2 level 1 compliance.
The process for creating a Private Service Connect instance differs from the process for creating a Looker (Google Cloud core) (private services access) instance in the following ways:
- With Private Service Connect setup, the
--consumer-networkand--reserved-rangeflags are not necessary. - Private Service Connect instances require an additional flag:
--psc-enabled. The
Tip: You must havequota for the proper edition type to create an instance. If you don't have quota,contact Sales to allocate quota to your project.--psc-allowed-vpcsflag is a comma-separated list of VPCs. You can specify as many VPCs as you like in the list.
Terraform
Use the followingTerraform resource to provision aEnterprise Looker (Google Cloud core) instance that uses PSC:
# Create an ENTERPRISE edition Looker (Google Cloud core) instance that has PSC enabled.resource "google_looker_instance" "default" { name = "my-instance" platform_edition = "LOOKER_CORE_ENTERPRISE_ANNUAL" region = "us-central1" private_ip_enabled = false public_ip_enabled = false psc_enabled = true oauth_config { client_id = "my-client-id" client_secret = "my-client-secret" } psc_config { # allowed_vpcs = ["projects/{project}/global/networks/{network}"] # (Optional) List of VPCs that are allowed ingress into the Looker instance. Set an allowed VPC if you are creating an instance that uses only private IP. }}Enter values for the following:
name: a name for your Looker (Google Cloud core) instance; it is not associated with the instance URL.platform_edition: the edition, environment type (production ornon-production), and whether this is atrial edition for the instance. Its possible values areLOOKER_CORE_ENTERPRISE_ANNUAL,LOOKER_CORE_EMBED_ANNUAL,LOOKER_NONPROD_CORE_ENTERPRISE_ANNUAL,LOOKER_NONPROD_CORE_EMBED_ANNUAL,LOOKER_CORE_TRIAL_ENTERPRISE, orLOOKER_CORE_TRIAL_EMBED. This example usesLOOKER_CORE_ENTERPRISE_ANNUAL. Editions cannot be changed after instance creation. If you want to change an edition, you can useimport and export to move your Looker (Google Cloud core) instance data into a new instance that is configured with a different edition.region: the region in which your Looker (Google Cloud core) instance is hosted. Select the region that matches the region in the subscription contract. This example usesus-central1. Available regions are listed on theLooker (Google Cloud core) locations documentation page.client_idandclient_secret: the OAuth client ID and OAuth secret that you created when youset up your OAuth client. After the instance has been created,enter the instance's URL in theAuthorized redirect URIs section of the OAuth client.allowed_vpcs: If you are creating an instance that uses only private connections, list a VPC that will be allowedinbound (ingress) access into the Looker (Google Cloud core) instance. To access the instance from outside the VPC that the instance is located in, you must list at least one VPC. Specify a VPC using one of the following formats:projects/{project}/global/networks/{network}https://www.googleapis.com/compute/v1/projects/{project}/global/networks/{network}
If you are creating an instance that uses hybrid connections, you don't need to set an allowed VPC. You can update and add additional VPC IPs later.
You will also need to update the instance tomake outbound connections.
Check the status of the instance
It takes approximately 40-60 minutes for the instance to be created.
console
As the instance is being created, you can view its status on theInstances page within the console. You can also see your instance creation activity by clicking on the notifications icon in the Google Cloud console menu. On theDetails page for the instance, its status will showActive once it's created.
gcloud
To check the status, use thegcloud looker instances describe command:
gcloud looker instances describeINSTANCE_NAME --region=REGION
Replace the following:
INSTANCE_NAME: the name of your Looker (Google Cloud core) instance.REGION: the region in which your Looker (Google Cloud core) instance is hosted.
The instance is ready once it reaches theACTIVE state.
In addition, you can make other changes after instance creation byediting the instance settings.
Configure inbound connections
Once your Looker (Google Cloud core) Private Service Connect instance has been created, you can configure inbound connections.
If you use hybrid connections in the Looker (Google Cloud core) instance, the instance can be accessed overpublic secure connections. If you chose to use only private connections in the Looker (Google Cloud core) instance, you must allow at least one VPC access to the instance. Complete the following steps to update the VPCs that have access to the instance. More than one VPC can have access to the instance.
console
- On theInstances page, click the name of the instance for which you want to update the VPCs that are allowed inbound access.
- ClickEdit.
- Expand theConnections section.
- Navigate to theConfigure inbound connections section.
- ClickAdd Item. Then, select the project in which the VPC is located in theProject field, and select the network from theNetwork drop-down menu.
- To delete a VPC, click theDelete item trash icon that appears when you hold the pointer over the network.
- ClickSave.
gcloud
Use the--psc-allowed-vpcs flag to update the list of VPCs that have authorized inbound access into the instance.
When you update the allowed VPCs, you must specify the entire list that you want to be in effect after your update. For example, suppose VPCALLOWED_VPC_1 is already allowed, and you want to add VPCALLOWED_VPC_2. To add VPCALLOWED_VPC_1 while making sure that VPCALLOWED_VPC_2 continues to be allowed, add the--psc-allowed-vpcs flag as follows:
gcloud looker instances updateINSTANCE_NAME \--psc-allowed-vpcs=ALLOWED_VPC_1,ALLOWED_VPC_2 --region=REGION
Replace the following:
INSTANCE_NAME: the name of your Looker (Google Cloud core) instance.ALLOWED_VPC_1andALLOWED_VPC_2: the VPCs that will be allowed ingress into Looker (Google Cloud core). Specify each allowed VPC using one of the following formats:projects/{project}/global/networks/{network}https://www.googleapis.com/compute/v1/projects/{project}/global/networks/{network}
REGION: the region in which your Looker (Google Cloud core) instance is hosted.
Once a VPC has inbound access to the instance, you can set upnorthbound connections through that VPC.
Delete all allowed VPCs
To delete all allowed VPCs, run the following command:
gcloud looker instances updateMY_INSTANCE --clear-psc-allowed-vpcs \--region=REGION
Replace the following:
INSTANCE_NAME: the name of your Looker (Google Cloud core) instance.REGION: the region in which your Looker (Google Cloud core) instance is hosted.
Configure outbound connections
Once your Looker (Google Cloud core) Private Service Connect instance has been created, you can configure outbound (egress) connections to external services.
If you want to connect to an external service that uses the standard web protocol, HTTPS, with available ports 443 or 8443, you can use Looker (Google Cloud core)'scontrolled native egress and theGlobal FQDN setting to set up your connection. However, if the external service uses a different protocol, that external service must bepublished using Private Service Connect to enable it to connect to your Looker (Google Cloud core) instance usingLocal FQDN.
The following sections describe how to connect to the Looker Marketplace, an external domain usingGlobal FQDN, or published services usingLocal FQDN.
Connect to the Looker Marketplace
Looker (Google Cloud core) can use HTTPS and aSecure Web Proxy to connect directly to theLooker Marketplace. Connecting to the Marketplace also allows egress to github.com.
To connect to Marketplace, complete the following steps:
console
- On theInstances page, click the name of the instance for which you want to enableoutbound (egress) connections.
- ClickEdit.
- Expand theConnections section.
- Navigate to theConfigure outbound connections section.
- Select theEnable Looker to connect to external services checkbox.
- Select theEnable connection to Looker Marketplace checkbox.
- ClickConfirm on the dialog explaining that connecting to Marketplace allows egress to github.com.
- ClickSave.
Connect to an external domain usingGlobal FQDN
Looker (Google Cloud core) can use HTTPS and aSecure Web Proxy to connect to an external, public domain with theGlobal FQDN setting. The connection is made using HTTPS. Port 443 must be open in the external service; a service attachment URI is not required.
This setting is also used to allow traffic to Google APIs that are not supported by therestricted VIP. For example, to allow your Looker (Google Cloud core) instance to connect to the Google Maps API, addmaps.googleapis.com as a Global FQDN.
Some external services require adding Looker (Google Cloud core) to an allowlist for access. If so, you can identify the public egress IP addresses that are used by your Looker (Google Cloud core) instance by navigating to theDetails tab of theInstances page for your Looker (Google Cloud core) instance in the Google Cloud console. The IP addresses that are used for internet egress traffic appear in theEgress IPs field in theControlled Egress Configuration section. Be sure to add all egress IPs to the remote endpoint allowlist, because traffic may be routed through any of the provided IP addresses.
To connect to an external service using global FQDN, complete the following steps:
console
- On theInstances page, click the name of the instance for which you want to enableoutbound (egress) connections.
- ClickEdit.
- Expand theConnections section.
- Navigate to theConfigure outbound connections section.
- Select theEnable Looker to connect to external services checkbox.
- In theGlobal FQDN section, enter the fully-qualified domain name you want to connect to.
- ClickAdd Item if you want to add another domain.
- ClickSave.
Connect to published services usingLocal FQDN
Looker (Google Cloud core) can use Private Service Connect to connect to apublished service with theLocal FQDN setting.
First you need to publish the external service using Private Service Connect and obtain theservice attachment URI for the service. Next you need to update theLocal FQDN setting in the Google Cloud console.
Publish external services with Private Service Connect
Follow theinstructions for publishing services by using Private Service Connect for any service that you want to publish.
Services can be published withautomatic approval or withexplicit approval. If you choose to publish with explicit approval, you must configure the service attachment as follows:
- Set your service attachment allowlist to use projects (not networks).
- Add the Looker tenant project ID to the allowlist.
You can find your Looker tenant project ID after your instance has been created by running the following command:
gcloud looker instances describeINSTANCE_NAME --region=REGION--format=json
Replace the following:
INSTANCE_NAME: the name of your Looker (Google Cloud core) instance.REGION: the region in which your Looker (Google Cloud core) instance is hosted.
In the command output, thelooker_service_attachment_uri field will contain your Looker tenant project ID. It will have the following format:projects/{Looker tenant project ID}/regions/…
Service attachment URI
When you update your Looker (Google Cloud core) instance in the Google Cloud console to connect to your service, you'll need the full service attachment URI for the external service. The URI will be specified as follows, using the project, region, and name that you used to create the service attachment:
projects/{project}/regions/{region}/serviceAttachments/{name}Update theLocal FQDN setting in the Google Cloud console
console
- On theInstances page, click the name of the instance for which you want to enableoutbound (egress) connections.
- ClickEdit.
- Expand theConnections section.
- Navigate to theLocal FQDN section.
- To edit an existing service attachment, update the fully qualified domain name of the service in theLocal FQDN field and theservice attachment URI in theTarget Service Attachment URI field.
- To add a new service attachment, clickAdd Item. Next, enter the fully qualified domain name of the service in theLocal FQDN field and the service attachment URI in theTarget Service Attachment URI field.
- ClickSave.
gcloud
Use--psc-service-attachment flags to enableoutbound (egress) connections to external services for which you have alreadyset up Private Service Connect:
gcloud looker instances updateINSTANCE_NAME \--psc-service-attachment domain=DOMAIN_1,attachment=SERVICE_ATTACHMENT_URI_1 \--psc-service-attachment domain=DOMAIN_2,attachment=SERVICE_ATTACHMENT_URI_2 \--region=REGION
Replace the following:
INSTANCE_NAME: the name of your Looker (Google Cloud core) instance.DOMAIN_1andDOMAIN_2: If you are connecting to a public service, use the service's domain name. If you are connecting to a private service, use your choice of a fully qualified domain name. The following restrictions apply to the domain name:Each outbound connection supports a single domain.
The domain name must consist of at least three parts. For example,
mydomain.github.comis acceptable, butgithub.comis not acceptable.The last part of the name cannot be any the following:
googleapis.comgoogle.comgcr.iopkg.dev
When you set up a connection to your service from within your Looker (Google Cloud core) instance, use this domain as the alias for your service.
SERVICE_ATTACHMENT_1andSERVICE_ATTACHMENT_2: the fullservice attachment URI for the published service you are connecting to. Each service attachment URI can be accessed by a single domain.REGION: the region in which your Looker (Google Cloud core) instance is hosted.
Include all connections that should be enabled
Each time you run an update command with--psc-service-attachment flags, you must include every connection that you want to be enabled, including connections that were already enabled previously. For example, suppose you have previously connected an instance calledmy-instance to thewww.cloud.com domain as follows:
gcloud looker instances update my-instance --psc-service-attachment \domain=www.cloud.com,attachment=projects/123/regions/us-central1/serviceAttachment/cloud
Running the following command to add a newwww.me.com connection would delete thewww.cloud.com connection:
gcloud looker instances update my-instance --psc-service-attachment \domain=www.me.com,attachment=projects/123/regions/us-central1/serviceAttachment/my-sa
To prevent deletion of thewww.cloud.comconnection when you add the newwww.me.com connection, include a separatepsc-service-attachment flag for both the existing connection and the new connection within the update command as follows:
gcloud looker instances update my-instance --psc-service-attachment \domain=www.cloud.com,attachment=projects/123/regions/us-central1/serviceAttachment/cloud \--psc-service-attachment domain=www.me.com,attachment=projects/123/regions/us-central1/serviceAttachment/my-sa
Terraform
Use the following Terraform resource to update your Looker (Google Cloud core) instance to enableoutbound (egress) connections to external services that you have alreadypublished with Private Service Connect:
service_attachments = [{local_fqdn: "www.local-fqdn.com" target_service_attachment_uri: "projects/{project}/regions/{region}/serviceAttachments/{name}}]Enter values for the following:
local_fqdn: the fully qualified domain name of the published service.target_service_attachment_uri: the fullservice attachment URI for the published service you are connecting to. Each service attachment URI can be accessed by a single domain.
If you are connecting to a non-Google managed service in a region other than the region where your Looker (Google Cloud core) instance is located,enable global access on the producer load balancer.
Check outbound connection status
You can check the status of your outbound (egress) connections through Google Cloud CLI or in the console.
console
View the connection status on theDetails tab of the instance configuration page in the console. ThePSC Configuration fields show the statuses for each type of connection.
gcloud
Run thegcloud looker instances describe --format=json command to check outbound connection status. Each service attachment should be populated with aconnection_status field.
--psc-allowed-vpcs flag in thegcloud command.Troubleshoot outbound connections
If you encounter aRejected connection status when you're configuring a service attachment for outbound connections (for example, when you're connecting to your Git repository or database), check the producer organization policies on the project or organization that's hosting the service attachment. Thecompute.restrictPrivateServiceConnectConsumer list constraint might be preventing the connection. Ensure that the organization, folder, or project that's associated with your Looker (Google Cloud core) instance's network connection is included in the allowed values for this policy on the producer side. See theproducer organization policies documentation for more details.
Delete all outbound connections
To delete all outbound (egress) connections, run the following command:
gcloud looker instances updateMY_INSTANCE --clear-psc-service-attachments \--region=REGION
Replace the following:
INSTANCE_NAME: the name of your Looker (Google Cloud core) instance.REGION: the region in which your Looker (Google Cloud core) instance is hosted.
Northbound access to your instance
After the Looker (Google Cloud core) (Private Service Connect) instance is created, you can set up inbound access to allow your users to access the instance.
If you chose hybrid connections when setting up the instance, you can set up inbound access through the web URL for the instance. That URL can be found on theInstances page of the Google Cloud console, or theCustom domain tab of the instance details page, if you set up a custom domain.
If you selected private connections when setting up the instance, you can set up inbound access to the instance from another VPC network by following theinstructions for creating a Private Service Connect endpoint. Follow these guidelines when creating the endpoint:
- Make sure that the network is allowed inbound access to your Looker (Google Cloud core) instance byadding it to the allowed VPC's list.
Set theTarget service field (if using the Google Cloud console) or the
SERVICE_ATTACHMENTvariable (if using Google Cloud CLI or the Looker API) to the Looker service attachment URI, which you can find by checking theDetails tab on the instance configuration page of the console or by running the following command:gcloud looker instances describeINSTANCE_NAME --region=REGION--format=json
Replace the following:
INSTANCE_NAME: the name of your Looker (Google Cloud core) instance.REGION: the region in which your Looker (Google Cloud core) instance is hosted.
You can use any subnet that is hosted in the same region as the Looker (Google Cloud core) instance.
Global access lets you access your Looker (Google Cloud core) instance from any region. The following bullets explain whether and how you can enable global access:
- If you're using the legacy service attachment URI, global access isn't supported.
- If you're using thenew enhanced service attachment URI, you can enable global access one of two ways:
- If you're using a Private Service Connect network endpoint group (NEG), you can enable global access on theload balancer front end.
- Otherwise, you can enable global accesson the Private Service Connect endpoint.
To access your instance from a hybrid networking environment, you can follow the instructions on theNorthbound access to a Looker (Google Cloud core) instance using Private Service Connect documentation page to set up a custom domain and access the instance.
What's next
Except as otherwise noted, the content of this page is licensed under theCreative Commons Attribution 4.0 License, and code samples are licensed under theApache 2.0 License. For details, see theGoogle Developers Site Policies. Java is a registered trademark of Oracle and/or its affiliates.
Last updated 2026-02-19 UTC.