Ресурсы Kubernetes

Автор Itworkroom
k8s

Ресурсы Kubernetes
Namespace* (ns) [v1] — позволяет организовывать ресурсы в неперекрывающиеся группы (для каждого потребителя ресурсов).

Развертывающие рабочие нагрузки
Pod (po) [v1] — основная развертываемая единица, содержащая один или более процессов в расположенных рядом контейнерах. Метки (Labels).
ReplicaSet (rs) — поддерживает одну или несколько реплик модуля.
ReplicationController (rc) [v1] – устаревший и менее функциональный эквивалент ресурса ReplicaSet.
Job — запускает модули, выполняющие завершаемую задачу.
CronJob [batch/v1beta1] — запускает назначаемое задание один раз или периодически.
DaemonSet (ds) — запускает одну реплику модуля в расчете на узел (на всех узлах или только на тех, которые соответствуют селектору узлов).
StatefulSet (sts) — запускает модули, имеющие внутреннее состояние, со стабильной идентичностью.
Deployment (deploy) — декларативное развертывание и обновление модулей.

Службы
Service (svc) [v1] — предоставляет доступ к одному или нескольким модулям на одной и стабильной паре IP-адреса и порта.
Endpoints (ep) [v1] — определяет, к каким модулям (или другим серверам) предоставляется доступ через службу.
NodePort — открывает сервис на том же порту каждого выбранного узла в кластере с помощью NAT. Делает сервис доступным вне кластера через :.
Ingress (ing) [extensions/v1beta1] — предоставляет внешним клиентам доступ к одной или нескольким службам через один доступный извне IP-адрес.

Конфигурация
ConfigMap (cm) [v1] — словарь в формате «ключ-значение» для хранения незащищенных параметров конфигурации приложений и предоставления им доступа к ним.
Secret [v1] — словарь в формате «ключ-значение» для хранения конфиденциальных данных. (далее…)

Kubernetes Jobs

Автор Itworkroom

kubernetes-jobsЗа пределами модулей: раскрываем потенциал заданий Kubernetes для сложных рабочих нагрузок

Поды Kubernetes — это «рабочие лошадки» платформы, но они не всегда являются лучшим инструментом для каждой задачи. Для задач, которые являются конечными, независимыми и не требуют постоянного состояния, Kubernetes Jobs предлагают более совершенный подход, предоставляя надёжные механизмы для управления и мониторинга этих критически важных рабочих нагрузок. В этой статье рассматриваются нюансы использования Kubernetes Jobs помимо простой пакетной обработки, а также передовые методы и сценарии использования. (далее…)

Kubernetes меняет подход к разработке для PHP

Автор Itworkroom
vacancies php

Современные тенденции в мире серверов: как Kubernetes меняет подход к разработке для PHP

В эпоху быстрой цифровизации и постоянного роста востребованности веб-приложений, разработка стала гораздо более сложной и многогранной задачей. Сервера играют центральную роль в этом процессе, и среди технологий, формирующих будущее, выделяется Kubernetes. Эта статья объясняет, как Kubernetes влияет на работу PHP разработчиков и какие вакансии становятся актуальными на рынке труда.

Роль серверов в веб-разработке

Серверы являются основой для любого веб-приложения. Они хранят данные, обрабатывают запросы и обеспечивают взаимодействие пользователя с приложением. Веб-разработка требует надежности и масштабируемости серверной инфраструктуры. Системы, способные быстро адаптироваться к изменяющимся условиям, становятся неотъемлемой частью успеха бизнеса.
(далее…)

Что такое серверы VPS, VDS и Bare Metal

Автор Itworkroom

Что такое серверы VPS, VDS и Bare Metal.

Обзор технологий виртуализации и выделенных серверов в современном мире информационных технологий, выбор подходящего сервера для ваших нужд является критически важным. Серверы могут различаться как по архитектуре, производительности так и цене. В данной статье мы рассмотрим три популярных типа серверов: VPS (Virtual Private Server), VDS (Virtual Dedicated Server) и Bare Metal.
1. VPS (Virtual Private Server) — это виртуальный частный сервер, который позволяет пользователям арендовать часть физического сервера. Несмотря на то что физический сервер делится между несколькими пользователями, каждый VPS работает как отдельный сервер с собственными ресурсами и операционной системой.

Преимущества:

— Экономия: VPS обычно дешевле выделенных серверов, что делает его отличным выбором для малых и средних бизнесов.

— Настраиваемость: Пользователи имеют контроль над серверной средой, включая установку приложений и настроек.

— Изоляция: Проблемы, возникающие на одном VPS, не влияют на другие, поскольку каждый работает независимо.

Недостатки:

— Ограниченные ресурсы: Ресурсы VPS делятся с другими пользователями, что может привести к снижению производительности в пиковые часы.

— Безопасность: Несмотря на изоляцию, уровень безопасности может варьироваться в зависимости от провайдера.

2. VDS (Virtual Dedicated Server)  — это разновидность VPS, но с выделением ресурсов. В то время как на VPS ресурсы могут быть динамически распределены, на VDS вы получаете гарантированные ресурсы, которые не подвержены изменению. (далее…)

Горизонтальное автомасштабирование модуля HorizontalPodAutoscaler (HPA)

Автор Itworkroom

Горизонтальное автомасштабирование модуля

Горизонтальное автомасштабирование модуля – это автоматическое масштабирование количества реплик модуля, управляемых контроллером. Оно выполняется горизонтальным контроллером, который активируется и конфигурируется путем создания ресурса HorizontalPodAutoscaler (HPA). Данный контроллер периодически проверяет метрики модуля, вычисляет количество реплик, необходимое для соответствия целевому значению метрики, сконфигурированной в ресурсе HorizontalPodAutoscaler, и настраивает поле replicas на целевом ресурсе (развертывании Deployment, наборе реплик ReplicaSet, контроллере репликации ReplicationController или наборе модулей с внутренним состоянием StatefulSet)

Процесс автомасштабирования

Процесс автомасштабирования можно разделить на три этапа:

  • получение метрик всех модулей, управляемых масштабируемым ресурсным объектом;
  • расчёт количества модулей, необходимого для приведения метрик к указанному целевому значению (или близкому к нему);
  • обновление поля replicas масштабируемого ресурса. Далее мы рассмотрим все три этапа

Получение метрик модуля

Автопреобразователь масштаба сам не выполняет сбор метрик модуля. Он получает метрики из другого источника. Метрики модуля и узла собираются агентом под названием cAdvisor, который выполняется в Kubelet на каждом узле, а затем агрегируется кластерным компонентом под названием Heapster. Контроллер автопреобразователя горизонтального масштаба модуля получает метрики всех модулей, запрашивая агрегатор Heapster посредством вызовов REST.

(далее…)