- Read-only - cost estimates and cluster discovery only. Ankra never modifies resources.
- GKE provisioning - everything read-only does, plus creating and managing GKE clusters.
What Ankra Accesses
For cost estimation and discovery, Ankra calls three Google APIs with the service account, all read-only:
Provisioning GKE additionally uses:
Creating a GCP Credential
Pick the tab that matches what you want the credential to do. Each flow is complete - follow one from top to bottom.- Read-only (cost and discovery)
- GKE provisioning
Grants the Viewer role (The downloaded JSON must contain
roles/viewer) only. Ankra can price your nodes and discover clusters, but cannot create or change anything.1
Enable the required APIs
In the Google Cloud Console, select your project and enable the Cloud Resource Manager API, Cloud Billing API, and Compute Engine API.Or with the
gcloud CLI:2
Create a read-only service account
- Go to IAM & Admin → Service Accounts → Create service account
- Give it a name such as
ankra-cost-readonly - Grant it the Viewer role (
roles/viewer) on the project - or a custom read-only role
gcloud (reusing the PROJECT_ID from the previous step):3
Create and download a JSON key
- Open the service account → Keys → Add key → Create new key
- Choose JSON and download the file
gcloud:client_email, private_key, and token_uri.4
Add to Ankra (UI)
Go to Credentials → Add → Google Cloud (GCP), then provide:
- Name: a unique identifier - lowercase letters and numbers only, cannot start with a hyphen (e.g.
gcp-prod) - Project ID: your GCP project ID (e.g.
acme-prod) - Service Account Key (JSON): paste the full contents of the downloaded key file
Already added a read-only credential and want to provision GKE? Grant the extra roles and enable the Kubernetes Engine API on the same service account (run the
add-iam-policy-binding and services enable commands from the GKE provisioning tab with your existing account’s name) - no need to create a new credential in Ankra.Troubleshooting GCP Credentials
Forgcloud setup errors during service-account creation (such as does not have permission ... (or it may not exist)), see the warning in the Create a service account step above - it’s almost always an unsubstituted PROJECT_ID placeholder or a missing setIamPolicy permission.
The table below covers the Test connection result in the Ankra UI:
Test connection only verifies read access. If the credential saves fine but GKE cluster creation fails with a permissions error, the service account is missing
roles/container.admin or roles/iam.serviceAccountUser, or the Kubernetes Engine API is not enabled - see the GKE provisioning tab above.
Creating a VPC network from the cluster wizard fails with Required 'compute.networks.create' permission when the service account lacks Compute Network Admin (roles/compute.networkAdmin) - grant it with the optional binding from the GKE provisioning tab, or pick an existing network instead.