DevOps
Открыть в Telegram
Docker, Kubernetes, облачные сервисы (AWS, GCP, Azure), Infrastructure as a Code (Terraform, CloudFormation), администрирование Windows и Linux, сети TCP, IP, скрипты (Bash, PowerShell), Ansible, Jenkins, DevSecOps, логирование. По вопросам @evgenycarter
Больше8 766
Подписчики
+524 часа
-247 дней
+1830 день
Архив постов
8 766
Для чего нужна команда git commit --amend?
Команда
git commit --amend используется для изменения последнего коммита в локальном репозитории. Она позволяет исправить сообщение коммита, добавить в него изменения, которые не были учтены, или удалить файлы, которые не должны были быть в коммите.
Основные случаи использования:
1. Изменение сообщения коммита: если было допущено опечатку или необходимо уточнить содержание сообщения коммита.
git commit --amend -m "Новое сообщение коммита"
2. Добавление изменений в последний коммит: если были забыты изменения, которые нужно включить в последний коммит, можно их добавить, выполнить git add для этих файлов и затем git commit --amend, чтобы объединить их с предыдущим коммитом.
3. Удаление ненужных файлов: если случайно добавлен лишний файл, можно удалить его с помощью git rm, затем выполнить git commit --amend, чтобы пересобрать коммит без этого файла.
После выполнения git commit --amend создается новый коммит с измененной историей, что важно помнить, если работа ведется в команде.
Мы в MAX
#devops #девопс
Подпишись 👉@i_DevOps8 766
Что такое docker и какие инструменты linux лежат в основе? Для чего он используется?
Docker базируется на технологиях:
🔸 namespaces — обеспечивает изоляцию (например, можно айдишники процессов разместить в разных контейнерах)
🔸 cgroups — позволяет управлять группой процессов, и управлять их ресурсами
🔸 capabilities — позволяет дать некоторые рут привелегии процессам или исполняемым файлам. Например, изменить UID процесса на 0, или дать возможность монтировать файловые системы.
🔸 overlay namespaces — (overlayFS, overlay2-драйвер) - файловая система, которая умеет работать "слоями". Не сохранять каждый раз новые файлы, а наслаивать один слой на другой, тем самым экономя место на диске и время создания контейнера.
А вот докер — это уже штука, которая всеми этими технологиями рулит, удобным для нас образом.
Компоненты докера:
🔻 Docker Daemon — тот самый Container Engine; запускает контейнеры.
🔻 Docker CLI — утилита по управлению Docker.
🔻 Dockerfile — инструкция по тому, как собирать образ.
🔻 Image — образ, из которого раскатывается контейнер.
🔻 Container
🔻 Docker registry — хранилище образов.
На Docker_host работает Docker daemon и запускает контейнеры.
Client — передаёт команды: собери образ, скачай образ, запусти контейнер. Docker daemon ходит в registry и выполняет их. Docker-клиент может обращаться и локально (к юникс-сокету), и по TCP с удалённого хоста.
Docker daemon (демон) — это серверная часть, работающая на хост-машине: скачивает образы и запускает из них контейнеры, создаёт сеть между контейнерами, собирает логи. Когда мы говорим «создай образ», этим тоже занимается демон.
Docker CLI — клиентская часть Docker, консольная утилита для работы с демоном. Может работать не только локально, но и по сети.
Мы в MAX
#devops #девопс
Подпишись 👉@i_DevOps
8 766
Unused
CLI-инструмент, экспортер для Prometheus и модуль на Go для перечисления неиспользуемых дисков во всех облачных провайдерах
Этот репозиторий содержит библиотеку на Go для поиска ваших неиспользуемых постоянных дисков у разных облачных провайдеров, а также бинарные файлы для отображения этой информации в CLI или экспорта метрик для Prometheus.
В Grafana Labs мы размещаем рабочие нагрузки у разных облачных провайдеров. Оркестрация рабочих нагрузок управляется Kubernetes, и мы обнаружили, что из-за некоторых ошибок в конфигурации системы хранения у нас накапливалось множество неиспользуемых ресурсов, особенно постоянных дисков. Эти утечки ресурсов стоят денег, и, поскольку эти ресурсы больше не используются, это приводит к финансовым потерям. Эта библиотека и сопутствующие инструменты помогут вам определить такие ресурсы и очистить их.
https://github.com/grafana/unused
Мы в MAX
#devops #девопс
Подпишись 👉@i_DevOps
8 766
Пишем Ansible-модули для управления разными системами хранения данных через Swordfish
Большинство современных систем хранения данных (СХД) предоставляют REST API для управления ими, включая настройку, конфигурирование, выполнение различных команд, получение логов, работу с пользователями и т.д. В зависимости от производителя СХД REST API могут отличаться друг от друга. Если вы используете несколько разных систем, их одновременная поддержка становится проблемой: нужно учитывать многообразие протоколов, интерфейсов, команд и способов взаимодействия с API.
Меня зовут Александр Пономарев, вместе с группой студентов СПбПУ Петра Великого на базе Лаборатории YADRO мы изучали способы сделать управление разными СХД менее трудоемким. Вариант, на котором мы остановились, — использовать системы, которые удовлетворяют спецификации Swordfish, в связке с Ansible. Рассказываю о проекте, который мы выполняли с инженерами компании и преподавателями университета.
https://habr.com/ru/companies/yadro/articles/784070/
Мы в MAX
#devops #девопс
Подпишись 👉@i_DevOps
8 766
🎥 Вебинар по Kubernetes: «Хранение данных в Kubernetes: Volumes, Storages, Stateful-приложения»
☝️ На вебинаре вы узнаете:
- Что такое тома и постоянные тома в Kubernetes, и как они помогают организовать хранение данных.
- Определение между типами хранилищ: от локального до облачного и распределенного.
- Как эффективно работать с StatefulSet и управлять stateful-приложениями в Kubernetes.
- Лучшие практики настройки и использования Persistent Volume Claims (PVC), классов хранения и других инструментов.
💪 В результате вебинара вы:
- Вы научитесь организовывать хранение данных в Kubernetes с использованием Volumes и Persistent Volumes.
- Изучите подходы к управлению госприложениями и сохранению их данных.
- Освоите методы настройки и оптимизации хранилищ для повышения производительности и надежности системы.
🎁 Все участники вебинара получат специальные условия на полное обучение курса «Инфраструктурная платформа на основе Kubernetes»
👉 Для участия зарегистрируйтесь: https://vk.cc/cQ6E3T
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru
8 766
Чем отличается StatefulSet от Deployment?
Deployment — ресурс Kubernetes предназнваенный для развертывания приложения без сохранения состояния. При использовании PVC все реплики будут использовать один и тот же том, и ни один из них не будет иметь собственного состояния.
StatefulSet — поддерживают состояние приложений за пределами жизненного цикла отдельных модулей pod, например для хранилища. Используется для приложений с отслеживанием состояния, каждая реплика модуля будет иметь собственное состояние и будет использовать свой собственный том.
Мы в MAX
#devops #девопс
Подпишись 👉@i_DevOps
8 766
+5
В хабе на Хабр «Разработка публичных облаков» — свежие статьи
от инженеров MWS Cloud Platform ⬜️.
Ценности решают. Как пять принципов помогли вырасти с 150 до 520 человек и запустить IaaS за год.
Binapi и VPP. Программируем SR Policy на Go, разбираем грабли и показываем рабочий прототип для traffic engineering.
Control plane под замком. Зачем прятать мастера Kubernetes и какие решения мы протестировали в Managed Kubernetes.
SPDK для VM. Почему стандартного QEMU мало и как мы ускоряли диски в публичном облаке.
eBPF & Security. Новые возможности для Cilium и Falco и новые риски: атаки на maps, io_uring и rootkits.
🔗 Подпишись на облачный хаб MWS — там регулярно рассказываем, как строим новое облако с нуля.
8 766
Для чего используется Kubectl?
kubectl — это командная утилита для взаимодействия с Kubernetes-кластером. Она используется для выполнения различных операций по управлению кластерами и развертыванию приложений. С kubectl можно выполнять следующие задачи:
1. Управление ресурсами: создавать, обновлять и удалять ресурсы в кластере (например, Pod, Deployment, Service).
2. Мониторинг и отладка: просматривать информацию о текущем состоянии ресурсов и кластера, диагностировать проблемы.
3. Запуск команд в кластере: запускать команды внутри контейнеров, например, для проверки их состояния или выполнения отладочных задач.
4. Обновление приложений: управлять версиями и состоянием развернутых приложений, поддерживать их обновление и масштабирование.
5. Настройка кластера: управлять конфигурациями, такими как сетевые настройки и политика безопасности.
Пример команды kubectl для получения списка всех подов в текущем пространстве имён:
kubectl get pods
Эта команда возвращает информацию обо всех запущенных подах, их состоянии и доступных IP-адресах.
Мы в MAX
#devops #девопс
Подпишись 👉@i_DevOps8 766
Хотите повысить свой уровень в SRE?
➡️ Я уже работаю в SRE, но хочу понять, как вырасти в senior и что для этого нужно прокачать.
➡️ Я хочу избежать стресса от инцидентов и чувствовать себя увереннее в реальных ситуациях.
➡️ Я хочу найти полезные связи, обменяться опытом или получить совет от профессионалов.
Узнали себя? Тогда приходите на SRE Day онлайн 11 октября!
Вас ждут разбор инцидентов, реальные истории карьерного роста и общение с топ-экспертами. А еще чек-листы навыков, полезные алгоритмы и пошаговый план вашего развития.
Кстати, все записи мероприятия останутся с вами.
📌 Первым десяти участникам — скидка почти 40%. Если вы готовы сделать карьерный рывок, скорее оставляйте заявку и будьте в числе первых! Подробнее — на сайте 🔥
8 766
Как снизить расходы на мониторинг: более разумный подход к данным
Мониторинг может стать дорогостоящим из-за огромных объемов данных, которые необходимо обрабатывать. В этой статье вы узнаете о лучших способах хранения и обработки метрик мониторинга для снижения расходов и о том, как VictoriaMetrics может в этом помочь.
В этой статье рассматриваются только решения с открытым исходным кодом. VictoriaMetrics — такой проект с открытым исходным кодом. Вы получите максимальную пользу от этой статьи, если знакомы с Prometheus, Thanos, Mimir или VictoriaMetrics.
https://habr.com/ru/articles/849176/
Мы в MAX
#devops #девопс
Подпишись 👉@i_DevOps
8 766
Приглашаем на бесплатный вебинар от OTUS: “Использование Apache Kafka в распределённых очередях”
📅 Когда: 8 октября, 20:00 мск
О чём вебинар?
Apache Kafka — мощный инструмент для управления сообщениями в масштабируемых распределённых системах. На вебинаре вы узнаете, как использовать Kafka для эффективного обмена данными между сервисами и как избежать типичных ошибок при её внедрении.
Что разберём:
— Основы и архитектура Apache Kafka.
— Принципы работы с распределёнными очередями.
— Настройка и развёртывание кластера Kafka в Docker.
— Примеры обмена сообщениями между сервисами.
— Лучшие практики интеграции Kafka в проекты.
Кому полезно:
— Fullstack и Backend-разработчикам, работающим с распределёнными системами.
— DevOps-инженерам и администраторам, ищущим масштабируемые решения.
— Архитекторам ПО, стремящимся оптимизировать обмен сообщениями.
— Всем, кто хочет освоить Apache Kafka.
Что вы получите:
— Понимание работы Kafka и распределённых очередей.
— Навыки настройки и использования Kafka.
— Практические советы и реальные кейсы применения.
— Инструменты для улучшения ваших систем.
👉 Зарегистрироваться: https://vk.cc/cQ0wCK
Бесплатное занятие приурочено к старту курса Microservice Architecture, обучение на котором позволит освоить микросервисы: Docker, Kafka, API и стать мастером производительных систем.
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
8 766
Pghero
Панель управления производительностью для Postgres
https://github.com/ankane/pghero
Мы в MAX
#devops #девопс
Подпишись 👉@i_DevOps
8 766
Что такое DevOps и почему он автоматизировал не всё
Вы сделали заказ в интернет-магазине, а он внезапно завис в самый разгар скидок. За кулисами этого сервиса работают сотни строк кода и ещё больше человеческой поддержки. DevOps — это способ организовать эту работу так, чтобы новые функции доходили до вас быстрее и без сбоев. Он объединяет разработчиков, тестировщиков и операторов, автоматизируя рутинные шаги и следя за сервисом в режиме реального времени. Звучит хорошо, но на практике автоматизация закрывает далеко не всё.
В статье рассмотрим, что за зверь такой DevOps. Когда работает, а когда спотыкается и где автоматизация работает, а где нужна платформа и процессы. Даже если вы не айтишник — переходите под кат.
https://habr.com/ru/companies/ruvds/articles/950758/
Мы в MAX
#devops #девопс
Подпишись 👉@i_DevOps
8 766
⏩Ваш kubectl apply устарел ⏪
Потому что пришло время для более удобного подхода — GitOps.
Бесплатный вебинар «Распробуйте GitOps и забудете про kubectl apply», на котором:
➡️ разберём эволюцию деплоя в k8s: от простого kubectl apply до helm и kustomize;
➡️ поговорим о плюсах, минусах и подводных камнях каждого подхода, включая сценарии с канареечными деплоями;
➡️ покажем, как GitOps выводит процессы на новый уровень: автоматизация, прозрачная история изменений и решение проблемы configuration drift.
Спикеры:
⚫️ Виталий Лихачев, SRE в крупном голландском travel tech
⚫️ Кирилл Борисов, SRE в VK
Когда: 2 октября в 19:00 мск
Ещё больше про основы Kubernetes – на курсе Kubernetes База
🌺 Регистрация на вебинар — по ссылке.
Реклама ООО «Слёрм» ИНН 3652901451
8 766
Dragonfly Operator — это Kubernetes-оператор, используемый для развертывания и управления экземплярами Dragonfly внутри ваших Kubernetes-кластеров. Основные возможности включают:
- Автоматическое переключение при сбоях (failover)
- Масштабирование по горизонтали и вертикали с пользовательской стратегией развёртывания
- Аутентификация и поддержка TLS для сервера
- Автоматические снимки (snapshots) в PVC и S3
- Мониторинг с помощью Prometheus и Grafana
- Широкие возможности конфигурации
https://github.com/dragonflydb/dragonfly-operator
Мы в MAX
#devops #девопс
Подпишись 👉@i_DevOps
8 766
Последние дни регистрации на MTC Engineer Hack — хакатон на стыке инженерии и ИТ от МТС. Призовой фонд — 500 000 рублей. Лучшие участники смогут получить приглашение на стажировку в МТС по ускоренной процедуре.
Регистрируйся до 1 октября: https://cnrlink.com/mtsengineerhackdevcarter
🎯 Для кого: молодые инженеры, выпускники и студенты инженерных вузов
💻 Формат: онлайн-тур + офлайн-финал в Москве
👤 Участие: индивидуальное
Приглашаем всех, кто интересуется телеком-отраслью, хочет прокачать навыки в инженерии и попробовать себя в задачах МТС. C 3 по 5 октября пройдёт онлайн-этап: участники готовят кейс по своему профилю. 11 октября — встреча финалистов на площадке.
Что тебя ждёт:
🔺 Задачи, близкие к реальной работе инженеров МТС: от проектирования до оптимизации сетей.
🔺 Офлайн-финал в Москве: живое общение и защита проектов. Билеты и проживание оплатят организаторы.
🔺 Мерч в подарок для финалистов.
Регистрация на Codenrock до 1 октября включительно: https://cnrlink.com/mtsengineerhackdevcarter
8 766
Kubelab: Виртуальная лаборатория Kubernetes
Проект Kubelab предлагает готовую инфраструктуру для обучения и экспериментов с Kubernetes. Лаборатория позволяет легко развернуть изолированные кластеры для изучения Kubernetes, тестирования приложений и разработки. Это идеальный инструмент для новичков и профессионалов, желающих оттачивать навыки или тестировать конфигурации в безопасной среде.
https://github.com/natrontech/kubelab
Мы в MAX
#devops #девопс
Подпишись 👉@i_DevOps
8 766
🎥 Вебинар по Linux: "Linux Monitoring: как отслеживать и анализировать производительность"
☝️ На вебинаре вы узнаете:
- Основные категории мониторинга: ресурсы, процессы, сеть, логи
- Инструменты для мониторинга в Linux: top, htop, iostat, vmstat, sar, netstat, dstat
- Как собирать и анализировать метрики с помощью системных и сторонних инструментов
💪 В результате вебинара вы:
- Научитесь собирать и анализировать ключевые метрики системы
- Сможете выявлять узкие места и потенциальные проблемы заранее
- Попробуете комбинировать разные инструменты для комплексного мониторинга
⏰ Все участники вебинара получат специальные условия на полное обучение курса "Administrator Linux. Professional"
👉 Для участия зарегистрируйтесь: https://vk.cc/cPQnK6
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
Уже доступно! Исследование Telegram 2025 — ключевые инсайты года 
