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
Useful Tools | Linux | GitOps | DevOps
Lume - легковесная CLI утилита и локальный API сервер для создания, запуска и управления виртуальными машинами MacOS и Linux с почти нулевым оверкостом на виртуализацию на Apple Silicon, используя виртуализацию Apple.FrameWork https://github.com/trycua/lume…
SSH Commander
- мощный, красочный инструмент командной строки (CLI
) для одновременного выполнения команд на нескольких SSH
-серверах. Он поддерживает как пароль, так и аутентификацию на основе ключей, пользовательские порты и может выполнять как отдельные команды, так и командные файлы.
https://github.com/AthenaNetworks/ssh_commander
опубликовано в @gitgate
#ssh
GitHub
GitHub - AthenaNetworks/ssh_commander: Run sequential command(s) on a group of SSH servers
Run sequential command(s) on a group of SSH servers - AthenaNetworks/ssh_commander
👍13🔥7
Pangolin
- туннельный Reverse Proxy
сервер с идентификацией и контролем доступа, предназначенный для надежного представления частных ресурсов в распределенных сетях. Выступая в качестве центрального хаба, он соединяет изолированные сети - даже в закрытом контуре - с помощью зашифрованных туннелей, обеспечивая легкий доступ к удаленным услугам без открытия портов.
https://github.com/fosrl/pangolin
опубликовано в @gitgate
#proxy #vpn #tunnel
👍18🔥10
mindmap
- большая коллекция схем и диаграмм с упором на Cyber Security
в формате mindmap
на все случаи жизни... Начиная от
HTTP Status Codes
и до ключей tcpdump
.https://github.com/Ignitetechnologies/Mindmap
опубликовано в @gitgate
#mindmap #diagram #security
GitHub
GitHub - Ignitetechnologies/Mindmap: This repository will contain many mindmaps for cyber security technologies, methodologies…
This repository will contain many mindmaps for cyber security technologies, methodologies, courses, and certifications in a tree structure to give brief details about them - Ignitetechnologies/Mindmap
👍14🔥8
GLAuth
- сервер аутентификации LDAP
для разработчиковВозможности:
- централизованное управление аккаунтами для всей инфраструктуры
- центральное управление
SSH
ключами, учетными записями Linux
и паролями для облачных серверов.- легкая альтернатива
OpenLDAP
и Active Directory
для разработки или Homelab
.- хранение каталога пользователя в файле, в
S3
или в SQL
базе- прокси для существующих серверов
LDAP
.- двух факторная аутентификация (
2FA
)https://github.com/glauth/glauth
Подсказал: Максим Клюев - @drubidik
опубликовано в @gitgate
#ldap #dev #2fa #openldap #activedirectory #ad
GitHub
GitHub - glauth/glauth: A lightweight LDAP server for development, home use, or CI
A lightweight LDAP server for development, home use, or CI - glauth/glauth
👍16🔥11
Обьявление:
что то подумалось, мол не телеграмом единым. И вот
https://gitgate.d3.ru
Формат тот же (практически кросспост из TG), правила такие же.
Разыскивается ответственный выпускающий редактор.
опубликовано в @gitgate
что то подумалось, мол не телеграмом единым. И вот
https://gitgate.d3.ru
Формат тот же (практически кросспост из TG), правила такие же.
Разыскивается ответственный выпускающий редактор.
опубликовано в @gitgate
gitgate.d3.ru
Useful Tools | Linux | GitOps | DevOps
🔥11👍8
fly-to-podman
- небольшой BASH
скрипт, который помогает вам мигрировать из Docker
в Podman
. Он переносит ваши контейнеры, образа и мапленные каталоги
Docker
в Podman
, а также сохранить данные и конфигурации вашего контейнера (маунты, порты и т. д.).Возможности:
- миграция образов
Docker
в Podman
(включая теги)- миграция мапленных каталогов (
volumes
) Docker
в Podman
(включая все данные)- миграция сетей
Docker
в Podman
(включая имена, IP
-адресе, шлюзы, IP
-диапазоны и т. д.)- миграция контейнеров
Docker
в Podman
(включая имена, идентификаторы и статусы, такие как политика перезапуска и т. д.)- сохранение данных и конфигурации контейнера (маунты, открытые порты и т. д.)
https://github.com/Edu4rdSHL/fly-to-podman
опубликовано в @gitgate
#docker #podman #bash #converter
GitHub
GitHub - Edu4rdSHL/fly-to-podman: Migrate from Docker to Podman.
Migrate from Docker to Podman. Contribute to Edu4rdSHL/fly-to-podman development by creating an account on GitHub.
👍16🔥5
Совет дня:
Как скриптом определить текущую раскладку клавиатуры ?
для первой раскладки эта команда вернёт
Альтернативный вариант возвращающий
и "красивая" версия от @tagd_tagd
опубликовано в @gitgate
#tips
Как скриптом определить текущую раскладку клавиатуры ?
xset -q | sed -rn 's/.*LED mask.*(.)[[:xdigit:]]{3}$/\1/p'
для первой раскладки эта команда вернёт
0
, для всех остальных - 1
Альтернативный вариант возвращающий
en
или ru
:xset -q|grep Group\ 2|awk {'print $4'}|sed 's/on/ru/g;s/off/en/g'
и "красивая" версия от @tagd_tagd
xset -q|awk '/Group 2/{print ($4~/n/)?"ru":"en"}'
опубликовано в @gitgate
#tips
👍28🔥13
Обьявление:
Ну и раз пошел такой движ - запилился маленький технический сайтик с "советами дня"
https://gist.gitgate.ru
опубликовано в @gitgate
Ну и раз пошел такой движ - запилился маленький технический сайтик с "советами дня"
https://gist.gitgate.ru
опубликовано в @gitgate
👍25🔥20
VHS
- создавайте анимированные Gif
из вашего терминала с помощью простого кода для демонстрации ваших инструментов CLI
.https://github.com/charmbracelet/vhs
опубликовано в @gitgate
#cli #recorder #demo
🔥17👍6