В кластере Kubernetes. Нужно ли, чтобы главный узел всегда работал один в узле кластера? - PullRequest
0 голосов
/ 04 ноября 2019

Я знаю, что можно разрешить главному узлу выполнять стручки, и это мое дело. Поскольку конфигурация по умолчанию не разрешает мастеру запускать модули. Должен ли я изменить это? В чем причина конфигурации по умолчанию, как она есть?

Если изменение может быть выполнено в некоторых ситуациях. Я хотел бы спросить, если мой кластер в одном из них. В нем всего три узла с одинаковым оборудованием, и, возможно, в обозримом будущем не будет добавлено больше узлов. По моему мнению, поскольку у меня есть три равных узла, это будет пустой тратой ресурсов на использование 1/3 вычислительной мощности моего кластера для запуска мастера kubernetes. Я прав?

[Edit1]

Я нашел следующую причину в документации Kubernets. enter image description here Это, безопасность, единственная причина?

Ответы [ 2 ]

2 голосов
/ 04 ноября 2019

Технически, он не должен запускаться на выделенном узле. Но для того, чтобы ваш кластер Kubernetes работал, вам нужны ваши мастера для правильной работы. И один из способов обеспечить его безопасность, стабильность и производительность - это использовать отдельный узел, который запускает только основные компоненты, а не обычный модуль. Если вы разделяете узел с разными модулями, может быть несколько способов, как это может повлиять на мастер. Например:

  • Другие модули будут влиять на производительность мастеров (задержки сети или диска, кэш-память процессора и т. Д.)
  • Они могут представлять угрозу безопасности (если кому-то удастсявзломать какой-то другой модуль в главный узел)
  • Плохо написанное приложение может вызвать проблемы со стабильностью узла

Хотя это можно рассматривать как трату ресурсов, вы также можете увидеть этов качестве цены, чтобы заплатить за стабильность вашего мастер / кластер Kubernetes. Тем не менее, это не должно быть тратой 1/3 ресурсов. В зависимости от того, как вы развернете свой кластер Kubernetes, вы можете использовать разные хосты для разных узлов. Так, например, вы можете использовать маленький хост для главного и большие узлы для рабочих.

1 голос
/ 04 ноября 2019

Нет, это не обязательно, но настоятельно рекомендуется. Безопасность - это один аспект, а производительность - другой. Etcd обычно запускается на этих узлах плоскости управления, и он склонен к пиковым нагрузкам, если у него заканчивается IOPS. Таким образом, код приложения-мошенника, запускающего приложение, может дестабилизировать плоскость управления, что затем снижает вашу способность решить проблему.

При запуске небольших кластеров в целях тестирования обычно все запускают (плоскость управления и рабочие нагрузки) наодин узел специально для экономии денег / сложности.

...