Хочешь прокачать Bash-скриптинг в Linux?
Глянь Pure Bash Bible — сборник мощных решений на чистом Bash, без сторонних тулов.
Идеально, если хочешь выжать максимум из скриптов и убрать лишние зависимости
https://github.com/dylanaraps/pure-bash-bible
👉 DevOps Portal
Глянь Pure Bash Bible — сборник мощных решений на чистом Bash, без сторонних тулов.
Идеально, если хочешь выжать максимум из скриптов и убрать лишние зависимости
https://github.com/dylanaraps/pure-bash-bible
Please open Telegram to view this post
VIEW IN TELEGRAM
❤18👍8
Kubernetes Ingress vs Gateway API
На большинстве кластеров Kubernetes сегодня для публикации HTTP(S)-трафика используется Ingress.
Он выполняет свою задачу, но есть ряд ограничений:
🔹 Жестко завязан на HTTP
🔹 Обладает кластерной областью видимости
🔹 Плохо масштабируется по расширению
🔹 Отсутствует гибкий контроль маршрутизации
...и не только.
Если ты еще не работал с Gateway API, возможно, упускаешь более современный подход к управлению трафиком — с поддержкой мультипротокольности и гораздо большей гибкостью.
👉 DevOps Portal
На большинстве кластеров Kubernetes сегодня для публикации HTTP(S)-трафика используется Ingress.
Он выполняет свою задачу, но есть ряд ограничений:
...и не только.
Если ты еще не работал с Gateway API, возможно, упускаешь более современный подход к управлению трафиком — с поддержкой мультипротокольности и гораздо большей гибкостью.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍8❤3🔥1
Как скопировать образ контейнера между репозиториями
Типичная, но не всегда тривиальная задача. Практика:
🔹 С Docker: https://labs.iximiuz.com/challenges/copy-container-image-from-one-repository-to-another-with-docker
🔹 Без Docker: https://labs.iximiuz.com/challenges/copy-container-image-from-one-repository-to-another-without-docker
🔹 Мультиплатформенные образы: https://labs.iximiuz.com/challenges/copy-multi-platform-image-from-one-repository-to-another
🔹 Все теги из репозитория:
https://labs.iximiuz.com/challenges/copy-all-image-tags-from-one-repository-to-another
https://pic.x.com/gnyF8sBfum
👉 DevOps Portal
Типичная, но не всегда тривиальная задача. Практика:
https://labs.iximiuz.com/challenges/copy-all-image-tags-from-one-repository-to-another
https://pic.x.com/gnyF8sBfum
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5🔥4❤2
Полностью согласен
#Terraform разворачивает твою инфраструктуру — создает серверы, сети, фаерволы, хранилища — все базовые компоненты.
#Ansible настраивает уже развернутую инфраструктуру — устанавливает приложения, задает права доступа, запускает сервисы и применяет обновления
👉 DevOps Portal
#Terraform разворачивает твою инфраструктуру — создает серверы, сети, фаерволы, хранилища — все базовые компоненты.
#Ansible настраивает уже развернутую инфраструктуру — устанавливает приложения, задает права доступа, запускает сервисы и применяет обновления
Please open Telegram to view this post
VIEW IN TELEGRAM
👍44❤5
Совет по Linux на сегодня
Не помните название команды?
Используйте команду
Например, если вы ищете команду, связанную с CPU👆
👉 DevOps Portal
Не помните название команды?
Используйте команду
apropos, чтобы освежить памятьapropos search_term
Например, если вы ищете команду, связанную с CPU
Please open Telegram to view this post
VIEW IN TELEGRAM
❤22👍12🔥3
Архитектура Kubernetes — упрощённое объяснение
👉 DevOps Portal
KUBECTL — Позволяет взаимодействовать с Kubernetes.API SERVER — "Мозг" системы, обрабатывающий все запросы.CONTROLLER MANAGER — Управляет ресурсами кластера по мере необходимости.SCHEDULER — Находит оптимальное место для запуска рабочих нагрузок.KUBELET — Запускает рабочие нагрузки на каждом узле (ноде).ETCD — Хранит всю информацию о состоянии кластера (ключ-значение хранилище).KUBE PROXY — Перенаправляет трафик к нужным подам.POD — Единица размещения, в которой выполняются контейнеры.CONTAINER RUNTIME — Запускает контейнеры внутри подовPlease open Telegram to view this post
VIEW IN TELEGRAM
❤14👍10🔥6
Быстрый совет по Linux
Вы можете сгруппировать файлы по их расширениям с помощью команды:
Файлы будут сгруппированы по расширениям в алфавитном порядке
👉 DevOps Portal
Вы можете сгруппировать файлы по их расширениям с помощью команды:
ls -X
Файлы будут сгруппированы по расширениям в алфавитном порядке
Please open Telegram to view this post
VIEW IN TELEGRAM
❤27👍15
Карта ключевых команд Kubernetes
Это не полный список; здесь приведены только основные команды
👉 DevOps Portal
Это не полный список; здесь приведены только основные команды
Please open Telegram to view this post
VIEW IN TELEGRAM
❤12👍7🔥2
Media is too big
VIEW IN TELEGRAM
Готовимся к собеседованию — ловите крутейший сборник самых частых вопросов с ответами и примерами кода.
Разбито по полочкам: что нужно знать для прохождения HR, техническое интервью, полезные материалы и топ вопросов по популярности.
Топ на русском и основан на опыте отечественных же компаний, забираем
👉 DevOps Portal
Разбито по полочкам: что нужно знать для прохождения HR, техническое интервью, полезные материалы и топ вопросов по популярности.
Топ на русском и основан на опыте отечественных же компаний, забираем
Please open Telegram to view this post
VIEW IN TELEGRAM
👍16❤3🔥2🏆1
Ваши фронтенд и бэкенд находятся в отдельных репозиториях? Не проблема — вы всё равно можете собрать и доставить всё в одном Docker-образе
👉 DevOps Portal
Please open Telegram to view this post
VIEW IN TELEGRAM
❤14👍11👀4🤯2💊2
Совет дня для Linux
Многие об этом не знают или почти не используют.
В Linux можно сделать файл или директорию неудаляемыми, установив флаг неизменяемости (immutable) с помощью команды
Опция
Чтобы сделать директорию неудаляемой, добавьте рекурсивную опцию
Чтобы снова разрешить удаление файла, используйте флаг
👉 DevOps Portal
Многие об этом не знают или почти не используют.
В Linux можно сделать файл или директорию неудаляемыми, установив флаг неизменяемости (immutable) с помощью команды
chattr:$ sudo chattr +i -V /home/traw/keys.txt
Опция
-V — подробный вывод (verbose).Чтобы сделать директорию неудаляемой, добавьте рекурсивную опцию
-R:$ sudo chattr +i -VR /home/traw/backups
Чтобы снова разрешить удаление файла, используйте флаг
-i. Для директорий — -i с опцией -R.Please open Telegram to view this post
VIEW IN TELEGRAM
👍20❤9🔥4
This media is not supported in your browser
VIEW IN TELEGRAM
Техдир выдал каждому девопсу по будильнику, который синхронизирован с критическими алертами на продакшене
👉 DevOps Portal
Please open Telegram to view this post
VIEW IN TELEGRAM
😁38👍3🌚3
Многие инженеры по Kubernetes до конца не понимают, как работает автоскейлинг в Kubernetes и в чём разница между HPA, VPA и KEDA.
Вот инфографика, чтобы помочь вам лучше разобраться.
👉 DevOps Portal
Вот инфографика, чтобы помочь вам лучше разобраться.
Please open Telegram to view this post
VIEW IN TELEGRAM
❤9👍7🔥4
Калькулятор Chmod
Отличный калькулятор Chmod для преобразования прав доступа к файлам Linux между различными форматами.
https://chmod-calculator.com/
👉 DevOps Portal
Отличный калькулятор Chmod для преобразования прав доступа к файлам Linux между различными форматами.
https://chmod-calculator.com/
Please open Telegram to view this post
VIEW IN TELEGRAM
💊14👍9😁7❤3🔥3
Как (и зачем) использовать containerd? 🧐
containerd — вероятно, самый широко используемый контейнерный рантайм:
🔹 Docker использует его под капотом для запуска контейнеров и хранения образов.
🔹 Kubernetes использует его как CRI-рантайм для запуска Pod'ов.
Практикуйтесь в работе с containerd: https://labs.iximiuz.com/courses/containerd-cli
👉 DevOps Portal
containerd — вероятно, самый широко используемый контейнерный рантайм:
Практикуйтесь в работе с containerd: https://labs.iximiuz.com/courses/containerd-cli
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥8👍3❤2
26 сетевых протоколов, которые нужно знать
👉 DevOps Portal
FTP (20/21, TCP) — Протокол передачи файлов: используется для передачи файлов между клиентом и сервером.
SFTP (22, TCP) — Защищённый протокол передачи файлов: FTP по SSH для безопасной передачи файлов.
TFTP (69, UDP) — Упрощённый протокол передачи файлов: простой, незащищённый протокол передачи файлов.
SSH (22, TCP) — Secure Shell: защищённый удалённый вход и выполнение команд.
TELNET (23, TCP) — Teletype Network: незащищённый удалённый вход и выполнение команд.
SMTP (25, TCP) — Простой протокол передачи почты: используется для отправки электронной почты.
SMTPS (587, TCP) — SMTP через TLS: SMTP поверх Transport Layer Security (TLS) для защищённой передачи электронной почты.
POP3 (110, TCP) — Post Office Protocol v3: получение электронной почты путём её загрузки с сервера.
POP3S (995, TCP) — POP3 через SSL: защищённый POP3 для получения электронной почты.
IMAP (143, TCP) — Протокол доступа к сообщениям Интернета: доступ к электронной почте напрямую на сервере.
IMAPS (995, TCP) — IMAP через SSL: защищённый IMAP-доступ к почте.
HTTP (80, TCP) — Протокол передачи гипертекста: незащищённый веб-сёрфинг.
HTTPS (443, TCP) — Безопасный протокол передачи гипертекста: защищённый веб-сёрфинг через SSL или TLS.
DNS (53, TCP/UDP) — Система доменных имён: используется для преобразования доменных имён в IP-адреса.
DHCP (67/68, UDP) — Протокол динамической настройки хоста: используется для динамического назначения IP-адресов.
NTP (123, UDP) — Протокол сетевого времени: синхронизация часов по сети.
LDAP (389, TCP) — Протокол лёгкого доступа к каталогам: доступ и управление информацией каталогов.
LDAPS (636, TCP/UDP) — LDAP через SSL: используется для защищённого доступа к LDAP.
SNMP (161/162, UDP) — Протокол простого управления сетью: используется для мониторинга и управления сетевыми устройствами.
SYSLOG (514, UDP) — Системное логирование: протокол и система журналирования сетевых событий.
SMB (445, TCP) — Протокол серверных сообщений: совместное использование файлов и сетевые коммуникации.
SQL (1433, TCP) — Язык структурированных запросов (SQL): управление БД от Microsoft.
SQLNET (1521, TCP) — SQLNET (служба Oracle Network): обеспечивает взаимодействие клиентов Oracle SQL с сервером баз данных Oracle.
MySQL (3306, TCP) — MySQL: сервер базы данных MySQL.
RDP (3389, TCP/UDP) — Протокол удалённого рабочего стола: удалённый доступ к рабочему столу.
SIP (5060/5061, TCP/UDP) — Протокол установления сеансов: используется для управления мультимедийными сессиями связи.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍22❤6🔥4🌚1🤝1
Совет дня по Linux
Многие либо не знают об этом, либо почти не используют.
В Linux вы можете нажать
👉 DevOps Portal
Многие либо не знают об этом, либо почти не используют.
В Linux вы можете нажать
~TAB TAB, чтобы быстро получить список всех доступных пользователей в системе.$ ~TAB TAB
Please open Telegram to view this post
VIEW IN TELEGRAM
👍26🔥7❤6😁1
Никогда не открывайте порты в Docker-контейнерах следующим образом:
Такое конфигурирование позволяет контейнеру обходить любые правила брандмауэра, настроенные на хосте. Если необходимо обеспечить внешний доступ к контейнеру, делайте это так:
Такая конфигурация привязывает сервис к localhost, предотвращая доступ к нему извне по адресу ip:3000.
👉 DevOps Portal
ports:
- "3000:3000"
Такое конфигурирование позволяет контейнеру обходить любые правила брандмауэра, настроенные на хосте. Если необходимо обеспечить внешний доступ к контейнеру, делайте это так:
ports:
- "127.0.0.1:3000:3000"
Такая конфигурация привязывает сервис к localhost, предотвращая доступ к нему извне по адресу ip:3000.
Please open Telegram to view this post
VIEW IN TELEGRAM
❤39👍24🤔13🔥8