💥💥 Быстрая, декларативная, воспроизводимая и компонуемая среда разработки с использованием Nix
DevEnv
👉 Переменные среды
Используйте атрибут env для определения переменных среды.
Если хотите включить секреты из файла .env, установите dotenv.enable = true;.
👉 Пакеты
Есть возможность выбрать из 80000+ готовых пакетов для Linux/macOS и X64/Arm64. Работает с WSL 2.
👉 Запуск скриптов при входе в среду
Подготовьте свою среду при входе в оболочку, в которой уже загружена среда.
👉 Автоматическая загрузка среды при входе в проект
Использование direnv автоматически загрузит среду при входе в каталог проекта.
👉 Простая установка
1. Установка Nix
sh <(curl -L https://nixos.org/nix/install) --daemon
2. Установка devenv
nix-env -iA devenv -f https://github.com/NixOS/nixpkgs/tarball/nixpkgs-unstable
Доки и блог здесь
#софт
DevEnv
👉 Переменные среды
Используйте атрибут env для определения переменных среды.
Если хотите включить секреты из файла .env, установите dotenv.enable = true;.
👉 Пакеты
Есть возможность выбрать из 80000+ готовых пакетов для Linux/macOS и X64/Arm64. Работает с WSL 2.
👉 Запуск скриптов при входе в среду
Подготовьте свою среду при входе в оболочку, в которой уже загружена среда.
👉 Автоматическая загрузка среды при входе в проект
Использование direnv автоматически загрузит среду при входе в каталог проекта.
👉 Простая установка
1. Установка Nix
sh <(curl -L https://nixos.org/nix/install) --daemon
2. Установка devenv
nix-env -iA devenv -f https://github.com/NixOS/nixpkgs/tarball/nixpkgs-unstable
Доки и блог здесь
#софт
❤15🥰2❤🔥1
🛟🛟 Sveltos: Kubernetes add-on controller
Sveltos — это add-on controller Kubernetes, который упрощает развертывание и управление надстройками и приложениями в нескольких кластерах. Он работает в кластере управления и может программно развертывать надстройки и приложения и управлять ими в любом кластере парка, включая сам кластер управления. Sveltos поддерживает множество дополнительных форматов, включая Helm charts, raw YAML, Kustomize, Carvel ytt и Jsonnet.
Вот тут подробнее
#софт
Sveltos — это add-on controller Kubernetes, который упрощает развертывание и управление надстройками и приложениями в нескольких кластерах. Он работает в кластере управления и может программно развертывать надстройки и приложения и управлять ими в любом кластере парка, включая сам кластер управления. Sveltos поддерживает множество дополнительных форматов, включая Helm charts, raw YAML, Kustomize, Carvel ytt и Jsonnet.
Вот тут подробнее
#софт
👍18❤🔥1🥰1
Очередной #дайджест по DevOps
➕ Почему ни в коем случае НЕ надо становиться DevOps инженером — предостережения начинающим и совет что же делать если «НЕ»
➕ Надежная поставка программного обеспечения — методы построения гибкого и безопасного конвейера разработки кода
➕ AWS Weekly Roundup — новые возможности в Amazon Bedrock, AWS Amplify Gen 2, Amazon RDS
➕ Dokploy — бесплатная автономная PaaS, которая упрощает развертывание приложений и БД и управление ими с помощью Docker и Traefik
➕ Поговорим о методологии DevOps — вебинар 25 мая
➕ Почему ни в коем случае НЕ надо становиться DevOps инженером — предостережения начинающим и совет что же делать если «НЕ»
➕ Надежная поставка программного обеспечения — методы построения гибкого и безопасного конвейера разработки кода
➕ AWS Weekly Roundup — новые возможности в Amazon Bedrock, AWS Amplify Gen 2, Amazon RDS
➕ Dokploy — бесплатная автономная PaaS, которая упрощает развертывание приложений и БД и управление ими с помощью Docker и Traefik
➕ Поговорим о методологии DevOps — вебинар 25 мая
❤🔥12🎉11❤3👍1🥰1
❗«Библиотека программиста» продолжает поиски контент-менеджера для ведения телеграм-каналов
Ищем человека, который грамотно пишет и разбирается в одной из этих тем:
👉Java
👉DevOps
👉тестирование
Мы предлагаем частичную занятость и полностью удаленный формат работы — можно совмещать с основной и находиться в любом месте🌴
Подробнее о вакансии и форма для отклика — по ссылке.
Ждем вас в команде!
Ищем человека, который грамотно пишет и разбирается в одной из этих тем:
👉Java
👉DevOps
👉тестирование
Мы предлагаем частичную занятость и полностью удаленный формат работы — можно совмещать с основной и находиться в любом месте🌴
Подробнее о вакансии и форма для отклика — по ссылке.
Ждем вас в команде!
👍2❤1🎉1
Forwarded from Библиотека задач по DevOps | тесты, код, задания
Какой ресурс Kubernetes отвечает за управление доступом к сетевым сервисам внутри кластера?
Anonymous Quiz
19%
Gateway
36%
Ingress
42%
Service
3%
Под
❤1🔥1
💪💪 Простая навигация по прокси-серверам: новые возможности в Docker Desktop 4.30
Теперь используются передовые протоколы аутентификации Kerberos и NTLM, а Docker Desktop может обеспечить более безопасное и бесперебойное взаимодействие с корпоративными прокси-серверами, обеспечивая при этом оптимизацию и отсутствие проблем.
Подробнее об обновлении тут
Теперь используются передовые протоколы аутентификации Kerberos и NTLM, а Docker Desktop может обеспечить более безопасное и бесперебойное взаимодействие с корпоративными прокси-серверами, обеспечивая при этом оптимизацию и отсутствие проблем.
Подробнее об обновлении тут
❤12❤🔥1🥰1🎉1
🛟🛟 Автоматизация сборки образов Docker с помощью Pulumi и Docker Build Cloud
В статье, автор расскажет о новом поставщике Docker Build от Pulumi, и как он работает с Docker Build Cloud, чтобы упростить создание, развертывание и управление контейнеризированными приложениями. Сначала будет создан проект с использованием Docker Build Cloud и Pulumi. Затем предлагается рассмотреть интересные примеры использования, которые продемонстрируют, как можно использовать этого поставщика для упрощения процессов сборки и развертывания.
Читать статью
#туториал
В статье, автор расскажет о новом поставщике Docker Build от Pulumi, и как он работает с Docker Build Cloud, чтобы упростить создание, развертывание и управление контейнеризированными приложениями. Сначала будет создан проект с использованием Docker Build Cloud и Pulumi. Затем предлагается рассмотреть интересные примеры использования, которые продемонстрируют, как можно использовать этого поставщика для упрощения процессов сборки и развертывания.
Читать статью
#туториал
👍3🔥2❤🔥1
🍽️🍽️ Dev контейнеры и с чем их едят
Как вести разработку на используемой платформе (x86) под целевую платформу (ARM).
Какие есть решения:
👉 Самое очевидное — начать устанавливать кросс-компиляторы и другие инструменты для разработки локально. Нужно разрабатывать на C++, так что установим Cygwin, на него устанавливаем все нужные нам библиотеки и компиляторы, устанавливаем MSYS2, настраиваем его так, чтобы он использовал инструменты из Cygwin. А теперь повторяем это на компьютере всех разработчиков в команде! Так дело не пойдет: слишком много действий и велик процент ошибиться и установить что-то не то.
👉 Можно настраивать все это на одном компьютере, к которому через SSH будут подключаться разработчики. Подобная машина называется Build Server. Звучит уже лучше, но требует отдельный сервер и хорошее интернет соединение.
👉 Финальная идея — контейнерная разработка на компьютере каждого разработчика с помощью Docker. Автор пытался реализовать это различными способами, но наиболее оптимальным из них показался dev контейнер: вся команда использовала один и тот же конфигурационный файл для запуска контейнера, и, впоследствии, каждый разработчик имел готовую среду разработки со всеми необходимыми тулчейнами и зависимостями у себя на компьютере.
Речь пойдет о третьем варианте
#туториал
Как вести разработку на используемой платформе (x86) под целевую платформу (ARM).
Какие есть решения:
👉 Самое очевидное — начать устанавливать кросс-компиляторы и другие инструменты для разработки локально. Нужно разрабатывать на C++, так что установим Cygwin, на него устанавливаем все нужные нам библиотеки и компиляторы, устанавливаем MSYS2, настраиваем его так, чтобы он использовал инструменты из Cygwin. А теперь повторяем это на компьютере всех разработчиков в команде! Так дело не пойдет: слишком много действий и велик процент ошибиться и установить что-то не то.
👉 Можно настраивать все это на одном компьютере, к которому через SSH будут подключаться разработчики. Подобная машина называется Build Server. Звучит уже лучше, но требует отдельный сервер и хорошее интернет соединение.
👉 Финальная идея — контейнерная разработка на компьютере каждого разработчика с помощью Docker. Автор пытался реализовать это различными способами, но наиболее оптимальным из них показался dev контейнер: вся команда использовала один и тот же конфигурационный файл для запуска контейнера, и, впоследствии, каждый разработчик имел готовую среду разработки со всеми необходимыми тулчейнами и зависимостями у себя на компьютере.
Речь пойдет о третьем варианте
#туториал
❤🔥2👍2
#вопросы_с_собеседования
Что такое userspace, kernelspace? Чем они отличаются?
Под пользовательским пространством понимается весь код операционной системы, который находится вне ядра.
Большинство Unix-подобных операционных систем (включая Linux) поставляются с разнообразными предустановленными утилитами, средствами разработки и графическими инструментами — это все приложения пространства пользователя.
Все пользовательские приложения (и контейнеризированные, и нет) при работе используют различные данные, но где эти данные хранятся?
Ядро обеспечивает абстракцию для безопасности, оборудования и внутренних структур данных. Например, системный вызов open() используется для получения дескриптора файла в Python, C, Ruby и других языках программирования. Вряд ли бы вы хотели, чтобы ваша программа работала с XFS на уровне битов, поэтому ядро предоставляет системные вызовы и работает с драйверами. Фактически этот системный вызов настолько распространен, что является частью библиотеки POSIX .
Краткое определение:
👉 Пользовательское пространство представляющее собой набор местоположений, в которых выполняются обычные пользовательские процессы (т. е. все, кроме ядра). Роль ядра состоит в том, чтобы управлять приложениями, работающими в этом пространстве, от взаимодействия друг с другом и с машиной.
👉 Пространство ядра , то есть место, где хранится и выполняется код ядра.
Пользовательское пространство имеет доступ к ограниченной памяти, ядро имеет всю память.
И чтобы работать приложения взаимодествуют через интерфейс, которое называется системным вызовом.
Что такое userspace, kernelspace? Чем они отличаются?
Под пользовательским пространством понимается весь код операционной системы, который находится вне ядра.
Большинство Unix-подобных операционных систем (включая Linux) поставляются с разнообразными предустановленными утилитами, средствами разработки и графическими инструментами — это все приложения пространства пользователя.
Все пользовательские приложения (и контейнеризированные, и нет) при работе используют различные данные, но где эти данные хранятся?
Ядро обеспечивает абстракцию для безопасности, оборудования и внутренних структур данных. Например, системный вызов open() используется для получения дескриптора файла в Python, C, Ruby и других языках программирования. Вряд ли бы вы хотели, чтобы ваша программа работала с XFS на уровне битов, поэтому ядро предоставляет системные вызовы и работает с драйверами. Фактически этот системный вызов настолько распространен, что является частью библиотеки POSIX .
Краткое определение:
👉 Пользовательское пространство представляющее собой набор местоположений, в которых выполняются обычные пользовательские процессы (т. е. все, кроме ядра). Роль ядра состоит в том, чтобы управлять приложениями, работающими в этом пространстве, от взаимодействия друг с другом и с машиной.
👉 Пространство ядра , то есть место, где хранится и выполняется код ядра.
Пользовательское пространство имеет доступ к ограниченной памяти, ядро имеет всю память.
И чтобы работать приложения взаимодествуют через интерфейс, которое называется системным вызовом.
❤🔥16👍5❤1🥰1
Очередной #дайджест для девопсов
❎ Масштабирование кластера в облако — как расширить существующий 3-нодовый кластер Kubernetes в облачной виртуалке
❎ Как работать с Kubectl Debug Command — автор рассказывает о штуке, которая появилась в Kubernetes 1.18 и на что она способна
❎ Рекомендации и примеры для образов Docker — как автоматически проверять образы в конвейерах CI/CD, прежде чем поместить их на прод
❎ БеКон 2024 — специализированная конференция по безопасности контейнерных приложений и контейнерных сред. Состоится 5 июня
❎ Надежная поставка программного обеспечения — методы построения гибкого и безопасного конвейера разработки кода
❎ Масштабирование кластера в облако — как расширить существующий 3-нодовый кластер Kubernetes в облачной виртуалке
❎ Как работать с Kubectl Debug Command — автор рассказывает о штуке, которая появилась в Kubernetes 1.18 и на что она способна
❎ Рекомендации и примеры для образов Docker — как автоматически проверять образы в конвейерах CI/CD, прежде чем поместить их на прод
❎ БеКон 2024 — специализированная конференция по безопасности контейнерных приложений и контейнерных сред. Состоится 5 июня
❎ Надежная поставка программного обеспечения — методы построения гибкого и безопасного конвейера разработки кода
❤🔥3👍2
⭐🎤 Как не облажаться с докладом на IT-конференции
Готовитесь к докладу на IT-конференции? Не хотите оказаться в роли «того самого» докладчика, на которого все жалуются в кулуарах? Узнайте, как не облажаться и сделать свой доклад полезным и запоминающимся.
🔗 Читать статью
🔗 Зеркало
Готовитесь к докладу на IT-конференции? Не хотите оказаться в роли «того самого» докладчика, на которого все жалуются в кулуарах? Узнайте, как не облажаться и сделать свой доклад полезным и запоминающимся.
🔗 Читать статью
🔗 Зеркало
🥰3❤2🔥2
😎😎 Avito Database meetup #1
Доклад о том, как устроена платформа DBaaS в Авито. А ещё выступления платформенных инженеров об их работе со stateful в K8s, интеграции классических СУБД к DBaaS и управлении данными в multi-cluster (multi-dc).
05:04 — Вступление
08:00 — Платформа DBaaS: зачем и как
31:57 — Stateful-приложения в Kubernetes (DB edition)
01:34:19 — Платформа управления базами данных в multi-cluster(multi-dc) kubernetes–среде
01:59:47 — Особенности адаптации классических СУБД к платформе DBaaS (на примере PostgreSQL)
#мероприятие
Доклад о том, как устроена платформа DBaaS в Авито. А ещё выступления платформенных инженеров об их работе со stateful в K8s, интеграции классических СУБД к DBaaS и управлении данными в multi-cluster (multi-dc).
05:04 — Вступление
08:00 — Платформа DBaaS: зачем и как
31:57 — Stateful-приложения в Kubernetes (DB edition)
01:34:19 — Платформа управления базами данных в multi-cluster(multi-dc) kubernetes–среде
01:59:47 — Особенности адаптации классических СУБД к платформе DBaaS (на примере PostgreSQL)
#мероприятие
❤🔥15👍4❤2🥰1
HULL — Helm Uniform Layer Library
Репозиторий содержит библиотечную диаграмму Helm HULL. Она предназначена для упрощения создания, обслуживания и настройки объектов Kubernetes в Helm charts и может быть добавлена в любую Helm chart в качестве дополнения для расширения функциональности без какого-либо риска нарушения существующих конфигураций.
Саму карту и всю документацию, связанную с ней, можно найти в корневой папке hull.
#софт
Репозиторий содержит библиотечную диаграмму Helm HULL. Она предназначена для упрощения создания, обслуживания и настройки объектов Kubernetes в Helm charts и может быть добавлена в любую Helm chart в качестве дополнения для расширения функциональности без какого-либо риска нарушения существующих конфигураций.
Саму карту и всю документацию, связанную с ней, можно найти в корневой папке hull.
#софт
🔥16❤2👍2🥰2
🛟🛟 Настройка кластера Kubernetes с помощью Proxmox и k3s
В этой статье рассматривается, как быстро добавить новую ноду в кластер Kubernetes менее чем за 5 минут. Автор продемонстрирует, как интегрировать ПК в существующий кластер. Следуя этому руководству, вы узнаете, как расширить возможности своего кластера и получить ценную информацию о внутренней работе облачных вычислений.
Читать статью
#туториал
В этой статье рассматривается, как быстро добавить новую ноду в кластер Kubernetes менее чем за 5 минут. Автор продемонстрирует, как интегрировать ПК в существующий кластер. Следуя этому руководству, вы узнаете, как расширить возможности своего кластера и получить ценную информацию о внутренней работе облачных вычислений.
Читать статью
#туториал
🔥15👍4❤1
Релиз Wireshark 4.2.5
👉 Одним из самых значимых нововведений стало добавление поддержки протокола QUIC (Quick UDP Internet Connections), который зарекомендовал себя как перспективный транспортный протокол для повышения производительности веб-приложений.
👉 Ещё одним заметным улучшением Wireshark 4.2.5 является расширенная поддержка VXLAN (Virtual Extensible LAN) — технологии виртуализации сети, которая позволяет создавать масштабируемые и гибкие виртуальные сети поверх существующих физических инфраструктур.
👉 Разработчики Wireshark 4.2.5 также уделили внимание улучшению пользовательского интерфейса. Нововведения включают возможность настройки размера шрифта в главном окне, что помогает адаптировать приложение под различные разрешения экрана и предпочтения пользователей.
#новости
👉 Одним из самых значимых нововведений стало добавление поддержки протокола QUIC (Quick UDP Internet Connections), который зарекомендовал себя как перспективный транспортный протокол для повышения производительности веб-приложений.
👉 Ещё одним заметным улучшением Wireshark 4.2.5 является расширенная поддержка VXLAN (Virtual Extensible LAN) — технологии виртуализации сети, которая позволяет создавать масштабируемые и гибкие виртуальные сети поверх существующих физических инфраструктур.
👉 Разработчики Wireshark 4.2.5 также уделили внимание улучшению пользовательского интерфейса. Нововведения включают возможность настройки размера шрифта в главном окне, что помогает адаптировать приложение под различные разрешения экрана и предпочтения пользователей.
#новости
❤🔥19👍3❤2🥰1
Bruno — опенсорсная IDE для изучения и тестирования API.
Это новый и инновационный API-клиент, призванный кардинально изменить существующий порядок, представленный Postman и аналогичными инструментами.
Bruno хранит коллекции в папке в ФС. Используется простой язык разметки текста Bru для сохранения информации о запросах API.
Вы можете использовать Git или любой другой инструмент управления версиями для совместной работы. Софт доступен только в автономном режиме.
#софт
Это новый и инновационный API-клиент, призванный кардинально изменить существующий порядок, представленный Postman и аналогичными инструментами.
Bruno хранит коллекции в папке в ФС. Используется простой язык разметки текста Bru для сохранения информации о запросах API.
Вы можете использовать Git или любой другой инструмент управления версиями для совместной работы. Софт доступен только в автономном режиме.
#софт
🔥17❤5👍2🥰1
Очередной #дайджест для DevOps-ов
🔴 werf 2.0 — новый движок развёртывания Nelm и 300+ релизов за четыре года
🔴 Завершение крупнейшей миграции в истории Kubernetes — описание длинного пути миграции с большим количеством затронутых компонентов и критических путей разработки код
🔴 Освоение журналов аудита Kubernetes — как настраивать, управлять и интерпретировать эти журналы, критически важно для поддержания безопасности и соответствия требованиям в средах Kubernetes
🔴 Как проверить установку Docker — Docker Desktop vs. Docker Engine
🔴 Работа с хранилищами в Kubernetes — руководство для инженеров
🔴 werf 2.0 — новый движок развёртывания Nelm и 300+ релизов за четыре года
🔴 Завершение крупнейшей миграции в истории Kubernetes — описание длинного пути миграции с большим количеством затронутых компонентов и критических путей разработки код
🔴 Освоение журналов аудита Kubernetes — как настраивать, управлять и интерпретировать эти журналы, критически важно для поддержания безопасности и соответствия требованиям в средах Kubernetes
🔴 Как проверить установку Docker — Docker Desktop vs. Docker Engine
🔴 Работа с хранилищами в Kubernetes — руководство для инженеров
🥰6❤5👍5🎉5👏4