тренажёр собеседований
← Маршрут обучения
модуль 12 / 12 · Провайдер KaaS · 18 часов

Выпускной проект: проверяемый пилот своего KaaS

Собери пройденное в одну демонстрацию. Раздели учебную модель и настоящий пилот OpenStack, а каждый вывод подкрепи повторяемым опытом.

Ещё не начат
практика · через терминал портала

Где выполнять задания

Выпускной проект выполняется через терминал портала и отдельный учебный стенд. Рубрика заполняется по доказательствам; автоматического облачного зачёта пока нет.

Открыть практикум и терминал ↗

Читай урок в этой вкладке, команды выполняй в соседней. Подстановки в угловых скобках сначала замени своими значениями. Ctrl+C останавливает наблюдение или учебный сервер.

Сокращения этого модуля: расшифровки и смысл
API
Application Programming Interface — программный интерфейс
BOM
Bill of Materials — перечень компонентов и версий
CSI
Container Storage Interface — интерфейс подключения хранилищ контейнеров
KaaS
Kubernetes as a Service — Kubernetes как услуга
SLA
Service Level Agreement — соглашение об уровне услуги
SLO
Service Level Objective — целевое качество услуги
VM
Virtual Machine — виртуальная машина
YAML
YAML Ain’t Markup Language — язык описания данных

В командах сохраняется точное написание параметров и имён. В тексте сокращения раскрываются в скобках.

Результат модуля

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

Перед началом: Свой KaaS: понятный продукт и надёжные операции.

1. Как выглядит законченный результат

KaaS (Kubernetes as a Service — Kubernetes как услуга) пилот должен проводить клиента через полный цикл: запрос, наблюдение операции, готовый кластер, доступ, приложение с данными, изменение размера, проверенное обновление и удаление.

Есть два уровня защиты. Учебная модель работает локально и доказывает устройство повторов, квот и прав. Настоящий пилот создаёт клиентский кластер в отдельном проекте OpenStack и проверяет его функции. Первый уровень полезен, но не заменяет второй.

Подготовь архитектуру и BOM (Bill of Materials — перечень компонентов и версий). Другой человек должен суметь повторить запуск по инструкции. Секреты передаются отдельно; в файлах проекта остаются только безопасные примеры и требования к доступу.

Приёмка
Проверка заранее определённых сценариев и условий.
Доказательство
Повторяемый результат с исходным состоянием и наблюдением.
Рубрика
Правила выставления баллов за подтверждённые свойства проекта.
Обязательный критерий
Условие, которое нельзя компенсировать баллами в других категориях.

По шагам

  1. Записали обещание: повтор create не создаёт дубликат.
  2. Воспроизвели потерю ответа и повторили тот же запрос.
  3. Сверили операцию и реальный инвентарь, затем приложили результат к рубрике.

2. Что демонстрировать кроме удачного запуска

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

После удаления сравни реальные машины, порты, адреса, балансировщики и тома с исходным инвентарём. Сохранённый диск допустим только по описанной политике с владельцем, сроком и стоимостью. Не объявляй очистку по одной исчезнувшей строке портала.

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

3. Как честно выставить оценку

Рубрика даёт 30 баллов за жизненный цикл и API (Application Programming Interface — программный интерфейс), 25 за восстановление и надёжность, 20 за безопасность, 15 за наблюдаемость и 10 за стоимость и документацию.

Порог — 80 из 100, но есть обязательные условия: чужие объекты недоступны, секреты не раскрыты, восстановление доказано и остатки ресурсов учтены. Высокая сумма не компенсирует нарушение обязательного условия.

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

4. Что делать после защиты

Проведи демонстрацию на 15–20 минут: задача клиента, архитектура, живой путь, один отказ с восстановлением, стоимость и ограничения. Не скрывай то, что не проверялось: нагрузка, физические зоны отказа или круглосуточная эксплуатация.

SLO (Service Level Objective — целевое качество услуги) сначала подтверждается измерениями. SLA (Service Level Agreement — соглашение об уровне услуги) требует договорных обязательств и готовности сопровождать их. Учебная демонстрация сама по себе не подтверждает ни то ни другое.

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

практика · 18 часов вместе с теорией и тестом

Практика через терминал портала

  1. Выбери уровень демонстрации

    Открой терминал и создай закрытый каталог доказательств. В release.md явно напиши: локальная модель или реальный OpenStack-пилот.

    umask 077
    mkdir -p ~/kaas-learning/capstone/evidence
    cd ~/kaas-learning/capstone
    curl -fSLo rubric.md https://test.igorhome.ru/static/learning/capstone-rubric.md
    curl -fSLo acceptance.md https://test.igorhome.ru/static/learning/acceptance.md

    Что должно получиться. Есть рубрика и таблица сценариев с ещё незаполненными фактическими результатами.

    Если результат отличается

    Не проставляй «пройдено» заранее. Неподготовленный стенд записывается как блокер.

  2. Зафиксируй исходное состояние

    Запиши версии кода и компонентов, проект, владельцев и стартовый инвентарь. Для модели достаточно list; для облака нужны команды OpenStack из предыдущего модуля.

    date -Is
    kubectl version

    Что должно получиться. Доказательства имеют дату и исходные условия; секретные файлы не копируются в evidence.

    Если результат отличается

    Если работаешь с моделью, не добавляй вывод общего кластера как доказательство созданного клиентского.

  3. Пройди путь двух клиентов

    Для локального уровня используй alice и bob. Для реального уровня два проверенных клиента создают отдельные кластеры; каждый запускает приложение и том, затем меняет размер и проходит проверенное обновление.

    cd ~/kaas-learning/product
    python3 kaas_model.py selftest

    Что должно получиться. Локальные проверки перечислены отдельно от облачных. Для реального пилота сохранены идентификаторы операций и ресурсов.

    Если результат отличается

    Самопроверка модели не выдаёт доступ к настоящему кластеру и не подтверждает CSI (Container Storage Interface — интерфейс подключения хранилищ контейнеров).

  4. Проверь ошибки

    По таблице acceptance.md повтори запрос, конфликт параметров, чужой доступ, параллельную квоту и рестарт. В настоящем пилоте отдельно проверь временную недоступность облака.

    date -Is

    Что должно получиться. Каждый сценарий имеет наблюдение и ссылку на очищенные от секретов доказательства.

    Если результат отличается

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

  5. Докажи восстановление

    Используй отдельную копию и инструкцию модуля восстановления. Для настоящего пилота проверь возвращение управления уже созданными ресурсами.

    date -Is

    Что должно получиться. Есть измерение полного времени и сравнение владения ресурсами. Если восстановлен только файл модели, результат так и назван.

    Если результат отличается

    Отсутствие опыта восстановления оставляет обязательный критерий незавершённым.

  6. Заверши удаление

    Сравни инвентарь до и после удаления. Для облака учитывай не только машины. Зафиксируй намеренно сохранённые диски и срок их удаления.

    openstack server list
    openstack port list
    openstack volume list
    openstack floating ip list
    openstack loadbalancer list

    Что должно получиться. Нет необъяснённых остатков. Команды этого шага выполняются только при выбранном учебном OS_CLOUD.

    Если результат отличается

    Если облако пока не использовалось, напиши «не применимо для модели», а не «облако очищено».

  7. Заполни рубрику и защити

    Для каждого балла добавь доказательство. Пройди итоговый тест отдельно. Сравни результат с обязательными условиями.

    date -Is

    Что должно получиться. Есть краткая защита, заполненная рубрика и честный список незавершённого.

    Если результат отличается

    Не переносись автоматически на следующий уровень по зелёному тесту теории.

  8. Выбери следующий выпуск

    Составь три задачи с причиной, проверкой результата и примерной трудоёмкостью. При 6–8 часах в неделю оставляй время на повторение и устранение ошибок.

    date -Is

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

    Если результат отличается

    Если базовый цикл ещё не доказан, следующая задача — закончить его, а не добавлять новые компоненты.

Открыть терминал ↗ · Скачать файлы лаборатории →

Файлы и подготовка к этой работе

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

Отмечай только то, что проверил на указанном стенде. Эти галочки сохраняются в браузере. Для готовых упражнений зачёт выдаёт отдельная серверная проверка практикума; остальные задания подтверждай журналом и доказательствами. Учебная модель не заменяет реальный облачный опыт.

Что сохранить в портфолио

  • Журнал: исходное состояние → команда или действие → ожидаемый результат → фактическое наблюдение.
  • Доказательства по критериям ниже: очищенный от секретов вывод, схема или ссылка на проверенный коммит.
  • Отдельный список: что пока не запускалось, почему и какой стенд нужен для продолжения.
закрепление

Проверь понимание

8 вопросов по этому модулю. Проходной результат — 7 из 8. После ответа — объяснения и ссылки на разделы, к которым стоит вернуться.

Пройти тест модуля

Официальные источники

Чек-листы уроков, заметки к ним и результаты тестов хранятся в этом браузере; для переноса используй экспорт. Автоматические проверки и журнал практикума сохраняются отдельно на сервере.