Книжная полка Сохранить
Размер шрифта:
А
А
А
|  Шрифт:
Arial
Times
|  Интервал:
Стандартный
Средний
Большой
|  Цвет сайта:
Ц
Ц
Ц
Ц
Ц

OpenStack. Практическое знакомство с облачной операционной системой

Покупка
Новинка
Артикул: 833970.01.99
Доступ онлайн
559 ₽
В корзину
Книга знакомит читателя с основными сервисами облачной операционной системы OpenStack на начало 2018 года (версия Queens). Рассмотрены вопросы интеграции OpenStack и системы работы с контейнерами Docker, программно-определяемой системы хранения данных Ceph, настройки производительности и высокой доступности сервисов. В четвертое издание добавлен материал по работе с сетью, настройками производительности и отказоустойчивости. В связи с переходом на сервис Gnocchi переработана глава, посвященная сервису телеметрии. Издание рассчитано на ИТ-специалистов (системных и сетевых администраторов, а также администраторов систем хранения данных), желающих познакомиться с де-факто стандартом в области открытых продуктов построения облачной инфраструктуры типа IaaS - OpenStack.
Маркелов, А. А. OpenStack. Практическое знакомство с облачной операционной системой : практическое руководство / А. А. Маркелов. - 4-е изд., доп. и исправ. - Москва : ДМК Пресс, 2018. - 306 с. - ISBN 978-5-97060-652-0. - Текст : электронный. - URL: https://znanium.ru/catalog/product/2155892 (дата обращения: 18.05.2024). – Режим доступа: по подписке.
Фрагмент текстового слоя документа размещен для индексирующих роботов. Для полноценной работы с документом, пожалуйста, перейдите в ридер.
Маркелов А. А.

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, непосредственно зани-
О чем эта книга  11

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

Глава 8. Службы сети Neutron
 
В главе, посвященной сетевым службам, рассматриваются 
концепции программно-определяемой сети. Читатель познакомится 
с вариантами организации сетевого взаимодействия 
в облаке и настроит на сетевом и  вычислительном 
узле сервис Neutron.

Глава 9. Работа с виртуальными машинами из командной 
строки

 
К девятой главе читатель построит свое минимальное лабораторное 
окружение OpenStack. В этой главе мы рассмотрим, 
как на практике работать с сетями и виртуальными 
машинами.

Глава 10. За фасадом Neutron
 
В этой главе кратко рассматриваются «внутренности» сетевого 
сервиса OpenStack, а также такие темы, как группы 
безопас ности и виртуальный коммутатор Open vSwitch.

Глава 11.  Веб-панель управления Horizon и работа пользователя 
из графического интерфейса

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

Глава 12. Сервис мониторинга Ceilometer
 
Сервис Ceilometer представляет собой централизованный 
источник информации по метрикам облака и данным мониторинга. 
Этот компонент обеспечивает возможность бил-
линга для OpenStack. В данной главе читатель познакомится 
с настройкой Ceilometer и тем, как снимать и использовать 
данные телеметрии OpenStack.

Глава 13. Сервис оркестрации Heat
 
В этой главе рассказывается о сервисе Heat – «кольце 
всевластия», призванном связать все компоненты облака 
OpenStack воедино. Читатель познакомится с шаблоном 
 Предисловие

формата HOT, при помощи которого Heat может создавать 
большинство типов ресурсов (виртуальные машины, тома, 
плавающие IP, пользователи, группы безопасности и т. д.) 
как единое целое, обеспечивая управление жизненным 
цик лом приложения в облачной инфраструктуре.

Глава 14. Контейнеры и OpenStack
 
В четырнадцатой главе мы кратко познакомимся с технологией 
контейнеров и тем, как она используется совместно с 
OpenStack.

Глава 15. Программно-определяемая система хранения данных 
Ceph

 
Рассматриваются установка и интеграция программной 
СХД Ceph, которая становится для OpenStack «выбором по 
умолчанию» во многих новых инсталляциях.

Глава 16. Отказоустойчивость и производительность OpenStack
 
В этой главе автор дает обзорный материал о том, какими 
методами обеспечивается высокая доступность сервисов 
OpenStack, и рассматривает вопросы настройки производительности.


Что нового во втором, третьем 
и четвертом изданиях?

Текст книги расширен и обновлен, чтобы соответствовать актуальным 
версиям рассматриваемых проектов и компонент OpenStack 
на начало 2018 года.
Ниже приведены некоторые изменения четвертого издания, 
по сравнению с третьим:

 
Обновлены главы, посвященные основным сервисам 
OpenStack, в соответствии с изменениями на начало 
2018 года (версия Queens).
 
Добавлен материал в главах, посвященных работе с сетью, 
настройками производительности и отказоустойчивости.
 
Переработана глава, посвященная сервису телеметрии, 
в связи с переходом на сервис Gnocchi.
 
Примеры большинства команд обновлены с использованием 
клиента командной строки openstack.
Что вам необходимо помимо книги  13

Изменения третьего издания, по сравнению со вторым:

 
Обновлены главы, посвященные основным сервисам 
OpenStack, в соответствии с изменениями на начало 
2017 года (версия Newton).
 
Переработана глава, посвященная сервису идентификации 
Keystone.
 
Расширены главы, посвященные сервису сети Neutron и 
порядку работы с виртуальными машинами из командной 
строки.
 
Значительно переработана глава, посвященная сервису 
телеметрии, в соответствии с тем, что сервис оповещения 
(Aodh) выделен в отдельный проект.

Изменения второго издания, по сравнению с первым:

 
Добавлена глава, посвященная программно-определяемой 
системе хранения данных Ceph и использованию Ceph совместно 
с OpenStack.
 
Расширен и переработан материал по работе с виртуальными 
машинами и сетью (агрегация узлов, зоны доступности, 
живая миграция, создание образов виртуальных машин, работа 
с сетью и многое другое). С целью лучшей структуризации 
материал разбит на две отдельные главы.
 
При описании настройки тестового окружения  разделены 
управляющий, сетевой и вычислительный узлы, что позволяет 
нагляднее познакомиться с типичными ролями серверов 
при развертывании OpenStack.
 
Значительно переработан материал по работе сети в 
OpenStack.
 
Вопросы производительности и отказоустойчивости сервисов 
OpenStack выделены в отдельную главу.
 
Добавлено более пятнадцати новых иллюстраций и снимков 
с экрана.

Что вам необходимо помимо книги

Поскольку книга называется «Практическое введение», автор подразумевает, 
что читатель будет не просто читать книгу, а, следуя 
 Предисловие

за изложением материала, воспроизводить представленные примеры 
в лабораторном окружении. Помимо самой книги, вам понадобится 
персональный компьютер с минимальным объемом 
оперативной памяти 8 Гб (желательно 16 Гб) и системой виртуа-
лизации по вашему выбору. Автор во время написания книги и 
тес тирования примеров использовал Ubuntu Linux с гипервизо-
ром KVM, но эта информация приведена лишь в качестве примера. 
Любая современная система виртуализации поддерживает GNU/
Linux – фундамент облака OpenStack. Конечно, никто не мешает 
использовать и физическое «железо».
Вам также потребуется доступ в Интернет для обращения к репозиториям 
с обновлениями и пакетами OpenStack, а также скачанный 
ISO-образ дистрибутива CentOS 7.
Доступ онлайн
559 ₽
В корзину