ОП.05Эксплуатация Linux-сервера

ОП.05 · работа в паре · темы 1–8

Эксплуатация Linux-сервера

Три технических задания компании «Пятый склад» на администрирование Ubuntu: выкладка сервиса заявок, ночной инцидент на сервере платежей и закрытие доступа уволенного администратора. Каждое задание выполняет пара практикантов группы эксплуатации на копии сервера в своей виртуальной машине.

Компания

«Пятый склад» хранит товары интернет-магазинов и доставляет их покупателям: 14 складов, 600 курьеров, около 9 000 отправлений в день. Внутренние сервисы работают на серверах Ubuntu 24.04, их обслуживает группа эксплуатации ИТ-отдела. С октября в группе проходят практику практиканты колледжа: они работают парами и получают заявки из очереди группы. Изменения на рабочих серверах вносит дежурный инженер по отчёту и журналу работ пары, поэтому пара работает на копии сервера.

В каждом ТЗ — письмо директора по ИТ, текст заявки и хронология, сотрудники и регламенты компании, требования, порядок работы, сдача и оценка. Каждое ТЗ можно скачать в PDF с подписями и актом сдачи-приёмки.

Задания

  1. ТЗ 1Ввод в эксплуатацию сервиса заявок helpdesk 2.4.1

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

    FHSпользователи и группыsudoправа и umasksetgidпроцессы
  2. ТЗ 2Инцидент на сервере приёма платежей billing-02

    Ночной инцидент: раздел журналов заполнен, процессор занят зависшей сверкой. Восстановить работу, не останавливая приём платежей, и сдать postmortem.

    FHSfind и удалениеdf и duправапроцессы и сигналыtop, ps, nicepostmortem
  3. ТЗ 3Закрытие доступа уволенного администратора на сервере ops-03

    Последний день администратора: закрыть ему доступ, передать его зону ответственности, найти и убрать всё, что он оставил, и составить акт аудита.

    пользователи и группыsudoправа и владельцыsetuidfindпроцессы и сигналыFHS

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

Материалы

В каждом ТЗ есть раздел «Куда смотреть»: что изучить и чем себя проверить по каждой задаче. Готовых решений там нет.

Как работает пара

  1. Репозиторий. Один репозиторий на пару. Его создаёт практикант 1 и добавляет напарника в Collaborators. В README — номер ТЗ, состав пары и кто за какую часть отвечает.
  2. Стенд у каждого. Каждый разворачивает стенд в своей виртуальной машине и выполняет свою часть работ. Стенд можно разворачивать заново сколько угодно раз: он возвращает сервер в исходное состояние.
  3. Ветки и ревью. Каждый работает в своей ветке и открывает Pull Request. Напарник проверяет его: повторяет команды на своём стенде и оставляет замечания. Слить можно после одобрения.
  4. Журнал работ. runbook.md общий: время, кто из пары, команда, результат. Ошибки и откаты тоже записываются, по журналу должно быть понятно, как пара пришла к решению.
  5. Финальная приёмка. На одной машине: стенд заново, обе части решения по скрипту или журналу, затем скрипт приёмки. Снимок с итогом — в репозиторий.

Структура репозитория

README.md            номер ТЗ, состав пары, кто за что отвечает, итог приёмки
server-passport.md   паспорт сервера до изменений
runbook.md           журнал работ
…                    документ и скрипт из части 4 своего ТЗ
acceptance.txt       вывод скрипта приёмки после финального прогона
optional/            задачи по выбору
screenshots/         снимки, которые требует ТЗ

Оценка · 30 баллов

  • 10приёмка на стенде, развёрнутом заново: баллы пропорциональны числу пунктов OK
  • 5скрипт из результата работы выполняет свою задачу на чистом стенде
  • 5документ — матрица доступа, postmortem или акт аудита: по фактам, с командами и выводом
  • 4паспорт сервера и журнал работ
  • 3работа в паре: свои ветки и Pull Request, ревью напарника с замечаниями
  • 3ответы на испытаниях при сдаче

27–30 баллов — 5, 23–26 — 4, 18–22 — 3, меньше 18 — работа возвращается на доработку. Задачи по выбору каждого ТЗ дают до 4 дополнительных баллов.

Оценку получает пара, но вклад каждого виден по коммитам, Pull Request и журналу. Если работу выполнил один из пары, второй получает 0 баллов за работу в паре и отвечает по своей части отдельно.

Сроки и правила

  • Срок — 14 календарных дней с даты выдачи, этапы — в разделе 3.3 каждого ТЗ. Сдача — пятью испытаниями в присутствии обоих практикантов.
  • Стенды запускаются только в виртуальной машине: они создают и удаляют учётные записи, правила sudo, подключают разделы.
  • Справка man, лекции курса и поиск в интернете разрешены. Нейросетью можно править текст документов. Команды и их вывод в документах — только с вашей виртуальной машины.
  • Ослаблять права, чтобы служба запустилась, запрещено. Если служба не стартует, причину ищут в её сообщении и журнале.