Админские угодья
1.46K subscribers
462 photos
40 videos
223 links
Всё для системного администратора

По всем вопросам : @Sofiia_artamonova
Download Telegram
Сетевые политики на защите рабочих нагрузок в кластере Kubernetes

В кластере Kubernetes нам доступен любой сервис в любом пространстве имён, то есть по умолчанию pod открыт для любого трафика.

Мы можем определить сетевую политику для пространства имён или pod’а, чтобы защитить рабочие нагрузки в кластере. Например, разделить рабочие нагрузки в мультитенантном кластере по проектам, командам или организациям.

Rus https://habr.com/ru/company/southbridge/blog/718262/

Eng https://medium.com/geekculture/network-policy-to-secure-workloads-on-kubernetes-cluster-99017698c748
👍2
Краткий курс по созданию сценариев Bash
👍5
Как найти количество открытых файлов в Linux

Значение сохраняется в
# cat /proc/sys/fs/file-max

Проверка Hard лимит в Linux
# ulimit -Hn

Проверка Soft лимит в Linux
# ulimit -Sn

Чтобы просмотреть значения Hard и Soft для разных пользователей, переключите пользователя с «su» на пользователя, ограничения которого вы хотите проверить.
Например:
# su root
$ ulimit -Sn
$ ulimit -Hn


Как проверить количество системных дескрипторов файлов в Linux
На серверах, некоторые из ваших приложений могут потребовать более высокий лимит для открытых дескрипторов файлов. Хорошим примером этого являются службы MySQL / MariaDB или веб-сервер Apache.

Вы можете увеличить лимит открытых файлов в Linux, отредактировав опцию ядра fs.file-max. Для этого используйте утилиту sysctl.

Sysctl используется для настройки параметров ядра.

Например, чтобы увеличить ограничение на количество открых файла до 500000, вы можете использовать следующую команду:
# sysctl -w fs.file-max=500000

Вы можете проверить текущее значение для количества открытых файлов с помощью следующей команды:
$ cat /proc/sys/fs/file-max

С помощью указанной команды изменения, которые вы внесли, будут оставаться активными только до следующей перезагрузки. Если вы хотите применить их на постоянной основе, вам придется отредактировать следующий файл:
# vi /etc/sysctl.conf

Добавьте следующую команду:
fs.file-max=500000

Конечно, вы можете изменить число в соответствии с вашими потребностями. Чтобы снова проверить изменения, используйте:
# cat /proc/sys/fs/file-max

Чтобы изменения вступили в силу, пользователям необходимо будет выйти из системы и снова войти в систему. Если вы хотите немедленно применить ограничения, вы можете использовать следующую команду:
# sysctl -p

Установка количества открытых файлов для пользователя в Linux
Вышеприведенные примеры показали, как установить ограничения, но вы можете установить лимит для каждого пользователя. Для этой цели, с правами пользователя root, вам необходимо отредактировать следующий файл:
# vi /etc/security/limits.conf

Если вы администратор Linux, предлагаем Вам ознакомиться с этим файлом. Прочитайте все комментарии в нем, поскольку он обеспечивает гибкость в плане управления системными ресурсами путем установки лимита пользователям на разных уровнях.

Команды, которые вы должны добавить, имеют следующие параметры:
<domain>        <type>  <item>  <value>

Вот пример установки Soft и Hard лимитов для пользователя dimon:
## Example hard limit for max opened files
dimon hard nofile 4096
## Example soft limit for max opened files
dimon soft nofile 1024
Шпаргалка по утилите top

Команда top в Linux используется для мониторинга системных процессов и загрузки системы в реальном времени.

▪️Основной вывод
- PID: Идентификатор процесса.
- USER: Имя пользователя, которому принадлежит процесс.
- PR: Приоритет процесса.
- NI: Значение nice для процесса.
- VIRT: Объем виртуальной памяти, используемой процессом.
- RES: Объем физической (резидентной) памяти.
- SHR: Объем разделяемой памяти.
- S: Состояние процесса (R – выполняется, S – спит, D – ждет, Z – зомби, T – остановлен).
- %CPU: Доля времени процессора, используемая процессом.
- %MEM: Доля физической памяти, используемая процессом.
- TIME+: Общее время работы процесса.
- COMMAND: Команда, запустившая процесс.

▪️Основные клавиши
- q: Выход из программы top.
- h: Вызов справки.
- k: Завершение процесса по PID.
- r: Изменение приоритета процесса (renice).
- z: Переключение цвета интерфейса.
- P: Сортировка по использованию CPU (по умолчанию).
- M: Сортировка по использованию памяти.
- T: Сортировка по времени работы процесса.
- 1: Показать загрузку процессоров по ядрам.
- Shift + i: Игнорировать процессы с нулевой загрузкой CPU.
- Shift + e: Переключение между единицами памяти (KB, MB, GB).

▪️Параметры при запуске
- top -d [секунды]: Установить интервал обновления (по умолчанию 3 секунды).
- top -u [имя_пользователя]: Показать процессы определенного пользователя.
- top -p [PID]: Отслеживать процесс по PID.
- top -n [число]: Указать, сколько обновлений произвести перед завершением программы.

▪️Фильтрация и управление отображением
- f: Настройка колонок.
- o: Сортировка по выбранной колонке.
- s: Изменение интервала обновления в реальном времени.
- X: Установить маску для поиска процессов.
Полезные Bash скрипты для Linux

Автоматическое резервное копирование
Этот скрипт создает резервную копию указанной директории и сохраняет ее в архиве с меткой времени. Это полезно для регулярного создания резервных копий данных.


#!/bin/bash
SOURCE_DIR="/path/to/source"
BACKUP_DIR="/path/to/backup"
TIMESTAMP=$(date +"%Y%m%d%H%M%S")
tar -czvf "$BACKUP_DIR/backup_$TIMESTAMP.tar.gz" "$SOURCE_DIR"
echo "Backup completed successfully! 🎉"


Очистка временных файлов
Этот скрипт удаляет все временные файлы старше 7 дней из указанной директории. Это помогает поддерживать чистоту в системе и освобождать место на диске.


#!/bin/bash
TEMP_DIR="/path/to/temp"
find "$TEMP_DIR" -type f -mtime +7 -exec rm -f {} \;
echo "Temporary files older than 7 days have been deleted 🧹"


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


#!/bin/bash
sudo apt update && sudo apt upgrade -y
echo "System updated successfully! 🔄"


Проверка доступности веб-сайта
Этот скрипт проверяет доступность указанного веб-сайта и отправляет уведомление, если сайт недоступен. Это полезно для мониторинга состояния веб-сайтов.


#!/bin/bash
URL="https://example.com"
if ! curl -s --head "$URL" | grep "200 OK" > /dev/null; then
echo "Website $URL is down! 🚨"
fi
Шпаргалка по скриптам Bash

Основы написания скриптов на Bash
Условные операторы
Циклы Bash
Арифметические операторы
Арифметические условные операторы
Операторы сравнения строк
👍1