Работа с хранилищами в Kubernetes: руководство для инженеров
Как DevOps-инженер я часто сталкиваюсь с необходимостью глубокого понимания тонких аспектов Kubernetes. Одним из таких ключевых элементов является управление хранилищем данных. Хотя этот элемент иногда остаётся в тени других задач, его важность для успешного развёртывания и поддержки приложений велика.
Накопленный мною опыт в этой области стал основой для этой статьи.
Я сфокусируюсь на трёх ключевых элементах управления хранилищем в Kubernetes:
PersistentVolumes (PV).
PersistentVolumeClaims (PVC).
Storage Classes.
https://habr.com/ru/companies/T1Holding/articles/781368/
👉 @devops_star
Как DevOps-инженер я часто сталкиваюсь с необходимостью глубокого понимания тонких аспектов Kubernetes. Одним из таких ключевых элементов является управление хранилищем данных. Хотя этот элемент иногда остаётся в тени других задач, его важность для успешного развёртывания и поддержки приложений велика.
Накопленный мною опыт в этой области стал основой для этой статьи.
Я сфокусируюсь на трёх ключевых элементах управления хранилищем в Kubernetes:
PersistentVolumes (PV).
PersistentVolumeClaims (PVC).
Storage Classes.
https://habr.com/ru/companies/T1Holding/articles/781368/
👉 @devops_star
👍1
Как хранить переменные в terraform?
👉 @devops_star
main.tf
— основной конфигурационный файл, описывающий, какие инстансы необходимо создать. variables.tf
— конфигурация с описанием переменных и значениями по умолчанию. Если значения по умолчанию не задано, то они являются обязательными. terraform.tfvars
— конфигурация со значениями переменных. Часто является секретным файлом, поэтому нужно с осторожностью пушить в публичные репозитарии. outputs.tf
— описание выходных переменных. Необязательный файл, но очень удобно выделять нужные параметры из созданного инстанса, например IP созданного в облаке инстанса.👉 @devops_star
❤2👍1
Использование Open ID Connect (OIDC) в Terraform для безопасного мультиаккаунтного CI/CD в AWS
В этом посте мы рассмотрим, как можно повысить уровень безопасности, используя Open ID Connect (OIDC) в качестве механизма аутентификации в CI/CD конвейерах для развертывания инфраструктуры на базе Terraform в Amazon Web Services (AWS).
https://hedrange.com/2023/10/07/adopt-open-id-connect-oidc-in-terraform-for-secure-multi-account-ci-cd-to-aws
👉 @devops_star
В этом посте мы рассмотрим, как можно повысить уровень безопасности, используя Open ID Connect (OIDC) в качестве механизма аутентификации в CI/CD конвейерах для развертывания инфраструктуры на базе Terraform в Amazon Web Services (AWS).
https://hedrange.com/2023/10/07/adopt-open-id-connect-oidc-in-terraform-for-secure-multi-account-ci-cd-to-aws
👉 @devops_star
👍1
Что такое экспортер? Для чего он используется?
Экспортер служит мостом между сторонней системой или приложением и Prometheus, позволяя Prometheus отслеживать и собирать данные из этой системы или приложения. Экспортер действует как сервер, прослушивая определенный сетевой порт на предмет запросов от Prometheus для сбора метрик. Он собирает метрики из сторонней системы или приложения и преобразует их в формат, понятный Prometheus. Затем экспортер предоставляет эти метрики Prometheus через конечную точку HTTP, делая их доступными для сбора и анализа.
Экспортеры обычно используются для мониторинга различных типов компонентов инфраструктуры, таких как базы данных, веб-серверы и системы хранения данных. Например, существуют экспортеры для мониторинга популярных баз данных, таких как MySQL и PostgreSQL, а также веб-серверов, таких как Apache и Nginx. В целом экспортеры являются критически важным компонентом экосистемы Prometheus, позволяя отслеживать широкий спектр систем и приложений и обеспечивая высокую степень гибкости и расширяемости платформы.
👉 @devops_star
Экспортер служит мостом между сторонней системой или приложением и Prometheus, позволяя Prometheus отслеживать и собирать данные из этой системы или приложения. Экспортер действует как сервер, прослушивая определенный сетевой порт на предмет запросов от Prometheus для сбора метрик. Он собирает метрики из сторонней системы или приложения и преобразует их в формат, понятный Prometheus. Затем экспортер предоставляет эти метрики Prometheus через конечную точку HTTP, делая их доступными для сбора и анализа.
Экспортеры обычно используются для мониторинга различных типов компонентов инфраструктуры, таких как базы данных, веб-серверы и системы хранения данных. Например, существуют экспортеры для мониторинга популярных баз данных, таких как MySQL и PostgreSQL, а также веб-серверов, таких как Apache и Nginx. В целом экспортеры являются критически важным компонентом экосистемы Prometheus, позволяя отслеживать широкий спектр систем и приложений и обеспечивая высокую степень гибкости и расширяемости платформы.
👉 @devops_star
👍2
Главные по контейнеризации в России приглашают на второй митап Deckhouse User Community.
21 августа | Москва
Приходите, если работаете с Kubernetes или планируете начать. Разберём три практических кейса:
→ как DKP управляет узлами кластера — от создания до вывода из кластера;
→ как построить платформу обучения на Community Edition быстрее ванильного Kubernetes;
→ как автоматизировать контроль архитектуры с помощью фитнес-функций.
Будет полезно инженерам эксплуатации, платформенным разработчикам и всем, кто хочет прокачать навыки работы с современными подходами в DevOps.
Только офлайн. Пицца и нетворкинг в программе. Регистрируйтесь!
21 августа | Москва
Приходите, если работаете с Kubernetes или планируете начать. Разберём три практических кейса:
→ как DKP управляет узлами кластера — от создания до вывода из кластера;
→ как построить платформу обучения на Community Edition быстрее ванильного Kubernetes;
→ как автоматизировать контроль архитектуры с помощью фитнес-функций.
Будет полезно инженерам эксплуатации, платформенным разработчикам и всем, кто хочет прокачать навыки работы с современными подходами в DevOps.
Только офлайн. Пицца и нетворкинг в программе. Регистрируйтесь!
❤🔥1👍1🔥1🤣1
Какой код сигнала будет выполнен при исполнении команды kill <PID>?
Сигнал SIGTERM (код 15) — это сигнал по-умолчанию отправляемый при вызове команды kill. Это указывает процессу на завершение работы и обычно считается сигналом для использования при чистом завершении работы.
👉 @devops_star
Сигнал SIGTERM (код 15) — это сигнал по-умолчанию отправляемый при вызове команды kill. Это указывает процессу на завершение работы и обычно считается сигналом для использования при чистом завершении работы.
👉 @devops_star
👍3
Что такое LA? В каких единицах измеряется?
LA (load average) — параметр, определяющий среднюю нагрузку на систему за период времени (1 мин, 5 минут, 15 минут). Изменяется в количестве задач на одно ядро процессора. На нагрузку системы также влияет количество задач ввода-вывода и задержка сети. Также влияние на расчета LA оказывает: 1. Технология Hyper-Threading, которая делит одно физическое ядро на 2 логических, 2. Технология Turbo Bust, которая позволяет разгонять тактовую частоту процессора и работать на частоте выше заявленной, т.е. выше номинальной частоты (время на обработку одной задачи уменьшается).
👉 @devops_star
LA (load average) — параметр, определяющий среднюю нагрузку на систему за период времени (1 мин, 5 минут, 15 минут). Изменяется в количестве задач на одно ядро процессора. На нагрузку системы также влияет количество задач ввода-вывода и задержка сети. Также влияние на расчета LA оказывает: 1. Технология Hyper-Threading, которая делит одно физическое ядро на 2 логических, 2. Технология Turbo Bust, которая позволяет разгонять тактовую частоту процессора и работать на частоте выше заявленной, т.е. выше номинальной частоты (время на обработку одной задачи уменьшается).
👉 @devops_star
👍2
Terrareg
Реестр модулей Terraform с открытым исходным кодом, пользовательским интерфейсом, дополнительной интеграцией с Git и глубоким анализом
Предоставляет функции для упрощения использования и поиска модулей, включая:
- Полностью реализованный API модулей Terraform
- Полностью управляемый через API для автоматизации всех функций
- Хранение модулей Terraform локально или из внешнего Git-источника
- Аналитика использования модулей
- Вся информация о модуле — README, входные и выходные параметры, требования к провайдерам и управляемые ресурсы
- Уведомления о безопасности для каждого модуля, подмодуля и примеров
- Оценка стоимости для каждого примера модуля
- Исходный код примеров модулей прямо в интерфейсе с автоматической перепиской аргументов
- Интерактивный «Конструктор использования» для помощи в создании Terraform-кода, использующего модули
- Хуки для приложений Git SCM для автоматической индексации модулей
- Аутентификация через SSO (OpenID Connect/SAML2) и GitHub
- Поддержка провайдеров Terraform (на очень ранней альфа-версии)
https://github.com/MatthewJohn/terrareg
👉 @devops_star
Реестр модулей Terraform с открытым исходным кодом, пользовательским интерфейсом, дополнительной интеграцией с Git и глубоким анализом
Предоставляет функции для упрощения использования и поиска модулей, включая:
- Полностью реализованный API модулей Terraform
- Полностью управляемый через API для автоматизации всех функций
- Хранение модулей Terraform локально или из внешнего Git-источника
- Аналитика использования модулей
- Вся информация о модуле — README, входные и выходные параметры, требования к провайдерам и управляемые ресурсы
- Уведомления о безопасности для каждого модуля, подмодуля и примеров
- Оценка стоимости для каждого примера модуля
- Исходный код примеров модулей прямо в интерфейсе с автоматической перепиской аргументов
source
- Интерактивный «Конструктор использования» для помощи в создании Terraform-кода, использующего модули
- Хуки для приложений Git SCM для автоматической индексации модулей
- Аутентификация через SSO (OpenID Connect/SAML2) и GitHub
- Поддержка провайдеров Terraform (на очень ранней альфа-версии)
https://github.com/MatthewJohn/terrareg
👉 @devops_star
🔥2👍1
Если на каждой ноде Kubernetes кластера нужно запустить контейнер, то какой ресурс Kubernetes вам подойдет?
DaemonSet является контроллером, основным назначением которого является запуск подов на всех нодах кластера. Если нода добавляется/удаляется — DaemonSet автоматически добавит/удалит под на этой ноде.
DaemonSet подходят для запуска приложений, которые должны работать на всех нодах, например — екпортёры мониторинга, сбор логов и так далее.
👉 @devops_star
DaemonSet является контроллером, основным назначением которого является запуск подов на всех нодах кластера. Если нода добавляется/удаляется — DaemonSet автоматически добавит/удалит под на этой ноде.
DaemonSet подходят для запуска приложений, которые должны работать на всех нодах, например — екпортёры мониторинга, сбор логов и так далее.
👉 @devops_star
👍3
KrakenD
Это расширяемый, сверхвысокопроизводительный API-шлюз, который поможет вам без труда внедрить микросервисы и безопасные коммуникации. KrakenD прост в эксплуатации и управлении и масштабируется без единой точки отказа.
https://github.com/krakend/krakend-ce
👉 @devops_star
Это расширяемый, сверхвысокопроизводительный API-шлюз, который поможет вам без труда внедрить микросервисы и безопасные коммуникации. KrakenD прост в эксплуатации и управлении и масштабируется без единой точки отказа.
https://github.com/krakend/krakend-ce
👉 @devops_star
👍2
This media is not supported in your browser
VIEW IN TELEGRAM
CLI инструменты, которые облегчат времяпровождение в терминале и сделают его приятнее
Многие из вас каждый день работают в терминале, так давайте улучшим это времяпровождение вместе. Существует множество полезных инструментов CLI, которые могут сделать вашу жизнь в командной строке проще, быстрее и в целом веселее.
В этом посте описан мой топ-25 обязательных инструментов CLI, на которые я привыкла полагаться.
Rus https://habr.com/ru/post/711968/
Eng https://dev.to/lissy93/cli-tools-you-cant-live-without-57f6#utils
👉 @devops_star
Многие из вас каждый день работают в терминале, так давайте улучшим это времяпровождение вместе. Существует множество полезных инструментов CLI, которые могут сделать вашу жизнь в командной строке проще, быстрее и в целом веселее.
В этом посте описан мой топ-25 обязательных инструментов CLI, на которые я привыкла полагаться.
Rus https://habr.com/ru/post/711968/
Eng https://dev.to/lissy93/cli-tools-you-cant-live-without-57f6#utils
👉 @devops_star
👍1
This media is not supported in your browser
VIEW IN TELEGRAM
🐾 Tabby
Это самостоятельный помощник по написанию кода с искусственным интеллектом, представляющий собой альтернативу GitHub Copilot с открытым исходным кодом и локальным ресурсом. Он может похвастаться несколькими ключевыми особенностями:
Самодостаточность, отсутствие необходимости в СУБД или облачном сервисе.
Интерфейс OpenAPI, легко интегрируемый с существующей инфраструктурой (например, Cloud IDE).
Поддержка графических процессоров потребительского класса.
https://github.com/TabbyML/tabby
👉 @devops_star
Это самостоятельный помощник по написанию кода с искусственным интеллектом, представляющий собой альтернативу GitHub Copilot с открытым исходным кодом и локальным ресурсом. Он может похвастаться несколькими ключевыми особенностями:
Самодостаточность, отсутствие необходимости в СУБД или облачном сервисе.
Интерфейс OpenAPI, легко интегрируемый с существующей инфраструктурой (например, Cloud IDE).
Поддержка графических процессоров потребительского класса.
https://github.com/TabbyML/tabby
👉 @devops_star
👍1