Category Archives: k8s
1. Основные концепции хранения в Kubernetes
1.1 Архитектура хранения данных
Kubernetes предоставляет абстракции для работы с постоянным хранением:
- PersistentVolume (PV)
- ресурс кластера, представляющий физическое хранилище
- PersistentVolumeClaim (PVC)
- запрос пользователя на выделение хранилища
- StorageClass
- описание «класса» хранилища и способа его provisioning
[Физическое хранилище] → [PersistentVolume] ← [PersistentVolumeClaim] ← [Pod]
1.2 Жизненный цикл PVC
- Пользователь создаёт PVC с указанием требований
- Kubernetes находит подходящий PV или создаёт новый (динамический provisioning)
- PVC привязывается к PV
- Pod монтирует PVC как volume
- После удаления PVC ресурс может быть освобождён или сохранён (в зависимости от политики)
Kubernetes предоставляет мощные инструменты для управления контейнеризированными приложениями, обеспечивая их масштабируемость, надежность и автоматизацию. Одним из таких инструментов является LimitRange, который позволяет администраторам кластера устанавливать ограничения на использование ресурсов для контейнеров и pod в определенных namespace. В этой статье мы рассмотрим, что такое LimitRange, как его создавать и использовать, а также лучшие практики для его применения.
Что такое LimitRange?
LimitRange — это ресурс Kubernetes, который позволяет устанавливать минимальные и максимальные ограничения на использование ресурсов (таких как CPU и память) для контейнеров и pod в определенном namespace. Это помогает предотвратить перегрузку узлов и обеспечивает справедливое распределение ресурсов между различными приложениями и пользователями. (далее…)
Ingress в Kubernetes — это мощный ресурс, который позволяет управлять входящим трафиком к приложениям, развернутым в кластере. Ingress предоставляет возможность маршрутизации HTTP(S)-запросов к различным сервисам, на основе правил, определенных в Ingress-ресурсах. В этой статье мы рассмотрим, что такое Ingress, как его настроить и использовать, а также лучшие практики для его применения.
Что такое Ingress?
Ingress — это объект Kubernetes, который управляет внешним доступом к сервисам в кластере, обычно через HTTP и HTTPS. Ingress позволяет определять правила маршрутизации, которые определяют, как входящие запросы должны быть направлены к соответствующим сервисам. Это особенно полезно для управления множеством микросервисов, развернутых в одном кластере. (далее…)
Deployment в Kubernetes — это один из ключевых ресурсов, предназначенный для управления развертыванием и масштабированием приложений. Deployment обеспечивает автоматизацию обновлений, откатов к предыдущим версиям и масштабирования реплик приложений, что делает его незаменимым инструментом для обеспечения стабильности и надежности работы контейнеризированных приложений. В этой статье мы рассмотрим основные аспекты Deployment, его создание и использование, а также лучшие практики работы с ним.
Основные компоненты Deployment
- ReplicaSet: deployment управляет ReplicaSet, который, в свою очередь, управляет созданием и удалением pod. ReplicaSet гарантирует, что заданное количество реплик pod всегда работает.
- Pod Template: шаблон pod определяет конфигурацию контейнеров, которые будут запущены в каждом pod. Это включает в себя образы контейнеров, порты, переменные окружения и другие параметры.
- Стратегии обновления: deployment поддерживает стратегии обновления, такие как RollingUpdate и Recreate, которые определяют, как будут обновляться pod при изменении конфигурации.
- Селекторы используются для определения, какие pod управляются Deployment. Это позволяет Deployment отслеживать и управлять только теми pod, которые соответствуют заданным меткам.
Что такое ConfigMap?
ConfigMap — это ресурс Kubernetes, предназначенный для хранения неконфиденциальных данных конфигурации в виде пар “ключ-значение”. Эти данные могут включать в себя параметры конфигурации, настройки окружения, конфигурационные файлы и другие данные, которые необходимы приложению для корректной работы. ConfigMap позволяет отделить конфигурационные данные от образов контейнеров, что облегчает управление и обновление конфигурации без необходимости пересборки контейнеров. (далее…)
0