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
- storageClass
- storageClass.default
The name of StorageClass that will be used in the cluster by default;
If the parameter is omitted, the default StorageClass is either:
- existing default StorageClass (that has the annotation (storageclass.kubernetes.io/is-default-class: “true”).
- the first StorageClass created by the module (in accordance with the order listed in the table above).
Example:
default: pd-ssd-not-replicated
- storageClass.exclude
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