Микросервисы и контейнеры Docker

This document was uploaded by one of our users. The uploader already confirmed that they had the permission to publish it. If you are author/publisher or own the copyright of this documents, please report to us by using this DMCA report form.

Simply click on the Download Book button.

Yes, Book downloads on Ebookily are 100% Free.

Sometimes the book is free on Amazon As well, so go ahead and hit "Search on Amazon"

В данной книге анализируется два самых горячих направления развития информационных технологий: микросервисы и контейнеры Docker. Вместе они способны обеспечить беспрецедентную гибкость в разработке и развертывании приложений, а также в их масштабировании. Это особенно важно для больших и сложных проектов, где скорость разработки имеет решающее значение, а небольшие ошибки могут иметь катастрофические последствия. Вы узнаете, как использовать микросервисы и Docker для создания модульной архитектуры, увеличения производительности и надежности приложений, уменьшения времени до выхода на рынок, повторного использования кода и экспоненциального повышения эффективности в DevOps. В книге описаны подробные рекомендации и полный план ухода от монолитной архитектуры, а также детальное исследование процесса миграции на примере системы корпоративного класса, разбитой на множество микросервисов. Издание рекомендовано архитекторам и разработчикам ПО, а также будет полезно руководителям, стремящимся уйти от устаревших подходов и максимизировать успех своего бизнеса.

Author(s): Парминдер Сингх Кочер ; пер. с англ. А. Н. Киселева
Publisher: ДМК Пресс
Year: 2019

Language: Russian
Pages: 239 с.
City: Москва

Микросервисы и контейнеры Docker_обложка
Микросервисы и контейнеры Docker_макет.pdf
Введение
Благодарности
Об авторе
Микрослужбы
Введение в микрослужбы
Что такое «микрослужба»?
Модульная архитектура
Другие преимущества микрослужб
Недостатки микрослужб
Переход к микрослужбам
Предпосылки и условия
Кривая обучения в организации
Аргументация перехода к микрослужбам
Составляющие затрат
Межпроцессные взаимодействия
Типы взаимодействий
Подготовка к разработке веб-служб
Сопровождение микрослужб
Обнаружение службы
API-шлюз
Реестр служб
Объединяем все вместе
Миграция и реализация микрослужб
Что необходимо для миграции
Создание нового приложения на основе микрослужб
Готовность организации
Подход на основе служб
Межпроцессные (между службами) взаимодействия
Выбор технологий
Реализация
Развертывание
Эксплуатация
Переход от монолитной архитектуры к архитектуре микрослужб
Критерии выделения микрослужб
Реорганизация служб
Гибридный подход
Контейнеры
Контейнеры Docker
Виртуальные машины
Контейнеры
Архитектура и компоненты Docker
Docker: простой пример
Установка Docker
Установка Docker в Mac OS X
Установка Docker в Windows
Установка Docker в Ubuntu Linux
Интерфейс Docker
Основные команды Docker
docker search
docker pull
docker images
docker rmi
docker run
docker ps
docker logs
docker restart
docker attach
docker rm
docker inspect
docker exec
docker rename
docker cp
docker pause/unpause
docker create
docker commit
docker diff
Dockerfile
Dockerfile для MySQL
Компоновщик Docker Compose
Поддержка сети в контейнерах
Ключевые понятия Linux
Прямое соединение
Варианты подключения к сети по умолчанию
none
host
bridge
Нестандартная организация сети
Нестандартный драйвер сетевого моста
Драйвер оверлейной сети
Базовый сетевой драйвер MACVLAN
Организация контейнеров
Kubernetes
Kubectl
Ведущий узел
Рабочие узлы
Пример: кластер Kubernetes
Apache Mesos и Marathon
Ведущий узел Mesos
Агенты
Фреймворки
Пример: Фреймворк Marathon
Docker Swarm
Узлы
Службы
Задание
Пример: кластер Swarm
Обнаружение служб
Реестр служб
Управление контейнерами
Мониторинг
Журналирование
Сбор параметров
docker stats
Конечные точки API
cAdvisor
Инструменты мониторинга кластеров
Heapster
Prometheus
Шаг 1: запуск Prometheus
Шаг 2: добавление узла экспортера и cAdvisor
Шаг 3: добавление целей
Шаг 4: настройка пользовательского интерфейса Grafana
Шаг 5: просмотр статистики
Шаг 6: интеграция Alertmanager
Практический проект – применение теории на практике
Практический пример: монолитное приложение Helpdesk
Обзор приложения Helpdesk
Архитектура приложения
Аутентификация, интерцептор и авторизация
Управление учетными записями
Претензии
Каталог продуктов
Консультации
Доска объявлений
Поиск
Сборка приложения
Настройка Eclipse
Компиляция приложения
Развертывание и настройка
Новые требования и исправление ошибок
Практический пример: миграция на архитектуру микрослужб
Планирование миграции
Оценка критериев выделения микрослужб
Выводы о миграции
Влияние на архитектуру
Преобразование в микрослужбы
Каталог продуктов
Служба поддержки претензий
Поиск
Сборка и развертывание приложения
Настройка кода
Сборка микрослужб
Развертывание и настройка
Новые требования и исправления ошибок
Практический пример: контейнеризация приложения Helpdesk
Контейнеризация микрослужб
Список зависимостей
Сборка двоичных и WAR-файлов
Создание образа Docker
Сборка образа Docker
Настройка кластера DC/OS в AWS
Развертывание микрослужбы каталога
Отправка задания в Marathon
Проверка и масштабирование службы
Обращение к службе
Изменение монолитного приложения
Заключение
Принцип работы приложения Helpdesk
Порядок работы администратора
Вход
Администрирование и поддерживаемые продукты
Порядок работы клиента
Мои продукты
Создание претензии
Просмотр претензий
Доска объявлений
Запись на консультацию
Поиск
Мой профиль
Порядок работы инженера службы поддержки
Просмотр всех претензий
Обзор конкретной претензии
Установка механизма поиска Solr
Требования
Установка
Настройка импорта данных в Solr
Предметный указатель