Документация находится в разработке, может содержать неполную информацию.
Стратегии размещения
Для компонентов управления виртуализации предусмотрено 3 стратегии размещения: master
, system
, any-node
.
master
Компоненты размещаются на master-узлах. Это компоненты, реализующие APIService, либо компоненты, в составе которых запускается Validating-вебхук или Mutating-вебхук.
system
Компоненты с этой стратегией по умолчанию размещаются на master-узлах.
Однако, создав NodeGroup system
или virtualization
, можно снять нагрузку с master-узлов и перенести управляющие компоненты виртуализации на выделенные узлы.
any-node
Это набор tolerations, благодаря которому компонент может быть запущен на любом узле в кластере.
Узлы для стратегии system
Чтобы выделить узлы для стратегии system
, нужно создать NodeGroup system
и добавить в неё узлы.
d8 k create -f - <<EOF
apiVersion: deckhouse.io/v1
kind: NodeGroup
metadata:
name: system
spec:
nodeTemplate:
labels:
node-role.deckhouse.io/system: ""
taints:
- effect: NoExecute
key: dedicated.deckhouse.io
value: system
nodeType: Static
EOF
Чтобы узел добавился в NodeGroup system
, его StaticInstance должен иметь метку node-role.deckhouse.io/system
(подробнее в разделе про добавление узла с помощью CAPS и label selector).
Например:
d8 k create -f - <<EOF
apiVersion: deckhouse.io/v1alpha1
kind: StaticInstance
metadata:
name: system-1
labels:
node-role.deckhouse.io/system: ""
spec:
address: "<SERVER-SYSTEM-IP1>"
credentialsRef:
kind: SSHCredentials
name: system-1-credentials
EOF
Стратегию system
используют другие компоненты платформы, например, Prometheus. Поэтому, создавая system-узлы, нужно учитывать, что на них переедут некоторые компоненты платформы.
Для выделения узлов под компоненты виртуализации нужно создать NodeGroup virtualization
, на узлах этой группы компоненты платформы не будет размещаться.
d8 k create -f - <<EOF
apiVersion: deckhouse.io/v1
kind: NodeGroup
metadata:
name: virtualization
spec:
nodeTemplate:
labels:
node-role.deckhouse.io/virtualization: ""
taints:
- effect: NoExecute
key: dedicated.deckhouse.io
value: virtualization
nodeType: Static
EOF