Опыт внедрения openstack

Post on 30-May-2015

963 Views

Category:

Technology

9 Downloads

Preview:

Click to see full reader

DESCRIPTION

Сейчас OpenStack на слуху, но детальных отзывов и описаний дизайна инфраструктуры все еще не много. Постараемся немного упростить задачу для тех, кто еще только планирует развертывание инфраструктуры виртуализации, и расскажем, как это делали мы в некоторых наших проектах: погрузимся в нюансы реализации окружения OpenStack в боевой среде; поговорим об отказоустойчивости; рассмотрим варианты организации резервного копирования; обратим внимание на конфигурацию «железок»: СХД и сети.

TRANSCRIPT

Опыт внедрения OpenStackОкружение и инфраструктура

2

О нас

• http://at-consulting.ru

• Для вопросов– Бараблин Михаил– mbarablin@at-consulting.ru– @miklebarablin

Телеком

ТЭК

Банки

Госсектор

3

План

• Внедрение OpenStack, как это• Технические заметки с проектов

4

Что вы хотите нам внедрить?

• Виртуализация vs облака• Open source• Интеграция с окружением

5

Описание задачи

• Инфраструктура состоит из множества ЦОД• Гарантии производительности для систем• IaaS для сложных и legacy систем• Интеграция с внешними системами• Обеспечение защиты данных (РК,

избыточность инфраструктуры, мониторинг)

6

Общая схема 2

7

Особенности задачи

• Использование существующего «enterprise» оборудования

• Требования к защите каналов и сети• Разные “не-cloud” системы с разными ОС и

требованиями к сети (dhcp, vrrp)• Существующая сеть L3• Даже Интернета нет

8

Пользователи «облаков» 2

9

Что внедряем в итоге

Backup Мониторинг CMDB

CM Биллинг Workflow

Openstack Инфраструктура

Техника

10

11

Компоненты

• Openstack havana– CLVM + Gfs cluster (redhat cluster stack mod)– OVS

• Ubuntu 12.04, KVM• PXE + Puppet 3 open source• Bareos (Bacula fork)• Zabbix (+ceilometer)• Наш софт

12

Инфраструктура. Схема

13

Сеть

14

Сеть, изоляция

• VLAN – ограничение на 4096 L2– Ограничения на оборудовании– Нужен переход на openflow

• GRE – булетпруф. Чтобы были только mac гипервизоров на оборудовании

• Двойное теггирование q-in-q – не влезает в стандартный mtu, Jumbo frames

15

Сеть

• Будут проблемы!• Бондинг – не всегда из коробки• Ограничение трафика• Отказались от Security Groups в пользу

FWaaS• ML2 L2 population – хорошо, но иногда

глючит

16

Сеть. Схема

17

СХД

18

Дисковая подсистема

• FC – хорошо. IO трафик не гоняем по сети• FC multipath Драйверы для СХД – не

работают – пока очень сырые• Снапшоты – только для root дисков (qcow2)• LUN не больше 1 TB – более удобно

работать с СХД

19

GFS, cinder, custom

• GFS медленно, но достаточно• Cinder быстрее (на 30%)

– Изолированно, но труднее бэкапить• Custom – Cinder + FC

20

Дисковая подсистема. Схема

21

Дисковая подсистема. cLVM patch

Clvm – как драйвер lvm/iscsi

/usr/share/pyshared/cinder/volume/driver.py

iscsi_properties = self._get_iscsi_properties(volume)return {

- 'driver_volume_type': 'iscsi',- 'data': iscsi_properties+ 'driver_volume_type': 'local',+ 'data': {'device_path': self.local_path(volume)},

}

22

Серверы

• 2 Ethernet * 1G• 2 Ethernet * 10 G• 2 HBA• 2 CPU * 6 Core• 32 GB Flash• 128 Gb RAM

• 10-20 ВМ на сервер

23

Серверы    Total  

VM 600 VM freq 2400

VM vCPU 4 5760000GhzVM RAM 8 4800GbSockets 2

Cores 6 Freq 2400 28800GhzRAM 128 Gb

CPU ovrecommit 5 Server count by CPU

(vm freq/srv freq/overcommit) 40

Memory usage 80%

Server count by Mem(vm mem/srv mem*usage)

47

Chassis count 16BL 2,9375

24

Отказоустойчивость

25

Отказоустойчивость

• Для ВМ, в пределах availability group– GFS – обеспечивает эвакуацию ВМ nova-evacuate– Мониторинг + автоматизация переезда

• 2 L3 агента на ext-сеть, можно больше• PaceMaker для сервисов OpenStack• Ноды управления – физика, задублированы• Репликация БД (MySQL)• Миграция роутеров

26

Развертывание

• PXE + DHCP для «железа»• Ubuntu 12.04

– preseed– puppet agent

• Puppet 3– Облегченные рецепты– Генерируем /etc/hosts

• Pkg mirror• DNS/NTP

27

Развертывание

28

Резервное копирование Bareos

• ВМ, Снапшоты – не надо использовать для cinder – там dd!– Альтернативный способ открытый вопрос– Нет thin провиженинга

• Qemu snapshot + block commit (с версии 1.3)– позволяет выполнять живые снапшоты

• Bareos: Passive agent 2• Функции РК – выносим в OSS• РК через агент

29

Мониторинг Zabbix

30

Проблемы

• В большой сети нужно следить за L3-агентами. Если управление теряется – возникают сюрпризы

• Нужно очищать старые токены из keystone• При удалении volume – dd нулями• Мониторинг, требует floating_ip / агентов• Файрвол OpenStack (Security Groups), фильтрует трафик на

гипервизорах:– переносим точку фильтрации на L3 (FWaaS)?– как быть с клиентами, желающими использовать у себя VRRP?

• Нет поддержки установки ОС с ISO• Запуск сервисов OpenStack как WSGI• Есть shaping, но не работает т.к. не используем security group

31

Всякое

• Не используем контейнеры и LXC, но можно совместить с KVM

• USB токены для ВМ• Разработка / тестирование / обновление

• API драйверов для оборудования – крайне легок!

• Кстати вышел ICE HOUSE, все апгрейдимся!

Спасибо!Вопросы?

Бараблин Михаилmbarablin@at-consulting.ru

32

top related