и посмотреть медиа
DevOps - interview questions
и посмотреть медиа
DevOps interviews.
AI bot for text-to-speech and voice cloning in Telegram. Create audio using neural network quickly and easily.
Interview questions on DevOps.
🤔 Где находится swap какое устройство использует? Это область на диске, которую операционная система использует как виртуальную память, если основной оперативной памяти (RAM) не хватает. Swap может быть представлен в виде: 🚩Где находится swap? 🟠Swap-раздел Swap может быть выделен как отдельный раздел диска. Он создается во время установки системы или вручную и не имеет файловой системы (тип раздела — swap). 🟠Swap-файл Swap может быть представлен как обычный файл в файловой системе (например, /swapfile). 🚩Как узнать, где находится swap? Используйте команды для проверки текущей конфигурации: Проверка swap через swapon swapon --show Пример вывода NAME TYPE SIZE USED PRIO /dev/sda2 partition 4G 1G -2 /swapfile file 2G 0B -3 - NAME: Устройство или файл, используемый для swap. - TYPE: Указывает, является ли swap разделом или файлом. - SIZE: Размер swap. - USED: Сколько swap в данный момент используется. - PRIO: Приоритет использования (меньшее значение — меньший приоритет). Проверка через free free -h 🚩Проверка через `fstab` Если swap является разделом, он обычно прописан в /etc/fstab cat /etc/fstab | grep swap Пример /dev/sda2 none swap sw 0 0 🚩Какое устройство использует swap? Если swap — это раздел, то он отображается как устройство, например, /dev/sda2. Если swap — это файл, его путь будет, например, /swapfile. Ставь 👍 и забирай 📚 Базу знаний
Открыть канал и посмотреть медиаКонтейнеры в одном инструменте, виртуалки — в другом, частное облако — вообще отдельная история со своей командой и своим бюджетом. На практике границы между ними давно стёрлись. Монолиты работают в виртуальных машинах, микросервисы — в контейнерах, часть инфраструктуры — на собственном железе, часть — в облаке. Каждый кусок требует своего набора инструментов и своих правил доступа. Deckhouse Platform собирает всё это под одним управлением. Контейнеры, виртуальные машины, ML-нагрузки и управляемые сервисы работают на любой инфраструктуре, без привязки к одному провайдеру. Сейчас так работают 1300+ кластеров в 260+ компаниях. На консультации с инженерами Deckhouse разберите, какие из ваших сценариев платформа закрывает уже сейчас 👈
Открыть канал и посмотреть медиа🤔 Что сейчас больше используется ингресс класс в ингрессе или указывается ингресс контроллер непосредственно в апликейшене? Сейчас стандартом является использование ingressClassName, а аннотации kubernetes.io/ingress.class считаются устаревшими (deprecated). 🚩Что лучше использовать? 🟠`ingressClassName` (новый метод, Kubernetes 1.19+) Современный, удобный, поддерживается официально Работает с IngressClass ресурсами Можно управлять через CRD (IngressClass) 🟠Аннотация `kubernetes.io/ingress.class` (старый метод, deprecated с 1.18) Все еще работает, но устарела Нельзя контролировать IngressClass через CRD 🚩Как правильно указывать `ingressClassName`? 1⃣Настраиваем IngressClass (если нужно) yaml apiVersion: networking.k8s.io/v1 kind: IngressClass metadata: name: nginx spec: controller: k8s.io/ingress-nginx 2⃣Используем ingressClassName в Ingress yaml apiVersion: networking.k8s.io/v1 kind: Ingress metadata: name: my-ingress spec: ingressClassName: nginx rules: - host: example.com http: paths: - path: / pathType: Prefix backend: service: name: my-service port: number: 80 🚩Старый способ (не рекомендуется, но все еще встречается) Раньше использовали аннотацию kubernetes.io/ingress.class yaml apiVersion: networking.k8s.io/v1 kind: Ingress metadata: name: my-ingress annotations: kubernetes.io/ingress.class: "nginx" spec: rules: - host: example.com http: paths: - path: / pathType: Prefix backend: service: name: my-service port: number: 80 Ставь 👍 и забирай 📚 Базу знаний
Открыть канал и посмотреть медиа🤔 Какой экспортер используется, если есть Kubernetes и нужно в Elasticsearch отправлять данные? Обычно используется Fluent Bit или Fluentd с output-плагином для Elasticsearch. Эти агенты собирают логи с нод, контейнеров и pod'ов и отправляют их напрямую в Elasticsearch. Ставь 👍 если знал ответ, 🔥 если нет Забирай 📚 Базу знаний
Открыть канал и посмотреть медиа🤔 Как определить опции запуска пайплайна при редактировании определенных ресурсов в гите? При работе с CI/CD (GitHub Actions, GitLab CI, Jenkins) часто нужно запускать пайплайн только при изменении определенных файлов. Это помогает оптимизировать сборку, экономить ресурсы и время. 🚩В GitHub Actions (on: push, paths) В GitHub Actions можно указать файлы, изменения в которых запустят пайплайн. name: Infra Pipeline on: push: paths: - 'infra/**' - 'k8s/**' pull_request: paths: - 'infra/**' - 'k8s/**' jobs: deploy: runs-on: ubuntu-latest steps: - name: Checkout code uses: actions/checkout@v3 - name: Deploy Infrastructure run: ./deploy.sh 🚩В GitLab CI/CD (only: changes) В GitLab можно настроить запуск пайплайна по изменению файлов с помощью only: changes. stages: - deploy terraform: stage: deploy script: - terraform apply -auto-approve only: changes: - terraform/** 🚩В Jenkins (when { changes }) В Jenkins Declarative Pipeline можно использовать when { changes } для проверки измененных файлов. pipeline { agent any stages { stage('Deploy Ansible') { when { changes path: 'ansible/**' } steps { sh './deploy_ansible.sh' } } stage('Deploy Helm') { when { changes path: 'helm/**' } steps { sh './deploy_helm.sh' } } } } Ставь 👍 и забирай 📚 Базу знаний
Открыть канал и посмотреть медиа🤔 На каком шаге заканчивается Continuous Integration? CI заканчивается после: - успешной сборки, - прохождения тестов, - публикации артефактов. Далее идёт этап доставки (delivery) или развёртывания (deployment) — это уже CD. Ставь 👍 если знал ответ, 🔥 если нет Забирай 📚 Базу знаний
Открыть канал и посмотреть медиа🤔 Что такое container network module в докере? Это архитектурная модель, разработанная Docker для управления сетями контейнеров. Она описывает, как создаются, управляются и взаимодействуют сетевые компоненты в Docker-контейнерах. CNM служит основой для организации сетей Docker и позволяет подключать контейнеры к различным сетевым средам, обеспечивая гибкость, масштабируемость и безопасность. 🚩Основные компоненты CNM 🟠Sandbox Это изолированная среда, где настраиваются сетевые интерфейсы контейнера, такие как IP-адреса, маршруты и DNS. Что включает: veth-пара интерфейсов (виртуальный Ethernet): соединяет контейнер с внешней сетью. Конфигурации маршрутов и сетевых правил. 🟠Endpoint Точка подключения контейнера к сети. Функции: Обеспечивает контейнеру связь с другими контейнерами или внешними сетями. Соединяет Sandbox с Network. 🟠Network Логическая сущность, объединяющая Endpoints для обеспечения взаимодействия контейнеров. Типы сетей в Docker: bridge: Локальная сеть, позволяющая контейнерам взаимодействовать на одном хосте. host: Контейнеры используют сетевой стек хоста без изоляции. none: Сеть отключена; контейнер полностью изолирован. overlay: Распределенная сеть для связи контейнеров на разных хостах. macvlan: Контейнеры получают прямой доступ к физической сети. 🚩Как это работает в Docker Создается Sandbox, где настраиваются сетевые параметры контейнера. Создается Endpoint, который подключает контейнер к выбранной сети. Endpoint добавляется в Network, что позволяет контейнеру взаимодействовать с другими узлами. 🚩Плюсы ➕Гибкость Легко подключать контейнеры к различным типам сетей. ➕Изоляция Обеспечивает безопасность, изолируя сетевые пространства контейнеров. ➕Расширяемость CNM поддерживает сторонние плагины для интеграции с другими сетевыми решениями (например, Calico, Flannel). ➕Управляемость Позволяет контролировать настройки сети через команды Docker. 🚩Пример создания сети 1⃣Создание сети docker network create my_bridge 2⃣Подключение контейнера к сети docker run --network my_bridge -d nginx Ставь 👍 и забирай 📚 Базу знаний
Открыть канал и посмотреть медиа🤔 Какие параметры файловой системы могут влиять на выбор файловой системы? Файловая система выбирается по ряду параметров: - Тип нагрузки – большие файлы (XFS, ZFS) или много мелких файлов (EXT4, Btrfs). - Журналирование – влияет на отказоустойчивость (XFS, EXT4). - Снапшоты – нужны ли сохранения состояний файлов (Btrfs, ZFS). - Шифрование – встроенная защита данных (ZFS, LUKS). - Резервирование пространства – например, XFS и ZFS резервируют место. Ставь 👍 если знал ответ, 🔥 если нет Забирай 📚 Базу знаний
Открыть канал и посмотреть медиа🤔 По какой причине inode могут закончиться? Это структуры данных, которые хранят информацию о файлах и каталогах. Каждый файл или каталог на диске ассоциируется с одним inode, который содержит метаданные файла, такие как его размер, разрешения, временные метки, ссылки на блоки данных и т.д. Количество inode на файловой системе обычно определяется в момент её создания и не может быть изменено без переформатирования или значительных изменений в файловой системе. 🚩Причины исчерпания 🟠Большое количество мелких файлов Одной из наиболее частых причин исчерпания inode является наличие очень большого количества маленьких файлов на файловой системе. Поскольку каждый файл использует как минимум один inode, системы с большим количеством мелких файлов могут исчерпать доступные inode, даже если дисковое пространство по-прежнему доступно. 🟠Недостаточное количество выделенных inode При создании файловой системы, если количество выделенных inode было рассчитано неправильно (слишком мало для предполагаемого использования), это может привести к раннему их исчерпанию. Это особенно актуально для серверов или систем, где ожидается большое количество файлов. 🟠Особенности файловой системы Некоторые файловые системы, такие как Ext3 или Ext4, имеют фиксированное соотношение inode к объёму файловой системы, которое задаётся при их создании. Если создать файловую систему с недостаточным количеством inode для конкретного случая использования, то в дальнейшем это может стать проблемой. 🚩Решения проблемы исчерпания 🟠Проверка использования С помощью команды df -i можно проверить, сколько inode используется и сколько ещё доступно в вашей файловой системе. 🟠Очистка файловой системы Удаление ненужных или временных файлов может освободить inode. 🟠Изменение файловой системы Если возможно, можно увеличить количество inode путём изменения файловой системы или пересоздания файловой системы с более высоким количеством inode. Для файловых систем, таких как XFS или некоторые конфигурации Btrfs, можно динамически добавлять inode. 🟠Использование других файловых систем Переход на другую файловую систему, которая не имеет строгих ограничений на количество inode (например, Btrfs или ZFS), может быть решением для систем с большим количеством маленьких файлов. 🟠Архивирование Программы и процессы, которые создают большое количество мелких файлов, могут модифицироваться для хранения данных в формате архивов вместо отдельных файлов, что снижает потребление inode. Ставь 👍 и забирай 📚 Базу знаний
Открыть канал и посмотреть медиаOnly registered users can share their opinion.
Be the first to share your impression of this resource!