Dev-Ops.su
306 subscribers
79 photos
4 files
206 links
Полезные утилиты, статьи, доклады и обзоры.
Канал для DevOps, SRE, Архитекторов и прочих *Ops

https://dev-ops.su

#DevOps #SRE #DevSecOps #SecOps #ChatOps #GitOps #DocsOps #MLOps #FinOps #NoOps #CloudOps #CIOps #CDOps #AnyOps #BuzzWordOps

@woozymasta
Download Telegram
Набросал скриптик для запуска в планировщике, который будет добавлять список определенных пользователей во все/корневые группы GitLab.
Для тех, кто держит свой GitLab с целым зоопарком групп, возможно пригодится.

Пример:
У вас есть служебные пользователи для SonarQube, Dependabot или ещё какой нибудь интеграции, которые должны иметь права developer во всех группах, ну что бы интеграции работали нормально. А вот за то, как активно плодятся группы, вы не отвечаете, и эта штука в шедуллере поможет держать доступы в актуальном состоянии.

#gitlab

https://github.com/WoozyMasta/gitlab-groups-filling-with-users
This media is not supported in your browser
VIEW IN TELEGRAM
xh — удобный и быстрый инструмент для отправки HTTP-запросов. Он максимально воссоздает превосходный дизайн HTTPie, уделяя особое внимание повышению производительности.

Если еще короче, HTTPie переписали с Python на Rust, получился xh.

#cli #curl #httpie #xh

https://github.com/ducaale/xh
slashbase - IDE для совместной работы с открытым исходным кодом для ваших баз данных в вашем браузере. Подключайтесь к своей базе данных, просматривайте данные, запускайте множество команд SQL или делитесь SQL-запросами со своей командой прямо из браузера!

Дэмка для пощупать

#dba #sql #ide

https://github.com/slashbase/slashbase
Pleco — это утилита которая позволяет автоматически удалять облачные ресурсы и ресурсы kubernetes на основе времени жизни (TTL). Защитить ресурсы от удаления можно с помощью защитного тега do_not_delete. В kubernetes пока умеет удалять только namespace, но умеет делать многое с ресурсами AWS, Digital Ocean и Scaleway.

#k8s #kubernetes #aws #digitalocean #cli

https://github.com/Qovery/pleco
Imagor — это быстрый сервер обработки изображений, использует одну из самых эффективных библиотек обработки изображений libvips. Обычно это в 4-8 раз быстрее, чем при использовании самых быстрых настроек ImageMagick и GraphicsMagick.

Это приложение Go, оптимизированное для одновременных запросов. Принимает синтаксис Thumbor и охватывает большинство вариантов использования веб-обработки изображений. Имеет интеграцию с S3.

Вот такой вот шустрый аналог ImageMagick работающий по HTTP

#imagemagic #graphicsmagick #image

https://github.com/cshum/imagor
Думаю будет не лишним сделать бэкап своих личных данных из облака.

Ссылки на экспорт для Google, Apple и Microsoft

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

Не то, что бы суету навести охота. Но вдруг в какое-то утро мы окажемся в чебурнете. Бэкапов много не бывает.

#cheburnet
👍3🤔2😱1
kwatch — помогает отслеживать все изменения в вашем кластере Kubernetes, выявляет сбои в запущенных приложениях в режиме реального времени и мгновенно публикует уведомления в ваши каналы (Slack, Telegram, Discord, Teams и т.п.).

#k8s #kubernetes #observability

https://github.com/abahmed/kwatch
imgpkg — это инструмент, который позволяет пользователям сохранять набор произвольных файлов в виде образа OCI. Одним из основных вариантов использования является хранение конфигурации Kubernetes (обычный YAML, шаблоны ytt, шаблоны Helm и т.д.) в реестре OCI в виде образа.

Позволяет пушить и пулить пакет, содержащий набор файлов и список изображений, от которых они зависят. Также можно всё сохранить как tarball, использует слои Docker. Использует детерминированные права доступа к файлам и метки времени, чтобы сделать изображения воспроизводимыми.

Хм, а может bash портянки и ML датасеты попробовать, на досуге, переселить в реестр контейнеров при помощи этого решения 🤔

#oci #files

https://github.com/vmware-tanzu/carvel-imgpkg
kubectl-kubesec — плагин kubectl (krew) для удобства работы с kubesec. По умолчанию плагин отправляет запросы на сканирование в публичный kubesec.io, но вы можете использовать свой инстанс kubesec.

kubectl krew install kubesec-scan
kubectl kubesec-scan statefulset memcached

#k8s #kubernetes #krew #kubesec

https://github.com/controlplaneio/kubectl-kubesec
Вопрос меня теперь тревожит, а как платить за услуги AWS, GKE, Azure, DigitalOcean и прочих?

Остается только виртуальные карты делать за границей, которые можно пополнить через крипту и найти способ рубль конвертировать в крипту. Или куда и как идти? Это при условии, что SWIFT помашет лапкой.

Думаю большие компании найдут выход и довольно быстро. А как быть с оплатой своего дроплета, который только ради VPN и пары утилит покупался? Какие мысли?

#talks #cheburnet
actions-runner-controller — это Kubernetes контроллер для запуска GitHub Actions self-hosted раннеров.

Захотелось GitHub Aсtions в своем кубере гонять, оказалось уже есть все готовое и с документацией.

#ci #gh #github #actions #github_actions

https://github.com/actions-runner-controller/actions-runner-controller
IndraDB — графовая база данных, написанная на Rust. Первоначальный дизайн IndraDB в значительной степени вдохновлен TAO, графовой БД из Facebook. IndraDB отличается от большинства графовых БД, тем что имеет поддержку свойств.

Особенности:
▫️Направленные и типизированные графы.
▫️JSON свойства привязанные к вершинам и ребрам.
▫️Запросы с несколькими переходами и к индексированным свойствам.
▫️Интеграция через gRPC или прямое встраивание в виде библиотеки.
▫️Подключаемые базовые хранилища данных. Postgresql доступен отдельно.

#graphdb #graph

https://github.com/indradb/indradb
gig — это инструмент командной строки, который поможет вам создавать файлы .gitignore для вашего проекта. Он вдохновлен gitignore.io и контент сгенерированный gig, должен совпадать с контентом, сгенерированным gitignore.io.

И как бонус, кому CLI дергать не хочется, есть экстеншены для IDE работающие с gitignore.io. К примеру для VSC — .gitignore Generator

#gitignore #cli

https://github.com/shihanng/gig
👍4
Хозяйке на заметку. В доке кубера есть рекомендуемый набор типовых меток (labels) для описания приложения.

Да, вам ни кто не запрещает делать свои метки, но для обратной совместимости рекомендуется использовать их.

#k8s #kubernetes #labels

https://kubernetes.io/docs/concepts/overview/working-with-objects/common-labels/
👍1
И еще в тему меток, у opencontainers также есть документ, который рекомендует использовать предложенные в нем правила создания меток (annotations/labels).

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

К примеру для GitLab CI и его встроенных переменных можно добавить что-такое (см. картинку)

#oci #containers #labels

https://github.com/opencontainers/image-spec/blob/main/annotations.md

https://gist.github.com/WoozyMasta/486dd57919fcb8d58f675c25942189f1
👍2
Решил я прикупить домен под Pet-проект, и снова чувствую эту боль с выбором имени и проверкой доступности в разных зонах.

Нашел на просторах интернета кучу разных утилит для проверки доступности домена, но всё не то и не так.

В итоге запилил очередной велосипед bash скрипт — domain-checker

#domains #whois #soa #dns #dig

https://github.com/WoozyMasta/domain-checker
👍1
Outdated — это подключаемый krew модуль к kubectl, который отображает все устаревшие образы, работающие в кластере Kubernetes.

Плагин будет перебирать читаемые неймспейсы и искать поды. Считывает podspec для образов контейнеров и инит контейнеров. Также учитывается sha образа для устранения неоднозначности между разными версиями, отправленными с одним и тем же тегом.

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

В целом выглядит круто, еще бы туда прикрутить работу с dockerconfigjson и была бы пушка.

#k8s #kubernetes #containers #expiration #krew

https://github.com/replicatedhq/outdated
Хотите отечественный ГОСТ TLS себе на сайт?

Ожидаемо ACME DNS Chalange пока не завезли, как и поддержку ГОСТ TLS в браузеры.

Что нужно клиенту? Браузер с поддержкой, а это:
- IE
- Спутник
- Яндекс.Браузер
- Chromium GOST

Ну, а процедура получения сертификата описана на сайте КриптоПРО, готовтесь распечатывать сертификаты на бумаге и отправлять заказным письмом Почтой России. 🤨

https://tlsgost.ru/index3.html
https://tlsca.cryptopro.ru/tls-dist.htm

#chebunet #gost #tls
🤔2😱1
Туда же за React следом идут jest, cachelib, rocksdb, fresco и прочие фреймворки и либы от meta (признана в РФ экстремистской организацией)

И резонный вопрос, а мы (разработчики кто является резидентом РФ) можем использовать OpenSource решения разработанные экстремистской организацией? Чем это грозит?

#cheburnet
👍1🤔1
bitcoin-vps.com - регулярно обновляемый список провайдеров VPS, выделенных серверов, VDS, VPN и электронной почты, с поддержкой оплаты биткойнами.

Разбит на список по качеству услуги, после по гео-зонам, все хостинги помечены ISO кодом страны.

#vps #bitcoin

https://bitcoin-vps.com
👍3
ketall - небольшой плагин для kubectl (krew), чтобы показать действительно все ресурсы kubernetes, а не только те, что возвращаются при выполнении kubectl get all --all-namespaces

Из особенностей (флаги):
▫️--exclude= - исключить ресурсы
▫️--since 1m - вывести созданные за последнюю минуту ресурсы
▫️--namespace= - фильтр по namespace
▫️--only-scope=cluster - фильтр по области ресурсов
▫️--use-cache - использовать серверный кеш ресурсов

#k8s #kubernetes #krew

https://github.com/corneliusweig/ketall