Kubernetes – это инструмент с открытым кодом. Он заботится об организации контейнеров, автоматизирует их развертывание,обеспечивает беспрерывное увеличение и снятие масштаба, балансировку загрузки и тому подобное.
Kubernetes – это подходящая платформа для расположения микросервисных программ, динамично масштабируемых. Когда работа происходит в производственной среде, такой инструмент является наиболее желаемым и надежным для контейнерной оркестрации.
Для производственной среды необходимо исключить простои, поэтому кластер должен работать бесперебойно.
С помощью облачной платформы Google (GCP) вы можете запустить Kubernetes всего несколькими кликами. Его поддерживают другие провайдеры, например, AWS и Azure. Существует число управляемых платформ Kubernetes со средами docker, kubelet и cAdvisor.
Kubernetes узлы: как настроить под ключ
Ранее противостостояние разработчиков с тестерами была обычным занятием. Среды для их работы были разными. То, что работало в системе у разработчика, не работало для тестеров.
Теперь, когда большая часть организаций пользуется контейнерами, проблем, которые возникают из-за различий в окружающей среде, больше не возникает.
Но организация и запуск нескольких контейнеров – тоже непростая задача. Для работы с динамическими программами, увеличением/уменьшением количества, число контейнеров – это обычное дело. Выполнять такие задачи вручную может быть сложно и рискованно. Следовательно, нужен инструмент для оркестровки контейнеров. Поэтому необходимо использовать Kubernetes.
В целом Кубернет можно считать большим «суперузлом», общей вычислительной мощностью которого является суммарная мощность всех входящих в него мелких составляющих.
Чтобы получить необходимую емкость кластера, существуют несколько способов. Например, необходима общая емкость кластера в 32 ГБ ОЗУ или в 8 процессорных ядер. Для этого рекомендуется установить 2 узла объемомпо 16 ГБ ОЗУ или небольшие 4 по 8, 2 процессора по 4 ядра, или 4 по 2.
Концепция использования больших узлов или маленьких в результате дает один и тот же результат по ресурсам. Какой же вариант будет оптимальным?
Чтобы их сравнить, разберем все преимущества того и другого способа и соберем в таблице.
Большие Kubernetes узлы | Маленькие |
On-premise управлять проще | Автоматическое масштабирование производится плавно |
Система On-premise – доступнее по цене | В облаке цена практически не отличается |
Есть возможность запустить более одного приложения | Наличие полноценной репликации |
Наличие оверхеда на системы-демоны меньше (все ресурсы применяются максимально эффективно) | Отказоустойчивость – повышенная |
Обращаем внимание, что речь идет только о рабочих составляющих.
Из недостатков использования нескольких крупных узлов стоит отметить такие:
- Предусматривается больше нагрузка pod’ов.
- Наличие ограничений на репликации.
- Последствия сбоев ощущаются тяжелее.
- Шаги автоматического масштабирования больше.
Маленькие Kubernetes узлы имеют следующие недостатки:
- Настроить управление сложнее.
- Увеличение накладных расходов.
- Применение ресурсов менее эффективное.
Так что же лучше: установить несколько больших узлов кластера или отдать предпочтение маленьким? Точного ответа на данный вопрос не существует. Так как выбор нужно осуществлять, в первую очередь, ориентируясь на тип приложения.
Например, если для того чтобы создать и запустить приложение, необходимо 10 ГБ ОЗУ, то лучше установить большие. А вот, если для него нужно поставить исходную десятикратную репликацию, рисковать и устанавливать большие Kubernetes узлы не стоит. Для такого кластера оптимальный вариант – 10 шт. по 1 ГБ. Каждая ситуация имеет свои нюансы, поэтому учитывайте все плюсы и минусы при выборе или проконсультируйтесь со специалистами.