DevOps | Вопросы собесов
رفتن به کانال در Telegram
Сайт: https://easyoffer.ru/ Все каналы: t.me/+xGeAw6ckJ4liYzQy Контакт для рекламы: @easyoffer_adv
نمایش بیشتر5 546
مشترکین
اطلاعاتی وجود ندارد24 ساعت
+107 روز
+4530 روز
آرشیو پست ها
\n\n🚩Подбор паролей (Brute Force, Dictionary Attack) \n\n- Пробуют тысячи вариантов паролей (rockyou.txt). \n- Используют John the Ripper, Hydra, Hashcat. \nhydra -l admin -P passwords.txt 192.168.1.1 ssh\n\n🚩Анализ трафика (MITM, Sniffing, Packet Analysis) \n\nЗахватывают пакеты сети (tcpdump, Wireshark). \nИщут передаваемые пароли, сессии, токены.\n\nСтавь 👍 и забирай 📚 Базу знаний","datePublished":"2026-02-15T09:05:02Z","dateModified":"2026-02-15T09:05:02Z","author":{"@type":"Organization","name":"DevOps | Вопросы собесов","url":"https://telemetr.io/fa/channels/1804037333-easy_devops","image":"https://img.tlmtr.io/c/1Y5ywl/5224615235418185511?ty=x"},"publisher":{"@type":"Organization","name":"DevOps | Вопросы собесов","url":"https://telemetr.io/fa/channels/1804037333-easy_devops","image":"https://img.tlmtr.io/c/1Y5ywl/5224615235418185511?ty=x"},"commentCount":0,"interactionStatistic":[{"@type":"InteractionCounter","interactionType":"https://schema.org/ViewAction","userInteractionCount":995},{"@type":"InteractionCounter","interactionType":"https://schema.org/ShareAction","userInteractionCount":10}]}},{"@type":"ListItem","position":19,"item":{"@type":"SocialMediaPosting","@id":"https://telemetr.io/fa/channels/1804037333-easy_devops/posts/2264","url":"https://telemetr.io/fa/channels/1804037333-easy_devops/posts/2264","mainEntityOfPage":"https://telemetr.io/fa/channels/1804037333-easy_devops/posts/2264","headline":"🤔 Какие утилиты для редактирования текста \"на лету\"? \"На лету\" — это значит без открытия интерактивного редак…","articleBody":"🤔 Какие утилиты для редактирования текста \"на лету\"?\n\n\"На лету\" — это значит без открытия интерактивного редактора. Вот популярные утилиты:\n- sed — потоковый редактор, отлично подходит для замены, удаления строк и подстановки.\n- awk — обработка и изменение строк и столбцов в текстах.\n- perl -p -i — редактирование файлов прямо в командной строке.\n- ed — минималистичный текстовый редактор, работает через команды.\n- ex — командный режим vi.\n- Также echo, cut, tr, paste — для простых трансформаций.\n\nСтавь 👍 если знал ответ, 🔥 если нет\nЗабирай 📚 Базу знаний","datePublished":"2026-02-14T16:10:17Z","dateModified":"2026-02-14T16:10:17Z","author":{"@type":"Organization","name":"DevOps | Вопросы собесов","url":"https://telemetr.io/fa/channels/1804037333-easy_devops","image":"https://img.tlmtr.io/c/1Y5ywl/5224615235418185511?ty=x"},"publisher":{"@type":"Organization","name":"DevOps | Вопросы собесов","url":"https://telemetr.io/fa/channels/1804037333-easy_devops","image":"https://img.tlmtr.io/c/1Y5ywl/5224615235418185511?ty=x"},"commentCount":0,"interactionStatistic":[{"@type":"InteractionCounter","interactionType":"https://schema.org/ViewAction","userInteractionCount":939},{"@type":"InteractionCounter","interactionType":"https://schema.org/LikeAction","userInteractionCount":1},{"@type":"InteractionCounter","interactionType":"https://schema.org/ShareAction","userInteractionCount":10}]}},{"@type":"ListItem","position":20,"item":{"@type":"SocialMediaPosting","@id":"https://telemetr.io/fa/channels/1804037333-easy_devops/posts/2263","url":"https://telemetr.io/fa/channels/1804037333-easy_devops/posts/2263","mainEntityOfPage":"https://telemetr.io/fa/channels/1804037333-easy_devops/posts/2263","headline":"🤔 Зачем нужен стейт в Terraform? Файл terraform.tfstate хранит текущее состояние инфраструктуры. Он нужен, чт…","articleBody":"🤔 Зачем нужен стейт в Terraform?\n\nФайл terraform.tfstate хранит текущее состояние инфраструктуры. Он нужен, чтобы Terraform знал, какие ресурсы уже существуют, и мог правильно управлять изменениями. \n\n🟠Отслеживание ресурсов \nTerraform использует tfstate, чтобы сопоставлять код с реальными ресурсами. \nВ коде создаем виртуальную машину \nhcl \n resource \"aws_instance\" \"example\" { \n ami = \"ami-123456\" \n instance_type = \"t2.micro\" \n } \n \n\nЗапускаем terraform apply, создается сервер в AWS \nВ terraform.tfstate записывается информация об этом ресурсе \nПри следующем terraform apply Terraform сверяет tfstate с реальными ресурсами и вносит только изменения \n\n🟠Управление зависимостями \nКогда ресурсы связаны (например, сервер и security group), Terraform понимает связи через tfstate и удаляет ресурсы в правильном порядке \n\n🟠Работа в команде (`remote state`) \nКогда несколько разработчиков работают с Terraform, tfstate должен храниться в общем месте, например \n- S3 + DynamoDB (AWS) \n- Terraform Cloud \n- GCS + Firestore (GCP) \n- Azure Storage + CosmosDB (Azure) \nhcl \nterraform { \n backend \"s3\" { \n bucket = \"my-terraform-state\" \n key = \"prod/terraform.tfstate\" \n region = \"us-east-1\" \n encrypt = true \n dynamodb_table = \"terraform-lock\" \n } \n}\n\nСтавь 👍 и забирай 📚 Базу знаний","datePublished":"2026-02-14T09:05:02Z","dateModified":"2026-02-14T09:05:02Z","author":{"@type":"Organization","name":"DevOps | Вопросы собесов","url":"https://telemetr.io/fa/channels/1804037333-easy_devops","image":"https://img.tlmtr.io/c/1Y5ywl/5224615235418185511?ty=x"},"publisher":{"@type":"Organization","name":"DevOps | Вопросы собесов","url":"https://telemetr.io/fa/channels/1804037333-easy_devops","image":"https://img.tlmtr.io/c/1Y5ywl/5224615235418185511?ty=x"},"commentCount":0,"interactionStatistic":[{"@type":"InteractionCounter","interactionType":"https://schema.org/ViewAction","userInteractionCount":1010},{"@type":"InteractionCounter","interactionType":"https://schema.org/LikeAction","userInteractionCount":1},{"@type":"InteractionCounter","interactionType":"https://schema.org/ShareAction","userInteractionCount":9}]}}]}






Сегодня последний день, когда можно приобрести пожизненный PRO тариф easyoffer
Акция до 20 февраля 00:00
Покупаешь сейчас один раз — пользуешься всю жизнь без лимита, включая все будущие функции.
👉 Смотри подробности тарифа и покупай на https://easyoffer.ru/
Ищу желающих заполнять карточки товаров на ВБ!
Работа полностью на удаленке с зп до 150 000 рублей в месяц.
Без опыта, нужен только телефон, занятость 3-6 часов в день.
Всему обучат на бесплатном курсе и после возьму на работу:
✅ 3 дня уроков по 30 минут
✅ Домашки с проверкой и оплатой бонусами
✅ Плачу 10 тыс за каждую выполненную домашку
Все кто пройдет курс, получат сертификат от школы с образовательной лицензией.
⚡ Набор заканчивается завтра.
👍 Для регистрации жмите кнопку "Зарегистрироваться"
Зарегистрироваться
#реклама 16+
course.wildmanager.ru
О рекламодателе
🤔 Как linux выбирает, какой из процессов завершить?
Она использует механизм, известный как OOM Killer (убийца процессов при нехватке памяти), для завершения процессов с целью освобождения памяти. Выбор процесса для завершения базируется на ряде критериев, чтобы минимизировать влияние на работу системы.
🚩Как работает OOM Killer?
🟠Очки OOM (OOM Score)
Каждому процессу присваиваются очки OOM, которые рассчитываются на основе нескольких факторов, таких как: Объем памяти, используемой процессом. Приоритет процесса. Важность процесса для системы (например, системные демоны имеют более низкие очки).
🟠Формула расчета OOM Score
Основной фактор при расчете очков - это объем потребляемой процессом памяти. Чем больше памяти потребляет процесс, тем выше его OOM Score. Операционная система также учитывает приоритет процесса (nice value) и некоторые другие параметры.
🟠Принудительное завершение
Процесс с наибольшим OOM Score считается наименее критичным для системы и завершается первым.
🚩Пример расчета OOM Score
🟠Вот пример того, как может быть рассчитан OOM Score (упрощенный)
Процесс A использует 1 ГБ памяти.
Процесс B использует 2 ГБ памяти.
Процесс C использует 500 МБ памяти, но это критический системный процесс.
🟠OOM Score для этих процессов может выглядеть так
Процесс A: 300
Процесс B: 600
Процесс C: 100 (низкий, так как процесс критический)
🚩Настройка OOM Killer
Администраторы могут влиять на работу OOM Killer, настраивая параметры OOM Score для конкретных процессов с помощью файлов в каталоге
/proc. Например, для изменения приоритета процесса:
echo -1000 > /proc/<PID>/oom_score_adj
🚩Логирование и мониторинг
При срабатывании OOM Killer соответствующие сообщения записываются в системный журнал (обычно /var/log/syslog или /var/log/messages), что позволяет администраторам анализировать причины и предпринимать меры по предотвращению в будущем.
Ставь 👍 и забирай 📚 Базу знанийНужны 7 желающих для работы с искусственным интеллектом.
Работа из дома. График свободный.
Пришло задание — изучили — выполнили — получили свои деньги.
Деньги вы получаете в зависимости от сложности задания. Например:
За задание могут платить 500-10.000 рублей.
500 рублей — это около 5-30 минут.
10 000 руб. это 5-6 часов.
Работа может быть разной: Оживить фото, создать видео, реставрировать старое фото и т.д.
💰 В среднем новичок получает до 150.000 руб в месяц. А опытный может и 300-500т.
Мы обучим вас сами:
— 3 дня уроков по 30 минут
— Домашки с проверкой и оплатой бонусами
— Платим 10 тыс за каждую выполненную домашку
⚡ Набор заканчивается завтра.
Для регистрации жмите кнопку "Зарегистрироваться":
Зарегистрироваться
#реклама 16+
ganstaagency.com
О рекламодателе
🤔 Какие технологии написания есть?
Могут быть:
- Скриптовые: Python, Bash, PowerShell;
- Объектно-ориентированные: Java, C#, C++;
- Функциональные: Scala, Haskell, Elixir;
- Декларативные: YAML, JSON, Terraform, SQL.
Выбор зависит от задачи и среды исполнения.
Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚 Базу знаний
Как противодействовать кибератакам в 2026-м
11 марта в 12:00 команда Solar 4RAYS подведет итоги целевых атак 2025 года и поделится прогнозами на 2026.
Разберем:
⚡Какие отрасли бизнеса подвергались атакам чаще всего и с какой целью.
⚡Какие интересные техники использовали злоумышленники: рассмотрим кейсы расследований.
⚡Какие методы защиты будут работать в 2026 году.
Присоединяйтесь.
Перейти на сайт
#реклама 16+
rt-solar.ru
О рекламодателе
Завтра конец акции на возможность приобрести PRO тариф по цене одного года
Доступный функционал включает базы вопросов с собеседований, задач для live-coding, реальных интервью и тестовых заданий от топ-компаний, а также аналитику требований для резюме и тренажеры с режимом симуляции собеседования под конкретную компанию.
Акция до 20 февраля (включительно) на PRO-тариф. Покупаешь сейчас один раз — пользуешься всю жизнь без лимита, включая все будущие функции.
👉 Смотри подробности тарифа и покупай на https://easyoffer.ru/
🤔 Как дебажить поды в Kubernetes?
Когда под (Pod) не работает или ведёт себя странно, нужно уметь его дебажить.
🟠Проверить статус пода
Сначала смотрим, работает ли под вообще
kubectl get pods
🟠Посмотреть логи контейнера
Если под запустился, но работает странно, смотрим логи:
kubectl logs pod-name
Если в поде несколько контейнеров:
kubectl logs pod-name -c container-name
Если под перезапускается, а нам нужны старые логи:
kubectl logs pod-name --previous
🟠Проверить события (`describe`)
Смотрим подробную информацию о поде:
kubectl describe pod pod-name
🟠Зайти внутрь контейнера (`exec`)
Если под запущен, можно подключиться внутрь и посмотреть файлы, процессы:
kubectl exec -it pod-name -- /bin/sh
Если в контейнере есть только bash:
kubectl exec -it pod-name -- /bin/bash
Полезные команды внутри контейнера:
ps aux # Смотрим запущенные процессы
netstat -tulnp # Проверяем открытые порты
env # Проверяем переменные окружения
cat /etc/resolv.conf # Проверяем DNS
🟠Проверить манифест пода (`get pod -o yaml`)
Если под ведёт себя странно, можно посмотреть его полное описание:
kubectl get pod pod-name -o yaml
🟠Проверить ресурсы (describe node)
Иногда под не запускается из-за нехватки CPU или памяти. Проверяем узел (node):
kubectl describe node node-name
Если проблема с ресурсами, будет что-то вроде:
Warning FailedScheduling insufficient memory🟠Проверить сеть (`nslookup`, `ping`, `curl`) Если под не может достучаться до сервиса, тестируем сеть:
kubectl exec -it pod-name -- nslookup service-name
kubectl exec -it pod-name -- ping 8.8.8.8
kubectl exec -it pod-name -- curl http://service-name:8080
🟠Дебажить с помощью `kubectl debug` (Kubernetes 1.23+)
Если под не стартует, можно запустить дебажный контейнер
kubectl debug pod-name -it --image=busybox
Ставь 👍 и забирай 📚 Базу знанийАукцион выделенных серверов!
Серверы дешевеют у вас на глазах!
Новые лоты каждый день, скидки до -35% на весь срок аренды.
Успейте арендовать, пока лот не ушел другому!
Получить предложение
#реклама 16+
selectel.ru
О рекламодателе
🤔 За счёт чего достигается завершение пода с определённой скоростью и по таймингам?
Контролируется через:
- terminationGracePeriodSeconds — время ожидания graceful shutdown перед SIGKILL.
- PreStop Hook — команда, выполняемая перед остановкой.
- Liveness/Readiness Probes — позволяют избежать остановки здоровых подов.
- lifecycle хуки — логика перед/после завершения.
Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚 Базу знаний
🤔 Что за протокол http, зачем он нужен?
HTTP (HyperText Transfer Protocol) — это протокол передачи данных в интернете. Он используется для обмена данными между клиентом (браузером) и сервером.
🚩Пример работы HTTP
Браузер отправляет запрос →
"GET /index.html HTTP/1.1".
Сервер отвечает → HTML-страницей (200 OK).
Браузер отображает страницу.
🚩Основные принципы HTTP
Клиент-серверная модель → браузер запрашивает, сервер отвечает.
Без состояния (stateless) → каждый запрос независим (нет сессий).
Текстовый протокол → данные передаются в читаемом формате.
🚩Структура HTTP-запроса
Пример запроса от браузера к серверу
GET /index.html HTTP/1.1 Host: example.com User-Agent: Mozilla/5.0Ставь 👍 и забирай 📚 Базу знаний
🤔 Как сделать отказоустойчивый кластер Kubernetes?
Чтобы обеспечить отказоустойчивость:
1. Master-ноды в HA:
- Несколько control-plane-нод за балансировщиком (HAProxy, nginx, keepalived).
- etcd кластер в odd-количестве узлов (3+).
2. Worker-ноды:
- Несколько нод в разных зонах (для облаков — Availability Zones).
- Использование PodDisruptionBudget и antiAffinity.
3. Ingress и LoadBalancer:
- Балансировка между ingress-нодами.
- Использование внешнего L4-балансировщика.
4. Мониторинг и алерты:
- Prometheus + Alertmanager.
- Проверка готовности/живости, рестарт в случае сбоев.
Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚 Базу знаний
🤔 Что такое 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
Ставь 👍 и забирай 📚 Базу знаний🤔 Что такое декларативный подход?
Декларативный подход — это способ описания желаемого конечного состояния, а не шагов, как до него добраться. Например, мы говорим, что "пакет nginx должен быть установлен", а не "скачай и установи nginx".
Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚 Базу знаний
Пожизненная PRO подписка на easyoffer по цене одного года.
Акция до 20 февраля. Покупаешь сейчас один раз – пользуешься всю жизнь без лимита, включая все будущие функции.
Запланированные новые фичи на ближайшие пол года:
1. Агрегатор вакансий
2. Улучшение резюме, чтобы проходить ATS системы
3. Генерация уникального резюме и сопроводительного письма под вакансию
Покупай на https://easyoffer.ru/
🤔 Когда вы создаёте файл какие права создаются по умолчанию?
Права доступа по умолчанию зависят от базовых прав доступа и значения
umask. Базовые права доступа — это значения, которые система использует для определения разрешений перед применением маски umask.
🟠Файлы: 666 (rw-rw-rw-)
Это означает, что по умолчанию все пользователи могут читать и записывать в файл.
🟠Каталоги: 777 (rwxrwxrwx)
Это означает, что по умолчанию все пользователи могут читать, записывать и выполнять (заходить) в каталог.
🚩Значение umask: 022
Это маска, которая определяет, какие права будут отключены при создании нового файла или каталога. Значение umask указывается в восьмеричной системе счисления.
🟠Создание файла
Базовые права доступа: 666
Значение umask: 022
Окончательные права доступа: 666 - 022 = 644 (rw-r--r--)
🟠Создание каталога
Базовые права доступа: 777
Значение umask: 022
Окончательные права доступа: 777 - 022 = 755 (rwxr-xr-x)
🚩Создание файла с umask 0022
1⃣Установка umask
umask 0022
2⃣Создание файла
touch myfile
3⃣Проверка прав доступа
ls -l myfile
Вывод
Права доступа: 644 (rw-r--r--)
-rw-r--r-- 1 user user 0 Jul 26 12:00 myfile
🚩Создание каталога с umask 0027
1⃣Установка umask
umask 0027
2⃣Создание каталога
mkdir mydir
3⃣Проверка прав доступа
ls -ld mydir
Вывод
Права доступа: 750 (rwxr-x---)
drwxr-x--- 2 user user 4096 Jul 26 12:00 mydir
🚩Дополнительные замечания
🟠umask в скриптах
Вы можете установить umask в скрипте для задания прав доступа по умолчанию для всех создаваемых файлов и каталогов.
#!/bin/bash
umask 027
touch file1
mkdir dir1
🟠Проверка прав доступа в разных ситуациях
Для файлов: По умолчанию права доступа 666 минус umask.
Для каталогов: По умолчанию права доступа 777 минус umask.
Ставь 👍 и забирай 📚 Базу знаний🤔 Как организовать полный цикл CI/CD для 3 команд?
- Разделить пайплайны по проектам/компонентам;
- Использовать общие stages: build → test → scan → deploy;
- Настроить изолированные среды (dev/test/prod);
- Внедрить обратную связь (slack, email);
- Хранить все артефакты централизованно;
- Назначить ответственность за релиз каждой команды или централизованно через релиз-менеджера.
Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚 Базу знаний
🤔 Как происходит секьюрити тест какой алгоритм под капотом?
Security-тестирование – это процесс проверки системы на уязвимости, угрозы и риски атак. Оно помогает защитить данные и сервисы от хакеров.
🚩Сканеры уязвимостей (Nessus, OpenVAS)
- Загружают базу известных уязвимостей (CVE).
- Проверяют систему на наличие этих уязвимостей.
- Используют сигнатурный анализ (по шаблонам) и эвристический анализ (поведенческий).
🚩SQL-инъекции (SQLmap, Burp Suite)
- Автоматически подставляют вредоносные SQL-запросы (
' OR 1=1 --).
- Проверяют, есть ли доступ к базе данных.
- Выполняют дамп данных, если нашли уязвимость.
SELECT * FROM users WHERE username = 'admin' --' AND password = 'password'
🚩Поиск XSS-уязвимостей (DOM-XSS, Stored-XSS, Reflected-XSS)
- Вставляют вредоносный JavaScript-код в форму ввода.
- Если скрипт исполняется в браузере – уязвимость найдена.
<script>alert('XSS!')</script>
🚩Подбор паролей (Brute Force, Dictionary Attack)
- Пробуют тысячи вариантов паролей (rockyou.txt).
- Используют John the Ripper, Hydra, Hashcat.
hydra -l admin -P passwords.txt 192.168.1.1 ssh
🚩Анализ трафика (MITM, Sniffing, Packet Analysis)
Захватывают пакеты сети (tcpdump, Wireshark).
Ищут передаваемые пароли, сессии, токены.
Ставь 👍 и забирай 📚 Базу знаний🤔 Какие утилиты для редактирования текста "на лету"?
"На лету" — это значит без открытия интерактивного редактора. Вот популярные утилиты:
- sed — потоковый редактор, отлично подходит для замены, удаления строк и подстановки.
- awk — обработка и изменение строк и столбцов в текстах.
- perl -p -i — редактирование файлов прямо в командной строке.
- ed — минималистичный текстовый редактор, работает через команды.
- ex — командный режим vi.
- Также echo, cut, tr, paste — для простых трансформаций.
Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚 Базу знаний
🤔 Зачем нужен стейт в Terraform?
Файл
terraform.tfstate хранит текущее состояние инфраструктуры. Он нужен, чтобы Terraform знал, какие ресурсы уже существуют, и мог правильно управлять изменениями.
🟠Отслеживание ресурсов
Terraform использует tfstate, чтобы сопоставлять код с реальными ресурсами.
В коде создаем виртуальную машину
hcl
resource "aws_instance" "example" {
ami = "ami-123456"
instance_type = "t2.micro"
}
Запускаем terraform apply, создается сервер в AWS
В terraform.tfstate записывается информация об этом ресурсе
При следующем terraform apply Terraform сверяет tfstate с реальными ресурсами и вносит только изменения
🟠Управление зависимостями
Когда ресурсы связаны (например, сервер и security group), Terraform понимает связи через tfstate и удаляет ресурсы в правильном порядке
🟠Работа в команде (`remote state`)
Когда несколько разработчиков работают с Terraform, tfstate должен храниться в общем месте, например
- S3 + DynamoDB (AWS)
- Terraform Cloud
- GCS + Firestore (GCP)
- Azure Storage + CosmosDB (Azure)
hcl
terraform {
backend "s3" {
bucket = "my-terraform-state"
key = "prod/terraform.tfstate"
region = "us-east-1"
encrypt = true
dynamodb_table = "terraform-lock"
}
}
Ставь 👍 и забирай 📚 Базу знаний