Jet Pilot
- k8s IDE
с открытым исходным кодом. Он был создан из-за разочарования, так как все «красивые» k8s IDE стали коммерческими. Продвинутые пользователи в настоящее время прибегают к таким инструментам, как
k9s
, которые отлично работают, но в значительной степени полагаются на ввод клавиатуры. Jet Pilot
пытается преодолеть эти проблемы использования.Возможности:
- журналы в реальном времени: мгновенный доступ к журналам для активного мониторинга рабочих нагрузок Kubernetes.
- kubernetes: управление объектами: легко управлять объектами k8s, описывать объекты или редактировать их напрямую.
- pod shell: быстро запускайте шелл внутри ваших контейнеров
- интерфейс: удобный интерфейс с настраиваемыми ярлыками для эффективной навигации и работы.
https://github.com/unxsist/jet-pilot
Подсказал: Max Zotov - @sf1nk5
опубликовано в #gitgate
#k8s #ide
GitHub
GitHub - unxsist/jet-pilot: JET Pilot is an open-source Kubernetes desktop client that focuses on less clutter, speed and good…
JET Pilot is an open-source Kubernetes desktop client that focuses on less clutter, speed and good looks. - unxsist/jet-pilot
🔥8👍7
kubectl node-shell
- простой скрипт обертка для запуска root shell
на узлах кластера. (ранее известный как Kubectl Enter
). Удобно если прописать алиасом.
https://github.com/kvaps/kubectl-node-shell
Подсказал: Max Zotov - @sf1nk5
опубликовано в #gitgate
#k8s #shell #kubectl
GitHub
GitHub - kvaps/kubectl-node-shell: Exec into node via kubectl
Exec into node via kubectl. Contribute to kvaps/kubectl-node-shell development by creating an account on GitHub.
👍9🔥6
nginx-tuning
- пример настроек nginx
/ angie
под большие нагрузкиКак правило, правильно настроенный
NGINX
может обрабатывать до 400 тыс. До 500 тыс. запросов в секунду (кластерный). Большинство то, что я видел, составляет от 50 до 80 тыс. (Не кластеризованные) запросов в секунду и 30% нагрузки на CPU
, конечно, это было 2 x Intel Xeon
с включенным HyperThreading
, но это может работать без проблем на более медленных машинах.Вы должны понимать, что эта конфигурация используется в среде тестирования, а не в производстве, поэтому вам нужно будет вдумчиво и с пониманием пытаться реализовать большинство из этих функций с учетом потребностей ваших сервисов.
Отдельную ценность представляют ссылочки в конце описания репки.
https://github.com/denji/nginx-tuning
опубликовано в #gitgate
#nginx #performance #highload #tuning
GitHub
GitHub - denji/nginx-tuning: NGINX tuning for best performance
NGINX tuning for best performance. Contribute to denji/nginx-tuning development by creating an account on GitHub.
👍12🔥7
headlamp
- простой в использовании и расширяемое Web IDE
интерфейс Kubernetes
.Headlamp
был создан для сочетания традиционного набора функций других Web-UIs
/Dashboards
(то есть для перечисления и просмотра ресурсов) с добавленной функциональностью.https://github.com/headlamp-k8s/headlamp
Подсказал: Михаил Исаев - @ismvru
опубликовано в #gitgate
#k8s #ide #web #gui
GitHub
GitHub - kubernetes-sigs/headlamp: A Kubernetes web UI that is fully-featured, user-friendly and extensible
A Kubernetes web UI that is fully-featured, user-friendly and extensible - kubernetes-sigs/headlamp
👍7🔥5
markmap
- визуализация markdown
документов в виде mindmap
https://github.com/markmap/markmap
Демо: https://markmap.js.org/repl
Плагин для
vscode
: https://marketplace.visualstudio.com/items?itemName=gera2ld.markmap-vscodeопубликовано в #gitgate
#markdown #mindmap #visual #vscode
🔥18👍9
Kompose
- инструмент, который поможет пользователям, которые знакомы с Docker-Compose
переехать в Kubernetes
. Kompose
умеет из обычного docker-compose.yml
вайда конвертировать в манифесты для Kubernetes
.Kompose
- это удобный инструмент, чтобы мигрировать из локального docker
в приложение Kubernetes
. Конвертация в манифест может быть не точной, но это очень помогает при первом развертывании приложения в Kubernetes
.https://github.com/kubernetes/kompose
опубликовано в #gitgate
#docker #docker-compose #manifest #k83 #converter
GitHub
GitHub - kubernetes/kompose: Convert Compose to Kubernetes
Convert Compose to Kubernetes. Contribute to kubernetes/kompose development by creating an account on GitHub.
🔥17👍6
beszel
- легковесная платформа мониторинга серверов, которая включает в себя статистику Docker
, исторические данные и функции оповещения.Он имеет дружественный веб -интерфейс, простая конфигурация и готов к использованию из коробки. Он поддерживает автоматическое резервное копирование, многопользовательскую аутентификацию, аутентификацию
OAuth
и доступ API
.https://github.com/henrygd/beszel
опубликовано в #gitgate
#moni #docker #alert #webui #oauth #api
👍24🔥5
BunkerWeb
- следующее поколение брандмауэра WAF
для web
-приложений c открытым исходным кодомБудучи полнофункциональным веб-сервером (на основе
Nginx
под капотом), он защитит ваши веб-сервисы, чтобы сделать их «безопасными по умолчанию». BunkerWeb
плавно интегрируется в ваши существующие среды (Linux
, Docker
, Swarm
, Kubernetes
,…) и полностью настраивается (не паникуйте, есть потрясающий веб-интерфейс, если вам не нравится CLI
). Другими словами, кибербезопасность больше не является хлопотом.BunkerWeb
содержит первичные функции безопасности как часть ядра, но его можно легко расширить с помощью дополнительных благодаря системы плагинов.Функции безопасности
- поддержка
HTTPS
с прозрачной автоматизацией Let's Encrypt
- современная веб-безопасность: заголовки
HTTP Security
, предотвращение утечек, TLS hardering
- встроенный
Modsecurity WAF
с набором правил Core OWASP
- автоматический запрет странного поведения на основе кода состояния
HTTP
- применение лимитов подключений и запросов для клиентов
- блок ботов для решения проблем (например:
cookie
, JavaScript
, Captcha
, Hcaptcha
или Recaptcha
)- блокировка известных плохих
IP
с внешними черными списками и DNSBL
- и многое другое...
https://github.com/bunkerity/bunkerweb
Домукентация: https://docs.bunkerweb.io
Демо: https://demo.bunkerweb.io
Примеры: https://github.com/bunkerity/bunkerweb/raw/v1.5.12/examples
Конфигуратор: https://config.bunkerweb.io
опубликовано в #gitgate
#nginx #waf #linux #docker #swarm #k8s #webui #cli #dnsbl
GitHub
GitHub - bunkerity/bunkerweb: 🛡️ Open-source and next-generation Web Application Firewall (WAF)
🛡️ Open-source and next-generation Web Application Firewall (WAF) - bunkerity/bunkerweb
🔥15👍6
bunkerweb-plugins
- репозиторий содержит «официальные» плагины для BunkerWeb
Каждый плагин расположен в подкаталоге этого репозитория. Файл
Readme
, расположенный в каждом подкаталоге, содержит документацию о плагине. Список плагинов:
- ClamAV
- CrowdSec
- Coraza
- Discord
- Slack
- VirusTotal
- WebHook
https://github.com/bunkerity/bunkerweb-plugins
опубликовано в @gitgate
#nginx #bunkerweb #plugin
GitHub
GitHub - bunkerity/bunkerweb-plugins: Official plugins for BunkerWeb.
Official plugins for BunkerWeb. Contribute to bunkerity/bunkerweb-plugins development by creating an account on GitHub.
🔥8👍5
pg_activity
- инструмент командной строки (CLI
) для мониторинга активности сервера PostgreSQL
похожий на htop
Кстати, включено пакетом в базовые репы многих дистрибутивов линукса.
Запуск:
sudo -u postgres pg_activity -U postgres
https://github.com/dalibo/pg_activity
опубликовано в @gitgate
#moni #postgres #pg #top #sql
🔥26👍11
Совет дня:
Как попасть на узел в закрытой сети через
Где
Для удобства можно прописать алиасом в файле
И просто вызывать командой
опубликовано в @gitgate
#tips #ssh #jumphost
Как попасть на узел в закрытой сети через
jumphost
по ssh
.ssh -J user1@hostname1:port1 user2@hostname2:port2
Где
hostname1
- промежуточный jump узел с доступом извне, hostname2
узел изолированный от внешних каналов, но с сетевой связаностью с hostname1
Для удобства можно прописать алиасом в файле
~/.bashrc
alias jump='ssh -J user1@hostname1:port1'
И просто вызывать командой
jump user2@hostname2:port2
опубликовано в @gitgate
#tips #ssh #jumphost
👍33🔥10
Channel name was changed to «Useful Tools | Linux | GitOps | DevOps»
cgroup-utils
- предоставляет утилиту и библиотеку для контроля cgroups
в Linux
. Например, топ cgutil - htop подобная утилита , которая показывает деятельность запуска процессов в cgroups
Доступные команды: - configs
- event
- mkdir
- pgrep
- rmdir
- stats
- top
- tree
Поддерживаемые подсистемы:
- blkio (с возможностью debug)
- cpuset
- cpu and cpuacct
- devices
- freezer
- hugetlb
- memory
- net_cls
- net_prio
- pids
- rdma
Т.е. даже не используя контейнеризацию вы можете не только обернуть любой процесс в cgroups с установленными лимитами например по памяти или CPU и изоляцией, но и удобно им управлять и наблюдать.
Например поднять пару инстансов постгреса, чтобы они не дрались за память. :)
https://github.com/peo3/cgroup-utils
опубликовано в @gitgate
#cgroups #tools #cli #utils
GitHub
GitHub - peo3/cgroup-utils: cgroup-utils helps your cgroups life
cgroup-utils helps your cgroups life. Contribute to peo3/cgroup-utils development by creating an account on GitHub.
👍11🔥6
Совет дня:
Ограничение памяти с помощью cgroups
Control Groups (cgroups) позволяют ограничивать объем памяти, доступной для группы процессов.
Для начала необходимо создать группу для ограничения памяти:
Далее настраиваются ограничение на использование памяти для группы mygroup. Например, ограничение на 512 MB:
Добавьте процесс в группу cgroups, указав его PID:
Либо запустите процесс непосредственно в группе cgroups:
Теперь процесс будет ограничен в использовании памяти, что поможет избежать ситуаций, когда один процесс использует всю доступную память.
Примерно так же задаются ограничения и по CPU
опубликовано в @gitgate
#tips #cgroups
Ограничение памяти с помощью cgroups
Control Groups (cgroups) позволяют ограничивать объем памяти, доступной для группы процессов.
Для начала необходимо создать группу для ограничения памяти:
sudo cgcreate -g memory:/mygroup
Далее настраиваются ограничение на использование памяти для группы mygroup. Например, ограничение на 512 MB:
echo 512M | sudo tee /sys/fs/cgroup/memory/mygroup/memory.limit_in_bytes
Добавьте процесс в группу cgroups, указав его PID:
sudo cgclassify -g memory:/mygroup <PID>
Либо запустите процесс непосредственно в группе cgroups:
sudo cgexec -g memory:/mygroup <command>
Теперь процесс будет ограничен в использовании памяти, что поможет избежать ситуаций, когда один процесс использует всю доступную память.
Примерно так же задаются ограничения и по CPU
опубликовано в @gitgate
#tips #cgroups
👍27🔥12
Совет дня:
Как быстро и корректно системными средствами увеличить диск в виртуалке?
1. Добавить свободное место в блочное устройство в гипервизоре
2. Внутри VM перечитать размер диска
3. Установить пакет cloud-guest-utils в составе которого находится нужная нам утилита
4. раздвинуть в таблице разделов необходимую партицию
5. Раздвинуть на увеличенную партицию файловую систему
Примечание: в таблице разделов после увеличиваемой партиции должно быть свободное место. Возможно вам еще понадобятся утилиты
В обсуждениях под постом можно предложить и свои способы, их немало.
опубликовано в @gitgate
#tips #disk
Как быстро и корректно системными средствами увеличить диск в виртуалке?
1. Добавить свободное место в блочное устройство в гипервизоре
2. Внутри VM перечитать размер диска
echo 1>/sys/class/block/sdb/device/rescan
3. Установить пакет cloud-guest-utils в составе которого находится нужная нам утилита
growpart
apt-get install cloud-guest-utils
4. раздвинуть в таблице разделов необходимую партицию
growpart /dev/sda 1
5. Раздвинуть на увеличенную партицию файловую систему
resize2fs /dev/sda1
Примечание: в таблице разделов после увеличиваемой партиции должно быть свободное место. Возможно вам еще понадобятся утилиты
lsblkk
, gpart
В обсуждениях под постом можно предложить и свои способы, их немало.
опубликовано в @gitgate
#tips #disk
🔥21👍14
Совет дня:
Как избавиться от
1. Отключите текущий
2. Подотовьте файл для будущего свапа необходимого размера
3. Подключите
4. Сделайте изменения доступными после загрузки, добавив строку в
Есть и не очевидная выгода. В дальнейшем, если вам потребуется изменить размер
опубликовано в @gitgate
Как всегда обсуждение и советы в комментариях.
#tips #swap
Как избавиться от
swap
в виде партиции и перенести его его в файл1. Отключите текущий
swap
и закоментируйте строку для swap
в /etc/fstab
sudo swapoff -a
2. Подотовьте файл для будущего свапа необходимого размера
sudo fallocate -l 2G /swapfile
sudo chmod 600 /swapfile
sudo mkswap /swapfile
3. Подключите
swapfile
и проверьте его размерsudo swapon /swapfile
free
4. Сделайте изменения доступными после загрузки, добавив строку в
/etc/fstab
echo "/swapfile none swap sw 0 0" | sudo tee -a /etc/fstab
Есть и не очевидная выгода. В дальнейшем, если вам потребуется изменить размер
swap
, не придется двигать партиции, достаточно в пп..1 указать новый размер и пропустить пп.4опубликовано в @gitgate
Как всегда обсуждение и советы в комментариях.
#tips #swap
👍30🔥14
Kanidm
- простое и безопасное управление идентификациейПостая и безопасная платформа управления идентификацией, позволяющая другим приложениям и услугам разгружать проблему аутентификации и хранения идентификаторов в
KANIDM
.Цель этого проекта - быть полным поставщиком идентификаций, охватывающий самый широкий набор требований и интеграций. Вам не нужно никаких других компонентов (например,
KeyCloak
), когда вы используете Kanidm
- у нас уже есть все, что вам нужно!Чтобы достичь этого, мы в значительной степени полагаемся на строгие значения по умолчанию, простую конфигурацию и самовосстанавливающиеся компоненты. Это позволяет
Kanidm
поддерживать небольшие домашние лаборатории, семьи, малые предприятия и вплоть до крупнейших потребностей предприятия.https://github.com/kanidm/kanidm
опубликовано в @gitgate
#security #keykloack #auth #rust
👍9🔥6
speedtest-exporter
- простой экспортер Speedtest
для Prometheus
, написанный на Python
, используя официальный CLI
из Ookla
Метрики: - скорость upload
- скорость download
- пинг
- джиттер
Отлично приживется в домашнем мониторинге или для небольшой компании / проекта
https://github.com/MiguelNdeCarvalho/speedtest-exporter
опубликовано в @gitgate
#moni #net #speedtest #exporter #prometheus
GitHub
GitHub - MiguelNdeCarvalho/speedtest-exporter: Speedtest Exporter made in python using the official speedtest bin
Speedtest Exporter made in python using the official speedtest bin - MiguelNdeCarvalho/speedtest-exporter
👍7🔥4
exporter_exporter
- прокси лоя Prometheus exporter-рвОн обеспечивает простой реверс прокси для экспортеров
Prometheus
. Предназначен как альтернатива Nginx/Apache
для использования в средах, где открытие нескольких портов TCP
на все серверы может быть нежелательным или невозможным в силу причинПреимущества:
- один порт может использоваться для запроса нескольких экспортеров (чтобы облегчить проблемы конфигурации брандмауэра).
- может предоставить
TLS
транспорт для экспортеров, которые его не поддерживают- обеспечивает проверку доступности сервера
Prometheus
.- можно использовать для выполнения скриптов, вывод которых представляется в виде метрик
Prometheus
(киллер фича).- небольшой размер кода, минимальные внешние зависимости, легко проверяем.
https://github.com/QubitProducts/exporter_exporter
опубликовано в @gitgate
#moni #exporter #prometheus
GitHub
GitHub - QubitProducts/exporter_exporter: A reverse proxy designed for Prometheus exporters
A reverse proxy designed for Prometheus exporters. Contribute to QubitProducts/exporter_exporter development by creating an account on GitHub.
👍11🔥6
Lume
- легковесная CLI
утилита и локальный API
сервер для создания, запуска и управления виртуальными машинами MacOS
и Linux
с почти нулевым оверкостом на виртуализацию на Apple Silicon
, используя виртуализацию Apple.FrameWork
https://github.com/trycua/lume
опубликовано в @gitgate
#vm #cli #api #virtualisation
GitHub
GitHub - trycua/cua: c/ua is the Docker Container for Computer-Use AI Agents.
c/ua is the Docker Container for Computer-Use AI Agents. - trycua/cua
🔥10👍7