Как работает сетевая связка контейнеров ?
Большинство установок Docker и кластеров Kubernetes используют одинаковую сетевую схему с мостом (bridge).
Лучший способ понять, как это работает? Воспроизвести такую схему с нуля, используя только стандартные команды Linux.
https://labs.iximiuz.com/tutorials/container-networking-from-scratch
Большинство установок Docker и кластеров Kubernetes используют одинаковую сетевую схему с мостом (bridge).
Лучший способ понять, как это работает? Воспроизвести такую схему с нуля, используя только стандартные команды Linux.
https://labs.iximiuz.com/tutorials/container-networking-from-scratch
❤2👍2
Kubernetes Events - новостная лента вашего кластера
Kubernetes Events - это ресурсы типа Event в Kubernetes, которые информируют вас о том, что происходит в вашем кластере. Это похоже на новостную ленту для компонентов кластера: они фиксируют всё - от запуска Pod'ов до ошибок в работе контроллеров.
Каждое событие в Kubernetes содержит:
*
*
*
*
*
📌 Как посмотреть события:
Или для конкретного Pod'а:
Kubernetes сам удаляет события через час. Это значит, что они не предназначены для долговременного хранения.
📌 Хранение событий
Если вам нужно сохранить события дольше, можно:
* Настроить аудит в Kubernetes
* Использовать внешние системы логирования (например, Elasticsearch + Fluentd)
* Подключить event exporters
https://decisivedevops.com/kubernetes-events-news-feed-of-your-kubernetes-cluster-826e08892d7a/
Kubernetes Events - это ресурсы типа Event в Kubernetes, которые информируют вас о том, что происходит в вашем кластере. Это похоже на новостную ленту для компонентов кластера: они фиксируют всё - от запуска Pod'ов до ошибок в работе контроллеров.
Каждое событие в Kubernetes содержит:
*
message
: краткое описание произошедшего*
reason
: код причины события*
type
: Normal
или Warning
*
involvedObject
: объект, к которому относится событие (например, Pod или Node)*
firstTimestamp
, lastTimestamp
, count
: время и количество повторений📌 Как посмотреть события:
kubectl get events
Или для конкретного Pod'а:
kubectl describe pod <pod-name>
Kubernetes сам удаляет события через час. Это значит, что они не предназначены для долговременного хранения.
📌 Хранение событий
Если вам нужно сохранить события дольше, можно:
* Настроить аудит в Kubernetes
* Использовать внешние системы логирования (например, Elasticsearch + Fluentd)
* Подключить event exporters
https://decisivedevops.com/kubernetes-events-news-feed-of-your-kubernetes-cluster-826e08892d7a/
❤1
Grep в Linux как инструмент для администрирования
Примеры использования.
grep
— утилита командной строки, используется для поиска и фильтрации текста в файлах, на основе шаблона, который (шаблон) может быть регулярным выражением.Примеры использования.
grep iodmin
grep iodmin file.txt
поиск iodmin в файле file.txt, с выводом полностью совпавшей строкойgrep -o iodmin file.txt
поиск iodmin в файле file.txt и вывод только совпавшего куска строкиgrep -i iodmin file.txt
игнорирование регистра при поискеgrep -bn iodmin file.txt
показать строку (-n) и столбец (-b), где был найден iodmingrep -v iodmin file.txt
инверсия поиска (найдет все строки, которые не совпадают с шаблоном iodmin)grep -A 3 iodmin file.txt
вывод дополнительных трех строк, после совпавшейgrep -B 3 iodmin file.txt
вывод дополнительных трех строк, перед совпавшейgrep -C 3 iodmin file.txt
вывод три дополнительные строки перед и после совпавшейgrep -r iodmin $HOME
рекурсивный поиск по директории $HOME и всем вложеннымgrep -c iodmin file.txt
подсчет совпаденийgrep -L iodmin *.txt
вывести список txt-файлов, которые не содержат iodmingrep -l iodmin *.txt
вывести список txt-файлов, которые содержат iodmingrep -w iodmin file.txt
совпадение только с полным словом iodmingrep -f iodmins.txt file.txt
поиск по нескольким iodmin из файла iodmins.txt, шаблоны разделяются новой строкойgrep -I iodmin file.txt
игнорирование бинарных файловgrep -v -f file2 file1 > file3
вывод строк, которые есть в file1 и нет в file2grep -in -e 'python' `find -type f`
рекурсивный поиск файлов, содержащих слово python с выводом номера строки и совпаденийgrep -inc -e 'test' find -type f | grep -v :0
рекурсивный поиск файлов, содержащих слово python с выводом количества совпаденийgrep . *.py
вывод содержимого всех py-файлов, предваряя каждую строку именем файлаgrep "Http404" apps/**/*.py
рекурсивный поиск упоминаний Http404 в директории apps в py-файлах❤4
Media is too big
VIEW IN TELEGRAM
Настройки RADIUS клиента в Mikrotik RouterOS
Описание процесса настройки RADIUS клиента в Mikrotik RouterOS, создание отдельного Action и правила для подключения отдельного Log, в котором будут все RADIUS сообщения
источник
Описание процесса настройки RADIUS клиента в Mikrotik RouterOS, создание отдельного Action и правила для подключения отдельного Log, в котором будут все RADIUS сообщения
источник
👍2❤1
Подборка часто используемых команд для первоначальной настройки устройств MikroTik: имя устройства, DNS сервера, Email, время, доступы и т.д.
Установки имени устройства
Установка своих DNS серверов и отключение получения их по DHCP
Настройка email клиента для работы с Yandex.Mail
Для корректной работы разрешите в настройках профиля авторизацию SMTP по обычному паролю или [рекомендуется] используйте пароли приложений (почта)
Настройка синхронизации времени по NTP и MikroTik Cloud Time (Москва)
Изменение количества строк системного лога
Очистка системного лога (оставляет сообщение о смене настроек лога)
Контроль доступа с IP адресов домена
Это позволяет использовать DynamicDNS для записей своего домена, и получать доступ к устройству с IP адресов, которые будут резолвится с домена. RouterOS будет сам обновлять записи и access-list при изменении записи в домене.
Обратите внимание, в конце 2 строки с move. Это сделано для того, чтобы правило корректно двигалось на первое место при включенном fasttrack (то есть первое место), а также при отключенном (на нулевое место)
Отключение ненужных служб доступа (web тоже отключается, осторожно)
Фикс MTU (нужен редко, но метко)
Заблокировать доступ к WiFi по MAC-адресу
Поместить клиента WiFi в отдельный VLAN по MAC-адресу
Настройка пароля и безопасности WiFi на default профиль
Включение пробросов портов SSH
Установки имени устройства
/system identity set name=MyHomeMikrotik
Установка своих DNS серверов и отключение получения их по DHCP
/ip dns set servers=8.8.8.8,1.1.1.1
/ip dhcp-client set [find ] use-peer-dns=no
Настройка email клиента для работы с Yandex.Mail
Для корректной работы разрешите в настройках профиля авторизацию SMTP по обычному паролю или [рекомендуется] используйте пароли приложений (почта)
/tool e-mail
set address=smtp.yandex.ru [email protected] password=example-pass port=587 start-tls=yes [email protected]
Настройка синхронизации времени по NTP и MikroTik Cloud Time (Москва)
/system ntp client set enabled=yes server-dns-names=time.google.com,0.pool.ntp.org,1.pool.ntp.org,2.pool.ntp.org,3.pool.ntp.org
/system clock set time-zone-autodetect=no
/system clock set time-zone-name=Europe/Moscow
/ip cloud set update-time=yes
Изменение количества строк системного лога
/system logging action set memory memory-lines=10000
Очистка системного лога (оставляет сообщение о смене настроек лога)
/system logging action set memory memory-lines=1
/system logging action set memory memory-lines=10000
Контроль доступа с IP адресов домена
Это позволяет использовать DynamicDNS для записей своего домена, и получать доступ к устройству с IP адресов, которые будут резолвится с домена. RouterOS будет сам обновлять записи и access-list при изменении записи в домене.
Обратите внимание, в конце 2 строки с move. Это сделано для того, чтобы правило корректно двигалось на первое место при включенном fasttrack (то есть первое место), а также при отключенном (на нулевое место)
/ip firewall address-list
add address=access.example.con list=DomainIPsAccess
/ip firewall filter
add action=accept chain=input src-address-list=DomainIPsAccess comment="Allow DomainIPsAccess"
move [find comment="Allow DomainIPsAccess"] 1
move [find comment="Allow DomainIPsAccess"] 0
Отключение ненужных служб доступа (web тоже отключается, осторожно)
/ip service disable www,ftp,api,api-ssl,telnet
/ip service enable ssh,winbox
/ip service set ssh address=""
/ip service set winbox address=""
Фикс MTU (нужен редко, но метко)
/ip firewall mangle
add chain=postrouting out-interface-list=WAN protocol=tcp tcp-flags=syn,!ack action=change-mss new-mss=clamp-to-pmtu comment="MTU Fix" passthrough=yes
Заблокировать доступ к WiFi по MAC-адресу
/interface wireless access-list authentication=no mac-address=8A:EA:B7:2E:38:C1
Поместить клиента WiFi в отдельный VLAN по MAC-адресу
/interface wireless access-list
add interface=all mac-address=8A:EA:B7:2E:38:C1 vlan-id=99 vlan-mode=use-tag
Настройка пароля и безопасности WiFi на default профиль
/interface wireless security-profiles set default mode=dynamic
-keys authentication-types=wpa2-psk unicast-ciphers=aes-ccm group-ciphers=aes-ccm
wpa2-pre-shared-key=bigpassword
Включение пробросов портов SSH
/ip ssh set forwarding-enabled=both
❤1