Admin Portal | Сисадмин
前往频道在 Telegram
Присоединяйтесь к нашему каналу и погрузитесь в мир для системного администратора Связь: @devmangx
显示更多7 063
订阅者
+2424 小时
+867 天
+39530 天
正在加载数据
吸引订阅者
十月 '2610月 '26
十月 '26
+432
在0个频道中
九月 '26
+20
在0个频道中
Get PRO
八月 '26
+26
在1个频道中
Get PRO
七月 '26
+27
在0个频道中
Get PRO
六月 '26
+30
在2个频道中
Get PRO
五月 '26
+37
在0个频道中
Get PRO
四月 '26
+31
在0个频道中
Get PRO
三月 '26
+36
在0个频道中
Get PRO
二月 '26
+50
在2个频道中
Get PRO
一月 '26
+60
在0个频道中
Get PRO
十二月 '25
+344
在9个频道中
Get PRO
十一月 '25
+960
在319个频道中
Get PRO
十月 '25
+74
在0个频道中
Get PRO
九月 '25
+63
在0个频道中
Get PRO
八月 '25
+108
在0个频道中
Get PRO
七月 '25
+6 132
在270个频道中
| 日期 | 订阅者增长 | 提及 | 频道 | |
| 26 十月 | +24 | |||
| 25 十月 | +7 | |||
| 24 十月 | +7 | |||
| 23 十月 | +7 | |||
| 22 十月 | +6 | |||
| 21 十月 | +24 | |||
| 20 十月 | +18 | |||
| 19 十月 | +14 | |||
| 18 十月 | +14 | |||
| 17 十月 | +19 | |||
| 16 十月 | +52 | |||
| 15 十月 | +82 | |||
| 14 十月 | +53 | |||
| 13 十月 | +40 | |||
| 12 十月 | +57 | |||
| 11 十月 | +1 | |||
| 10 十月 | 0 | |||
| 09 十月 | 0 | |||
| 08 十月 | 0 | |||
| 07 十月 | +1 | |||
| 06 十月 | 0 | |||
| 05 十月 | +3 | |||
| 04 十月 | +1 | |||
| 03 十月 | +1 | |||
| 02 十月 | +1 | |||
| 01 十月 | 0 |
频道帖子
Быстрый совет по Linux
Нужно сохранить вывод команды в файл, но при этом видеть его в терминале? Используй
tee.
command | tee filename
Например:
df -h | tee config_old.txt
Команда выведет информацию на экран и одновременно сохранит её копию в файл.
Можно использовать с любыми командами:
free -h | tee memory-report.txt
ps aux | tee processes.txt
ip addr | tee network.txt
ls -l | tee files.txt
Удобный способ сохранять результаты выполнения команд, не теряя их из виду в терминале.
@SysAdmin_Portal| 2 | Kubernetes Tip: как сохранить реальный IP-адрес клиента
В некоторых случаях для сетевых политик безопасности, мониторинга трафика и приложений, работающих не по HTTP, важно знать настоящий IP-адрес клиента.
По умолчанию Kubernetes Services типов NodePort и LoadBalancer используют настройку externalTrafficPolicy: Cluster. В этом случае Pod, получающий трафик, может видеть IP-адрес узла Kubernetes вместо исходного IP-адреса клиента.
Чтобы сохранить исходный IP, установите:
spec:
externalTrafficPolicy: Local
Эта настройка указывает Kubernetes направлять внешний трафик только в Pod'ы этого Service, расположенные на том же узле, который получил запрос. Таким образом, исходный IP-адрес клиента сохраняется.
Но есть нюанс: если на узле нет локального Pod'а, обслуживающего этот Service, трафик, поступивший на такой узел, будет отброшен, а не перенаправлен на другой узел. Правильно настроенный балансировщик нагрузки может использовать проверки работоспособности (health checks), чтобы не отправлять трафик на такие узлы.
Важно: сохранение IP зависит и от балансировщика нагрузки.
Сетевой балансировщик (Network Load Balancer) может сохранять исходный IP клиента — в зависимости от конфигурации. HTTP-прокси и балансировщики на уровне приложений обычно создают новое соединение с приложением, поэтому Pod может видеть IP-адрес самого балансировщика.
В таком случае исходный IP клиента передаётся в HTTP-заголовке, например X-Forwarded-For. Его можно использовать для логирования, ограничения частоты запросов (rate limiting) и других задач.
@SysAdmin_Portal | 613 |
| 3 | DevOps инструмент недели: Kubetail
Разбирать логи в Kubernetes бывает непросто: приходится переключаться между подами, запускать kubectl logs и искать причину ошибки среди множества реплик приложения.
Kubetail open-source инструмент для просмотра логов Kubernetes в реальном времени. Он собирает логи из нескольких подов в одном интерфейсе, упрощая отладку приложений.
Что умеет:
• Показывать логи нескольких подов и контейнеров одновременно.
• Обновлять временную шкалу при появлении, остановке и замене подов.
• Фильтровать логи по временному диапазону, зоне доступности, архитектуре CPU и узлу.
• Переключаться между несколькими кластерами через десктопное приложение.
Полезный инструмент для тех, кто работает с Kubernetes и хочет тратить меньше времени на поиск ошибок в логах.
GitHub: https://github.com/kubetail-org/kubetail
@SysAdmin_Portal | 696 |
| 4 | Linux Tip: сортируй строки в файле одной командой
Нужно отсортировать строки текстового файла по алфавиту?Используй команду sort.
sort names.txt
Команда отсортирует строки и выведет результат в терминал, не изменяя исходный файл.
Можно использовать её с любыми текстовыми файлами:
sort users.txt
sort cities.txt
sort products.txt
sort words.txt
Чтобы сохранить результат в новый файл:
sort names.txt > sorted-names.txt
sort пригодится для упорядочивания данных перед поиском, сравнением файлов и дальнейшей обработкой.
Полезный флаг: sort -r names.txt — сортировка в обратном порядке.
@SysAdmin_Portal | 706 |
| 5 | Linux Tip: следи за изменениями в терминале автоматически
Нужно отслеживать загрузку диска, использование памяти или запущенные процессы в реальном времени? Используй команду watch.
watch df -h
Команда будет выполнять df -h каждые 2 секунды и автоматически обновлять вывод. Чтобы остановить мониторинг, нажми Ctrl + C.
Другие полезные примеры:
watch free -h
watch date
watch ls -l
watch "ps aux | grep nginx"
watch "ip addr"
watch пригодится для мониторинга дискового пространства, оперативной памяти, процессов и сетевых интерфейсов без необходимости вручную повторять команды.
Полезный флаг: watch -n 1 df -h — обновлять данные каждую секунду.
@SysAdmin_Portal | 749 |
| 6 | Linux-совет: как определить тип файла
Нашли файл с непонятным расширением или вообще без него? Выполните:
file filename
Например:
file mdfiles.zip
file script.py
file config_new.txt
file nohup.out
Команда анализирует содержимое и признаки формата, поэтому может распознать архив, изображение, исполняемый файл или текст даже без расширения.
Полезно, чтобы понять, с чем вы работаете, перед открытием файла.
@SysAdmin_Portal | 770 |
| 7 | Linux-совет: как извлечь один столбец из файла
Чтобы вывести второе поле каждой строки, разделённой запятыми:
cut -d',' -f2 ~/Desktop/members.csv
• -d',' — задаёт запятую как разделитель.
• -f2 — выбирает второе поле.
@SysAdmin_Portal | 806 |
| 8 | Linux-совет: как убрать повторяющиеся строки
Команда uniq убирает только соседние дубликаты:
uniq names.txt
Чтобы удалить повторы независимо от их расположения, сначала отсортируйте строки:
sort names.txt | uniq
Ещё несколько полезных вариантов:
# Убрать дубликаты одной командой
sort -u names.txt
# Посчитать количество вхождений каждой строки
sort fruits.txt | uniq -c
# Показать только строки, которые повторяются
sort names.txt | uniq -d
Результат выводится в терминал — исходный файл не меняется. Учтите, что sort изменяет порядок строк.
@SysAdmin_Portal | 923 |
| 9 | DNAT: как трафик попадает в контейнеры и Pod’ы
DNAT (Destination NAT) — это изменение адреса назначения пакета: IP и, при необходимости, порта.
Например, приложение внутри Docker-контейнера слушает порт 80. В обычной bridge-сети с NAT его приватный IP по умолчанию недоступен клиентам за пределами хоста.
Публикуем порт:
docker run -p 8080:80 nginx
Теперь клиент обращается к IP хоста на порту 8080. На хосте адрес назначения пакета меняется на IP контейнера и порт 80, после чего пакет направляется в контейнер. Это и есть DNAT.
В Kubernetes тот же принцип используется для трафика Service. Когда kube-proxy работает в режиме iptables, правила DNAT перенаправляют запрос с IP и порта Service на IP выбранного Pod’а и его targetPort.
@SysAdmin_Portal | 929 |
| 10 | Steampipe: SQL-запросы к облачной инфраструктуре
Какие ресурсы остались без обязательных тегов? Есть ли публично доступные S3-бакеты? В каких Kubernetes namespaces отсутствуют NetworkPolicies?
Для ответа необязательно переключаться между консолями и писать отдельные скрипты. Steampipe — open-source инструмент, который позволяет запрашивать данные из AWS, Kubernetes и других сервисов с помощью SQL.
Через плагины он обращается к API сервисов и представляет данные в виде таблиц. Можно фильтровать ресурсы, объединять результаты и проверять инфраструктуру привычными запросами.
Полезен для инвентаризации, поиска ошибок конфигурации и разовых проверок безопасности.
Руководство по Steampipe
@SysAdmin_Portal | 958 |
| 11 | Linux-совет: замена символов с помощью tr
Чтобы перевести латинские буквы в верхний регистр, выполните:
echo "hello linux" | tr 'a-z' 'A-Z'
Результат: HELLO LINUX.
Ещё несколько примеров:
# Перевести в нижний регистр
echo "HELLO" | tr 'A-Z' 'a-z'
# Заменить запятые пробелами
echo "a,b,c" | tr ',' ' '
# Обработать текст из файла
tr 'a-z' 'A-Z' < input.txt
tr читает стандартный ввод и выводит преобразованный текст. Исходный файл при этом не меняется.
@SysAdmin_Portal | 945 |
| 12 | Совет по Linux: как разбить большой файл на части
Используйте split, указав количество строк в каждой части:
split -l 100 names.txt
Если в names.txt 250 строк, появятся три файла:
• xaa — строки 1–100.
• xab — строки 101–200.
• xac — строки 201–250.
Исходный файл останется без изменений. Проверить количество строк:
wc -l x*
Можно задать собственный префикс для новых файлов:
split -l 100 names.txt part_
Тогда части получат имена part_aa, part_ab, part_ac. Удобно для обработки больших списков, датасетов и логов.
@SysAdmin_Portal | 1 013 |
| 13 | Kubernetes: от первых команд до production
Уметь запускать kubectl apply — только начало. Для работы с production-кластерами важно понимать их устройство, уметь развёртывать приложения, обеспечивать надёжность и настраивать безопасность.
В этой дорожной карте изучения Kubernetes собраны:
• Знания, которые пригодятся перед стартом.
• Способы получить бесплатные облачные кредиты для первого кластера.
• Ключевые концепции Kubernetes.
• Практики обеспечения надёжности и безопасности.
• Полезные ресурсы для обучения.
Пошаговый маршрут для тех, кто хочет перейти от выполнения команд к осознанной работе с кластерами.
https://devopscube.com/learn-kubernetes-complete-roadmap/
@SysAdmin_Portal | 1 115 |
| 14 | Быстрый совет по Linux
Если у вас есть данные в нескольких файлах и нужно объединить их построчно, используйте команду:
paste file1 file2
Например:
paste name.txt age.txt
Команда объединит соответствующие строки из обоих файлов в один вывод, разделяя значения табуляцией.
Другие примеры:
paste users.txt emails.txt
paste cities.txt countries.txt
paste file1.txt file2.txt
Полезно для объединения связанных данных, сравнения файлов и создания простых отчётов прямо в терминале.
@SysAdmin_Portal | 1 157 |
| 15 | Совет по Linux: как записать текст в файл
Используйте echo и перенаправление вывода:
echo "Привет, Linux!" > hello.txt
Команда создаст файл hello.txt и запишет в него текст. Посмотреть содержимое:
cat hello.txt
Другие полезные примеры:
echo "Welcome" > welcome.txt # Создать или перезаписать файл
echo "Новая строка" >> notes.txt # Добавить строку в конец
echo "$HOME" # Показать путь к домашнему каталогу
echo "$PATH" # Показать каталоги поиска исполняемых файлов
> перезаписывает содержимое файла, а >> дописывает в конец. Если файла нет, оба варианта создадут его.
@SysAdmin_Portal | 1 165 |
| 16 | Совет по Linux: как посмотреть сообщения ядра
Подключили USB-устройство или разбираетесь с проблемой оборудования, драйверов или загрузки? Выполните:
dmesg | tail
Команда покажет последние 10 строк сообщений ядра: обнаружение устройств, работу драйверов и системные события.
Другие полезные варианты:
dmesg | grep -i usb # Сообщения об USB
dmesg | grep -i error # Строки со словом error
dmesg | grep -i ethernet # Строки с упоминанием Ethernet
dmesg -T # Дата и время в читаемом формате
Флаг -i отключает учёт регистра при поиске. Если доступ к журналу ограничен, запускайте dmesg через sudo.
@SysAdmin_Portal | 1 194 |
| 17 | kube-green: отправляем dev и staging спать по расписанию
Тестовые окружения часто работают круглосуточно, хотя ночью и на выходных ими никто не пользуется. Поды продолжают занимать ресурсы, а инфраструктура — стоить денег.
kube-green — open-source оператор Kubernetes, который останавливает ненужные нагрузки по расписанию и восстанавливает их к началу рабочего дня.
Что умеет:
• Масштабировать Deployments и StatefulSets до нуля.
• Приостанавливать запуск CronJobs.
• Восстанавливать количество реплик по расписанию.
• Учитывать дни недели и часовые пояса.
• Исключать ресурсы по именам или меткам.
• Работать с пользовательскими ресурсами через патчи.
Экономия зависит от инфраструктуры: остановка подов освобождает ресурсы, но для снижения расходов на вычислительные узлы может потребоваться их автоматическое масштабирование.
https://github.com/kube-green/kube-green
@SysAdmin_Portal | 1 183 |
| 18 | kube-green: отправляем dev и staging спать по расписанию
Тестовые окружения часто работают круглосуточно, хотя ночью и на выходных ими никто не пользуется. Поды продолжают занимать ресурсы, а инфраструктура — стоить денег.
kube-green — open-source оператор Kubernetes, который останавливает ненужные нагрузки по расписанию и восстанавливает их к началу рабочего дня.
Что умеет:
• Масштабировать Deployments и StatefulSets до нуля.
• Приостанавливать запуск CronJobs.
• Восстанавливать количество реплик по расписанию.
• Учитывать дни недели и часовые пояса.
• Исключать ресурсы по именам или меткам.
• Работать с пользовательскими ресурсами через патчи.
Экономия зависит от инфраструктуры: остановка подов освобождает ресурсы, но для снижения расходов на вычислительные узлы может потребоваться их автоматическое масштабирование.
https://github.com/kube-green/kube-green
@SysAdmin_Portal | 1 |
| 19 | Linux-совет: объединение файлов по общему полю
Команда join объединяет строки двух текстовых файлов по совпадающему ключу. По умолчанию используется первое поле, а разделителями служат пробелы или табуляция.
Например, файл names.txt:
1 Alice
2 Bob
Файл ages.txt:
1 25
2 30
Выполните:
join names.txt ages.txt
Результат:
1 Alice 25
2 Bob 30
Оба файла должны быть отсортированы по полю объединения. Подготовить отдельные отсортированные копии можно так:
sort -k1,1 names.txt > names.sorted.txt
sort -k1,1 ages.txt > ages.sorted.txt
join names.sorted.txt ages.sorted.txt
По умолчанию выводятся только совпавшие записи — похоже на INNER JOIN в SQL.
@SysAdmin_Portal | 1 147 |
| 20 | Практические уроки для Backend, Data Engineering и DevOps
Площадка с пошаговыми туториалами и облачными окружениями. Изучаем теорию и сразу выполняем команды без настройки локальной среды. В каталоге PostgreSQL, Redis, Docker, Kubernetes, Airflow, Spark и ClickHouse.
https://prepare.sh/
@SysAdmin_Portal | 1 180 |
