OpenStack. Практическое знакомство с облачной операционной системой
Покупка
Новинка
Тематика:
Другие операционные системы
Издательство:
ДМК Пресс
Год издания: 2018
Кол-во страниц: 306
Дополнительно
Вид издания:
Практическое пособие
Уровень образования:
Профессиональное образование
ISBN: 978-5-97060-652-0
Артикул: 833970.01.99
Книга знакомит читателя с основными сервисами облачной операционной системы OpenStack на начало 2018 года (версия Queens). Рассмотрены вопросы интеграции OpenStack и системы работы с контейнерами Docker, программно-определяемой системы хранения данных Ceph, настройки производительности и высокой доступности сервисов. В четвертое издание добавлен материал по работе с сетью, настройками производительности и отказоустойчивости. В связи с переходом на сервис Gnocchi переработана глава, посвященная сервису телеметрии. Издание рассчитано на ИТ-специалистов (системных и сетевых администраторов, а также администраторов систем хранения данных), желающих познакомиться с де-факто стандартом в области открытых продуктов построения облачной инфраструктуры типа IaaS - OpenStack.
- Полная коллекция по информатике и вычислительной технике
- ДМК Пресс. Информационные системы и технологии
- ДМК Пресс. ИТ-технологии для профессионалов
- Интермедиатор. Информационные системы и технологии (сводная)
- Интермедиатор. ИТ-технологии для профессионалов (сводная)
- Операционные системы и программы-оболочки
Тематика:
ББК:
УДК:
ОКСО:
- ВО - Бакалавриат
- 09.03.01: Информатика и вычислительная техника
- 09.03.02: Информационные системы и технологии
- 09.03.03: Прикладная информатика
- 09.03.04: Программная инженерия
ГРНТИ:
Скопировать запись
Фрагмент текстового слоя документа размещен для индексирующих роботов
Маркелов А. А. OpenStack. Практическое знакомство с облачной операционной системой Четвертое издание, дополненное и исправленное Москва, 2018
УДК 004.738.5:004.451.9OpenStack ББК 32.971.3 М25 М25 Маркелов А. А. OpenStack. Практическое знакомство с облачной операционной системой / 4-е изд., доп. и исправ. – М.: ДМК Пресс, 2018. – 306 с.: ил. ISBN 978-5-97060-652-0 Книга знакомит читателя с основными сервисами облачной операционной системы OpenStack на начало 2018 года (версия Queens). Рассмотрены вопросы интеграции OpenStack и системы работы с контейнерами Docker, программно-определяемой системы хранения данных Ceph, настройки производительности и высокой доступности сервисов. В четвертое издание добавлен материал по работе с сетью, настройками производительности и отказоустойчивости. В связи с переходом на сервис Gnocchi переработана глава, посвященная сервису телеметрии. Издание рассчитано на ИТ-специалистов (системных и сетевых администраторов, а также администраторов систем хранения данных), желающих познакомиться с де-факто стандартом в области открытых продуктов построения облачной инфраструктуры типа IaaS – OpenStack. УДК 004.738.5:004.451.9OpenStack ББК 32.972.53 Все права защищены. Любая часть этой книги не может быть воспроизведена в какой бы то ни было форме и какими бы то ни было средствами без письменного разрешения владельцев авторских прав. Материал, изложенный в данной книге, многократно проверен. Но, поскольку вероятность технических ошибок все равно существует, издательство не может гарантировать абсолютную точность и правильность приводимых сведений. В связи с этим издательство не несет ответственности за возможные ошибки, связанные с использованием книги. © Маркелов А. А., 2018. ISBN 978-5-97060-652-0 © Оформление, издание, ДМК Пресс, 2018
Оглавление Предисловие .................................................................................................... 7 Благодарности .................................................................................................................7 Об авторе ...........................................................................................................................7 Рецензенты ...................................................................................................................... 8 Предполагаемая аудитория ...................................................................................... 8 О чем эта книга .............................................................................................................. 9 Что нового во втором, третьем и четвертом изданиях? ..............................12 Что вам необходимо помимо книги ....................................................................13 Глава 1. Введение в OpenStack ...................................................................15 Что такое облачная инфраструктура? .................................................................15 Что такое облачные приложения?........................................................................17 История OpenStack .....................................................................................................18 Архитектура OpenStack .............................................................................................20 Гипервизор KVM и эмулятор QEMU .....................................................................23 Дистрибутивы OpenStack .........................................................................................25 Глава 2. Настройка лабораторного окружения OpenStack ....................29 Подготовка CentOS 7 к использованию дистрибутива OpenStack RDO ....35 Отличия RDO от «Upstream» ...................................................................................39 Как установить OpenStack RDO одной командой? ........................................39 Как установить OpenStack одной командой из исходных кодов? ..........43 Как определить, какую версию OpenStack я использую? ..........................45 Установка и настройка брокера сообщений ....................................................46 Установка и настройка базы данных ...................................................................50 Переход на использование утилиты OpenStackClient .................................51 Глава 3. Сервис идентификации Keystone ................................................53 Терминология Keystone.............................................................................................53 Установка и настройка Keystone ...........................................................................54 Работа с пользователями, ролями и проектами в Keystone ......................61 Глава 4. Сервис хранения образов Glance ................................................71 Установка и настройка сервиса Glance ..............................................................73 Подготовка образов виртуальных машин .........................................................78 Работаем с образами виртуальных машин ......................................................83
Оглавление Глава 5. Сервис блочного хранилища Cinder ...........................................87 Архитектура Cinder .....................................................................................................87 Настройка сервисов Cinder .....................................................................................89 Создание и удаление томов Cinder ......................................................................95 Глава 6. Объектное хранилище Swift ........................................................98 Архитектура Swift ........................................................................................................99 Подготовка дополнительных серверов лабораторного окружения .... 101 Установка сервиса Swift-proxy ............................................................................ 103 Установка узлов хранения Swift ........................................................................ 104 Создание сервисных колец Swift ....................................................................... 108 Завершение настройки .......................................................................................... 110 Работа с сервисом Swift ........................................................................................ 111 Настройка Swift в качестве хранилища для Glance ................................... 113 Рекомендации по поиску неисправностей в сервисах Swift ................. 115 Глава 7. Контроллер и вычислительный узел Nova ...............................117 Архитектура Nova ......................................................................................................117 Установка контроллера Nova............................................................................... 118 Установка вычислительных узлов Nova ...........................................................127 Глава 8. Службы сети Neutron .................................................................. 132 Архитектура Neutron ............................................................................................... 132 Работа Neutron при создании экземпляра виртуальной машины ....... 136 Установка узла управления Neutron ................................................................ 136 Установка сетевого узла Neutron ....................................................................... 144 Установка вычислительного узла Neutron ..................................................... 148 Глава 9. Работа с виртуальными машинами из командной строки ... 152 Сеть в OpenStack ....................................................................................................... 152 Запускаем экземпляр виртуальной машины .................................................157 Добавляем к экземпляру виртуальной машины сеть ................................ 168 Моментальные снимки и резервные копии .................................................. 173 Шифрование томов Cinder ....................................................................................177 Квоты на ресурсы ..................................................................................................... 178 Зоны доступности и агрегирование вычислительных узлов в Nova ... 180 Зоны доступности в Cinder ................................................................................... 184 Живая миграция виртуальных машин ............................................................. 185 Настройка экземпляров виртуальных машин при помощи cloud-init ...................................................................................................................... 189
Оглавление 5 Глава 10. За фасадом Neutron ................................................................. 192 Виртуальный коммутатор Open vSwitch ......................................................... 192 Группы безопасности .............................................................................................. 201 Утилита для визуализации сети plotnetcfg .................................................... 203 Зеркалирование трафика на Open vSwitch для мониторинга сети в OpenStack ....................................................................................................... 204 Балансировщик нагрузки как сервис (LBaaS) ............................................... 208 Глава 11. Веб-панель управления Horizon и работа пользователя из графического интерфейса ................................................................... 211 Установка веб-интерфейса ................................................................................... 211 Работа с OpenStack в интерфейсе Horizon .................................................... 214 Глава 12. Сервис сбора телеметрии ........................................................ 221 Установка служб Gnocchi и Ceilometr управляющего узла ..................... 223 Установка службы триггеров Aodh .................................................................... 228 Установка служб вычислительного узла для отправки сообщений телеметрии .................................................................................................................. 231 Интеграция с сервисами Glance и Cinder ....................................................... 232 Работа со службой телеметрии в современных версиях OpenStack .. 233 Работа со службой телеметрии Ceilometer в версиях Newton и ранее ....238 Глава 13. Сервис оркестрации Heat ........................................................ 243 Архитектура сервиса ............................................................................................... 244 Установка сервисов Heat ....................................................................................... 244 Запуск простого стека............................................................................................. 248 Глава 14. Контейнеры и OpenStack ......................................................... 254 Краткое знакомство с Docker .............................................................................. 254 Совместное использование Docker и OpenStack ........................................ 255 Настройка работы драйвера Docker для OpenStack Nova .......................257 Глава 15. Программно-определяемая система хранения данных Ceph ............................................................................................... 263 Архитектура Ceph ..................................................................................................... 265 Быстрая установка кластера Ceph при помощи ceph-deploy ................. 270 Установка кластера ceph вручную ..................................................................... 274 Интеграция Ceph с сервисами OpenStack ...................................................... 279 Глава 16. Отказоустойчивость и производительность OpenStack ......287 Обзор способов обеспечения высокой доступности сервисов облака ....287 Выделение вычислительных ресурсов ............................................................ 290
Оглавление Выделение оперативной памяти ....................................................................... 291 Повышение производительности виртуальных машин ............................ 293 Повышение производительности сети ............................................................ 298 Определение аппаратных требований к оборудованию......................... 299 Заключение ................................................................................................. 300 Приложение 1. Пример правил брандмауэра, реализующих группы безопасности на вычислительном узле ................................... 301 Приложение 2. Листинг шаблона Heat ................................................... 304 Запуск одной виртуальной машины – test-server.yml ............................... 304 Приложение 3. Список основных используемых службами OpenStack сетевых портов ............................................................................305
Предисловие Благодарности В первую очередь я хочу поблагодарить мою жену Лену за терпение и поддержку, проявленные во время написания этой книги и доработки текста для новых изданий. Также хотелось бы поблагодарить рецензентов этой книги – Антона Арапова и Артемия Кропачева, благодаря ценным замечаниям которых данная книга стала значительно лучше и избавилась от многих неточностей и опечаток. Автор приносит благодарность читателям предыдущих изданий, приславшим свои замечания и исправления: Александру Румянцеву, Владимиру Манькову, Владимиру Белых, Илье Дорохову, Олегу Бабкину, Ильназу Тарханову и Евгению Дос. Об авторе Андрей Маркелов имеет более чем десятилетний опыт преподавания как авторских курсов, так и авторизированных курсов по ИТтехнологиям таких компаний, как Red Hat и Microsoft. В настоящее время автор работает в качестве старшего менеджера по архитектуре компании Ericsson, специализируясь на облачных технологиях и инфраструктуре виртуализации сетевых функций (NFV-I). До этого работал в качестве старшего системного архитектора в компании Red Hat, а также в крупных системных интеграторах России, получив более чем десятилетний опыт продаж, проектирования и внедрения сетевых и инфраструктурных решений. Около шестидесяти публикаций в отечественных ИТ-журналах («Системный администратор», «Linux Format», «PC Week» и др.). Кроме того, является автором книги «Certified OpenStack Administrator Study Guide», вышедшей в 2016 году в издательстве Apress. Андрей является сертифицированным архитектором Red Hat (RHCA Level XI) с 2009 года и имеет сертификаты Red Hat в таких технологиях, как OpenStack, OpenShift, RHV, CloudForms, Ansible, Cloud Storage, настройка производительности, безопасности Linux-систем и др.
Предисловие Кроме того, автор имеет сертификаты Microsoft Certified System Engineer, Sun Certified System Administrator, Novell Certified Linux Professional, Linux Professional Institute Certification (LPIC-1), Mirantis Certified OpenStack Administrator, OpenStack Foundation Certified OpenStack Administrator и Cisco Certified Network Associate. Блог автора располагается по адресу http://markelov.blogspot.ru/. Его twitter-аккаунт: @amarkelov. Рецензенты Антон Арапов – руководит командой, ответственной за развитие инфраструктурных проектов в компании Acision. Помогает клиентам полностью раскрыть потенциал мобильных каналов передачи данных, а также является ответственным за эволюционное развитие сервисов в сетях LTE 4G и проекты, способствующие ускорению возврата инвестиций. Сегодня технологии виртуализации выступают основным средством для достижения поставленных целей. До Acision Антон руководил группой разработки виртуализации в ядре Linux в компании Red Hat. Антон является экспертом в технологиях виртуализации и их применении. Артемий Кропачев – DevOps-архитектор в компании Bell Integrator. Артемий занимается проектированием и внедрением облачных решений и систем автоматизации инфраструктуры и процессов разработки и тестирования (DevOps), построенных на базе Linux, AWS, OpenStack, OpenShift, Chef и т. п. Артемий – сертифицированный архитектор Red Hat (RHCA Level XII) по направлениям Datacenter, Cloud и DevOps. До Bell Integrator работал системным архитектором в ICL Services. Предполагаемая аудитория Данная книга рассчитана на ИТ-специалистов (системных и сетевых администраторов, а также администраторов систем хранения данных), желающих познакомиться с де-факто стандартом в области открытых продуктов построения облачной инфраструктуры типа IaaS – OpenStack. По аналогии с минимальными требованиями программного обеспечения к среде выполнения эта книга также предъявляет минимальные требования к читателю.
О чем эта книга 9 В первую очередь это желание разобраться с описываемым продуктом. Садясь за рукопись, я старался сделать книгу как можно более ориентированной на практическую работу. Лучше всего усваивается материал, который вы отработали собственными руками в лабораторном окружении. Единственной чисто теоретической главой в книге является первая, посвященная архитекту- ре продукта. Все остальные главы включают в себя обязательные практические упражнения. Отсюда следует, что, прежде чем приступать к изучению продукта, написанного в первую очередь под Linux и для Linux, вам необходимы навыки работы с операционной системой. Умение работать в командной строке и знание базовых команд обязательны. Также важными будут умение самостоятельно решать задачи и навык решения проблем – один из основных навыков хорошего ИТ-специалиста-практика. Автор сознательно старался сделать изложение большей части материала никак не привязанной к конкретным версиям операционной системы и дистрибутива OpenStack. Но почти наверняка к тому моменту, как книга доберется до вас, выйдет следующая версия OpenStack, и вы, естественно, захотите воспроизвести упражнения на актуальной версии. Также небольшие детали могут отличаться в зависимости от вашего любимого дистрибутива GNU/Linux, версии и дистрибутива OpenStack. В первую очередь это расположение конфигурационных файлов, особенности организации репозиториев с пакетами, названия пакетов и т. п. Ну и, естественно, от ошибок и опечаток никто не застрахован, включая вашего покорного слугу. О чем эта книга Книга состоит из шестнадцати глав и знакомит читателя с основными сервисами облачной операционной системы OpenStack. Кроме того, рассмотрены вопросы интеграции OpenStack и системы работы с контейнерами Docker, программно-определяемой системы хранения данных Ceph, настройки производительности и высокой доступности сервисов. Глава 1. Введение в OpenStack Первая глава вводит читателя в предметную область облачных вычислений. Дается представление об облачных, горизонтально масштабируемых приложениях, их отличи
Предисловие ях от вертикально масштабируемых, традиционных приложений. Рассказывается об истории создания OpenStack, его основных компонентах и основных дистрибутивах, присутствующих в настоящий момент на рынке. Глава 2. Настройка лабораторного окружения OpenStack В данной главе рассказывается о подготовке виртуальных машин тестового окружения к установке компонентов OpenStack. Рассматриваются рекомендуемые настройки сети дистрибутива GNU/Linux CentOS 7, подключение репозиториев OpenStack RDO, установка и настройка требуемых для OpenStack компонентов. Глава 3. Сервис идентификации Keystone В этой главе обсуждаются концепции и терминология сервиса идентификации OpenStack, а также читатель знакомится с Keystone на практике. Читатель установит и настроит ключевой сервис облачной операционной системы и заложит фундамент для настройки остальных служб. Глава 4. Сервис хранения образов Glance Четвертая глава посвящена настройке каталога образов виртуальных машин. Читатель познакомится с концепциями и настройкой сервиса Glance. К концу отработки материала главы в лабораторном окружении должен появиться каталог образов с загруженным шаблоном для создания виртуальных машин. Глава 5. Сервис блочного хранилища Cinder В данной главе читатель познакомится с тем, как создать блочное хранилище, которое будут использовать запущенные экземпляры виртуальных машин. Настройка этого опционального сервиса позволит виртуальным машинам сохранять данные между перезагрузками. Глава 6. Объектное хранилище Swift В главе рассматриваются настройка и работа с одним из двух исторически первых сервисов OpenStack – объектным хранилищем Swift. Рассматриваются концепции и архитектура сервиса, а также его установка и настройка. Глава 7. Контроллер и вычислительный узел Nova В данной главе рассматриваются установка одного из самых важных сервисов OpenStack, непосредственно зани