Independent management architecture internals

803 views
620 views

Published on

Independent management architecture internals

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
803
On SlideShare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
0
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Independent management architecture internals

  1. 1. Independent Management Architecture Internals Kapil Ramlal Tim Card Global Escalation Team, Citrix Systems, Inc. 1 | © 2006 Citrix Systems, Inc.—All rights reserved.
  2. 2. Agenda Independent Management Architecture (IMA) Overview Farm Data IMA Case Studies Introduction to Citrix MedEvac 2 | © 2006 Citrix Systems, Inc.—All rights reserved.
  3. 3. Agenda Independent Management Architecture (IMA) Overview Farm Data IMA Case Studies Introduction to Citrix MedEvac 3 | © 2006 Citrix Systems, Inc.—All rights reserved.
  4. 4. What is the IMA Service? Citrix Independent Management Architecture • A collection of subsystems that control the various features of the Citrix Presentation Server (CPS) family of products • Allows the use of the Presentation Server Console (PSC) or the Access Suite Console for centralized administration The backbone of the Citrix Presentation Server family. 4 | © 2006 Citrix Systems, Inc.—All rights reserved.
  5. 5. IMA Subsystems What are they? • A subsystem is a DLL (*.dll) file. •  These make IMA modular so that new subsystems can be added or existing subsystems can be modified • The subsystems interact via a messaging layer •  It routes data to the subsystems on the Presentation Servers in the farm • These dynamics link libraries can be found in the following directory: C:Program FilesCitrixSystem32CitrixIMASubsystems 5 | © 2006 Citrix Systems, Inc.—All rights reserved.
  6. 6. Agenda Independent Management Architecture (IMA) Overview Farm Data Farm Data IMA Case Studies Introduction to Citrix MedEvac 6 | © 2006 Citrix Systems, Inc.—All rights reserved.
  7. 7. Farm Data In relation to IMA •  Static - Data Store (DS) •  Information that changes infrequently •  Published applications, load evaluators, Citrix administrators, Citrix policies etc. •  Local Host Cache (LHC) is a subset of data contained in the DS •  Located on every server 7 | © 2006 Citrix Systems, Inc.—All rights reserved. •  Dynamic – Data Collector (DC) •  Information that changes frequently •  Sessions, disconnected sessions, load, etc. •  Responsible for resolutions
  8. 8. IMA Data Structures Dynamic Data •  Located in tables which are stored in memory on the Data Collector (Dynamic Store). •  Can be viewed by using QueryDS.exe (not installed by default, located on the CPS media) •  Connected and Disconnected Sessions •  Server capabilities •  Published applications, servers online, servers offline, etc. 8 | © 2006 Citrix Systems, Inc.—All rights reserved.
  9. 9. IMA Data Structures Local Host Cache (LHC) •  An Access database located on every CPS server in the farm •  (Program FilesCitrixIndependent Management Architecture imalhc.mdb) •  A subset of the Data Store containing only information required by that server •  Allows the server to operate if the Data Store goes down •  Must exist and be accessible for the IMA Service to start 9 | © 2006 Citrix Systems, Inc.—All rights reserved.
  10. 10. IMA Data Structures LHC Troubleshooting •  DSMAINT VERIFYLHC [ /AUTOREPAIR ] •  DSMAINT RECREATELHC •  Must stop IMA service •  PSRequired set to 1 •  LHC is backed up - IMA.MDB.BAK •  DSMAINT COMPACTDB [/DS] [/LHC] •  LHCSizer – Counts number of records in LHC •  Enable Resolution Failure Event logging PSE400W2K3R02 HKLM SoftwareCitrixIMALogResolutionFailure •  LHC ODBC Event Logging •  PSE400W2K3R02 [#115579] 10 | © 2006 Citrix Systems, Inc.—All rights reserved.
  11. 11. IMA Data Structures Data Store •  Can be an Access, MSDE, SQL, Oracle, or DB2 database •  The Central Repository for static farm information such as: •  Number of servers •  Published applications •  Installed licenses (FR3 and below only) •  Citrix Administrators •  Installed Printers •  Load evaluators 11 | © 2006 Citrix Systems, Inc.—All rights reserved.
  12. 12. Starting the IMA Service Service Control Manager ImaRpcSs.dll ImaSrvSs.dll ImaAppSs.dll MfSrvSs.dll Required Plug-ins ImaUserSs.dll ImaGrpSs.dll ImaRuntime Ss.dll IMASrv.exe MfBrowserSs.dll ImaDomain.dll ImaRelSs.dll RMAlertsSS.dll ImaAdminSs.dll RMMonitorSS.dll ImaRaSs.dll RMSummaryDBSS.dll ……………….. PSRequired HKLMSoftwareCitrixIMARuntime PSRequired=0 Zone Data Collector 12 | © 2006 Citrix Systems, Inc.—All rights reserved. LHC PSRequired=1 LHC Product Plug-ins
  13. 13. IMA Components Review Dynamic Store Volatile Data MPS XP Server Data Collector IMA TCP Port 2512 ODBC Local Host Cache Citrix Management Console QueryDS Will dump Out Raw Data MPS XP Server ODBC Data Store Local Host Cache 13 | © 2006 Citrix Systems, Inc.—All rights reserved. DSCheck Detect and correct Data Store Errors
  14. 14. IMA Components Review 14 | © 2006 Citrix Systems, Inc.—All rights reserved.
  15. 15. Agenda Independent Management Architecture (IMA) Overview Farm Data IMA Case Studies IMA Case Studies Introduction to Citrix MedEvac 15 | © 2006 Citrix Systems, Inc.—All rights reserved.
  16. 16. IMA Case Studies Real World Examples 16 | © 2006 Citrix Systems, Inc.—All rights reserved.
  17. 17. IMA Service Fails to Start During Installation of Presentation Server Troubleshooting FR3 Dependencies •  Turn on MSI tracing (msiexec /i mps30.msi /l*v c:msi.log) •  Start IMA service returned error in CTX_MF_IMA_StartIMAService Error = 1068 •  net helpmsg 1068 •  The dependency service or group failed to start •  Did all of the dependent services start? • Resolution • Enable The IPSec Services 17 | © 2006 Citrix Systems, Inc.—All rights reserved.
  18. 18. IMA Service Fails to Start During Installation of Presentation Server 18 | © 2006 Citrix Systems, Inc.—All rights reserved.
  19. 19. Troubleshooting “IMA hang” issues Troubleshooting External •  Qwinsta Hangs ? (Qwinsta /debug) Dependencies •  Quser Hang? Term Serv Qfarm Qfarm /Online Stop The IMA serivice Userdump •  IMA Service Kill (Kill –f) IMA PID •  Data Store ODBC Check MDAC Levels on XP and DataStore (SQL 2000 SP 3a) •  Data Store Locks •  19 | © 2006 Citrix Systems, Inc.—All rights reserved. •  (SQL SP_WHO)
  20. 20. Troubleshooting with QueryDS.exe Case Study •  Users unable to connect to published applications •  Qfarm /load shows a zero load value •  Troubleshooting •  queryds /table:ServiceTable •  Name: 0 •  Host: XPSERVER Should be a HEX number •  Resolution •  Chfarm into an access datastore then rejoin the farm •  Review CTX103017 for more information 20 | © 2006 Citrix Systems, Inc.—All rights reserved.
  21. 21. Troubleshooting with QueryDS.exe 21 | © 2006 Citrix Systems, Inc.—All rights reserved.
  22. 22. IMA Query Timeout RM LM IMASQL Serializes DS access IM Print SS RM LM Database causes threads to queue until IMA is unresponsive IMASQL.DLL IM Print SS RM LM IM Print SS 22 | © 2006 Citrix Systems, Inc.—All rights reserved. The Query timeout fix will allow IMASQL to close the connect and allow the next thread to be processed
  23. 23. IMA Query Timeout Fix •  PSE400W2K3R02 [From PSE400W2K3009] [#113648] HKLMSoftwareCitrixIMA Name: DB_CONNECTION_TIMEOUT Type: REG_DWORD Data: <timeout value, seconds> HKLMSoftwareCitrixIMA Name: DB_TIMEOUT_DELAY Type: REG_DWORD Data: <timeout delay, in seconds> 23 | © 2006 Citrix Systems, Inc.—All rights reserved.
  24. 24. ‘Farm Data Key’ Case Study Issues • CPS server appears to be offline • Presentation Server Console displaying inconsistent session information 24 | © 2006 Citrix Systems, Inc.—All rights reserved.
  25. 25. ‘Farm Data Key’ Case Study Troubleshooting • Using Citrix DSView (included with the support tools on the Citrix Presentation Server Media), you can compare the “DATA” registry value on the CPS server to what’s in the Farm’s Data Store • The “DATA” value on the server can be found at: HKLMSoftwareCitrixIMAData Name: DATA Type: REG_DWORD Data: Farm ID - Hex Value (Must add permissions to the “Data” registry key to see its values) 25 | © 2006 Citrix Systems, Inc.—All rights reserved.
  26. 26. ‘Farm Data Key’ Case Study • Using Citrix DSView running on a CPS server, navigate to the following: • “ServerNeighborhoods” à • FarmName[CLASS-ContextNode] à • subFarmName[CLASS-ContextNode] à • FarmData[CLASS-BaseClass] à • ATTRIBUTE-FarmData à • Hex Value identifying FarmData value 26 | © 2006 Citrix Systems, Inc.—All rights reserved.
  27. 27. ‘Farm Data Key’ Case Study • Using Citrix DSView running on a CPS server, navigate to the following: “ServerNeighborhoods” • “ServerNeighborhoods” à • FarmName[CLASS-ContextNode] à • subFarmName[CLASS-ContextNode] à • FarmData[CLASS-BaseClass] à • ATTRIBUTE-FarmData à • Hex Value identifying FarmData value 27 | © 2006 Citrix Systems, Inc.—All rights reserved.
  28. 28. ‘Farm Data Key’ Case Study • Using Citrix DSView running on a CPS server, navigate to the following: • “ServerNeighborhoods” à FarmName[CLASS-ContextNode] • FarmName[CLASS-ContextNode] à • subFarmName[CLASS-ContextNode] à • FarmData[CLASS-BaseClass] à • ATTRIBUTE-FarmData à • Hex Value identifying FarmData value 28 | © 2006 Citrix Systems, Inc.—All rights reserved.
  29. 29. ‘Farm Data Key’ Case Study • Using Citrix DSView running on a CPS server, navigate to the following: • “ServerNeighborhoods” à • FarmName[CLASS-ContextNode] à subFarmName[CLASS-ContextNode] • subFarmName[CLASS-ContextNode] à • FarmData[CLASS-BaseClass] à • ATTRIBUTE-FarmData à • Hex Value identifying FarmData value 29 | © 2006 Citrix Systems, Inc.—All rights reserved.
  30. 30. ‘Farm Data Key’ Case Study • Using Citrix DSView running on a CPS server, navigate to the following: • “ServerNeighborhoods” à • FarmName[CLASS-ContextNode] à • subFarmName[CLASS-ContextNode] à FarmData[CLASS-BaseClass] • FarmData[CLASS-BaseClass] à • ATTRIBUTE-FarmData à • Hex Value identifying FarmData value 30 | © 2006 Citrix Systems, Inc.—All rights reserved.
  31. 31. ‘Farm Data Key’ Case Study • Using Citrix DSView running on a CPS server, navigate to the following: • “ServerNeighborhoods” à • FarmName[CLASS-ContextNode] à • subFarmName[CLASS-ContextNode] à • FarmData[CLASS-BaseClass] à ATTRIBUTE-FarmData • ATTRIBUTE-FarmData à • Hex Value identifying FarmData value 31 | © 2006 Citrix Systems, Inc.—All rights reserved.
  32. 32. ‘Farm Data Key’ Case Study • Using Citrix DSView running on a CPS server, navigate to the following: • “ServerNeighborhoods” à • FarmName[CLASS-ContextNode] à • subFarmName[CLASS-ContextNode] à • FarmData[CLASS-BaseClass] à • ATTRIBUTE-FarmData à • Hex Value identifying FarmData value value Hex Value identifying FarmData 32 | © 2006 Citrix Systems, Inc.—All rights reserved.
  33. 33. ‘Farm Data Key’ Case Study Resolution • Check the ‘FarmData’ value in the registry and ensure that it compares to the value in the Farm’s Data Store HKLMSoftwareCitrixIMAData Name: DATA Type: REG_DWORD Data: Farm ID - Hex Value 33 | © 2006 Citrix Systems, Inc.—All rights reserved.
  34. 34. The “On-Ramp” Dilemma PROBLEM: •  Introducing a new server to the Farm, causes all incoming connections to the farm to be routed to it. Thus creating an “On-Ramp” condition, and eventually causing the server to become overloaded with sessions until no more connections are accepted. •  This creates a “Black Hole” symptom in the Farm •  Often seen during peak production hours 34 | © 2006 Citrix Systems, Inc.—All rights reserved.
  35. 35. The “On-Ramp” Dilemma TROUBLESHOOTING: •  Capturing Common Diagnostic Facility (CDF) tracing on the IMA subsystems responsible for ‘Load Management’, on the member servers and the Zone Data Collectors (ZDC) revealed the cause within the Load Management subsystem of IMA •  The Citrix Development Team introduced advanced ‘Load Management’ algorithms that better calculate the ‘Load Bias’ values and allows for tuning a “Slow Start Load Balancing” method 35 | © 2006 Citrix Systems, Inc.—All rights reserved.
  36. 36. The “On-Ramp” Dilemma Fix RESOLUTION: •  Slow-Start Load Balancing! •  This uses Intelligent Load Biasing •  Can be “Tuned” via the registry HKEY_LOCAL_MACHINESOFTWARECitrixIMALMSILBMultiplier Default value is set to “2” Increasing this value allows more concurrent logons 36 | © 2006 Citrix Systems, Inc.—All rights reserved.
  37. 37. Gateway Validation Interval Case Study ISSUE: •  Gateway Validation Interval Registry Value Introduces Application Launch Failures in High Latency Environments Troubleshooting: •  Attempts to launch published applications fail with this error message: “An error occurred when connecting to the MetaFrame server to launch the application. Please make sure that the MetaFrame server is running and that the network is functioning.”  •  Additionally, when Web Interface is used, a launch.html file may be returned instead of a launch.ica file (right-click and select “Save target as” on the application icon) 37 | © 2006 Citrix Systems, Inc.—All rights reserved.
  38. 38. Gateway Validation Interval Case Study TROUBLESHOOTING: •  Capturing CDF tracing on the zone data collectors, on the following IMA modules revealed the cause of the issue: •  MF_DLL_Wsxica •  MF_Service_CtxXmlSS •  IMA_Sals_MfServer •  IMA_Subsystems_Browser •  IMA_Subsystems_MfServer •  IMA_System_System •  IMA_Runtime_DynamicStore •  IMA_Runtime_ZoneManager •  IMA_Runtime_HostResolver •  IMA_Runtime_PersistentStore •  IMA_Runtime_Runtime •  IMA_System_Message 38 | © 2006 Citrix Systems, Inc.—All rights reserved.
  39. 39. Gateway Validation Interval Case Study RESOLUTION: • Setting the GatewayValidationInterval to a lower value in high latency environments can cause a problem launching applications in remote zones. • Citrix Technical Support does not recommend this registry value for high-latency environments. Remove this registry value and restart the IMA Service on the Zone Data Collectors 39 | © 2006 Citrix Systems, Inc.—All rights reserved.
  40. 40. Agenda Independent Management Architecture (IMA) Overview Farm Data IMA Case Studies Introduction to Citrix MedEvac Introduction to Citrix MedEvac 40 | © 2006 Citrix Systems, Inc.—All rights reserved.
  41. 41. Introduction to Citrix MedEvac 41 | © 2006 Citrix Systems, Inc.—All rights reserved.
  42. 42. Introduction to Citrix MedEvac What is Citrix MedEvac? •  A Windows 32-bit Utility used to simulate the ICA client browsing requests to test XML,Terminal Services,IMA & RPC functionality •  Uses method of Isolation based on Citrix Presentation Server Farm architecture to isolate Farm functionality 42 | © 2006 Citrix Systems, Inc.—All rights reserved.
  43. 43. Introduction to Citrix MedEvac •  The Citrix MedEvac Utility can be used anytime where isolating a problem Server is difficult (with respect to load balancing, XML, Terminal Services and RPC) •  To troubleshoot connectivity issues with published resources, such as the mysterious ‘black hole’ issue •  To run direct health checks against Citrix Presentation Servers 43 | © 2006 Citrix Systems, Inc.—All rights reserved.
  44. 44. Introduction to Citrix MedEvac “Medevac” Zone Request the Least Loaded Server Data Collector XML Broker IMA DS LHC XML Broker Direct LL Server Queries Server Farm XML Service TermSrv IMA Service RPC 44 | © 2006 Citrix Systems, Inc.—All rights reserved.
  45. 45. Introduction to Citrix MedEvac Web Interface Web Server The Least Loaded Server XML Broker XML IMA Service CCTicket.dll XML Ticket Request Termsrv CCTicket.dll End User Client Connection / Logon To The Citrix Server’s Published Application wsxica.dll ticket ticket 45 | © 2006 Citrix Systems, Inc.—All rights reserved. credentials credentials ticket credentials
  46. 46. Demos 46 | © 2006 Citrix Systems, Inc.—All rights reserved.
  47. 47. Introduction to Citrix MedEvac It verifies the following: ü The XML service ü The IMA service ü The Termsrv Service ü The RPC service It sends email alerts based on configuration 47 | © 2006 Citrix Systems, Inc.—All rights reserved.
  48. 48. Open Forum QUESTIONS? 48 | © 2006 Citrix Systems, Inc.—All rights reserved.

×