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:

apiVersion: deckhouse.io/v1alpha1
kind: ModuleConfig
metadata:
  name: cloud-provider-gcp
spec:
  version: 1
  enabled: true
  settings: # <-- Module parameters from the "Parameters" section below.

Parameters

Schema version: 1

  • settings
    object
    • settings.storageClass
      object
      • settings.storageClass.default
        Deprecated
        string

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

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

        • existing StorageClass present in the cluster that has the default annotation;
        • the first (in lexicographic order) StorageClass created by the module (in accordance with the order listed in the table above).

        Parameter is deprecated. Instead, use the global parameter global.defaultClusterStorageClass.

        Example:

        default: pd-ssd-not-replicated
        
      • settings.storageClass.exclude
        array of strings

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

        Example:

        exclude:
        - pd-standard.*
        - pd-ssd-replicated