The module is configured automatically based on the chosen placement strategy defined in the GCPClusterConfiguration struct. In most cases, you do not have to configure the module manually.

You can configure the number and parameters of provisioning machines in the cloud via the NodeGroup custom resource of the node-manager module. Also, in this custom resource, you can specify the instance class’s name for the above group of nodes (the cloudInstances.ClassReference parameter of NodeGroup). In the case of the GCP cloud provider, the instance class is the GCPInstanceClass custom resource that stores specific parameters of the machines.

The module automatically creates StorageClasses that cover all the available disk types in GCP:

Type Replication StorageClass Name
standard none pd-standard-not-replicated
standard regional pd-standard-replicated
balanced none pd-balanced-not-replicated
balanced regional pd-balanced-replicated
ssd none pd-ssd-not-replicated
ssd regional pd-ssd-replicated

Also, it can filter out the unnecessary StorageClasses (you can do this via the exclude parameter).

The module is configured using the ModuleConfig custom resource named cloud-provider-gcp (learn more about setting up Deckhouse…).

Example of the ModuleConfig/cloud-provider-gcp resource for configuring the module:

kind: ModuleConfig
  name: cloud-provider-gcp
  version: 1
  enabled: true
  settings: # <-- Module parameters from the "Parameters" section below.


Schema version: 1

  • storageClassobject
    • storageClass.defaultstring

      The name of StorageClass that will be used in the cluster by default;

      If the parameter is omitted, the default StorageClass is either:


      default: pd-ssd-not-replicated
    • storageClass.excludearray of strings

      A list of StorageClass names (or regex expressions for names) to exclude from the creation in the cluster;


      - pd-standard.*
      - pd-ssd-replicated