Вопросы на собеседовании: Платформенный инженер
100 реальных вопросов с образцовыми ответами и пояснениями для уровня Senior Platform-инженер.
Смотреть пример резюме: Платформенный инженер →Тренировка флешкарточками
Интервальное повторение · Hunter Pass
Вопросы
Я включаю возможность в платформу, когда нескольким командам нужен одинаковый безопасный и повторяемый процесс, для которого платформа может дать стабильный контракт.
- Платформа отвечает за общие интерфейсы создания сервиса, развёртывания, идентификации и стандартной наблюдаемости, но не за бизнес-настройки каждого сервиса.
- Продуктовая команда сохраняет доменные решения и может выйти со стандартного пути через документированное исключение, если её нагрузка действительно отличается.
- Я проверяю границу по объёму поддержки и данным о внедрении; потребность одной команды без перспективы переиспользования обычно остаётся локальной.
Зачем это спрашивают: Интервьюер проверяет, рассматривает ли кандидат платформу как ограниченный внутренний продукт, а не как набор всех инфраструктурных работ.
Хороший платформенный API выражает намерение разработчика, возвращает наблюдаемый статус и скрывает детали провайдера, не скрывая важных ограничений.
- Я предпочитаю небольшой декларативный контракт с размером сервиса и классом данных вместо десятков облачных параметров.
- Валидация должна завершаться до создания ресурсов, показывать ошибочное поле и давать ссылку на поддерживаемые значения.
- Долгим операциям нужны ID операции, ключ идемпотентности, условия статуса и безопасный повтор, а не синхронный тайм-аут.
Зачем это спрашивают: Интервьюер хочет увидеть практичный дизайн API, который делает самообслуживание предсказуемым и сохраняет полезные границы платформы.
Я возьму в ответственность одну ограниченную возможность, определю её пользователей и критерий успеха, а затем буду улучшать её по наблюдаемым затруднениям.
- Для модуля создания базы данных я могу отслеживать долю успешных запусков через самообслуживание, медианное время получения базы и число обращений в поддержку на 20 созданных баз.
- Перед изменением контракта я поговорю с двумя или тремя командами-потребителями и опубликую короткий план сохранения совместимости.
- Запросы за границами возможности становятся основанием для точки расширения или явного отказа от функции, а не поводом автоматически расширять объём работ.
Зачем это спрашивают: Интервьюер оценивает, способен ли кандидат отвечать за переиспользуемую возможность с измеримым результатом для внутренних клиентов.
Я использую Component для развёртываемых сервисов, API и Resource для их контрактов и зависимостей, а затем связываю их с System, Domain, Group и User.
- Владельцем сущности должна быть реальная Group с маршрутом дежурства или поддержки, а не произвольное имя команды.
- Связи providesApi, consumesApi, dependsOn и partOf позволяют оценивать влияние без копирования списков зависимостей в описание.
- Я делаю lifecycle и границы систем достаточно простыми, чтобы владельцы сервисов поддерживали их обычными запросами на слияние.
Зачем это спрашивают: Интервьюер проверяет практическое понимание модели каталога Backstage и ответственного владения.
Locations указывают источники метаданных, processors преобразуют или проверяют сущности, а annotations добавляют ссылки для конкретных интеграций.
- Я храню catalog-info.yaml рядом с сервисом, чтобы изменения метаданных проходили ту же проверку, что и код.
- Аннотация GitHub связывает плагины с репозиторием, а аннотации TechDocs и Kubernetes подключают документацию и представление работающей нагрузки.
- Собственные processors должны приводить к единому виду только устойчивые соглашения компании и явно сообщать об отклонённых сущностях, а не молча исправлять неверные метаданные.
Зачем это спрашивают: Интервьюер хочет увидеть понимание всего пути загрузки каталога, а не только умение отредактировать пример YAML.
Я делаю шаблон тонким слоем оркестрации, который собирает намерение, вызывает протестированные actions и оставляет созданный сервис в проверяемом состоянии.
- Параметры запрашивают владельца, систему, среду выполнения, класс данных и размер, а имена репозитория и пространства имён формируются единообразно.
- Actions могут создать репозиторий, отрендерить каркас, зарегистрировать сущность каталога и открыть запрос на слияние с GitOps-конфигурацией и явными выходными данными каждого шага.
- Итоговая страница даёт ссылки на репозиторий, запрос развёртывания, документацию и инструкцию по откату или очистке при сбое позднего шага.
Зачем это спрашивают: Интервьюер оценивает, способен ли кандидат построить удобный и восстанавливаемый процесс создания сервиса.
Я добавляю плагин, только когда портал может упростить повторяющуюся задачу разработчика через поддерживаемый контракт серверной части.
- Клиентский плагин не должен получать облачные учетные данные; серверный плагин выполняет авторизованные вызовы и возвращает только нужные данные.
- Правила доступа используют владение в каталоге и членство в группах, чтобы пользователь не мог управлять ресурсом другой команды заменой URL.
- Я определяю состояния загрузки, отсутствия данных, запрета и отказа зависимости, потому что внутренние API доступны не всегда.
Зачем это спрашивают: Интервьюер проверяет границы плагина, авторизацию и пользовательский опыт при отказах.
Я храню документацию в репозитории владельца, собираю её в CI и показываю свежесть и владельца в каталоге.
- Шаблон сервиса создаёт минимальную структуру MkDocs с локальным запуском, деплоем, зависимостями и контактом поддержки.
- Публикация из CI не требует выдавать Backstage широкие права на репозитории и создаёт тот же артефакт, который разработчики проверяют локально.
- Карточка оценки может отмечать отсутствующие или устаревшие инструкции эксплуатации, но содержимое определяет команда-владелец и проверяет его вместе с кодом.
Зачем это спрашивают: Интервьюер хочет увидеть практический процесс TechDocs с чётким владением и безопасной публикацией.
Я оцениваю небольшой набор выполнимых требований платформы и для каждого результата показываю подтверждение и следующий шаг.
- Проверка готовности к production может подтверждать владельца, ссылку на SLO, requests ресурсов и одобренный процесс развёртывания по достоверным источникам.
- Проверки должны отличать неизвестный результат от провала, чтобы сбой интеграции не сделал все сервисы несоответствующими.
- Сначала я показываю карточка оценки командам без публичного рейтинга и измеряю исправления, прежде чем рассматривать блокировку релиза.
Зачем это спрашивают: Интервьюер оценивает, помогает ли карточка оценки улучшать сервисы, не превращаясь в произвольный формальный рейтинг.
Стандартный путь должен давать кратчайший поддерживаемый путь от намерения создать сервис до работающей, наблюдаемой нагрузки с владельцем.
- Он может объединять шаблон репозитория, переиспользуемый процесс CI, конфигурацию развёртывания, идентичность рабочей нагрузки, стандартные панели и регистрацию в каталоге.
- Стандартные настройки кодируют общие требования безопасности, но оставляют ограниченный выбор версии среды выполнения, размера сервиса и необходимости базы данных.
- Путь включает обновление и поддержку; сгенерированный код, забытый после первого дня, остаётся лишь стартовым шаблоном.
Зачем это спрашивают: Интервьюер проверяет понимание стандартного пути как поддерживаемого жизненного цикла, а не только генерации кода.
Я версионирую каждый потребляемый контракт и отделяю версию создания шаблона от версий поддерживаемых модулей и процессов.
- Новые репозитории фиксируют выпущенный набор шаблона, например 2.3, а переиспользуемые процессы и Terraform-модули ссылаются на явную основную или дополнительную версию.
- Журнал изменений отмечает обязательные миграции, а тесты совместимости рендерят характерные фикстуры сервисов на предлагаемой версии.
- Предыдущая основная версия поддерживается заявленный срок, а потребители обновляются автоматическими запросами на слияние, не скрытым изменением.
Зачем это спрашивают: Интервьюер хочет увидеть ограниченную модель версионирования, которая не даёт центральным шаблонам неожиданно ломать потребителей.
Я считаю сгенерированные интерфейсы, входные параметры процессов, метки, пути файлов и выходные параметры модулей контрактами, даже если они не оформлены как API.
- Golden-фикстуры покрывают минимальный сервис, сервис с базой и настроенный сервис, чтобы структурные изменения обнаруживались до релиза.
- Добавляемые поля получают безопасные значения по умолчанию, а удаление проходит период deprecation и повторяемую миграцию.
- CI потребителя проверяет отрендеренный результат и план развёртывания, а не только завершение шаблонизатора.
Зачем это спрашивают: Интервьюер проверяет, умеет ли кандидат распознавать и тестировать скрытые контракты платформенных шаблонов.
Я делаю поддерживаемый путь проще собственной инфраструктуры, но оставляю явную точку расширения для требований, которые путь не может безопасно выразить.
- Команда может передать ограниченный overlay или выбрать одобренный расширенный модуль, не создавая ответвление всего шаблона.
- Исключение фиксирует владельца, причину, риск и дату пересмотра, чтобы временное отклонение не стало невидимой постоянной платформой.
- Я ежеквартально просматриваю повторяющиеся исключения; три похожих запроса обычно означают недостающую возможность платформы, а не сопротивление пользователей.
Зачем это спрашивают: Интервьюер оценивает, способен ли кандидат стимулировать внедрение, не блокируя обоснованные особенности нагрузки.
Подключение должно установить идентичность, владение, доставку, границы среды выполнения и показатели поддержки до первого развёртывания в production.
- Процесс создаёт репозиторий и сущность каталога с группой-владельцем, системой, lifecycle и маршрутом связи.
- Он создаёт пространство имён или границу аккаунта, идентичность рабочей нагрузки с минимальными правами, конфигурацию развёртывания и наблюдаемый статус.
- Для завершения нужны успешное тестовое развёртывание, ссылки на панель и SLO, а также описанный путь удаления заброшенного сервиса.
Зачем это спрашивают: Интервьюер хочет убедиться, что подключение создаёт пригодного к эксплуатации клиента платформы, а не только репозиторий.
Я делаю передачу владения и вывод из эксплуатации отдельными процессами каталога с одобрением текущего и принимающего владельцев.
- Передача обновляет связь Group в каталоге, права репозитория, предупреждения, cost метки и привязки идентичность рабочей нагрузки одним проверяемым набором изменений.
- Статус вывода блокирует новые релизы в production до удаления ресурсов и перечисляет зависимости, которые должны подтвердить отключение.
- Окончательная очистка проверяет нулевой трафик, сохраняет требуемые аудит-данные и удаляет записи каталога и инфраструктуры без бесхозных затрат.
Зачем это спрашивают: Интервьюер проверяет владение жизненным циклом между метаданными портала и ресурсами платформы.
Я использую пространства имён как основную административную границу и дополняю их RBAC, квотами, сетевыми политиками и admission controls.
- Каждая команда получает отдельные пространства имён для production и непродуктивных окружений со стабильными метками владельца, стоимости, политик и наблюдаемости.
- Namespace сам по себе не является жесткой границей безопасности, поэтому для недоверенных нагрузок могут понадобиться отдельные кластеры или аккаунты.
- Возможность подключения создаёт весь набор политик одинаково, вместо того чтобы каждая команда собирала его вручную.
Зачем это спрашивают: Интервьюер проверяет понимание как пользы, так и ограничений разделения по пространствам имён.
Я выдаю группам права в соответствии с ролью в каждом пространстве имён, а каждой нагрузке даю отдельный ServiceAccount с более узкими правами во время выполнения.
- Разработчики могут читать нагрузки и журналы в production, но развёртывают через GitOps, а дежурная группа получает ограниченный по времени диагностический доступ.
- RoleBindings ссылаются на централизованно управляемые Roles, чтобы общие права один раз проходили проверку и переиспользовались одинаково.
- Я тестирую разрешённые и запрещённые действия через authorization checks, потому что широкие права с wildcard для verbs и resources легко пропустить на проверку.
Зачем это спрашивают: Интервьюер хочет увидеть практичную модель минимальных привилегий, которая поддерживает рабочие процессы разработчиков.
ResourceQuota ограничивает суммарное потребление пространства имён, а LimitRange задаёт значения по умолчанию или границы requests и limits отдельных объектов.
- Квота может разрешать команде суммарно 20 CPU и 40 ГиБ памяти, не давая одному пространству имён занять кластер.
- LimitRange может задавать каждому контейнеру 100 millicores и 256 МиБ, чтобы отсутствие request не ломало планирование и учёт затрат.
- Я настраиваю их вместе и показываю текущее использование в портале, потому что невидимая нехватка квоты приводит к непонятным отказам развёртывания.
Зачем это спрашивают: Интервьюер проверяет, умеет ли кандидат применять оба механизма и не путает ли их области действия.
Я начинаю с запрета входящего и исходящего трафика по умолчанию, затем явно разрешаю DNS, входной трафик, нужные зависимости и точки подключения наблюдаемости.
- Selectors используют стабильные метки пространства имён и нагрузки, управляемые платформой, а не имена Pod или изменяемые метки релиза.
- Правила исходящего трафика учитывают DNS и внешние точки подключения, иначе безопасная на вид политика ломает обнаружение сервисов или проверку сертификатов.
- Шаблон включает тесты связности, чтобы команда до production видела, какой контракт заблокирован.
Зачем это спрашивают: Интервьюер хочет увидеть практичную сетевую изоляцию, которую можно отлаживать и согласовать с потребностями сервиса.
Pod Security Admission применяет общие профили безопасности нагрузок, а admission policy отвечает за требования и исключения конкретной организации.
- Я помечаю пространства имён приложений профилем restricted и перед включением enforce использую режим warn или audit.
- Правило Gatekeeper или Kyverno может требовать одобренный registry, requests ресурсов или метки идентичности рабочей нагрузки, которых нет в Pod Security.
- Исключения ограничиваются пространством имён, имеют владельца и срок действия, а не становятся глобальным обходом для одной несовместимой нагрузки.
Зачем это спрашивают: Интервьюер проверяет, умеет ли кандидат безопасно сочетать стандартные и собственные admission controls.
Закрытые вопросы
- 21
Когда выбрать Gatekeeper, Kyverno или встроенные admission policies Kubernetes?
kubernetespolicy-as-code - 22
Какой контракт PodDisruptionBudget должна предоставлять общая возможность управления нагрузками для нескольких внутренних команд?
- 23
Как определить контракт автомасштабирования общей возможности управления нагрузками для нескольких внутренних команд?
autoscalingscaling - 24
Как предоставить workload identity как платформенную возможность?
- 25
Каким должен быть контракт управления секретами для команд приложений?
secretsconfiguration - 26
Что должен содержать публичный контракт переиспользуемого Terraform-модуля?
terraform - 27
Как версионировать Terraform-модуль, которым пользуются несколько команд?
terraform - 28
Зачем Terraform нужен удалённый backend с блокировкой состояния?
terraformlocking - 29
Как общая Terraform-возможность для нескольких внутренних команд должна поддерживать существующие ресурсы и рефакторинг модулей?
decision-makingrefactoringterraform - 30
Как работать с aliases провайдеров в переиспользуемых Terraform-модулях?
terraform - 31
Когда Terragrunt полезен, а когда не нужен?
- 32
Как протестировать Terraform-модуль и шаблон сервиса перед релизом?
terraformtemplates - 33
Какие основные понятия Crossplane нужны, чтобы предоставить базу данных как платформенную возможность?
iacdatabase - 34
Как сделать Composition Crossplane понятной потребителям?
iacoop - 35
Что даёт GitOps-сверка по сравнению с запуском kubectl из CI?
kubernetesgitopskubectl - 36
Когда использовать Argo CD app-of-apps, а когда ApplicationSet?
gitops - 37
Какие стандартные настройки порядка и hooks нужны общей возможности доставки Argo CD для нескольких внутренних команд?
gitopshooks - 38
Как добавить поэтапную доставку в GitOps-платформу?
gitops - 39
Как спроектировать переиспользуемый процесс CI как API платформы?
designapi - 40
Как выбрать между hosted и self-hosted CI runners?
- 41
Какой контракт кешей и артефактов должна предоставлять общая возможность CI нескольким внутренним командам?
cachingartifacts - 42
Как управлять параллельностью в переиспользуемых процессах поставки?
formsconcurrency - 43
Какие основы цепочки поставки должен предоставлять платформенный процесс сборки?
- 44
Для каких задач подходят Helm и Kustomize?
helmkuberneteskustomize - 45
Когда платформа должна предлагать сервисную сеть?
service-mesh - 46
Как спроектировать возможность OpenTelemetry для команд приложений?
observabilitydesign - 47
Как контролировать кардинальность в Prometheus и использовать recording rules?
monitoring - 48
Как определить цели надёжности для возможности платформы?
reliability - 49
Как платформенной команде использовать метрики DORA?
platform-engineeringmonitoring - 50
Как добавить распределение затрат и подбор ресурсов в платформу самообслуживания?
self-service - 51
В репозитории есть корректный catalog-info.yaml, но Component исчез из Backstage после переноса команды в новую организацию GitHub. Что вы проверите?
yamlbackstagecomponents - 52
Две команды сообщают о Component с именем payments-api в Backstage, а его ссылки ведут к разным владельцам. Как определить, является ли это конфликтом загрузки?
componentsapibackstage - 53
Scaffolder создаёт репозиторий и облачную базу, а затем падает до открытия запроса на слияние с GitOps-конфигурацией; за неделю появилось три брошенных базы. Что вы измените?
gitopsdatabasecode-review - 54
Собственный action Scaffolder умеет создавать репозитории, но любой вошедший разработчик может создать репозиторий в GitHub-организации команды безопасности. Как исправить авторизацию?
auth - 55
Плагин затрат Backstage работает у администраторов, но возвращает 403 обычным владельцам сервисов через прокси, хотя прямой вызов API затрат со служебным токеном успешен. Как это отладить?
tokensapiproxy - 56
TechDocs показывает актуальную инструкцию сервиса, но карточка оценки готовности продолжает считать её отсутствующей спустя 18 часов после публикации. Как найти расхождение?
health-checksiacrunbooks - 57
Обновление стандартного пути переводит переиспользуемый процесс с версии 3 на 4, и 6 из 24 сервисов падают из-за удалённого поля deploy_region. Как безопасно провести обновление?
deploymentci-cd - 58
Четыре команды скопировали и форкнули чарт развёртывания ради одного sidecar, а число обращений к платформе выросло с 2 до 11 в месяц. Какую точку расширения вы спроектируете?
designworkloadsdeployment - 59
У пространства имён квота 10 CPU, текущие requests равны 9 CPU, а новый Pod с запросом 500 millicores отклоняется при свободных узлах. LimitRange также задаёт 1 CPU для sidecar без request. Что вы исправите?
workloadsnamespaceskubernetes-workloads - 60
Команда задаёт minAvailable 3 для нагрузки с тремя репликами, и drain узла заблокирован 40 минут; команда утверждаёт, что PDB гарантирует отсутствие простоя. Что вы сделаете?
replication - 61
Поток запросов удваивается, HPA увеличивает сервис с 4 до 12 реплик, но 8 Pod остаются Pending 7 минут, а задержка не снижается. Как отладить HPA вместе с cluster autoscaler?
latencyautoscalingscaling - 62
Новое admission-правило обязательного owner отклоняет каждый Deployment из общего Helm-чарта, включая аварийные откаты. Как восстановиться и улучшить политику?
deploymentrollbackhelm - 63
Разработчики могут развёртывать приложения через Argo CD, но после изменения платформенного RBAC их Pod получают AccessDenied от объектного хранилища. Как отделить Kubernetes RBAC от идентичности рабочей нагрузки?
kubernetesdeploymentgitops - 64
После включения запрета исходящего трафика по умолчанию Pod подключаются к базе по IP, но не могут разрешить её имя, а 14 сервисов сообщают о тайм-аутах DNS. Что вы измените?
databaseresilience - 65
Сгенерированная нагрузка отклонена restricted-профилем Pod Security из-за запуска с UID 0; отдельный отчёт admission также рекомендует корневую файловую систему только для чтения. Как сохранить защиту платформы?
workloadskubernetes-workloadsguardrails - 66
Rollout с 6 репликами останавливается на 3 обновлённых Pod из-за новой проверки readiness, при этом maxUnavailable равен 0, а maxSurge 50 процентов. Что вы сделаете?
replicationhealth-checks - 67
После ротации ключа KMS планы Terraform для 11 сервисов завершаются ошибкой: удалённый backend видит объекты состояния, но не может их расшифровать. Как восстановить общую возможность работы с состоянием?
terraform - 68
Ночной план Terraform из общего инфраструктурного процесса хочет удалить публичную метку и вернуть старое правило security group у сервисов команд checkout и поиска. Как вы обработаете расхождение?
terraformiacsoft-skills - 69
Общий Terraform-модуль переименовывает и удаляет выходной параметр deployment_role_arn, после чего 18 процессов-потребителей падают с ошибкой unsupported attribute. Как восстановить и развивать контракт модуля?
terraformdeploymentci-cd - 70
Переиспользуемый модуль Terraform создаёт реплику в eu-west-1, но после рефакторинга её KMS key планируется в стандартном аккаунте us-east-1. Что вы проверите?
terraformreplicationrefactoring - 71
Обновление общего сетевого модуля с 2.8 до 3.0 заставляет plan заменить 12 связей таблиц маршрутизации. Как провести обновление модуля?
soft-skills - 72
После переноса aws_s3_bucket.logs в module.logging Terraform планирует удалить и заново создать бакет с журналами аудита. Как правильно провести рефакторинг?
terraformloggingrefactoring - 73
Terraform читает удалённое состояние в CI, но после создания ресурсов не может записать обновление, и задание завершается ошибкой. Какие права доступа к backend и шаги восстановления вы проверите?
terraform - 74
Модуль базы помечает password как sensitive, но переиспользуемый процесс CI печатает его при сохранении всех выходных параметров Terraform в deployment.json. Что вы измените?
terraformdeploymentserialization - 75
Crossplane claim базы остаётся Synced=False 22 минуты, а событие говорит, что selector составной подсети не нашёл ресурсов. Как отладить Composition?
iacdatabaseoop - 76
Crossplane claim сообщает Synced=True, но Ready=False: managed database доступна, а connection secret не появляется. Что вы проверите?
iacdatabasesecrets - 77
Удаление service claim начинает удалять production-базу, которую команда данных ожидала сохранить. Как исправить семантику владения Crossplane?
iacdatabaseownership - 78
Argo CD каждые три минуты повторно синхронизирует Deployment из общего GitOps-процесса: платформенный operator переписывает одну аннотацию и мешает трём командам приложений. Как остановить цикл?
deploymentgitopskubernetes-deployment - 79
Custom Resource из общего процесса подготовки кластера применяется до своего CRD при синхронизации Argo CD, поэтому первое развёртывание падает у каждой команды, подключающей новый кластер. Как исправить порядок?
workloadsoperatorscluster - 80
PreSync hook миграции схемы в общем процессе развёртывания завершается по тайм-ауту после половины изменений, а каждый повтор Argo CD запускает его заново для двух продуктовых команд. Как сделать hook безопасным?
deploymentgitopsschema - 81
После добавления новой метки кластера в merge ApplicationSet внезапно помечает на удаление 27 приложений предварительного просмотра. Что вы сделаете до reconciliation?
cluster - 82
External Secrets меняет значение каждый час, но Argo CD постоянно считает созданный Secret OutOfSync и заменяет его зашифрованным значением из Git. Как разделить владение?
gitgitopssecrets - 83
Общий платформенный процесс Argo Rollouts проходит staging, но останавливает checkout на 25 процентах в production после роста задержки p95 со 180 до 260 мс, затрагивая команду платежей. Что вы сделаете?
latencygitops - 84
Вызываемый процесс GitHub Actions не публикует образ из-за отсутствующего права packages: write, поэтому команда выдаёт permissions: write-all. Что добавить в контракт переиспользуемого процесса?
ci-cd - 85
Общий кеш CI ускоряет Java-сборки, но 9 процентов запусков падают после перехода с JDK 21 на 23 из-за старых восстановленных классов. Как исправить кеш?
caching - 86
Тестовое задание общего процесса сборки загружает отчёты, но задание развёртывания скачивает артефакт app из другой части матрицы и поставляет неверную архитектуру командам платформы. Как исправить поток артефактов?
deploymentartifactsarchitecture - 87
Два репозитория используют постоянный self-hosted runner, и сборка недоверенного запроса на слияние читает учётные данные развёртывания из рабочей директории предыдущего задания. Что вы измените?
deploymentci-cdworkloads - 88
Два развёртывания в production одного сервиса пересекаются, и старый запуск заканчивается позже, возвращая предыдущий образ. Как настроить параллельность?
deploymentconfigconcurrency - 89
У релизного образа есть SBOM, но список пакетов расходится с образом: SBOM создали из каталога исходников до финального этапа сборки. Что вы измените?
supply-chain - 90
Cosign успешно проверяет образы из личного процесса инженера и из защищённого релизного процесса. Как ужесточить политику подписи?
discovery - 91
Production overlay Kustomize патчит поле, которое переименовал обновлённый Helm-чарт, поэтому patch ни с чем не совпадает, а число реплик падает с 4 до 1. Как это предотвратить?
helmkuberneteskustomize - 92
После включения повторных попыток в платформенной возможности сервисной сети checkout отправляет втрое больше платёжных запросов при 503, а доля дублей у команды платежей растёт до 2 процентов. Что вы измените?
- 93
Сервис команды заказов получает ошибки TLS handshake только при вызове новой зависимости команды складского учёта в сервисной сети, а незашифрованные запросы из отладочного Pod проходят. Как отладить общую возможность mTLS?
tlsmtlsworkloads - 94
HTTP-запросы сохраняют одну трассировку между сервисами checkout, но сообщения Kafka у команды обработки заказов начинают новые трассировки, из-за чего разрываются 38 процентов трассировок checkout. Что исправить в общей возможности телеметрии?
kafkaobservabilityhttp - 95
Во время 12-минутного отказа хранилища телеметрии очередь общего OpenTelemetry Collector заполняется, память достигает 90 процентов, а данные исчезают у шести команд приложений. Как стабилизировать платформенную возможность?
observabilitymemorydata-structures - 96
Новая метка request_path из общего SDK телеметрии увеличивает число активных рядов Prometheus с 1,2 до 4,8 миллиона, а панели восьми команд загружаются 19 секунд. Что вы сделаете?
monitoringdashboardsobservability - 97
SLO создания ресурсов показывает 99,9 процента успеха, но в знаменатель входят 320 некорректных отправок формы, а 14 корректных запросов завершились ошибкой. Какой знаменатель вы выберете?
sloforms - 98
Команде начисляют 40 процентов стоимости общего кластера из-за высоких CPU requests, но p95 usage составляет лишь 18 процентов от них. Как улучшить распределение затрат и подбор ресурсов?
cluster - 99
Внедрение платформы застряло на 46 процентах, а команда тратит 18 часов в неделю на одинаковые вопросы о пространствах имён и CI. Что вы поставите в приоритет?
prioritizationproblem-solvingdecision-making - 100
Внутренним командам нужны окружения предварительного просмотра: большинству на 24 часа, но двум командам нужны закрытые данные и семь дней отладки. Какую возможность вы спроектируете первой?
design