DevOps Star (Звезда Девопса)
2.15K subscribers
288 photos
246 videos
19 files
355 links
Devops, Linux, SRE, Kubernetes, Сисадмин, Девопс, Python, JS, Java, Git, IT канал, программирование, безопасность, ИТ, Sysadmin

По всем вопросам @evgenycarter
Download Telegram
Qryn

⭐️ Все-в-одном Polyglot Observability с OLAP-хранилищем для журналов, метрик, трасс и профилей. Замена Grafana Cloud, совместимая с Loki, Prometheus, Tempo, Pyroscope, Opentelemetry, Datadog и другими 🚀.

https://github.com/metrico/qryn

#devops #девопс

👉 @devops_star
👍1
This media is not supported in your browser
VIEW IN TELEGRAM
CKS

Открытая платформа для изучения kubernetes и aws eks и подготовки к экзаменам Certified Kubernetes Specialist (CKA , CKS , CKAD)

SRE Learning Platform - это центр с открытым исходным кодом, призванный помочь ИТ-инженерам эффективно подготовиться к экзаменам CKA (Certified Kubernetes Administrator), CKS (Certified Kubernetes Security Specialist) и CKAD (Certified Kubernetes Application Developer). Кроме того, данная платформа предлагает бесценный практический опыт работы с AWS EKS (Elastic Kubernetes Service), что позволяет пользователям получить практические знания для применения в реальных условиях. Если вы хотите подтвердить свои навыки, повысить карьерные перспективы в области администрирования Kubernetes, безопасности, разработки приложений или углубиться в изучение AWS EKS, эта платформа предоставляет практические лабораторные работы, практические тесты и рекомендации экспертов для успешного прохождения сертификации.

Подготовка к экзамену CKA: Certified Kubernetes Administrator
Повысьте свои навыки для экзамена CKS: Certified Kubernetes Security Specialist
Превосходно подготовиться к экзамену CKAD: Certified Kubernetes Application Developer Exam

https://github.com/ViktorUJ/cks

#devops #девопс

👉 @devops_star
👍3
Что вы знаете Ingress и как она работает?

Ingress в Kubernetes — это API-объект, который предоставляет правила маршрутизации внешнего трафика (HTTP и HTTPS) к сервисам внутри кластера. Это позволяет управлять доступом к различным сервисам через единый внешний IP или DNS-имя, упрощая процесс маршрутизации и балансировки нагрузки.

🟢Основные компоненты и принципы работы:


1. Ingress-объект:
- Определяет правила маршрутизации.
- Включает пути (routes), соответствующие сервисам внутри кластера.
- Поддерживает перенаправление HTTP -> HTTPS, управление хостами, а также балансировку нагрузки.

2. Ingress-контроллер:
- Специальный компонент, который обрабатывает объекты Ingress и обеспечивает их работу.
- Наиболее популярные контроллеры:
- NGINX Ingress Controller
- Traefik
- HAProxy
- AWS ALB Ingress Controller

3. Как работает:
- Внешний пользователь отправляет HTTP/HTTPS-запрос.
- Запрос поступает на внешний IP-адрес, связанный с Ingress-контроллером.
- Контроллер анализирует правила Ingress и маршрутизирует запрос к нужному сервису.
- Ответ от сервиса передается обратно пользователю через тот же маршрут.

🟢Пример конфигурации Ingress:


apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: example-ingress
spec:
rules:
- host: example.com
http:
paths:
- path: /
pathType: Prefix
backend:
service:
name: example-service
port:
number: 80


🟢Преимущества:
- Упрощенная маршрутизация: Один внешний IP-адрес для доступа к множеству сервисов.
- Поддержка SSL/TLS: Возможность обеспечения безопасного соединения.
- Балансировка нагрузки: Распределение трафика между экземплярами приложения.

🟢Использование Ingress:
Ingress удобен для публичных приложений с веб-интерфейсом, где требуется организовать доступ через доменные имена и безопасные соединения.

#devops #девопс

👉 @devops_star
👍1
Пять 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 #девопс

👉 @devops_star
👍2🔥1
Как можно контролировать использование ресурсов в POD?

В Kubernetes контроль использования ресурсов в Pod осуществляется через механизмы запросов (requests) и лимитов (limits), которые задаются для контейнеров в манифестах Pod'ов. Это позволяет управлять доступом к вычислительным ресурсам (CPU и память) и предотвращать чрезмерное потребление, которое может повлиять на работу кластера.

Основные способы контроля:

1. Запросы (Requests):
- Указывают минимальный объем ресурсов, который необходим контейнеру для работы.
- Kubernetes использует эту информацию для планирования Pod'ов на узлах (nodes), гарантируя, что на узле достаточно ресурсов для Pod'а.

Пример:

resources:
requests:
memory: "256Mi"
cpu: "500m"


2. Лимиты (Limits):
- Устанавливают максимальный объем ресурсов, который контейнер может использовать.
- Если контейнер превышает лимит памяти, он будет завершен. Если превышен лимит CPU, его использование будет ограничено (throttled).

Пример:

resources:
limits:
memory: "512Mi"
cpu: "1"


3. Комбинированное использование запросов и лимитов:
- Обычно рекомендуется задавать оба параметра для каждой нагрузки, чтобы обеспечить баланс между производительностью и безопасностью.
- Пример:

resources:
requests:
memory: "256Mi"
cpu: "500m"
limits:
memory: "512Mi"
cpu: "1"


4. Использование ResourceQuota:
- Устанавливает ограничения на объем ресурсов, которые могут использоваться на уровне namespace.
- Пример:

apiVersion: v1
kind: ResourceQuota
metadata:
name: compute-resources
namespace: example-namespace
spec:
hard:
requests.cpu: "4"
requests.memory: "8Gi"
limits.cpu: "10"
limits.memory: "16Gi"


5. LimitRange:
- Определяет минимальные/максимальные запросы и лимиты для Pod'ов и контейнеров в namespace.
- Пример:

apiVersion: v1
kind: LimitRange
metadata:
name: mem-cpu-limits
namespace: example-namespace
spec:
limits:
- default:
cpu: "1"
memory: "512Mi"
defaultRequest:
cpu: "500m"
memory: "256Mi"
type: Container


Мониторинг использования ресурсов:
- Используйте встроенные метрики Kubernetes через kubectl top:

kubectl top pod --namespace=<namespace>
kubectl top node

- Интеграция с инструментами наблюдаемости, такими как Prometheus, Grafana или Kubernetes Dashboard, для анализа метрик ресурсов в реальном времени.


#devops #девопс

👉 @devops_star
👍4
Шпаргалка по командам Docker и Docker-compose

#devops #девопс

👉 @devops_star
👍1
Короткий совет по Linux 💡

Если вы хотите очистить пустые каталоги, команда find может упростить эту работу:
$ find . -type d -empty -exec rmdir -v {} +
Параметр -type d выполняет поиск каталогов, -empty выбирает пустые каталоги, а -exec rmdir {} выполняет команду rmdir для их удаления.

Команда rmdir гарантирует, что каталог пуст перед его удалением.

В качестве альтернативы, вы также можете использовать эту команду для выполнения той же задачи:
$ find . -type d -empty -delete

👉 @devops_star
👍1
Autobase

Это инструмент, разработанный для автоматизации развёртывания и управления PostgreSQL-кластерами с использованием Ansible. Он поддерживает широкий набор функций, включая настройку репликации, автоматизацию резервного копирования с помощью инструментов, таких как pgBackRest и WAL-G, мониторинг состояния кластеров, а также настройку высокодоступной инфраструктуры (HA).

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

https://github.com/vitabaks/autobase

#devops #девопс

👉 @devops_star
👍1
Sveltos: Kubernetes add-on controller

Это дополнительный контроллер Kubernetes, который упрощает развертывание и управление дополнениями и приложениями на нескольких кластерах. Он запускается на управляющем кластере и может программно развертывать и управлять дополнениями и приложениями на любом кластере в парке, включая сам управляющий кластер. Sveltos поддерживает различные форматы дополнений, включая диаграммы Helm, необработанный YAML, Kustomize, Carvel ytt и Jsonnet.

https://github.com/projectsveltos/addon-controller

#devops #девопс

👉 @devops_star
👍1
Media is too big
VIEW IN TELEGRAM
Kubelab: Виртуальная лаборатория Kubernetes

Проект Kubelab предлагает готовую инфраструктуру для обучения и экспериментов с Kubernetes. Лаборатория позволяет легко развернуть изолированные кластеры для изучения Kubernetes, тестирования приложений и разработки. Это идеальный инструмент для новичков и профессионалов, желающих оттачивать навыки или тестировать конфигурации в безопасной среде.

https://github.com/natrontech/kubelab

#devops #девопс

👉 @devops_star
👍1
This media is not supported in your browser
VIEW IN TELEGRAM
Preevy

Это инструмент с интерфейсом командной строки (CLI), предназначенный для упрощения процесса создания эфемерных сред предварительного просмотра из Docker-приложений. Интегрируйте Preevy в свой CI-поток для развертывания Pull Requests в качестве предварительных окружений, используя существующего облачного провайдера или кластер Kubernetes.

https://github.com/livecycle/preevy

#devops #девопс

👉 @devops_star
👍1
SRE тут? Нашли для вас подкаст, который вполне может пополнить ряд любимых.

Коллеги из Авито создали «В SREду на кухне», периодически собираются, зовут на запись гостей и обсуждают то, о чём не принято говорить в опенспейсе. Например, вот темы недавних выпусков:
— GitOps не волшебная таблетка;
— Зачем продукту бюджет ошибок;
— Роняем прод, чтобы стать сильнее: всё о Chaos Engineering;
— SRE больше не нужны. AI переписал правила.

Отвечая на вопрос «А при чём здесь комьюнити?» — все дополнительные инсайты, статьи и мысли на темы выпусков ребята выкладывают в канал «Avito SREда». И там уже собралась активная аудитория коллег-инженеров.
1
This media is not supported in your browser
VIEW IN TELEGRAM
Dockly

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

https://github.com/lirantal/dockly

#devops #девопс

👉 @devops_star
👍1
This media is not supported in your browser
VIEW IN TELEGRAM
Atuin

Это инструмент для улучшения истории командной строки, заменяющий стандартную историю оболочки. Он сохраняет команды в зашифрованной базе данных, синхронизирует историю между устройствами и позволяет легко искать и фильтровать команды. Atuin поддерживает bash, zsh и fish, обеспечивая удобство работы с историей в терминале.

https://github.com/atuinsh/atuin

#devops #девопс

👉 @devops_star
👍1
This media is not supported in your browser
VIEW IN TELEGRAM
Walk — это инструмент на Go, который позволяет рекурсивно обходить директории и выполнять команды для каждого найденного файла или папки.

📌 Ключевые особенности:
- Простая команда для выполнения скриптов или операций над файлами.
- Гибкость и высокая скорость работы.
- Подходит для автоматизации задач, связанных с обработкой файлов.

🔗 Репозиторий: https://github.com/antonmedv/walk

#devops #девопс

👉 @devops_star
👍1
Смерть от тысячи микросервисов

Церковь Великой Сложности

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

Как мы к этому пришли? Как мы стали вместо решения наших задач, тратить кучи денег на решение проблем, которых у нас нет?

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

original https://renegadeotter.com/2023/09/10/death-by-a-thousand-microservices

#devops #девопс

👉 @devops_star
👍1