Note! If the parameters provided below are changed, the existing Machines are NOT redeployed (new machines will be created with the updated parameters). Redeployment is only performed when
NodeGroup
andYandexInstanceClass
are changed. Details in the node-manager module’s documentation.
The module has 3 alerts.
Storage
The module automatically creates StorageClasses covering all available disks in Yandex:
Type | StorageClass Name | Comment |
---|---|---|
network-hdd | network-hdd | |
network-ssd | network-ssd | |
network-ssd-nonreplicated | network-ssd-nonreplicated | |
network-ssd-io-m3 | network-ssd-io-m3 | Disk size must be a multiple of 93 GB. |
You can filter out the unnecessary StorageClasses via the exclude parameter.
Important information concerning the increase of the PVC size
Due to the nature of volume-resizer, CSI, and Yandex Cloud API, you have to do the following after increasing the PVC size:
- On the node where the Pod is located, run the
kubectl cordon <node_name>
command. - Delete the Pod.
- Make sure that the resize was successful. The PVC object must not have the
Resizing
state.The
FileSystemResizePending
state is OK. - On the node where the Pod is located, run the
kubectl uncordon <node_name>
command.
LoadBalancer
The module subscribes to Service objects of the LoadBalancer
type and creates the corresponding NetworkLoadBalancer
and TargetGroup
in Yandex Cloud.
For more information, see the Kubernetes Cloud Controller Manager for Yandex Cloud documentation.
The module is configured using the ModuleConfig custom resource named cloud-provider-yandex
(learn more about setting up Deckhouse…).
Example of the ModuleConfig/cloud-provider-yandex
resource for configuring the module:
apiVersion: deckhouse.io/v1alpha1
kind: ModuleConfig
metadata:
name: cloud-provider-yandex
spec:
version: 1
enabled: true
settings: # <-- Module parameters from the "Parameters" section below.
Parameters
Schema version: 1
- additionalExternalNetworkIDs
A list of Network IDs that will be considered
ExternalIP
when listing Node addresses.Default:
[]
- storageClass
- storageClass.default
The name of StorageClass that will be used by default in the cluster.
If the parameter is omitted, the default StorageClass will be one of the following:
- An arbitrary StorageClass present in the cluster that has the default annotation.
- The first (in lexicographic order) StorageClass of those created by the module.
Example:
default: network-hdd
- storageClass.exclude
A list of StorageClass names (or regex expressions for names) to exclude from the creation in the cluster;
Example:
exclude: - network-ssd-.* - network-hdd