Post on 30-May-2015
description
Опыт внедрения 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