DevOps Star (Звезда Девопса)
前往频道在 Telegram
Devops, Linux, SRE, Kubernetes, Сисадмин, Девопс, Python, JS, Java, Git, IT канал, программирование, безопасность, ИТ, Sysadmin По всем вопросам @evgenycarter
显示更多2 131
订阅者
无数据24 小时
+27 天
+1330 天
帖子存档
Какая роль у контроллера DaemonSet?
Контроллер DaemonSet в Kubernetes играет важную роль в обеспечении того, чтобы определённый под (Pod) запускался на каждом узле (Node) кластера (или на определённом подмножестве узлов, если заданы ограничения). Основные задачи и функции контроллера DaemonSet:
1. Запуск подов на каждом узле
- DaemonSet гарантирует, что на каждом узле кластера будет запущен экземпляр указанного пода.
- Это полезно для задач, которые должны выполняться на каждом узле, например:
- Сбор логов (например, Fluentd, Logstash).
- Мониторинг (например, Prometheus Node Exporter).
- Сетевые плагины (например, Calico, Weave).
- Хранение данных (например, распределённые хранилища).
2. Автоматическое добавление подов при добавлении новых узлов
- Когда в кластер добавляется новый узел, DaemonSet автоматически создаёт на нём под.
- Это обеспечивает согласованность и автоматизацию развёртывания.
3. Удаление подов при удалении узлов
- Если узел удаляется из кластера, DaemonSet автоматически удаляет под, связанный с этим узлом.
4. Поддержка селекторов и толерантностей
- DaemonSet позволяет использовать селекторы для выбора узлов, на которых будут запускаться поды.
- Также можно использовать толерантности (tolerations), чтобы разрешить запуск подов на узлах с определёнными метками (например, на узлах с taint
node-role.kubernetes.io/master).
5. Обновление и управление подами
- DaemonSet поддерживает стратегии обновления (например, RollingUpdate или OnDelete), что позволяет обновлять поды на узлах с минимальным простоем.
- Контроллер следит за состоянием подов и обеспечивает их корректную работу.
Примеры использования DaemonSet:
- Сетевые плагины: Запуск сетевых агентов на каждом узле для обеспечения сетевой связности.
- Мониторинг: Запуск агентов сбора метрик (например, Prometheus Node Exporter) на каждом узле.
- Логирование: Запуск агентов сбора логов (например, Fluentd) на каждом узле.
- Хранение данных: Запуск компонентов распределённых хранилищ (например, Ceph, GlusterFS).
Отличие DaemonSet от других контроллеров:
- Deployment: Запускает определённое количество реплик подов, которые могут быть распределены по любым узлам.
- StatefulSet: Управляет подами с устойчивыми идентификаторами и хранилищем.
- DaemonSet: Запускает по одному поду на каждом узле (или на подмножестве узлов).
Таким образом, роль контроллера DaemonSet заключается в обеспечении запуска и поддержания определённого пода на каждом узле кластера, что делает его идеальным инструментом для задач, которые должны выполняться на всех узлах.
📲 Мы в MAX
#devops #девопс
👉 @devops_star📌 Kubernetes 101: назначение Pod'ов на узлы
В статье подробно рассматриваются механизмы назначения Pod'ов на узлы в Kubernetes. Автор объясняет такие инструменты, как nodeSelector, nodeAffinity и taints/tolerations, которые позволяют контролировать, где именно будут запускаться ваши Pod'ы.
🔧 Основные моменты:
- nodeSelector — простой способ указать, на каком узле должен работать Pod.
- Node Affinity — более гибкий способ задания условий, включая hard и soft требования.
- Taints и Tolerations — эффективный способ предотвращать запуск Pod'ов на неподходящих узлах, если те не "терпят" заданные taints.
Эти инструменты помогают оптимизировать использование ресурсов кластера и избегать перегрузки узлов.
https://hwchiu.medium.com/kubernetes-101-assigning-pod-to-nodes-e52eebb4bc38
📲 Мы в MAX
#devops #девопс
👉 @devops_star
Topolvm — это проект с открытым исходным кодом, обеспечивающий управление томами для Kubernetes на основе LV (Logical Volume). Он позволяет эффективно использовать локальное хранилище на узлах кластера и автоматизирует создание, управление и удаление томов.
Среди основных возможностей Topolvm:
- Dynamic provisioning: автоматическое создание логических томов для Kubernetes PersistentVolumeClaims.
- Тонкое использование ресурсов: поддержка thin provisioning, что позволяет эффективно расходовать доступное пространство.
- Интеграция с CSI: поддержка интерфейса CSI (Container Storage Interface) для работы с Kubernetes.
- Полный контроль над хранилищем: локальные тома автоматически распределяются на основе доступных ресурсов.
Репозиторий проекта содержит документацию, примеры использования и подробные инструкции для интеграции с Kubernetes.
https://github.com/topolvm/topolvm/
#devops #девопс
👉 @devops_star
🚀 Подборка полезных IT каналов в Max
Системное администрирование, DevOps 📌
https://max.ru/i_odmin Все для системного администратора
https://max.ru/bash_srv Bash Советы
https://max.ru/sysadminof Книги для админов, полезные материалы
https://max.ru/i_odmin_book Библиотека Системного Администратора
https://max.ru/i_devops DevOps: Пишем о Docker, Kubernetes и др.
https://max.ru/tipsysdmin Типичный Сисадмин
https://max.ru/channel_win_sysadmin Системный Администратор Windows
https://max.ru/channel_linux_admin Linux: Системный администратор
https://max.ru/channel_linuxmod Linux
https://max.ru/channel_i_linux Системный администратор
https://max.ru/channel_devopslib DevOps, SRE, Sysadmin
https://max.ru/channel_devops_star DevOps Star (Звезда Девопса)
Excel лайфхак 📌
https://t.me/Excel_lifehack Excel лайфхак
Английский с нуля 🇬🇧
https://max.ru/UchuEnglish
1C разработка 📌
https://max.ru/odin1c_rus Cтатьи, курсы, советы, шаблоны кода 1С
https://max.ru/channel_DevLab1C 1С:Предприятие 8
Программирование C++📌
https://max.ru/cpp_lib Библиотека C/C++ разработчика
https://max.ru/channel_cpp_geek C++ geek
Программирование Go📌
https://max.ru/golang_lib Библиотека Go (Golang) разработчика
Программирование React📌
https://max.ru/react_lib React
Программирование Rust📌
https://max.ru/channel_rust_lib
Программирование Python 📌
https://max.ru/python_of Python академия.
https://max.ru/BookPython Библиотека Python разработчика
Java разработка 📌
https://max.ru/bookjava Библиотека Java разработчика
https://max.ru/channel_java_geek Java Geek
GitHub Сообщество 📌
https://max.ru/githublib Интересное из GitHub
Базы данных (Data Base) 📌
https://max.ru/database_info Все про базы данных
Фронтенд разработка 📌
https://max.ru/frontend_1 Подборки для frontend разработчиков
Библиотеки 📌
https://max.ru/programmist_of Книги по программированию
https://max.ru/proglb Библиотека программиста
https://max.ru/bfbook Книги для программистов
Программирование 📌
https://max.ru/bookflow Лекции, видеоуроки, доклады с IT конференций
https://max.ru/itmozg Программисты, дизайнеры, новости из мира IT
https://max.ru/php_lib Библиотека PHP программиста 👨🏼💻👩💻
Шутки программистов 📌
https://max.ru/itumor Шутки программистов
Защита, взлом, безопасность 📌
https://max.ru/thehaking Канал о кибербезопасности
https://max.ru/xakkep_1 Хакер Free
Книги, статьи для дизайнеров 📌
https://max.ru/odesigners Статьи, книги для дизайнеров
Математика 📌
https://max.ru/Pomatematike Канал по математике
https://max.ru/phismat_1 Обучающие видео, книги по Физике и Математике
Вакансии в IT📌
https://max.ru/progjob
https://max.ru/channel_rabotait
Мир технологий 📌
https://max.ru/mir_teh Канал для любознательных
Бонус 📌
https://max.ru/piterspb_78 Свежие новости Санкт-Петербурга
https://max.ru/mockva_life Свежие новости Москвы
https://max.ru/piterspb Питер Новости: Санкт-Петербург / СПБ / ДТП
DevOops
Способы аутентификации в Kubernetes. Интеграция с LDAP
Разработка в Kubernetes: путь от Kubespray к Rancher
Monitoring as a service
Единый подход к CI/CD Store
источник
#devops #девопс
👉 @devops_star
💡Local Path Provisioner — это удобное решение для предоставления локального хранилища в Kubernetes-кластерах. Оно позволяет пользователям создавать PersistentVolume на узлах с использованием локального хранилища.
Основные преимущества:
- Простая настройка и использование.
- Гибкость в указании путей для хранения.
- Отличный выбор для разработки и тестирования.
https://github.com/rancher/local-path-provisioner/tree/master
👉 @devops_star
🌟 GitHub Actions для Terraform 🌟
Если вы используете Terraform и хотите интегрировать его с CI/CD процессами на GitHub Actions, используйте библиотеку terraform-github-actions.
С её помощью вы сможете:
- Автоматизировать и тестировать Terraform-код.
- Настраивать проверки terraform plan и terraform apply.
- Ускорить деплой инфраструктуры.
Документация в репозитории описывает примеры использования и тонкости настройки.
https://github.com/dflook/terraform-github-actions
👉 @devops_star
Каковы компоненты непрерывной интеграции и DevOps? Как вы относитесь к каждому из них?
Пример ответа: «Непрерывная интеграция включает в себя автоматическое тестирование и интеграцию кода, а DevOps охватывает весь конвейер доставки. Я подхожу к CI, настраивая автоматизированные конвейеры сборки и тестирования, а в DevOps я фокусируюсь на циклах сотрудничества, мониторинга и обратной связи.»
#devops #девопс
👉 @devops_star
Как ArgoCD секреты из Vault не расшифровывал, или при чем тут App of Apps
Привет, меня зовут Антон, я DevOps-инженер в YADRO, работаю с платформой машинного обучения. Недавно столкнулся с интересным случаем, над которым мне пришлось поломать голову. Одной из задач нашей команды стало развертывание helm-чарта для Airflow с использованием ArgoCD. Это потребовалось для реализации DAG-пайплайнов, необходимых для обработки данных и автоматизации процессов в проектах машинного обучения.
В статье расскажу о сложностях при расшифровке секретов с использованием плагина ArgoCD Vault, о паттерне App of Apps для обхода этих сложностей и небольшом погружении в детали установки плагина в кластер, из-за которых возможно неочевидное поведение ArgoCD Applications.
https://habr.com/ru/companies/yadro/articles/873476/
#devops #девопс
👉 @devops_star
⚠Узнайте, как выстраивать диалог с бизнесом и перестанете быть просто «главным инженером» на курсе «Технический директор / CTO»
🎁Записывайтесь на 3 бесплатных вебинара — познакомьтесь с программой обучения и преподавателями. Задайте свои вопросы экспертам!
🔸Вебинар 1: «Метрики CTO: как доказать бизнесу, что инженерная команда работает эффективно»
⏰8 июля в 20:00 мск
Программа вебинара:
1. Как говорить с руководством, чтобы вас слышали
2. Основные метрики эффективности для команды
🔸Вебинар 2: «Как CTO говорить с бизнесом и командой на одном языке»
⏰16 июля в 20:00 мск
Программа вебинара:
1. Выстраиваем общение со стейкхолдерами и командой
2. Переведём технические вопросы на язык целей, сроков и рисков
🔸Вебинар 3: «Как CTO управляет неопределённостью: оценки, планы и ожидания бизнеса»
⏰22 июля в 20:00 мск
Программа вебинара:
Разберём, как CTO оптимизировать культуру работы с неопределённостью: инструменты и шаблоны для работы без вашего постоянного контроля.
Записывайтесь ➡ OTUS.RU
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru
Что будет, если переименовать суперпользователя? Экспериментируем, удивляемся и расстраиваемся…
В интернете много желающих перебирать пароли к SSH, чтобы получить мощности вашего сервера безвозмездно. Как это можно предотвратить? Отключить вход по паролю? Лениво. Использовать нестандартный порт? Не поможет. Поставить fail2ban? Скучно. Переименовать root? Вот это хорошая идея!
На профильных площадках можно встретить вопрос о том, как переименовать суперпользователя, и теоретические ответы с предупреждением о потенциальной деструктивности этого действа. В этой статье я расскажу, что может сломаться в теории и на практике.
https://habr.com/ru/companies/selectel/articles/791454/
#devops #девопс
👉 @devops_star
Kubefirst
Платформа с открытым исходным кодом Kubefirst
Это полностью автоматизированная и операционная платформа с открытым исходным кодом, которая включает в себя некоторые из самых популярных инструментов с открытым исходным кодом, доступных в пространстве Kubernetes, и все они работают вместе из одной команды.
Мы поддерживаем локальные облака, облака AWS и Civo. Запустив наши команды cli в пустой среде, вы получите экосистему облачного управления и доставки приложений GitOps с автоматизированными рабочими процессами Terraform, управлением секретами Vault, интеграцией GitLab или GitHub с Argo, а также демонстрационными приложениями, демонстрирующими, как все это работает вместе.
Документация https://docs.kubefirst.io/
https://github.com/kubefirst/kubefirst
#devops #девопс
👉 @devops_star
Kubernetes Уроки
1 - Что такое Kubernetes? Запуск локального кластера Kubernetes. Minikube
2 - Запуск Kubernetes кластера на AWS, используя eksctl
3 - Запуск Kubernetes кластера на AWS, используя Terraform
4 - Как использовать kubectl с несколькими Kubernetes кластерами
5 - Как установить Kubernetes Dashboard
6 - Создание объекта Pod. Запуск контейнеров в Kubernetes
7 - Метки, аннотации и пространства имён в Kubernetes
8 - ReplicationController и ReplicaSet в Kubernetes
9 - Deployment в Kubernetes. Стратегии обновления приложений
10 - Service в Kubernetes - Часть 1. Type: ClusterIP. Endpoints
Все видео доступны на youtube
#devops #девопс
👉 @devops_star
Проект Kube-job — это инструмент для управления Kubernetes CronJobs и Jobs через CLI. Он упрощает работу с заданиями, предоставляя гибкие команды для создания, обновления, удаления и запуска задач. Также проект поддерживает конфигурации YAML для удобного управления настройками.
Особенности:
- Управление заданиями прямо из терминала.
- Простая настройка с использованием YAML.
- Поддержка запуска заданий вручную для отладки.
Полезный инструмент для DevOps-инженеров, которые хотят ускорить взаимодействие с Kubernetes заданиями.
https://github.com/h3poteto/kube-job
#devops #девопс
👉 @devops_star
OpenCost
Инструмент мониторинга затрат с открытым исходным кодом для Kubernetes и облачных вычислений
OpenCost предоставляет командам наглядную информацию о текущих и прошлых расходах и распределении ресурсов Kubernetes и облачных сред. Эти модели обеспечивают прозрачность расходов в средах Kubernetes, поддерживающих множество приложений, команд, отделов и т. д. Они также обеспечивают прозрачность расходов на облачные вычисления у различных провайдеров.
OpenCost был первоначально разработан и открыт компанией Kubecost. Этот проект объединяет в себе спецификацию, а также реализацию на языке Golang этих подробных требований.
https://github.com/opencost/opencost
#devops #девопс
👉 @devops_star
💡 Как использовать OpenPubKey для SSH без SSH-ключей
OpenPubKey позволяет подключаться к серверам через SSH без использования традиционных SSH-ключей. Вместо этого используется криптографическая пара, созданная на основе конфигурации контейнера. Это значительно упрощает настройку и повышает безопасность.
Основные преимущества:
1. Простота — не нужно генерировать и хранить SSH-ключи.
2. Универсальность — метод легко интегрируется с текущими DevOps процессами.
3. Безопасность — доступ возможен только при соблюдении заданной конфигурации контейнера.
Подробную инструкцию вы найдёте по ссылке ниже. Это идеальное решение для автоматизации и повышения безопасности вашего CI/CD.
https://www.docker.com/blog/how-to-use-openpubkey-to-ssh-without-ssh-keys/
#docker #ssh #devops #девопс
👉 @devops_star
5 советов начинающему DevOps Engineer
DevOps не понаслышке понимает все циклы разработки, процессы планирования работ командами и управления ожиданиями заказчика.
А что же делать, если ты только вначале своего пути? Как вникнуть во все процессы и понять все тонкости? Донт вори!
Ярослав Обиход, DevOps Engineer Boosta, поможет разобраться.
Какая база лежит в основе работы DevOps инженера? Какие системы можно использовать для мониторинга и логирования?
Досмотри до конца и ты узнаешь, сколько может зарабатывать junior DevOps и как бонус- получишь список книг, которые помогут прокачаться в профессии.
источник
#devops #девопс
👉 @devops_star
PR-Agent — это инструмент с открытым исходным кодом для автоматического анализа Pull Request'ов. Этот агент интегрируется с GitHub и помогает разработчикам ускорить процесс ревью, автоматически генерируя полезные комментарии, улучшая качество кода и экономя время.
Особенности PR-Agent:
- Анализ кода: автоматически обнаруживает проблемы и предлагает улучшения.
- Интеграция с GitHub: работает с вашим репозиторием без дополнительных сложностей.
- Поддержка нескольких языков: подходит для проектов на разных языках программирования.
Проект активно развивается и доступен для бесплатного использования. Установить его можно через Docker или напрямую из репозитория.
https://github.com/Codium-ai/pr-agent
#devops #девопс
👉 @devops_star
