SlideShare ist ein Scribd-Unternehmen logo
1 von 46
Оптимизация продуктов Citrix под VMware Денис Гундарев, независимый консультант gundarev@itbubble.ru blog.itbubble.ru twitter.com/fdwl
Денис Гундарев Независимый консультант gundarev@itbubble.ru blog.itbubble.ru twitter.com/fdwl
ТУТ БЫЛО 40 СЛАЙДОВ ПРО ПРЕЙМУЩЕСТВА ВИРТУАЛИЗАЦИИ Зачем виртуализироватьXenApp?
Причины проблем с XenAppна vSphere Завышенные ожидания по консолидации серверов Терминальные сервера это клиентская ОС! Слишком много маркетинга Отсутствие рекомендаций http://www.vmware.com/pdf/esx2_citrix_planning.pdf  (2005 год!) Реальность не имеет отношения к синтетическим тестам Спец по виртуализации ≠ спец по терминальным серверам
Thin Client SupportTSO comes to NTlower per-client costs Dedicated Windows terminal Net PC Existing,  Desktop PC  MS-DOS,  UNIX,  Mac  clients Windows NT Server with “Hydra” Server 1997
[object Object],Web Interface, SQL, Password Manager, EdgeSight, Secure Gateway, SmartAuditor ,[object Object],NetScaler VPX, Access Gateway VPX, Branch Repeater VPX, Merchandising server, EasyCall ,[object Object],Естественные кандидаты на виртуализацию
Виртуализация терминальных серверов
Единственный сервер в инфраструктуре с большим количеством процессов • Context Switches • Page Faults • Process creation/destruction • MMU intensive  Page Table updates  SMP VM much higher overhead – per vCPU page tables • Real-life workloads vary drastically Специфика XenApp
Что нужно помнить про память 
32-Bit Windows Memory Architecture50%-50% System PTEs (~900 MB) 4 GB (2^32) address space 2 GB kernel mode address space Shared across processes 2 GB user mode address space Each process has it’s own Kernel address space includes System Page Table Entry (PTE) area  KM thread stacks  Paged Pool page tables, kernel objects  System Cache  file cache, registry Kernel(2 GB) Paged Pool (~270 MB) System Cache (~500 MB) Non Paged Pool, images, etc. Apps User (2 GB)
32-Bit Windows Memory Architecturewith /PAE switch in BIOS System PTEs (~900 MB) 64 GB (2^36) address space Requires Enterprise Version  of Windows Server OS 2 GB kernel mode address space Shared across processes 62 GB total user mode address space Each application has it’s own 1.5 GB of virtual space Kernel address space includes System Page Table Entry (PTE) area  KM thread stacks  Paged Pool page tables, kernel objects  System Cache  file cache, registry Paged Pool (~270 MB) Kernel(2 GB) System Cache  (~500 MB) Non Paged Pool, images, etc. User (62 GB) Apps
64-bit Windows Architecture50%-50% Split System PTEs (128 GB) ,[object Object]
8 TB Kernel virtual address space (VA)
Shared across processes
8 TB User virtual address space
Each 64-bit process has it’s own space
Each 32-bit app runs in a virtual         2 GB WOW: Windows-on-Windows
Kernel VA includes
System Page Table Entry (PTE) area – KM thread stacks 128 GB
Paged Pool – page tables, kernel objects  128 GB
System Cache – file cache, registry 1 TB
Others (Non Paged Pool 128 GB)Kernel VA (8 TB) Paged Pool (128 GB) System Cache (1 TB) Non Paged Pool (128  GB) User VA (8 TB) Apps
x32 ОС может использовать только 4 Gb памяти. (точка) А вот ключ /3GB – памяти будет больше!  А у ядра памяти не будет, 5 пользователей забьют  NonPagedPool А вот с ключом /PAE памяти больше! У ядра осталось 2 Gb, при большом количестве процессов, PTE съест ее раньше чем приложения доступную память Разница в стоимости между  Windows Enterprise и Standard заставляет думать ВЫВОД: x32 Standard виртуализируемв любом случае. Методы тренировки памяти
Внутренности терминальных служб
IMA Session Space Kernel Mode WIN32K.SYS (GDI) TERMDD WDICA DISPLAY DRIVER VDTW30.DLL TDTCP Элементы терминальных служб SERVER BASED SESSION BASED Windows Logon Winlogon.EXE Terminal Service SvcHost.exe TERMSRV.DLL (W2K: TERMSRV.EXE) Session manager SMSS.EXE Client server Runtime Subsystem CSRSS.EXE Application and  Services Per Session Protocol Extension WSXICA.DLL User Mode Session Space
SMSS (WindowsNT SessionManager) Ожидает подключения от терминального сервиса  Создает сессию пользователя (essions Directory in Object Manager, Session Space, DOS Devices (C: COM1, LPT1, etc.) Стартует процессы логона (Winlogon.exeи Csrss.exe)
TS  SMSS  CSRSS, WINLOGON LPC mSsWinStationApiPort CSRSS CreateProcess SMSS Session Manager LPC mApiPort Terminal Services CreateProcess WINLOGON EVENT/LPC
Старт CSRSS (client/server run-time subsystem) 1. Инициализация 2. Подключение устройств ввода/вывода 3. Создание Window Manager  4. Старт диспетчера печати 5. Оповещение терминальных служб о готовности
Reverse LPC and CSRSS calls SMWinstationDoConnect Terminal Services CSRSS USER KERNEL WIN32K Display Driver Старт WinLogon WinLogonобщается с терминальным сервисом и ждет логона пользователя. Event WinLogon RPC (TS WINLOGON)
Startup Processes на Server 2003 Session Manager (SMSS) создает Winlogonи Csrssдля каждой сессии Сессии создаются последовательно Бутылочное горлышко для Terminal Services
Startup Processes наServer 2008 В Windows Server 2008 Smssклонирует себя для каждой новой сессии Это позволяет создавать сессии одновременно Максимум параллельно создаваемых сессий равно количеству процессоров Сессия 0 стартует все сервисы  Сессии 1-n создают только то, что необходимо в конкретной сессии, системные сервисы уже запущены
Первые выводы: Два маленьких сервера лучше одного большого Для Win 2008 – больше vCPU -  быстрее логоны Логонможет занимать больше минуты, в это время ресурсы сервера максимально нагружены Внутренности терминальных служб
Виртуальными и физическими Балансировка нагрузки между серверами
По количеству пользователей на сервер По расписанию По IP-адресу По  счетчикам производительности  Processor(_Total)% Processor Time SystemContext Switches/sec Memory% Committed Bytes In Use MemoryPage Faults/sec MemoryPages/sec PhysicalDisk(_Total)Disk Bytes/sec PhysicalDisk(_Total)Disk Reads/sec PhysicalDisk(_Total)Disk Writes/sec По комбинации параметров Методы балансировки XenApp
Каждый сервер оценивает свою загрузку числом от 0 до 10000 и сообщает ее коллектору данных Коллектор данных направляет пользователя на самый свободный сервер Специальная формула для регулирования нагрузки при вводе новых серверов и массовых утренних логонахВременная=текущая + [(10000– текущая) / ILBMultiplier] Обновление метрик: После logon или logoff При изменении нагрузки  +/- 500 Дополнительные проверки актуальности данных раз в 30 секунд Методы балансировки XenApp
ICA Client Data Collector Server A Server B Dynamic Store Load Throttling - Low logon rate Server  Load BIAS Server A 0 100 0 (10000-0)/2+0 = 5000 0 100 0 (10000-0)/2+0 = 5000 Server B
ICA Client Data Collector Server A Server B Dynamic Store Load Throttling x60 Server  Load BIAS Server A (10000-0)/2+0 = 5000 0 0 (10000-7500)/2+7500 = 8750 (10000-5000)/2+5000 = 7500 6000 (10000-6000)/2+6000 = 8000 0 Server B
Работа DRS
CPU Overcommit – зло для XenApp CPU Overcommit
esxcfg-advcfg --set 100 /Cpu/HaltingIdleMsecPenalty Ожидается патч от vmware, подробности от Scott Drummonds  - http://aibu.ru/y2D HyperThreading
Что это:  ,[object Object]
Выставление приоритетов определенным  пользователям или приложениямCPU Utilization Management and RebalancerServices
DRS не приносит выгоды на выделенном пуле серверов. По утрам DRS будет работать, после этого нет. При множестве маленьких серверов функция CPU Utilization Management не дает эффекта vSphereбалансирует CPU между серверами, XenAppмежду пользователями Балансировка нагрузки
Вспоминаем Опять про память

Weitere ähnliche Inhalte

Was ist angesagt?

Дизайн небольшого ЦОД часть 2
Дизайн небольшого ЦОД часть 2Дизайн небольшого ЦОД часть 2
Дизайн небольшого ЦОД часть 2
Cisco Russia
 
Решения DEPO Computers для консолидации данных и серверной виртуализации на б...
Решения DEPO Computers для консолидации данных и серверной виртуализации на б...Решения DEPO Computers для консолидации данных и серверной виртуализации на б...
Решения DEPO Computers для консолидации данных и серверной виртуализации на б...
DEPO Computers
 
Dynamic Memory в Windows Server 2008 R2 SP1
Dynamic Memory в Windows Server 2008 R2 SP1Dynamic Memory в Windows Server 2008 R2 SP1
Dynamic Memory в Windows Server 2008 R2 SP1
Andrey Beshkov
 
Чему мы научились разрабатывая микросервисы?
Чему мы научились разрабатывая микросервисы?Чему мы научились разрабатывая микросервисы?
Чему мы научились разрабатывая микросервисы?
Vadim Madison
 
24 hop sql_in_to_wa_1c _19march_2014_russian
24 hop sql_in_to_wa_1c _19march_2014_russian24 hop sql_in_to_wa_1c _19march_2014_russian
24 hop sql_in_to_wa_1c _19march_2014_russian
Maksim Lemeshko
 
Symantec Backup Exec 2014 – быстрая, гибкая и надежная защита. Symantec. Макс...
Symantec Backup Exec 2014 – быстрая, гибкая и надежная защита. Symantec. Макс...Symantec Backup Exec 2014 – быстрая, гибкая и надежная защита. Symantec. Макс...
Symantec Backup Exec 2014 – быстрая, гибкая и надежная защита. Symantec. Макс...
Fujitsu Russia
 
Vmware
VmwareVmware
Vmware
kvz
 

Was ist angesagt? (20)

Дизайн небольшого ЦОД часть 2
Дизайн небольшого ЦОД часть 2Дизайн небольшого ЦОД часть 2
Дизайн небольшого ЦОД часть 2
 
Symantec, Швыдченко Иван
Symantec, Швыдченко ИванSymantec, Швыдченко Иван
Symantec, Швыдченко Иван
 
Преимущества серверного оборудования DEPO Сomputers и ПО Windows Server
Преимущества серверного оборудования DEPO Сomputers и ПО Windows ServerПреимущества серверного оборудования DEPO Сomputers и ПО Windows Server
Преимущества серверного оборудования DEPO Сomputers и ПО Windows Server
 
Новые модели серверов DEPO Storm на базе Intel Xeon. Практический опыт постро...
Новые модели серверов DEPO Storm на базе Intel Xeon. Практический опыт постро...Новые модели серверов DEPO Storm на базе Intel Xeon. Практический опыт постро...
Новые модели серверов DEPO Storm на базе Intel Xeon. Практический опыт постро...
 
Презентация проекта "Виртуализация десктопов - революция начинается сейчас!"
Презентация проекта "Виртуализация десктопов - революция начинается сейчас!"Презентация проекта "Виртуализация десктопов - революция начинается сейчас!"
Презентация проекта "Виртуализация десктопов - революция начинается сейчас!"
 
СКАЛА-Р. Российская конвергентная вычислительная платформа
СКАЛА-Р. Российская конвергентная вычислительная платформаСКАЛА-Р. Российская конвергентная вычислительная платформа
СКАЛА-Р. Российская конвергентная вычислительная платформа
 
Решения DEPO Computers для консолидации данных и серверной виртуализации на б...
Решения DEPO Computers для консолидации данных и серверной виртуализации на б...Решения DEPO Computers для консолидации данных и серверной виртуализации на б...
Решения DEPO Computers для консолидации данных и серверной виртуализации на б...
 
Dynamic Memory в Windows Server 2008 R2 SP1
Dynamic Memory в Windows Server 2008 R2 SP1Dynamic Memory в Windows Server 2008 R2 SP1
Dynamic Memory в Windows Server 2008 R2 SP1
 
Чему мы научились разрабатывая микросервисы?
Чему мы научились разрабатывая микросервисы?Чему мы научились разрабатывая микросервисы?
Чему мы научились разрабатывая микросервисы?
 
Бесплатная виртуализация Citrix XenServer для компаний
Бесплатная виртуализация Citrix XenServer для компанийБесплатная виртуализация Citrix XenServer для компаний
Бесплатная виртуализация Citrix XenServer для компаний
 
Длинная транзакция или когда размер имеет значение / Михаил Балаян (Odin — In...
Длинная транзакция или когда размер имеет значение / Михаил Балаян (Odin — In...Длинная транзакция или когда размер имеет значение / Михаил Балаян (Odin — In...
Длинная транзакция или когда размер имеет значение / Михаил Балаян (Odin — In...
 
Как построить кластер для расчета сотен тысяч high-CPU/high-MEM-задач и не ра...
Как построить кластер для расчета сотен тысяч high-CPU/high-MEM-задач и не ра...Как построить кластер для расчета сотен тысяч high-CPU/high-MEM-задач и не ра...
Как построить кластер для расчета сотен тысяч high-CPU/high-MEM-задач и не ра...
 
Soft layer IBM Cloud platform and GPU
Soft layer IBM Cloud platform and GPUSoft layer IBM Cloud platform and GPU
Soft layer IBM Cloud platform and GPU
 
Дедупликация. Нет громоздким ленточным библиотекам
Дедупликация. Нет громоздким ленточным библиотекамДедупликация. Нет громоздким ленточным библиотекам
Дедупликация. Нет громоздким ленточным библиотекам
 
Презентация проекта "Виртуальное частное облако инструмент снижения TCO"
Презентация проекта "Виртуальное частное облако инструмент снижения TCO"Презентация проекта "Виртуальное частное облако инструмент снижения TCO"
Презентация проекта "Виртуальное частное облако инструмент снижения TCO"
 
Docker в виртуальной среде VMware
Docker в виртуальной среде VMwareDocker в виртуальной среде VMware
Docker в виртуальной среде VMware
 
24 hop sql_in_to_wa_1c _19march_2014_russian
24 hop sql_in_to_wa_1c _19march_2014_russian24 hop sql_in_to_wa_1c _19march_2014_russian
24 hop sql_in_to_wa_1c _19march_2014_russian
 
ITGeekON (Windows Deployment Services)
ITGeekON (Windows Deployment Services)ITGeekON (Windows Deployment Services)
ITGeekON (Windows Deployment Services)
 
Symantec Backup Exec 2014 – быстрая, гибкая и надежная защита. Symantec. Макс...
Symantec Backup Exec 2014 – быстрая, гибкая и надежная защита. Symantec. Макс...Symantec Backup Exec 2014 – быстрая, гибкая и надежная защита. Symantec. Макс...
Symantec Backup Exec 2014 – быстрая, гибкая и надежная защита. Symantec. Макс...
 
Vmware
VmwareVmware
Vmware
 

Andere mochten auch

тема 2 2.техническое обеспечение компьютера
тема 2 2.техническое обеспечение компьютератема 2 2.техническое обеспечение компьютера
тема 2 2.техническое обеспечение компьютера
mrprizrak
 
030
030030
030
JIuc
 
028
028028
028
JIuc
 
024
024024
024
JIuc
 
56
5656
56
JIuc
 

Andere mochten auch (14)

Магистрально модульный принцип построения пк
Магистрально модульный принцип построения пкМагистрально модульный принцип построения пк
Магистрально модульный принцип построения пк
 
Процессор
ПроцессорПроцессор
Процессор
 
тема 2 2.техническое обеспечение компьютера
тема 2 2.техническое обеспечение компьютератема 2 2.техническое обеспечение компьютера
тема 2 2.техническое обеспечение компьютера
 
Swt qt ese2010
Swt qt ese2010Swt qt ese2010
Swt qt ese2010
 
Presentation Amd Cpu
Presentation Amd CpuPresentation Amd Cpu
Presentation Amd Cpu
 
030
030030
030
 
Nehalem - подробности
Nehalem - подробностиNehalem - подробности
Nehalem - подробности
 
Лекция №4 Организация ЭВМ и систем (продолжение)
Лекция №4 Организация ЭВМ и систем (продолжение)Лекция №4 Организация ЭВМ и систем (продолжение)
Лекция №4 Организация ЭВМ и систем (продолжение)
 
028
028028
028
 
024
024024
024
 
Лекция № 3 Организация ЭВМ и систем
Лекция № 3 Организация ЭВМ и системЛекция № 3 Организация ЭВМ и систем
Лекция № 3 Организация ЭВМ и систем
 
56
5656
56
 
Intel desktop processors
Intel desktop processorsIntel desktop processors
Intel desktop processors
 
The State of Sales & Marketing at the 50 Fastest-Growing B2B Companies
The State of Sales & Marketing at the 50 Fastest-Growing B2B CompaniesThe State of Sales & Marketing at the 50 Fastest-Growing B2B Companies
The State of Sales & Marketing at the 50 Fastest-Growing B2B Companies
 

Ähnlich wie Citrix on VMware

Проектирование высоконагруженного масштабируемого веб-сервиса в облаке на при...
Проектирование высоконагруженного масштабируемого веб-сервиса в облаке на при...Проектирование высоконагруженного масштабируемого веб-сервиса в облаке на при...
Проектирование высоконагруженного масштабируемого веб-сервиса в облаке на при...
Ontico
 
Тестирование и оптимизация 1С-Битрикс (Александр Демидов, Олег Бунин)
Тестирование и оптимизация 1С-Битрикс (Александр Демидов, Олег Бунин)Тестирование и оптимизация 1С-Битрикс (Александр Демидов, Олег Бунин)
Тестирование и оптимизация 1С-Битрикс (Александр Демидов, Олег Бунин)
Ontico
 
Дмитрий Меньшиков "Топ-10 фейлов на реальном highload проекте"
Дмитрий Меньшиков "Топ-10 фейлов на реальном highload проекте"Дмитрий Меньшиков "Топ-10 фейлов на реальном highload проекте"
Дмитрий Меньшиков "Топ-10 фейлов на реальном highload проекте"
Fwdays
 
Инструкция по настройке сервиса виртуальное рабочее место для Windows ттк
Инструкция по настройке сервиса  виртуальное рабочее место для Windows тткИнструкция по настройке сервиса  виртуальное рабочее место для Windows ттк
Инструкция по настройке сервиса виртуальное рабочее место для Windows ттк
Елена Кузовкина
 
Lobanov_Cloud-Comput..
Lobanov_Cloud-Comput..Lobanov_Cloud-Comput..
Lobanov_Cloud-Comput..
webhostingguy
 
Виртуализация критически важных приложений
Виртуализация критически важных приложенийВиртуализация критически важных приложений
Виртуализация критически важных приложений
Jack Chikovany
 
DUMP-2013 Serverside - Архитектура Битрикс24 в Amazon Web Services – изнутри ...
DUMP-2013 Serverside - Архитектура Битрикс24 в Amazon Web Services – изнутри ...DUMP-2013 Serverside - Архитектура Битрикс24 в Amazon Web Services – изнутри ...
DUMP-2013 Serverside - Архитектура Битрикс24 в Amazon Web Services – изнутри ...
it-people
 

Ähnlich wie Citrix on VMware (20)

Microsoft Virtualization(Plex)
Microsoft Virtualization(Plex)Microsoft Virtualization(Plex)
Microsoft Virtualization(Plex)
 
Проектирование высоконагруженного масштабируемого веб-сервиса в облаке на при...
Проектирование высоконагруженного масштабируемого веб-сервиса в облаке на при...Проектирование высоконагруженного масштабируемого веб-сервиса в облаке на при...
Проектирование высоконагруженного масштабируемого веб-сервиса в облаке на при...
 
Совместные решения Citrix и Dell для правильной организации рабочих мест
Совместные решения Citrix и Dell для правильной организации рабочих местСовместные решения Citrix и Dell для правильной организации рабочих мест
Совместные решения Citrix и Dell для правильной организации рабочих мест
 
1С-Битрикс - Производительность
1С-Битрикс - Производительность1С-Битрикс - Производительность
1С-Битрикс - Производительность
 
Term And Virt2
Term And Virt2Term And Virt2
Term And Virt2
 
Полная автоматизация развертываний ПО: общие концепции, пример реализации, ср...
Полная автоматизация развертываний ПО: общие концепции, пример реализации, ср...Полная автоматизация развертываний ПО: общие концепции, пример реализации, ср...
Полная автоматизация развертываний ПО: общие концепции, пример реализации, ср...
 
Тестирование и оптимизация 1С-Битрикс (Александр Демидов, Олег Бунин)
Тестирование и оптимизация 1С-Битрикс (Александр Демидов, Олег Бунин)Тестирование и оптимизация 1С-Битрикс (Александр Демидов, Олег Бунин)
Тестирование и оптимизация 1С-Битрикс (Александр Демидов, Олег Бунин)
 
Новые возможности Windows Server 2016 и его преимущества для решения Ваших би...
Новые возможности Windows Server 2016 и его преимущества для решения Ваших би...Новые возможности Windows Server 2016 и его преимущества для решения Ваших би...
Новые возможности Windows Server 2016 и его преимущества для решения Ваших би...
 
Дмитрий Меньшиков "Топ-10 фейлов на реальном highload проекте"
Дмитрий Меньшиков "Топ-10 фейлов на реальном highload проекте"Дмитрий Меньшиков "Топ-10 фейлов на реальном highload проекте"
Дмитрий Меньшиков "Топ-10 фейлов на реальном highload проекте"
 
Как жить в облаке почти без админов: мониторинг и эксплуатация сотен виртуаль...
Как жить в облаке почти без админов: мониторинг и эксплуатация сотен виртуаль...Как жить в облаке почти без админов: мониторинг и эксплуатация сотен виртуаль...
Как жить в облаке почти без админов: мониторинг и эксплуатация сотен виртуаль...
 
Как жить в облаке почти без админов: мониторинг и эксплуатация сотен виртуаль...
Как жить в облаке почти без админов: мониторинг и эксплуатация сотен виртуаль...Как жить в облаке почти без админов: мониторинг и эксплуатация сотен виртуаль...
Как жить в облаке почти без админов: мониторинг и эксплуатация сотен виртуаль...
 
Инструкция по настройке сервиса виртуальное рабочее место для Windows ттк
Инструкция по настройке сервиса  виртуальное рабочее место для Windows тткИнструкция по настройке сервиса  виртуальное рабочее место для Windows ттк
Инструкция по настройке сервиса виртуальное рабочее место для Windows ттк
 
Инструкция по настройке сервиса виртуальное рабочее место для Windows ттк
Инструкция по настройке сервиса  виртуальное рабочее место для Windows тткИнструкция по настройке сервиса  виртуальное рабочее место для Windows ттк
Инструкция по настройке сервиса виртуальное рабочее место для Windows ттк
 
Lobanov_Cloud-Comput..
Lobanov_Cloud-Comput..Lobanov_Cloud-Comput..
Lobanov_Cloud-Comput..
 
Вячеслав Смирнов - Инструменты нагрузочного тестирования
Вячеслав Смирнов - Инструменты нагрузочного тестированияВячеслав Смирнов - Инструменты нагрузочного тестирования
Вячеслав Смирнов - Инструменты нагрузочного тестирования
 
ERP-системы в облаке: разбор кейсов DataLine
ERP-системы в облаке: разбор кейсов DataLineERP-системы в облаке: разбор кейсов DataLine
ERP-системы в облаке: разбор кейсов DataLine
 
Оптимизация производительности среды VDI
Оптимизация производительности среды VDIОптимизация производительности среды VDI
Оптимизация производительности среды VDI
 
Виртуализация критически важных приложений
Виртуализация критически важных приложенийВиртуализация критически важных приложений
Виртуализация критически важных приложений
 
DUMP-2013 Serverside - Архитектура Битрикс24 в Amazon Web Services – изнутри ...
DUMP-2013 Serverside - Архитектура Битрикс24 в Amazon Web Services – изнутри ...DUMP-2013 Serverside - Архитектура Битрикс24 в Amazon Web Services – изнутри ...
DUMP-2013 Serverside - Архитектура Битрикс24 в Amazon Web Services – изнутри ...
 
АИС Аффилированность (upgrade)
АИС Аффилированность (upgrade)АИС Аффилированность (upgrade)
АИС Аффилированность (upgrade)
 

Mehr von Denis Gundarev

How to fail or succeed with desktop virtualization and workspace mobility
How to fail or succeed with desktop virtualization and workspace mobilityHow to fail or succeed with desktop virtualization and workspace mobility
How to fail or succeed with desktop virtualization and workspace mobility
Denis Gundarev
 
Application Virtualization overview - BayCUG
Application Virtualization overview - BayCUGApplication Virtualization overview - BayCUG
Application Virtualization overview - BayCUG
Denis Gundarev
 
BriForum 2013 Chicago - Citrix Troubleshooting - Denis Gundarev
BriForum 2013 Chicago - Citrix Troubleshooting - Denis GundarevBriForum 2013 Chicago - Citrix Troubleshooting - Denis Gundarev
BriForum 2013 Chicago - Citrix Troubleshooting - Denis Gundarev
Denis Gundarev
 
DaaS/IaaS Forum Moscow - Ivo Murris
DaaS/IaaS Forum Moscow - Ivo MurrisDaaS/IaaS Forum Moscow - Ivo Murris
DaaS/IaaS Forum Moscow - Ivo Murris
Denis Gundarev
 
DaaS/IaaS Forum Moscow - Chris Rogers
DaaS/IaaS Forum Moscow - Chris RogersDaaS/IaaS Forum Moscow - Chris Rogers
DaaS/IaaS Forum Moscow - Chris Rogers
Denis Gundarev
 
DaaS/IaaS Forum Moscow - Najat Messaoud
DaaS/IaaS Forum Moscow - Najat MessaoudDaaS/IaaS Forum Moscow - Najat Messaoud
DaaS/IaaS Forum Moscow - Najat Messaoud
Denis Gundarev
 
DaaS/IaaS Forum Moscow - Rick Dehlinger
DaaS/IaaS Forum Moscow - Rick DehlingerDaaS/IaaS Forum Moscow - Rick Dehlinger
DaaS/IaaS Forum Moscow - Rick Dehlinger
Denis Gundarev
 
Hypervisor and VDI security
Hypervisor and VDI securityHypervisor and VDI security
Hypervisor and VDI security
Denis Gundarev
 

Mehr von Denis Gundarev (20)

VMware App Volumes Troubleshooting
VMware App Volumes TroubleshootingVMware App Volumes Troubleshooting
VMware App Volumes Troubleshooting
 
How to encrypt everything that moves and keep it usable
How to encrypt everything that moves and keep it usableHow to encrypt everything that moves and keep it usable
How to encrypt everything that moves and keep it usable
 
Citrix Internals: Tracing, Debugging & Troubleshooting
Citrix Internals: Tracing, Debugging & TroubleshootingCitrix Internals: Tracing, Debugging & Troubleshooting
Citrix Internals: Tracing, Debugging & Troubleshooting
 
Application Streaming is dead. A smart way to choose an alternative
Application Streaming is dead. A smart way to choose an alternativeApplication Streaming is dead. A smart way to choose an alternative
Application Streaming is dead. A smart way to choose an alternative
 
Citrix Internals: ICA Connectivity
Citrix Internals: ICA ConnectivityCitrix Internals: ICA Connectivity
Citrix Internals: ICA Connectivity
 
SAML and Other Types of Federation for Your Enterprise
SAML and Other Types of Federation for Your EnterpriseSAML and Other Types of Federation for Your Enterprise
SAML and Other Types of Federation for Your Enterprise
 
How to build a Citrix infrastructure on AWS
How to build a Citrix infrastructure on AWSHow to build a Citrix infrastructure on AWS
How to build a Citrix infrastructure on AWS
 
How to fail or succeed with desktop virtualization and workspace mobility
How to fail or succeed with desktop virtualization and workspace mobilityHow to fail or succeed with desktop virtualization and workspace mobility
How to fail or succeed with desktop virtualization and workspace mobility
 
Application Virtualization overview - BayCUG
Application Virtualization overview - BayCUGApplication Virtualization overview - BayCUG
Application Virtualization overview - BayCUG
 
BriForum 2013 Chicago - Citrix Troubleshooting - Denis Gundarev
BriForum 2013 Chicago - Citrix Troubleshooting - Denis GundarevBriForum 2013 Chicago - Citrix Troubleshooting - Denis Gundarev
BriForum 2013 Chicago - Citrix Troubleshooting - Denis Gundarev
 
Deep dive in Citrix Troubleshooting
Deep dive in Citrix TroubleshootingDeep dive in Citrix Troubleshooting
Deep dive in Citrix Troubleshooting
 
SYN507: Reducing desktop infrastructure management overhead using “old school...
SYN507: Reducing desktop infrastructure management overhead using “old school...SYN507: Reducing desktop infrastructure management overhead using “old school...
SYN507: Reducing desktop infrastructure management overhead using “old school...
 
DaaS/IaaS Forum Moscow - Ivo Murris
DaaS/IaaS Forum Moscow - Ivo MurrisDaaS/IaaS Forum Moscow - Ivo Murris
DaaS/IaaS Forum Moscow - Ivo Murris
 
DaaS/IaaS Forum Moscow - Chris Rogers
DaaS/IaaS Forum Moscow - Chris RogersDaaS/IaaS Forum Moscow - Chris Rogers
DaaS/IaaS Forum Moscow - Chris Rogers
 
DaaS/IaaS Forum Moscow - Najat Messaoud
DaaS/IaaS Forum Moscow - Najat MessaoudDaaS/IaaS Forum Moscow - Najat Messaoud
DaaS/IaaS Forum Moscow - Najat Messaoud
 
DaaS/IaaS Forum Moscow - Rick Dehlinger
DaaS/IaaS Forum Moscow - Rick DehlingerDaaS/IaaS Forum Moscow - Rick Dehlinger
DaaS/IaaS Forum Moscow - Rick Dehlinger
 
Hypervisor and VDI security
Hypervisor and VDI securityHypervisor and VDI security
Hypervisor and VDI security
 
How to hack Citrix (So, You Just Inherited Someone Else's Citrix Environment....
How to hack Citrix (So, You Just Inherited Someone Else's Citrix Environment....How to hack Citrix (So, You Just Inherited Someone Else's Citrix Environment....
How to hack Citrix (So, You Just Inherited Someone Else's Citrix Environment....
 
RUCUG: 9. Sergey Khalyapin: Представляем XenDesktop 5
RUCUG: 9. Sergey Khalyapin: Представляем XenDesktop 5RUCUG: 9. Sergey Khalyapin: Представляем XenDesktop 5
RUCUG: 9. Sergey Khalyapin: Представляем XenDesktop 5
 
RUCUG: 6. Fabian Kienle - NetScaler and Branch Repeater for Hyper-V
RUCUG: 6. Fabian Kienle - NetScaler and Branch Repeater for Hyper-VRUCUG: 6. Fabian Kienle - NetScaler and Branch Repeater for Hyper-V
RUCUG: 6. Fabian Kienle - NetScaler and Branch Repeater for Hyper-V
 

Citrix on VMware

  • 1. Оптимизация продуктов Citrix под VMware Денис Гундарев, независимый консультант gundarev@itbubble.ru blog.itbubble.ru twitter.com/fdwl
  • 2.
  • 3. Денис Гундарев Независимый консультант gundarev@itbubble.ru blog.itbubble.ru twitter.com/fdwl
  • 4. ТУТ БЫЛО 40 СЛАЙДОВ ПРО ПРЕЙМУЩЕСТВА ВИРТУАЛИЗАЦИИ Зачем виртуализироватьXenApp?
  • 5. Причины проблем с XenAppна vSphere Завышенные ожидания по консолидации серверов Терминальные сервера это клиентская ОС! Слишком много маркетинга Отсутствие рекомендаций http://www.vmware.com/pdf/esx2_citrix_planning.pdf (2005 год!) Реальность не имеет отношения к синтетическим тестам Спец по виртуализации ≠ спец по терминальным серверам
  • 6. Thin Client SupportTSO comes to NTlower per-client costs Dedicated Windows terminal Net PC Existing, Desktop PC MS-DOS, UNIX, Mac clients Windows NT Server with “Hydra” Server 1997
  • 7.
  • 8.
  • 10. Единственный сервер в инфраструктуре с большим количеством процессов • Context Switches • Page Faults • Process creation/destruction • MMU intensive Page Table updates SMP VM much higher overhead – per vCPU page tables • Real-life workloads vary drastically Специфика XenApp
  • 11. Что нужно помнить про память 
  • 12. 32-Bit Windows Memory Architecture50%-50% System PTEs (~900 MB) 4 GB (2^32) address space 2 GB kernel mode address space Shared across processes 2 GB user mode address space Each process has it’s own Kernel address space includes System Page Table Entry (PTE) area KM thread stacks Paged Pool page tables, kernel objects System Cache file cache, registry Kernel(2 GB) Paged Pool (~270 MB) System Cache (~500 MB) Non Paged Pool, images, etc. Apps User (2 GB)
  • 13. 32-Bit Windows Memory Architecturewith /PAE switch in BIOS System PTEs (~900 MB) 64 GB (2^36) address space Requires Enterprise Version of Windows Server OS 2 GB kernel mode address space Shared across processes 62 GB total user mode address space Each application has it’s own 1.5 GB of virtual space Kernel address space includes System Page Table Entry (PTE) area KM thread stacks Paged Pool page tables, kernel objects System Cache file cache, registry Paged Pool (~270 MB) Kernel(2 GB) System Cache (~500 MB) Non Paged Pool, images, etc. User (62 GB) Apps
  • 14.
  • 15. 8 TB Kernel virtual address space (VA)
  • 17. 8 TB User virtual address space
  • 18. Each 64-bit process has it’s own space
  • 19. Each 32-bit app runs in a virtual 2 GB WOW: Windows-on-Windows
  • 21. System Page Table Entry (PTE) area – KM thread stacks 128 GB
  • 22. Paged Pool – page tables, kernel objects 128 GB
  • 23. System Cache – file cache, registry 1 TB
  • 24. Others (Non Paged Pool 128 GB)Kernel VA (8 TB) Paged Pool (128 GB) System Cache (1 TB) Non Paged Pool (128 GB) User VA (8 TB) Apps
  • 25. x32 ОС может использовать только 4 Gb памяти. (точка) А вот ключ /3GB – памяти будет больше! А у ядра памяти не будет, 5 пользователей забьют NonPagedPool А вот с ключом /PAE памяти больше! У ядра осталось 2 Gb, при большом количестве процессов, PTE съест ее раньше чем приложения доступную память Разница в стоимости между Windows Enterprise и Standard заставляет думать ВЫВОД: x32 Standard виртуализируемв любом случае. Методы тренировки памяти
  • 27. IMA Session Space Kernel Mode WIN32K.SYS (GDI) TERMDD WDICA DISPLAY DRIVER VDTW30.DLL TDTCP Элементы терминальных служб SERVER BASED SESSION BASED Windows Logon Winlogon.EXE Terminal Service SvcHost.exe TERMSRV.DLL (W2K: TERMSRV.EXE) Session manager SMSS.EXE Client server Runtime Subsystem CSRSS.EXE Application and Services Per Session Protocol Extension WSXICA.DLL User Mode Session Space
  • 28. SMSS (WindowsNT SessionManager) Ожидает подключения от терминального сервиса Создает сессию пользователя (essions Directory in Object Manager, Session Space, DOS Devices (C: COM1, LPT1, etc.) Стартует процессы логона (Winlogon.exeи Csrss.exe)
  • 29. TS  SMSS  CSRSS, WINLOGON LPC mSsWinStationApiPort CSRSS CreateProcess SMSS Session Manager LPC mApiPort Terminal Services CreateProcess WINLOGON EVENT/LPC
  • 30. Старт CSRSS (client/server run-time subsystem) 1. Инициализация 2. Подключение устройств ввода/вывода 3. Создание Window Manager 4. Старт диспетчера печати 5. Оповещение терминальных служб о готовности
  • 31. Reverse LPC and CSRSS calls SMWinstationDoConnect Terminal Services CSRSS USER KERNEL WIN32K Display Driver Старт WinLogon WinLogonобщается с терминальным сервисом и ждет логона пользователя. Event WinLogon RPC (TS WINLOGON)
  • 32. Startup Processes на Server 2003 Session Manager (SMSS) создает Winlogonи Csrssдля каждой сессии Сессии создаются последовательно Бутылочное горлышко для Terminal Services
  • 33. Startup Processes наServer 2008 В Windows Server 2008 Smssклонирует себя для каждой новой сессии Это позволяет создавать сессии одновременно Максимум параллельно создаваемых сессий равно количеству процессоров Сессия 0 стартует все сервисы Сессии 1-n создают только то, что необходимо в конкретной сессии, системные сервисы уже запущены
  • 34. Первые выводы: Два маленьких сервера лучше одного большого Для Win 2008 – больше vCPU - быстрее логоны Логонможет занимать больше минуты, в это время ресурсы сервера максимально нагружены Внутренности терминальных служб
  • 35. Виртуальными и физическими Балансировка нагрузки между серверами
  • 36. По количеству пользователей на сервер По расписанию По IP-адресу По счетчикам производительности Processor(_Total)% Processor Time SystemContext Switches/sec Memory% Committed Bytes In Use MemoryPage Faults/sec MemoryPages/sec PhysicalDisk(_Total)Disk Bytes/sec PhysicalDisk(_Total)Disk Reads/sec PhysicalDisk(_Total)Disk Writes/sec По комбинации параметров Методы балансировки XenApp
  • 37. Каждый сервер оценивает свою загрузку числом от 0 до 10000 и сообщает ее коллектору данных Коллектор данных направляет пользователя на самый свободный сервер Специальная формула для регулирования нагрузки при вводе новых серверов и массовых утренних логонахВременная=текущая + [(10000– текущая) / ILBMultiplier] Обновление метрик: После logon или logoff При изменении нагрузки +/- 500 Дополнительные проверки актуальности данных раз в 30 секунд Методы балансировки XenApp
  • 38. ICA Client Data Collector Server A Server B Dynamic Store Load Throttling - Low logon rate Server Load BIAS Server A 0 100 0 (10000-0)/2+0 = 5000 0 100 0 (10000-0)/2+0 = 5000 Server B
  • 39. ICA Client Data Collector Server A Server B Dynamic Store Load Throttling x60 Server Load BIAS Server A (10000-0)/2+0 = 5000 0 0 (10000-7500)/2+7500 = 8750 (10000-5000)/2+5000 = 7500 6000 (10000-6000)/2+6000 = 8000 0 Server B
  • 41. CPU Overcommit – зло для XenApp CPU Overcommit
  • 42. esxcfg-advcfg --set 100 /Cpu/HaltingIdleMsecPenalty Ожидается патч от vmware, подробности от Scott Drummonds - http://aibu.ru/y2D HyperThreading
  • 43.
  • 44. Выставление приоритетов определенным пользователям или приложениямCPU Utilization Management and RebalancerServices
  • 45. DRS не приносит выгоды на выделенном пуле серверов. По утрам DRS будет работать, после этого нет. При множестве маленьких серверов функция CPU Utilization Management не дает эффекта vSphereбалансирует CPU между серверами, XenAppмежду пользователями Балансировка нагрузки
  • 47. Управление памятью ВМ Guest Virtual Address Guest Virtual Address Гостевая ОС определяет GVA-to-GPA Shadow page tables объединяет эти представляения, потому как процессор умеет работать только с один уровнем трансляции Guest Physical Address Гипервизор определяет GPA-to-SPA System Physical Address System Physical Address Накладные расходы- заполнение и отчистка страниц памяти вызывается гипервизором- отнимает много процессорного времени, до 10%
  • 48. Second Level Address Translation(SLAT) Новая технология с разными названиями Intel называет это Extended Page Tables (EPT) AMD называет это Nested Page Tables (NPT) илиRapid Virtualization Indexing (RVI) Процессор поддерживает два уровня адресации Работа с таблицами памяти ВМ напрямую Нет необходимости поддерживать Shadow Page Table Гипервизор не выполняет работу по трансляции памяти Уменьшение накладных расходов Загрузка процессора гипервизором падает до 2% Около 1MB на ВМ сохраняется
  • 49. To vMMU or not to vMMU
  • 50. Пользователь стартует приложение , которое загружает DLL1 в память, DLL1 не имеет уникального адреса загрузки, поэтому загружается в адрес по умолчанию Пользователь запускает второе приложение, оно загружает DLL2, тоже без базового адреса, загрузчик меняет смещения в коде приложения, при этом выделяется двойной объем памяти Запускается третье приложение Virtual Memory Optimization ПАМЯТЬ Ссылки на адреса DLL2 DLL2 0x20000000 DLL1 0x10000000 DLL2 0x10000000 Ссылки на адреса DLL2
  • 52. TPS не работает для терминальных серверов TPS может заработать, если включить Citrix VMO Baloon – зло для терминального сервера Память
  • 53. Отделите XenAppот других серверов Разделяйте роли XenApp AMD RVI и Intel EPT No overcommitting on CPU 2 vCPU 4Gb Ram НЕТ P2V! Только новая установка Используйте vmxnet Прочие рекомендации
  • 54. XenDesktop System Overview Licensing ICA XenApp Farm LDAP WI 5.0 DDC Servers looser AD Web Svc ICA WebService LDAP VM Host (XenServer, MS Virtual Server 2005, VMware) VMs or Blades
  • 55. Windows 7 на ESX – нет подключения Удалите WDDM video driver от vmware (CTX123952 ) Pool management установите vmware SDK на vCenter Установите сертификат на vCenter User Profile Manager конфликтует с Shared Folders XenDesktop
  • 56. B C A Provisioning Server Ферма Один Provisioning Server (Потоковая служба) Ферма Два Сетевое хранилище Ферма Три Сервера перезагружаются. ОС & Приложения потоково доставляются по сети.
  • 57. Загрузка сервера DHCP IP address Target Device PXE DHCP Server TFTP IPName NBP TFTP NBP Streaming Service vDisk Provisioning Server w/ PXE Service Installed
  • 58. Используйте последние версии PVS STOP 0x0000007B – верните диск VM! Даже если вы сделаете vmбез диска – vMotionперестанет работать Vmware tools должны быть установлены первыми Обновлениеvmware tools - CTX115211 1Gb диск в target Device - CTX123337 vSphere + Provisioning Server

Hinweis der Redaktion

  1. ЗачастуюWrong expectations• Server consolidation ratios• User scalability• Application performanceБольше патчей, хороших и новых
  2. page table entriesPhysical Address Extension
  3. Каждый сервер оценивает свою загрузку числом от 0 до 10000 и сообщает ее коллектору данныхКоллектор данных направляет пользователя на самый свободный серверСпециальные формулы для корректного распределения пользователей при вводе новых серверов и массовых утренних логонах
  4. VMWare ESX Compatibility with Provisioning Server Boot Device Manager (BDM)For Provisioning Server 4.5 SP2 or earlier the BDM does not function with VMWare ESX 3.0 and 3.5 when the bootstrap is configured to use DHCP. The resulting ISO file is not bootable within a virtual machine because of file format and bootstrap incompatibilities when this option is selected. To successfully use the BDM feature you must configure the bootstrap to use static IP addresses. This issue has been fixed in Provisioning Server 5.0 Service Pack 1a or later.Streaming Truly Diskless Virtual MachinesAn ESX virtual machine with no local hard drive attached fail to network boot to a Provisioning Server vDisk. During the boot process the VM crashes with a STOP 0x0000007B blue screen error. This is caused by how VMWare handles virtual machines that are not configured with local storage — the disk controller itself is not loaded if no local drives are present. Because the Windows operating system requires a disk controller to be present to boot to any form of local storage, even a virtual hard drive mounted using PXE, Windows crashes when the vDisk mount is attempted during boot. VMWare ESX provides no option to configure a virtual machine with only a disk controller and no local drives. The workaround for this issue is to attach a very small local hard drive to the virtual machine (can be less than 10MB). This allows the VM to configure the disk controller to use to mount the vDisk during the PXE boot process.VirtualCenter Virtual Machine RequirementsIn VirtualCenter virtual machines, the guest operating systems must use SCSI hard disks (though CD-ROM drives can be configured as IDE).