KazDevOps – Telegram
KazDevOps
5.38K subscribers
1.3K photos
27 videos
19 files
1.3K links
Канал о DevOps во всех проявлениях: K8s, CI/CD, AppSec, AI/ML, Cloud, Linux
Поможем с DevOps: https://core247.kz/
По рекламе @UlKonovalova
Download Telegram
🔥 Тренды российского рынка DevOps

Исследование охватило 817 IT-специалистов и руководителей компаний из различных отраслей полезно тем, чтобы посмотреть, что возможно ждет и казахстанский рынок.

Ключевые выводы:

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

Для более 60% компаний приоритетные задачи — качество продуктов и скорость их доставки до конечных пользователей.

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

Доля open-source инструментов за год выросла с 56 до 73%.

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

Где сейчас развернуты DevOps-инструменты: 53% — преимущественно On-prem, частично в облаке; 27% — все On-prem; 16% — преимущественно в облаке, частично On-prem. И только у 4% все в облаке.

77% уже наняли команды или специалистов по DevSecOps. 80% оценивают уровень зрелости своих процессов ИБ на 4–5 баллов из 5. Безопасность перестаёт быть чем-то внешним по отношению к разработке и эксплуатации, а становится неотъемлемой частью всего жизненного цикла продукта.

Многие компании внедряют специальные политики и процедуры безопасной разработки — например, гейты качества кода, сканирование контейнеров, защиту секретов и учётных данных в репозиториях и платформах CI/CD.

Наиболее распространённые практики безопасности в CI/CD: SAST — 44%, DAST — 43%, SCA — 33%, IAST — 19%, фаззинг-тестирование — 6%.

36% респондентов назвали недостаток компетенций главным барьером на пути к использованию ИИ.

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

Читайте полное исследование и делитесь с коллегами 🫡

@DevOpsKaz 😛
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍63🔥3🤮3😎2
Forwarded from DevOps FM
👩‍💻 Всем DevOps! Начнём неделю с подборки лучших практик по Terraform:

1. Разделяйте файлы конфигураций. Вместо того чтобы помещать весь код в main.tf, лучше распределите его по нескольким файлам:
main.tf: вызывает модули, локальные файлы и источники данных для создания всех ресурсов.
variables.tf: содержит объявления переменных, используемых в main.tf. Чтобы улучшить читаемость кода, размещайте обязательные переменные вверху, а необязательные — внизу, разделяя их строкой комментария;
outputs.tf: содержит выходные данные ресурсов, созданных в main.tf;
versions.tf: содержит требования к версиям Terraform и поставщиков;
data.tf: содержит импорт ресурсов;
resource.tf: содержит объявление конкретного ресурса;
terraform.tfvars: содержит значения переменных. Нигде не должен использоваться.

2. Упорядочьте ключи в блоке переменных variables.tf следующим образом: denoscription, type, default, validation.

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

4. Старайтесь делать ваши модули ресурсов максимально простыми.

5. Указывайте версии ваших модулей, иначе вы можете столкнуться с неожиданными проблемами при очередном развертывании. Для обновления ваших модулей используйте семантическое версионирование.

6. Если ваши модули тесно связаны — объедините их в один. Такие модули можно хранить в одном репозитории и использовать их в качестве подмодулей. Так вы сможете версионировать их как единое целое, и управлять ими станет проще.

7. Используйте map вместо list для описания группы объектов. Если требуется создать группу идентичных объектов, то лучше использовать map, так ресурсы будут обновляться. При использовании list ресурсы пересоздаются. Для некоторых сценариев это критично.

#bestpractices #devops #terraform
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥9👍82😎2
☄️Основные команды Kubernetes для восстановления после сбоев, которые помогают в 99% случаев:

kubectl get pods --all-namespaces Проверить статус всех подов во всех неймспейсах, чтобы найти сбои.

kubectl describe pod pod_name Получить подробную информацию о неудачном поде.

kubectl logs pod_name -c container_name Просмотреть логи конкретного контейнера в поде для устранения проблем.

kubectl get events --all-namespaces --sort-by='.metadata.creationTimestamp Просмотреть последние события для нахождения ошибок и сбоев.

kubectl get nodes Проверить статус нод в кластере и выявить возможные сбои на нодах.

kubectl drain node_name --ignore-daemonsets Безопасно эвакуировать и изолировать ноду для восстановления.

kubectl cordon node_name Пометить ноду как недоступную для планирования новых подов во время восстановления.

kubectl delete pod pod_name --grace-period=0 --force Принудительно удалить сбойный под, чтобы перезапустить его или освободить ресурсы для восстановления.

kubectl rollout undo deployment deployment_name Откатить деплоймент, если новый релиз вызывает сбои.

kubectl exec -it pod_name -- /bin/sh Получить доступ к контейнеру для отладки и решения проблем прямо внутри пода.

kubectl get componentstatuses Проверить здоровье ключевых компонентов кластера, таких как etcd и kube-apiserver.

kubectl top nodes Мониторить использование ресурсов нод, чтобы выявить проблемы с исчерпанием ресурсов.

kubectl top pods --all-namespaces Проверить использование ресурсов подов во всех неймспейсах для выявления узких мест.

kubectl delete node node_name Удалить неработающую ноду из кластера для восстановления.

etcdctl --endpoints=https://etcd-server:2379 snapshot restore backup.db Восстановить etcd из снимка в случае сбоя.

kubectl apply -f backup.yaml Применить конфигурации из резервной копии во время восстановления.

kubectl taint nodes node_name key=value Запретить планирование подов на ноду, которая имеет проблемы, в процессе восстановления.

kubectl get endpoints service_name Проверить конечные точки сервиса, чтобы убедиться в их корректной работе во время восстановления.

@DevOpsKaz 😛
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥15👍743😎2
K8s controller aws-auth configmap (aws-auth-manager)

Предназначен для автоматизации управления конфигурацией aws-auth в Kubernetes-кластерах на AWS. Контроллер управляет добавлением и удалением пользователей и ролей в этом configmap, обеспечивая синхронизацию с IAM. Это помогает упростить процесс предоставления доступа к кластеру Kubernetes и упрощает управление правами пользователей.

Preflight Checks and Support Bundles Framework for Kubernetes Applications (Troubleshoot)

Инструмент помогает выполнять предварительные проверки (preflight checks) и собирать отчеты с информацией о проблемах в Kubernetes-приложениях. Он позволяет проверять состояние кластеров перед развёртыванием и создавать support bundles, чтобы лучше диагностировать и решать возникающие проблемы.

Git Sync

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

@DevOpsKaz 😛
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6🔥5😎21
AWS Cloud Day для государственного сектора 16 октября в Астане

Насыщенное однодневное событие, организованное Amazon Web Services и qCloudy для представителей госучреждений и компаний. Эксперты, партнёры и спикеры обсудят разработку и внедрение надёжных и масштабируемых технических решений на базе AWS, учитывая законодательство Казахстана.

Мероприятие также предоставит возможность для обмена опытом среди профессионалов отрасли.

В программе:

— Клиентские кейсы
— Обзор глобальной инфраструктуры AWS и безопасность
— Полезные рекомендации по настройке облачных и локальных решений
— AWS Outposts — облако в вашем дата-центре
— Генеративный ИИ: обзор и примеры использования
— Панельная дискуссия
— Нетворкинг

Дата: 16 октября, 2024, 09:00 - 17:50
Место: Астана, пр. Кабанбай батыра 53, Назарбаев Университет, блок 32, Стеклянный павильон

👉 Вход бесплатный, но требуется регистрация

Организаторы: @cloudnativekz
3👍32🔥2😎2
🚀 Open SysConf.io — уже в эту субботу, 12 октября

Достаточно протянуть руку и ощутить момент встречи невооруженным взглядом. Докладчики готовы сделать этот день для вас мотивационным и полезным.

Доклады:
- Три системы, которые ты захочешь развернуть и настроить
- Внедрение вредоносного кода в Android-приложения
- AppSec Open(Secure)Source
- Рефакторинг архитектуры экосистемы приложений
- Как злоумышленники могут получать персональные данные
- Как работает Enterprise Architect
- Аппаратная и программная реализация проверки безопасности микросхем
- PCI-DSS v4.0
- Синтез молекулярных единиц

Место: г. Алматы, ул. Байзакова, 280. Зал: Amphitheatre
Время: с 10:00 до 20:00

Приходить можно и раньше — сможете пообщаться с участниками и спикерами.

👉
Регистрируйтесь здесь
Please open Telegram to view this post
VIEW IN TELEGRAM
2👍43🔥2😎2
GYK4czGbsAAY9cx.png
352.6 KB
🔥 Roadmap для микросервисов

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

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

И да будут ваши проекты организованными и управляемыми на каждом этапе его разработки и эксплуатации 🙏🏻

@DevOpsKaz 😛
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7🤡74🔥3
Forwarded from DevOpsDays Almaty 2025
This media is not supported in your browser
VIEW IN TELEGRAM
☄️ DevOpsDays Almaty 24 завершён — мы выложили записи докладов!

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

Также особая благодарность нашему генеральному спонсоруNova Cloud.

P.S. Если вы пропустили, фотки здесь.

До встречи в следующем году 😉

#devops #devopsdays #devopsdaysalmaty
Please open Telegram to view this post
VIEW IN TELEGRAM
110🔥7👍6😎3
KazDevOps pinned a video
☄️ Cheat sheet для защиты ваших кластеров Kubernetes

👉 Нашли для вас интересную шпаргалку, которая поможет усилить безопасность Kubernetes — в ней советы по 4 основным разделам:

— Безопасность компонентов Kubernetes
— Network Security
— Безопасность pods и других объектов
— Kubernetes credentials и data security

Также в нашем блоге вы можете прочесть статью «Лучшие практики безопасности Kubernetes за 5 шагов» , чтобы уж точно не пропустить никакую деталь.


#kubernetes #k8s #k8ssec #devsecops

@DevOpsKaz 😛
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4🔥3😎32
🚀 Завершили отбор грантополучателей на курс DevOps Upgrade в рамках проекта Tech Orda!

Благодаря этой инициативе мы смогли предоставить гранты на обучение и вместе с Tech Orda помогли развитию IT-индустрии в Казахстане.

Что сделали:

Общее количество заявок: 133
Получивших грант: 16
Грант для компании (КИК)
Всего выдано грантов: 17

Все участники прошли трехэтапный отбор и уже начали обучение на курсе — и активно погружаются в мир DevOps.

Тех, кто успешно пройдет курс и проявит себя на высшем уровне, мы готовы принять на практику для работы над реальными проектами в команду Core 24/7.


От души благодарим Astana Hub за такую возможность.

Двигаемся к новым высотам!

@DevOpsKaz 😛
Please open Telegram to view this post
VIEW IN TELEGRAM
4🔥145😎4👎1
☄️ Масштабирование команд SRE: проблемы и способы создать успешную структуру

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

👉
В новой статье раскрываем базовые понятия структуры масштабирования

Эта структура масштабирования подходит как при руководстве новыми командами и стартапами, так и для устоявшихся компаний с прочно укоренившейся культурой SRE.

@DevOpsKaz 😛
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6🔥5🎉2
🔥 Новости и инструменты PostgreSQL

В конце сентября состоялся релиз PostgreSQL 17, и сегодня мы решили уделить postgres чуть больше внимания. Ниже вы найдете полезные ссылки для тех, кто использует эту СУБД или только присматривается к ней.

pgbackweb
— утилита для управления бэкапами #PostgreSQL с графическим интерфейсом. Помогает автоматизировать резервное копирование и не тратить время на долгую настройку. Совместима с PostgreSQL 13, 14, 15 и 16.

Свежий тест производительности PostgreSQL по сравнению с MySQL.

Гайд про то, как использовать PostgreSQL на Python.

@DevOpsKaz 😛
Please open Telegram to view this post
VIEW IN TELEGRAM
3👍53🔥3🎉2
☄️ Yandex Scale Kazakhstan уже 23 октября в Алматы

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

В программе:

— 3 тематических трека — ML и AI, Data Platform, Infrastructure и DevTools
— Крутые спикеры и полезные доклады
— Новости облачной платформы Yandex Cloud

👉 Смотреть полную программу конференции

В очном формате на площадке The Ritz-Carlton Almaty соберутся 300 участников. Онлайн-трансляция также предусмотрена.

Для очного участия успейте зарегистрироватьсядо 21 октября
Please open Telegram to view this post
VIEW IN TELEGRAM
👍43🔥32
🔥 Скидки до 40% на курсы и сертификацию от LNCF

Linux Foundation проводит акцию и дарит скидки — и мы не могли об этом умолчать 🫡

Скидки действуют на:

— CKS, KCSA
— Kubernetes Security Essentials (LFS260)
— Modern Air Gap Software Delivery (LFS281)
— Mastering Infrastructure Security (SKF200)
— и другие (всего 27 предложений)

Используйте промокоды:

OCT24CYBER, чтобы сэкономить 40% на курсах и сертификациях по кибербезопасности
OCT24, чтобы сэкономить 30% на всех других курсах и сертификациях

🚩 Акция продлится до 22 октября

#security #kubernetes #training #course

@DevOpsKaz 😛
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥54👍43
Splunk помогает собирать логи и метрики с различных систем, анализировать их и предоставлять информацию о работе сервисов, что помогает быстрее реагировать на инциденты и принимать решения на основе данных.

Вот некоторые часто используемые команды Splunk:

1. search — основная команда для поиска данных. Используйте ее для извлечения событий по определенным критериям.

2. index — указывает индекс, из которого следует извлекать данные. С помощью этой команды можно фильтровать данные по индексу.

3. source — фильтрует события на основе источника данных (например, файлы журналов, сетевые потоки).

4. sourcetype — фильтрует события по типу источника данных (например, журналы Apache, журналы событий Windows).

5. eval— создает вычисляемые поля или изменяет существующие. Полезно для создания пользовательских полей или преобразования данных.

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

7. timechart — создает временные диаграммы и визуализации. Полезно для анализа тенденций и выявления закономерностей с течением времени.

8. rex — извлекает поля с помощью регулярных выражений. Полезно при работе с неструктурированными данными.

9. dedup — удаляет дубли событий на основе указанных полей.

10. transaction — группирует связанные события в транзакции. Полезно для анализа многошаговых процессов.

11. top — определяет основные значения для определенного поля (например, основные IP-адреса, основные коды ошибок).

12. lookup — обогащает события, объединяя их с внешними таблицами поиска (например, сопоставляя IP-адреса с данными геолокации).

Также предлагаем изучить официальный cheat sheet. Пользуйтесь и делитесь с коллегами 🫡

А вы пользуетесь Splunk?

@DevOpsKaz 😛
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥10👍522
🔥 Kubernetes в среде с высокой нагрузкой — cитуация и 3 ключевых вывода

Дано:

Платформа обрабатывает около 5000 запросов в секунду (RPS) при обычных рабочих нагрузках и до 15000 RPS во время отправки новостных уведомлений. В некоторых случаях количество запросов может увеличиться экспоненциально. Это после того, как на определённых маршрутах достигается 80% попаданий в кэш с помощью CDN.

Общая картина архитектуры приложения
Детальная картина одной из частей архитектуры


Команда использовала подход Infrastructure Strangulation, чтобы мигрировать приложения в Kubernetes.

Мы модифицировали конвейеры деплоя для запуска приложений как на старой инфраструктуре, так и в Kubernetes. Внесли изменения в Edge-инфраструктуру, чтобы маршрутизировать трафик на обе инфраструктуры — Legacy и Kubernetes.

Когда миграцию признали успешной, мы просто прекратили отправку трафика на старую инфраструктуру и вывели её из эксплуатации через несколько дней.


Вот что им помогло:

— Кэширование узлов DNS
— Алгоритм Peak EWMA для балансировки нагрузки
— Несколько входных контроллеров для разных потоков

👉 Читайте статью полностью, чтобы узнать детали

#kubernetes #k8s #dns #peakewma

@DevOpsKaz 😛
Please open Telegram to view this post
VIEW IN TELEGRAM
42👍2🔥2😎2
В чем разница между обратным прокси, балансировщиком нагрузки и шлюзом API?

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

👉 Смотрите короткое видео, чтобы разобраться с этим

@DevOpsKaz 😛
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5🔥3😎321
This media is not supported in your browser
VIEW IN TELEGRAM
☄️ Kube Controller Manager: минутка теории

Контроллеры в Kubernetes — это программы, которые бесконечно работают в циклах управления, сравнивая текущее состояние ресурсов с желаемым. Если что-то не соответствует, контроллер берет ситуацию под контроль и восстанавливает порядок. Это одна из ключевых концепций Kubernetes, позволяющая управлять объектами в кластере через API.

📌 Пример:

Вы хотите создать Deployment. Указываете желаемое состояние, например 3 реплики подов, в YAML-файле (это декларативный подход). Контроллер следит за тем, чтобы всегда поддерживать это состояние. Если вы изменяете количество реплик на 5, контроллер тут же обновляет состояние.


Kube Controller Manager управляет всеми встроенными контроллерами, отвечающими за поды, джобы, неймспейсы и репликасеты:

— Deployment Controller
— ReplicaSet Controller
— DaemonSet Controller
— Node Controller

Что нужно знать о Kube Controller Manager:

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

Kubernetes можно расширить с помощью пользовательских контроллеров, управляемых через пользовательские ресурсы (CRD).

Контроллеры получают текущее состояние кластера через API Kubernetes и управляют ресурсами, создавая, обновляя или удаляя их.

Если Kube Controller Manager запущен в нескольких экземплярах, используется механизм выбора лидера. Только один экземпляр вносит изменения в кластер в любой момент времени, чтобы избежать конфликтов.

Вывод: Kube Controller Manager — это основной компонент, который помогает Kubernetes работать надежно и эффективно, автоматически поддерживая баланс и стабильность внутри кластера.


@DevOpsKaz 😛
Please open Telegram to view this post
VIEW IN TELEGRAM
2🔥63👍3👾2
🔥 Kardinal — инструмент для быстрой настройки временных окружений

Kardinal позиционируется как «наиболее легковесный способ» развертывания временных окружений. Его цель — упростить и ускорить этот процесс.

Для этого есть два ключевых компонента: Kardinal Kontrol — облачная управляющая панель, и Kardinal Manager, который разворачивается в вашем Kubernetes-кластере.

Возможности инструмента:

Типы окружений: поддержка окружений для одного или нескольких сервисов с общими ресурсами, приложений с изолированными stateful-ресурсами, а также полная изоляция для приложений.
Шаблоны: возможность стандартизации и кастомизации конфигураций окружений через шаблоны.
Плагины: для упрощения настройки dev-версий stateful или внешних сервисов. Поддерживаются плагины для Redis, Neon DB, PostgreSQL (с возможностью начального заполнения данных) и AWS RDS.
Веб-дашборд: для удобного мониторинга всех окружений.
Интеграция с Tilt и Telepresence.
Готовая песочница: можно протестировать Kardinal в действии через GitHub Codespaces.

@DevOpsKaz 😛
Please open Telegram to view this post
VIEW IN TELEGRAM
1👍4🎉3🔥2👾2