Kubernetes является системой контейнерного производства с открытым исходным кодом для автоматизации развертывания, масштабирования и управления компьютерными приложениями. Этот блог поможет вам лучше узнать о основных компонентах кластера Kubernetes. Начиная с самой основной единицы кластера Kubernetes:
Струк:
- наименьшая единица кластера Kubernetes
- Обычно предпочитает содержать только один контейнер
Узел:
- единица больше, чем капсула
- состоит из группы стручков
Кластер:
- Коллекция узлов
IP -адреса : Предположим, у вас есть приложение, которое подключается к базе данных. Теперь оба эти компоненты ваш Приложение и База данных стручки. Обе эти стручки используют IP -адреса для подключения друг к другу для управления приложением. Теперь, что, если IP -адрес одного из стручков изменяется по какой -то причине, такой как контейнер в стручке, не может получить достаточно распределения места для его работы, или просто возникла какая -либо проблема, и теперь контейнер уничтожен, и вместе с ним, его IP Адрес также теряется, что используется вашим приложением для подключения к БД (базе данных). Теперь вы создаете новый контейнер и, следовательно, вам нужен новый IP -адрес, и теперь вы должны снова изменить конфигурацию для управления IP -адресами и многое другое.
Это стоит много времени и усилий из -за этой проблемы концепция Услуги Был представлен, который заменяет IP -адреса, или мы можем сказать, что он обеспечивает постоянный IP -адрес, который не изменится, даже если ваш контейнер будет уничтожен.
Ваше приложение сейчас работает нормально И вы хотите получить доступ к вашей приложению в своей системе, и для этого вам нужно получить его на локальном хосте и Сервис предоставит IP -адрес несколько как: https://124.89.101.2:8080
который вы не предпочитаете видеть вместо: https://my-app.com
Здесь наступает роль Вход который в основном преобразует ваш не очень хорошо выглядящий IP -адрес в какой -то предпочтительный IP -адрес, который затем направляет этот IP -адрес в сервисы, который затем используется для связи между различными зависимыми стручками.
Теперь предположим, что ваш зависимый URL -адрес POD, который является URL -адресом услуг, который используется для взаимодействия с другими изменениями стручков, или вы измените его по какой -либо веской причине, тогда вам нужно будет изменить его во всех файлах, файлах конфигурации и многих других, чтобы избежать каких -либо трудностей в будущее. Но это может быть действительно утомительная задача, поэтому эта задача выполняется Конфигурация который в основном хранит URL -адрес услуг, которые используются и зависят от этого, и в этом вы можете просто изменить URL в любое время без какого -либо напряжения при изменении всех файлов.
Теперь могут быть некоторые конфиденциальные данные, которые вы не хотите, чтобы другие видели, эти данные хранятся в Секреты Как user_id, user_password и гораздо более конфиденциальные данные.
Развертывания Развертывание для создания реплик обычно называют чертежом стручков, и на самом деле мы имеем дело только с развертываниями, а не с фактическими стручками. Мы подключаем несколько развертываний через сервисы, которые действуют как балансировщик нагрузки, а когда один Pod/Deployment/Replica умирает (Service), направляет запрос пользователя в другой план/развертывание.
Теперь мы не можем создавать развертывания для баз данных, и это потому, что каждая база данных имеет некоторое состояние, и если мы создаем развертывания баз данных, нам необходимо отслеживать каждый стручок, подобный тому, какой стручок в настоящее время читает данные из хранилища данных, а какие из них пишут данные к этому хранилищу и весь этот механизм должен быть синхронизирован, поддерживается среди каждой копии, чтобы избежать несоответствия данных, что не является легкой задачей, поэтому здесь Statefulsets используются.
Statefulsets используется для создания реплик, работы или Управление приложениями, такими как базы данных, чтобы избежать несоответствия данных.
Справленные ресурсы:
Если вы зашли так далеко, я очень ценю ваши усилия, и я надеюсь, что у вас появилось небольшое представление об основных компонентах кластера Kubernetes. Спасибо за чтение и хорошего дня!:)
Оригинал: «https://dev.to/shatakshiigupta/kubernetes-components-made-easy-part-1-3k38»