DevOps – Telegram
DevOps
8.47K subscribers
1.46K photos
812 videos
28 files
1.74K links
Docker, Kubernetes, облачные сервисы (AWS, GCP, Azure), Infrastructure as a Code (Terraform, CloudFormation), администрирование Windows и Linux, сети TCP, IP, скрипты (Bash, PowerShell), Ansible, Jenkins, DevSecOps, логирование. По вопросам @evgenycarter
Download Telegram
Prometheus и централизованное хранение данных: Когда это нужно, как это работает и что такое Mimir

После того как в первой части цикла были рассмотрены основы архитектуры Prometheus и ее хранилища, мы продолжаем исследовать связанные с хранением данных проблемы и существующие решения. Мы начнем с истории вымышленного стартапа, который занимается разработкой программного обеспечения, сбором метрик и пытается найти оптимальные способы их хранения и обработки. Мы будем наблюдать за тем, как он развивается и как его система мониторинга будет соответствовать растущим требованиям бизнеса.

https://blog.palark.com/prometheus-centralized-storage-mimir/

#devops #девопс

Подпишись 👉@i_DevOps
👍5🔥2👎1
Terraform AWS Provider - Все, что нужно знать о многоаккаунтной аутентификации и настройке

Существует множество вариантов настройки аутентификации между Terraform и AWS. Но две точки входа - это пользователи IAM и пользователи IAM Identity Center (SSO). Аутентификация настраивается в Terraform AWS Provider, выбор опции зависит, в частности, от того, выполняете ли вы Terraform с локальной машины, или из CI/CD, и т.д.

https://hector-reyesaleman.medium.com/terraform-aws-provider-everything-you-need-to-know-about-multi-account-authentication-and-f2343a4afd4b

#devops #девопс

Подпишись 👉@i_DevOps
👍3
Работа с хранилищами в Kubernetes: руководство для инженеров

Как DevOps-инженер я часто сталкиваюсь с необходимостью глубокого понимания тонких аспектов Kubernetes. Одним из таких ключевых элементов является управление хранилищем данных. Хотя этот элемент иногда остаётся в тени других задач, его важность для успешного развёртывания и поддержки приложений велика.

Накопленный мною опыт в этой области стал основой для этой статьи.

Я сфокусируюсь на трёх ключевых элементах управления хранилищем в Kubernetes:

PersistentVolumes (PV).
PersistentVolumeClaims (PVC).
Storage Classes.

https://habr.com/ru/companies/T1Holding/articles/781368/

#devops #девопс

Подпишись 👉@i_DevOps
👍72
Как хранить переменные в terraform?

main.tf — основной конфигурационный файл, описывающий, какие инстансы необходимо создать. variables.tf — конфигурация с описанием переменных и значениями по умолчанию. Если значения по умолчанию не задано, то они являются обязательными. terraform.tfvars — конфигурация со значениями переменных. Часто является секретным файлом, поэтому нужно с осторожностью пушить в публичные репозитарии. outputs.tf — описание выходных переменных. Необязательный файл, но очень удобно выделять нужные параметры из созданного инстанса, например IP созданного в облаке инстанса.

#devops #девопс

Подпишись 👉@i_DevOps
👍52
Использование 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 #девопс

Подпишись 👉@i_DevOps
👍31
Какой код сигнала будет выполнен при исполнении команды kill <PID>?

Сигнал SIGTERM (код 15) — это сигнал по-умолчанию отправляемый при вызове команды kill. Это указывает процессу на завершение работы и обычно считается сигналом для использования при чистом завершении работы.

#devops #девопс

Подпишись 👉@i_DevOps
👍11
Что такое LA? В каких единицах измеряется?

LA (load average) — параметр, определяющий среднюю нагрузку на систему за период времени (1 мин, 5 минут, 15 минут). Изменяется в количестве задач на одно ядро процессора. На нагрузку системы также влияет количество задач ввода-вывода и задержка сети. Также влияние на расчета LA оказывает: 1. Технология Hyper-Threading, которая делит одно физическое ядро на 2 логических, 2. Технология Turbo Bust, которая позволяет разгонять тактовую частоту процессора и работать на частоте выше заявленной, т.е. выше номинальной частоты (время на обработку одной задачи уменьшается).

#devops #девопс

Подпишись 👉@i_DevOps
👍7🔥3
Terrareg

Реестр модулей Terraform с открытым исходным кодом, пользовательским интерфейсом, дополнительной интеграцией с Git и глубоким анализом

Предоставляет возможности для облегчения использования и поиска модулей, обеспечивая:
Полностью реализованный API модулей Terraform
Полностью управляемый API для автоматизации всех функций
Размещение модулей Terraform внутри или из внешнего источника Git
Аналитика использования модулей
Вся информация о модуле - README, входы, выходы, требования к провайдеру и управляемые ресурсы
Предупреждения о безопасности для каждого модуля, подмодуля и примеров
Оценка стоимости для каждого примера модуля
Исходный код примера модуля в пользовательском интерфейсе, с автоматическим переписыванием аргументов 'source'
Интерактивный «Usage builder», помогающий пользователям создавать terraform для использования модулей terraform
Хуки для приложений git SCM для автоматического индексирования модулей
Аутентификация через SSO (OpenIDConnect/SAML2) и GitHub
Поддержка провайдера Terraform (очень ранняя альфа-версия)

https://github.com/MatthewJohn/terrareg

#devops #девопс

Подпишись 👉@i_DevOps
👍5
Если на каждой ноде Kubernetes кластера нужно запустить контейнер, то какой ресурс Kubernetes вам подойдет?

DaemonSet является контроллером, основным назначением которого является запуск подов на всех нодах кластера. Если нода добавляется/удаляется — DaemonSet автоматически добавит/удалит под на этой ноде.

DaemonSet подходят для запуска приложений, которые должны работать на всех нодах, например — екпортёры мониторинга, сбор логов и так далее.

#devops #девопс

Подпишись 👉@i_DevOps
👍8
KrakenD

Это расширяемый, сверхвысокопроизводительный API-шлюз, который поможет вам без труда внедрить микросервисы и безопасные коммуникации. KrakenD прост в эксплуатации и управлении и масштабируется без единой точки отказа.

https://github.com/krakend/krakend-ce

#devops #девопс

Подпишись 👉@i_DevOps
👍5
Глубокое погружение в сетевые технологии Kubernetes

На вебинаре описывается сетевая модель Kubernetes (узлы, поды, сервисы), ее преобразование в сетевые конструкции Linux, интеграция с физической сетью и оркестровка виртуальных сетевых устройств, таких как маршрутизаторы, балансировщики нагрузки и NAT-шлюзы.

https://my.ipspace.net/bin/list?id=Kubernetes#INTRO

#devops #девопс

Подпишись 👉@i_DevOps
👍6
Senior DevOps engineer в Lamoda Tech

Сейчас мы в поиске Senior DevOps инженера в направление автоматизации разработки и тестирования.

Мы управляем несколькими kubernetes кластерами как на своем железе, так и Managed Kubernetes в Cloud'е. Деплоим с помощью Helm (helmfile) и ArgoCD. Пишем автоматизацию на Python.

В качестве CI используется Atlassian Bamboo. Храним метрики в VictoriaMetrics. Собираем логи через ELK и Loki. Настраиваем машины с помощью Ansible. Управляем инфраструктурой с помощью Terraform.

Чем предстоит заниматься:

участие в ежедневной встрече девопс инженеров;
— работа с задачами DevOps;
— технический разбор задач совместно с инженерами DevOps;
— контроль выполнения задач инженерами Devops;
— участие в solution group по планированию инфраструктурной архитектуры;
— участие в solution group по планированию миграций на новые технологии, в облако Yandex;
— участие в собеседованиях новых инженеров DevOps;
— в сотрудничестве с руководителем департамента DevOps интеграция DevOps на всех стадиях производственного конвейера и его оптимизация.

Мы ожидаем:

— опыт работы в DevOps от 4 лет, в IT от 6 лет;
— хорошие коммуникативные навыки, умение объяснять сложные вещи простым языком, строить аналогии;
— умение делегировать задачи, находить нужных для задачи людей, объединять людей в мини-команды для решение нетривиальных задач или для менторинга;
— отличное знание CI/CD инструментов, таких как Bitbucket CI, GitLab CI;
— отличное знание Kubernetes, Helm;
— знание инструментов работы с логами, таких как ELK, Logstash, Filebeat;
— знание систем мониторинга, таких как Grafana, Prometheus, Zabbix, Victoria Metrix;
— знание систем управления конфигурациями и IaaC, таких как Ansible, Terraform;
— опыт системного администрирования Unix систем;
— высокие troubleshooting skills, умение в случае критического инцидента собрать нужных специалистов, распределить задачи и оперативно исправить проблему;
— опыт миграции Kubernetes из on premices в Yandex Cloud будет огромным плюсом;
— опыт работы с облаками такими как Yandex Cloud, GCP, Azure, AWS;
— знание английского на уровне B1 (Upper Intermediate) будет плюсом.

Откликнуться: https://budu.jobs/vacancy/8f1152be-95f9-4daf-a5af-4366955da8d5?vlid=51e105ec-4d6a-42da-8aa2-106e1ee0265d
👍62🔥1
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 #девопс

Подпишись 👉@i_DevOps
👍5😁1
This media is not supported in your browser
VIEW IN TELEGRAM
🐾 Tabby

Это самостоятельный помощник по написанию кода с искусственным интеллектом, представляющий собой альтернативу GitHub Copilot с открытым исходным кодом и локальным ресурсом. Он может похвастаться несколькими ключевыми особенностями:

Самодостаточность, отсутствие необходимости в СУБД или облачном сервисе.
Интерфейс OpenAPI, легко интегрируемый с существующей инфраструктурой (например, Cloud IDE).
Поддержка графических процессоров потребительского класса.

https://github.com/TabbyML/tabby

#devops #девопс

Подпишись 👉@i_DevOps
👍5
Что будет если на сервере LA = 100?

Вероятно, что на сервере будет наблюдаться замедленная работа сервисов, но если параметр LA равен количеству ядер в системе или количеству потоков в системе, то данная нагрузка является нормальной.

#devops #девопс

Подпишись 👉@i_DevOps
👍6
Как использовать Terraform test

https://blog.captaincy.io/how-to-use-terraform-test/

#devops #девопс

Подпишись 👉@i_DevOps
👍1
Cluster .dev

Это инструмент с открытым исходным кодом, предназначенный для управления облачными инфраструктурами с помощью простых декларативных манифестов - шаблонов инфраструктуры. Шаблоны инфраструктуры могут быть основаны на модулях Terraform, манифестах Kubernetes, сценариях Shell, диаграммах Helm, приложениях Kustomize и ArgoCD/Flux, политиках OPA и т. д. Cluster.dev объединяет эти компоненты вместе, чтобы вы могли развертывать, тестировать и распространять целый набор компонентов с привязанными версиями.

https://github.com/shalb/cluster.dev

#devops #девопс

Подпишись 👉@i_DevOps
👍1
Что такое Workspaces в Terraform?

Workspaces в Terraform — это возможность управления state файлами. Workspace содержит все что необходимо для управления набором инфраструктуры, а отдельные рабочие области функционируют как полностью отдельные рабочие каталоги. С помощью Workspaces возможно управлять несколькими средами инфраструктуры.

#devops #девопс

Подпишись 👉@i_DevOps
👍1
Оптимизация DevOps: Как персональные стенды и Grafana улучшают разработку и мониторинг

Всем привет, меня зовут Зуев Алексей, и я работаю DevOps-инженером в компании Bimeister! Сегодня я расскажу вам о том, как мы облегчаем жизнь нашим разработчикам и как разработчик может отследить состояние своего микросервиса в namespace Kubernetes. Основная цель этой статьи - описать, как мы пришли к дашборду для персональных стендов разработчиков. Персональный стенд в понимании нашей компании - это отдельно выделенный под разработчика неймспейс в кластере Kubernetes. У себя мы их называем ksb - “kubernetes-sandbox” и дальше дописываем, кому он принадлежит, пример наименования такого стенда: ksb-ivan-ivanov. Такое распределение позволяет легко идентифицировать принадлежность стенда, и исходя из этого формируется dns имя для фронта продукта.

https://habr.com/ru/companies/bimeister/articles/779768/

#devops #девопс

Подпишись 👉@i_DevOps
👍3👎1
В Ansible роли есть директории file и templates. Что они содержат и чем отличаются?

files — содержит файлы, которые будут скопированы на настраиваемые хосты; так же — может содержать скрипты, которые позже будут запускаться на хостах.

templates — содержит шаблоны файлов с переменными.

#devops #девопс

Подпишись 👉@i_DevOps
👍11
Что такое утечка памяти?

Утечки памяти - распространенная и досадная проблема при разработке программного обеспечения. Эти проблемы возникают, когда программа не может освободить память, которая больше не используется, что приводит к постепенной потере доступной памяти с течением времени.

Хотя поначалу утечки памяти незаметны, они могут серьезно ухудшить производительность и стабильность системы, приводя к вялому поведению, сбоям или зависанию. Они возникают из-за ошибок в программировании, например, из-за забывания деаллокации памяти или сохранения ссылок на удаленные объекты.

https://www.codereliant.io/what-is-a-memory-leak/

#devops #девопс

Подпишись 👉@i_DevOps
👍7