DevOps – Telegram
DevOps
8.47K subscribers
1.46K photos
812 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
Лучшие практики безопасности Terraform

Terraform — это фактически основной инструмент, если вы работаете с инфраструктурой как кодом (IaC). Независимо от поставщика ресурсов, он позволяет вашей организации работать со всеми ими одновременно. Неоспоримым аспектом является безопасность Terraform, поскольку любая ошибка в конфигурации может повлиять на всю инфраструктуру.

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

- Аудит конфигураций Terraform на наличие уязвимостей безопасности и внедрение средств контроля безопасности.
- Управление учетными данными доступа в безопасности Terraform.
- Лучшие практики безопасности при использовании модулей Terraform.
- Самостоятельное создание модулей Terraform.

Давайте начнем!

https://sysdig.com/blog/terraform-security-best-practices/

#devops #девопс

Подпишись 👉@i_DevOps
👍3
📌Kubernetes Roadmap

https://roadmap.sh/kubernetes


📌DevOps Roadmap

https://roadmap.sh/devops


📌Docker Roadmap

https://roadmap.sh/docker


#devops #девопс

Подпишись 👉@i_DevOps
👍4
Как я уменьшил размер образа 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🔥31
📌Что такое egress?

Возможность установить внешний IP-адрес для исходящего трафика приложений за пределы кластера k8s может быть реализована через поддержку egress на уровне CNI-плагина. Эта функциональность может быть описана специальным объектом в неймспейсе.


📌Что вы можете рассказать об архитектуре Horizon?

API обратно совместим. Существует три типа панелей мониторинга: пользовательские, системные и настройки. Он обеспечивает базовую поддержку всех основных проектов OpenStack, таких как Neutron, Nova и т. д. (из коробки, нет необходимости устанавливать дополнительные пакеты или плагины). Любой может расширить информационные панели и добавить новые компоненты. Horizon предоставляет шаблоны и основные классы, на основе которых можно создать собственную панель мониторинга.

📌Если вы остановите контейнер — потеряете данные?

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

#devops #девопс

Подпишись 👉@i_DevOps
👍3
Анализ исходного кода — всестороннее понимание Kubelet

Эта статья в основном посвящена анализу исходного кода функций kubelet, ключевых компонентов и процесса его загрузки, подводя итоги принципа работы kubelet.

https://addozhang.medium.com/source-code-analysis-a-comprehensive-understanding-of-kubelet-7a9083514ff0

#devops #девопс

Подпишись 👉@i_DevOps
👍5
lnav — супернедооценённый инструмент для работы с логами

В мире разработки, системного администрирования и DevOps не смотря на то, что давно существуют и заняли свою нишу инструменты, связанные с централизованным сбором, визуализацией и анализом логов (graylog, ELK/EFK, loki, loggly и другие), всё ещё существует необходимость периодически взять шашку в руки и поработать со старыми/добрыми (а может быть и не очень добрыми) текстовыми логами. За 21 год своей деятельности я успел побыть системным администратором, DevOps инженером, разработчиком, CTO и системным аналитиком, но необходимость периодической работы с логами неизменно присутствовала в том или ином виде всегда. Это может быть разбор вывода нового сервиса или контейнера на машине разработчика, что-то, что ещё не успели завести (или сознательно по каким-либо причинам не завели) на централизованную систему сбора логов или, например, сервис, временно включенный в режиме debug для поиска причин проблемы. Ситуаций бывает много и ситуации бывают разные, а текстовые логи были, есть и ещё долго будут с нами.

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

#devops #девопс

Подпишись 👉@i_DevOps
👍4🔥2
📌Что такое userspace, kernelspace? Чем они отличаются?

Под пользовательским пространством понимается весь код операционной системы, который находится вне ядра.

Большинство Unix-подобных операционных систем (включая Linux) поставляются с разнообразными предустановленными утилитами, средствами разработки и графическими инструментами — это все приложения пространства пользователя.

Все пользовательские приложения (и контейнеризированные, и нет) при работе используют различные данные, но где эти данные хранятся?

Ядро обеспечивает абстракцию для безопасности, оборудования и внутренних структур данных. Например, системный вызов open() используется для получения дескриптора файла в Python, C, Ruby и других языках программирования. Вряд ли бы вы хотели, чтобы ваша программа работала с XFS на уровне битов, поэтому ядро предоставляет системные вызовы и работает с драйверами. Фактически этот системный вызов настолько распространен, что является частью библиотеки POSIX .

Краткое определение:

👉 Пользовательское пространство представляющее собой набор местоположений, в которых выполняются обычные пользовательские процессы (т. е. все, кроме ядра). Роль ядра состоит в том, чтобы управлять приложениями, работающими в этом пространстве, от взаимодействия друг с другом и с машиной.
👉 Пространство ядра , то есть место, где хранится и выполняется код ядра.
Пользовательское пространство имеет доступ к ограниченной памяти, ядро имеет всю память.

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


📌В чем разница между docker stop и docker pause?

В том, что они посылают разные сигналы.
docker pause — SIGSTOP(19), что приостанавливает процессы в контейнере.
docker stop — sigterm и sigkill использует к главному процессу контейнера.

📌В чем разница между SQL и NoSQL?

Основное отличие состоит в том, что базы данных SQL структурированы (данные хранятся в виде таблиц со строками и столбцами — как таблица электронной таблицы Excel), тогда как базы данных NoSQL неструктурированы, и хранение данных может варьироваться в зависимости от того, как настроена база данных NoSQL. Например, пары ключ-значение, документо-ориентированная и т. д.


#devops #девопс

Подпишись 👉@i_DevOps
👍6
Media is too big
VIEW IN TELEGRAM
Terraform - Альтернативный Провайдер AWS под названием AWSCC

источник

#devops #девопс

Подпишись 👉@i_DevOps
👍4😁1
📌Что такое диспетчер контроллеров Kubernetes?

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


📌Что такое VLAN?

VLAN (виртуальная локальная сеть) — это логическая сеть, которая группирует набор устройств в физической сети независимо от их физического местоположения. Сети VLAN создаются путем настройки сетевых коммутаторов для назначения определенного идентификатора VLAN кадрам, отправляемым устройствами, подключенными к определенному порту или группе портов коммутатора.

📌Знаете ли вы, что такое мониторинг ресурсов контейнера?

Мониторинг ресурсов контейнера — это процесс постоянного сбора метрик. Кроме того, он отслеживает состояние контейнерных приложений, чтобы улучшить их работоспособность и производительность, а также обеспечить бесперебойную работу. Мониторинг ресурсов контейнеров стал популярным, поскольку обеспечивает надежные возможности отслеживания потенциальных сбоев.


📌Что такое автоматизация? Чем это связано или отличается от оркестровки?

Автоматизация — это процесс автоматизации задач, позволяющий уменьшить вмешательство человека или взаимодействие с ИТ-технологиями и системами.
В то время как автоматизация фокусируется на уровне задач, оркестровка — это процесс автоматизации процессов и/или рабочих процессов, который состоит из множества задач, обычно выполняемых в нескольких системах.


#devops #девопс

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

Системное администрирование 📌

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
Автоматическая генерация CI/CD пайплайна для развёртывания инфраструктуры

Подход «Инфраструктура как код» означает, что инфраструктура создаётся, развёртывается и управляется при помощи кода. Это позволяет автоматизировать процессы, делать их более гибкими и масштабируемыми. Код для инфраструктуры фиксирует конфигурацию, обеспечивает воспроизводимость и упрощает управление настройками. Также благодаря этому подходу возрастает эффективность работы команды, поскольку он позволяет вести совместное развитие инфраструктуры и обеспечивает удобство отслеживания изменений.

Именно этот подход мы используем при нашей работе. Однако в процессе его использования мы столкнулись с проблемой написания пайплайнов для инфраструктуры.

Мы были вынуждены сделать процесс выкатки инфраструктуры максимально точечным из-за использования terragrunt. Каждый его модуль должен выкатываться отдельно, иначе будут получены десятки планов, и понять, что делает каждый из них, будет невозможно. Это означает, что каждому модулю terragrunt нужна отдельная джоба в пайплайне на plan и apply, но для каждого модуля они во многом повторяют друг друга. Подобное постоянное написание одинаковых частей CI/CD пайплайна при добавлении новых баз и бакетов навевало тоску.

Меня зовут Татьяна Мигулаева, я DevOps-инженер в «Магните». Поделюсь тем, как мы создали генератор джоб в GitLab CI/CD и навсегда забыли о ручном написании пайплайнов для развёртывания элементов инфраструктуры.

https://habr.com/ru/companies/magnit/articles/776214/

#devops #девопс

Подпишись 👉@i_DevOps
👍8
Введение в Istio для Kubernetes: основы и начальная настройка

Работая DevOps‑инженером в Т1 Иннотех, я часто сталкиваюсь с необходимостью глубоко погружаться в механизмы работы контейнерных оркестраторов. Важность хорошего знания архитектуры и оптимизации управления контейнерами трудно переоценить, особенно когда речь идёт о Kubernetes. Эта технология стала неотъемлемой частью моего инструментария благодаря её возможностям в автоматизации развёртывания, масштабирования и управления контейнерными приложениями.

Однако управлять микросервисной архитектурой в Kubernetes порой весьма сложно. И здесь на помощь приходит Istio — мощная платформа, обеспечивающая сетевое взаимодействие, безопасность и наблюдаемость в кластере Kubernetes. В этой статье мы рассмотрим основы Istio и её начальную настройку.

https://habr.com/ru/companies/T1Holding/articles/837896/

#devops #девопс

Подпишись 👉@i_DevOps
👍5🫡1
📌Какие типы сетевых драйверов используются в docker?
Основные драйвера сетей docker: bridge, host, overlay, ipvlan, macvlan, none.

📌Что вы можете найти в разделе «Discover» Kibana?
Необработанные данные в том виде, в каком они хранятся в индексе. Вы можете искать и фильтровать их.

📌Как данные хранятся в Elasticsearch?
Данные хранятся в индексе, он распределяется по кластеру с помощью шардов.

📌Что такое плагины Logstash? Какие типы плагинов существуют?
Плагины ввода — как собирать данные из разных источников;
Плагины фильтров — обработка данных;
Плагины вывода — передача данных на различные выходы/сервисы/платформы.

#devops #девопс

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

SSH-сервер, который запускает контейнеры в Kubernetes и Docker

https://github.com/ContainerSSH/ContainerSSH

#devops #девопс

Подпишись 👉@i_DevOps
👍51
Media is too big
VIEW IN TELEGRAM
Что такое CI/CD? // Зачем и как работает

Что такое CI/CD: простое объяснение для новичков про Continuous Integration, Continuous Delivery/Deployment. Они же - непрерывная интеграция и непрерывная доставка или развертывание. Что там за магия происходит под капотом, зачем это вообще придумали и какие цели преследуются?

Расскажу про то, какие есть процессы внутри, как и где это запускается без привязки к конкретным инструментам вроде Gitlab и Jenkins. Про артефакты, Nexus, тест-гейты, агенты и раннеры.

источник

#devops #девопс

Подпишись 👉@i_DevOps
👍7
Код для облака: Освоение DevOps с помощью Python, Terraform и Kubernetes на AWS

Как инженер DevOps, я обычно связан с конвейерами, автоматизацией и облачными сервисами. Однако мне всегда было интересно узнать о другой стороне технологического мира - разработке приложений. Поэтому я подумал, почему бы не разнообразить мир? Так я пришел к созданию финансового приложения на Python, дополненного REST API.

В этом блоге я рассказываю о разработке и развертывании моего финансового приложения с нуля, от кода начального приложения до его развертывания на AWS с помощью Docker, Kubernetes (EKS), Terraform и Ansible. И знаете что? Я автоматизировал весь процесс - каждый его кусочек!

https://towardsaws.com/coding-to-cloud-mastering-devops-with-python-terraform-and-kubernetes-on-aws-6251a910511f

#devops #девопс

Подпишись 👉@i_DevOps
3👍1
🔥Команда Экспресс 42 при поддержке генеральных партнеров, выпустила полную версию Исследования состояния DevOps 2024!

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

Посмотреть полную версию можно 👉 по ссылке!
👍8
Будущее DevOps-инженера

В последние годы произошло много разных событий, и мы, как большая организация, прочувствовали всё на себе. Пришлось очень быстро решать всевозможные проблемы. Хочу поделиться нашим опытом и сделанными выводами, которые кому-то покажутся спорными, кому-то — неуместными, а кому-то — очень важными.

https://habr.com/ru/companies/sberbank/articles/842450/

#devops #девопс

Подпишись 👉@i_DevOps
👍2
Ищем DevOps инженера для проекта

📌Требуется развернуть серверное окружение на микросервисах.

📌Требуется развернуть серверное окружение для разработки интернет-магазина на микросервисах.

📌Вот такой стек технологий:
Контейнеризация: docker
Орĸестрация: kubernetes (k3s, k8s)
service mesh: istio
Metrics: Victoria Metrics
Logs: Loki
Tracers: OTLP
Dashboards: Grafana
Source code: GIT
File source: S3
GitOps: fluxcd
Package manager: helm

Сервисы будут орĸестрироваться в kubernetes, в ĸачестве side car в нодах будет установлен istio - через него будет проходить весь трафиĸ между сервисами и настраиваться политиĸи безопасности
межсерсного общения, таĸ же будет проходить дополнительное логирование и трейсировĸа запросов

Обязателен опыт настройки в подобном стеке.

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

Вопросы и отклик присылайте @NadezdaGN
👎8👍3🤯1