Docker для начинающих: простое развертывание приложения за несколько шагов
Всем привет! Для своей первой статьи я решил выбрать проблему, с которой сам столкнулся при изучении Java и попытке упаковки приложения в докер-контейнер. К сожалению не нашел ни одной исчерпывающей статьи, как это делать, поэтому решил написать свою.
Начну, пожалуй, с самого сервиса. Я написал достаточно простое веб-приложение на стеке - Java, Spring, Maven, REST, HTTP, Hibernate, Postgresql, JSP/JSTL. Пока приложение представлено достаточно в сыром виде, но для понимания, как оно упаковывается в контейнер, вполне подойдет. Если вкратце, то это сервис для голосования за лучший ресторан, где можно зарегистрироваться, добавить ресторан, его описание, оставить отзыв и проставить рейтинг. Также, в зависимости от роли, можно посмотреть информацию о пользователях и редактировать ее.
https://habr.com/ru/articles/888540/
#devops #девопс
Подпишись 👉@i_DevOps
Всем привет! Для своей первой статьи я решил выбрать проблему, с которой сам столкнулся при изучении Java и попытке упаковки приложения в докер-контейнер. К сожалению не нашел ни одной исчерпывающей статьи, как это делать, поэтому решил написать свою.
Начну, пожалуй, с самого сервиса. Я написал достаточно простое веб-приложение на стеке - Java, Spring, Maven, REST, HTTP, Hibernate, Postgresql, JSP/JSTL. Пока приложение представлено достаточно в сыром виде, но для понимания, как оно упаковывается в контейнер, вполне подойдет. Если вкратце, то это сервис для голосования за лучший ресторан, где можно зарегистрироваться, добавить ресторан, его описание, оставить отзыв и проставить рейтинг. Также, в зависимости от роли, можно посмотреть информацию о пользователях и редактировать ее.
https://habr.com/ru/articles/888540/
#devops #девопс
Подпишись 👉@i_DevOps
👍6
DevOps, как сам? Как строили мост между разработкой и эксплуатацией
Меня зовут Георг Гаал, я член ПК DevOpsConf. Я энтузиаст информационных технологий со школьной скамьи. Меня эта тема очень зажгла, когда я в первый раз сел за компьютер и осознал, что вообще не понимаю, как он функционирует. Сегодня я попытаюсь на примерах из своего опыта рассказать про эволюцию DevOps, актуальных трендах и о том, как оставаться востребованным в профессии.
https://habr.com/ru/companies/oleg-bunin/articles/891422/
#devops #девопс
Подпишись 👉@i_DevOps
Меня зовут Георг Гаал, я член ПК DevOpsConf. Я энтузиаст информационных технологий со школьной скамьи. Меня эта тема очень зажгла, когда я в первый раз сел за компьютер и осознал, что вообще не понимаю, как он функционирует. Сегодня я попытаюсь на примерах из своего опыта рассказать про эволюцию DevOps, актуальных трендах и о том, как оставаться востребованным в профессии.
https://habr.com/ru/companies/oleg-bunin/articles/891422/
#devops #девопс
Подпишись 👉@i_DevOps
👍3
Это руководство по развертыванию Kubernetes в среде Proxmox VE с использованием Smallab.
В репозитории рассмотрены шаги по настройке инфраструктуры, включая установку необходимых компонентов, конфигурацию сети и управление кластерами.
https://github.com/ehlesp/smallab-k8s-pve-guide
#devops #девопс
Подпишись 👉@i_DevOps
В репозитории рассмотрены шаги по настройке инфраструктуры, включая установку необходимых компонентов, конфигурацию сети и управление кластерами.
https://github.com/ehlesp/smallab-k8s-pve-guide
#devops #девопс
Подпишись 👉@i_DevOps
👍1
Media is too big
VIEW IN TELEGRAM
Watchtower: лучший способ автоматически обновлять Docker контейнеры
В этом видео мы рассмотрим, как использовать Docker Watchtower для автоматического обновления контейнеров Docker. Watchtower - это удобный инструмент, который может существенно упростить процесс обновления контейнеров Docker. Мы покажем, как настроить Watchtower для автоматического обновления ваших контейнеров и расскажем о преимуществах этого подхода.
источник
#devops #девопс
Подпишись 👉@i_DevOps
В этом видео мы рассмотрим, как использовать Docker Watchtower для автоматического обновления контейнеров Docker. Watchtower - это удобный инструмент, который может существенно упростить процесс обновления контейнеров Docker. Мы покажем, как настроить Watchtower для автоматического обновления ваших контейнеров и расскажем о преимуществах этого подхода.
источник
#devops #девопс
Подпишись 👉@i_DevOps
👍2❤1
Как добавить системности в мониторинг продакшна: параметры и тулинг для инцидент-менеджмента
Давайте обсудим, как добавить системности в мониторинг проблем на продакшене — поговорим об инцидент‑менеджменте.
На проде что‑то сломалось — такова суровая реальность, случается с лучшими из нас, увы. Что обычно происходит в подобных случаях? Ловим алерты, бежим смотреть графики и логи, вызваниваем из отпуска разработчика, который занимался этой функциональностью, выкатываем фикс,рвем на себе бороду, проводим пост‑мортем. Это реакция на уровне здравого смысла, классика.
Но когда речь заходит о недозаработанных из‑за инцидента деньгах, расстроенных пользователях — любое улучшение, даже небольшое, на доли процента — может принести ощутимый результат.
Давайте поговорим, как подойти к вопросу мониторинга методологически — задействовать инструментарий инцидент‑менеджмента. Обсудим, как оценивать критичность сервисов и какие системы могут быть полезны для отслеживания проблем.
Статья ориентирована в первую очередь на тех, кто прямо сейчас занимается мониторингом на уровне общей инженерной грамотности, но пока не использует в явном виде инцидент‑менеджмент как подход.
https://habr.com/ru/companies/sravni/articles/802705/
#devops #девопс
Подпишись 👉@i_DevOps
Давайте обсудим, как добавить системности в мониторинг проблем на продакшене — поговорим об инцидент‑менеджменте.
На проде что‑то сломалось — такова суровая реальность, случается с лучшими из нас, увы. Что обычно происходит в подобных случаях? Ловим алерты, бежим смотреть графики и логи, вызваниваем из отпуска разработчика, который занимался этой функциональностью, выкатываем фикс,
Но когда речь заходит о недозаработанных из‑за инцидента деньгах, расстроенных пользователях — любое улучшение, даже небольшое, на доли процента — может принести ощутимый результат.
Давайте поговорим, как подойти к вопросу мониторинга методологически — задействовать инструментарий инцидент‑менеджмента. Обсудим, как оценивать критичность сервисов и какие системы могут быть полезны для отслеживания проблем.
Статья ориентирована в первую очередь на тех, кто прямо сейчас занимается мониторингом на уровне общей инженерной грамотности, но пока не использует в явном виде инцидент‑менеджмент как подход.
https://habr.com/ru/companies/sravni/articles/802705/
#devops #девопс
Подпишись 👉@i_DevOps
🔥2👍1
SnapScheduler — это контроллер Kubernetes, который автоматически создает снапшоты PVC (PersistentVolumeClaim) по расписанию, используя встроенный механизм
Основные возможности:
- Создание снапшотов PVC по расписанию (cron).
- Поддержка нескольких расписаний для одного PVC.
- Возможность настройки политики хранения (retention policy).
- Не требует изменений в приложении или манифестах PVC.
Как это работает:
Вы создаете ресурс
- Селектор PVC.
- Cron-расписание.
- Максимальное количество снапшотов для хранения.
Контроллер следит за расписанием и создает
Пример использования:
Такой манифест будет создавать снапшоты каждые 6 часов для всех PVC с лейблом
https://github.com/backube/snapscheduler
#devops #девопс
Подпишись 👉@i_DevOps
VolumeSnapshot. Он не зависит от CSI-драйвера, пока тот поддерживает VolumeSnapshot, и работает с любым сторедж-классом, поддерживающим снапшоты.Основные возможности:
- Создание снапшотов PVC по расписанию (cron).
- Поддержка нескольких расписаний для одного PVC.
- Возможность настройки политики хранения (retention policy).
- Не требует изменений в приложении или манифестах PVC.
Как это работает:
Вы создаете ресурс
SnapshotSchedule, в котором указываете:- Селектор PVC.
- Cron-расписание.
- Максимальное количество снапшотов для хранения.
Контроллер следит за расписанием и создает
VolumeSnapshot объекты автоматически.Пример использования:
apiVersion: snapscheduler.backube/v1
kind: SnapshotSchedule
metadata:
name: example-schedule
spec:
schedule: "0 */6 * * *"
snapshotTemplate:
labels:
createdBy: snapscheduler
pvcSelector:
matchLabels:
snapshot: "true"
retention:
maxCount: 5
Такой манифест будет создавать снапшоты каждые 6 часов для всех PVC с лейблом
snapshot=true, и хранить максимум 5 последних.https://github.com/backube/snapscheduler
#devops #девопс
Подпишись 👉@i_DevOps
👍6
Обзор k8sgpt: как искусственный интеллект помогает обучать DevOps-инженеров
Всем привет! На связи Евгений Торин, DevOps-инженер компании «Флант». Я давно хотел попробовать в деле искусственный интеллект и даже в качестве эксперимента генерировал картинки для своих презентаций. Но полноценно погрузиться в эту область удалось, лишь когда появилась практическая необходимость.
https://habr.com/ru/companies/flant/articles/845874/
#devops #девопс
Подпишись 👉@i_DevOps
Всем привет! На связи Евгений Торин, DevOps-инженер компании «Флант». Я давно хотел попробовать в деле искусственный интеллект и даже в качестве эксперимента генерировал картинки для своих презентаций. Но полноценно погрузиться в эту область удалось, лишь когда появилась практическая необходимость.
https://habr.com/ru/companies/flant/articles/845874/
#devops #девопс
Подпишись 👉@i_DevOps
👍5❤1
Средства оркестрации и случаи их использования
Оркестрация позволяет управлять работой контейнеров, запущенных в больших и динамических окружениях. С ее помощью можно автоматизировать и управлять следующими задачами:
✍🏻 Создание и развертывание контейнеров;
✍🏻 Балансировка нагрузки;
✍🏻 Разделение ресурсов между контейнерами;
✍🏻 Мониторинг контейнеров и серверов;
✍🏻 Масштабирование контейнеров;
✍🏻 Перенос контейнеров с одного сервера на другой, если на первом возникает недостаток ресурсов.
#devops #девопс
Подпишись 👉@i_DevOps
Оркестрация позволяет управлять работой контейнеров, запущенных в больших и динамических окружениях. С ее помощью можно автоматизировать и управлять следующими задачами:
✍🏻 Создание и развертывание контейнеров;
✍🏻 Балансировка нагрузки;
✍🏻 Разделение ресурсов между контейнерами;
✍🏻 Мониторинг контейнеров и серверов;
✍🏻 Масштабирование контейнеров;
✍🏻 Перенос контейнеров с одного сервера на другой, если на первом возникает недостаток ресурсов.
#devops #девопс
Подпишись 👉@i_DevOps
👍1
Эволюция Terraform: Как мы безопасно отделили дюжину сервисов от монолита
Если вы используете terraform для управления облачной инфраструктурой, то по мере роста проекта вы могли столкнуться с некоторыми проблемами. Возможно, код terraform становится слишком сложным и запутанным. Возможно, развертывание занимает слишком много времени и приводит к ошибкам. Возможно, ваша команда боится вносить изменения, потому что не знает, что может сломаться.
https://medium.com/@susovan87/lesson-learned-after-decoupling-a-dozen-of-services-from-terraform-monolith-safely-with-no-downtime-404e503f6cb6
#devops #девопс
Подпишись 👉@i_DevOps
Если вы используете terraform для управления облачной инфраструктурой, то по мере роста проекта вы могли столкнуться с некоторыми проблемами. Возможно, код terraform становится слишком сложным и запутанным. Возможно, развертывание занимает слишком много времени и приводит к ошибкам. Возможно, ваша команда боится вносить изменения, потому что не знает, что может сломаться.
https://medium.com/@susovan87/lesson-learned-after-decoupling-a-dozen-of-services-from-terraform-monolith-safely-with-no-downtime-404e503f6cb6
#devops #девопс
Подпишись 👉@i_DevOps
👍4
🎯 NVIDIA k8s-device-plugin
Этот репозиторий содержит NVIDIA Device Plugin для Kubernetes. Он позволяет автоматически обнаруживать и предоставлять GPU-ресурсы NVIDIA в кластере Kubernetes.
📌 Поддерживаемые функции:
- Автоматическое обнаружение GPU
- Выделение GPU для контейнеров
- Поддержка Multi-Instance GPU (MIG)
- Интеграция с
- Гибкая настройка через параметры и конфигурации
Установка плагина осуществляется через манифесты, доступные в папке
Полезен, если вы работаете с ML/AI-ворклоудами в Kubernetes и хотите использовать ресурсы GPU эффективно и прозрачно.
https://github.com/NVIDIA/k8s-device-plugin
#devops #девопс
Подпишись 👉@i_DevOps
Этот репозиторий содержит NVIDIA Device Plugin для Kubernetes. Он позволяет автоматически обнаруживать и предоставлять GPU-ресурсы NVIDIA в кластере Kubernetes.
📌 Поддерживаемые функции:
- Автоматическое обнаружение GPU
- Выделение GPU для контейнеров
- Поддержка Multi-Instance GPU (MIG)
- Интеграция с
nvidia-container-toolkit- Гибкая настройка через параметры и конфигурации
Установка плагина осуществляется через манифесты, доступные в папке
deployments/. Проект активно развивается и поддерживается NVIDIA.Полезен, если вы работаете с ML/AI-ворклоудами в Kubernetes и хотите использовать ресурсы GPU эффективно и прозрачно.
https://github.com/NVIDIA/k8s-device-plugin
#devops #девопс
Подпишись 👉@i_DevOps
👍2❤1
Здесь на простых картинках и понятном языке обучают работе с этой ОС, делятся полезными фишками и инструментами
Подписывайтесь: @linuxos_tg
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥2🤮2🤡2❤1🤯1💩1
База про жизненный цикл разработки ПО (SDLC): этапы, виды моделей и их различия
Software Development Life Cycle (SDLC) — это фундамент, на котором строится разработка. Он помогает выстроить процессы так, чтобы команда четко понимала, что и когда ей нужно делать, а заказчик знал, на каком этапе находится работа.
И если с этапами работы чаще все понятно, то с жизненными моделями SDLC возникает путаница. В некоторых статьях могут писать, что какие-то из моделей устарели и нежизнеспособны, или просто неверно называть их принципы. Поэтому мы решили собрать основную информацию про SDLC в одном тексте.
А еще пообщались с командой AGIMA — интегратором, который более 15 лет создает веб-решения и мобильные приложения для клиентов. Компания показала, как выстроила процесс разработки и как она управляет командой.
https://habr.com/ru/companies/kaiten/articles/893866/
#devops #девопс
Подпишись 👉@i_DevOps
Software Development Life Cycle (SDLC) — это фундамент, на котором строится разработка. Он помогает выстроить процессы так, чтобы команда четко понимала, что и когда ей нужно делать, а заказчик знал, на каком этапе находится работа.
И если с этапами работы чаще все понятно, то с жизненными моделями SDLC возникает путаница. В некоторых статьях могут писать, что какие-то из моделей устарели и нежизнеспособны, или просто неверно называть их принципы. Поэтому мы решили собрать основную информацию про SDLC в одном тексте.
А еще пообщались с командой AGIMA — интегратором, который более 15 лет создает веб-решения и мобильные приложения для клиентов. Компания показала, как выстроила процесс разработки и как она управляет командой.
https://habr.com/ru/companies/kaiten/articles/893866/
#devops #девопс
Подпишись 👉@i_DevOps
👍3
Мониторинг инфраструктуры: как избежать простых и неправильных решений
Мониторинг – это не только сбор информации о состоянии, а помощник для всех. И именно поэтому он такой разный. Ведь чтобы помочь пользователям, разработчикам, провайдерам, мониторингу приходится решать очень разные задачи на разных уровнях. Например, пользователям важно, чтобы сервис был доступен именно в тот момент, когда он им потребуется. Провайдеру – чтобы ресурсы работали максимально эффективно.
На первый взгляд кажется, что главное для мониторинга – это выбрать ключевые метрики, учесть особенности инфраструктуры и настроить сбор данных, триггеры и алерты. Несомненно, это очень важно для инструмента наблюдения. Но всё же главное в мониторинге — сделать его источником информации для развития и оптимизации.
https://habr.com/ru/articles/893142/
#devops #девопс
Подпишись 👉@i_DevOps
Мониторинг – это не только сбор информации о состоянии, а помощник для всех. И именно поэтому он такой разный. Ведь чтобы помочь пользователям, разработчикам, провайдерам, мониторингу приходится решать очень разные задачи на разных уровнях. Например, пользователям важно, чтобы сервис был доступен именно в тот момент, когда он им потребуется. Провайдеру – чтобы ресурсы работали максимально эффективно.
На первый взгляд кажется, что главное для мониторинга – это выбрать ключевые метрики, учесть особенности инфраструктуры и настроить сбор данных, триггеры и алерты. Несомненно, это очень важно для инструмента наблюдения. Но всё же главное в мониторинге — сделать его источником информации для развития и оптимизации.
https://habr.com/ru/articles/893142/
#devops #девопс
Подпишись 👉@i_DevOps
👍3
Какую функцию выполняет ReplicaSet?
Функция ReplicaSet (RS) в Kubernetes заключается в обеспечении стабильного количества экземпляров подов в кластере. RS является основным компонентом Kubernetes, который используется для развертывания Stateless-приложений. Он обеспечивает непрерывную доступность приложения, автоматически запуская новые экземпляры подов в случае их выхода из строя. Без использования RS такие поды пришлось бы запускать вручную, что затруднило бы поддержание доступности приложения для пользователей.
Что такое пространство имен (namespaces)? Почему не стоит использовать одно namespace для всех приложений?
Пространства имен позволяют разделить кластер на виртуальные группы, внутри которых можно объединять приложения по нужному принципу. Таким образом, создается возможность изолировать различные группы приложений друг от друга. Например, благодаря этой функции можно создать приложение с одинаковым именем в двух разных пространствах.
Если использовать только одно пространство имен, которое было задано по умолчанию при запуске кластера, со временем может стать сложно ориентироваться во всех приложениях, запущенных в нем. Группировка приложений в разных пространствах имен упрощает работу: например, можно разместить приложение мониторинга в одном пространстве, а приложения, связанные с информационной безопасностью, в другом.
Еще один случай, когда несколько пространств имен могут пригодиться, — это ситуация, когда несколько команд работают с одним кластером.
#devops #девопс
Подпишись 👉@i_DevOps
Функция ReplicaSet (RS) в Kubernetes заключается в обеспечении стабильного количества экземпляров подов в кластере. RS является основным компонентом Kubernetes, который используется для развертывания Stateless-приложений. Он обеспечивает непрерывную доступность приложения, автоматически запуская новые экземпляры подов в случае их выхода из строя. Без использования RS такие поды пришлось бы запускать вручную, что затруднило бы поддержание доступности приложения для пользователей.
Что такое пространство имен (namespaces)? Почему не стоит использовать одно namespace для всех приложений?
Пространства имен позволяют разделить кластер на виртуальные группы, внутри которых можно объединять приложения по нужному принципу. Таким образом, создается возможность изолировать различные группы приложений друг от друга. Например, благодаря этой функции можно создать приложение с одинаковым именем в двух разных пространствах.
Если использовать только одно пространство имен, которое было задано по умолчанию при запуске кластера, со временем может стать сложно ориентироваться во всех приложениях, запущенных в нем. Группировка приложений в разных пространствах имен упрощает работу: например, можно разместить приложение мониторинга в одном пространстве, а приложения, связанные с информационной безопасностью, в другом.
Еще один случай, когда несколько пространств имен могут пригодиться, — это ситуация, когда несколько команд работают с одним кластером.
#devops #девопс
Подпишись 👉@i_DevOps
👍6
🧑🏻💻Хотите войти в IT, но не знаете, с чего начать? Python — ваш пропуск в мир разработки! Это язык, на котором пишут чат-ботов, создают веб-приложения и анализируют данные в крупных проектах.
На обучении «Python Developer. Basic» вы освоите синтаксис языка, научитесь работать с Django и FastAPI, писать парсеры и подключать базы данных. Программа составлена опытными практиками и соответствует актуальным требованиям рынка.
После курса вы сможете претендовать на позицию junior Python-разработчика, расширите стек знаний и создадите проекты для портфолио. А еще изучите DevOps-инструменты, которые ценятся в ведущих компаниях.
⏳Время на исходе — пройдите вступительное тестирование прямо сейчас и получите скидку на обучение: https://vk.cc/cKaIDs
На обучении «Python Developer. Basic» вы освоите синтаксис языка, научитесь работать с Django и FastAPI, писать парсеры и подключать базы данных. Программа составлена опытными практиками и соответствует актуальным требованиям рынка.
После курса вы сможете претендовать на позицию junior Python-разработчика, расширите стек знаний и создадите проекты для портфолио. А еще изучите DevOps-инструменты, которые ценятся в ведущих компаниях.
⏳Время на исходе — пройдите вступительное тестирование прямо сейчас и получите скидку на обучение: https://vk.cc/cKaIDs
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576