DevOps
8.77K subscribers
1.39K photos
880 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
Варианты реализации GitOps при помощи Argo CD

В «Экспресс 42» — подразделении «Фланта», которое консультирует компании по DevOps-практикам, — решили проверить, как можно реализовать GitOps по модели BSA (Base, Service, Application) с помощью Argo CD. Чистый эксперимент на тестовом репозитории.

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

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

Мы в MAX

#devops #девопс

Подпишись 👉@i_DevOps
👍51
Перечислите различные сервисы K8, которые могут работать на узлах.

Kubernetes (K8s) запускает различные службы на узлах, в том числе:

На рабочих узлах:
kubelet: отвечает за управление узлами и обеспечение того, чтобы контейнеры работали должным образом.
kube-proxy: предоставляет службы сетевого прокси-сервера для обеспечения связи между узлами и службами.
На главных узлах:
kube-apiserver: предоставляет API Kubernetes, через который все остальные компоненты взаимодействуют с кластером.
kube-scheduler: назначает вновь созданные модули узлу на основе доступности ресурсов и других ограничений.
kube-controller-manager: отслеживает состояние кластера и выполняет задачи для поддержания желаемого состояния, такие как масштабирование вверх или вниз.
Другие службы, которые могут работать на рабочих узлах, включают kube-dns, который обеспечивает разрешение DNS для служб Kubernetes, и kubelet, который управляет жизненными циклами модулей на узле.

Мы в MAX

#devops #девопс

Подпишись 👉@i_DevOps
👍4
Платформа управления оповещениями и AIOps с открытым исходным кодом.

Рабочие процессы

Keep — это GitHub Actions для ваших инструментов мониторинга.

Рабочий процесс Keep — это декларативный YAML-файл, который автоматизирует управление оповещениями и инцидентами. Каждый рабочий процесс состоит из следующих элементов:

- Триггеры — что запускает рабочий процесс (оповещения, инциденты, расписание или ручной запуск).
- Шаги — чтение или получение данных (обогащение, контекст).
- Действия — выполнение операций (обновление тикетов, отправка уведомлений, перезапуск серверов).

https://github.com/keephq/keep

Мы в MAX

#devops #девопс

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

Автоматизация Pull Request в Terraform

https://github.com/runatlantis/atlantis

Мы в MAX

#devops #девопс

Подпишись 👉@i_DevOps
👍1
This media is not supported in your browser
VIEW IN TELEGRAM
Синхронизация локальных изменений с docker/kubernetes контейнером

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

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

Мы в MAX

#devops #девопс

Подпишись 👉@i_DevOps
👍41
Изучаем Ansible Inventory: основы и примеры использования

Перевели статью об основах Ansible inventory. В ней рассматривается базовая функциональность, управление переменными, комбинирование нескольких источников Inventory и варианты работы с динамическими Inventory.

Статья будет полезна тем, кто изучает Ansible.

https://spacelift.io/blog/ansible-inventory

Мы в MAX

#devops #девопс

Подпишись 👉@i_DevOps
👍3
Опыт масштабирования Kubernetes на 2k узлов и на 400k подов

Расскажу, как мы в PayPal начинали осваивать Kubernetes. На тот момент большинство наших рабочих нагрузок выполнялось на Apache Mesos, и в рамках этой миграции нам требовалось разобраться с некоторыми аспектами производительности у кластеров, в которых будет работать Kubernetes – с учётом той плоскости управления, что действует в PayPal. Из всех этих аспектов важнее всего было понять, как именно масштабируется платформа, а также выявить, как можно было бы улучшить масштабируемость, настраивая параметры кластера.

https://habr.com/ru/companies/timeweb/articles/787774/

Мы в MAX

#devops #девопс

Подпишись 👉@i_DevOps
4
Forwarded from Bash Советы
🧹 Автоматическая очистка логов старше N дней

Если логи разрастаются, а места становится всё меньше — пора автоматизировать их очистку! Вот простой способ удалить файлы старше, скажем, 14 дней:


find /var/log -type f -name "*.log" -mtime +14 -exec rm -f {} \;


🔧 Объяснение:
- /var/log — каталог с логами (можно заменить на нужный путь);
- -type f — только файлы;
- -name "*.log" — ищем только .log-файлы;
- -mtime +14 — которым больше 14 дней;
- -exec rm -f {} — удаляем.

🛡️ Сухой запуск перед удалением:

find /var/log -type f -name "*.log" -mtime +14

Так ты увидишь, что будет удалено, прежде чем запускать rm.

📌 Добавь в cron, чтобы забыть о рутине навсегда.

👉@bash_srv
👍62
This media is not supported in your browser
VIEW IN TELEGRAM
GitQL — это инструмент, созданный с использованием GitQL SDK для выполнения SQL-подобных запросов к вашим локальным файлам .git.

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

https://github.com/amrdeveloper/GQL

Мы в MAX

#devops #девопс

Подпишись 👉@i_DevOps
👍3🤡1
Docker Build Checks: максимальный линтер для Dockerfile 🐳

Совершенствуйте свои Dockerfile с помощью простых проверок сборки
Docker Build Checks используются для проверки конфигураций сборки Dockerfile на наличие проблем, параметров сборки и лучших практик. Это продвинутый линтер, который помогает выявить ошибки и предупреждения до создания Docker-образа. Фактически, это своего рода "сухой запуск" Dockerfile, который позволяет заранее проверить, есть ли проблемы или предупреждения.

https://medium.com/@mathesh-me/docker-build-checks-the-ultimate-linter-for-dockerfiles-4de37ac6081a

Мы в MAX

#devops #девопс

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

01- Основы. Принцип работы. Почему docker. Сравнение с виртульной машиной. Применение.
02- Установка Docker в Linux и Windows.
03- Основные команды. Управление портами. Port Mapping.
04- Переменные. Environment Variables.
05- Volumes. Постоянные данные. Persisting Data.
06- Сети в докер. Network: bridge, host, none, macvlan, ipvlan
07- Dockerfile. Создаем СВОИ контейнеры.
08- Docker-COMPOSE. Простой запуск контейнеров.
09- Portainer. Управлять Docker ПРОСТО. Обзор, установка, настройка.
10- Watchtower. Автоматизация: обновление Docker контейнеров.

источник

Мы в MAX

#devops #девопс

Подпишись 👉@i_DevOps
👍101🖕1
This media is not supported in your browser
VIEW IN TELEGRAM
Trippy сочетает функции traceroute и ping и предназначен для анализа сетевых проблем.

Фичи:
Трассировка с использованием нескольких протоколов:
ICMP, UDP и TCP
IPv4 и IPv6

NAT detection

DNS:
Use system, external (Google 8.8.8.8 or Cloudflare 1.1.1.1) or custom resolver
Lazy reverse DNS queries
Lookup autonomous system number (ASN) and name

и многое другое...

https://github.com/fujiapple852/trippy

Мы в MAX

#devops #девопс

Подпишись 👉@i_DevOps
👍32👎1💩1🖕1