Post on 16-Jun-2015
Виртуализация центров обработки вызовов UCCE на платформе Cisco UCS Разработка собственных приложений для ЦОВ
Игорь Сукайло isukaylo@cisco.com
Содержание
Развертывание CUCCE на UCS
Разработка собственных приложений для UCCE
Развертывание CUCCE на UCS
Особенности сетевой топологии при использовании UCS
PCIe x16
10GbE/FCoE
Определяемые пользователем vNICs
Eth
0
FC
1 2
FC
3
Eth
58
VIC является конвергентным сетевым адаптером для развёртывания как в виртуальной так и в реальной среде При этом OS/hypervisor видит до 58 различных PCIe устройств: • Ethernet vNIC и FC vHBA
Возможность выдедить отдельные vNIC для vmconsole, vmkernel, vMotion Аппаратная реализация технологии VN-Link Возможность работы в режиме Bypass Для среды VMware vmnic = vNIC на UCS
UCS Virtual Interface Card (VIC)
• Взаимодействие с внешним миром – Fabric Interconnect Switch 6100 серии
(40 или 20 10GE портов) + (2 или 1 GEM слота) для подключения к сетевым коммутаторам и для подключения к серверам через FE.
• Шасси До 8-и половинчатых или 4-х полных лезвий
• Fabric Extender Агрегирует серверные подключения Поддерживает полосу до 80Gb
• Адаптеры Виртуализируемые адаптеры
• Серверное лезвие
Compute Chassis
x86 Computer x86 Computer
X
I I
x8 x8 x8 x8
B
MGMT
S S
B
X X X X X
C C
A
G G
G G
SAN
G
R
A
G
G G
G
R
G
P M P
SAN LAN
Fabric Interconnect
Fabric Interconnect
Fabric Extender
Fabric Extender
Compute Blade (Half slot)
Adapter
Compute Blade (Full slot)
Adapter Adapter
Сетевая топология UCS B серии
• Внешняя LAN видит UCS 6100 как end-host с большим кол-вом адаптеров. Не используется Spanning Tree Protocol (STP)
• Все серверные порты привязываются к uplink портам в режиме Active/Active. Привязки могут быть как преднастроенные так и динамические
• Могут быть реализованы непересекающиеся подключения к сети
• Является предпочтительным режимом использования
• UCS 6100 ведет себя как традиционный сетевой коммутатор с поддержкой Spanning Tree Protocol (Cisco PVST+) на uplink портах
End Host Mode (EHM) Switch Mode
Режимы работы UCS 6100
Рекомендации по сетевой топологии для CUCCE
Cisco Confidential © 2010 Cisco and/or its affiliates. All rights reserved. 9
Поскольку ССЕ требует быструю сходимость, которую не в силах обеспечить STP
Половинчатое лезвие
Fabric Extender Fabric Extender
Адаптер
MAC-A gARP
-Динамическая перепривязка портов в случае возникновения проблемы
Active/Active порты
Fabric InterConnect A Fabric InterConnect B
Серверные порты
Коммутаторы локальной сети Nexus/6500
UCCE использует End Host режим работы UCS B FI …
3 4
1 2 3 4 5 6 7 8
FEX-A
1 2 3 4 5 6
Server Ports
Uplink Ports
1 2 Fabric Ports
16 14
15
8 7
2 1
UCS FI-A
Upstream Switch
UCS Blade
Chassis
Blade Server Eth 1/1/4 Adapter
Hypervisor Switch
Veth10 Profile Web
Service Console Kernel
Backplane Ports
Veth11 Profile Web
Veth20 Profile NFS
Veth5 Profile VMK
Veth10 Profile COS
VLAN Web VLAN NFS VLAN
VMK VLAN COS
3 4
1 2 3 4 5 6 7 8
FEX-B
1 2 Fabric Ports
Backplane Ports
1 2 3 4 5 6
Server Ports
Uplink Ports 7 8
UCS FI-B VLAN Web
VLAN NFS VLAN VMK VLAN COS
15
2 1
Upstream Switch 16 14
Eth 1/1/4
Eth 0 MAC –A MAC –B
MAC –C MAC –D MAC –E
HA Links
MAC-C, E gARP
Eth 1
… и не использует Fabric Failover режим (для более быстрого переключения)
Clustering over WAN (CoW) при развертывании UCCE на UCS B
• Коммуникации UCCE Visible и Private должны происходить различными сетевыми маршрутами, чтобы сделать невозможным одновременный их выход из строя.
• В случае збоя трафик должен быть перенаправлен по запасному маршруту в течении 500мс
• WAN должна быть построена по отказоустойчивой модели и в соответствии с требованиям SRND с точки зрения задержек, полосы и т.д.
• Синхронизируемые службы на Site A и Site B (Router, Logger и PGs) должны иметь идентичное аппаратное обеспечение. Так, если Rogger A установлен на UCS, то Rogger B не может быть установлен на MCS.
• Однако совместное использование в одной инсталляции MCS и UCS • для компонент, которые не поддерживают виртуализацию или не Коммуникации UCCE Visible и Private должны происходить
Основные требования к CoW UCCE
VLAN 10 VLAN 20
Типовая архитектура CoW на MCS
Два разных сетевых Адаптера подключены к двум непересекающимся сетям: Public и Private
Non Fabric Failover
End Host mode
vSwitch 0
vmnic 0 (active)
UCS Adapter UCS Adapter
Disjointed L2 LAN
SAN
Fabric Extender
Port Group for Public VLAN 10
Port Group for Private VLAN 20
CCE VM 1 (Rogger)
Public VLAN 10
Private VLAN 20
CCE VM 2 (Agent PG)
Public VLAN 10
Private VLAN 20
VM
vNIC 1 vNIC 2
ESXi Host 1A / Blade 1A ESXi Host 1B / Blade 1B
vSwitch 0
vmnic 1 (active)
Fabric Extender
Fabric InterConnect A Fabric InterConnect B
HA WAN Disjointed L2 LAN
Side-B UCCE
Side-A UCCE
Non-Disjointed L2 LAN
CCE Public
CCE Private
VLAN 10
VLAN 20 VLAN 20
VLAN 10
SAN 10GE Uplinks
VMware NIC
teaming
VLAN 20 VLAN 10
Два варианта архитектуры CoW на UCS
a PortChannel
a vPortChannel
vPC (или Virtual Switching System для 65ХХ) – технология, позволяющая объединить два физических коммутатора в единый логический/виртуальный, который видится коммутаторами нижнего уровня как одно целое. Данная технология позволяет организовать отказоустойчивое соединение между коммутаторами.
L2 Switch
MAC A
MAC B
MAC C
MAC D
Использование Virtual PortCannel
Cisco Confidential © 2010 Cisco and/or its affiliates. All rights reserved. 16
• Все VLAN-ы транком уходят через UCS FI, т.е. не разделенная L2 сеть • Коммутатор следующего уровня должен разделить Public и Private VLAN-ы, как того требует организация CoW UCCE. Технология vPC/VSS не является обязательной, но рекомендуется ввиду быстрой отработки нештатных ситуаций и простоты конфигурирования. Если vPC/VSS не используется, то между UCS FI и вышестоящим коммутатором настоятельно рекомендуется использовать port channel.
Server Ports Server Ports
vPC/VSS Без vPC/VSS
Upstream Access/Distribution Layer Upstream Access/Distribution Layer
Fabric InterConnect A Fabric InterConnect B Fabric InterConnect B Fabric InterConnect A
Использование vPC для организации CoW UCCE
Критерии выбора UCS B или UCS C для UCCE
> 10 “серверов”
> 24 vCPU?
B200Mx
Уже есть DC/SAN с
10GE аплинками?
C210Mx DAS
Строится DC с 10GE аплинками?
$$
Да
Да
Да
Да
Нет
Нет Нет
Нет
Старт
Span based Silent
Monitoring?
Да
Нет
Замечание: Для виртуальных машин требующих, больше 4 vCPUs, необходимо приобрести у Cisco либо VMware лицензию VMware vSphere ESXi Enterprise Plus.
Цепочка принятия решения
Использование QoS на UCS B
“Usable
” Bandw
idth (75%)
Reserved
Total Link Bandw
idth
0%
25%
50%
75%
100%
Priority (33% max)
BW
Assigned to LLQ
Classes
ip rsvp bandw
idth
• При развертывании UCCE на UCS B используются возможности настройки QoS на UCS VIC (Virtual Interface Card) M81KR.
• UCCE пока не поддерживает функциональность Nexus 1000V с точки зрения QoS, но встроенной функциональности UCS VIC достаточно для функционирования приложений UCCE.
- Из-за ограничения vSwitch по распознавания и маркировке трафика необходимо использовать режим “Host Control NONE” на виртуальных адаптерах, что позволяет Cisco VIC применять маркировку в зависимости от трафика виртуальных адаптеров.
- Политики QoS и конфигурирование UCS VIC описано http://www.cisco.com/en/US/docs/unified_computing/ucs/sw/gui/config/guide/1.4/UCSM_GUI_Configuration_Guide_1_4_chapter18.html
Особенности маркировки трафика
• Если Nexus 1000V необходим некоторым UC приложениям, например UCM, то CCE использует vSwitch и работу с QoS через UCS VIC. При этом Nexus 1000V может размещаться совместно с vSwitch на одном шасси, но не на одном лезвии.
• Но поскольку не допускается совместное размещение на одном лезвии виртуальных машин UCM и CCE, то вышеуказанное ограничение несущественно, кроме факта администрирования двух систем одновременно.
pSwitch
ESXi Host for UCCE ESXi Host for UCM Nexus 1000V VEM
Nexus 1000V VSM
VMware vNetwork standard Switch
vSwitch
Сосуществование vSwitch и Nexus 1000V
Использование SAN для UCCE на UCS B
ESXi Host A (Rogger, Agent PG, DC VMs)
VM 1 VM 2 VM 3
ESXi Host B (AW-HDS-DDS VM)
VM 4
datastore 2 (VMFS volume)
datastore 1 (VMFS volume)
vdisk1
• VM использует vDisk созданный в VMware File Systems (VMFS)
• Datastore является физическим VMFS разделом на устройствах хранилища
• VMFS раздел может объединять несколько хранилищ
• VMFS раздел содержит один или более LUNs (Logical Unit Number) на физическом хранилище.
vdisk2
vdisk3
vdisk4
SAN network) di
sk x
disk
x
disk
x
disk
x
disk
x
disk
x
disk
x
disk
x
SAN storage array
Архитектура хранилища для VMware
IP трафик конкурирует с
FC
UCS B200 Blade Server
FCoE
10Gbps Ethernet
Catalyst Ethernet
Switch SAN Disc Array
UC Apps Disc Space
Fibre Channel (FC) UCS-6120XP FI Switch
Up to 20 UCS 5108 Chassis
• Необходимо контролировать пропускную способность FI, поскольку существует конкуренция между FC и IP трафиком.
• Поэтому при расчете SAN нужно строго соответствовать требованиям UCCE SRND.
HDD Рекомендации FC class (e.g 450 GB 15K, 300 GB 15K) ~ 180 IOPS
LUN ограничения размера Не более 2 TB
UC VM App Per LUN Указывается в OVA шаблоне в зависимости от типа приложения (всего не более 10)
LUN рекомендованный размер Между 500 GB & 1.5 TB
Рекомендации к SAN для UCCE на UCS B
SAN/Storage Layer – Cisco SRND
Cisco SAN Switch
FC FC
FC FC
FC Storage
SP-A SP-B (Storage/service Processor) 3rd party layer
Compute Layer Cisco UCS 6100 Fabric Interconnect
UCS 5100 Blade Server
4x10GE
4x10GE
4x10GE
4x10GE
- Rogger 2000 agents VM IOPS ~ 425 (95th pct) 425 IOPS * 4KB*8 à 13.6 Mbps per Rogger VM -HDS VM IOPS ~ 3800 à 121.6 Mbps per HDS VM -Agent PG IOPS ~ 70 à 2.3 Mbps per APG VM -UCM VM IOPS ~ 200 à 6.4 Mbps per UCM VM Суммарная потребляемая производительность ниже предложенной.
• EMC CX4-240; 1 Rack; 12 DAE • Общая производительность 28,000
IOPS • 14,000 IOPS на контролер • 4 KByte размер блока
14,000 IOPS x (4KB*8) ~ 428 Mbps Пропускная способность на контролер
3rd Party SAN
Результат • Одного 4 Gbps FC интерфейса достаточно для обработки данных всего хранилища • Для отказоустойчивости используем 4-е FC интерфейса
4
Пример FC SAN на 2000 агентов
HD 1
450gig 15K RPM
HD 2
450gig 15K RPM
HD 3
450gig 15K RPM
HD 4
450gig 15K RPM
HD xx 450gig
15K RPM
RAID5 Group(s) (disk 1-xx)
LUN 1 (500 GB)
AW-HDS-DDS 1
VM 1
AW-HDS-DDS 3
VM 2
Rogger A
VM 3
Agent PG A
VM 4
DC A
VM 5
ST Tool
VM 6
UCM Pub
VM 7
UCM Sub 1
VM 8
UCM Sub 3
VM 9
Datastore 1 Datastore 3 Datastore 4
LUN 2 (500 GB)
Datastore 2
LUN 3 (720 GB)
LUN 4 (720 GB)
RAID5 Groups (disk Y-zz)
HD Y
450gig 15K RPM
HD Y+1 450gig
15K RPM
HD Y+2 450gig
15K RPM
HD zz 450gig
15K RPM
Пример RoggerA на 2000 агентов
Разработка собственных приложений для UCCE
Разработка приложений для системы записи
Сервисы
Приложения
Архитектура MediaSense Сеть
Call Control
Application, User, & Configuration
Management Redundant Metadata database
Media Management
Web 2.0 APIs
Media Capture & Streaming SIP
Call Control
§ Возможность прослушивания в реальном времени § Доступ по HTTP и RTSP § Поддержка кластеризации § Cisco UCS (B- и C-серии) § VMware ESXi 4.0/4.1 § Fiber-channel SAN § Unified CM 8.5 § Cisco IP Phones с поддержкой BiB
Партнерские приложения
Производительность и масштабируемость
• Всего поддерживается до 340 одновременных различных потока
– Запись, Мониторинг, Проигрывание, Скачивание
• MediaSense 8.5(2) поддерживает: ü Как локальные диски так и Fiber Channel SAN устройства ü Хранилища до 60TB для 5 нод ü Cisco C-Series и B-Series сервера ü VMWare ESXi 4.0/4.1
MediaSense SAN
Partner Application
Два режима построения хранилища
MediaSense
SAN
Partner Application
Режимы записи
• Два режима работы записи – Приоритет новых записей (значение по умолчанию). При отсутствии места старые записи удаляются, а новые записываются. Записи удаляются в зависимости от их «возраста» и доступного пространства
– Приоритет существующих записей. При отсутствии свободного места новые записи не производятся
Media
Multimedia Capture & Streaming
Call Control
SIP + Call Meta Data
RTP
События
записи
Med
ia
RTS
P &
HTT
P
Приложения
Сеть
Мультимедийные
сервисы
Тегирование
Rea
l-tim
e управление
Обработка
метаданных
Управление
Результат
поиска
Управление
контентом
Web 2.0 Client Application APIs
Media Storage
Metadata Storage &
Search
MediaSense пользовательские API
MediaSense пользовательские API
§ Аутентификация § Аутентификация приложений MediaSense происходит через пользователей UCM
§ Поиск записей § Возможность поиска по многим критериям
§ Доступ к записям и прослушиванию § RTSP, HTTP
§ Управление записями § Удаление одной или группы записей § Транскодирование / экспорт
§ Управление Тэгами § Добавление/удаление текстовых тэгов
§ Управление записью § Начало/конец записи § Пауза/Возобновление записи
Поддерживаемые форматы
• Audio – G.711 A-law и mu-law – G.729 – G.722 * – Транскодирование и экспорт в AAC / MP4
• Video – H.264 захват, экспорт в MP4 – Совместимость с 9971 и CUVA – HD video 720p, 1080p *
• Metadata – Ассоциация со звонком
• Связь с UCM, UCCE, ICM – Информация о сессии
• Endpoints, Time, date, Call IDs: xRefCi, GUID • Session ID
* Планируется в 2012
36
• Приложение демонстрирующее базовые возможности MediaSense API
• Исходный код доступен на CDN – http://developer.cisco.com/web/mediasense
Пример приложения
37
Пример приложения Поиск
38
Пример приложения Расширенный поиск
39
Пример приложения Проигрывание
40
Пример приложения Проигрывание видео
Разработка агентского места контакт-центра
Cisco Finesse
Cisco Finesse одновременно и API и полноценное, поддерживаемое, агентское рабочее место на базе данного API.
Стартовый экран Finesse Доступный сразу после инсталляции Контакт-центра
Высокоуровневая архитектура
Cisco Finesse клиент
Cisco Unified
Contact Center Enterprise
PG
Web Services
Gadget Container
Cisco Finesse Server VOS Virtual Machine
Пользовательское приложение
Компоненты Finesse
Finesse Web Service • Компонент, обрабатывающий REST запросы от клиентов
Finesse Notification Service • Компонент, отправляющий XMPP события клиентам
CTI Server • Компонент, используемый Finesse Web Service для интерфейса с UCCE
Finesse DB • Компонент, используемый Finesse Web Service и Notification Service для хранения данных
Finesse Desktop • Компонент, который формирует клиентское отображение рабочего места
Формирование запросов
• Основной формат (применяется в большинстве случаев) – http://<host>:<port>/finesse/api/<object>
• http://host/finesse/api/User/1234
• По умолчанию для HTTP используется порт 80
• Базовая аутентификация для каждого запроса
• HTTP метод GET или POST
• Ответ в XML формате
• Ошибки в XML формате
События, информирующие о вызове
Call Cleared
Call Conferenced
Call Connection Cleared
Call Data Update
Call Delivered
Call Diverted
Call Established
Call Failed
Call Held
Call Originated
Call Retrieved
Call Transferred
End Call
Используемые инструменты
• Poster plugin для Firefox – Отправка HTTP запросов – https://addons.mozilla.org/en-US/firefox/addon/2691/
• XMPP Console plugin для Pidgin – Отправка и получение XMPP сообщений – http://www.pidgin.im/
• Firebug plugin для Firefox – Отладчик JavaScript – Анализирует HTTP запросы/ответы – http://getfirebug.com/
• Fiddler (HTTP трафик анализатор) – Анализирует HTTP запросы/ответы в IE – http://www.fiddler2.com/fiddler2/
Расширение функциональности OpenSocial гаджетами
• Структура OpenSocial гаджета: <?xml version="1.0" encoding="UTF-8" ?>
<Module> <ModulePrefs title="Standard gadget structure"> <Require feature="opensocial-0.8"/> </ModulePrefs> <Content type="html"> <![CDATA[ Собственно контент гаджета]]> </Content> </Module>
HelloWorld гаджет
Отображение гаджетов
План развития Finesse
• Декабрь 2010 – Finesse 8.5(1) CCE только для разработчиков • Июнь 2011 – Finesse 8.5(3) CCE только для разработчиков • Декабрь 2011 - Finesse 8.5(3) готов к использованию в составе
CCE • 2012 – Finesse готов к использованию в составе CCX
Спасибо! Просим Вас заполнить анкеты. Ваше мнение очень важно для нас.