|
@@ -0,0 +1,261 @@
|
|
|
+1. Методолгия Devops и Agile. Их сходства и различия.
|
|
|
+DevOps объединяет две разрозненные команды (разработку и эксплуатацию), чтобы
|
|
|
+обеспечить быстрые выпуски программного обеспечения. Agile ориентирован на
|
|
|
+сотрудничество небольших команд друг с другом для быстрого реагирования на
|
|
|
+изменчивые потребности пользователей.
|
|
|
+Сходства и различия
|
|
|
+В Agile разработка завершается сразу после развертывания. В DevOps операции, которые
|
|
|
+происходят постоянно, например, мониторинг и модификации ПО;
|
|
|
+В Agile разные специалисты несут ответственность за разработку, тестирование и
|
|
|
+развертывание ПО. В DevOps за все эти процессы отвечают специально обученные
|
|
|
+инженеры;
|
|
|
+2. Жизненный цикл Devops.
|
|
|
+• Непрерывное развитие;
|
|
|
+• Непрерывная интеграция;
|
|
|
+• Непрерывное тестирование;
|
|
|
+• Непрерывное развертывание;
|
|
|
+• Непрерывный мониторинг;
|
|
|
+• Постоянная обратная связь.
|
|
|
+3. Интерфейс API. Типы API. REST API
|
|
|
+API — интерфейс прикладного программирования, набор четко
|
|
|
+
|
|
|
+сформулированных правил взаимодействия между различными программными модулями.
|
|
|
+Типы API
|
|
|
+Внутренние
|
|
|
+
|
|
|
+Партнерские
|
|
|
+
|
|
|
+Публичные
|
|
|
+
|
|
|
+REST API — это прикладной программный интерфейс (API), который использует HTTPзапросы для получения, извлечения, размещения и удаления данных.
|
|
|
+4. Принципы REST API
|
|
|
+•единый интерфейс;
|
|
|
+• разграничение клиента и сервера;
|
|
|
+• нет сохранения состояния;
|
|
|
+• кэширование всегда разрешено;
|
|
|
+• многоуровневая система;
|
|
|
+• код предоставляется по запросу.
|
|
|
+5. Протоколы HTTP и HTTPS.
|
|
|
+HTTP-Протокол передачи гипертекста по 80 порту
|
|
|
+HTTPS-Протокол передачи гипертекста с шифрованием, использует ssl сертификаты по
|
|
|
+443 порту
|
|
|
+6. SSL Сертификаты. Типы SSL сертификатов
|
|
|
+
|
|
|
+SSL сертификаты-криптографический протокол для безопасной связи
|
|
|
+Самоподписанные. Сертификат подписывается самим сервером.
|
|
|
+Подписанные доверенным центром сертификации
|
|
|
+
|
|
|
+7. Docker. Компоненты модуля Docker.
|
|
|
+Docker — это платформа контейнеризации, применяемая для разработки, доставки и
|
|
|
+выполнения контейнеров.
|
|
|
+Клиент Docker— это приложение командной
|
|
|
+строки
|
|
|
+
|
|
|
+Сервер Docker — это управляющая программа
|
|
|
+
|
|
|
+Docker Hub— это реестр контейнеров Docker
|
|
|
+8. Dockerfile. Инструкции Dockerfile
|
|
|
+Dockerfile — это текстовый файл с инструкциями, используемыми для сборки и запуска
|
|
|
+образа Docker.
|
|
|
+Инструкции Dockerfile
|
|
|
+FROM — задаёт базовый (родительский) образ.
|
|
|
+LABEL — описывает метаданные. Например — сведения о том, кто создал и поддерживает
|
|
|
+образ.
|
|
|
+ENV — устанавливает постоянные переменные среды.
|
|
|
+RUN — выполняет команду и создаёт слой образа. Используется для установки в
|
|
|
+контейнер пакетов.
|
|
|
+COPY — копирует в контейнер файлы и папки.
|
|
|
+ADD — копирует файлы и папки в контейнер, может распаковывать локальные .tar-файлы.
|
|
|
+9. Git. Ключевые компоненты Git.
|
|
|
+Git — это быстрая, гибкая, высокомасштабируемая, бесплатная система управления
|
|
|
+версиями с открытым кодом.
|
|
|
+Каталог GIT: хранит базу данных объектов, в которой происходит клонирование в
|
|
|
+хранилище на другой удаленный компьютер.
|
|
|
+Рабочее дерево: файлы извлекаются из базы данных и помещаются на диск для внесения
|
|
|
+изменений.
|
|
|
+Промежуточная область: действует как индексная часть, которая направляет на
|
|
|
+следующий коммит.
|
|
|
+10. Клонирование и разветвление.
|
|
|
+Разветвления репозитория подразумевает создание копии репозитория в учетной записи
|
|
|
+GitHub.
|
|
|
+Клонирование репозитория — создание копии репозитория и его журнала на локальном
|
|
|
+компьютере.
|
|
|
+11. GitLab. Возможности GitLab
|
|
|
+GitLab — это инструмент для хранения и управления репозиториями
|
|
|
+
|
|
|
+Git.
|
|
|
+Он дает возможность выполнять совместную разработку силами нескольких команд,
|
|
|
+применять обновления кода и откатывать изменения, если это необходимо.
|
|
|
+12. Основные команды Git.
|
|
|
+git status-выводит состояние рабочего дерева
|
|
|
+
|
|
|
+git add-вы указываете Git, что нужно начать
|
|
|
+
|
|
|
+отслеживание изменений в определенных файлах.
|
|
|
+git commit-сохранение результатов работы
|
|
|
+
|
|
|
+git log-просматриваем сведения о
|
|
|
+
|
|
|
+предыдущих фиксациях.
|
|
|
+13. CI/CD. Этапы CI/CD
|
|
|
+CI/CD (Continuous Integration, Continuous Delivery — непрерывная интеграция и доставка)
|
|
|
+Непрерывное развертывание
|
|
|
+
|
|
|
+Этапы
|
|
|
+Сборка
|
|
|
+
|
|
|
+Ручное тестирование.
|
|
|
+Релиз
|
|
|
+
|
|
|
+Развертывание
|
|
|
+
|
|
|
+Поддержка и мониторинг.
|
|
|
+Планирование
|
|
|
+
|
|
|
+14. Обновление служб (Последовательное, Сине-зелёное, ранний выпуск).
|
|
|
+В последовательном обновлении развертываются новые экземпляры службы, которые
|
|
|
+сразу же начинают получать запросы.
|
|
|
+При "сине-зеленом" развертывании новая версия развертывается параллельно с
|
|
|
+предыдущей версией.
|
|
|
+В раннем выпуске обновленная версия развертывается в небольшое количество клиентов.
|
|
|
+15. Kubernetes. Архитектура Kubernetes
|
|
|
+Kubernetes — это переносимая расширяемая платформа с открытым кодом для
|
|
|
+управления и оркестрации контейнерных рабочих нагрузок.
|
|
|
+Задаются задачи-переходит в уровень управления-узел(место управления выполнения
|
|
|
+вычислительных рабочих нагрузок)-получаем результаты, так как было несколько узлов
|
|
|
+
|
|
|
+16. Кластер Kubernetes
|
|
|
+Кластер-состоит из набора машин, так называемых узлы, которые запускают
|
|
|
+контейнеризированные приложения. Кластер имеет как минимум один рабочий узел.
|
|
|
+17. Kubernetes. Уровень управления Kubernetes
|
|
|
+Kubernetes — это переносимая расширяемая платформа с открытым кодом для
|
|
|
+управления и оркестрации контейнерных рабочих нагрузок.
|
|
|
+уровень управления в кластере Kubernetes, запускает набор сервисов, управляющих
|
|
|
+функциональностью оркестрации в Kubernetes.
|
|
|
+18. Службы работающие на уровне управления Kubernetes.
|
|
|
+Сервер API
|
|
|
+Резервное хранилище
|
|
|
+
|
|
|
+Планировщик
|
|
|
+
|
|
|
+Диспетчер контроллеров
|
|
|
+
|
|
|
+Диспетчер облачных контроллеров
|
|
|
+
|
|
|
+19. Kubernetes. Узел Kubernetes.
|
|
|
+Kubernetes — это переносимая расширяемая платформа с открытым кодом для
|
|
|
+управления и оркестрации контейнерных рабочих нагрузок.
|
|
|
+узел(место управления выполнения вычислительных рабочих нагрузок)
|
|
|
+20. Службы, выполняемые в узле Kubernetes.
|
|
|
+kubelet-это агент, который выполняется на каждом узле в кластере
|
|
|
+
|
|
|
+kube-proxy-отвечает за локальную сеть кластера и выполняется на каждом узле.
|
|
|
+Среда выполнения контейнера-это базовое программное обеспечение, которое выполняет
|
|
|
+контейнеры в кластере Kubernetes.
|
|
|
+21. Модули POD Kubernetes. Жизненный цикл модуля POD
|
|
|
+Pod
|
|
|
+Контроллер
|
|
|
+Веб-сайт
|
|
|
+
|
|
|
+Сначала вы отправляете файл YAML с манифестом модуля pod в кластер.
|
|
|
+После отправки и сохранения файла манифеста в кластере он определяет желаемое
|
|
|
+состояние модуля pod.
|
|
|
+Планировщик планирует модуль pod на работоспособном узле, который имеет
|
|
|
+достаточное количество ресурсов для запуска модуля.
|
|
|
+22. Варианты развёртывания модуей POD.
|
|
|
+• Шаблоны модулей pod
|
|
|
+• Контроллеры репликации
|
|
|
+
|
|
|
+• Наборы реплик
|
|
|
+
|
|
|
+• Развертывания
|
|
|
+
|
|
|
+23. Службы Kubernetes. Хранилище Kubernetes.
|
|
|
+Служба — это объект Kubernetes, который обеспечивает стабильное
|
|
|
+
|
|
|
+сетевое подключение для модулей pod. Служба Kubernetes используется для обеспечения
|
|
|
+обмена данными между узлами.
|
|
|
+Время существования тома Kubernetes задается и соответствует времени существования
|
|
|
+модуля pod. Это сопоставление значений времени существования означает, что том будет
|
|
|
+существовать дольше, чем контейнеры, выполняющиеся в модуле pod. Если модуль pod
|
|
|
+удаляется, том также будет удален.
|
|
|
+24. Основные сущности Kubernetes.
|
|
|
+Node (master и slave)
|
|
|
+Namespace
|
|
|
+Pod
|
|
|
+ReplicaSet
|
|
|
+Deployment
|
|
|
+StatefulSet
|
|
|
+DaemonSet
|
|
|
+Label и Selector
|
|
|
+Service
|
|
|
+25. Интерфейс API. Основные категории API
|
|
|
+API — интерфейс прикладного программирования
|
|
|
+
|
|
|
+Категории API
|
|
|
+Для работы с документами.
|
|
|
+Для работы с графическими данными, видео или аудио.
|
|
|
+Для принятия данных с сервера.
|
|
|
+Для считывания данных с устройств.
|
|
|
+Для хранения информации у пользователя.
|
|
|
+26. Способы вызова API.
|
|
|
+Напрямую-Это способ, при котором пользователь целенаправленно работает с API и ее
|
|
|
+функционалом.
|
|
|
+Косвенный-Каждый пользователь, открывая программу, работает с API.
|
|
|
+27. Docker. Создание образов. Тег Образа
|
|
|
+
|
|
|
+Docker — это платформа контейнеризации, применяемая для разработки, доставки и
|
|
|
+выполнения контейнеров.
|
|
|
+Для создания образов Docker используется Unionfs. Unionfs — это файловая система,
|
|
|
+позволяющая объединять в стек несколько каталогов, называемых ветвями.
|
|
|
+Тег образа- указывается версия в нем.
|
|
|
+28. Конфигурация сети для контейнера Docker.
|
|
|
+Конфигурация сети Docker по умолчанию обеспечивает изоляцию
|
|
|
+
|
|
|
+контейнеров в узле Docker.
|
|
|
+3 предварительно настроенных сети:
|
|
|
+• Мост
|
|
|
+
|
|
|
+• Узел
|
|
|
+
|
|
|
+• нет
|
|
|
+
|
|
|
+29. Git. Ключевые компоненты Git.
|
|
|
+Git — это быстрая, гибкая, высокомасштабируемая, бесплатная система управления
|
|
|
+версиями с открытым кодом.
|
|
|
+Каталог GIT: хранит базу данных объектов, в которой происходит клонирование в
|
|
|
+хранилище на другой удаленный компьютер.
|
|
|
+Рабочее дерево: файлы извлекаются из базы данных и помещаются на диск для внесения
|
|
|
+изменений.
|
|
|
+Промежуточная область: действует как индексная часть, которая направляет на
|
|
|
+следующий коммит.
|
|
|
+30. Основные команды Git.
|
|
|
+git status- выводит
|
|
|
+
|
|
|
+состояние рабочего дерева
|
|
|
+
|
|
|
+git add- вы указываете Git, что нужно начать
|
|
|
+
|
|
|
+отслеживание изменений в определенных файлах.
|
|
|
+git commit-сохранение результатов работы
|
|
|
+
|
|
|
+git log-можно просматривать сведения о
|
|
|
+
|
|
|
+предыдущих фиксациях.
|
|
|
+31. HTTP Методы. Клиент серверная инфраструктура.
|
|
|
+Методы HTTP состоят из запросов:
|
|
|
+GET;
|
|
|
+POST;
|
|
|
+PUT;
|
|
|
+DELETE.
|
|
|
+Модуль Docker состоит из нескольких компонентов, реализующих клиент-серверную
|
|
|
+архитектуру, при которой клиент и сервер работают на одном узле.
|
|
|
+32. Функции управляемые с HTTP.
|
|
|
+Кеш
|
|
|
+
|
|
|
+Ослабление ограничений источника
|
|
|
+
|
|
|
+Аутентификация
|
|
|
+
|
|
|
+Прокси и туннелирование.
|
|
|
+Сессии
|