Citrix MFCOM Programming for Administrators October 2007
100 Applications 1000   Users 100,000 Clicks
Introductions <ul><li>Instructors   </li></ul><ul><li>Nitin Desai </li></ul><ul><li>Vishal Ganeriwala </li></ul><ul><li>Fa...
Agenda MFCOM Basics Start Using MFCOM Labs In Action Future And Takeaways
Agenda Agenda item number 1 Start Using MFCOM Labs In Action Future And Takeaways MFCOM Basics
What is MFCOM? <ul><li>COM-based management interface </li></ul><ul><li>Runs on every Citrix Presentation Server™ box </li...
Work Smarter and Faster Using MFCOM Integration with third-party software applications 3 Information reporting 2 Automate ...
How Does MFCOM Work ? MFCOM IMA LHC DCOM RPC SAL SAL SAL Data Store Data Collector Citrix Presentation Server Windows Mach...
Common MFCOM Objects Zones Farm Apps Servers Sessions Policies Servers Users Sessions Apps Processes VCs
Agenda Agenda item number 1 MFCOM Basics Labs In Action Future and Takeaways Start Using MFCOM
Today’s Setup For Class Demos DCOM Port 2512 Client Machine MPS SDK   Lab1CPS CPS 4.5 VM   Lab2CPS CPS 4.5 VM   DCOM IMA F...
How Can I Get Started? <ul><li>Download SDK from:  http://support.citrix.com/page.jspa?pageID=devCenter </li></ul><ul><li>...
Setting Up Client and Server  Machines <ul><li>Register the remote Citrix Presentation Server using:  mfreg <servername> <...
Sample Examples
MPSSDK Documentation <ul><li>MPSSDK Help System  </li></ul><ul><li>MFCOM browser  </li></ul><ul><ul><li>http:// www.jasonc...
Displaying Farm Name <ul><li>Use of VBScriptTemplate.wsf to add code </li></ul><ul><li>Use of MetaFrameFarm Object and its...
Navigating MFCOM … <ul><li>New version of interfaces with different releases </li></ul><ul><ul><li>MetaFrameFarm object : ...
Agenda Agenda item number 1 MFCOM Basics Start Using MFCOM Future And Takeaways Labs In Action
What Will You Learn? <ul><li>When and how to use MFCOM </li></ul><ul><li>Navigating the documentation </li></ul><ul><li>Us...
Labs: Commonly Done Presentation Server Administration Tasks <ul><li>Lab 1: Servers and Applications  </li></ul><ul><li>La...
Auditing Using Enumerations <ul><li>Object associations as a powerful tool for auditing </li></ul>Zones Farm Apps Servers ...
Lab 1 : Servers and Applications <ul><li>List servers and applications in the Farm. </li></ul><ul><li>List Applications on...
Simple Administration Tasks <ul><li>Creating new entities in the farm </li></ul><ul><ul><li>Create an Object in MFCOM </li...
Lab2 : Create a Load Evaluator <ul><li>Create a Load Evaluator </li></ul><ul><li>Set the name and description </li></ul><u...
Inside MFCOM <ul><li>COM Free threading model </li></ul><ul><li>Error reporting </li></ul><ul><ul><li>Limited error codes ...
Complex Management Tasks <ul><li>Connecting more than one entity in the farm </li></ul><ul><li>Series of tasks with proper...
Lab3 : Taking The Server Offline <ul><li>How to take the server offline for maintenance purpose gracefully? </li></ul><ul>...
Advanced MFCOM Usage <ul><li>Multi farm management </li></ul><ul><ul><li>Create objects on the multiple remote servers </l...
Extra Credit : Printing <ul><li>List printer drivers on every server </li></ul><ul><li>Use of MetaFrameServer and MetaFram...
Agenda Agenda item number 1 MFCOM Basics Start Using MFCOM Labs In Action Future and Takeaways
CPSSDK  <ul><li>Scalability  </li></ul><ul><ul><li>Highly scalable in large farm environment </li></ul></ul><ul><li>Usabil...
How Does CPSSDK Work ? IMACOM IMA LHC DCOM RPC SAL SAL SAL Data Store Data Collector Citrix Presentation Server Windows Ma...
Work Smarter and Faster Start Using MFCOM Today !
Before you leave… <ul><li>Overall conference survey is available online at  www.citrixiforum.com  starting Wednesday,  Oct...
 
Data Type:  LMRuleSchedule Start time End time Bit 15-0 Bit 31-16 Half hour Bit 4 Not used Bit 7-5 Day of week Hour (in mi...
Upcoming SlideShare
Loading in...5
×

Citrix Mfcom Programming For Administrators

6,482

Published on

This is a basic presentation done at Citrix IForum 2007 event. It is a good overview for anyone getting started with Citrix MFCOM

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

No Downloads
Views
Total Views
6,482
On Slideshare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
127
Comments
0
Likes
2
Embeds 0
No embeds

No notes for slide
  • Citrix Mfcom Programming For Administrators

    1. 1. Citrix MFCOM Programming for Administrators October 2007
    2. 2. 100 Applications 1000 Users 100,000 Clicks
    3. 3. Introductions <ul><li>Instructors </li></ul><ul><li>Nitin Desai </li></ul><ul><li>Vishal Ganeriwala </li></ul><ul><li>Facilitators </li></ul><ul><li>Fred Liu </li></ul><ul><li>Tom Kludy </li></ul><ul><li>Jeff Reed </li></ul>
    4. 4. Agenda MFCOM Basics Start Using MFCOM Labs In Action Future And Takeaways
    5. 5. Agenda Agenda item number 1 Start Using MFCOM Labs In Action Future And Takeaways MFCOM Basics
    6. 6. What is MFCOM? <ul><li>COM-based management interface </li></ul><ul><li>Runs on every Citrix Presentation Server™ box </li></ul><ul><li>Scriptable and COM programming language support </li></ul><ul><li>Remote execution </li></ul>
    7. 7. Work Smarter and Faster Using MFCOM Integration with third-party software applications 3 Information reporting 2 Automate administration tasks 1
    8. 8. How Does MFCOM Work ? MFCOM IMA LHC DCOM RPC SAL SAL SAL Data Store Data Collector Citrix Presentation Server Windows Machine SAL : Subsystem Access Layer
    9. 9. Common MFCOM Objects Zones Farm Apps Servers Sessions Policies Servers Users Sessions Apps Processes VCs
    10. 10. Agenda Agenda item number 1 MFCOM Basics Labs In Action Future and Takeaways Start Using MFCOM
    11. 11. Today’s Setup For Class Demos DCOM Port 2512 Client Machine MPS SDK Lab1CPS CPS 4.5 VM Lab2CPS CPS 4.5 VM DCOM IMA Farm Name: SDKDemo Data Store: Lab1CPS Zone Data Collector: Lab1CPS Servers : Lab1CPS & Lab2CPS
    12. 12. How Can I Get Started? <ul><li>Download SDK from: http://support.citrix.com/page.jspa?pageID=devCenter </li></ul><ul><li>Browse Script Repository http:// support.citrix.com/kb/category.jspa?categoryID =645&subCategoryID=645 </li></ul>
    13. 13. Setting Up Client and Server Machines <ul><li>Register the remote Citrix Presentation Server using: mfreg <servername> </li></ul><ul><li>Use dcomcnfg to change the Impersonation level from identity to impersonate on Windows XP </li></ul><ul><li>W2K3+SP1 CPS Server - Add remote MFCOM user to the DCOM Users Group </li></ul><ul><li>Make sure you have administrative privileges for the Citrix Farm </li></ul>
    14. 14. Sample Examples
    15. 15. MPSSDK Documentation <ul><li>MPSSDK Help System </li></ul><ul><li>MFCOM browser </li></ul><ul><ul><li>http:// www.jasonconger.com/ShowPost.aspx?strID =9686d808-19c0-4bad-a577-02d85f597a8d </li></ul></ul>
    16. 16. Displaying Farm Name <ul><li>Use of VBScriptTemplate.wsf to add code </li></ul><ul><li>Use of MetaFrameFarm Object and its methods </li></ul>
    17. 17. Navigating MFCOM … <ul><li>New version of interfaces with different releases </li></ul><ul><ul><li>MetaFrameFarm object : IMetaFrameFarm6 (CPS4.0) inherits from IMetaFrameFarm5 (CPS3.0) </li></ul></ul><ul><li>Scripts connect to the latest interfaces </li></ul><ul><li>C++ - Use QueryInterface </li></ul><ul><li>Drill down to appropriate level of object. </li></ul><ul><ul><li>MetaFrameServer Object: </li></ul></ul><ul><ul><ul><li>IMetaFrameServer </li></ul></ul></ul><ul><ul><ul><li>IMetaFrameWinServer </li></ul></ul></ul>Finding the relevant interface
    18. 18. Agenda Agenda item number 1 MFCOM Basics Start Using MFCOM Future And Takeaways Labs In Action
    19. 19. What Will You Learn? <ul><li>When and how to use MFCOM </li></ul><ul><li>Navigating the documentation </li></ul><ul><li>Using major MFCOM objects </li></ul><ul><li>Auditing the farm </li></ul><ul><li>Automating Citrix Presentation Server™ management tasks </li></ul>
    20. 20. Labs: Commonly Done Presentation Server Administration Tasks <ul><li>Lab 1: Servers and Applications </li></ul><ul><li>Lab 2: Create a Load Evaluator </li></ul><ul><li>Lab 3: Take the Server Offline </li></ul><ul><li>Extra Credit: </li></ul><ul><ul><li>Printing </li></ul></ul>
    21. 21. Auditing Using Enumerations <ul><li>Object associations as a powerful tool for auditing </li></ul>Zones Farm Apps Servers Sessions Sessions
    22. 22. Lab 1 : Servers and Applications <ul><li>List servers and applications in the Farm. </li></ul><ul><li>List Applications on each server. </li></ul><ul><li>List Servers for each application </li></ul><ul><li>Use of MetaFrameServer and MetaFrameApplication methods/properties. </li></ul>
    23. 23. Simple Administration Tasks <ul><li>Creating new entities in the farm </li></ul><ul><ul><li>Create an Object in MFCOM </li></ul></ul><ul><ul><li>Initialize the necessary data </li></ul></ul><ul><ul><li>SaveData – Saving data to IMA Datastore </li></ul></ul><ul><li>Changing the configuration settings for the existing entities </li></ul><ul><ul><li>Create an Object (CreateObject method) </li></ul></ul><ul><ul><li>Initialization – Initialize or set methods </li></ul></ul><ul><ul><li>LoadData – Loading data from IMA Datastore </li></ul></ul><ul><ul><li>Change the settings </li></ul></ul><ul><ul><li>SaveData – Save data back to IMA Datastore </li></ul></ul>
    24. 24. Lab2 : Create a Load Evaluator <ul><li>Create a Load Evaluator </li></ul><ul><li>Set the name and description </li></ul><ul><li>Create a LMRule for CPU utilization </li></ul><ul><li>Create a LMRules collection and add a rule </li></ul><ul><li>Set Load Evaluator Rules and save the data </li></ul><ul><li>Use of MetaFrameLoadEvaluator, MetaFrameLMRule and MetaFrameLMRules methods/properties. </li></ul>
    25. 25. Inside MFCOM <ul><li>COM Free threading model </li></ul><ul><li>Error reporting </li></ul><ul><ul><li>Limited error codes as HRESULT </li></ul></ul><ul><ul><li>Exceptions in. NET </li></ul></ul><ul><li>MFCOM user </li></ul><ul><ul><li>Current user vs. other user (runas) </li></ul></ul><ul><ul><li>MFCOM impersonates before calling IMA </li></ul></ul>
    26. 26. Complex Management Tasks <ul><li>Connecting more than one entity in the farm </li></ul><ul><li>Series of tasks with proper ordering </li></ul><ul><li>Repetitive pattern </li></ul><ul><li>Examples </li></ul><ul><ul><li>Take the server offline </li></ul></ul><ul><ul><li>Migrate applications from one farm to another </li></ul></ul><ul><ul><li>Remove the server from N applications </li></ul></ul>
    27. 27. Lab3 : Taking The Server Offline <ul><li>How to take the server offline for maintenance purpose gracefully? </li></ul><ul><li>Steps - </li></ul><ul><ul><li>Prevent the new connections </li></ul></ul><ul><ul><li>Communicate to the users </li></ul></ul><ul><ul><li>Let the connections drain </li></ul></ul><ul><ul><li>Logoff the sessions after timeout period </li></ul></ul><ul><li>Use of MetaFrameLoadEvaluator, MetaFrameSession and MetaFrameServer methods/properties. </li></ul>
    28. 28. Advanced MFCOM Usage <ul><li>Multi farm management </li></ul><ul><ul><li>Create objects on the multiple remote servers </li></ul></ul><ul><ul><li>C# - Activator method </li></ul></ul><ul><ul><li>VBScript - CreateObject((&quot;MetaFrameCOM.MetaFrameFarm&quot;, ServerName1) </li></ul></ul><ul><li>Event handling </li></ul><ul><ul><li>Server, Application and Folder Events </li></ul></ul><ul><ul><li>Create, update (rename), move and delete </li></ul></ul><ul><ul><li>MetaFrameFarmEvent enum, IMetaFrameEventQueue , CreateEventQueue2 method in MetaFrameFarm </li></ul></ul>
    29. 29. Extra Credit : Printing <ul><li>List printer drivers on every server </li></ul><ul><li>Use of MetaFrameServer and MetaFramePrinterDriver Methods </li></ul>
    30. 30. Agenda Agenda item number 1 MFCOM Basics Start Using MFCOM Labs In Action Future and Takeaways
    31. 31. CPSSDK <ul><li>Scalability </li></ul><ul><ul><li>Highly scalable in large farm environment </li></ul></ul><ul><li>Usability </li></ul><ul><ul><li>Consolidation of interfaces and methods </li></ul></ul><ul><ul><li>Enhanced consistency in object behavior </li></ul></ul><ul><ul><li>Easy multi-farm management </li></ul></ul><ul><li>Better .Net Support </li></ul><ul><ul><li>.NET assembly </li></ul></ul><ul><ul><li>.NET versioning and generics </li></ul></ul>Next-generation Presentation Server Management SDK
    32. 32. How Does CPSSDK Work ? IMACOM IMA LHC DCOM RPC SAL SAL SAL Data Store Data Collector Citrix Presentation Server Windows Machine CPSSDK Client Cached Data Chunky Calls SAL : Subsystem Access Layer
    33. 33. Work Smarter and Faster Start Using MFCOM Today !
    34. 34. Before you leave… <ul><li>Overall conference survey is available online at www.citrixiforum.com starting Wednesday, October 24 (please provide feedback) </li></ul><ul><li>Download workshop materials from www.citrixiforum.com starting Monday, October 29 </li></ul><ul><li>Leftover workshops handouts can be found at the HOT Assistance Center Desk </li></ul>
    35. 36. Data Type: LMRuleSchedule Start time End time Bit 15-0 Bit 31-16 Half hour Bit 4 Not used Bit 7-5 Day of week Hour (in military time format) Bit 3-0 Bit 15-8
    1. A particular slide catching your eye?

      Clipping is a handy way to collect important slides you want to go back to later.

    ×