DevOps – Telegram
DevOps
8.46K subscribers
1.47K photos
809 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
Как мы докатились до Kubernetes и чем он заслужил любовь бизнеса

Kubernetes сейчас массово используют в ЦОДах и облачных решениях. Какие заслуги у Кубера, что было до него и почему сейчас он едва ли не стандарт отрасли. А ещё, как понять, что Кубер вам ни к чему.

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

#devops #девопс

Подпишись 👉@i_DevOps
👍4
8 лучших советов и рекомендаций по работе с Docker

В этом посте я хочу поделиться 8 лучшими советами и рекомендациями для Docker, которые я получил благодаря реальному опыту и инсайдерским знаниям.

https://www.docker.com/blog/8-top-docker-tips-tricks-for-2024/

#devops #девопс

Подпишись 👉@i_DevOps
👍4
Подборка Telegram каналов для программистов

https://news.1rj.ru/str/piterspb Канал о Санкт-Петербурге 🌇❤️💙


Системное администрирование 📌
https://news.1rj.ru/str/sysadmin_girl Девочка Сисадмин 👩
https://news.1rj.ru/str/srv_admin_linux Админские угодья
https://news.1rj.ru/str/linux_srv Типичный Сисадмин

https://news.1rj.ru/str/devops_star DevOps Star (Звезда Девопса)
https://news.1rj.ru/str/i_linux Системный администратор
https://news.1rj.ru/str/linuxchmod Linux
https://news.1rj.ru/str/sys_adminos Системный Администратор
https://news.1rj.ru/str/tipsysdmin Типичный Сисадмин (фото железа, было/стало)
https://news.1rj.ru/str/sysadminof Книги для админов, полезные материалы
https://news.1rj.ru/str/i_odmin Все для системного администратора
https://news.1rj.ru/str/i_odmin_book Библиотека Системного Администратора
https://news.1rj.ru/str/i_odmin_chat Чат системных администраторов
https://news.1rj.ru/str/i_DevOps DevOps: Пишем о Docker, Kubernetes и др.
https://news.1rj.ru/str/sysadminoff Новости Линукс Linux

1C разработка 📌
https://news.1rj.ru/str/odin1C_rus Cтатьи, курсы, советы, шаблоны кода 1С

Программирование C++📌
https://news.1rj.ru/str/cpp_lib Библиотека C/C++ разработчика
https://news.1rj.ru/str/cpp_knigi Книги для программистов C/C++
https://news.1rj.ru/str/cpp_geek Учим C/C++ на примерах

Программирование Python 📌
https://news.1rj.ru/str/pythonofff Python академия. Учи Python быстро и легко🐍
https://news.1rj.ru/str/BookPython Библиотека Python разработчика
https://news.1rj.ru/str/python_real Python подборки на русском и английском
https://news.1rj.ru/str/python_360 Книги по Python Rus

Java разработка 📌
https://news.1rj.ru/str/BookJava Библиотека Java разработчика
https://news.1rj.ru/str/java_360 Книги по Java Rus
https://news.1rj.ru/str/java_geek Учим Java на примерах

GitHub Сообщество 📌
https://news.1rj.ru/str/Githublib Интересное из GitHub

Базы данных (Data Base) 📌
https://news.1rj.ru/str/database_info Все про базы данных

Мобильная разработка: iOS, Android 📌
https://news.1rj.ru/str/developer_mobila Мобильная разработка
https://news.1rj.ru/str/kotlin_lib Подборки полезного материала по Kotlin

Фронтенд разработка 📌
https://news.1rj.ru/str/frontend_1 Подборки для frontend разработчиков
https://news.1rj.ru/str/frontend_sovet Frontend советы, примеры и практика!
https://news.1rj.ru/str/React_lib Подборки по React js и все что с ним связано

Разработка игр 📌
https://news.1rj.ru/str/game_devv Все о разработке игр

Библиотеки 📌
https://news.1rj.ru/str/book_for_dev Книги для программистов Rus
https://news.1rj.ru/str/programmist_of Книги по программированию
https://news.1rj.ru/str/proglb Библиотека программиста
https://news.1rj.ru/str/bfbook Книги для программистов
https://news.1rj.ru/str/books_reserv Книги для программистов

БигДата, машинное обучение 📌
https://news.1rj.ru/str/bigdata_1 Data Science, Big Data, Machine Learning, Deep Learning

Программирование 📌
https://news.1rj.ru/str/bookflow Лекции, видеоуроки, доклады с IT конференций
https://news.1rj.ru/str/coddy_academy Полезные советы по программированию
https://news.1rj.ru/str/rust_lib Полезный контент по программированию на Rust
https://news.1rj.ru/str/golang_lib Библиотека Go (Golang) разработчика
https://news.1rj.ru/str/itmozg Программисты, дизайнеры, новости из мира IT
https://news.1rj.ru/str/php_lib Библиотека PHP программиста 👨🏼‍💻👩‍💻
https://news.1rj.ru/str/nodejs_lib Подборки по Node js и все что с ним связано
https://news.1rj.ru/str/ruby_lib Библиотека Ruby программиста

QA, тестирование 📌
https://news.1rj.ru/str/testlab_qa Библиотека тестировщика

Шутки программистов 📌
https://news.1rj.ru/str/itumor Шутки программистов

Защита, взлом, безопасность 📌
https://news.1rj.ru/str/thehaking Канал о кибербезопасности
https://news.1rj.ru/str/xakep_1 Статьи из "Хакера"

Книги, статьи для дизайнеров 📌
https://news.1rj.ru/str/ux_web Статьи, книги для дизайнеров

Английский 📌
https://news.1rj.ru/str/UchuEnglish Английский с нуля

Математика 📌
https://news.1rj.ru/str/Pomatematike Канал по математике
https://news.1rj.ru/str/phis_mat Обучающие видео, книги по Физике и Математике

Excel лайфхак📌
https://news.1rj.ru/str/Excel_lifehack

https://news.1rj.ru/str/tikon_1 Новости высоких технологий, науки и техники💡
https://news.1rj.ru/str/mir_teh Мир технологий (Technology World)

Вакансии 📌
https://news.1rj.ru/str/sysadmin_rabota Системный Администратор
https://news.1rj.ru/str/progjob Вакансии в IT
👍2
Python для DevOps: Полное руководство от новичка до продвинутого уровня

Python получил широкое распространение в экосистеме DevOps благодаря своей простоте, обширным библиотекам и адаптивности для различных платформ и задач. Независимо от того, автоматизируете ли вы рутинные задачи, управляете инфраструктурой или разрабатываете CI/CD конвейеры, Python предлагает мощный и надежный набор инструментов.

https://dev.to/prodevopsguytech/python-for-devops-a-comprehensive-guide-from-beginner-to-advanced-2pmm

#devops #девопс

Подпишись 👉@i_DevOps
👍6🤡2
Pghero

Панель управления производительностью для Postgres

https://github.com/ankane/pghero

#devops #девопс

Подпишись 👉@i_DevOps
👍3
Для чего используется Kubectl?

kubectl — это командная утилита для взаимодействия с Kubernetes-кластером. Она используется для выполнения различных операций по управлению кластерами и развертыванию приложений. С kubectl можно выполнять следующие задачи:

1. Управление ресурсами: создавать, обновлять и удалять ресурсы в кластере (например, Pod, Deployment, Service).
2. Мониторинг и отладка: просматривать информацию о текущем состоянии ресурсов и кластера, диагностировать проблемы.
3. Запуск команд в кластере: запускать команды внутри контейнеров, например, для проверки их состояния или выполнения отладочных задач.
4. Обновление приложений: управлять версиями и состоянием развернутых приложений, поддерживать их обновление и масштабирование.
5. Настройка кластера: управлять конфигурациями, такими как сетевые настройки и политика безопасности.

Пример команды kubectl для получения списка всех подов в текущем пространстве имён:


kubectl get pods


Эта команда возвращает информацию обо всех запущенных подах, их состоянии и доступных IP-адресах.

#devops #девопс

Подпишись 👉@i_DevOps
👍51
Чем отличается StatefulSet от Deployment?

Deployment — ресурс Kubernetes предназнваенный для развертывания приложения без сохранения состояния. При использовании PVC все реплики будут использовать один и тот же том, и ни один из них не будет иметь собственного состояния.

StatefulSet — поддерживают состояние приложений за пределами жизненного цикла отдельных модулей pod, например для хранилища. Используется для приложений с отслеживанием состояния, каждая реплика модуля будет иметь собственное состояние и будет использовать свой собственный том.


#devops #девопс

Подпишись 👉@i_DevOps
👍9
Пишем Ansible-модули для управления разными системами хранения данных через Swordfish

Большинство современных систем хранения данных (СХД) предоставляют REST API для управления ими, включая настройку, конфигурирование, выполнение различных команд, получение логов, работу с пользователями и т.д. В зависимости от производителя СХД REST API могут отличаться друг от друга. Если вы используете несколько разных систем, их одновременная поддержка становится проблемой: нужно учитывать многообразие протоколов, интерфейсов, команд и способов взаимодействия с API.

Меня зовут Александр Пономарев, вместе с группой студентов СПбПУ Петра Великого на базе Лаборатории YADRO мы изучали способы сделать управление разными СХД менее трудоемким. Вариант, на котором мы остановились, — использовать системы, которые удовлетворяют спецификации Swordfish, в связке с Ansible. Рассказываю о проекте, который мы выполняли с инженерами компании и преподавателями университета.

https://habr.com/ru/companies/yadro/articles/784070/

#devops #девопс

Подпишись 👉@i_DevOps
👍41
Terraform управляет несколькими средами

При использовании Terraform для управления инфраструктурой обычно создается несколько окружений, таких как среда разработки, среда staging и среда production. Каждая среда может иметь свой собственный набор ресурсов и конфигураций. Чтобы сохранить код инфраструктуры организованным и удобным для сопровождения, полезно использовать модули.

https://medium.com/@b0ld8/terraform-manage-multiple-environments-63939f41c454

#devops #девопс

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

CLI-инструмент, экспортер для Prometheus и модуль на Go для перечисления неиспользуемых дисков во всех облачных провайдерах

Этот репозиторий содержит библиотеку на Go для поиска ваших неиспользуемых постоянных дисков у разных облачных провайдеров, а также бинарные файлы для отображения этой информации в CLI или экспорта метрик для Prometheus.

В Grafana Labs мы размещаем рабочие нагрузки у разных облачных провайдеров. Оркестрация рабочих нагрузок управляется Kubernetes, и мы обнаружили, что из-за некоторых ошибок в конфигурации системы хранения у нас накапливалось множество неиспользуемых ресурсов, особенно постоянных дисков. Эти утечки ресурсов стоят денег, и, поскольку эти ресурсы больше не используются, это приводит к финансовым потерям. Эта библиотека и сопутствующие инструменты помогут вам определить такие ресурсы и очистить их.

https://github.com/grafana/unused

#devops #девопс

Подпишись 👉@i_DevOps
👍5
Что такое 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, консольная утилита для работы с демоном. Может работать не только локально, но и по сети.

#devops #девопс

Подпишись 👉@i_DevOps
👍6🔥3
Жизненный цикл контейнеров в Docker Compose: использование хуков post_start, pre_stop

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

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

#devops #девопс

Подпишись 👉@i_DevOps
👍3
Будущее Kubernetes и DevOps: строим прогнозы на 10 лет

Мы спросили инженеров «Фланта» и экспертов из индустрии, как, по их мнению, будут развиваться Kubernetes, DevOps, Ops и Cloud Native-экосистема в ближайшее десятилетие. Наша задача была спрогнозировать будущее на основе тенденций в настоящем, а не просто «заглянуть в хрустальный шар» и пофантазировать. В результате родилась эта статья. Присоединяйтесь к нам в комментариях — давайте вместе подумаем, как будут выглядеть важные в нашей работе инструменты через 5–10 лет.

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

#devops #девопс

Подпишись 👉@i_DevOps
👍3
Для чего нужна команда 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 создается новый коммит с измененной историей, что важно помнить, если работа ведется в команде.


#devops #девопс

Подпишись 👉@i_DevOps
👍8
Архитектура кластеров Kubernetes - выбор размера рабочего узла

Стоит ли создавать кластер Kubernetes с меньшим количеством крупных узлов или с большим количеством мелких узлов? В этой статье мы рассмотрим все плюсы и минусы.

Когда вы создаете кластер Kubernetes, одним из первых вопросов, который у вас может возникнуть, является: "Какой тип рабочих узлов я должен использовать и сколько их нужно?".

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

Или если вы используете управляемый сервис Kubernetes, например Google Kubernetes Engine (GKE), следует ли вам использовать восемь экземпляров n1-standard-1 или два экземпляра n1-standard-4 для достижения желаемой вычислительной мощности?

https://learnk8s.io/kubernetes-node-size

#devops #девопс

Подпишись 👉@i_DevOps
👍6
Sudo без бинарного setuid или SSH через UNIX-сокет

В этом посте я подробно расскажу, как заменить sudo (программу с `setuid`), используя SSH через локальный UNIX-сокет.

Я считаю, что программы с setuid`/`setgid — это устаревшая часть наследия UNIX, которую следует исключить. В будущем посте я объясню причины безопасности, стоящие за этим утверждением.

Это связано с работой группы Confined Users SIG в Fedora.

https://tim.siosm.fr/blog/2023/12/19/ssh-over-unix-socket/


#devops #девопс

Подпишись 👉@i_DevOps
👍5
Деплой больших инфраструктур в Yandex Cloud: как минимизировать риски и ошибки

Привет, я Алексей Колосков, DevOps‑инженер Hilbert Team. Сегодня я расскажу вам историю о компании, которая из маленькой облачной инфраструктуры выросла до сложного решения с использованием Infrastructure as Code (IaC) и Terraform. И, как это часто бывает, в процессе роста учли не всё. Все персонажи вымышлены и любые совпадения случайны (ну, почти).

В этой статье покажу грабли, на которые можно наступить при росте облачной инфраструктуры, и расскажу, как их обойти.

https://habr.com/ru/companies/yandex_cloud_and_infra/articles/858704/

#devops #девопс

Подпишись 👉@i_DevOps
👍4
Media is too big
VIEW IN TELEGRAM
Правильный DevOps для Spring Boot и Java
Рустам Курамшин

В докладе рассматриваются следующие темы: оптимизация сборки образа приложения, изменение конфигурации приложения без релиза и выделение накатки миграции на БД в отдельную джобу. Все три темы раскрыты очень хорошо.

источник

#devops #девопс

Подпишись 👉@i_DevOps
👍3
Teller — универсальный open-source менеджер секретов для разработчиков

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

Вместо использования кастомных скриптов, токенов в файлах .zshrc, видимых команд EXPORT в истории bash, ошибочно размещенных файлов .env.production и других уязвимостей на рабочей станции, просто используйте Teller и подключите его к любому хранилищу секретов, ключевому хранилищу или облачному сервису, который вам нужен (Teller поддерживает HashiCorp Vault, AWS Secrets Manager, Google Secret Manager и многие другие).

Вы можете использовать Teller для упорядочения своего окружения или внедрения его как процесса и лучшей практики для вашей команды.

https://github.com/tellerops/teller

#devops #девопс

Подпишись 👉@i_DevOps
👍6🤔1
ScyllaDB на Kubernetes: как запускать Intense Workloads с использованием Spot-инстансов

В статье рассказывается, как запускать ScyllaDB — быструю NoSQL базу данных — на Kubernetes с использованием Spot-инстансов, чтобы справляться с интенсивными нагрузками и снижать затраты. Описаны преимущества архитектуры ScyllaDB, инструменты для управления кластерами (например, ScyllaDB Manager и Prometheus), а также возможности быстрого восстановления после отказов, что делает решение высокодоступным и экономически выгодным.

https://www.scylladb.com/2023/08/07/scylladb-on-kubernetes-how-to-run-intense-workloads-with-spot-instances/

#devops #девопс

Подпишись 👉@i_DevOps
👍2
DevOps — смерть это новая жизнь…

Есть мнение, что DevOps как индустрия — скорее мертва, чем жива. Нужны ли нам в таком случае мероприятия по интеграции процессов разработки, тестирования и эксплуатации? Мы решили задать самые наболевшие вопросы Диме Зайцеву, директору программного комитета DevOps Conf 2025.

Да, всё ещё у нас и на западном рынке, когда мы слышим слово DevOps, то думаем, что у сисадминов изменили имя, и они стали стоить дороже. Это распространённая идея. Но мы так не считаем. И эти люди никуда не уйдут. Очевидно, они всё ещё нужны. У нас всё ещё на них держится огромная инфраструктура. Над ней надо работать, её нужно развертывать.

https://habr.com/ru/companies/oleg-bunin/articles/859330/

#devops #девопс

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