Изучаем сетевую среду OpenStack (Neutron)

Джеймс Дентон

Первая публикация на английском языке: октябрь 2014

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

При подготовке этой книги были предприняты все усилия чтобы гарантировать точность представленной информации. Тем не менее, информация, содержащаяся в этой книге, продается без гарантии в явном или неявном виде. Ни авторы, ни Packt Publishing, ни у их дилеры и дистрибьюторы не будут нести ответственность за любые убытки, вызванные или предположительно вызванные прямо или косвенно этой книгой.

Packt Publishing пыталась предоставить информацию о товарных знаках обо всех компаниях и продуктов, упомянутых в данной книге для надлежащего использования капиталов. Тем не менее, Packt Publishing не может гарантировать точность этой информации.

Перевод: ООО "Модуль- Проекты" ("Modue- Pojects" Ltd.)

2014-10-13

Аннотация

Проектирование архитектуры и построение сетевой инфраструктуры вашего облака с применением сетевой среды OpenStack Neutron.


 Состав исполнителей

Первого издания на английском языке
Автор
Джеймс Дентон
Рецензенты
Кевин Джексон
Джордж Армин Гарсиа Лопес
Джейкоб Уолкик
Редактор выпуска
Картикей Пандей
Редактор
Ричард Харвей
Редактор разработки содержания
Сусмита Панда
Технический редактор
Шини Пуджари
Литературные редакторы
Рошни Банерджи
Саранг Чари
Каруна Нарайянан
Координатор проекта
Карик Ведам
Корректоры
Мартин Дайвер
Амиша Грин
Саманта Лайон
Составители указателя
Хаманджини Бари
Моника Аджмера Мехта
Теджал Сони
Графика
Шитал Ауте
Ронак Дхрув
Валентина д`Сильва
Диша Хариа
Абхинаш Саху
Координаторы производства
Апарна Бхагат
Шантану Н. Загаде
Изготовитель переплета
Апарна Бхагат

 Об авторе

Джеймс Дентон

 Рецензенты

Кевин Джексон

Джордж Армин Гарсиа Лопес

Джейкоб Уолкик

 www.PacktPub.com

Автор посвящает эту книгу памяти своего деда, благородного Эгги, чья любознательность во всех вопросах, в том числе в технике, помогла автору сформировать его идентичность и сферу деятельности.

Эта книга также посвящена его другу Алехандро Мартинесу, великому товарищу по команде и Racker.

 Содержание

Вводные материалы
Авторские права
Состав исполнителей
Об авторах
Рецензенты
www.PacktPub.com
Оглавление
Предисловие
Что охватывает эта книга
Что вам нужно для этой книги
Для кого эта книга
Соглашения
Обратная связь с читателями
Загрузка кода примеров
Поддержка пользователей
Опечатки
Незаконное тиражирование
Вопросы
1. Подготовка сети для OpenStack
Что такое сетевая среда OpenStack
Функциональные возможности сетевой среды OpenStack
Коммутация
Маршрутизация
Балансировка нагрузки
Организация межсетевой защиты
Виртуальные частные сети
Подготовка физической инфраструктуры
Типы сетевого обмена
Управляющая сеть
Сеть программного интерфейса приложений
Внешняя сеть
Гостевая сеть
Подключения физических серверов
Одиночный интерфейс
Множественный интерфейс
Связывание
Разделение служб по узлам
Один контроллер с одним или более узлами
Один контроллер плюс сетевой узел с одним или более узлами
Заключение
2. Установка OpenStack
Требования системы
Требования операционной системы
Начальная настройка сети
Настройка интерфейса
Перед тем как вы начнете
Права доступа
Настройка репозитория OpenStack
Установка утилит OpenStack
Задание имен хостов
Запрет SELinux
Удаление правил iptables
Установка и настройка протокола службы времени
Модернизация системы
Установка OpenStack
Установка и настройка сервера баз данных MySQL
Установка клиента MySQL
Установка и настройка сервера сообщений
Установка и настройка службы идентификации
Определение пользователей, владельцев и ролей в Keystone
Определение служб и API конечных точек в Keystone
Проверка установки Keystone
Установка переменных среды
Установка и настройка службы образов
Определение службы и API конечных точек Glance в Keystone
Проверка установки службы образов Glance
Установка и настройка вычислительной службы
Установка и настройка компонентов узла контроллера
Установка и настройка компонентов вычислительного узла
Проверка связи между узлами
Установка инструментальной панели OpenStack
Разрешение соединения с инструментальной панелью
Идентификация сервера Keystone
Изменение адреса прослушивания
Проверка связи с инструментальной панелью
Заключение
3. Установка Neutron
Основные конструкции Neutron
Наложение сетей с применением сетевых пространств имен
Расширение сетевых функций подключаемыми программами
Установка и настройка служб Neutron
Создание базы данных Neutron
Настройка пользователей, ролей и конечных точек Neutron в Keystone
Разрешение пересылки пакетов
Настройка Neutron на использование Keystone
Настройка Neutron на использование службы сообщений
Настройка root helper
Настройка Nova на использование сетевой среды Neutron
Настройка служб Neutron
Настройка neutron-server
Запуск neutron-server
Настройка агента DHCP Neutron
Запуск агента DHCP Neutron
Настройка агента метаданных Neutron
Настройка агента L3 Neutron
Настройка агента LBaaS Neutron
Использование интерфейса командной строки Neutron
Заключение
4. Построение инфраструктуры виртуальной коммутации
Предоставление экземплярам связности второго уровня
Интерфейсы виртуальной сети
Соединение мостами
Настройка интерфейсов мостов
Типы сетей Neutron
Выбор подключаемых программ сетевой среды
LinuxBridge
Внутренние соединения среды при использовании LinuxBridge
Open vSwitch
Внутренние соединения среды при использовании Open vSwitch
Программирование правил потока
Настройка подключаемых программ сетевой среды второго уровня
Настройка подключаемой программы LinuxBridge
Настройка Nova на использование LinuxBridge
Настройка DHCP агента на использование LinuxBridge
Настройка опций подключаемой программы LinuxBridge
Тип сети владельца
Отображение физических интерфейсов
Сетевые диапазоны виртуальных сетей
Драйвер межсетевого экрана
Перезапуск служб
Настройка подключаемой программы Open vSwitch
Настройка Neutron на использование Open vSwitch
Настройка Nova на использование Open vSwitch
Настройка агента DHCP на использование Open vSwitch
Настройка опций подключаемой программы Open vSwitch
Заключение
5. Создание сетевой среды с применением Neutron
Управление сетевой средой
Управление сетевой средой в командной строке
Создание однородной сетевой среды в командной строке
Создание виртуальной сети в командной строке
Создание локальной сети в командной строке
Просмотр сетей в командной строке
Обзор свойств сетевой среды в командной строке
Модернизация сетевой среды в командной строке
Удаление сетевой среды в командной строке
Создание сетевой среды в инструментальной панели
Использование вкладки Admin с правами администратора
Использование вкладки Project с правами пользователя
Подсети в Neutron
Создание подсетей в командной строке
Создание подсети в командной строке
Просмотр подсетей в командной строке
Обзор свойств подсетей в командной строке
Модернизация подсетей в командной строке
Создание подсетей в инструментальной панели
Использование вкладки Admin с правами администратора
Использование вкладки Project с правами пользователя
Порты Neutron
Подключение экземпляров к сетевой среде
Подключение экземпляров к сетевой среде с применением Nova boot
Подключение и отключение к сетевых интерфейсов
Добавление вторичных адресов сетевым интерфейсам
Изучение процесса получения адресов экземплярами
Изучение извлечения метаданных экземплярами
Пространство имен маршрутизатора
Пространство имен DHCP
Добавление маршрута к 169.254.169.254 вручную
Использование DHCP для встраивания маршрутов
Заключение
6. Создание маршрутизатора в Neutron
Настройка агента третьего уровня в Neutron
Определение драйвера интерфейса
Установка внешней сети
Установка внешнего моста
Включение прокси метаданных
Запуск агента Neutron L3
Управление маршрутизатором в командной строке
Создание маршрутизаторов в командной строке
Работа с интерфейсами маршрутизатора в командной строке
Подключение внутренних интерфейсов к маршрутизатору
Подключение интерфейсов шлюза к маршрутизатору
Просмотр интерфейсов, подключенных к маршрутизатору
Удаление внутренних интерфейсов
Создание интерфейсов шлюза
Просмотр маршрутизаторов в командной строке
Просмотр свойств маршрутизаторов в командной строке
Модернизация свойств маршрутизаторов в командной строке
Удаление маршрутизаторов в командной строке
Трансляция сетевых адресов
Плавающие IP адреса
Управление плавающими IP адресами
Создание плавающих IP адресов в командной строке
Привязывание плавающих IP адресов к портам в командной строке
Просмотр плавающих IP в командной строке
Отображение свойств плавающих IP в командной строке
Отсоединение плавающих IP в командной строке
Удаление плавающих IP в командной строке
Демонстрация трафика от экземпляра в интернет
Установка основы
Создание сети внешнего провайдера
Создание маршрутизатора Neutron
Присоединение маршрутизатора к внешней сети
Тестирование соединений шлюза
Создание внутренней сети
Присоединение маршрутизатора к внутренней сети
Создание экземпляров
Проверка связей экземпляров
Наблюдение за поведением установленного по умолчанию NAT
Назначение плавающих IP
Переназначение плавающих IP
Управление маршрутизатором в инструментальной панели
Создание маршрутизатора в инструментальной панели
Подключение интерфейсов шлюза к маршрутизатору в инструментальной панели
Подключение внутреннего интерфейса к маршрутизатору в инструментальной панели
Просмотр топологии сети в инструментальной панели
Привязывание плавающих IP к экземплярам в инструментальной панели
Отсоединение плавающих IP в инструментальной панели
Заключение
7. Балансировка нагрузки обмена в Neutron
Основы балансировки нагрузки
Алгоритмы балансировки нагрузки
Мониторинг
Устойчивость сеанса
Встраивание балансировщика нагрузки в сетевую среду
Пространства имен сетевой среды
Установка балансировщика нагрузки как службы
Настройка агента службы Neutron LBaaS
Определение драйвера интерфейса
Определение драйвера устройства
Изменение группы пользователя
Определение подключаемой программы службы
Запуск агента службы Neutron LBaaS
Разрешение LBaaS в Horizon
Управление балансировщиком нагрузки в командной строке
Управление пулами в командной строке
Создание пула
Удаление пула
Просмотр пула
Просмотр подробностей пула
Просмотр статистик пула
Модернизация пула
Просмотр пулов, связанных с агентом
Управление участниками пулов в командной строке
Создание участников пула
Удаление участников пула
Просмотр участников пула
Просмотр подробностей участников пула
Модернизация участников пула
Управление мониторами состояний в командной строке
Создание монитора состояния
Удаление монитора состояния
Связывание монитора состояния с пулом
Отсоединение монитора состояния от пула
Просмотр мониторов состояния
Просмотр подробностей монитора состояния
Модернизация монитора состояния
Управление виртуальными IP в командной строке
Создание виртуального IP
Удаление виртуального IP
Просмотр виртуальных IP
Просмотр подробностей виртуального IP
Модернизация виртуального IP
Построение балансировщика нагрузки
Создание пула
Создание участников пула
Создание монитора состояния
Создание виртуального IP
Пространство имен сетевой среды LBaaS
Подтверждение функциональности балансировщика нагрузки
Наблюдение за монитором состояния
Внешнее подсоединение к заданному виртуальному IP
Управление балансировщиком нагрузки в инструментальной панели
Создание пула в инструментальной панели
Создание участников пула в инструментальной панели
Создание монитора состояния в инструментальной панели
Создание виртуального IP в инструментальной панели
Внешнее подсоединение к заданному виртуальному IP
Заключение
8. Безопасность экземпляров в сетевой среде
Группы безопасности в OpenStack
Межсетевой экран как служба
Знакомство с iptables
Работа с группами безопасности
Управление группами безопасности в командной строке
Создание групп безопасности в командной строке
Удаление групп безопасности в командной строке
Просмотр групп безопасности в командной строке
Просмотр подробностей групп безопасности в командной строке
Модернизация групп безопасности в командной строке
Создание правил групп безопасности в командной строке
Удаление правил групп безопасности в командной строке
Просмотр правил групп безопасности в командной строке
Просмотр подробностей правил групп безопасности в командной строке
Применение групп безопасности к экземплярам в командной строке
Реализация правил групп безопасности
Пошагово по цепочке
Работа с группами безопасности в инструментальной панели
Работа с межсетевым экраном как службой
Подготовка Neutron для межсетевого экрана как службы
Настройка драйвера FWaaS
Определение службы подключаемой программы
Включение FWaaS в инструментальной панели
Работа с межсетевым экраном в командной строке
Создание правил межсетевого экрана в командной строке
Удаление правил межсетевого экрана в командной строке
Просмотр правил межсетевого экрана в командной строке
Просмотр подробностей правил межсетевого экрана в командной строке
Модернизация правил межсетевого экрана в командной строке
Создание политик межсетевого экрана в командной строке
Удаление политик межсетевого экрана в командной строке
Просмотр политик межсетевого экрана в командной строке
Просмотр подробностей политик межсетевого экрана в командной строке
Модернизация политик межсетевого экрана в командной строке
Вставка правил в политики межсетевого экрана в командной строке
Удаление правил в политики межсетевого экрана в командной строке
Создание межсетевого экрана в командной строке
Удаление межсетевого экрана в командной строке
Просмотр межсетевых экранов в командной строке
Просмотр подробностей межсетевого экрана в командной строке
Модернизация межсетевого экрана в командной строке
Работа с межсетевыми экранами в инструментальной панели
За кулисами правил межсетевого экрана
Пошагово по цепочке в пределах межсетевого экрана
Заключение
Дополнение A. Дополнительные команды Neutron
Расширения Neutron
Просмотр расширений Neutron API
Просмотр деталей расширений Neutron API
Частные виртуальные сети
Квоты каждого владельца
Просмотр квот по умолчанию
Модернизация квот владельцев
Просмотр квот владельцев
Удаление квот владельцев
Справочник по командам Cisco Nexus 1000V
Справочник по командам VMware/Nicera
Дополнение B. Настройка ML2
Установка подключаемой программы ML2
Создание базы данных для ML2
Настройка Neutron на использование ML2
Настройка службы подключаемой программы
Настройка подключаемой программы ML2
Перезапуск служб Neutron
Указатель

 Предисловие

 Что охватывает эта книга

 Что вам нужно для этой книги

 Для кого эта книга

 Соглашения

 Обратная связь с читателями

 Поддержка пользователей

 Загрузка кода примеров

 Опечатки

 Незаконное тиражирование

 Вопросы