Shanraq.org Shanraq.org
Наблюдаемость, резервная копия и учебный инцидент
IT

Cloud & DevOps: от локального приложения до надёжного сервиса Урок 24 из 24

Наблюдаемость, резервная копия и учебный инцидент

Определяем показатели сервиса, создаём проверяемую копию, восстанавливаем данные и оформляем итоговый отчёт без поиска виноватого.

Текст переведён с помощью ИИ.

Этот урок начинается с нуля. Незнакомое слово здесь не считается вашим пробелом: мы сначала создадим образ, затем дадим точное значение и только потом применим его.

Где мы находимся

Полётное повторение. В прошлом уроке была опора Deployment wants Pods → Service finds ready Pods → probes steer traffic → rollout changes gradually. Не подглядывая, назовите её четыре звена и только затем сравните с записью.

Результат урока

Определяем показатели сервиса, создаём проверяемую копию, восстанавливаем данные и оформляем итоговый отчёт без поиска виноватого. Не переходите дальше, пока не можете объяснить, что проверяет каждая команда и какой отказ она обнаруживает.

Сначала знакомый образ

Когда в доме пропадает вода, мало снова включить насос. Нужно узнать, кого затронуло, остановить утечку, восстановить подачу, проверить качество воды и устранить причину повторения. Инцидент с сервисом проходит тот же путь; поиск виноватого мешает собирать факты.

Аналогия помогает начать рассуждение, но не заменяет устройство технологии. Ниже мы уточним каждое слово.

Опорный сигнал урока

detect → limit impact → restore service/data → verify → learn → owner+date

Прочитайте цепочку слева направо. Она отвечает не на вопрос «какую команду запомнить», а на вопрос «почему следующий шаг следует из предыдущего».

Новые слова простыми словами

  • Observability — Способность задавать системе новые вопросы по её внешним сигналам.
  • Metric / log / trace — Метрика показывает число во времени, log — событие, trace — путь одного запроса.
  • Incident — Незапланированное событие, ухудшившее или угрожающее услуге.
  • Restore drill — Безопасная репетиция восстановления из копии в изолированное место.

Разбираем без спешки

Логи отвечают, что произошло с отдельным событием; метрики показывают изменение чисел во времени; трассировка связывает путь запроса. Резервная копия считается полезной только после восстановления. Инцидент заканчивается не перезапуском, а восстановленной услугой, сохранёнными доказательствами и действиями, уменьшающими повторение.

Сейчас не нужно запоминать формулировку дословно. Найдите в ней причинную связь и привяжите её к опорному сигналу выше.

Сначала предскажите результат

До запуска ответьте на бумаге: что должно измениться, что должно остаться прежним и какой вывод команды подтвердит ваш прогноз? Даже неверный прогноз полезен, если после опыта вы можете объяснить расхождение.

Опыт маленькими шагами

Выполните команды из корня course/cloud-devops-lab. Команды рассчитаны на учебную среду. Перед командой, меняющей сервер или данные, прочитайте её целиком и проверьте текущий каталог. Запускайте блок по одной смысловой группе. После каждой остановитесь и сопоставьте результат со своим прогнозом.

curl -fsS http://127.0.0.1:8080/metrics 2>/dev/null || true
mkdir -p backups
./scripts/backup.sh 2>/dev/null || true
printf 'A real drill restores into an isolated volume first.\n'
printf 'Record: detection, impact, timeline, recovery, evidence, follow-up owner and date.\n'

Эталонные файлы проекта.

Что именно делает этот опыт

Сначала снимите метрику и сохраните факты. Backup получает UTC-время и checksum. Restore идёт в отдельное место, где сравнивается содержимое. Отчёт фиксирует воздействие, временную линию, решение и конкретного владельца следующего действия.

Что должно получиться

  • Метрика связана с пользовательским результатом.
  • Команда завершается предсказуемым кодом.
  • Результат можно повторить на чистой среде.

Соберите целое по опорной схеме

Опорная схема 24

Проведите пальцем или карандашом по четырём блокам и расскажите весь урок одним связным объяснением.

Воспроизведите без подсказки

  1. Закройте схему и нарисуйте четыре блока по памяти.
  2. Объясните каждый переход словами «потому что».
  3. Дайте определение одному новому термину, не повторяя текст дословно.
  4. Назовите один сигнал, который доказывает результат.

Найдите и исправьте ошибку

Ошибка: «Инцидент закончился, когда сервис снова отвечает 200». Исправление: нужно проверить пользовательский результат и данные, сохранить факты и назначить работу против повторения.

Задание

Теперь соберите тот же смысл самостоятельно. Можно смотреть на опорную схему; цель — не экзамен на память, а воспроизводимый результат.

Обязательное. Напишите POSIX sh-скрипт резервного копирования каталога: архив с UTC-временем, SHA-256 рядом, проверка архива и отказ удалить исходник. Затем перечислите команды тестового восстановления в новый каталог. Отправьте только команды или скрипт POSIX sh без реальных ключей и токенов.

Критерии готовности

  • Вы понимаете каждую запускаемую строку.
  • Повторный запуск даёт ожидаемый результат или безопасно объяснённое отличие.
  • В выводе нет настоящих ключей, токенов и паролей.
  • Вы можете показать факт, который подтверждает успех.

Если проверка не прошла, зафиксируйте ожидаемое и фактическое, вернитесь к одному разорванному звену опоры и повторите. Ошибка не отнимает у вас право продолжать обучение.

По желанию. Запишите один возможный отказ и сигнал, по которому вы его заметите.

Открытая перспектива

Это финальный урок. Теперь восстановите всю дорогу курса: изменение, проверка, выпуск, наблюдение и доказанное восстановление.

Оглавление курса

Если вы нашли ошибку или опечатку в тексте статьи, то сообщите нам об этом

Проверить задание

Сначала решите и запустите в VS Code — редактор покажет ошибку на месте. Готовое решение вставьте сюда. Проверяет модель: она укажет на ошибку, но не даст готовый ответ.

Чтобы проверить, нужно войти. Войти

Комментарии (0)

Пока нет комментариев. Будьте первым.