Библиотека девопса | DevOps, SRE, Sysadmin
10.3K subscribers
1.38K photos
71 videos
4 files
2.59K links
Все самое полезное для девопсера в одном канале.

По рекламе: @proglib_adv

Учиться у нас: https://proglib.io/w/25874ec4

Для обратной связи: @proglibrary_feeedback_bot

РКН: https://gosuslugi.ru/snet/6798b4e4509aba565
Download Telegram
19 сентября в 14:00 состоится бесплатный вебинар в онлайн-формате: Утечки и фишинг: как реагировать

С января по июнь этого года хакеры выложили в сеть данные 201 российской компании общим объемом 91,8 ТБ, а количество фишинговых атак и случаев кибермошенничества в середине весны выросло на 26% по сравнению с аналогичным периодом 2022-го.

На мероприятии узнаете:

🔹 С какой частотой происходят крупные утечки.
🔹 Какие отрасли подвержены им больше других.
🔹 Как развивается фишинг.
🔹 Какие векторы фишинговых атак наиболее популярны.
🔹 Как снизить цифровые риски и многое другое.

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

Регистрация

#мероприятия
6🔥1👏1😁1
🔥💪 Бесплатное мероприятие SmartDev 2023 пройдет 21 сентября в Москве, на Новом Арбате, 24 и онлайн, на котором топ-менеджеры и ведущие it-специалисты поделятся опытом.

Темы:

🔹 Devops
🔹 Архитектура решений
🔹 Машинное обучение
🔹 ИИ
🔹 Данные
🔹 Безопасность

Общие направления:

🔹 Создание современных инженерных решений
🔹 Внедрение и разработка инновационных технологий
🔹 Эффективное управление командой и продуктом
🔹 Выход на зарубежные рынки

Что будет:

Программа просто гигантских размеров, поэтому сюда ее нет смысла помещать — переходите по ссылке.

Регистрация тут
5👍2
😎 Очередной #дайджест полезных статей по DevOps:

🔹 Защита доступа к сайту с помощью Kubernetes NGINX Ingress Controller, OAuth2 и Azure AD — большинство приложений не обеспечивают аутентификацию, но вы можете это исправить

🔹 БД в Kubernetes — решение проблемы реплицирования приложения с сохранением состояния и без него

🔹 Управление секретами в Kubernetes — рассказ о передаче необходимой информации приложению, Secrets Source of Truth при миграции и способах передачи/одновления секретов

🔹 8 советов по безопасности в CI/CD pipeline — проверка зависимостей на наличие проблем с безопасностью, анализ кода, сканирование образов контейнеров и прочее

🔹 Netassert: проверка сетевой связности k8s — софтина для проверки сети междy объектами Kubernetes: Pods, Deployments, Daemon Sets и Stateful Sets
🔥64
🔌🪫📠 Подобрали 5 сканеров для поиска уязвимостей безопасности и неправильных конфигураций в Kubernetes:

🔹 Kube-bench проверяет, развернут ли Kubernetes в соответствии с best practices безопасности, определенными в CIS Kubernetes Benchmark. Тесты настраиваются с помощью файлов YAML.

Как использовать:

Внутри контейнера:
docker run - pid=host -v /etc:/etc:ro -v /var:/var:ro -t aquasec/kube-bench:latest - version 1.18
Внутри Kubernetes-кластера:
kubectl apply -f https://github.com/aquasecurity/kube-bench/blob/main/job.yaml

🔹 Kube-hunter ищет слабые места безопасности в кластерах Kubernetes. НЕ следует запускать в кластере Kubernetes, которым вы не владеете! Находясь за пределами кластера, kube-hunter сканирует домен или диапазон адресов на наличие открытых портов, связанных с Kubernetes, и проверяет наличие проблем конфигурации, которые делают ваш кластер уязвимым для злоумышленников.

Как использовать:

На любой машине выберите удаленное сканирование и укажите IP-адрес или доменное имя кластера:
pip install kube-hunter
На машине в кластере:
docker run -it — rm — network host aquasec/kube-hunter
В поде внутри кластера:
kubectl create -f https://github.com/aquasecurity/kube-hunter/blob/main/job.yaml

🔹 Kubeaudit инструмент командной строки и пакет Go для аудита кластеров Kubernetes на предмет различных проблем безопасности.

Как использовать:

Через Homebrew:
brew install kubeaudit
Через Helm:
helm upgrade — install kubeaudit secureCodeBox/kubeaudit

🔹 Kube-scan может получить оценку риска ваших рабочих нагрузок: от 0 (нет риска) до 10 (высокий риск) для каждой рабочей нагрузки. Kube-scan предназначен для того, чтобы помочь понять, какие из рабочих нагрузок подвергаются наибольшему риску и почему, а также позволяет определить приоритетность обновлений политики безопасности вашего модуля, определений модулей и файлов манифеста, чтобы держать риск под контролем.

Как использовать:

kubectl apply -f https://raw.githubusercontent.com/octarinesec/kube-scan/master/kube-scan.yaml
kubectl port-forward --namespace kube-scan svc/kube-scan-ui 8080:80

Затем установите для браузера значение http://localhost:8080

🔹 Kubesec — это open-source инструмент для оценки риска безопасности рабочих нагрузок Kubernetes на основе их конфигурации YAML. Тулза количественно оценивает риск для ресурсов Kubernetes, проверяя файлы конфигурации и файлы манифеста, используемые для развертываний и операций Kubernetes.

Как использовать:

Docker Container
Linux/MacOS/Win binary
Kubernetes Admission Controller
Kubectl Plugin

Пример использования командной строки:
kubesec scan k8s-deployment.yaml

#туториал
👍11👏43
🔥😎 Запускаем подов на GPU с помощью NVIDIA Multi-Instance в Amazon EKS

В 2020 году NVIDIA представила совместное использование Multi-Instance GPU (MIG). Эта функция разбивает графический процессор на несколько меньших по размеру, полностью изолированных экземпляров. Это полезно для рабочих нагрузок, которые не полностью насыщают вычислительную мощность ГП. Это позволяет пользователям параллельно запускать несколько ворколоадов на одном ГП для максимального использования ресурсов.

NVIDIA Multi-Instance GPU

MIG - это особенность графических процессоров NVIDIA, основанных на архитектуре NVIDIA Ampere. Каждое устройство MIG полностью изолировано благодаря собственной памяти с высокой пропускной способностью, кэш-памяти и вычислительным ядрам. Вы можете создавать срезы для управления объемом памяти и количеством вычислительных ресурсов на каждое устройство MIG.

MIG дает вам возможность точно настраивать объем ресурсов графического процессора, который получают ваши ворклоады. Эта функция обеспечивает гарантированное качество обслуживания (QoS) с детерминированной задержкой и пропускной способностью, гарантируя, безопасное использование ресурсов ГП.

Читаем подробнее тут

#гайд
5👍2
🤔 Что есть SRE... ?

🎙️ Подкаст, в котором руководитель отдела исследований и разработок Siemens Healthineers и эксперт в области проектирования надежности объектов (SRE), расскажет об отношениях между SRE и DevOps, о балансе принципов SRE с организационной структурой и о том, как, по его мнению, GenAI повлияет на его область.

⏯️ Слушать

#подкасты
7
😎✍️ Best Practices написания шаговых функций для Terraform проектов

Terraform — одна из самых популярных IaC-платформ. AWS Step Functions — это визуальный workflow-сервис, который помогает разработчикам использовать инструменты AWS для создания распределенных приложений, автоматизации процессов, оркестрации микросервисов и создания конвейеров данных и ML.

Если вы новичок в Step-функциях и/или Terraform, ознакомьтесь с введением в Terraform и управлением состоянием.

Шаговые функции и структура проекта Terraform

Одной из наиболее важных частей любого программного проекта является его структура. Проект Step Functions, использующий Terraform может содержать множество компонентов, поэтому важно соблюдать модульность. Посмотрим на структуру проекта, которая обеспечит модульность, повторное использование и расширяемость:

mkdir sfn-tf-example
cd sfn-tf-example
mkdir -p -- statemachine modules functions/first-function/src
touch main.tf outputs.tf variables.tf .gitignore functions/first-function/src/lambda.py
tree

/statemachine будет содержать JSON-код Amazon States Language (ASL), описывающий определение sшаговых функций. Именно здесь будет находиться логика оркестровки, поэтому лучше ее хранить отдельно от кода инфраструктуры.

/functions содержит код для функций AWS Lambda.

/modules — это абстракции более высокого уровня, объясняющие новые концепции в архитектуре.

Остальные файлы в корневом каталоге проекта являются общими для всех проектов Terraform. Там будут скрытые файлы, созданные вашим проектом Terraform после запуска terraform init, поэтому они в .gitignore.

Подробнее дальнейший процесс описан здесь

#туториал
19👍6👏4
🤔 Очередной #дайджест полезных статей по DevOps:

🔺 VTB API hackathon — призовой фонд – 1,8 млн рублей. Регистрация открыта до 1 октября

🔺 Grafana 10.1 release — улучшенные графики, новый сетевой уровень геокарты и многое другое

🔺 semgrep-go — набор правил для статического анализа кода Go, которые выявляют распространенные или потенциальные ошибки

🔺 Как рассчитать SLA на примере Nginx-сервера — соглашение с клиентами или пользователями, где описывается уровень обслуживания, который поставщик обещает предоставить клиенту и как его высчитать

🔺 Terraform Drift — что делать, когда то, что настроено на облаке отличается от того, что объявлено в коде Terraform
🔥4👏31
🦸 9 способов настройки градиента цели для поддержания мотивации

Разбираемся, как настроить себя идти до конца, преодолевая препятствия и лень.

Читать статью

#саморазвитие
👍4🔥31
🗝️🗝️ Ключевые показатели для мониторинга Core DNS

CoreDNS — это опенсорсный DNS-сервер, который может разрешать запросы на доменные имена в кластере Kubernetes. CoreDNS является поставщиком DNS по умолчанию в Kubernetes начиная с версии 1.13. Он может использоваться независимо от Kubernetes, а также быть в роли обеспечения обнаружения служб Kubernetes, что упрощает создание кластерных сетей, позволяя клиентам получать доступ к службам, используя DNS-имена, а не IP-адреса. Важно отслеживать CoreDNS, чтобы убедиться, что повышенная задержка или частота ошибок не нарушают связь между вашими службами и не вызывают узких мест в приложении. В статье рассматриваются следующие ключевые категории показателей CoreDNS:

🔺 Показатели пропускной способности
🔺 Показатели производительности
🔺 Показатели масштабирования и ресурсов
🔺 Показатели Go
🔺 Показатели кэширования

Подробности

#гайд
👍63
This media is not supported in your browser
VIEW IN TELEGRAM
HR в попытках поймать сеньора на оклад джуна 😂😂
😁20🔥21
This media is not supported in your browser
VIEW IN TELEGRAM
Как усмирить обезумевшего техдира 😂😂
😁15🔥32
🤔 Очередной #дайджест полезных статей по DevOps:

🔺 Стратегии развертывания Kubernetes — в Kubernetes существует несколько различных способов зарелизить приложение, и они перед вами

🔺 Особенности SRE и Observability в мобильных приложениях — история боли о нестабильных средах, остатках старых версий и бардаке, как везде, но с приятным концом

🔺 Как начать юзать Weaviate Vector Database в Docker — автор рассказывает о это векторной БД с возможностями векторного, гибридного и генеративного поиска

🔺 Восхождение на Azure DevOps Server — про фишечки, фиксы и фичи release-кандидата, скачать которого можно тут

🔺 OpenTofu — Новая альтернатива Terraform с открытым исходным кодом
🥰3318👍9🔥9👏7
Зачем нам Kyverno?

Kyverno — это опенсорсный механизм политики для Kubernetes, который позволяет определять, проверять и применять политики для кластера.

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

Создаем локальный кластер

kind create cluster --image "kindest/node:v1.26.0" --config - <<..EOFkind: ClusterapiVersion: kind.x-k8s.io/v1alpha4nodes: - role: control-plane - role: worker - role: worker - role: workerEOF

.. - не пишем — это, чтобы телега не кропала код

Поды плоскости управления находятся в kube-system пространстве имен. Перечислить поды с помощью kubectl get pods -n kube-system.

Развертывание Kyverno

Теперь можно развернуть Kyverno с помощью Helm:

helm upgrade --install --wait --timeout 15m --atomic --version 3.0.0-alpha.1 --namespace kyverno --create-namespace --repo https://kyverno.github.io/kyverno kyverno kyverno

Далее, более подробно здесь

#туториал
6👍4