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

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

الذهاب إلى القناة على Telegram
5 543
المشتركون
+124 ساعات
+87 أيام
+3330 أيام
أرشيف المشاركات
Образование, с которым всегда найдете работу Открытый социально-экономический колледж (ОСЭК) - ваш шаг к успешной карьере 🎓 Предоставляем высококачественное дистанционное обучение, что позволяет вам учиться в удобное время и в любом месте. Преподаватели — опытные профессионалы, которые помогут вам освоить материалы на практике. 📚 Среднее профессиональное образование в ОСЭК Без экзаменов - поступление без результатов ЕГЭ, ОГЭ и конкурса Госаккредитация - диплом ценится работодателями Высокое качество образования - наши программы соответствуют современным требованиям рынка труда. Востребованные специальности - получайте актуальные профессии 2 Диплома сразу - без увеличения срока обучения и стоимости Не покупайте учебники и материалы – всё включено в курс ⚡ Только в июне скидки на обучение до 48% Узнать больше #реклама 16+ pk.i-spo.ru О рекламодателе

🤔 Какие оркестрации знаешь для Microservices? - Kubernetes — самая популярная; - Docker Swarm — встроенное решение в Docker; - Nomad от HashiCorp; - Apache Mesos (редко используется сегодня). Они обеспечивают развертывание, масштабирование и управление контейнеризированными микросервисами. Ставь 👍 если знал ответ, 🔥 если нет Забирай 📚 Базу знаний

🤔 Чем отличается маршрутизатор от коммутатора? Маршрутизатор (Router) – соединяет разные сети и передает пакеты между ними. Коммутатор (Switch) – соединяет устройства внутри одной сети (LAN) и передает данные между ними. 🚩Что делает маршрутизатор (Router)? Связывает разные сети (LAN ↔️ WAN, LAN ↔️ LAN) Определяет путь (маршрут) для передачи данных Использует IP-адреса (3-й уровень OSI) Может раздавать интернет через NAT Пример работы маршрутизатора Компьютер в 192.168.1.0/24 хочет отправить данные в 10.0.0.0/24 - Маршрутизатор определяет лучший путь и передает данные
ip route add 10.0.0.0/24 via 192.168.1.1
🚩Что делает коммутатор (Switch)? Объединяет устройства в одной сети (LAN) Переключает пакеты между портами по MAC-адресам Работает на 2-м уровне OSI (канальный уровень) Использует MAC-таблицу для ускорения передачи Пример работы коммутатора: Компьютер A (MAC: AA:BB:CC:01) отправляет данные компьютеру B (MAC: AA:BB:CC:02) Коммутатор смотрит MAC-таблицу и направляет данные только на нужный порт
show mac address-table
Ставь 👍 и забирай 📚 Базу знаний

🤔 Что такое cl в Linux? Если имеется в виду команда cl, то она не является стандартной утилитой Linux. Возможны интерпретации: в некоторых дистрибутивах это может быть alias или часть кастомного набора утилит. Ставь 👍 если знал ответ, 🔥 если нет Забирай 📚 Базу знаний

🤔 Какие микросервисы можно масштабировать горизонтально? Горизонтальное масштабирование – это добавление новых экземпляров (реплик) сервиса для увеличения производительности. Оно хорошо работает для статeless (без состояния) микросервисов, где нет привязки к конкретному серверу. 🚩Какие микросервисы можно масштабировать горизонтально? 🟠Веб-серверы и API-шлюзы Примеры: Nginx, Traefik, Kong, API Gateway (AWS, GCP) Почему можно масштабировать? - Обрабатывают независимые запросы - Не требуют сохранения состояния между запросами - Легко распределяются через Load Balancer
yaml  
apiVersion: apps/v1  
kind: Deployment  
metadata:  
  name: my-api  
spec:  
  replicas: 5  
  selector:  
    matchLabels:  
      app: my-api  
  template:  
    metadata:  
      labels:  
        app: my-api  
    spec:  
      containers:  
      - name: api-container  
        image: my-api:latest  
🟠Backend-сервисы (Stateless) Примеры: REST API (FastAPI, Express, Spring Boot), gRPC-сервисы Почему можно масштабировать? Каждый запрос обрабатывается независимо Нет привязки к конкретному серверу Можно использовать Load Balancer (например, AWS ALB, Nginx)
nginx  
upstream backend {  
  server backend1:5000;  
  server backend2:5000;  
  server backend3:5000;  
}  
server {  
  listen 80;  
  location / {  
    proxy_pass http://backend;  
  }  
}  
🟠Очереди сообщений и брокеры событий Примеры: RabbitMQ, Kafka, NATS, Redis Streams Почему можно масштабировать? Сообщения разбираются разными нодами Можно увеличивать число консьюмеров Поддерживают partitioning (разделение нагрузки)
python  
from kafka import KafkaConsumer  
consumer = KafkaConsumer('my_topic', group_id='workers', bootstrap_servers='kafka:9092')  
for message in consumer:  
    process_message(message)  
🟠Кэш-сервисы (Stateless) Примеры: Redis (в режиме Cluster), Memcached Почему можно масштабировать? Каждый узел хранит часть данных Можно распределять кэш по нескольким инстансам Redis поддерживает Sharding (разбиение данных на ноды)
sh  
redis-cli --cluster create 192.168.1.1:6379 192.168.1.2:6379 192.168.1.3:6379 --cluster-replicas 1  
🚩Какие микросервисы **нельзя просто так масштабировать горизонтально?** Некоторые сервисы сохраняют состояние (stateful) и сложны в горизонтальном масштабировании: Базы данных → MySQL, PostgreSQL (нужны реплики или шардирование) Сервисы с сессиями → Например, если пользователь всегда должен попасть на тот же сервер Хранилища файлов → Например, локальное хранение логов на сервере Ставь 👍 и забирай 📚 Базу знаний

В турагентство на удаленку требуются стажеры Клиентов предоставим. Можно без опыта и совмещая с основной работой или декретом. С нас обучение с гарантированной стажировкой. Доход после обучения: от 50 000₽ до 220 000₽. Оплата в процессе обучения зависит от вашей вовлеченности. Задачи: Помогать людям организовывать путешествия: подбор самых выгодных предложений на отдых со скидкой до 50% в новых сервисах бронирования. Условия: ✅ Без опыта — обучение с нуля за 2 месяца, первые выплаты в среднем в течение 2 недель; ✅Удаленная работа или совмещение с офисом (по желанию, зависит от вашего города). Хотите проверить, подойдет ли это вам? Регистрируйтесь на бесплатный вводный урок, на котором узнаете: — как подбирать туры для себя и близких с выгодой до 40% — как получать комиссию 7-10% с каждого тура. Узнать больше #реклама 16+ via-tourism-school.space О рекламодателе

🤔 Что такое volume и persistent volume и какие есть типы этих вольюмов? Volume — это механизм для хранения данных контейнера вне его файловой системы, чтобы данные сохранялись между перезапусками. Persistent Volume (PV) в Kubernetes представляет собой хранилище, которое существует независимо от подов. Типы volumes включают emptyDir, hostPath, NFS, CIFS, AWS EBS, Azure Disk и PersistentVolumeClaim. Ставь 👍 если знал ответ, 🔥 если нет Забирай 📚 Базу знаний

🤔 Что сейчас больше используется ингресс класс в ингрессе или указывается ингресс контроллер непосредственно в апликейшене? Сейчас стандартом является использование 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
Ставь 👍 и забирай 📚 Базу знаний

Гайд по эффективным онлайн-встречам для корп. тренеров Как корпоративным тренерам и методистам повышать вовлеченность и резул
Гайд по эффективным онлайн-встречам для корп. тренеров Как корпоративным тренерам и методистам повышать вовлеченность и результативность обучения сотрудников? Гайд МТС Линк — чек-листы, кейсы и подходы для улучшения корпоративного обучения с помощью онлайн-встреч и интерактивных досок. ✅ В гайде: - Как создать постоянную ссылку на синки и тренинги с коллегами и подключаться в 2 клика; - Как повысить процент успешно завершивших обучение с помощью онлайн-досок; - Как вовлекать в обучение даже самых пассивных коллег; - Как автоматизировать проверку знаний после курса; - Как организовать тренинг так, чтобы участники действительно подключились и дошли до финального модуля. Бонус внутри: 5 способов не выгореть от бесконечных синков. ✨ Скачайте гайд бесплатно по ссылке Скачать #реклама 16+ mts-link.ru О рекламодателе

🤔 Для чего нужен Terraform? Terraform используется для инфраструктуры как кода. Он позволяет: - описывать ресурсы облака декларативно; - управлять зависимостями; - автоматически создавать, обновлять и удалять инфраструктуру; - сохранять состояние системы в одном месте. Ставь 👍 если знал ответ, 🔥 если нет Забирай 📚 Базу знаний

🤔 Что такое императивный подход? Императивный подход — это стиль программирования, где мы пошагово указываем компьютеру, что делать и как это делать. Программист описывает процесс решения задачи. Код выполняется шаг за шагом, изменяя состояние программы.
numbers = [1, 2, 3, 4, 5]
squared = []

for num in numbers:
    squared.append(num ** 2)  # Явно указываем, что делать на каждом шаге

print(squared)  # [1, 4, 9, 16, 25]
🚩Где используется императивный стиль? Языки программирования: C, Java, Python (может быть и императивным, и декларативным). Операционные системы (где важно управлять состоянием). Автоматизация в DevOps (например, скрипты Bash).
#!/bin/bash
mkdir /backup
cp /var/log/syslog /backup/
echo "Backup создан"
Пример в DevOps (Terraform) Императивный (Ansible, Bash)
  apt update
  apt install nginx
Шаги установки Nginx описаны вручную. Декларативный (Terraform, Kubernetes)
  resource "aws_instance" "web" {
    ami = "ami-123456"
    instance_type = "t2.micro"
  }
Ставь 👍 и забирай 📚 Базу знаний

Легендарная AIшница 3.0! Бесплатный онлайн-практикум 3 сезон масштабного онлайн-практикума про нейросети для бизнеса. 3 дня, в программе применение ИИ в продажах, маркетинге, HR и других бизнес-процессов Спикеры: Александр Горный, Сергей Нотевский, Павел Лебедев Регистрируйтесь бесплатно! Узнать больше #реклама 16+ ai-practicum.bitrix24.events О рекламодателе

🤔 Технологии AF_PACKET, PCAP, RAW socket, PF_RING. Что объединяет их и их различия? Все эти технологии используются для перехвата и обработки сетевого трафика: - AF_PACKET – низкоуровневый доступ к пакетам в пространстве ядра, позволяет захватывать пакеты до их обработки IP-стеком. - PCAP (libpcap/tcpdump) – библиотека для пользовательского пространства, позволяет фильтровать и анализировать пакеты. - RAW socket – создаёт сокеты для работы с IP- и Ethernet-пакетами напрямую, нужен root-доступ. - PF_RING – ускоренный механизм захвата пакетов, оптимизирован для высоких нагрузок. Ставь 👍 если знал ответ, 🔥 если нет Забирай 📚 Базу знаний

🤔 Есть 1000 разработчиков, каждый создал по 1-2 уникальному приложению, как это все масштабировать? Если у вас 1000 разработчиков и 2000 сервисов, то без автоматизации не обойтись. 🟠 Kubernetes для контейнеров Организация: Каждое приложение → отдельный Pod. Namespaces → для команд и сред (dev, stage, prod). Helm → для удобного управления. Манифест деплоя
apiVersion: apps/v1
kind: Deployment
metadata:
  name: my-app
spec:
  replicas: 3
  selector:
    matchLabels:
      app: my-app
  template:
    metadata:
      labels:
        app: my-app
    spec:
      containers:
      - name: my-app
        image: my-registry.com/my-app:v1
🟠CI/CD для автоматического деплоя Инструменты: GitLab CI/CD, ArgoCD
stages:
  - build
  - deploy

build:
  script:
    - docker build -t my-registry.com/my-app:$CI_COMMIT_SHA .
    - docker push my-registry.com/my-app:$CI_COMMIT_SHA

deploy:
  script:
    - kubectl set image deployment/my-app my-app=my-registry.com/my-app:$CI_COMMIT_SHA
🟠Мониторинг и логирование Prometheus + Grafana → метрики, алерты Loki / ELK (Elasticsearch + Kibana) → логи Запрос ошибок API:
rate(http_requests_total{status="500"}[5m])
🟠Автоматическое масштабирование Горизонтальный автоскейлинг (HPA)
apiVersion: autoscaling/v1
kind: HorizontalPodAutoscaler
metadata:
  name: my-app-hpa
spec:
  minReplicas: 3
  maxReplicas: 10
  targetCPUUtilizationPercentage: 70
🟠Service Mesh (Istio) для управления трафиком Разделение нагрузки между версиями:
apiVersion: networking.istio.io/v1alpha3
kind: VirtualService
spec:
  hosts:
  - my-app.example.com
  http:
  - route:
    - destination:
        host: my-app
        subset: v1
      weight: 80
    - destination:
        host: my-app
        subset: v2
      weight: 20
🟠Безопасность (RBAC, Network Policies) Ограничение доступа разработчиков:
apiVersion: rbac.authorization.k8s.io/v1
kind: RoleBinding
metadata:
  name: dev-access
subjects:
- kind: User
  name: dev-user
roleRef:
  kind: Role
  name: read-only
  apiGroup: rbac.authorization.k8s.io
Ставь 👍 и забирай 📚 Базу знаний

Обучение трейдингу для новичков и профессиналов Изучайте слайды с основными темами, смотрите видео и практикуйтесь. Торгуйте
Обучение трейдингу для новичков и профессиналов Изучайте слайды с основными темами, смотрите видео и практикуйтесь. Торгуйте на рынке как профи! Зарегистрироваться #реклама 16+ fxproru.pro О рекламодателе

🤔 Что такое планировщик, какие у него задачи? Планировщик (scheduler) — это часть ядра, отвечающая за распределение процессорного времени между задачами (процессами и потоками). Он выбирает, какой процесс будет выполняться в данный момент времени, исходя из приоритетов, политики и состояния процесса. Основные задачи — обеспечить справедливость, минимальную задержку и высокую производительность. Ставь 👍 если знал ответ, 🔥 если нет Забирай 📚 Базу знаний

🤔 На каких принципах работает докер? Это платформа для автоматизации развертывания, масштабирования и управления приложениями в контейнерах. Контейнеры позволяют изолировать приложения и их зависимости, обеспечивая легкую переносимость и консистентность окружения. Основные принципы работы Docker включают в себя контейнеризацию, использование образов, контейнеров, оркестрацию и сетевую инфраструктуру. 🚩Основные принципы 🟠Контейнеризация Контейнеризация позволяет запускать приложения и их зависимости в изолированных окружениях. Контейнеры предоставляют легкие и эффективные среды, которые включают все необходимое для запуска приложений. Контейнеры: Легковесные, изолированные окружения, которые работают поверх ядра хостовой операционной системы. Namespace: Механизм ядра Linux, обеспечивающий изоляцию процессов, сети, PID, пользовательских идентификаторов и монтирования файловых систем. Cgroups: Контрольные группы в Linux, которые ограничивают и отслеживают использование ресурсов контейнерами, включая процессорное время, память и I/O. 🟠Использование образов Образы Docker являются шаблонами для создания контейнеров. Образ включает в себя все необходимые компоненты, такие как код приложения, библиотеки, зависимости и конфигурационные файлы. Dockerfile: Скрипт, содержащий инструкции по созданию образа. Используется для автоматизации создания образов. Слойность: Каждый образ состоит из нескольких слоев, которые кэшируются и могут использоваться повторно, что ускоряет процесс сборки и уменьшает использование ресурсов. 🟠Изоляция и безопасность Docker обеспечивает изоляцию приложений, что позволяет запускать несколько контейнеров на одном хосте без взаимного влияния. Изоляция процессов: Каждый контейнер имеет свой собственный процессорный контекст, что исключает конфликты между приложениями. Изоляция файловой системы: Контейнеры имеют свои собственные файловые системы, изолированные от файловой системы хостовой операционной системы. Безопасность: Docker использует механизмы, такие как AppArmor, SELinux и seccomp, для обеспечения безопасности контейнеров. 🟠Управление сетями Docker предоставляет гибкие возможности управления сетями для контейнеров, включая создание изолированных сетей и подключение контейнеров к различным сетям. Bridge Network: Создает изолированную сеть для контейнеров на одном хосте. Host Network: Контейнер использует сетевые интерфейсы хостовой операционной системы. Overlay Network: Позволяет контейнерам на разных хостах взаимодействовать друг с другом. Macvlan Network: Контейнеры получают собственные MAC-адреса и ведут себя как физические устройства в сети. 🟠Хранение данных Docker поддерживает различные механизмы хранения данных для обеспечения сохранности и доступности данных контейнеров. Volumes: Независимые от контейнеров хранилища данных, которые могут быть подключены к одному или нескольким контейнерам. Bind Mounts: Позволяют монтировать директории хостовой файловой системы в контейнеры. Tmpfs: Использует память хоста для хранения данных контейнера, что полезно для временных данных. Ставь 👍 и забирай 📚 Базу знаний

В Битрикс24 теперь можно сделать сайт за 30 секунд Серьёзно. Пишешь, что нужно, и AI сам всё собирает: тексты, картинки, офор
В Битрикс24 теперь можно сделать сайт за 30 секунд Серьёзно. Пишешь, что нужно, и AI сам всё собирает: тексты, картинки, оформление. ✨Никакой магии, просто умный помощник. Попробуйте — закайфуете от скорости! Попробовать #реклама 16+ sites-24.bitrix24.ru О рекламодателе

🤔 Какой командой на RedHat Linux сделать так, чтобы сервисы стартовали при boot? Необходимо включить автозапуск системного сервиса. Это делается через системный менеджер, применимый в современных дистрибутивах RedHat (например, systemd). Ставь 👍 если знал ответ, 🔥 если нет Забирай 📚 Базу знаний

🖥 Ты теряешь месяцы на YouTube, когда всё можно было бы уместить в один PDF 📄 Senior разработчик Pythonl написал подробный
+5
🖥 Ты теряешь месяцы на YouTube, когда всё можно было бы уместить в один PDF 📄 Senior разработчик Pythonl написал подробный PDF-гайд, в котором всё по-человечески: • без воды • очень наглядные иллюстрации, которые помогают понять сложные концепции • коротко и по делу • ускорение кода в 2–10 раз • снижение потребления памяти • антипаттерны и как их избегать • инструменты: py-spy, cProfile, Scalene • приёмы из Big Tech и реальные кейсы Отлично подходит для новичков Понял → Применил → Пошёл дальше Скачать полностью бесплатный гайд можно здесь.