Webhook
Это легковесный сервер, который позволяет вам легко создавать HTTP endpoints (хуки) на вашем сервере, которые можно использовать для выполнения команд.
https://github.com/adnanh/webhook
👉 @devops_star
Это легковесный сервер, который позволяет вам легко создавать HTTP endpoints (хуки) на вашем сервере, которые можно использовать для выполнения команд.
https://github.com/adnanh/webhook
👉 @devops_star
GitHub
GitHub - adnanh/webhook: webhook is a lightweight incoming webhook server to run shell commands
webhook is a lightweight incoming webhook server to run shell commands - adnanh/webhook
👍4
Мониторинг контейнеров Docker с помощью Zabbix
В этом блоге я расскажу о мониторинге Docker-контейнеров с помощью Zabbix. Мы будем использовать официальный шаблон Docker для агента Zabbix 2, чтобы упростить процесс. Ссылка для загрузки шаблона и шаги по настройке доступны на странице интеграций Zabbix.
https://blog.zabbix.com/docker-container-monitoring-with-zabbix/20175/
👉 @devops_star
В этом блоге я расскажу о мониторинге Docker-контейнеров с помощью Zabbix. Мы будем использовать официальный шаблон Docker для агента Zabbix 2, чтобы упростить процесс. Ссылка для загрузки шаблона и шаги по настройке доступны на странице интеграций Zabbix.
https://blog.zabbix.com/docker-container-monitoring-with-zabbix/20175/
👉 @devops_star
👍4
Как установить и использовать кластер Kubernetes при помощи утилиты kind
Чтобы развернуть готовый кластер Kubernetes, можно использовать разные способы — например, самому подготовить виртуальные машины или выделенные серверы, настроить операционную систему и установить необходимые программы. Однако данный способ может показаться довольно долгим и затратным (если арендовать ресурсы ВМ).
Также можно арендовать уже готовый кластер (Kubernetes как услуга). Наконец, можно развернуть кластер локально на своем устройстве при помощи утилиты minikube. Однако при ее использовании необходимо, чтобы процессор устройства поддерживал виртуализацию, а еще понадобится установить программу-гипервизор.
Но существует еще один способ, при помощи которого кластер Kubernetes можно запустить, прилагая минимум усилий. Сегодня речь пойдет об утилите kind.
https://habr.com/ru/companies/first/articles/844002/
👉 @devops_star
Чтобы развернуть готовый кластер Kubernetes, можно использовать разные способы — например, самому подготовить виртуальные машины или выделенные серверы, настроить операционную систему и установить необходимые программы. Однако данный способ может показаться довольно долгим и затратным (если арендовать ресурсы ВМ).
Также можно арендовать уже готовый кластер (Kubernetes как услуга). Наконец, можно развернуть кластер локально на своем устройстве при помощи утилиты minikube. Однако при ее использовании необходимо, чтобы процессор устройства поддерживал виртуализацию, а еще понадобится установить программу-гипервизор.
Но существует еще один способ, при помощи которого кластер Kubernetes можно запустить, прилагая минимум усилий. Сегодня речь пойдет об утилите kind.
https://habr.com/ru/companies/first/articles/844002/
👉 @devops_star
👍1
This media is not supported in your browser
VIEW IN TELEGRAM
KubeStalk обнаруживает Kubernetes и связанную с ним инфраструктуру на основе поверхности атаки с точки зрения "черного ящика".
Установка
KubeStalk написан на языке Python и требует наличия библиотеки requests.
Чтобы установить инструмент, вы можете клонировать репозиторий в любую директорию:
https://github.com/redhuntlabs/KubeStalk
👉 @devops_star
Установка
KubeStalk написан на языке Python и требует наличия библиотеки requests.
Чтобы установить инструмент, вы можете клонировать репозиторий в любую директорию:
git clone https://github.com/redhuntlabs/kubestalk
https://github.com/redhuntlabs/KubeStalk
👉 @devops_star
👍4
Distroless контейнеры
Distroless контейнеры — это контейнеры, содержащие только нужные для работы приложения файлы. Из контейнера убираются не используемые программой файлы дистрибутива с целью уменьшить его размер и снизить площадь атаки. Вместо сотен или тысяч ненужных файлов дистрибутива остаются лишь файлы, требуемые для работы. Этот подход изначально был предложен Google.
https://habr.com/ru/post/710968/
👉 @devops_star
Distroless контейнеры — это контейнеры, содержащие только нужные для работы приложения файлы. Из контейнера убираются не используемые программой файлы дистрибутива с целью уменьшить его размер и снизить площадь атаки. Вместо сотен или тысяч ненужных файлов дистрибутива остаются лишь файлы, требуемые для работы. Этот подход изначально был предложен Google.
https://habr.com/ru/post/710968/
👉 @devops_star
Хабр
Distroless контейнеры
Distroless контейнеры — это контейнеры, содержащие только нужные для работы приложения файлы. Из контейнера убираются не используемые программой файлы дистрибутива с целью уменьшить его размер и...
👍2
Основы мониторинга (обзор Prometheus и Grafana)
Мониторинг сегодня – фактически обязательная «часть программы» для компании любых размеров. В данной статье мы попробуем разобраться в многообразии программного обеспечения для мониторинга и рассмотрим подробнее одно из популярных решений – систему на основе Prometheus и Grafana
https://habr.com/ru/post/709204/
👉 @devops_star
Мониторинг сегодня – фактически обязательная «часть программы» для компании любых размеров. В данной статье мы попробуем разобраться в многообразии программного обеспечения для мониторинга и рассмотрим подробнее одно из популярных решений – систему на основе Prometheus и Grafana
https://habr.com/ru/post/709204/
👉 @devops_star
👍4
This media is not supported in your browser
VIEW IN TELEGRAM
Tfautomv
Автоматическое создание перемещенных блоков Terraform для безболезненного рефакторинга
https://github.com/padok-team/tfautomv
👉 @devops_star
Автоматическое создание перемещенных блоков Terraform для безболезненного рефакторинга
https://github.com/padok-team/tfautomv
👉 @devops_star
👍1
Назовите главные компоненты архитектуры Kubernetes.
Master-ноды (master node, control plane) координируют все операции кластера: управляют распределением и резервированием ресурсов, контролируют состояние контейнеров, управляют масштабированием и выполняют обновления. Компоненты мастер-нод включают:
kube-apiserver — точка доступа к панели управления мастер-ноды, обеспечивает взаимодействие между мастер- и рабочими узлами, отслеживает состояние рабочих узлов и информирует мастер о важных изменениях;
kube-scheduler — отвечает за распределение нагрузки на рабочие узлы, постоянно мониторит доступные ресурсы и используемые ресурсы на каждом узле, принимает решение о запуске нового Pod;
Controller Manager — управляет работой контроллеров, таких как Deployment, ReplicaSet, StatefulSets, DaemonSet, Jobs, CronJob;
ETCD — хранит информацию о настройках и состоянии кластера, его метаданные, представляет собой распределенную базу данных в формате ключ-значение.
Nodes (рабочие узлы) — на них запускаются поды с контейнерами. На каждой worker ноде Kubernetes работают:
kubelet — процесс, который управляет запуском, удалением и обновлением подов с контейнерами;
kube-proxy — настраивает сетевые правила на рабочих узлах.
Как в Kubernetes устроена работа с хранилищами?
Kubernetes имеет различные типы хранилищ, включая встроенный emtyDir. Некоторые из них являются stateless, что означает, что они существуют только во время работы пода. Данные, которые хранятся там, также имеют такой же срок жизни.
Для statefull-приложений используются постоянные хранилища, называемые Persistent Volumes (PV). PV — это запас хранилища, выделенный администратором кластера Kubernetes. Это могут быть локальные диски, СХД или внешние диски. Они не зависят от жизненного цикла подов.
Persistent Volume Claim (PVC) — это запрос на выделение PV с определенными характеристиками, такими как тип хранилища, объем и тип доступа. Для описания доступных PV используются Storage Classes.
В процессе работы под отправляет запрос PVC, который затем обращается к PV и передает его поду.
👉 @devops_star
Master-ноды (master node, control plane) координируют все операции кластера: управляют распределением и резервированием ресурсов, контролируют состояние контейнеров, управляют масштабированием и выполняют обновления. Компоненты мастер-нод включают:
kube-apiserver — точка доступа к панели управления мастер-ноды, обеспечивает взаимодействие между мастер- и рабочими узлами, отслеживает состояние рабочих узлов и информирует мастер о важных изменениях;
kube-scheduler — отвечает за распределение нагрузки на рабочие узлы, постоянно мониторит доступные ресурсы и используемые ресурсы на каждом узле, принимает решение о запуске нового Pod;
Controller Manager — управляет работой контроллеров, таких как Deployment, ReplicaSet, StatefulSets, DaemonSet, Jobs, CronJob;
ETCD — хранит информацию о настройках и состоянии кластера, его метаданные, представляет собой распределенную базу данных в формате ключ-значение.
Nodes (рабочие узлы) — на них запускаются поды с контейнерами. На каждой worker ноде Kubernetes работают:
kubelet — процесс, который управляет запуском, удалением и обновлением подов с контейнерами;
kube-proxy — настраивает сетевые правила на рабочих узлах.
Как в Kubernetes устроена работа с хранилищами?
Kubernetes имеет различные типы хранилищ, включая встроенный emtyDir. Некоторые из них являются stateless, что означает, что они существуют только во время работы пода. Данные, которые хранятся там, также имеют такой же срок жизни.
Для statefull-приложений используются постоянные хранилища, называемые Persistent Volumes (PV). PV — это запас хранилища, выделенный администратором кластера Kubernetes. Это могут быть локальные диски, СХД или внешние диски. Они не зависят от жизненного цикла подов.
Persistent Volume Claim (PVC) — это запрос на выделение PV с определенными характеристиками, такими как тип хранилища, объем и тип доступа. Для описания доступных PV используются Storage Classes.
В процессе работы под отправляет запрос PVC, который затем обращается к PV и передает его поду.
👉 @devops_star
👍6
This media is not supported in your browser
VIEW IN TELEGRAM
Архитектурные паттерны ПО
- Event Driven
- Layered
- Monolithic
- Microservice
- MVC
- Master Slave
👉 @devops_star
- Event Driven
- Layered
- Monolithic
- Microservice
- MVC
- Master Slave
👉 @devops_star
👍2
Пять GitHub проектов, которые помогут вам стать лучшим инженером DevOps
1. How they SRE
Подборка общедоступных ресурсов о том, как технологические и технически подкованные организации по всему миру практикуют Site Reliability Engineering (SRE).
https://github.com/upgundecha/howtheysre
2. Awesome Scalability
Паттерны масштабируемых, надежных и производительных крупномасштабных систем
https://github.com/binhnguyennus/awesome-scalability
3. DevOps Exercises
Linux, Jenkins, AWS, SRE, Prometheus, Docker, Python, Ansible, Git, Kubernetes, Terraform, OpenStack, SQL, NoSQL, Azure, GCP, DNS, Elastic, Network, Virtualization. Вопросы для интервью по DevOps
https://github.com/bregman-arie/devops-exercises
4. Test your sysadmin skills
Сборник тестовых вопросов и ответов по Linux Sysadmin. Проверьте свои знания и навыки в различных областях с помощью этих вопросов и ответов.
https://github.com/trimstray/test-your-sysadmin-skills
5. Awesome Site Reliability Engineering
Составленный список ресурсов по надежности сайта и производственному инжинирингу.
https://github.com/dastergon/awesome-sre
👉 @devops_star
1. How they SRE
Подборка общедоступных ресурсов о том, как технологические и технически подкованные организации по всему миру практикуют Site Reliability Engineering (SRE).
https://github.com/upgundecha/howtheysre
2. Awesome Scalability
Паттерны масштабируемых, надежных и производительных крупномасштабных систем
https://github.com/binhnguyennus/awesome-scalability
3. DevOps Exercises
Linux, Jenkins, AWS, SRE, Prometheus, Docker, Python, Ansible, Git, Kubernetes, Terraform, OpenStack, SQL, NoSQL, Azure, GCP, DNS, Elastic, Network, Virtualization. Вопросы для интервью по DevOps
https://github.com/bregman-arie/devops-exercises
4. Test your sysadmin skills
Сборник тестовых вопросов и ответов по Linux Sysadmin. Проверьте свои знания и навыки в различных областях с помощью этих вопросов и ответов.
https://github.com/trimstray/test-your-sysadmin-skills
5. Awesome Site Reliability Engineering
Составленный список ресурсов по надежности сайта и производственному инжинирингу.
https://github.com/dastergon/awesome-sre
👉 @devops_star
👍6
Media is too big
VIEW IN TELEGRAM
DevOps Full Course For 2024 | DevOps Tutorial For Beginners
Key Features:
✅ Caltech CTME Post Graduate Certificate
✅ Receive upto 25 CEUs from Caltech CTME upon course completion
✅ Master classes taught by Caltech CTME instructor
✅ Online Convocation by Caltech CTME Program Director
✅ Capstone project in 3 domains
✅ Enrolment in Simplilearn’s JobAssist
✅ Simplilearn's JobAssist helps you get noticed by top hiring companies
✅ 8X higher interaction in live online classes conducted by industry experts
✅ 20+ real-life projects on integrated labs
✅ Caltech CTME Circle Membership
Skills Covered:
✅ DevOps Methodology
✅ Configuration Management
✅ Continuous Integration
✅ Containerization
✅ Continuous Delivery
✅ DevOps on Cloud
✅ Source Control
✅ Deployment Automation
✅ Cloud Platforms
Eligibility Criteria:
✅ Prior work experience is not mandatory
✅ A bachelor's degree with an average of 50% or higher marks
✅ Can be from programming or non-programming background
источник
👉 @devops_star
Key Features:
✅ Caltech CTME Post Graduate Certificate
✅ Receive upto 25 CEUs from Caltech CTME upon course completion
✅ Master classes taught by Caltech CTME instructor
✅ Online Convocation by Caltech CTME Program Director
✅ Capstone project in 3 domains
✅ Enrolment in Simplilearn’s JobAssist
✅ Simplilearn's JobAssist helps you get noticed by top hiring companies
✅ 8X higher interaction in live online classes conducted by industry experts
✅ 20+ real-life projects on integrated labs
✅ Caltech CTME Circle Membership
Skills Covered:
✅ DevOps Methodology
✅ Configuration Management
✅ Continuous Integration
✅ Containerization
✅ Continuous Delivery
✅ DevOps on Cloud
✅ Source Control
✅ Deployment Automation
✅ Cloud Platforms
Eligibility Criteria:
✅ Prior work experience is not mandatory
✅ A bachelor's degree with an average of 50% or higher marks
✅ Can be from programming or non-programming background
источник
👉 @devops_star
👏4👍2❤1🤮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_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
👍4👏1😱1
Бесперебойный деплой микрофронтендов с Kubernetes: как настроить
Фронтенд-разработка может жить без независимого деплоя, пока у нее не больше 7 микрофронтендов. Но, чем выше число, тем сильнее страдают процессы. Наша команда в Mindbox прошла через это с Octopus, когда деплоила в Yandex Cloud S3. Причем на все обновления был один свободный бакет. Заливаешь код в мастер, а в это время то же самое делают еще пять разработчиков. Скапливается очередь, код еле ползет, а через час деплой вообще обваливается — Octopus не справился с нагрузкой. Пока чинишь это, оказывается, что твои обновления уже попали в продакшен заодно с чужими.
Когда число проектов возросло до 14, все это повторялось с каждым разработчиком по несколько раз в день. Поэтому мы решили вслед за коллегами-бэкендерами перейти на независимый деплой в Kubernetes.
В этой статье собран опыт платформы автоматизации маркетинга Mindbox по реформированию фронтенда:
Kubernetes вместо Yandex Cloud S3: деплоим микрофронтенды без сбоев
Автоматизированный вывод метаданных: экономим ресурсы разработки
Постепенный переход: меняем деплой без вреда для пользователей
Хот-тестинг: ускоряем обновление фронтенда
Советы: как улучшить деплой без микрофронтендов и Kubernetes
https://habr.com/ru/company/mindbox/blog/711898/
👉 @devops_star
Фронтенд-разработка может жить без независимого деплоя, пока у нее не больше 7 микрофронтендов. Но, чем выше число, тем сильнее страдают процессы. Наша команда в Mindbox прошла через это с Octopus, когда деплоила в Yandex Cloud S3. Причем на все обновления был один свободный бакет. Заливаешь код в мастер, а в это время то же самое делают еще пять разработчиков. Скапливается очередь, код еле ползет, а через час деплой вообще обваливается — Octopus не справился с нагрузкой. Пока чинишь это, оказывается, что твои обновления уже попали в продакшен заодно с чужими.
Когда число проектов возросло до 14, все это повторялось с каждым разработчиком по несколько раз в день. Поэтому мы решили вслед за коллегами-бэкендерами перейти на независимый деплой в Kubernetes.
В этой статье собран опыт платформы автоматизации маркетинга Mindbox по реформированию фронтенда:
Kubernetes вместо Yandex Cloud S3: деплоим микрофронтенды без сбоев
Автоматизированный вывод метаданных: экономим ресурсы разработки
Постепенный переход: меняем деплой без вреда для пользователей
Хот-тестинг: ускоряем обновление фронтенда
Советы: как улучшить деплой без микрофронтендов и Kubernetes
https://habr.com/ru/company/mindbox/blog/711898/
👉 @devops_star
👍2
Dockerfile - файл содержащий инструкции для создания образа контейнера
👉 @devops_star
FROM
- задаёт базовый (родительский) образLABEL
- описывает метаданные. Например — сведения о том, кто создал и поддерживает образENV
- устанавливает постоянные переменные средыRUN
- выполняет команду и создаёт слой образа. Используется для установки в контейнер пакетовCOPY
- копирует в контейнер файлы и папкиADD
- копирует файлы и папки в контейнер, может распаковывать архив на летуCMD
- описывает команду с аргументами, которую нужно выполнить когда контейнер будет запущен. Аргументы могут быть переопределены при запуске контейнера. В файле может присутствовать лишь одна инструкция CMD(запускается оболочка /bin/sh)USER
- указывает от какого пользователя всё будет работатьWORKDIR
- задаёт рабочую директорию для следующей инструкцииARG
- задаёт переменные для передачи Docker во время сборки образаENTRYPOINT
- предоставляет команду с аргументами для вызова во время выполнения контейнера. Аргументы не переопределяютсяEXPOSE
- указывает на необходимость открыть порт, сам порт не открываетVOLUME
- создаёт точку монтирования для работы с постоянным хранилищемMAINTAINER
- информация об авторе имя и <email>👉 @devops_star
👍8
Media is too big
VIEW IN TELEGRAM
MDos — Стек Kubernetes с открытым исходным кодом
https://medium.com/@mdundek/mdos-the-open-source-kubernetes-stack-61e29dd2b449
👉 @devops_star
https://medium.com/@mdundek/mdos-the-open-source-kubernetes-stack-61e29dd2b449
👉 @devops_star
👍1
Kubernetes Security Training Platform - Focussing on security mitigation
Симулятор распределенных систем и инфраструктуры для атак и отладки Kubernetes: симулятор создает для вас кластер Kubernetes в вашем аккаунте AWS; запускает сценарии, которые неправильно конфигурируют его и/или делают уязвимым для компрометации, и обучает вас способам устранения этих уязвимостей.
https://github.com/kubernetes-simulator/simulator
👉 @devops_star
Симулятор распределенных систем и инфраструктуры для атак и отладки Kubernetes: симулятор создает для вас кластер Kubernetes в вашем аккаунте AWS; запускает сценарии, которые неправильно конфигурируют его и/или делают уязвимым для компрометации, и обучает вас способам устранения этих уязвимостей.
https://github.com/kubernetes-simulator/simulator
👉 @devops_star
🔥2👍1
Как собирать данные в DevSecOps
Для успеха компании уже недостаточно, чтобы выпущенный продукт был «достаточно хорошим». Сегодня бизнесы должны предоставлять высококачественные цифровые сервисы, которые обладают не только высокой производительностью и степенью доступности, но и являются конфиденциальными и безопасными.
Но как всего этого достичь? Один из способов, доступных команде DevSecOps — реализовать систему наблюдаемости, использующую логи (и другие средства) для сбора больших объёмов данных во взаимодействиях пользователя и угрожающих средах. Выполняя логирование и анализ данных безопасности и наблюдаемости, можно лучше распознавать и устранять множество проблем, например, проблемы с производительностью, уязвимости и нарушения безопасности, что повышает качество сервисов.
Rus https://habr.com/ru/company/ruvds/blog/713682/
Eng https://dzone.com/articles/the-everything-guide-to-data-collection-in-devseco
👉 @devops_star
Для успеха компании уже недостаточно, чтобы выпущенный продукт был «достаточно хорошим». Сегодня бизнесы должны предоставлять высококачественные цифровые сервисы, которые обладают не только высокой производительностью и степенью доступности, но и являются конфиденциальными и безопасными.
Но как всего этого достичь? Один из способов, доступных команде DevSecOps — реализовать систему наблюдаемости, использующую логи (и другие средства) для сбора больших объёмов данных во взаимодействиях пользователя и угрожающих средах. Выполняя логирование и анализ данных безопасности и наблюдаемости, можно лучше распознавать и устранять множество проблем, например, проблемы с производительностью, уязвимости и нарушения безопасности, что повышает качество сервисов.
Rus https://habr.com/ru/company/ruvds/blog/713682/
Eng https://dzone.com/articles/the-everything-guide-to-data-collection-in-devseco
👉 @devops_star
👍3