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

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

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

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

РКН: https://gosuslugi.ru/snet/6798b4e4509aba565
Download Telegram
✍️😎 Пишем Ansible-модули для управления разными системами хранения данных через Swordfish

Большинство современных систем хранения данных (СХД) предоставляют REST API для управления ими, включая настройку, конфигурирование, выполнение различных команд, получение логов, работу с пользователями и т.д. В зависимости от производителя СХД REST API могут отличаться друг от друга. Если вы используете несколько разных систем, их одновременная поддержка становится проблемой: нужно учитывать многообразие протоколов, интерфейсов, команд и способов взаимодействия с API.

О Swordfish и преимуществах спецификации

Swordfish — это стандарт управления хранилищами данных, разработанный SNIA (Storage Networking Industry Association). Эта организация объединяет производителей и пользователей СХД с целью разработки и поддержки отраслевых стандартов и технологий хранения данных. Swordfish предоставляет богатый функционал для управления ресурсами хранилищ данных, конфигурации и мониторинга систем, поддерживает механизмы аутентификации и авторизации для обеспечения безопасности. Спецификация Swordfish призвана решить большое количество проблем с универсальностью управления СХД в современной инфраструктуре, а за развитием и улучшением стандарта стоит активное сообщество.

Продолжение тут

#туториал
🎉225👍2
🤔✏️ Обзор одноцелевых дистрибутивов Linux

Многие из тех, кто устанавливает дистрибутив Linux для одной-единственной цели, например, для работы с контейнерами, предпочитают развёртывание по принципу «поставил и забыл». На конференции FOSDEM 2023, состоявшейся в Брюсселе, было представлено несколько проектов из разряда таких «минимальных дистрибутивов Linux». Все они — Fedora CoreOS, Ubuntu Core, openSUSE MicroOS и Bottlerocket OS — решают такие задачи по-своему. Из выступлений на FOSDEM можно составить интересную перспективу, демонстрирующую, в чём эти проекты отличаются на уровне применяемых подходов.

Изучить дистрибутивы

#гайд
2👏2
Шпаргалка по командной строке CMD

SETX - утилита для создания системных переменных
SFC - проверка и восстановление системных файлов Windows
SHARE - просмотр, создание и удаление разделяемых в локальной сети ресурсов
SHUTDOWN - выключение или перезагрузка компьютера
SLEEP - задержка по времени в пакетном файле
SLMGR - управление лицензированием программного обеспечения Windows
SORT - сортировка строк в текстовом файле
START - запуск приложения или командного файла
STORDIAG - диагностика системы хранения данных в Windows 10
SUBST - назначение (отмена назначения) каталогу буквы диска
SxSTrace - диагностическое средство трассировки компонент системы
SYSTEMINFO - отображение информации о системе
TAKEOWN - изменение владельца файла или каталога
TAR - архивирование данных архиватором tar в Windows 10
TASKKILL - завершение процессов на локальной или удаленной системе.
TASKLIST - отображение списка выполняющихся приложений и служб Windows
TIME - отображение и установка системного времени
TELNET - telnet-клиент Windows
TFTP - TFTP-клиент Windows
TIMEOUT - задержка в пакетных файлах
TITLE - изменение заголовка окна CMD.EXE
TRACERT - трассировка маршрута к удаленному узлу
TREE - отображение структуры каталога в графическом виде
TSCON - подключение к сессии удаленного рабочего стола (RDP).
TSDISCON - отключение сессии удаленного рабочего стола (RDP).
TSKILL - завершение процессов, адаптированное для среды сервера терминалов (RDP).
TYPE - вывод на экран содержимого текстового файла
TypePerf - вывод сведений о производительности на экран или в журнал
TZUTIL - управление часовыми поясами в среде Windows
VER - отображение версии операционной системы
VERIFY - управление режимом проверки записываемых файлов
VOL - вывод данных метки тома
VSSADMIN - администрирование службы теневого копирования томов.
W32TM - управление службой времени Windows
WAITFOR - организация обмена сигналами между компьютерами
WBADMIN - управление резервным копированием и восстановлением в Windows
WEVTUTIL - управление событиями в Windows
WHERE - определение места расположения файлов
WHOAMI - вывод имени текущего пользователя
WINDIFF - сравнение содержимого файлов
WinMgmt - обслуживание инструментария управления Windows (WMI)
WINRM - удаленное управление Windows из командной строки
WINRS - удаленная командная строка (Remote Shell)
WINSAT - средство проверки производительности Windows
WMIC - выполнение команды WMI в командной строке
WSCollect - получить CAB-файл с копиями журналов Windows 10 на рабочем столе
Wscript - сервер сценариев Windows с графическим интерфейсом
WSL - выполнение команд Linux и конфигурирование параметров подсистемы Windows для Linux (WSL) в Windows 10
WSLconfig - конфигурирование параметров подсистемы Windows для Linux (WSL) в Windows 10
XCOPY - копирование файлов и папок
👍96🔥5👏5🥰3
#вопросы_с_собеседования

Что такое docker и какие инструменты linux лежат в основе? Для чего он используется?


Docker базируется на технологиях:

🔸 namespaces — обеспечивает изоляцию (например, можно айдишники процессов разместить в разных контейнерах)
🔸 cgroups — позволяет управлять группой процессов, и управлять их ресурсами
🔸 capabilities
— позволяет дать некоторые рут привелегии процессам или исполняемым файлам. Например, изменить UID процесса на 0, или дать возможность монтировать файловые системы.
🔸 overlay namespaces
— (overlayFS, overlay2-драйвер) - файловая система, которая умеет работать "слоями". Не сохранять каждый раз новые файлы, а наслаивать один слой на другой, тем самым экономя место на диске и время создания контейнера.

А вот докер — это уже штука, которая всеми этими технологиями рулит, удобным для нас образом.

Компоненты докера:

🔻 Docker Daemon — тот самый Container Engine; запускает контейнеры.
🔻 Docker CLI — утилита по управлению Docker.
🔻 Dockerfile — инструкция по тому, как собирать образ.
🔻 Image — образ, из которого раскатывается контейнер.
🔻 Container
🔻 Docker registry — хранилище образов.

На Docker_host работает Docker daemon и запускает контейнеры.
Client — передаёт команды: собери образ, скачай образ, запусти контейнер. Docker daemon ходит в registry и выполняет их. Docker-клиент может обращаться и локально (к юникс-сокету), и по TCP с удалённого хоста.

Docker daemon (демон) — это серверная часть, работающая на хост-машине: скачивает образы и запускает из них контейнеры, создаёт сеть между контейнерами, собирает логи. Когда мы говорим «создай образ», этим тоже занимается демон.

Docker CLI — клиентская часть Docker, консольная утилита для работы с демоном. Может работать не только локально, но и по сети.
🔥42👍31
🤔 Очередной #дайджест для DevOps-ов

🔺 CNCF White Paper по observability — инструменты, виды, стратегии и проблемы

🔺 Создание современных асинхронных систем — как создать устойчивую и масштабируемую асинхронную систему для управления сложным рабочим процессом

🔺 Настройка Honeypot в Mikrotik — что это такое, зачем он нужен и как его настраивать и использовать в MikroTik

🔺 Форматирование файловой системы XFS — инженеры Oracle пишут о работе mkfs.xfs и о том, что происходит в процессе форматирования раздела в этой файловой системе

🔺 Sudo без бинарного setuid или SSH через UNIX-сокет — странная, но занятная попытка отказаться от sudo и заменить его соединением по SSH через сокет
👍86🎉5🔥4🥰4
🔧🔧 Bitwarden в действии: автоматизация смены ключей и паролей для AWS

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

Итак, что делать, когда ручное обновление ключей и паролей становится скучной и малоэффективной задачей? В этой статье вы узнаете, как можно объединить удобство использования Bitwarden с эффективными методами автоматизации для управления учетными данными AWS. Представьте себе — больше нет монотонного ввода паролей и обновлений ключей вручную. Но для этого придется немного постараться.

Продолжение здесь

#гайд
27👍4🔥1
Radius

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

Ключевые особенности платформы:

Совместная работа в команде: приложения и среды Radius позволяют разработчикам выполнять операции по определению и доставке приложений.
Рецепты инфраструктуры: заменяемая инфраструктура, соответствующая лучшим практикам организации и политике ИТ по умолчанию.
График приложения: понимание того, как службы и инфраструктура в приложении взаимосвязаны.
Нейтральность к облаку: развертывание в среде разработки, локальных и облачных средах обеспечивает согласованность работы.
Постепенное внедрение: интегрируйте Radius в существующие рабочие процессы и каталоги шаблонов инфраструктуры в виде кода.

Подробнее об инструменте тут

#туториал
🎉15❤‍🔥132🥰1
doas – утилита, которая позволяет обычным пользователям выполнять задачи от имени root, так же как это делает sudo. Она была разработана проектом OpenBSD как минималистичная альтернатива sudo.

Запускайте apt install doas.

Так как doas не входит по умолчанию в коробочные версии linux, утилита требует немного бОльших настроек, в отличие от sudo. Но конфигурация намного проще для понимания чем sudo. Настраивается все это через файл /etc/doas.conf. Если файла нет — создайте.

Сымитируем поведение sudo и позволим пользователю выполнять любые команды от пользователя root. Добавим в конфиг такое:

permit persist user as root


Теперь пользователь user сможет выполнять команды от root + пользователь получает льготный период, когда не нужно вводить пароль в течение нескольких минут после последовательных команд doas.

Допустим нужно сделать подобное, но для определенной группы, добавляем в конфиг строчку:

permit persist :wheel as root


Теперь все кто в группе wheel смогут побыть рутом. Также и с белым списком команд, которые можно выдать для запуска без пароля:

permit persist user as root
permit nopass :user as root cmd apt

Да, конфиг более читабельный чем у sudo

Конфиг sudo
%wheel ALL=(ALL) NOPASSWD: ALL

Конфиг doas
permit nopass :wheel as root


Ну и с помощью doas можно запустить root shell такой командой:

doas -s
❤‍🔥14👍81🔥1🌚1
Как оцениваете свой уровень знания ОС Linux по десятибальной шкале?

Вопрос с подвохом. Ответ «на десять» для заядлого линуксоида все равно что красная тряпка для быка, поэтому вы рискуете провести следующие два часа своей жизни максимально увлекательно :)
👍42
🧑‍🍳🧑‍🍳 Синхронизация локальных изменений с docker/kubernetes контейнером

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

Здесь подробный рассказ

#туториал
3🥰1
🤔 Очередной #дайджест для DevOps-ов

👉 AgileOps: Jira-центричный подход — как убрать препоны между бизнесом, DEV, OPS, SEC, QA и обеспечить прозрачность процессов можно разрабатывать свою автоматизацию для Jira

👉 AWS Weekly Roundup — Amazon Route53, Amazon EventBridge, Amazon SageMaker и еще чуток

👉 Изучаем Ansible Inventory — рассматривается базовая функциональность, управление переменными и комбинирование нескольких источников Inventory и варианты работы с динамическими Inventory

👉 ScyllaDB на Kubernetes — как запускать Intense Workloads с помощью Spot Instances

👉 Опыт масштабирования Kubernetes на 2k узлов и на 400k подов — рассмотрено как масштабируется Kubernetes и как можно улучшить масштабируемость, настраивая параметры кластера
👍7🎉5🔥4👏3😁3
#вопросы_с_собеседования

Что за none образы можно увидеть в docker images?


Каждый образ в докере состоит из слоев, и имеет дочерние связи с другими слоями. По умолчанию они лежат в /var/lib/docker/graph. И когда мы закачиваем новую версию образа, он подгружает слой раз за разом. И получается что none это лишь один из слоев. Этот образ называется промежуточным. Их можно увидеть с помощью docker images -a Также есть обособленные образы none:none. Например, когда мы собираем примерно такой же образ, но, например, с иной версией ОС. В этом случае будет создан именно такой образ. Поскольку мы пересобрали образ с помощью докерфайла, а старая система стала обособленной.

Можно почистить так:

docker rmi $(docker images -f "dangling=true" -q)
5🔥5
💰⬆️ 10 факторов, влияющих на зарплату программиста

Узнайте 10 факторов, как превратиться из рядового программиста в высокооплачиваемого специалиста и научиться аргументированно запрашивать зарплату выше рынка.

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

#новость
2👍2🥰2
Рассмотрим полезный набор хоткеев для эффективной работы в оболочке bash.

Навигация

Ctrl+A переместить курсор в начало строки
Ctrl+E переместить курсор в конец строки
Ctrl+F переместить курсор на один символ вправо
Ctrl+B переместить курсор на один символ влево
Alt+B / Esc+B переместить курсор влево на одно слово


Редактирование


Ctrl+U удалить все и вернуться в начала строки
Ctrl+K удалить все после курсора
Ctrl+W удалить слово перед курсором
Alt+D удалить слово после курсора
Ctrl+Y вернуть удаленное
Ctrl+D удалить символ под курсором
Ctrl+H аналогично backspace
Alt+T смена позиции текущего слова на предыдущее
Ctrl+T замена местами двух символа перед курсором
Alt+U перевод слова в заглавные после курсора
Alt+L перевод слова в строчные после курсора
Ctrl+_ отмена последнего ввода


Bash History

Ctrl+R режим обратного поиска
Ctrl+P переход к предыдущей команде
Ctrl+N переход к следующей команде
Ctrl+O выполнить найденную команду
Ctrl+G выход из режима поиска
!! выполнить предыдущую команду
!vim выполнить последнюю команду, которая начиналась на vim
!vim:p вывести последнюю команду, которая начиналась на vim
!n запустить n команду из history


Общие хоткеи


Ctrl+C завершить команду
Ctrl+L очистить экран
Ctrl+S приостановить вывод, остановить прокрутку
Ctrl+Q возобновить прокрутку
Ctrl+D закрыть оболочку
Ctrl+Z приостановить процесс
👍25🎉5👏1
Forwarded from Библиотека программиста | программирование, кодинг, разработка
🤖 Итоги недели в мире ИИ и обзоры новых сервисов

Мы написали статью на VC, которая основана на очередном выпуске нашей рассылки про последние новости и тенденции в мире ИИ. Залетайте и читайте!

👇Ниже — мини-подборка из статьи 👇

📰 Новости

▫️ OpenAI объявила о запуске долгожданного магазина кастомных чат-ботов.
▫️ В Пасадене (штат Калифорния) открывается первая закусочная CaliExpress by Flippy, полностью управляемая ИИ.
▫️ NVIDIA выпустила модель для распознавания речи Parakeet, которая по всем показателям превосходит OpenAI Whisper.
▫️ Использование ИИ в совместном научном проекте Microsoft и Тихоокеанской северо-западной национальной лаборатории в течение недели помогло определить новый элемент, который поможет снизить на 70% использование лития в батареях. Без ИИ такое исследование заняло бы по меньшей мере 20 лет.
▫️ Компания ByteDance выпустила новую модель MagicVideo-V2 для генерации видео.

🛠 Инструменты

◾️ Auto Wiki — генерирует вики-документацию для GitHub репозиториев.
◾️ Code to Flow — визуализирует, анализирует и объясняет код, написанный на всех популярных языках и фреймворках.
◾️ Concepto — платформа для создания прототипов веб-приложений.
◾️ Afforai — выполняет суммаризацию, перевод и поиск по множеству документов.
◾️ Corgea — исправляет уязвимые фрагменты кода.
◾️ Jan — опенсорсный оффлайновый чат-бот.
◾️ Plus AI — плагин для Google Slides: делает профессиональные презентации, персональные и командные дашборды, любые отчеты.

🤙 Сделай сам

🔸 WikiChat — опенсорсный инструмент для коррекции галлюцинаций с помощью информации из Википедии.
🔸 Подробная шпаргалка и советы по созданию продвинутых RAG.
🔸 OpenVoice — опенсорный инструмент для мгновенного клонирования голоса.

🎓 Туториалы

🔹 Туториал по работе с новым API Query Pipelines показывает примеры создания простых линейных цепочек и сложных ациклических графов из модулей LlamaIndex.
🔹 Туториал по объединению LLM с помощью mergekit детально разбирает 4 основных метода объединения моделей.

#чтопроисходит
Please open Telegram to view this post
VIEW IN TELEGRAM
3👍2
#memes

Когда повесил кучу тикетов на разрабов 😆
😁5👍1