DevOps – Telegram
DevOps
8.47K subscribers
1.46K photos
822 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
Автоматизируем сборку и деплой приложения в GitLab CI/CD: подробное руководство с примерами

При разработке приложений рано или поздно наступает момент, когда заниматься развёртыванием вручную становится затратно и неудобно. Как следствие на помощь приходит автоматизация этого процесса с помощью специально настроенных пайплайнов непрерывной интеграции и непрерывной доставки (Continuous Integration & Continuous Delivery — CI/CD). Для разных систем управления репозиториями исходного кода существуют свои способы настройки CI/CD.

В этой статье мы рассмотрим, как использовать GitLab для организации автоматической сборки и деплоя приложения в кластер Kubernetes. Сам кластер будет работать под управлением Deckhouse Kubernetes Platform (код приложения и процесс настройки кластера мы описывали в предыдущей статье цикла), а автоматизировать процесс будем с помощью werf — Open Source CLI-утилиты, организующей полный цикл доставки приложения в Kubernetes и использующей Git как единый источник истины для состояния приложения, развёрнутого в кластере.

https://habr.com/ru/companies/flant/articles/795475/

#devops #девопс

Подпишись 👉@i_DevOps
👍5
Отладка плэйбуков ansible

В этом руководстве я постараюсь рассказать как дебажить playbookи, устраняя потенциальные проблемы, не дожидаясь обезвреживания продакшена. Если вы читаете это, то я уверен что вы, также как и я, прочитали десяток статей о том как установить ansible и запускать (применять - режет слух) плэйбуки для конфигурирования всего до чего дотягивается руки.

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

#devops #девопс

Подпишись 👉@i_DevOps
👍5
Пишем роли ansible не ломая прод — особенности check_mode или как правильно его готовить

В данном опусе я попытаюсь рассказать как можно писать роли и плэйбуки такими, чтобы они отыгрывали без падений при запуске с флагом --check. Зачем вот это всё: вы в команде адептов инфраструктуры как код и не только раскатываете свою инфраструктуру, но и обновляете ее и хотите быстро восстанавливать, а это значит что вы должны обеспечивать одну из ключевых концепций ansible - идемпотентность повторных запусков. Для этого вы вынуждены не только писать роли, применяя их в лабораторных условиях, но и применения их на реальной инфраструктуре, о том как дебажить при этом ямлы написано например здесь. Применять код который сделает множество изменений в продакшн - такое себе удовольствие не для слабонервных, поэтому и мы будем пускать его предварительно с флагом --check - в холостую, желая посмотреть те изменения которые будут внесены в целевую инфраструктуру. То есть, если вы собираетесь реконфигурировать сервис в одном конфиге и перезапустить-перегрузить его, то вы должны увидеть только 2 изменения (changed) по итогам запуска.

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

#devops #девопс

Подпишись 👉@i_DevOps
👍7👏1
GitOps с использованием Flux и Flagger

GitOps как практика используется с 2017 года, когда Алексис Ричардсон придумал этот термин. Он изменил DevOps и автоматизацию. Если посмотреть на его основные принципы, то он расширяет DevOps, рассматривая инфраструктуру как код (IaC). Конфигурация развертывания хранится в системе контроля версий (она же Git), обеспечивая единый источник данных для разработчиков.

https://dev.to/infracloud/gitops-using-flux-and-flagger-15ci

#devops #девопс

Подпишись 👉@i_DevOps
👍5
System Design 101

О сложных системах простыми словами.

В шпаргалке на высоком уровне рассматриваются такие вещи, как протоколы коммуникации, DevOps, CI/CD, архитектурные паттерны, базы данных, кэширование, микросервисы (и монолиты), платежные системы, Git, облачные сервисы etc. Особую ценность представляют диаграммы — рекомендую уделить им пристальное внимание. Полагаю, шпаргалка будет интересна всем, кто хоть как-то связан с разработкой программного обеспечения и, прежде всего, веб-приложений. Буду признателен за помощь в уточнении/исправлении понятий, терминологии, логики/алгоритмов работы систем (в рамках того, что по этому поводу содержится в оригинале), а также в обнаружении очепяток.

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

original https://github.com/ByteByteGoHq/system-design-101

#devops #девопс

Подпишись 👉@i_DevOps
5👍2
Как процессы в системе взаимодействуют между собой?

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

🔹 FIFO — Связь между двумя не связанными процессами. FIFO — это полный дуплекс, что означает, что первый процесс может взаимодействовать со вторым процессом и наоборот одновременно.

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

🔹 Совместно используемая память. Связь между двумя или более процессами достигается за счет совместного использования памяти всеми процессами. Совместно используемая память должна быть защищена друг от друга путем синхронизации доступа ко всем процессам.

🔹 Семафоры — предназначены для синхронизации доступа к нескольким процессам. Когда один процесс хочет получить доступ к памяти (для чтения или записи), он должен быть заблокирован (или защищен) и освобожден при удалении доступа. Это должно быть повторено всеми процессами для защиты данных.

🔹 Сигналы — это механизм связи между несколькими процессами посредством сигнализации. Это означает, что исходный процесс отправит сигнал (распознанный по номеру), а целевой процесс обработает его соответствующим образом.

#devops #девопс

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

HyperDX помогает инженерам быстро выяснить, почему продакшен не работает, благодаря централизации и корреляции журналов, метрик, трассировок, исключений и повторов сеансов в одном месте. Альтернатива Datadog и New Relic с открытым исходным кодом и удобством для разработчиков.

https://github.com/hyperdxio/hyperdx

#devops #девопс

Подпишись 👉@i_DevOps
👍4
Kubeshark — мониторинг и анализ Kubernetes

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

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

#devops #девопс

Подпишись 👉@i_DevOps
👍6🤩1
Minikube

Features
minikube runs the latest stable release of Kubernetes, with support for standard Kubernetes features like:

LoadBalancer - using minikube tunnel
Multi-cluster - using minikube start -p <name>
NodePorts - using minikube service
Persistent Volumes
Ingress
Dashboard - minikube dashboard
Container runtimes - minikube start --container-runtime
Configure apiserver and kubelet options via command-line flags
Supports common CI environments

https://github.com/kubernetes/minikube

#devops #девопс

Подпишись 👉@i_DevOps
👍7
Просто забавный эксперимент: Развертывание Kubernetes на двух старых ноутбуках с Gentoo Linux

В этой статье рассказывается об увлекательном эксперименте по развертыванию и настройке Kubernetes на двух старых ноутбуках, один из которых был оснащен старым процессором. При его проведении мы опирались на учебник Kubernetes The Hard Way, который мы немного подправили. Кроме того, мы пошли еще дальше и выбрали Gentoo Linux (да, вы все правильно поняли!) в качестве операционной системы хоста. Давайте погрузимся в этот захватывающий, хардкорный опыт!

https://blog.palark.com/kubernetes-on-gentoo-linux-i386/

#devops #девопс

Подпишись 👉@i_DevOps
👍4👎1
Docker vs. Kubernetes. Что мы должны использовать?

Что такое Docker?
Docker - это платформа с открытым исходным кодом, которая упрощает создание, распространение и запуск приложений с помощью контейнеров. Она позволяет создавать легкие, переносимые, самодостаточные контейнеры из любого приложения со всеми его зависимостями.

Что такое Kubernetes?
Kubernetes, также известная как K8s, - это система с открытым исходным кодом для автоматизации развертывания, масштабирования и управления контейнерными приложениями. Она группирует контейнеры, из которых состоит приложение, в логические блоки для удобства управления и обнаружения в кластере машин. Для запуска контейнеров в Kubernetes используются не Docker Engine, а такие среды выполнения контейнеров, как containerd и CRI-O.

Чем они отличаются?
Docker ориентирован на автоматизацию создания и развертывания отдельных контейнеров на одном узле. Хотя он может управлять коллекциями контейнеров с помощью Docker Swarm, он более ограничен по сравнению с Kubernetes с точки зрения масштабируемости и возможностей.

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

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

#devops #девопс

Подпишись 👉@i_DevOps
👍13😁1
Плохая документация (или зачастую ее отсутствие) приводит к нехватке информации о системных настройках, установленном ПО и его версиях на машине. Из-за этого диагностика и устранение регулярно возникающих проблем значительно усложняются.

В новой статье на Хабре будет рассмотрен подход к созданию инфраструктуры с использованием незаменимых компонентов. В материале подробно описаны преимущества и недостатки такого подхода, а также приведены примеры ситуаций, в которых он будет наиболее эффективным.

Читать: https://habr.com/ru/companies/vk/articles/756152/

#devops #девопс

Подпишись 👉 @i_DevOps
👍3
Шаблоны для развертывания Terraform с несколькими учетными записями

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

https://awstip.com/patterns-for-terraform-multi-account-deployments-f47d77d6f250

#devops #девопс

Подпишись 👉 @i_DevOps
👍1
DevOps на IBM: как мы навели порядок в 700 системах, перейдя от bash к IaC

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

Нам повезло, что заказчик сам не до конца представлял, что именно хочет, поэтому в проекте было много пространства для творчества и возможности применить методологию DevOps, в том числе к системам на AIX. Ну а началось все с одного болезненного инцидента.

https://habr.com/ru/companies/croc/articles/805309/

#devops #девопс
👍2
👨‍💻 Social Engineering — полезный ресурс для системных администраторов и специалистов в области информационной безопасности.

Особое внимание стоит обратить на следующую информацию:

Собственный бот, который проверит Ваш файл 70 антивирусами одновременно.
Наш репозиторий с подборкой материала для изучения компьютерных сетей.
Коллекция инструментов и ресурсов для поиска информации о человеке в 2024 году.
Актуальные методы социальной инженерии и профайлинга.
Бесплатные курсы для изучения ИБ и OSINT.

Вас ждёт только актуальный и качественный материал. @S.E.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1
SadServers

Linux & DevOps Сценарии устранения неполадок SaaS

https://github.com/fduran/sadservers

#devops #девопс

Подпишись 👉 @i_DevOps
2👍2
MaaS, или мониторинг как сервис

Меня зовут Валентин Лебедев, я отвечаю за мониторинг в Газпромбанке. Мой опыт в области построения систем мониторинга — более двенадцати лет, из которых последние шесть — строил мониторинг для крупного и сверхкрупного бизнеса.

Статья будет полезна специалистам, строящим ядро/платформу мониторинга, и пользователям, ежедневно с ним взаимодействующим.

Мы поговорим о пяти этапах взросления мониторинга. Так уж совпало, что эти пять этапов накладываются на сервисные IT-слои:

Инфраструктурный мониторинг;
Прикладной мониторинг;
Бизнес-мониторинг;
Application Performance Monitoring;
Real User Monitoring.

https://habr.com/ru/companies/oleg-bunin/articles/806779/

#devops #девопс

Подпишись 👉 @i_DevOps
👍6
Масштабирование Kafka для обеспечения роста объема данных PayPal

Apache Kafka - это платформа распределенной потоковой передачи событий с открытым исходным кодом, которая используется в PayPal для конвейеров потоковой передачи данных, интеграции и ввода данных. Она поддерживает наши самые критически важные приложения и принимает триллионы сообщений в день, что делает ее одной из самых надежных платформ для обработки огромных объемов данных, которые мы обрабатываем каждый день.

https://medium.com/paypal-tech/scaling-kafka-to-support-paypals-data-growth-a0b4da420fab

#devops #девопс

Подпишись 👉 @i_DevOps
👍51
Создание кластера MicroK8s

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

https://microk8s.io/docs/clustering

#devops #девопс

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

Robusta KRR (Kubernetes Resource Recommender) - это CLI-инструмент для оптимизации распределения ресурсов в кластерах Kubernetes. Он собирает данные об использовании подов из Prometheus и выдает рекомендации по запросам и лимитам на процессор и память. Это позволяет снизить затраты и повысить производительность.

📊 Получайте точные рекомендации по ресурсам
Немедленно
🔥 На основе истории, уже имеющейся в Prometheus
📁 Встроенные функции отчетности
⚙️ Прозрачные и понятные алгоритмы

https://github.com/robusta-dev/krr

#devops #девопс

Подпишись 👉 @i_DevOps
👍7
Media is too big
VIEW IN TELEGRAM
Kubernetes - Курс по Kubernetes для Начинающих

00:00:00 YouTube Intro
00:00:29 Введение в курс по Kubernetes
00:04:28 Что такое Kubernetes
00:08:09 Составляющие части кластера Kubernetes
00:16:28 Управление кластером с помощью kubectl
00:18:30 Программы для курса
00:24:30 Windows - Какой терминал использовать
00:25:52 Установка kubectl
00:31:08 Установка Minikube
00:36:30 Установка Docker Desktop
00:40:24 Создание кластера K8S с помощью Minikube
00:46:50 Проверка статуса кластера Minikube
00:51:19 Настройка алиаса для команды kubectl
00:54:11 Исследование кластера Minikube
00:56:46 Запущенные поды и контейнеры
01:01:00 Сравнение версий Docker
01:04:03 Создание одного пода в кластере
01:08:05 Детальная информация о поде
01:10:53 Проверка доступности веб сервера nginx в контейнере
01:14:41 Подключение внутрь контейнера
01:17:50 Почему под и контейнер недоступны снаружи кластера
01:20:18 Удаление и создание пода заново
01:22:26 Создание деплоймента
01:34:39 Изменение количества подов в деплойменте
01:41:04 IP адреса подов и их доступность
01:46:08 Итоги по масштабированию деплоймента nginx

источник

#devops #девопс

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