DevOps
8.46K subscribers
1.46K 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
Media is too big
VIEW IN TELEGRAM
Sealos

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

https://github.com/labring/sealos

#devops #девопс

Подпишись 👉@i_DevOps
3🥴2👍1
Telepresence

Локальная разработка на удаленном кластере Kubernetes или OpenShift

https://github.com/telepresenceio/telepresence

#devops #девопс

Подпишись 👉@i_DevOps
👍4
This media is not supported in your browser
VIEW IN TELEGRAM
Burrito

Burrito - это TACoS (Terraform Automation Collaboration Software) Kubernetes Operator.

Зачем это нужно?
terraform - это замечательный инструмент для управления инфраструктурой в IaC. Но в нем нет готового решения для управления дрейфом состояния.

Кроме того, написание CI/CD-конвейера для Terraform может быть болезненным и зависит от используемого инструмента.

Наконец, в настоящее время не существует простого способа навигации по состоянию Terraform, чтобы действительно понять, каким изменениям оно подвергается при запуске terraform apply.

burrito призван решить эти проблемы путем:

Постоянного планирования кода Terraform и запуска приложений при необходимости
Предлагая интеграцию PR/MR из коробки, вам больше не придется писать CI/CD конвейеры для Terraform.
Отображение модификаций вашего состояния в простом веб-интерфейсе (пока не реализовано)

https://github.com/padok-team/burrito

#devops #девопс

Подпишись 👉@i_DevOps
👍1
Haskell Dockerfile Linter

Интеллектуальный распаковщик Dockerfile, помогающий создавать лучшие образы Docker. Линтер разбирает Docker-файл на AST и выполняет правила поверх AST. Он опирается на поддержку ShellCheck для проверки Bash-кода внутри инструкций RUN.

https://github.com/hadolint/hadolint

#devops #девопс

Подпишись 👉@i_DevOps
👍4
Media is too big
VIEW IN TELEGRAM
Вася, ты видишь девопса? А он есть

Привет! Меня зовут Василий Куценко, я возглавляю департамент DevOps в Почтатехе и считаю, что девопсов не существует…

То есть по всем канонам классической DevOps-культуры такой должности не должно быть. Все потому, что DevOps рождался как способ взаимодействия уже существующих ролей в командах разработки и поддержки, а не как отдельная специальность.

Но как же быть с тем, что компании постоянно ищут DevOps-инженеров, на хантинговых сайтах полно подобных вакансий, а сама должность престижна и хорошо оплачивается? Кто же эти «фантастические девопсы» и что нужно, чтобы быть «труъ», разбираемся в статье.

P. S. Текст написан на основе доклада, с которым я выступал на DevOops-митапе в мае 2023.

https://habr.com/ru/companies/posttech/articles/783530/

#devops #девопс

Подпишись 👉@i_DevOps
2👍2
Kubernetes - K8S Architecture

#devops #девопс

Подпишись 👉@i_DevOps
👍5
Git. GitLab

01-GitLab. Devops система. Установка в локальной сети. Настройка.
Git и GitHub для начинающих.
02-GitLab clone по SSH. Настройка SSH для Linux и Windows.
03- DevOps практика: GitlLab CI+Runners. Создание CI CD Pipeline.
04 GitLab: Свой Docker Registry. Создание и подключение.

источник

#devops #девопс

Подпишись 👉@i_DevOps
👍123🤡2
Квоты в Kubernetes: очевидные, менее очевидные и совсем не очевидные

Привет, я Виктор, техлид продукта CI/CD в Samokat.tech. А это, :(){ :|:& };: fork-бомба, которая создаёт свои дочерние процессы бесконечно. Запуск такой штуки в контейнере без ограничений роняет всю ноду. Не используйте в проде! Если запустить в WSL, то винду тоже укладывает. Как же избежать запуска такой штуки на проде? Помогут квоты.

Давайте разберемся как работают квоты в Kubernetes. Там есть немало граблей. В этой статье поделюсь своим опытом по работе с квотами – расскажу, чем квоты хороши, что у них под капотом, в каких задачах используются и почему нужны даже в среде single-tenant.

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

#devops #девопс

Подпишись 👉@i_DevOps
👍4
Запуск проекта в Kubernetes за 60 минут: инструменты, GitLab, Terraform

Привет, меня зовут Илья Нырков, я архитектор в VK Cloud. В своей работе встречаюсь с желанием партнеров (это и крупный энтерпрайз, и различные стартапы) использовать Kubernetes, но их останавливает сложность поднятия, конфигурирования кластера, деплоя в нём приложений и построения CI/CD-процессов вокруг него. Я постараюсь показать на практическом примере, который вы можете повторить сами, как развернуть за сравнительно небольшое время полноценный CI/CD с рабочим приложением, доступным для внешних пользователей.

https://habr.com/ru/companies/vk/articles/782310/

#devops #девопс

Подпишись 👉@i_DevOps
🔥5👍1
10 самых распространенных проблем при линтинге Dockerfile'ов

Весной 2023 года разработчики Depot сообщили о том, что теперь с помощью их сервиса можно проверять Dockerfile при каждой сборке. Depot — это сервис удаленной сборки контейнеров, который может создавать образы Docker до 20 раз быстрее, чем сборка образов Docker внутри обычных CI-провайдеров. Это молодая компания, которая образовалась в начале 2022 года, но уже сейчас она состоит в венчурном фонде Y Combinator и привлекла 1,8 млн долларов инвестиций.

После добавления возможности проверять Dockerfiles в Depot разработчики сервиса столкнулись со множеством сложностей. В итоге они выделили 10 наиболее распространенных проблем при линтинге Dockerfile'ов и описали их в статье, которую мы перевели для вас.

В статье разработчики Depot разбирают каждую проблему, объясняют, почему она возникает и как ее решить. Авторы отмечают, что со временем список может измениться, но даже в таком виде он послужит хорошей отправной точкой для оптимизации Dockerfile'ов.

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

#devops #девопс

Подпишись 👉@i_DevOps
👍3
Мониторинг затрат на Kubernetes в разных командах с помощью Kubecost

В этой статье вы узнаете, как с помощью Kubecost отслеживать в реальном времени стоимость кластера Kubernetes, разделенного между несколькими командами. Мы не будем останавливаться на облачных аспектах этого инструмента, таких как оптимизация затрат. Наша главная цель - подсчитать расходы, разделяемые между несколькими командами, использующими один и тот же кластер Kubernetes. Иногда это может быть очень важным аспектом работы с Kubernetes - даже в локальной среде. Если вы хотите запустить несколько приложений в своей организации в рамках проекта, вам, вероятно, нужно гарантировать внутренний бюджет на это. Поэтому инструменты, позволяющие учитывать использование ресурсов как расходы, могут оказаться очень полезными в таком сценарии. Kubecost кажется самым популярным инструментом в этой области.

https://piotrminkowski.com/2023/08/25/monitor-kubernetes-cost-across-teams-with-kubecost/

#devops #девопс

Подпишись 👉@i_DevOps
👍1
Terraform-generator

Используйте Node.js для генерации конфигураций Terraform.

Для использования этого модуля вам не нужно устанавливать Terraform.

Конечным результатом использования этого модуля являются конфигурации Terraform в виде обычного текста, вам нужно будет записать текст в файл (terraform-generator предоставляет функцию утилиты для записи файла за вас) и выполнить его самостоятельно.

В настоящее время поддерживается генерация конфигураций для Terraform версии >= 0.12.

https://github.com/ahzhezhe/terraform-generator

#devops #девопс

Подпишись 👉@i_DevOps
👍2😁1
Обнаружение трафика Kubernetes

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

https://otterize.com/blog/kubernetes-traffic-discovery

#devops #девопс

Подпишись 👉@i_DevOps
👍5
Почему Ceph не собирается в кластер: как несвязанные коммиты привели к неожиданным проблемам

Всем привет! На связи Вадим Лазовский, SRE-инженер продукта Deckhouse Observability Platform от компании «Флант», и Владимир Гурьянов, solution architect. Сегодня мы поделимся кейсом, который произошёл у нас при работе с Ceph. При этом его решение может быть применимо для любого другого ПО.

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

Так однажды произошло и в процессе установки нашего продукта. Мы столкнулись с тем, что привычные действия приводят к совершенно непривычному результату. В этой статье мы разберём проблему с закрытием файловых дескрипторов при выполнении команды на создание пула в Ceph. Расскажем, как её обнаружили, что делали, чтобы определить причину её возникновения, и самое важное — почему это произошло и как решить проблему. Получился настоящий детектив.

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

#devops #девопс

Подпишись 👉@i_DevOps
👍3😎1
Глубокое погружение в сетевые технологии Kubernetes

На вебинаре описывается сетевая модель Kubernetes (узлы, поды, сервисы), ее преобразование в сетевые конструкции Linux, интеграция с физической сетью и оркестровка виртуальных сетевых устройств, таких как маршрутизаторы, балансировщики нагрузки и NAT-шлюзы.

https://my.ipspace.net/bin/list?id=Kubernetes#INTRO

#devops #девопс

Подпишись 👉@i_DevOps
👍4
Наделяем Ansible состоянием, делая похожим на Terraform

Все, кто работал с Ansible, знают, что он не хранит состояние результата своей работы. Это нелепое поведение Ansible, нельзя взять и просто удалить из git объекты конфигурации, чтобы они исчезли с управляемых систем, фу. При этом сразу вспоминается его величество Terraform с tfstate.

https://habr.com/ru/companies/rtlabs/articles/791492/

#devops #девопс

Подпишись 👉@i_DevOps
👍3
Как я уменьшил размер образа docker на 40%

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

Да‑да, знаю. НАДО ПЕРЕПИСАТЬ ЕГО НА GO/RUST/ЕЩЁ КАКОМ‑ТО ВОЛШЕБНОМ ЯЗЫКЕ. Сейчас скрипт состоит из пятисот с лишним строк Bash, поэтому я перепишу его на другом языке только под страхом смертной казни. Кроме того, в ugit уже есть практически все функции (осталось реализовать отмену лишь небольшого количества команд, используемых не так часто).

В этой статье я расскажу о том, как написал официальный Dockerfile для ugit (шелл‑скрипта) и снизил размер образа почти на 40% (с 31,4 МБ до 17,6 МБ), выполняя пошаговые попытки по инструкции. Надеюсь, это замотивирует других любителей шелла тоже публиковать свои скрипты в виде образов docker!

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

#devops #девопс

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