Введение в курс 0:01 Приветствие и представление курса по практике инструментов. Обсуждение инструмента Cloudera и его применения в масштабных развертываниях. Cloudera может быть полезен для упрощения жизни и выполнения задач.
Проверка связи и представление преподавателя 0:59 Проверка связи и звука. Преподаватель рассказывает о своем опыте: разработчик, администратор, мобильная разработка. Участие в проектах и конференциях, стремление делиться опытом.
План урока 2:38 Обсуждение использования Cloudera и его сценариев. План урока: введение в Cloudera, эксперименты с обычной машиной и контейнерами, вопросы и ответы.
Введение в вебинар 3:46 Правила вебинара: задавать вопросы, обсуждать темы. Представление участников: стаж работы, опыт с Cloudera.
Введение в Otus 6:07 Otus как платформа для обмена опытом и создания курсов. Образовательная лицензия и возможность получения сертификатов. Участие преподавателей в различных проектах и конференциях.
Переход к обсуждению Cloudera 9:01 Опрос участников о знакомстве с Cloudera. Начало обсуждения Cloudera: что это, почему интересен, особенности и применение.
Технические накладки и продолжение 12:10 Технические накладки и переключение на мобильный интернет. Подготовка узла для работы в кластере: установка компонентов и конфигурирование.
История и развитие Cloudera 13:32 История проекта Cloudera, разработка Canonical. Сравнение с групповой политикой Microsoft и ответ на её решения.
Введение в Cloudinit 14:24 Cloudinit позволяет настраивать машины удаленно, даже после перезагрузки. Он может срабатывать при каждой перезагрузке, устанавливая пакеты и настраивая систему. Cloudinit запускается до сетевого стека, что позволяет задавать базовые настройки, такие как DNS и шлюз.
Преимущества Cloudinit 16:07 Cloudinit позволяет создавать кастомизированные образы, не сильно уходя от исходного состояния. Это особенно актуально для облачных сред, где важно поддерживать актуальность системы. Cloudinit заменяет необходимость пересобирать образы и доставлять их заново.
Установка и запуск Cloudinit 17:56 Cloudinit устанавливается как пакет и запускается как три сервиса: cloud, cloud-config и cloud-init. Cloud-init запускается до сети и донита, что позволяет настраивать систему до основной фазы. На первой фазе настраивается сеть, а на второй фазе устанавливаются пакеты и настраиваются репозитории.
Источники образов и тестирование 20:50 Cloudinit можно использовать с различными образами, включая Ubuntu и специализированные дистрибутивы. Тестирование будет проводиться на образе Ubuntu Server Cloudy64. Cloudinit позволяет запускать виртуальные машины без конфигурации, но с запущенным Cloudinit.
Метаданные и конфигурация 25:04 Метаданные содержат информацию о окружении, такую как имя и адрес машины. Конфигурация Cloudinit может поступать из разных источников, включая облако. Cloudinit работает на Python и имеет три фазы: cloud, cloud-config и cloud-init.
Эксперимент с метаданными 28:36 Метаданные позволяют узнать регион присутствия машины и другие важные параметры. Эксперимент покажет, как выглядят метаданные с точки зрения Cloudinit.
Проблемы с курсором и метаданными 29:17 Курсор исчезает и появляется. Подключение к облаку и анализ метаданных. Метаданные могут быть из разных источников и форматов.
Использование метаданных 30:01 Метаданные полезны для подключения к серверам данных. Метаданные можно использовать в скриптах и шаблонах. Метаданные содержат информацию о зоне доступности и ключах.
Клауд конфиг и модули 33:56 Клауд конфиг определяет общие правила и модули. Перечисление источников данных и их конфигурация. Модули запускаются на разных фазах, включая запуск системы и конфигурацию сети.
Конфигурация и скрипты 37:13 Конфигурация модулей и скрипты на разных стадиях. Возможность интеграции модулей и кастомной настройки. Использование системы управления и метрик.
Вендер дейта и юзер дейта 38:53 Вендер дейта и юзер дейта как части конфигурации. Конфигурация применяется при старте системы. Использование диска для хранения данных и конфигурации.
Создание и подключение данных 40:49 Создание диска с метаданными и юзер дейта. Использование YAML для конфигурации. Подключение данных через веб-сервер или Docker.
Работа с Docker и конфигурацией 42:48 Монтирование текущего каталога в Docker и запуск на порт. Использование утилиты klock для генерации локального дата-источника. Подключение дополнительного диска к машине и настройка модуля фай месседж.
Настройка и использование дата-источников 45:25 Подключение диска и использование информации от системы. Указание локального диска и его ремонт. Подмена серийного номера для изменения источника данных.
Проблемы с адресами и автодреад 48:03 Проблемы с адресами при использовании внешних источников. Использование автодреада для автоматического выделения адреса. Совместимость с различными облачными провайдерами.
Работа с пользовательскими данными 51:18 Использование колоды-конфигов для работы с пользовательскими данными. Извлечение метаданных из облака и их использование. Пример с системой и платформой для обновления.
Программная настройка и запуск через контейнеры 53:05 Использование Docker для запуска и настройки через контейнеры. Применение дополнительной конфигурации и использование метаданных. Запуск и проверка работы через Docker и анализ статуса выполнения.
Имплейт и лайф-кодинг 59:05 Имплейт генерирует описание на основе данных. Лайф-кодинг может быть непредсказуемым. Использование шаблонов в Python для создания отчетов и файлов.
Ограничения и использование метаданных 1:00:26 Ограничение на размер данных в 16 КБ. Возможность выполнения команд и использования метаданных. Использование райт-файлов для записи произвольных файлов.
Сценарии и хуки 1:01:25 Сценарии могут быть обычными скриптами. Хуки позволяют запускать сценарии при перезагрузке. Порт-хендлер для встраивания новых модулей.
Сборка и рендеринг 1:03:18 Механизм мейк для сборки проекта из нескольких частей. Возможность рендеринга юзер дейта для проверки. Использование мейк для сборки конфигурации из разных частей.
Проверка и валидация 1:07:36 Проверка валидности конфигурации с помощью схемы. Возможность указания дополнительных контингий. Использование дебаг для понимания ошибок.
Управление модулями 1:09:18 Возможность уточнения времени запуска модулей. Переопределение поведения модулей в зависимости от состояния. Практическое применение и создание собственных модулей.
Пример реализации модуля 1:11:22 Пример реализации модуля ран семь. Использование модуля дискрипшн для текстового описания. Возможность создания собственного модуля на основе существующих.
Конфигурация виртуальных машин 1:14:01 Обсуждение конфигурации виртуальных машин. Возможность определения метаданных машины. Создание учетной записи и регистрация ключа для доступа к машине.
Установка Docker 1:15:10 Обсуждение устаревания Docker и перехода на контейнеры. Установка Docker на виртуальную машину. Использование Cloudinit для установки Docker.
Использование Cloudinit 1:16:11 Установка Docker через Cloudinit. Использование утилиты tel для сборки контейнеров. Возможность запуска плейбуков через Cloudinit.
Установка Docker через команды 1:18:07 Запуск команд для установки Docker. Установка дополнительных пакетов для работы с Docker. Подготовка машины с Docker.
Проверка работы Docker 1:19:47 Проверка работы Docker после установки. Запуск машины и ожидание завершения установки. Неканоничность метода установки Docker.
Возможности модуля 1:20:32 Управление плейбуками и репозиториями. Настройка дисков и управление вентиляторами. Настройка языка и точек монтирования.
Дополнительные функции 1:23:11 Отправка данных и получение статистики. Возможность шаманизации и доступа к внутренним переменным. Проверка работы консоли после загрузки машины.
Проблемы с копипастой и диагностика 1:24:24 Проверка статуса и состояния системы. Проблемы с отображением данных и правами доступа. Диагностика и проверка целостности данных.
Логика и конфигурация 1:26:09 Важность диагностики и логики. Проблемы с перезапуском и конфигурацией. Необходимость изменения конфигурации для повторного запуска.
Управление репозиториями 1:29:13 Добавление репозиториев через apt. Перезагрузка машины и проверка изменений. Преимущества использования локальных данных вместо виртуальных.
Альтернативное решение 1:32:24 Использование модулей и переменных для установки. Создание сервисов и запуск контейнеров. Преимущества чистого и элегантного подхода.
Сетевая конфигурация 1:34:26 Логика сетевой конфигурации. Возможность задания сетевой конфигурации до запуска машины. Преимущества использования метаданных для настройки.
Обучение и содержание курса 1:37:39 Формат занятий и домашние задания. Записи вебинаров и их доступность. Содержание курса: DevOps, инфраструктура как код, микросервисы, отказоустойчивость.
Структура курса 1:39:49 Первый модуль: DevOps и терминология. Второй модуль: управление конфигурацией. Третий модуль: Docker и Kubernetes. Четвертый модуль: безопасность и сканирование уязвимостей. Пятый модуль: мониторинг и анализ логов.
Введение в терминологию и модули 1:41:28 Ранее существовали три разных проекта: опыт, метрикс, опен-рейсинг. Сейчас все объединено в один проект. Пятый модуль посвящен работе с губернатором, операторам, контроллерам и мониторингу. Проектная работа описана более детально.
Программа занятий 1:42:16 Можно посмотреть подробную программу занятий. В программе указано содержание каждого занятия.
Преподаватели и их опыт 1:42:51 Преподаватели имеют разный бэкграунд. Некоторые пришли из DevOps, другие из автоматизации или облаков. Биографии преподавателей можно найти на сайте.
Вакансии и зарплата 1:44:01 Вакансии в DevOps сложны и абстрактны. Средняя зарплата DevOps составляет около 190 тысяч рублей. Важны навыки работы с сетью, администрирования и решения задач.
Заключение и опрос 1:45:26 Просьба пройти опрос для улучшения занятий. Обсуждались вопросы работы в Kubernetes и подготовки машин. Анонс следующего открытого урока через две недели. Благодарность за участие и приглашение на следующие вебинары и курсы.