DevOps – Telegram
DevOps
8.5K subscribers
1.44K photos
834 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
#devops #девопс

Подпишись 👉@i_DevOps
👍8
This media is not supported in your browser
VIEW IN TELEGRAM
Постройте облегченную внутреннюю платформу для разработчиков с помощью Argo CD и Kubernetes Labels

Эта статья в блоге демонстрирует, как создать облегченную внутреннюю платформу для разработчиков, не полагаясь на Backstage, но при этом предоставляя разработчикам возможность самообслуживания. Используя GitOps с Argo CD и применяя Kubernetes labels, этот метод предлагает упрощенное и эффективное решение для управления и развертывания вашей инфраструктуры.

https://itnext.io/build-a-lightweight-internal-developer-platform-with-argo-cd-and-kubernetes-labels-4c0e52c6c0f4

#devops #девопс

Подпишись 👉@i_DevOps
👍31
Kluctl Webui

Руководством по Kluctl Webui, который является следующей вехой в экосистеме Kluctl. Он обеспечивает видимость и контроль над развертыванием Kluctl, независимо от того, происходит ли оно через локальную командную строку, конвейер CI/CD или контроллер Kluctl GitOps.

https://medium.com/kluctl/introducing-the-kluctl-webui-bcd3ea4b264d

https://github.com/kluctl/kluctl/releases/tag/v2.21.0

#devops #девопс

Подпишись 👉 @i_DevOps
👍2
Deckhouse Prom++: мы добавили плюсы к Prometheus и сократили потребление памяти в 7,8 раза

Хотя Prometheus и стал стандартом мониторинга для микросервисов в Kubernetes, он потребляет слишком много ресурсов. А что, если мы скажем, что добавили пару плюсов к Prometheus и получили почти бесплатный мониторинг?

Prometheus для хранения 1 миллиона метрик, собираемых раз в 30 секунд на протяжении 2 часов, требуются 500 МБ на диске и 5 ГБ памяти. Нам показалось, что это слишком много. Вместо этого хотелось получить «бесплатный» мониторинг, который не будет требовать значительных затрат на инфраструктуру.

Больше двух лет мы работали над этой задачей. Её результатом стал Deckhouse Prom++. Это Open Source-система мониторинга, которой в среднем требуется в 7,8 раза меньше памяти и в 2,2 раза меньше ресурсов CPU, чем Prometheus v2.53. И здесь ещё есть пространство для оптимизации.

В статье мы расскажем, как появилась идея Deckhouse Prom++, что уже получилось оптимизировать, какие результаты показывает наше решение по сравнению с Prometheus и VictoriaMetrics, а также о ближайших планах.

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

#devops #девопс

Подпишись 👉 @i_DevOps
👍6
Основы виртуализации. Часть 1

1.Основы виртуализации. Введение
2.Основы виртуализации. История развития виртуализации
3.Основы виртуализации. Серверы
4.Основы виртуализации. Виртуальные машины
5.Основы виртуализации. Гипервизоры второго типа
6.Основы виртуализации. Лабораторная работа №1. Создаем VM
7.Основы виртуализации. Гипервизоры первого типа
8.Основы виртуализации. Лабораторная работа №2. ESXi

источник

#devops #девопс

Подпишись 👉 @i_DevOps
👍8
kr8s — это минималистичная, асинхронная и типизированная обёртка над Kubernetes API для Python.
Она предназначена для тех, кто хочет писать Kubernetes-автоматизацию или контроллеры (операторы) на чистом Python без необходимости использовать kubectl, YAML или громоздкие библиотеки.

Пример:

from kr8s import cluster, get

with cluster() as c:
pods = get("pods", namespace="default")
for pod in pods:
print(pod.name, pod.status.phase)


Библиотека полностью асинхронна и поддерживает современные возможности Python, включая async for, тайпинги и кастомные ресурсы.


https://github.com/kr8s-org/kr8s

#devops #девопс

Подпишись 👉 @i_DevOps
👍21
Forwarded from Bash Советы
🧯Как отключить историю Bash — навсегда и без следов

Иногда не хочется, чтобы команды сохранялись в истории (~/.bash_history). Особенно при работе с конфиденциальными данными.



🔒 Отключение истории в текущей сессии

Просто обнуляем переменные истории:


unset HISTFILE
export HISTSIZE=0
export HISTFILESIZE=0


💥 После этого Bash не будет сохранять историю вообще. Даже после выхода из сессии.



🧼 Стереть историю прямо сейчас


history -c # очистить историю из памяти
> ~/.bash_history # стереть файл истории




🔁 Отключить навсегда (для пользователя)

Добавь в ~/.bashrc или ~/.bash_profile:


export HISTFILE=
export HISTSIZE=0
export HISTFILESIZE=0


📌 После перезапуска оболочки история вестись не будет.



🧙 Дополнительно (опционально)

Чтобы Bash не пытался писать историю на выходе:


unset HISTFILE
trap "" EXIT


🛑 Будь осторожен! Без истории сложнее откатить действия. Но иногда это нужно: безопасность превыше всего 🔐

👉@bash_srv
👍5
Сбор данных мониторинга из Frontend JS приложений используя Grafana Faro

Здравствуйте. В данной статье будет выполнено рассмотрение и установка инструмента Grafana Faro для осуществления сбора данных мониторинга из Frontend приложений написанных на JavaScript. Также, перед непосредственным использованием Grafana Faro, выполним установку в кластере Kubernetes всех остальных необходимых компонентов Grafana стека.

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

#devops #девопс

Подпишись 👉 @i_DevOps
👍1
Как эффективно масштабировать микросервисы с помощью контейнеров и Kubernetes на Go

Микросервисная архитектура — мощный подход к созданию масштабируемых и поддерживаемых приложений. Но по мере увеличения числа сервисов растёт и сложность управления ими. Использование контейнеров (например, Docker) в сочетании с Kubernetes позволяет упростить масштабирование, деплой и мониторинг микросервисов.

🔹 Почему Go?

Go (или Golang) отлично подходит для микросервисов:

- высокая производительность,
- быстрая компиляция,
- встроенная поддержка параллелизма,
- простота разработки и читаемость кода.

🔹 Контейнеризация микросервисов

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

Пример Dockerfile для Go-сервиса:


FROM golang:1.20 AS builder
WORKDIR /app
COPY . .
RUN go build -o service

FROM alpine:latest
WORKDIR /root/
COPY --from=builder /app/service .
CMD ["./service"]


Этот подход позволяет минимизировать размер финального контейнера и ускорить запуск.

🔹 Оркестрация с помощью Kubernetes

Kubernetes управляет развертыванием и масштабированием контейнеров. Каждый микросервис разворачивается как Pod, а Deployment следит за его доступностью и масштабируемостью.

Пример Deployment для Go-сервиса:


apiVersion: apps/v1
kind: Deployment
metadata:
name: go-service
spec:
replicas: 3
selector:
matchLabels:
app: go-service
template:
metadata:
labels:
app: go-service
spec:
containers:
- name: go-service
image: your-repo/go-service:latest
ports:
- containerPort: 8080


Это создаёт три реплики сервиса, балансируя нагрузку между ними.

🔹 Сервис-дискавери и балансировка

Kubernetes автоматически предоставляет DNS и IP для взаимодействия между сервисами. Компонент Service в Kubernetes позволяет направлять трафик к нужным Pod'ам и осуществлять балансировку.

🔹 Мониторинг и масштабирование

Интеграция с Prometheus и Grafana обеспечивает мониторинг метрик. Kubernetes также позволяет настраивать автоматическое масштабирование (HPA) в зависимости от загрузки CPU или других метрик.

Пример HPA:


apiVersion: autoscaling/v2
kind: HorizontalPodAutoscaler
metadata:
name: go-service-hpa
spec:
scaleTargetRef:
apiVersion: apps/v1
kind: Deployment
name: go-service
minReplicas: 2
maxReplicas: 10
metrics:
- type: Resource
resource:
name: cpu
target:
type: Utilization
averageUtilization: 70



https://blog.stackademic.com/how-to-effectively-scale-microservices-using-containers-and-kubernetes-on-go-1fb05fccb089


#devops #девопс

Подпишись 👉@i_DevOps
👍5
🧪 K8E — это форк проекта K3s, предназначенный для локального тестирования.
Он не требует root-доступа и не использует systemd.
Также вы можете легко собрать и запустить его без сетевого подключения (air-gap режим).

Основные особенности:
- Без root-доступа
- Без systemd
- Один бинарник
- Простой запуск кластера: k8e server &
- Не требует внешней сети
- Поддерживает полностью автономную сборку

Если вы когда-либо хотели поднять Kubernetes-кластер за пару секунд и без привилегий — этот инструмент идеально подойдёт для тестов и локальной разработки.

https://github.com/xiaods/k8e

#devops #девопс

Подпишись 👉@i_DevOps
👍6
Как вам такой системник ?

Подписывайтесь на канал 👉@tipsysdmin
🔥82👍2🥴2
Собрал основные концепции Docker в одну диаграмму

#devops #девопс

Подпишись 👉@i_DevOps
👍6
Media is too big
VIEW IN TELEGRAM
Kubernetes Crash Course for Absolute Beginners

0:00 - Intro and Course Overview
1:44 - What is Kubernetes
4:33 - Kubernetes Architecture
9:29 - Node and Pod
8:58 - Main K8s Components
09:29 - Node & Pod
12:19 - Service & Ingress
14:31 - ConfigMap & Secret
17:52 - Volume
19:46 - Deployment & StatefulSet
26:28 - Kubernetes Configuration
32:39 - Minikube and Kubectl - Setup K8s cluster locally
41:17 - Complete Demo Project: Deploy WebApp with MongoDB
1:05:40 - Interacting with Kubernetes Cluster
1:11:03 - Congrats! You made it to the end 🎉

источник

#devops #девопс

Подпишись 👉@i_DevOps
👍4
Media is too big
VIEW IN TELEGRAM
Zed — это высокопроизводительный текстовый редактор, ориентированный на разработчиков. Он написан на Rust и использует пользовательский движок рендеринга на базе GPU для достижения минимальных задержек. Архитектура Zed основана на многопоточности и асинхронности, что позволяет редактору эффективно использовать ресурсы современных многоядерных систем.

Редактор также разрабатывается с упором на совместную работу в реальном времени: Zed предлагает встроенные функции для коллаборации между разработчиками — от редактирования кода до видеозвонков. Это делает его особенно удобным для удалённых команд.

Среди особенностей:
- Мгновенный отклик и плавная анимация благодаря GPU-рендерингу
- Полноценная поддержка нескольких курсоров и мощное автодополнение
- Интеграция с языковыми серверами (LSP)
- Глубокая коллаборативность: совместное редактирование, общие терминалы, голос и видео


https://github.com/zed-industries/zed

#devops #девопс

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