ar
Feedback
DevOps | Вопросы собесов

DevOps | Вопросы собесов

الذهاب إلى القناة على Telegram
5 573
المشتركون
-124 ساعات
+137 أيام
+3430 أيام

جاري تحميل البيانات...

جذب المشتركين
أكتوبر '26
أكتوبر '26
+14
في 0 قنوات
سبتمبر '26
+83
في 0 قنوات
Get PRO
أغسطس '26
+88
في 0 قنوات
Get PRO
يوليو '26
+75
في 0 قنوات
Get PRO
يونيو '26
+54
في 1 قنوات
Get PRO
مايو '26
+51
في 0 قنوات
Get PRO
أبريل '26
+74
في 0 قنوات
Get PRO
مارس '26
+74
في 0 قنوات
Get PRO
فبراير '26
+132
في 0 قنوات
Get PRO
يناير '26
+110
في 0 قنوات
Get PRO
ديسمبر '25
+70
في 0 قنوات
Get PRO
نوفمبر '25
+119
في 0 قنوات
Get PRO
أكتوبر '25
+114
في 0 قنوات
Get PRO
سبتمبر '25
+124
في 0 قنوات
Get PRO
أغسطس '25
+152
في 0 قنوات
Get PRO
يوليو '25
+106
في 0 قنوات
Get PRO
يونيو '25
+126
في 0 قنوات
Get PRO
مايو '25
+142
في 0 قنوات
Get PRO
أبريل '25
+175
في 1 قنوات
Get PRO
مارس '25
+142
في 1 قنوات
Get PRO
فبراير '25
+212
في 3 قنوات
Get PRO
يناير '25
+336
في 53 قنوات
Get PRO
ديسمبر '24
+151
في 1 قنوات
Get PRO
نوفمبر '24
+155
في 0 قنوات
Get PRO
أكتوبر '24
+393
في 41 قنوات
Get PRO
سبتمبر '24
+511
في 248 قنوات
Get PRO
أغسطس '24
+163
في 0 قنوات
Get PRO
يوليو '24
+219
في 54 قنوات
Get PRO
يونيو '24
+824
في 243 قنوات
Get PRO
مايو '24
+1 718
في 189 قنوات
Get PRO
أبريل '24
+765
في 22 قنوات
التاريخ
نمو المشتركين
الإشارات
القنوات
06 أكتوبر+1
05 أكتوبر+3
04 أكتوبر+4
03 أكتوبر0
02 أكتوبر+3
01 أكتوبر+3
منشورات القناة
🤔 Чем отличаются Secrets и ConfigMaps? ConfigMap используется для хранения неконфиденциальных данных, таких как параметры окружения, пути, настройки. Secrets предназначены для хранения чувствительной информации — паролей, токенов, сертификатов. Все значения в Secret кодируются в base64. ConfigMap читается и монтируется в контейнеры так же, как и Secret, но Secret предоставляет дополнительный уровень безопасности: например, ограничения прав доступа, защита при выводе и хранении в etcd в зашифрованном виде. Ставь 👍 если знал ответ, 🔥 если нет Забирай 📚 Базу знаний

2
🤔 Что такое basic auth? Basic Auth (Basic Authentication) – это простой метод аутентификации HTTP-запросов. Он используется для ограничения доступа к ресурсам, отправляя логин и пароль в заголовке запроса. 🟠Как работает Basic Auth? Клиент делает запрос к серверу. Сервер отвечает 401 Unauthorized и требует аутентификацию: HTTP/1.1 401 Unauthorized WWW-Authenticate: Basic realm="Restricted Area" Клиент кодирует логин и пароль в Base64 и отправляет их в заголовке: Authorization: Basic dXNlcm5hbWU6cGFzc3dvcmQ= 🟠Пример запроса с Basic Auth В curl curl -u username:password http://example.com/protected В Python (requests): import requests from requests.auth import HTTPBasicAuth response = requests.get("http://example.com/protected", auth=HTTPBasicAuth("username", "password")) print(response.text) В JavaScript (fetch): fetch("http://example.com/protected", { headers: { "Authorization": "Basic " + btoa("username:password") } }) .then(response => response.text()) .then(data => console.log(data)); 🚩Минусы ➖Не безопасен без HTTPS данные передаются в открытом виде (Base64 — это не шифрование!). ➖Логин и пароль передаются в каждом запросе что делает систему уязвимой. ➖Нет механизма разлогинивания браузеры кэшируют креды, и их сложно сбросить. Ставь 👍 и забирай 📚 Базу знаний
326
3
🤔 Как доставлять билд в окружение? Билд доставляется в окружение через CI/CD пайплайн. Этапы: 1. Сборка (build) — компиляция и упаковка артефакта. 2. Тестирование — юнит, интеграционные, e2e. 3. Артефакт хранится в реестре (например, Docker Registry, Nexus, Artifactory). 4. Деплой — с помощью: - kubectl, Helm (в Kubernetes); - Ansible, Terraform; - скриптов или GitLab/GitHub Actions. Процесс автоматизируется, чтобы исключить ошибки и ускорить доставку. Ставь 👍 если знал ответ, 🔥 если нет Забирай 📚 Базу знаний
429
4
🤔 Что такое cherry pick? Это команда в системе контроля версий Git, которая позволяет выбрать отдельные коммиты из одной ветки и применить их к другой ветке. Это полезно, когда вы хотите перенести конкретные изменения (коммиты) в текущую ветку, не выполняя слияние всей ветки. 🚩Когда используется 🟠Применение отдельных изменений Когда нужно перенести конкретные исправления или функции из одной ветки в другую, не сливая все изменения из исходной ветки. 🟠Быстрое исправление ошибок Когда найденное исправление в одной ветке нужно срочно применить в другой, например, из ветки разработки в ветку релиза. 🟠Избежание сложного слияния Когда слияние всей ветки может привести к конфликтам или нежелательным изменениям, cherry-pick позволяет аккуратно перенести только нужные коммиты. 🚩Примеры использования 🟠Простого `cherry-pick` Перенос одного коммита из другой ветки. # Переключитесь на ветку, куда вы хотите применить изменения git checkout target-branch # Выполните cherry-pick коммита git cherry-pick <commit-hash> 🟠Применения нескольких коммитов Перенос нескольких коммитов из другой ветки. # Переключитесь на ветку, куда вы хотите применить изменения git checkout target-branch # Выполните cherry-pick нескольких коммитов git cherry-pick <commit-hash-1> <commit-hash-2> <commit-hash-3> 🟠Применения диапазона коммитов Перенос диапазона коммитов из другой ветки. # Переключитесь на ветку, куда вы хотите применить изменения git checkout target-branch # Выполните cherry-pick диапазона коммитов git cherry-pick <start-commit-hash>..<end-commit-hash> 🚩Разрешение конфликтов 1⃣Разрешите конфликты в файлах. 2⃣Добавьте изменения в индекс git add <filename> 3⃣Завершите процесс cherry-pick git cherry-pick --continue 🚩Прерывание Если вы хотите прервать процесс cherry-pick, можно использовать команду git cherry-pick --abort Ставь 👍 и забирай 📚 Базу знаний
440
5
Свой ИИ-агент на вашем сервере. Без утечки данных Сотрудники втайне скармливают ChatGPT коммерческую тайну и базы клиентов? П
Свой ИИ-агент на вашем сервере. Без утечки данных Сотрудники втайне скармливают ChatGPT коммерческую тайну и базы клиентов? Пора вернуть контроль IT-департаменту. Разверните изолированного ИИ-агента Hermes в закрытом контуре вашей компании на локальном VPS. Технические особенности: ✅ Безопасность: Вся история запросов, файлы и память хранятся строго у вас. Полное соответствие 152-ФЗ. ✅ Защита: Настроено автоматическое обезличивание данных перед обработкой и защита от prompt injection. ✅ Интеграция: Работает напрямую с вашими внутренними базами данных, 1С, CRM и закрытыми архивами документов через Element-чат. ✅ Выгода: Разовая оплата за внедрение и поддержку. ✅ Никаких плат за лицензии пользователей. Запишитесь на 30-минутное демо — покажем работу агента на вашем процессе. Узнать больше #реклама 16+ agent.itliga.ru О рекламодателе
474
6
🤔 Как отличается работа с PersistentVolume у Deployment и StatefulSet? Deployment может использовать общий volume или один PVC для всех подов. В StatefulSet у каждого пода есть свой отдельный PVC, созданный на основе шаблона. Эти PVC жёстко связаны с именами подов и сохраняются даже после удаления подов. Это позволяет сохранять состояние у каждого инстанса. Ставь 👍 если знал ответ, 🔥 если нет Забирай 📚 Базу знаний
471
7
🤔 Какие виды метрик в Prometheus знаешь? В Prometheus есть 4 типа метрик, которые используются для мониторинга и сбора данных. 🚩Counter (Счетчик) – только увеличивается Используется для подсчета событий, ошибок, запросов Значение только увеличивается (нельзя уменьшить) promql http_requests_total Как вывести количество запросов за последние 5 минут promql rate(http_requests_total[5m]) Пример экспозиции в приложении go httpRequests := prometheus.NewCounter( prometheus.CounterOpts{ Name: "http_requests_total", Help: "Total number of HTTP requests", }) 🚩Gauge (Измеритель) – может расти и уменьшаться Используется для измерения текущего состояния (температура, RAM, CPU) Значение может расти и уменьшаться promql node_memory_usage_bytes Как вывести среднюю загрузку CPU за 5 минут promql avg(node_cpu_seconds_total) Пример экспозиции в коде go cpuUsage := prometheus.NewGauge( prometheus.GaugeOpts{ Name: "cpu_usage_percentage", Help: "Current CPU usage", }) 🚩Histogram (Гистограмма) – распределение значений Используется для измерения длительности, размера запросов Делит данные по диапазонам (buckets) promql http_request_duration_seconds_bucket Как вычислить среднее время отклика promql histogram_quantile(0.95, rate(http_request_duration_seconds_bucket[5m])) Пример в коде go requestDuration := prometheus.NewHistogram( prometheus.HistogramOpts{ Name: "http_request_duration_seconds", Help: "Histogram of response time for HTTP requests", Buckets: prometheus.DefBuckets, }) 🚩Summary (Сводка) – квантильные метрики Показывает среднее, медиану, квантильное распределение Используется для измерения задержек, времени отклика promql http_request_duration_seconds{quantile="0.99"} Пример в коде: go requestSummary := prometheus.NewSummary( prometheus.SummaryOpts{ Name: "http_request_duration_seconds", Help: "Summary of response time for HTTP requests", Objectives: map[float64]float64{0.5: 0.05, 0.9: 0.01, 0.99: 0.001}, }) Ставь 👍 и забирай 📚 Базу знаний
429
8
Ключевое ИБ-событие года SOC Forum — одно из крупнейших событий в сфере ИБ, которое проходит в рамках Российской недели кибер
Ключевое ИБ-событие года SOC Forum — одно из крупнейших событий в сфере ИБ, которое проходит в рамках Российской недели кибербезопасности. ✅ Здесь встречаются эксперты, представители бизнеса и госструктур, чтобы обсудить ключевые вызовы отрасли. Событие, которое нельзя пропустить. Для тех, кто не может присутствовать лично, будет запущена онлайн-трансляция: 👌 Переключайтесь между залами. 👌 Выбирайте только актуальные для вас выступления. 👌 Задавайте вопросы спикерам в прямом эфире. 👌 Участвуйте в интерактивах. И все это не выходя из дома. Зарегистрируйтесь, и мы напомним о старте трансляции и пришлем ссылку, чтобы вы ничего не пропустили. Узнать больше #реклама 16+ registration.forumsoc.ru О рекламодателе
440
9
🤔 Можно ли откатить деплоймент? Да. Kubernetes поддерживает откат на предыдущую ревизию: - С помощью команды kubectl rollout undo deployment <имя>. - Можно указать конкретную ревизию, если нужно вернуться дальше. Это позволяет безопасно вернуться к предыдущей стабильной версии. Ставь 👍 если знал ответ, 🔥 если нет Забирай 📚 Базу знаний
473
10
🤔 Что такое debezium? Она позволяет отслеживать изменения в базах данных (INSERT, UPDATE, DELETE) в реальном времени и передавать их в Kafka, Elasticsearch, MongoDB и другие системы. 🚩Как работает Debezium? Подключается к базе данных (PostgreSQL, MySQL, MongoDB, Oracle и др.). Слушает лог изменений (binlog, WAL, oplog и т. д.) Формирует события в формате JSON Передаёт их в Kafka или другую шину данных. 🚩Где используется? Синхронизация данных между базами Репликация данных в реальном времени Отправка изменений в аналитические системы (Elasticsearch, ClickHouse) Аудит и логирование изменений 🟠Пример работы с Kafka Запускаем Debezium Connector для PostgreSQL* { "name": "inventory-connector", "config": { "connector.class": "io.debezium.connector.postgresql.PostgresConnector", "database.hostname": "localhost", "database.port": "5432", "database.user": "debezium", "database.password": "dbz", "database.dbname": "inventory", "database.server.name": "dbserver1" } } При изменении данных в таблице, Kafka получит событие: { "schema": { ... }, "payload": { "before": { "id": 1, "name": "Old Name" }, "after": { "id": 1, "name": "New Name" }, "op": "u" // Update } } Ставь 👍 и забирай 📚 Базу знаний
506
11
Программируешь? Участвуй в олимпиаде Высшая проба Сделай шаг в IT вместе с Яндексом и ВШЭ — прими участие в олимпиаде по пром
Программируешь? Участвуй в олимпиаде Высшая проба Сделай шаг в IT вместе с Яндексом и ВШЭ — прими участие в олимпиаде по промышленному программированию! Победителям — БВИ или 100 баллов по профильному предмету в лучших вузах России. Регистрируйся до 20 октября! Узнать больше #реклама olymp.hse.ru О рекламодателе
449
12
🤔 Как прикрутить логирование к любому питон-скрипту? Добавить в начало Можно заменить print на logging.debug(), info(), warning() и т.д. Ставь 👍 если знал ответ, 🔥 если нет Забирай 📚 Базу знаний
528
13
🤔 По какой причине 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. Ставь 👍 и забирай 📚 Базу знаний
554
14
Открытый урок: бизнес-логика в микросервисах Разработка в микросервисах — это не только разбиение на сервисы, но и грамотное
Открытый урок: бизнес-логика в микросервисах Разработка в микросервисах — это не только разбиение на сервисы, но и грамотное распределение логики. 22 октября в 19:00 мск — открытый урок для разработчиков и архитекторов. Узнаете, где должна жить бизнес-логика. Запишитесь! Зарегистрироваться #реклама 16+ otus.ru О рекламодателе
464
15
🤔 Почему если поставить Docker и создать образ, он может не запускаться, в чём может быть причина? 1. Ошибки в Dockerfile: неправильные инструкции, отсутствующие зависимости или неверный базовый образ. 2. Проблемы с сетью: отсутствие необходимых портов или конфликт портов. 3. Отсутствие прав доступа: недостаточно прав для запуска контейнера. 4. Несоответствие архитектуры: образ может быть создан для другой платформы или процессора. Ставь 👍 если знал ответ, 🔥 если нет Забирай 📚 Базу знаний
548
16
REKONFA: что интересного вас ждёт 15 октября 15 октября встречаемся на REKONFA — большой конференции Яндекс Рекламы. На сцене
REKONFA: что интересного вас ждёт 15 октября 15 октября встречаемся на REKONFA — большой конференции Яндекс Рекламы. На сцене: — Глеб Доброрадных — о рекламном рынке и эффективности в сложных условиях — Алексей Штоколов — о новых продуктах и технологиях — Лиза Смирнова — о 360°-форматах и новых точках контакта — Александр Пушной — о человеке и ИИ — Александр Умаров — о персональном подходе, который помогает влюблять клиентов в бренд — Яна Чурикова — об актуальных задачах предпринимателей — Татьяна Мужицкая — о целях и энергии — Антон Беляев — об индивидуальности и проектах, которые любят зрители Вне сцены — зона продуктов Яндекс Рекламы, три игры, викторина, зоны Яндекс Ярда и eLama и нетворкинг. 15 октября, Москва, ВТБ Арена и онлайн. Участие бесплатное. Зарегистрироваться #реклама 16+ ya.rekonfa.ru О рекламодателе
454
17
🤔 Как бы построить выделение ресурсов, балансировку, нагрузку и всю масштабированность? Чтобы система работала стабильно и эффективно, нужно правильно распределять ресурсы, балансировать нагрузку и масштабировать сервисы. 🚩Основные компоненты Выделение ресурсов - CPU, RAM, диски, сеть Балансировка нагрузки равномерное распределение трафика Горизонтальное и вертикальное масштабирование Авто-масштабировани – динамическое добавление/удаление мощностей 🟠Выделение ресурсов (CPU, RAM, Диск, Сеть) В виртуализированных средах (Kubernetes, Docker, AWS, KVM, ESXi) выделение ресурсов настраивается через лимиты и квоты. yaml apiVersion: v1 kind: Pod metadata: name: my-app spec: containers: - name: app image: my-app:latest resources: requests: cpu: "500m" # Минимально 0.5 CPU memory: "256Mi" # Минимально 256MB RAM limits: cpu: "1000m" # Максимально 1 CPU memory: "512Mi" # Максимально 512MB RAM 🟠Балансировка нагрузки Балансировка уменьшает нагрузку на один сервер и равномерно распределяет запросы. nginx upstream backend { server app1:5000; server app2:5000; } server { listen 80; location / { proxy_pass http://backend; } } Пример терраформа для AWS ALB hcl resource "aws_lb" "example" { name = "my-load-balancer" internal = false load_balancer_type = "application" security_groups = [aws_security_group.lb_sg.id] } 🟠Масштабирование (Горизонтальное и Вертикальное) Горизонтальное масштабирование (добавление новых инстансов) Kubernetes Horizontal Pod Autoscaler (HPA) yaml apiVersion: autoscaling/v2beta2 kind: HorizontalPodAutoscaler metadata: name: my-app-hpa spec: scaleTargetRef: apiVersion: apps/v1 kind: Deployment name: my-app minReplicas: 2 maxReplicas: 10 metrics: - type: Resource resource: name: cpu target: type: Utilization averageUtilization: 70 🟠Авто-масштабирование (AWS/GCP/Kubernetes) AWS Auto Scaling Group hcl resource "aws_autoscaling_group" "example" { min_size = 2 max_size = 10 desired_capacity = 2 launch_configuration = aws_launch_configuration.example.name } Ставь 👍 и забирай 📚 Базу знаний
528
18
🤔 Что помимо bash sh можно в шебанг написать без проблем? Можно использовать другие интерпретаторы, такие как zsh, python, perl, env, и т.д., в зависимости от того, на каком языке написан скрипт. Это делает скрипты переносимыми или привязывает их к конкретной среде. Ставь 👍 если знал ответ, 🔥 если нет Забирай 📚 Базу знаний
616
19
Как войти в Data Science в 2026 году? Бесплатный эфир для тех, кто хочет разобраться, какие навыки нужны для первой работы в
Как войти в Data Science в 2026 году? Бесплатный эфир для тех, кто хочет разобраться, какие навыки нужны для первой работы в Data Science. Опытный практикующий специалист проведёт практическое занятие и понятным языком разберёт: ✅путь от первой строки в Python до проекта для портфолио ✅как собрать pet-проект ✅что изучать для перехода в Data Science ✅реальные практические задачи Посмотрите реальные истории студентов, которые сменили профессию. Регистрируйтесь бесплатно и получите 3 курса в подарок для старта в для старта в Data science! Записаться #реклама 16+ simulative.ru О рекламодателе
474
20
🤔 Чем отличается образ от контейнера? Образ (Image) – это шаблон, из которого создаются контейнеры. Контейнер (Container) – это запущенный экземпляр образа. 🚩Что такое образ (Image)? Образ – это неизменяемый шаблон с установленным ПО Содержит все файлы, библиотеки и зависимости Может храниться в реестре (Docker Hub, GitHub Container Registry, ECR) docker pull nginx:latest Пример списка образов docker images Пример создания образа через Dockerfile FROM ubuntu:latest RUN apt update && apt install -y nginx CMD ["nginx", "-g", "daemon off;"] docker build -t my-nginx . 🚩Что такое контейнер (Container)? Контейнер – это запущенный экземпляр образа Может изменять файлы и состояние, но это не сохраняется в образе Изолирован, но использует ядро ОС хоста docker run -d --name web -p 80:80 nginx Пример списка контейнеров docker ps Пример остановки контейнера docker stop web Ставь 👍 и забирай 📚 Базу знаний
677