More Related Content Similar to Citrix TechEdge 2014 - Best Practices for Implementing, Administering, and Troubleshooting XenDesktop 7.5 (20) More from David McGeough (11) Citrix TechEdge 2014 - Best Practices for Implementing, Administering, and Troubleshooting XenDesktop 7.51. Best Practices for Implementing, Administering,
and Troubleshooting XenDesktop 7.5
Shaun Wendland, Senior Escalation Engineer
May 6, 2014
SYN405
3. © 2014 Citrix. Confidential.3
Architecture and design considerations
for a successful deployment
Administration habits to help maintain
and support a XenDesktop 7.5 site
Troubleshooting tips and the top three
problem types
Resources discussed, Q&A
Agenda
4. Best Practices for Implementing
The XenDesktop 7.5 architecture and considerations for
successful deployment
5. © 2014 Citrix. Confidential.5
XenDesktop 7.5 architecture
Virtual Desktop
Agent
Delivery
Controller
SQL Database
6. © 2014 Citrix. Confidential.6
XenDesktop 7.5 architecture
The XenDesktop Delivery Controller
Facilitates distribution of applications and desktops
Coordinates with hypervisor
Manages the desktop states
Authenticates and manages user access
Brokers connections between users and target resources
7. © 2014 Citrix. Confidential.7
XenDesktop 7.5 architecture
The XenDesktop Delivery Controller
Delivery Controller ServicesAD Identity
Service
Machine
Creation
Service
Configuration
Service
Broker
Service
Host
Service
Delegated
Admin
Service
Configuration
Logging
Service
Citrix
Environment
Test Service
Monitoring
Service
8. © 2014 Citrix. Confidential.8
XenDesktop 7.5 architecture
The XenDesktop Database
Stores Site configuration, Configuration Logging, and
Monitoring data
Persistent DB availability is required
High-Availability and Fault Tolerance options
• Mirroring • Clustering
• Leveraging hypervisor H/A features
• Support for SQL 2012 AlwaysOn Availability Groups
9. © 2014 Citrix. Confidential.9
XenDesktop 7.5 architecture
The XenDesktop Database
Security
• Each controller has its own SQL login to
the database
- Machine account – DOMAINMACHINE$
• Controller permissions are restricted
• No rights to change the schemas
10. © 2014 Citrix. Confidential.10
XenDesktop 7.5 architecture
The XenDesktop Database
Support for assigning your site, configuration logging, and
monitoring schemas into separate databases
11. © 2014 Citrix. Confidential.11
XenDesktop 7.5 architecture
The XenDesktop Virtual Desktop Agents
Performs controller registration and manages the HDX
connection
VDA types
• Workstation VDA
- Single-user
• Server VDA
- Multi-user
- Remote Desktop Services (RDS) coordinates connections
13. © 2014 Citrix. Confidential.13
Design Best Practices
Understand the product design and basic how-tos
• XenDesktop 7.5 eDocs
Understand the factors within your environment that
influence the design
• Citrix Virtual Desktop Handbook 7.x
• Citrix XenDesktop 7.5 Blueprint Whitepaper
Leverage Citrix design resources
• Project Accelerator
14. © 2014 Citrix. Confidential.14
Project Accelerator
http://project.citrix.com
Design
Assess
16. © 2014 Citrix. Confidential.16
Administrative Best Practices
Take care of your XenDesktop database!
Establish a regular backup schedule
Occasionally review the size XenDesktop
database transaction logs
• DB growth due to VDA communication CTX139508
• May be preferable to use Simple recovery mode
Do a dry run of a failover scenario
17. © 2014 Citrix. Confidential.17
Manually redirecting your XenDesktop site to a failover
database location
• XenDesktop SDK PowerShell cmdlets:
Administrative Best Practices
Manual failover
1. Load XenDesktop snap-ins.
2. Get the existing database
connection strings.
Add-PSSnapin Citrix*
Get-LogDataStore
Get-MonitorDataStore
18. © 2014 Citrix. Confidential.18
Manually redirecting your XenDesktop site to a failover
database location
• XenDesktop SDK PowerShell cmdlets:
Administrative Best Practices
Manual failover
3. Set a variable for the new
connection string.
4. Disable configuration logging.
$cs = "Server=sqlsrvr2012b;Initial
Catalog=XD75Site;Integrated
Security=True“
Set-LogSite -State Disabled
19. © 2014 Citrix. Confidential.19
Manually redirecting your XenDesktop site to a failover
database location
• XenDesktop SDK PowerShell cmdlets:
Administrative Best Practices
Manual failover
5. Remove all the current
database connections
20. © 2014 Citrix. Confidential.20
Set-LogDBConnection -DataStore Logging -DBConnection $null
Set-MonitorDBConnection -DataStore Monitor -DBConnection $null
Set-MonitorDBConnection -DBConnection $null
Set-AcctDBConnection -DBConnection $null
Set-ProvDBConnection -DBConnection $null
Set-BrokerDBConnection -DBConnection $null
Set-EnvTestDBConnection -DBConnection $null
Set-SfDBConnection -DBConnection $null
Set-HypDBConnection -DBConnection $null
Set-ConfigDBConnection -DBConnection $null -force
Set-LogDBConnection -DBConnection $null -force
Set-AdminDBConnection -DBConnection $null -force
Administrative Best Practices
Removing current database connections
21. © 2014 Citrix. Confidential.21
Manually redirecting your XenDesktop site to a failover
database location
• XenDesktop SDK PowerShell cmdlets:
Administrative Best Practices
Manual failover
5. Remove all the current
database connections
6. Set all the database
connections to the new
connection string
22. © 2014 Citrix. Confidential.22
Set-ConfigDBconnection -DBConnection $cs
Set-AdminDBconnection -DBConnection $cs
Set-LogDBconnection -DBConnection $cs
Set-AcctDBconnection -DBConnection $cs
Set-BrokerDBconnection -DBConnection $cs
Set-EnvTestDBconnection -DBConnection $cs
Set-HypDBconnection -DBConnection $cs
Set-MonitorDBconnection -DBConnection $cs
Set-ProvDBconnection -DBConnection $cs
Set-SfDBconnection -DBConnection $cs
Set-LogDBConnection -DataStore Logging -DBConnection $cs
Set-MonitorDBConnection -DataStore Monitor -DBConnection $cs
Administrative Best Practices
Setting the database connections
23. © 2014 Citrix. Confidential.23
Manually redirecting your XenDesktop site to a failover
database location
• XenDesktop SDK PowerShell cmdlets:
Administrative Best Practices
Manual failover
7. Re-enable configuration
logging
8. For confirmation, test Broker
Service connectivity
Set-LogSite -State Enabled
Test-BrokerDBConnection $(Get-
BrokerDBConnection)
24. © 2014 Citrix. Confidential.24
Administrative Best Practices
Director offers real-time
assessment of a XenDesktop
environment
Provides details regarding the
health of the various XenDesktop
components
Offers functionality for
troubleshooting machines,
sessions, and connections
25. © 2014 Citrix. Confidential.25
Administrative Best Practices
Performance Monitoring Using Director
Infrastructure health overview
• Hosting alerts
• Delivery Controller service,
database, & license statuses
VDA health
• Failed start-ups and boots
• Unregistered machines
• Current load (Server OS)
• Connected systems
• Logon times
26. © 2014 Citrix. Confidential.26
Administrative Best Practices
Performance Monitoring Using Director
27. © 2014 Citrix. Confidential.27
Administrative Best Practices
Performance Monitoring Using Director
Session and connection health
• Activity manager
• Session details
• Machine details
29. © 2014 Citrix. Confidential.29
Troubleshooting Best Practices
When bad things happen to good environments
This is the first I’ve
tried this and it’s not
working.
Something changed
and I didn’t do it.
Something changed
and I’m the one that
caused it.
30. © 2014 Citrix. Confidential.30
Troubleshooting Best Practices
Methodology
Investigate
Analyze
Implement
31. © 2014 Citrix. Confidential.31
Troubleshooting Best Practices
Gathering data
XenDesktop data collection
• Deliver Controller Logging
- Event logs
- Controller service logging
• VDA Logging
- Event logs
- BrokerAgent logging
- PortICA logging
• Scout
- Environmental data
- XDPing
- CDF Tracing
32. © 2014 Citrix. Confidential.32
Troubleshooting – Machine creation
Case study: Catalog creation fails with an “unknown error” exception
33. © 2014 Citrix. Confidential.33
Troubleshooting – Machine creation
Case study: Catalog creation fails with an “unknown error” exception
34. © 2014 Citrix. Confidential.34
Troubleshooting – Machine creation
Case study: Catalog creation fails with an “unknown error” exception
New-ProvScheme -AdminAddress 'sw-xd75-ddc-01.get.services.citrite.net:80' -HostingUnitName 'Synergy Demo
Resources' -IdentityPoolName 'Synergy Demo' -LoggingId 85ed5a85-28a4-48f6-80b9-816a6585ef45 -MasterImageVM
'XDHyp:HostingUnitsSynergy Demo ResourcesSW-VDA-W7x64-01.vmOld Base.snapshotBase.snapshotVDA 7.1
RTM (Build 4033).snapshotCitrix_XD_Synergy Demo.snapshot' -NetworkMapping @{'0'='XDHyp:HostingUnitsSynergy
Demo ResourcesHappy Little VDA Network.network'} -ProvisioningSchemeName 'Synergy Demo' -RunAsynchronously -
Scope @() -VMCpuCount 2 -VMMemoryMB 2048
35. © 2014 Citrix. Confidential.35
Troubleshooting – Machine creation
Case study: Catalog creation fails with an “unknown error” exception
36. © 2014 Citrix. Confidential.36
Troubleshooting – Registration
Case study: Recently-booted pooled VDAs are intermittently not
registering
Test VDA -> Controller communication
• Ping the FQDN of the Controller
• Telnet to the IP address of the Controller on port 80
• Review port usage on the Controller using Netstat
Test Controller -> VDA communication
• Ping the FQDN of the VDA
• Telnet to the IP address of the VDA on port 80
• Review port usage on the VDA using Netstat
Confirm the time on both the Controller and the VDA
37. © 2014 Citrix. Confidential.37
Troubleshooting – Registration
Case study: Recently-booted pooled VDAs are intermittently not
registering
Verify ListOfDDCs value in the registry
38. © 2014 Citrix. Confidential.38
Troubleshooting – Registration
Case study: Recently-booted pooled VDAs are intermittently not
registering
Verify ListOfDDCs value in the registry
Use Scout / XDPing to identify issues between the
VDA and Controller
Enable VDA logging / Capture CDF traces
39. © 2014 Citrix. Confidential.39
Troubleshooting – Connection
Case study: Workstation VDA connection fails with no error
Desktop Viewer is loading
• Request is made to the Delivery Controller
• ICA file is received
• Connection attempt to the VDA is being made
Gathered VDA CDF traces to review
for potential cause
40. © 2014 Citrix. Confidential.40
Troubleshooting – Connection
Case study: Workstation VDA connection fails with no error
41. © 2014 Citrix. Confidential.41
Troubleshooting – Connection
Case study: Workstation VDA connection fails with no error
Dynamic memory settings
• Hyper-V Startup memory
- 32-bit: ≥1.5 GB
- 64-bit: ≥2.5 GB
43. © 2014 Citrix. Confidential.43
Resources
XenDesktop 7.5 eDocs – http://support.citrix.com/proddocs/topic/xenapp-xendesktop/cds-xenapp-
xendesktop-75-landing.html
Virtual Desktop Handbook 7.x – http://support.citrix.com/article/CTX139331
XenDesktop 7.5 Blueprint Whitepaper –
http://www.citrix.com/content/dam/citrix/en_us/documents/products-solutions/xendesktop-deployment-
blueprint.pdf
Project Accelerator – http://project.citrix.com/
XenDesktop 7.x Database Sizing – http://support.citrix.com/article/CTX139508
Citrix Blog: “New” Citrix Best Practices – http://blogs.citrix.com/2014/01/02/new-citrix-best-practices/