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

По всем вопросам @evgenycarter
Download Telegram
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 контейнеров.

источник

#devops #девопс

👉 @devops_star
👍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

#devops #девопс

👉 @devops_star
👍1
Что за none образы можно увидеть в docker images?

Каждый образ в докере состоит из слоев, и имеет дочерние связи с другими слоями. По умолчанию они лежат в /var/lib/docker/graph. И когда мы закачиваем новую версию образа, он подгружает слой раз за разом. И получается что none это лишь один из слоев. Этот образ называется промежуточным. Их можно увидеть с помощью docker images -a Также есть обособленные образы none:none. Например, когда мы собираем примерно такой же образ, но, например, с иной версией ОС. В этом случае будет создан именно такой образ. Поскольку мы пересобрали образ с помощью докерфайла, а старая система стала обособленной.

Можно почистить так:

docker rmi $(docker images -f "dangling=true" -q)

#devops #девопс

👉 @devops_star
👍1
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