Библиотека девопса | 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
💰 Обзор зарплат: сколько сейчас зарабатывают айтишники

В этой статье обсуждаем самую животрепещущую тему — зарплату. Присоединяйтесь :)

Читать

#новость
👍4
Вы готовы, дети? Скоро подвезут Linux под 🍏 😯

Программист Гектор Мартин, ранее портировавший Asahi Linux на платформу Apple, объявил о старте нового проекта — вместе с разработчиками Fedora он начал перенос на Mac популярного дистрибутива Fedora. Энтузиаст уже рассказал, когда состоится релиз новой версии ОС.

Главная цель проекта с рабочим названием Fedora Asahi Remix — обеспечить полную поддержку Linux на компьютерах с процессорами Apple Silicon. Итогом работы должна стать сборка Fedora для Mac на базе чипов M1 и M2, также в планах находится минимальная версия дистрибутива и серверная модификация с графическими оболочками GNOME и KDE.

По словам программистов, разработка стала бы намного проще, если бы Apple хоть как-то помогала энтузиастам. Например, одна из проблем — это работа с аудио. В динамиках компьютеров Mac нет какого-либо механизма защиты от перегрузки, поэтому они полностью управляются программно. Другими словами, вывести их из строя можно слишком сильной громкостью с помощью одной строчки кода.

Релиз Fedora Asahi Remix намечен на конец августа текущего года.

Ознакомиться

#новость
👍4
Вопрос по Bash-у
#вопросы_с_собеседований

Как выполнить фильтрацию вывода команды, чтобы на экран были выведены только ошибки (STDERR), игнорируя STDOUT?
...............................................................................................................
cmd 2>&1 >/dev/null | grep что-то
👍61🌚1
«Библиотека программиста» ищет девушек, работающих в IT — разработке, тестировании, информационной безопасности и других направлениях

Мы проводим новое исследование, посвященное специфике работы женщин в IT — от сложностей и недостатков в работе до гендерных стереотипов.

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

Ссылка тут.
👍1
🧑‍💻 Улучшаем BARSiC: как проверяли и совершенствовали алгоритм консенсуса в кластере

В статье на Хабре команда ВКонтакте подробно рассказывает о том, как появился BARSiC, как в рамках специального проекта верифицировали выбранный для него алгоритм и попутно исправили найденную в нём ошибку.

Читать
👍2🥱1
😎 Очередной #дайджест полезных статей по DevOps-у:

✍️ Web Application Firewall — одна из наиболее часто используемых технологий для защиты web-приложений в режиме runtime.

✍️ Валидация Admission Policies в Kyverno — позволяет осуществлять validating, mutating и generating операции с ресурсами Kubernetes.

✍️ История Fedora Linux — от первого волонтерского проекта до полигона RedHat.

✍️ Шпаргалка по journalctl в Linux — использование journalctl, основные возможности и её опции.

✍️ Container Security Site — крутое собрание советов и решений с ресурсами безопасности контейнеров.
👍4
😇 Встретился крутой сборник по bash-у.

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

В книге полный набор вариантов применения: строки, массивы, циклы, файлы, производительность, математика и еще масса тем. В общем — книженция-огонь 🔥

#новость
👍4🔥1
Права доступа к файлам в Linux

Разграничение доступа — это главная фишка Linux. В Windows происходит бардак и вирусная вакханалия именно по причине «все всем можно».

В Linux есть три параметра доступа:

Чтение - разрешает получать содержимое файла (папки), но на запись нет.
Запись - разрешает записывать новые данные в файл или изменять существующие, а также позволяет создавать и изменять файлы и каталоги;
Выполнение - устанавливается для всех программ и скриптов, так система понимает, что «ЭТО» нужно запустить.

Для пущей секьюрности есть еще три категории юзеров, улучшающие результат скрещивания с параметрами доступа:

Владелец - владелец имеет все права (если его не кастомизировали), чтение, запись и выполнение.
Группа - любая группа пользователей, существующая в системе и привязанная к файлу.
Остальные - все пользователи, кроме владельца и пользователей, входящих в группу файла.

Ну и совсем замороченная штука — спец.биты:

SUID - если этот бит установлен, то при выполнении программы, id пользователя, от которого она запущена заменяется на id владельца файла.
SGID - тоже самое, только для групп.
Sticky-bit - если он установлен, то пользователи могут только создавать, читать и выполнять файлы, но не могут удалять файлы, принадлежащие другим пользователям.

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

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

Особенности:

👉 Удобный дашборд для управления паролями в разных проектах
👉 Клиентские SDK для получения паролей по запросу
👉 CLI для удобного управления
👉 Встроенная интеграция с GitHub, Vercel, Netlify и другими
👉 Автоматическое развертывание Kubernetes
👉 Полный контроль над данными
👉 Версионированиие паролей и восстановление

Как попробовать:

Для Linux:
git clone https://github.com/Infisical/infisical && cd "$(basename $_ .git)" && cp .env.example .env && docker-compose -f docker-compose.yml up

Для Windows:
git clone https://github.com/Infisical/infisical && cd infisical && copy .env.example .env && docker-compose -f docker-compose.yml up

#новость
🔥3
⚙️⚙️ Автоматическое масштабирование Kubernetes

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

Горизонтальная пода автоматического масштабирования (HPA)
Вертикальная пода автоматического масштабирования (VPA)
Кластерный автоскалер (CA)

🥷 Тема обширная и серьезная, поэтому предлагаем перейти к статье, где разбираются различные методы автомасштабирования Kubernetes, которые помогают в автоматизированном процессе масштабирования ресурсов, необходимых приложению.
👍6
Cloud Hypervisor — это опенсорсный Virtual Machine Monitor (VMM), который работает поверх гипервизора KVM и Microsoft (MSHV).

Проект фокусируется на запуске современных Cloud Workloads на распространенных аппаратных архитектурах. Это означает современные операционные системы, в которых большая часть I/O операций обрабатывается паравиртуализированными устройствами (например, virtio), отсутствие требований к устаревшим устройствам и 64-разрядные процессоры.

Cloud Hypervisor реализован в Rust и основан на Rust VMM crates.

Эту прелесть можно собрать из исходников или из пакетов.

#новость
👍1
Ищем копирайтера

Нам нужен человек, который:
— Любит IT и русский язык.
— Понимает разницу между бэкендом и фронтендом, OWASP и MISRA, функциональным программированием и ООП, микроконтроллером и миникомпьютером, UX и UI.
— Имеет опыт работы от 1 года.
— Будет плюсом, если вы программируете на каком-нибудь языке на уровне стажера/джуна.

Что нужно делать:
— Готовить подборки, ТОПы книг, ютуб- и телеграм-каналов по языкам программирования.
— Делать расшифровки топовых Ютуб-роликов по теме программирования и оформлять их в виде статей.
— Готовить новостные заметки.
— Актуализировать старые статьи.
— Брать интервью у экспертов. Мы поможем с поиском экспертов.
— Иногда писать небольшие рекламные посты в телеграм.
— Писать статьи с кодом, переводить статьи (по желанию, оплачивается отдельно).

Можно использовать нейронки?
— Да, главное, чтобы материал получился интересный.

Условия:
— Белая зарплата: 50 000 руб.
— Возможность работать удаленно.

👉Присылайте свои резюме: hello@proglib.io
👍1
Неожиданно интересная находка — создание временного почтового ящика из консоли 😮

tmpmail — это утилита командной строки, написанная на POSIX sh. Он использует 1secmail's API для получения электронных писем.

Зачем это нужно?

Самая частая ситуация в работе — зарегаться в каком-то сервисе и вдруг не зайдет, то спам не будет надоедать.

Необходимые зависимости:

w3m
curl
jq
xclip

Установка:

$ curl -L "https://raw.githubusercontent.com/sdushantha/tmpmail/master/tmpmail" > tmpmail && chmod +x tmpmail

$ mv tmpmail ~/bin/

Или через AUR:

$ yay -S tmpmail-git

Далее, Docker:

Понадобятся docker и clone this repo

$ docker build -t mail .;
$ docker run -it mail;

Пользуемся:

$ tmpmail --generate
xoithrjagpx@1secmail.net
🔥3👍1
😎 Очередной #дайджест полезных статей по DevOps:

✍️ Linux для игр, Windows для работы. С чего начать, как установить и настроить — настройка машины с Windows, пободаться с видео-драйверми, дистрибутивы и сама установка (будет весело и больно 😂)

✍️ Пора в облака: преимущества облачной инфраструктуры — бесплатный вебинар состоится 29 августа в 12:00. Актуальные тренды, развитие и выгода от миграции.

✍️ Fluid Attacks: требования по ИБ при разработке ПО — что тестировать, а что нет, и выяснить, что считается уязвимостью.

✍️ UEFI, SecureBoot и загадочный TPM — интересная задача по автоматической расшифровке и монтировании разделов и удачной загрузке/ребуте ОС.

✍️ Лучшие практики безопасности Kubernetes за 5 шагов — оптимизация операций, ускорение доставки, повышение скорости развертывания и все, что может пойти не так
👍4
Думайте про отказоустойчивость (любую) также, как и про бэкапы, поскольку если пропустите момент возросшей нагрузки на сервер, думать нужно будет уже о поднятии упавшего...

Как раз, весьма кстати, попался гайд про облака, Kuber и масштабирование, а еще, борьбу за отказоустойчивость сервисов, развернутых в Yandex Managed Service for Kubernetes.

Чтобы начать

Должно быть настроено свое облако в Yandex Cloud и добавлен платежный аккаунт.
Еще понадобятся:

yc
kubectl
terraform с настроенным ~/.terraformrc
удобный текстовый редактор для YAML и HCL, например Visual Studio Code

Чтобы использовать terraform для управления инфраструктурой сначала нужно создать сервисный аккаунт, от лица которого будут создаваться ресурсы.
Перейдем в каталог в облаке -> Сервисные аккаунты -> Создать сервисный аккаунт. Введем произвольное имя, описание по желанию, а также назначим роль admin, чтобы у terraform была возможность создавать любые ресурсы, а также назначать роли.


Автоматическое масштабирование

В Yandex Managed service For Kubernetes поддерживается три вида автоскейла:

Cluster Autoscale
HPA
VPA

В Kubernetes поддерживается HPA и VPA. При горизонтальном масштабировании создается ресурс HPA (HorizatalPodAutoscaler), который отслеживает одну из метрик (обычно CPU или кол-во запросов) и увеличивает/уменьшает количество подов, при этом можно задать минимальное и максимальное количество подов.
При вертикальном масштабировании создается ресурс VPA (VerticalPodAutoscaler), автоматический назначающий (или дающий рекомендации) ресурсы для пода.

В общих чертах — все, а подробнее тут
👍31
🔍Насколько легко «войти в айти»?

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

👉Пройдите наш 10-минутный опрос по ссылке.
2
Kubernetes в облаке: настройка безопасного контура

Еще одно мероприятие состоится 29 августа в 11:00.

Cloud Container Engine (CCE) — это облачный сервис, который предоставляет масштабируемые, высокопроизводительные кластеры Kubernetes. Он позволяет легко разворачивать контейнеризированные приложения и управлять ими в публичном облаке Cloud.ru.

В сервисе можно настроить и использовать различные режимы сетевого взаимодействия, в том числе новый режим Turbo — он позволяет напрямую сопоставлять IP-адреса из VPC к POD, а также ассоциировать контейнеры с группами безопасности.

На ивенте вы узнаете:

🔹 Что такое Network Policies и для чего их применяют
🔹 В чем разница между моделями реализации сетевой связанности внутри CCE Turbo и Tunnel Network в CCE
🔹 Какие преимущества по защите сетевой коммуникации между объектами есть у нового кластера CCE Turbo
🔹 В конце выступления в качестве примера спикер покажет, как настроить сообщение между Pods Wordpress и базой MySQL

Будет полезно для:

🔹 Экспертов DevOps
🔹 Cloud-native разработчиков
🔹 Администраторов, аналитиков IT-безопасности и другим техническим специалистам, которые уже работают или планируют работать с Kubernetes

Регистрация

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

Основные ошибки, которые допускают админы: ошибка привилегированного анонимного доступа, которая до сих пор остается глобальной проблемой и запуск kubectl-прокси с аргументами, которые открывают доступ к кластеру из интернета. Эти моменты упоминаются в сети почти также, как байки про rm -rf🤦‍♂️, но так никто и мотает на ус.

Поиск жертв ведется с помощью Shodan, Censys или Zoomeye, а еще, сканируя IP-адреса с помощью ботнетов или masscan и Zgrab.

Часто открыты HTTPS-порты 443 и 6443, HTTP-порты 8001 и 8080, а также 9999.

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

Получив доступ на кластер, можно выполнить всего одну команду, чтобы все узнать:

/api/v1/pods — Вывести доступные поды
/api/v1/nodes — Вывести доступные узлы
/api/v1/configmaps — Вывести конфигурации кластера K8s
/api/v1/secrets — Вывести все секреты, хранящиеся в etcd

В общем, господа, будьте внимательны.
А подробнее изучить материал, можно тут.

#новость
👍31