и посмотреть медиа
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.
🤔 Как определить в GitLab запуск job по кнопке? Добавляется параметр when: manual в .gitlab-ci.yml Это добавляет кнопку запуска вручную в UI пайплайна GitLab. Можно также задать allow_failure: true, чтобы не блокировать pipeline Ставь 👍 если знал ответ, 🔥 если нет Забирай 📚 Базу знаний
Открыть канал и посмотреть медиа🤔 В каких случаях удобно использовать kubernetes, а в каких docker-compose? Оба инструмента управляют контейнерами, но предназначены для разных сценариев. 🚩Когда использовать Docker Compose? Docker Compose удобен для локальной разработки и небольших проектов. Разворачиваете приложение на одном сервере. Нужно быстро поднять несколько сервисов (БД, кэш, бекенд, фронт). Разработка ведется в команде, и среда должна быть одинаковой. Нет необходимости в сложном оркестрационном механизме (авто-масштабирование, балансировка нагрузки). Файл docker-compose.yml для запуска бэкенда и базы данных локально: version: '3' services: app: image: my-backend:latest ports: - "5000:5000" depends_on: - db db: image: postgres:15 environment: POSTGRES_USER: user POSTGRES_PASSWORD: password Команда запуска: docker-compose up -d 🚩Когда использовать Kubernetes? Kubernetes удобен для продакшн-окружений, облаков и сложных приложений. Нужно масштабирование (автоматическое увеличение/уменьшение количества контейнеров). Требуется автоисправление (если контейнер падает, он перезапускается). Используется балансировка нагрузки (Kubernetes распределяет трафик между подами). Нужна развертка в кластере (несколько машин, облако). Требуется обновление без простоя (rolling updates). 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-backend:latest ports: - containerPort: 5000 Разворачиваем в Kubernetes: kubectl apply -f my-app.yaml Ставь 👍 и забирай 📚 Базу знаний
Открыть канал и посмотреть медиа🤔 Что известно про workflow GitLab? GitLab CI/CD workflow — это последовательность стадий (stages) и заданий (jobs), определённых в .gitlab-ci.yml. Стадии выполняются последовательно: build → test → deploy. Jobs могут выполняться параллельно внутри одной стадии. Также можно использовать правила (rules), переменные (env), артефакты и условия запуска. Ставь 👍 если знал ответ, 🔥 если нет Забирай 📚 Базу знаний
Открыть канал и посмотреть медиа🤔 Как и где посмотреть логи какого-нибудь сервиса? Обычно хранятся в каталоге /var/log. Также многие современные дистрибутивы используют систему журналирования systemd для управления и просмотра логов. 🚩Способы просмотра 🟠Просмотр логов в /var/log Каталог /var/log содержит логи большинства системных сервисов и приложений. Логи системных сообщений /var/log/syslog: Содержит общие системные логи. /var/log/messages: Содержит общие системные сообщения (не во всех дистрибутивах). cat /var/log/syslog less /var/log/syslog tail -f /var/log/syslog Логи конкретных сервисов Apache: /var/log/apache2/ или /var/log/httpd/ Логи доступа: /var/log/apache2/access.log или /var/log/httpd/access_log Логи ошибок: /var/log/apache2/error.log или /var/log/httpd/error_log tail -f /var/log/apache2/access.log tail -f /var/log/apache2/error.log Nginx: /var/log/nginx/ Логи доступа: /var/log/nginx/access.log Логи ошибок: /var/log/nginx/error.log tail -f /var/log/nginx/access.log tail -f /var/log/nginx/error.log MySQL: /var/log/mysql/ или /var/log/mysqld.log tail -f /var/log/mysql/error.log SSH: /var/log/auth.log или /var/log/secure tail -f /var/log/auth.log 🟠Использование `journalctl` для системных логов journalctl — это утилита для просмотра и управления журналами systemd. Она позволяет фильтровать логи по различным критериям, таким как время, сервис и уровень логирования. Основные команды journalctl Просмотр всех журналов journalctl Логов конкретного сервиса journalctl -u nginx.service Последних логов и продолжение просмотра в реальном времени journalctl -f journalctl -u nginx.service -f Логов за определённый период journalctl --since "2024-07-25 12:00:00" --until "2024-07-25 13:00:00" Логов с определённым уровнем логирования journalctl -p err journalctl -p warning 🚩Примеры использования 🟠Просмотр логов Apache Логи доступа tail -f /var/log/apache2/access.log Логи ошибок tail -f /var/log/apache2/error.log 🟠Просмотр логов Nginx Логи доступа tail -f /var/log/nginx/access.log Логи ошибок tail -f /var/log/nginx/error.log 🟠Использование `journalctl` для просмотра логов Nginx Все логи Nginx journalctl -u nginx.service Последние логи Nginx в реальном времени journalctl -u nginx.service -f Ставь 👍 и забирай 📚 Базу знаний
Открыть канал и посмотреть медиа🤔 Пример асимметричного шифрования? - RSA — самый популярный алгоритм. - Пример: клиент шифрует данные публичным ключом сервера, а сервер расшифровывает их своим приватным. Также используется в TLS-сертификатах, PGP, SSH. Ставь 👍 если знал ответ, 🔥 если нет Забирай 📚 Базу знаний
Открыть канал и посмотреть медиа🤔 Что касается безопасности где хранить переменные секреты? Хранение секретных переменных, таких как пароли, ключи API, токены доступа и прочие конфиденциальные данные, требует особого подхода для обеспечения безопасности. Ниже описаны рекомендуемые методы и инструменты для безопасного хранения секретных переменных в различных средах разработки и производства. 🟠Использование специализированных хранилищ секретов HashiCorp Vault: Это инструмент для управления секретами и защиты данных. Он позволяет централизованно хранить, доступ к которым строго контролируется, и динамически создавать секреты. Преимущества: Поддержка динамических секретов, интеграция с большинством сред и технологий, высокий уровень безопасности. AWS Secrets Manager и Azure Key Vault: Эти облачные сервисы предоставляют управляемые решения для безопасного хранения и управления доступом к секретным данным, включая автоматическое обновление секретов. Преимущества: Интеграция с облачными сервисами, упрощение ротации секретов, мониторинг и логирование доступа. 🟠Инкапсуляция секретов в среде выполнения Docker Secrets и Kubernetes Secrets: Предлагают встроенные механизмы для безопасного хранения секретов, которые используются контейнерами во время выполнения. Преимущества: Локальная интеграция с системами оркестрации контейнеров, базовое шифрование на диске и управление доступом. 🟠Секреты в контролируемом CI/CD Платформы CI/CD, такие как GitLab и GitHub, предоставляют возможности для безопасного хранения переменных среды и секретов, которые могут быть использованы в процессах автоматизации без разглашения. Преимущества: Простота использования, интеграция с процессами разработки, защита от внешнего доступа. 🟠Шифрование секретов Инструменты шифрования: Использование инструментов, таких как GnuPG (GPG), для шифрования секретов перед их сохранением в системах контроля версий или конфигурационных файлах. Преимущества: Высокий уровень безопасности, контроль доступа к секретам на уровне пользователя. Ставь 👍 и забирай 📚 Базу знаний
Открыть канал и посмотреть медиа🤔 Какие типы заголовков есть? Заголовки в HTTP делятся на: - General — общие (Date, Connection); - Request — только для клиента (Accept, User-Agent, Authorization); - Response — только для ответа (Server, Set-Cookie); - Entity — описывают тело (Content-Type, Content-Length). Ставь 👍 если знал ответ, 🔥 если нет Забирай 📚 Базу знаний
Открыть канал и посмотреть медиаOnly registered users can share their opinion.
Be the first to share your impression of this resource!