DevOps
8.74K subscribers
1.37K photos
864 videos
28 files
1.7K links
Docker, Kubernetes, облачные сервисы (AWS, GCP, Azure), Infrastructure as a Code (Terraform, CloudFormation), администрирование Windows и Linux, сети TCP, IP, скрипты (Bash, PowerShell), Ansible, Jenkins, DevSecOps, логирование. По вопросам @evgenycarter
Download Telegram
🧵Понимание probes в Kubernetes

1/ Что такое probes в Kubernetes?

В Kubernetes probes используются для проверки состояния ваших контейнеров приложений.

Существует три типа:

* Liveness Probe (Проверка живости)
* Readiness Probe (Проверка готовности)
* Startup Probe (Проверка запуска)

Давайте разберёмся на аналогии с рестораном. 🧵👇

2/ Представьте ваше приложение как кухню в ресторане.

* Клиенты = Входящий трафик
* Шеф-повар = Контейнер приложения
* Официант = Kubernetes

Официанту (K8s) нужно понять:

* Жив ли шеф? (Liveness)
* Готов ли шеф принимать заказы? (Readiness)
* Завершил ли шеф подготовку? (Startup)

3/ 🍳 Liveness Probe = Жив ли шеф?

Эта проверка смотрит, функционирует ли кухня (приложение) вообще.

Если шеф теряет сознание или исчезает, официант (K8s) перезапустит кухню (контейнер).

4/ 🛎️ Readiness Probe = Готов ли шеф готовить?

Возможно, шеф проснулся, но ещё нарезает ингредиенты.

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

5/ 🕐 Startup Probe = Завершил ли шеф настройку?

Некоторым шефам нужно больше времени, чтобы подготовиться.
Startup Probe даёт им дополнительное время перед началом остальных проверок.
Если эта проверка не проходит, K8s убьёт под, полагая, что он застрял. Полезно для медленно стартующих приложений!

6/ Итого 🧠

* Startup Probe: Приложение завершило запуск?
* Liveness Probe: Приложение всё ещё работает?
* Readiness Probe: Приложение готово обрабатывать трафик?

Используйте все три, чтобы сделать ваши развертывания в K8s максимально надёжными. 💪

#devops #девопс

📲 Мы в MAX

Подпишись 👉@i_DevOps
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍61
🚀 Подборка полезных IT каналов в Max


Системное администрирование, DevOps 📌

https://max.ru/i_odmin Все для системного администратора
https://max.ru/bash_srv Bash Советы
https://max.ru/sysadminof Книги для админов, полезные материалы
https://max.ru/i_odmin_book Библиотека Системного Администратора
https://max.ru/i_devops DevOps: Пишем о Docker, Kubernetes и др.

1C разработка 📌
https://max.ru/odin1c_rus Cтатьи, курсы, советы, шаблоны кода 1С

Программирование C++📌

https://max.ru/cpp_lib Библиотека C/C++ разработчика

Программирование Python 📌
https://max.ru/python_of Python академия.
https://max.ru/BookPython Библиотека Python разработчика

Java разработка 📌
https://max.ru/bookjava Библиотека Java разработчика

GitHub Сообщество 📌
https://max.ru/githublib Интересное из GitHub

Базы данных (Data Base) 📌
https://max.ru/database_info Все про базы данных

Фронтенд разработка 📌
https://max.ru/frontend_1 Подборки для frontend разработчиков

Библиотеки 📌
https://max.ru/programmist_of Книги по программированию
https://max.ru/proglb Библиотека программиста
https://max.ru/bfbook Книги для программистов

Программирование 📌
https://max.ru/bookflow Лекции, видеоуроки, доклады с IT конференций
https://max.ru/itmozg Программисты, дизайнеры, новости из мира IT
https://max.ru/php_lib Библиотека PHP программиста 👨🏼‍💻👩‍💻

Шутки программистов 📌
https://max.ru/itumor Шутки программистов

Защита, взлом, безопасность 📌
https://max.ru/thehaking Канал о кибербезопасности
https://max.ru/xakkep_1 Хакер Free

Книги, статьи для дизайнеров 📌

https://max.ru/odesigners Статьи, книги для дизайнеров

Математика 📌
https://max.ru/Pomatematike Канал по математике
https://max.ru/phismat_1 Обучающие видео, книги по Физике и Математике

Вакансии 📌
https://max.ru/progjob Вакансии в IT

Мир технологий 📌
https://max.ru/mir_teh Канал для любознательных


Бонус 📌
https://max.ru/piterspb_78 Свежие новости Санкт-Петербурга
https://max.ru/mockva_life Свежие новости Москвы
👎5💊51👍1🤮1💩1🤡1
⚙️Автоматизация отслеживания релизов развертывания с помощью Python, Docker и интеграции с Confluence Wiki.

💡Почему стоит автоматизировать документацию релизов?

Ручное обновление заметок о релизах или журналов может быть утомительным и склонным к ошибкам. Автоматизировав этот процесс, можно добиться нескольких ключевых преимуществ:

➡️Последовательность: каждый выпуск документируется одинаково, уменьшая количество ошибок и обеспечивая запись всей релевантной информации.
➡️Экономия времени: разработчики и команды DevOps могут сосредоточиться на кодировании и улучшении приложения вместо обновления заметок о релизах.
➡️Сотрудничество: централизованный журнал выпусков в Confluence упрощает доступ команд к деталям развертывания и их обмен.
➡️Отслеживаемость: автоматическое отслеживание развертываний позволяет легко прослеживать историю версий, что помогает при устранении неполадок или откатах.
➡️Готовность к аудиту: поскольку все развертывания зафиксированы в Confluence, процесс становится готовым к аудиту, обеспечивая соблюдение требований в любое время.

https://medium.com/@pranshu.jain_77905/automating-deployment-release-tracking-with-python-docker-and-confluence-wiki-integration-254cfd9d76fb

#devops #девопс

📲 Мы в MAX

Подпишись 👉@i_DevOps
Please open Telegram to view this post
VIEW IN TELEGRAM
👍31
Tetragon обеспечивает мощную возможность наблюдения за безопасностью в режиме реального времени на базе eBPF и принудительное исполнение политик во время выполнения.

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

https://github.com/cilium/tetragon

#devops #девопс

📲 Мы в MAX

Подпишись 👉@i_DevOps
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2
This media is not supported in your browser
VIEW IN TELEGRAM
На злобу дня 😂

Подписывайтесь на канал 👉@tipsysdmin
🔥8😭2
systemd: как писать юниты с элегантной перезагрузкой

Разработка системы с элегантным завершением работы может оказаться той ещё пляской с бубном. В идеальном мире каждый сервис управлялся бы юнитом systemd. ExecStart запускала бы процесс, обрабатывающий SIGTERM, а ExecStop оповещало бы процесс и осуществляло блокировку, которая бы корректно завершала процесс и его ресурсы.

Однако многие программы завершаются некорректно, а то и вовсе сбивают все настройки при закрытии. В этой статье мы рассмотрим поведение systemd при завершении работы и методы написания юнитов systemd для выборочной очистки (custom cleanup) перед закрытием.

https://www.psdn.io/posts/systemd-shutdown-unit/

#devops #девопс

📲 Мы в MAX

Подпишись 👉@i_DevOps
Please open Telegram to view this post
VIEW IN TELEGRAM
👍32🔥1
Please open Telegram to view this post
VIEW IN TELEGRAM
🤮4👍3👎1💩1
Security Gate (DevSecOps cicd)

Хочу начать с кратенького предисловия, почему я решил написать что-нибудь про DevSecOps. Я довольно-таки часто сталкиваюсь с непониманием, что же автоматизируют и для чего нужны DevSecOps инженеры, где их место в компании и в современном ИБ. Да и что далеко ходить, многие коллеги DevOps, сами считают, что с добавлением trivy или sonarqube в пайплайны, ты уже носишь гордое звание DevSecOps.

Поэтому в этой статье поговорим о том, как должны выглядеть DevSecOps пайплайны, чтобы они трансформировались во что-то зрелое. В Security Gate!

https://habr.com/ru/articles/917970/

#devops #девопс

📲 Мы в MAX

Подпишись 👉@i_DevOps
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3
🛠Btop++ — это высокопроизводительный монитор ресурсов, написанный на C++, который предоставляет детальную информацию о загрузке процессора, использовании памяти, активности дисков, сетевой активности и процессах. Он является продолжением проектов bashtop и bpytop, предлагая улучшенную производительность и расширенные возможности.

Основные возможности btop++:

🔹Интуитивно понятный интерфейс с поддержкой мыши и клавиатуры.
🔹Подробная информация о выбранных процессах.
🔹Фильтрация и сортировка процессов, включая древовидное отображение.
🔹Отправка сигналов процессам.
🔹Настраиваемые параметры через меню интерфейса.
🔹Автоматическое масштабирование графиков сетевой активности.
🔹Отображение активности и скорости ввода/вывода для дисков.
🔹Поддержка различных тем оформления.

Проект активно развивается, в последнюю версия v1.4.0 добавлена поддержка Intel GPU и NetBSD.

💻Для пользователей Windows доступна специальная версия — btop4win, которая предоставляет аналогичный функционал и поддерживает мониторинг GPU и температуры процессора при использовании версии с Open Hardware Monitor Report.

https://github.com/aristocratos/btop

#devops #девопс

📲 Мы в MAX

Подпишись 👉@i_DevOps
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4
Doas – утилита, которая позволяет обычным пользователям выполнять задачи от имени root, так же как это делает sudo. Она была разработана проектом OpenBSD как минималистичная альтернатива sudo.

Запускайте apt install doas.

Так как doas не входит по умолчанию в коробочные версии linux, утилита требует немного бОльших настроек, в отличие от sudo. Но конфигурация намного проще для понимания чем sudo. Настраивается все это через файл /etc/doas.conf. Если файла нет — создайте.

Сымитируем поведение sudo и позволим пользователю выполнять любые команды от пользователя root. Добавим в конфиг такое:


permit persist user as root


Теперь пользователь user сможет выполнять команды от root + пользователь получает льготный период, когда не нужно вводить пароль в течение нескольких минут после последовательных команд doas.

Допустим нужно сделать подобное, но для определенной группы, добавляем в конфиг строчку:


permit persist :wheel as root


Теперь все кто в группе wheel смогут побыть рутом. Также и с белым списком команд, которые можно выдать для запуска без пароля:


permit persist user as root
permit nopass :user as root cmd apt


Да, конфиг более читабельный чем у sudo

Конфиг sudo

%wheel ALL=(ALL) NOPASSWD: ALL


Конфиг doas

permit nopass :wheel as root


Ну и с помощью doas можно запустить root shell такой командой:

doas -s


#devops #девопс

📲 Мы в MAX

Подпишись 👉@i_DevOps
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2
Gossl

Простое CLI-приложение для проверки SSL-сертификатов, написанное на Go.

https://github.com/vvrnv/gossl

#devops #девопс

📲 Мы в MAX

Подпишись 👉@i_DevOps
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4
Из каких компонентов состоит k8s и каково их назначение?

Kubernetes (K8s) включает в себя плоскость управления и плоскость данных.

Плоскость управления — это уровень управления, который работает на узлах, называемых главными узлами, и может работать в конфигурации с одним главным узлом или несколькими главными узлами.
Плоскость управления включает в себя:
ETCD: хранилище конфигурации кластера
Kubernetes API: предоставляет API для взаимодействия между компонентами K8s и клиентами внутри и вне кластера
Kubernetes controller manager: реализует контроллеры, управляющие основными сущностями кластера, такими как контроллер узлов, контроллер задач и контроллер срезов конечных точек
Kubernetes scheduler: выбирает узлы, на которых будут запускаться POD
cloud controller manager: используется для реализации функций, специфичных для работы с облаком (если кластер K8s работает в облачной среде)

Плоскость данных состоит из компонентов, работающих на каждом узле:
kubelet: отслеживает изменения конфигурации узла, применяет изменения конфигурации, выполняет проверки контейнера, сообщает о статусе контейнера, работает с плагином CRI и обеспечивает функции запуска и остановки контейнера
kube-proxy: отвечает за сетевой компонент, работает с плагином CNI и обеспечивает работу сущности «сервис» на своем узле.

#devops #девопс

📲 Мы в MAX

Подпишись 👉@i_DevOps
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4
Шпаргалка по удалению томов в Docker


📦 Удаление неиспользуемых томов

Удаляет все тома, не прикреплённые ни к одному контейнеру:


docker volume prune


🔒 Подтверждение будет запрошено. Добавь -f для принудительного удаления:
docker volume prune -f



Удаление конкретного тома


docker volume rm <имя_тома>


Пример:


docker volume rm my_data_volume



📋 Список всех томов


docker volume ls



🔍 Поиск имени тома, связанного с контейнером


docker inspect <имя_контейнера> --format '{{ json .Mounts }}' | jq


или без jq:



docker inspect <имя_контейнера> --format '{{range .Mounts}}{{.Name}} {{end}}'



💣 Удаление всех томов (⚠️ Осторожно!)


docker volume rm $(docker volume ls -q)



🧼 Удаление всех ресурсов, включая тома


docker system prune --volumes


Добавь -a и -f, чтобы удалить всё без подтверждений:



docker system prune -a --volumes -f


#devops #девопс

📲 Мы в MAX

Подпишись 👉@i_DevOps
👍43
🛠 SRE vs DevOps
Разные роли — единая миссия

DevOps-инженеры:
• CI/CD пайплайны
• Инфраструктура как код (IaC)
• Автоматизация деплоймента
• Подготовка среды для приложений
• Взаимодействие между командами
• Оптимизация рабочих процессов разработчиков

Инженеры надёжности сайтов (SRE):
• Надёжность системы и аптайм
• SLOs/SLIs и бюджеты ошибок
• Планирование ёмкости
• Автоматизированная реакция на инциденты
• Управление изменениями и снижение рисков
• Масштабный мониторинг производительности

🧩 Разные роли — единая цель: быстрая, надёжная и устойчивая доставка ценности пользователю.

#devops #девопс

📲 Мы в MAX

Подпишись 👉@i_DevOps
👍6
🎓 Как изучать Kubernetes - пошагово

Если ты хочешь разобраться в Kubernetes с нуля, эта карта - твой навигатор. Разбито по 6 ключевым блокам, чтобы учиться было легко и по делу 👇

1️⃣ Основы и архитектура
🔹 Что такое Kubernetes
🔹 Кластер, Node, Pod
🔹 Control Plane
🔹 Worker Node

2️⃣ Нагрузки и контроллеры
🔸 Pod, ReplicaSet, Deployment
🔸 StatefulSet, DaemonSet
🔸 Job и CronJob
🔸 Labels и Selectors
🔸 Rolling Updates
🔸 Автомасштабирование (HPA, VPA, Cluster Autoscaler)

3️⃣ Сеть и управление сервисами
🟣 Services и кластерная сетевая модель
🟣 ClusterIP, NodePort, LoadBalancer
🟣 Ingress
🟣 Политики сети
🟣 DNS-обнаружение сервисов

4️⃣ Хранилище и конфигурация
🟪 Volumes и Persistent Volumes
🟪 Storage Classes
🟪 Stateful приложения
🟪 ConfigMap и Secret

5️⃣ Безопасность и контроль доступа
🟫 RBAC и сервисные аккаунты
🟫 Secrets Management
🟫 Admission Controllers
🟫 Pod Security
🟫 TLS и API доступ

6️⃣ DevOps и деплоймент
🟩 Kubectl, YAML-файлы
🟩 Helm Charts
🟩 Интеграция с CI/CD
🟩 GitOps (ArgoCD, Flux)
🟩 Мониторинг
🟩 Облачные провайдеры: EKS, GKE, AKS

🧠 Запоминай структуру, изучай блок за блоком, и скоро будешь собирать продакшн-кластеры с закрытыми глазами!

📌 Сохрани себе и поделись с теми, кто хочет прокачать Kubernetes 🙌

#devops #девопс

📲 Мы в MAX

Подпишись 👉@i_DevOps
👍93🔥1