Friday, October 28, 2011

A hotfix rollup (build 4.0.3594.2) is available for Forefront Identity Manager 2010 (FIM2010)

Original link: http://support.microsoft.com/?id=2520954

This hotfix rollup package replaces the following hotfix rollup packages:
2502631  2417774  2272389  2028634  978864 

Fixed issues in Workflow Engine

  1. An error message: Cannot enlist in the transaction because a local transaction is in progress on the connection.
  2. The time stamp is the same as the time when the operation fails.

Fixed issues in Sync Engine

  1. Fixes an SQL query construction issue that occurs during an import. This issue affects a DB2 database that uses a non-Unicode character set.
  2. Fixes many "Export not reimported" errors that might occur because of errors in SQL.
  3. An ExpectedRulesEntry (ERE) object is associated to a child synchronisation rule of a Metaverse object. If the ERE object has a Remove action, deprovisioning of the object is also being triggered. which causes the deletion of the Metaverse object.
  4. Fixes an access violation when a custom extension calls a COM+ object.
  5. An earlier hotfix introduced a special Extensible Connectivity Management Agent (ECMA) mode to keep unconfirmed exports in escrow instead of awaiting confirmation. An issue with that hotfix causes delta sync to add new items that are not merged with an escrowed export into a pending export. After you install the hotfix that is mentioned in this article, if the ECMAAlwaysExportUnconfirmed registry entry is set to 1, the escrowed and pending changes are merged.
  6. Improves the performance of all Sync Engine operations.
  7. A password reset that uses the ADMAEnforcePasswordPolicy registry setting fails when the user is in the Administrator group but is not an administrator.

Fixed issues in Sets and Query

  1. Fixes an issue that would sometimes cause incorrect Set calculations. This resulted in lots of set corrections. Also revised the Sets Correction job so that it does not change special sets that are maintained by another system maintenance job.
  2. Revised the FIM "Query and Sets" features to treat underscores and precent signs as literals instead of as SQL wildcard characters.

Fixed issues in Certificate Management

  1. Enables the random number generator in the server key generation function.
  2. Improves the performance when enrolling a smartcard that has not previously been used with FIM Certificate Management (CM).

Fixed issues in FIM Management Agent (MA)

  1. Fixes an issue in which the FIM synchronisation service configuration for synchronisation rules and codeless provisioning was not correctly written to the FIM Service database.

Fixed issues in FIM Service

  1. Fixes an issue with SQL Server deadlocks that might occur during periods of high concurrency of requests or approvals.
  2. Fixes an issue in which unexpected data in the FIM Service database could result in the FIM MA causing the Synchronisation service to fail during import, and a stopped-server error occurred.
  3. Fixes an issue when you add or remove a value for a multivalued string attribute. If the request was subject to authorisation such as request reevaluation, the request would fail after approval.
  4. Some ExpectedRuleEntry objects and DetectedRuleEntry objects in FIM 2010 can become "orphaned" over time. When a DetectedRuleEntry object is not referenced in the DetectedRulesList of any object in the system, that object is determined to be orphaned. Similarly, when an ExpectedRuleEntry object is not referenced in the ExpectedRulesList of any object in the system, that object is also determined to be orphaned.

You still need KB979214 if you turned on the AD trashcan: http://davestechnology.blogspot.com/2011/07/w2k8-r2-ad-recycle-bin-and-fim.html

Turned on the Active Directory trash can only to find out the FIM (Forefront Identity Manager) has not stoped synchronising some objects? Well fear not, they are in sync, but to the trash folder!

Below shows an object that is in sync, but to the delete item. There is a hotfix for it that installs on the DC. KB979214 is the patch.

Monday, October 24, 2011

Single or dual CPU in VDI?

This is a really interesting article that shows in limited testing that additional CPUs for the client session will give a better overall performance to the VDI pool. Nice to see it tried and counter intuitive result that shows consuming more resource is better overall for the environment.

“

From this results, I can certainly say, an additional CPU will:

  • boost the streaming/boot up process
  • improve responsiveness and registration of virtual desktops
  • with an increased cost of the CPU hit on the hypervisor

So the takeaway will be:

  • If you are planning to go big with huge number of VMs lifecycling every day…
  • If you have large amount of working shifts which you may need to provision in advance…
  • If your cycling window need to be the shortest possible…

…in all those cases, an additional CPU will improve your cycling processes, reducing the registration gap of virtual desktops, with an additional cost of higher peak of host CPU utilisation, improving your infrastructure uptime.

“

Source: http://blogs.citrix.com/2011/10/23/will-2-vcpu-desktops-improve-your-uptime/

Friday, October 21, 2011

How to Optimise XenDesktop Machines

 

Original link:http://support.citrix.com/article/CTX125874 (Citrix Article)

The TargetOSOptimizer tool reconfigures various Windows functions to optimize the performance of the operating system for virtual desktops. Optimisation of the master VM is typically performed before the desktop catalogue is created.

Procedure

To optimise your master virtual machine, select the option to optimise the desktop when you install the Virtual Desktop Agent. This applies a predetermined set of optimisations specifically recommended for pooled and dedicated machines as part of the Virtual Desktop Agent installation process.

To apply additional optimizations to the master virtual machine at a later date, run the TargetOSOptimizer tool manually.

Optimisations are applied either through changes to the Windows registry or programmatically by disabling specific features. Some optimisations are only applicable to certain versions of Windows or, for physical machines, specific hardware such as particular network adapters.

A backup file named optimisations.reg is stored in the installation folder for the TargetOSOptimiser tool, typically located at C:\Program Files (x86)\Citrix\TargetOSOptimiser. Apply this file to the Windows registry to revert the most recent set of optimisations on the master virtual machine..

Specific Optimisations Performed by the Virtual Desktop Agent Installer

Disable Windows Autoupdate
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\
WindowsUpdate\Auto Update]
"AUOptions"=dword:00000001
"ScheduledInstallDay"=dword:00000000
"ScheduledInstallTime"=dword:00000003
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\wuauserv]
"Start"=dword:00000004

Disable Offline Files
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\NetCache]
"Enabled"=dword:00000000

Disable Disk Defragmentation BootOptimizeFunction
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Dfrg\BootOptimizeFunction]
"Enable"="N"

Disable Background Layout Service
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\
OptimalLayout]
"EnableAutoLayout"=dword:00000000

Disable System Restore
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\sr]
"Start"=dword:00000004
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\srservice]
"Start"=dword:00000004
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\SystemRestore]
"DisableSR"=dword:00000001

Disable Last Access Time Stamp
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FileSystem]
"NtfsDisableLastAccessUpdate"=dword:00000001

Disable Hibernate
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Power]
Various keys and values are set according to the version of Windows detected.

Disable CrashDump
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\CrashControl]
"CrashDumpEnabled"=dword:00000000
"LogEvent"=dword:00000000
"SendAlert"=dword:00000000

Disable Indexing Service
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\cisvc]
"Start"=dword:00000004

Reduce Event Log File Size to 64 kB
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Eventlog\
Application]
“MaxSize"=dword:00010000
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Eventlog\
Security]
"MaxSize"=dword:00010000
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Eventlog\
System]
"MaxSize"=dword:00010000

Reduce Internet Explorer Temporary File Cache
[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings\5.0\Cache\Content]
"CacheLimit"=dword:00000400 [HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings\Cache\Content]
"CacheLimit"=dword:00000400 [HKEY_USERS\.DEFAULT\Software\Microsoft\Windows\CurrentVersion\Internet Settings\5.0\Cache\Content]
"CacheLimit"=dword:00000400
[HKEY_USERS\.DEFAULT\Software\Microsoft\Windows\CurrentVersion\Internet Settings\Cache\Content]
"CacheLimit"=dword:00000400
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\
Internet Settings\Cache\Paths]
"Paths"=dword:00000004
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\
Internet Settings\Cache\Paths\path1]
"CacheLimit"=dword:00000100
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\
Internet Settings\Cache\Paths\path2]
"CacheLimit"=dword:00000100
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\
Internet Settings\Cache\Paths\path3]
"CacheLimit"=dword:00000100
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\
Internet Settings\Cache\Paths\path4]
"CacheLimit"=dword:00000100

Disable Clear Page File at Shutdown
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management]
"ClearPageFileAtShutdown"=dword:00000000

Disable Superfetch (Windows 7)
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\SysMain]
"Start"=dword:00000004

Disable Windows Defender (Windows 7)
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\WinDefend]
"Start"=dword:00000004
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\
Run]
"Windows Defender"=hex(2):00

Disable Windows Search (Windows 7)
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\WSearch]
"Start"=dword:00000004

Disable Scheduled Disk Defragmentation (Windows 7) Programmatic optimisation.

Additional Optimisations Available When Running the Tool Manually

Disable Move to Recycle Bin (Windows XP)
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\
Explorer\BitBucket]
“UseGlobalSettings"=dword:00000001
"NukeOnDelete"=dword:00000001

Disable Move to Recycle Bin (Windows 7)
[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer]
"NoRecycleFiles"=dword:00000001

Disable Machine Account Password Changes
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Netlogon\
Parameters]
"DisablePasswordChange"=dword:00000001

Disable UDP Checksum Offload (Only When a Broadcom NIC Is Detected)
Programmatic optimisation.

Friday, October 14, 2011

Citrix Licence server and Repeaters

According to: support.citrix.com/proddocs/topic/licensing-119/lic-fs-accessing-firewall-c.html

Firewall Considerations

If there is a firewall between your product and the license server, you need to configure port numbers. This configuration process entails:

  • Open up the firewall ports. Open any ports on the firewall that you modified so that traffic can flow. For Windows Server 2008, the license server Version 11.5 or later configures the built-in firewall automatically.

This is not my experience and instead needed to do so manually. If you use default port numbers for use by Licensing components you will need to manually create IP/TCP port exceptions for the following:

  • TCP/27000 License server (Citrix apps, XenDesktop etc.)
  • TCP/7279 Vendor daemon (Repeaters)
  • TCP/8082 Console Web (optional).

Wednesday, October 12, 2011

Citrix Branch Repeater VPX setup

Default login and set an IP Address

Login: admin
Password: password

Give it an IP, DNS and Name:

set adapter apa -ip YourIPaddress -netmask 255.255.255.0 –gateway YourRouter
set dns-server YourDNSserver
set hostname YourVPXname

Display details:

show interface
show adapter

Set admin password and create a new Admin:

add user -name UserName –password Password -privilege admin
set user -name admin –password YourPassword -privilege admin

Restart and test:

restart

 

Then go to a web browser: https://YourIPaddress  to licence via a central license server going to the

“System Tools: Manage Licenses”

  • License Server Location: Remote.
  • Remote License Server Address: Enter the IP address of your license server.
  • Remote License Server Port: The default will work unless you chose a non-standard port for your license server
  • Model: match the selection to the BW limit in your license, that is “Citrix Branch Repeater V10” refers to a 10 mbps license.

NOTE: #

69520. Description: After adding licenses to a license server that previously had
none, any Branch Repeater VPX units will fail to notice the new licenses for
24 hours
.

Recommended action: Restarting Branch Repeater VPX will cause the new
licenses to be noticed immediately. Stopping the license server for at least
15 minutes and then starting it again will also work.

Tuesday, October 11, 2011

Windows 7– lost thumbnail view

This has been killing me, but I found the answer, sorry I can’t credit the original poster.

  1. Open Control Panel
  2. Choose Folder Options
  3. Click the Views tab
  4. Uncheck "Always show Icons, never thumbnails"
  5. Uncheck "Display file icon on thumbnails"
  6. Click Reset Folders button.

Thank goodness !

SSH to a Citrix Repeater (Linux or VPX)

You can SSH to it using putty etc but the user name/password, does not work  and you get “Access Denied”.

Ahh, the user name is ‘CLI’

Then it will ask for the real user name, such as:

login as : cli

login: admin

password: ShhhhSecret11

image

Hey Presto!

Monday, October 10, 2011

XenDesktop pools verse dedicated machines

Choosing pooled verses dedicate machines depends mainly on the access and control you want to grant the user of the virtual desktop.

Pooled – good for task workers

  1. Pooled machines provide desktops that are allocated to users on a per-session, first-come first-served basis. For pooled-static machines, users are assigned a specific machine from the pool when they first log on to XenDesktop. Users are connected to the same machines for all subsequent sessions. This allows users of pooled-static machines to be associated with specific VMs, which is a licensing requirement for some applications.
  2. Pooled-random machines are arbitrarily assigned to users at each logon and returned to the pool when they log off. Machines returned to the pool are available for other users to connect to.

Pooled desktops are freshly created from the master VM when users log on via the provisioning server.

Any changes that users make to their desktops are stored for the duration of the session, but are discarded when users log off. Of course you can use profile manager to help with this and store the user details.

This solution maintains a manually created single master VM in the data centre dramatically reduces the time and effort required to update and upgrade users' desktops. This allows you to periodically replace this master for patches etc.

Dedicated – good for power users and administrators

  1. Dedicated machines provide desktops that are assigned to individual users. Machines can be assigned manually or automatically assigned to the first user to connect to them. Whenever users request a desktop, they are always connected to the same machine, so you can allow users to personalise their desktops to suit their needs.

Dedicated desktops are pre-created from the master VM via the snap-shot and the first time that users log on, they are assigned this machine. Several users can access the same machine (at different times).

Maintains an automatically created snap-shot of the catalogue master VM. But as for changes, the user has to look after the computer or you re-mint them a new image as needed.

Sources: http://support.citrix.com/proddocs/topic/xendesktop-rho/cds-choose-scheme-type-rho.html

Wednesday, October 05, 2011

Removing Licences from the Citrix Licence server

This is handy if you are using the Desktop Controller that lets you add licences such as the Repeater VPX but does not allow you to delete them. You can see them in the web console but not delete them.

You can manually delete license files that are no longer in use from their Windows directory and restart the service.

The license files are stored in:

  • C:\Program Files (x86)\Citrix\Licensing\MyFiles
  • Stop the Citrix Licensing services
  • Delete the old license files
  • Restart the Citrix Licensing Services

image

XenDesktop 5.5 and vSphere 5

Yes it is (almost) fully supported. Including the Virtual Distributed Switch (vDswitch). However you do need to upgrade the Provisioning Server (PVS) to v6 to support it as 5.6 fails if vDwitches are used.

If you are using the Machine Creation Service (MCS) then you don't need to do anything. However if you upgrade VMWare tools, you need to re-install the Citrix Virtual Desktop Agent VDA.

There is a short whitepaper here: http://support.citrix.com/article/CTX130681

We will be upgrading today.

Additional Information Sources:

http://blogs.citrix.com/author/johnfa

http://blogs.citrix.com/author/richm

Thursday, September 29, 2011

XenApp 6.5 reboot schedule

Man, it used to be a tick in a box, but now it is a policy but can still be done. Here is how:

XenApp 6.5

Create the Worker Group

  • Right-click Worker Groups and select Create Worker Group.
  • In the Name field, type: Weekly Reboot
  • Click Add, and select the servers

Create the Citrix Policies

Launch the Delivery Services Console.
Click Policies, Computer, New, In the Name field, type: Weekly Reboot

In the Search All Settings field, type: reboot.

Scroll to:

  • Reboot Logon Disable Time and click Add.
  • Reboot Schedule Frequency and click Add.
  • Reboot Schedule Start Date and click Add.
  • Reboot Schedule Time and click Add.
  • Scheduled Reboots and click Add.
  • Click Enabled and then OK.

Click Add for Worker Group.

Click Add and type: Weekly Reboot

Save. Repeat the steps above for each additional Worker Group.

From a command prompt on one of the XenApp servers, type: gpupdate /force. Or just wait until the allocated time.

image

 

Source: http://support.citrix.com/article/CTX126043

XenDesktop on Hyper V–HostingUnitService error

 

Either using quick XenDesktop 5/55 deployment wizard or the standard desktop deployment you get this error:

 
"The environment for this connection type is incorrect. If connection type is SCVMM, SCVMM Admin console need to be installed on the same machine as the HostingUnitService is installed on.”

image

According to Citrix this means you need the SDK for SCVMM.

According to Microsoft the SDK for SCVMM is the PowerShell CMDlets. So to get the PowershellCMDlets install the SCVMM Administrator Console on the Desktop Delivery Controller computer.

Dispute a HostingUnitService sounding like a VMhost…

Wednesday, September 28, 2011

Issue licencing the Citrix Branch Repeater VPX?

Citrix are officially crap with the way they licence their software and always have been, but if you have used Citrix ever you know that but today they add another crap feather to that cap.

If you have a licence server it has a name, lets call it a hostname, that is what Citrix call it to and for a XenDesktop and XenApp licence that is what it is, but for the Branch Repeater the hostname is actually a FLEXnet Host ID that you get from a utility they provide not the hostname that they ask for.

image

So instead of the hostname go to the licence server, open a command windows as Administrator, go to C:\program file (x86)\Citrix\Licensing\LS and run “lmutil lmhostid”. The output number is what you need for the Citrix licence website.

image

IMPORTANT: In Branch Repeater VPX software release 5.6, only Express, Eval, NFR and IOUL licenses can
be installed locally. Use a remote / network Citrix license server for Production (RETAIL) licenses.

If you are using a firewall the License Server default ports are more then just 27000:

  • 27000 - Used by XenApp servers to communicate with the License Server
  • 8082 - The License Management Console (LMC) uses this port to communicate with the License Server
  • 7279 - Static port for the Citrix vendor daemon

OR disable the firewall if you don't love security.

Citrix do have an article on this: http://support.citrix.com/article/CTX128875

Tuesday, September 27, 2011

WAN with a latency?

 

There is a simple and free WAN simulator that Tara consulting have open sourced. This is how to use it for a quick and dirty 300ms delay simulation (in my case simulating India to the UK).

Software home page: http://wanem.sourceforge.net/

Link to download the virtual appliance: http://wanem.sourceforge.net/vma-server.html (or look for the v2.3 ISO)

The setup guide: http://downloads.sourceforge.net/project/wanem/Documents/WANemv11-Setup-Guide.pdf

Windows route change:
route add DestinationIPaddress mask 255.255.255.255 WanEmIPAddress

Linux route change:
route add –host DestinationIPaddress netmask 0.0.0.0 gw WanEmIPAddress

Ping the DestinationIPaddress and the response should be higher then the latency that you have configured.

Friday, September 23, 2011

Catalogues in XenDesktop v5.5 hide some details

 

So if you are trying to find what the original source VM for that catalogue in XenDesktop was, you can but it is ugly?

Get-ProvTask

Star looking, you can find your pool name and then the machine names, and hey presto, the MasterImage is right there:


TaskId                             : 4864f7c5-5fb7-46fc-bc05-eb6712bd051c
Active                             : False
Host                               : SYDVDI01
DateStarted                        : 18/07/2011 1:25:25 PM
Type                               : NewVirtualMachine
Metadata                           : {Citrix_DesktopStudio_DesktopCatalogId = 5, Citrix_DesktopStudio_ImagesToCopyCount
                                      = 1, Citrix_DesktopStudio_StartTime = 634465917882529544, Citrix_DesktopStudio_Ta
                                     skGroupId = c0e304b0-d5a7-41f3-8112-52eca1616465...}
WorkflowStatus                     : Completed
MasterImage                        : XDHyp:\HostingUnits\Sydney VDI\vid-7-soe-xxx.vm\Citrix_XD_xxx.snapshot
ProvisioningSchemeName             : xxx hey VDI
ProvisioningSchemeUid              : ac4a2cc8-6b19-496c-8f0d-f0cfb7c58b36
TaskState                          : Finished
TaskStateInformation               :
HostingUnitUid                     : db5fad7c-d053-47a3-85d2-f0bd8bcb715b
HostingUnitName                    : Sydney VDI
IdentityPoolUid                    : 80859e24-15b2-49dd-97b6-59738b0eb7d3
IdentityPoolName                   : POOL NAME
VirtualMachinesToCreateCount       : 5
VirtualMachinesCreatedCount        : 5
VirtualMachinesCreationFailedCount : 0
CreatedVirtualMachines             : {VDIexx004, VDIexx001, VDIePassxx003, VDIexx002...}
FailedVirtualMachines              : {}
ProvisioningJob                    : 098e166a-2ed4-45a6-808f-a02d8415ab34
ProvisioningStatus                 : Completed

XenDesktop MCS updating master


If you are using the Machine Creation Services (MCS) to created dedicated images, this does not really matter, but if you update the master and want to mint more VMs in the same catalogue (without affecting the current). This is how it works.

The MCS in XenDesktop 5.5 is pointed to a master image when a Catalogue is created. You can be pooled or dedicated:

  • Dedicated virtual desktops retain all changes, software installations, local data, in a local difference disk.
  • Pooled Catalogue virtual desktops do not retain changes, the difference disk is reset upon reboot.

When using pooled desktops, the base image can be updated allowing changes from the master disk to be replicated to the deployed VMs, providing for centralised patch and application management. Each deployed image, whether pooled or dedicated, will also contain an identity disk.

Master Image - Once a master image is identified (when the catalogue is created), a private-use clone of the VMDK is created for use by all the catalogue machines.

This cloned disk is separate from the Master Image VM, allowing that VM to be updated or deleted with no impact on the deployed virtual desktops.

This master image clone is copied to each VMware Data-store automatically.

Each catalogue is linked to its own master image clone. If multiple catalogues are defined, then multiple master clones will be generated.

A master image can be changed to a different disk using the following command in PowerShell: Publish-ProvMasterVmImage. This will only impact new machines created in the catalogue, not existing machines already generated.

I hope this helps explain the disks under the covers.

image

Sources:
http://forums.citrix.com/thread.jspa?messageID=1534982
http://www.thegenerationv.com/2011/03/xendesktop-5-deep-dive-machine-creation.html

Need to change the XenDesktop network?

 

When you install XenDesktop the installer asks you the default network during the installation, and does not let you change it in the GUI, but like everything it can be done via PowerShell:

Here is the offending entry below.

image

So, open powershell as administrator

Add the Citrix snapins

Asnp Citrix.*

You can see all the options with.

Get-Command –Module Citrix.*

But this is what we run to get out

get-item -path XDHyp:\HostingUnits\*

PSPath                 : Citrix.Host.Admin.V1\Citrix.Hypervisor::XDHyp:\hostingunits\VDIhost
PSParentPath           : Citrix.Host.Admin.V1\Citrix.Hypervisor::XDHyp:\hostingunits
PSChildName            : VDIhost
PSDrive                : XDHyp
PSProvider             : Citrix.Host.Admin.V1\Citrix.Hypervisor
PSIsContainer          : True
HostingUnitUid         : e1bd6ca2-a30b-40b1-8200-518e262da208
HostingUnitName        : VDIhost
HypervisorConnection   : MelbVDI
RootPath               : XDHyp:\Connections\MelbVDIm.d\M C P.cluster\VDI.res
                         ourcepool
RootId                 : resgroup-6718
NetworkPath            : XDHyp:\Connections\MelbVDI\m.d\M C P.cluster\VDI.res
                         ourcepool\VM Network.network
NetworkId              : Network:network-82
Storage                : {XDHyp:\Connections\MelbVDI\Melbourne.datacenter\M C P.cluster\VDI.re
                         sourcepool\MEL-T3-VMDK01.storage, XDHyp:\Connections\MelbVDI\m.d\M C P.cluster\VDI.resourcepool\MEL-T3-VMDK02.storage}
VMTaggingEnabled       : True
UseLocalStorageCaching : False
Metadata               : {}

Now you know your hosting unit name and the format for the network connection format for the VMware network name look at Virtual Centre.

image

Then set it using the new details


set-item xdhyp:\hostingunits\vdihost -networkpath "XDHyp:\Connections\MelbVDI\m.d\M C P.cluster\VDI.resourcepool\VDI restricted network.network"

Refresh the Desktop controller and voilà

image

References:

http://support.citrix.com/article/CTX128057

http://fourteenninetyfour.blogspot.com/2011/06/to-change-network-interfaces-on.html

Wednesday, September 21, 2011

Size does matter to Active Directory

I am working on a 200,000 user AD (large by Australian standards, about 10GB) and it got me thinking of limits and scale.

Domains and Domain controllers

  • There is a limit of 1,200 domain controllers due to SYSVOL FRS limits. This can be removed by moving to DFSr replication
  • Each domain controller in an Active Directory forest can create 2.15 billion objects during its lifetime
  • There is a limit of approximately 1 billion security identifiers (SIDs) over the life of a domain
  • OU names are limited to 64 characters
  • There is no limit to the depth of the OU structure
  • There is no limit to the number of users or other objects per OU
  • The maximum number of domains in a forest is 1200

Users and Groups

  • Display names are limited to 256 characters
  • Common names are limited to 64 characters
  • The SAM-Account-Name attribute (pre–Windows 2000 user logon name) is 256 characters in the schema. However, for backward compatibility the limit is 20 characters
  • Users, groups, and computer accounts can be members of a maximum of approximately 1,015 groups
  • Groups can have millions of members, and Microsoft scalability testing reached 500 million members. Use W2K8 mode.
  • The maximum recommended size for a Kerberos ticket is 65,535 bytes and when you get large tokens (think SIDHistory) this can cause issues with Sharepoint/IIS authentication.
  • A limit of 999 Group Policy objects (GPOs) that you can apply to a user account or computer account

Naming and locating

  • Fully qualified domain names (FQDNs) in Active Directory cannot exceed 64 characters in total length, including hyphens and periods (.) Longer DNS names are available BUT not valid in AD as resources
  • NetBIOS computer and domain names are limited to 15 characters.
  • Domain Name System (DNS) host names are limited to 24 characters.
  • LDAP bind operations limit the distinguished name (also known as DN) of the user to 255 total characters
  • Kerberos clients can traverse a maximum of 10 trust links to locate a requested resource in another domain. more than this and the attempt to access the resource fails

 

Sources: Primarily http://technet.microsoft.com/en-us/library/active-directory-maximum-limits-scalability%28WS.10%29.aspx

And other places…

Thursday, September 15, 2011

Removing VMware Storage from XenDesktop 5.5

 

Have you added but need to remove storage from XD55? Well there are instructions but they are a little obtuse? Here is how I did it. I have underlined the key parts.

http://support.citrix.com/static/kc/CTX127254/help/Remove-HypHostingUnitStorage.htm

 

PS C:\> get-item -path XDHyp:\HostingUnits\*


PSPath                 : Citrix.Host.Admin.V1\Citrix.Hypervisor::XDHyp:\HostingUnits\VDIhost
PSParentPath           : Citrix.Host.Admin.V1\Citrix.Hypervisor::XDHyp:\HostingUnits
PSChildName            : VDIhost
PSDrive                : XDHyp
PSProvider             : Citrix.Host.Admin.V1\Citrix.Hypervisor
PSIsContainer          : True
HostingUnitUid         : e1bd6ca2-a30b-40b1-8200-518e262da208
HostingUnitName        : VDIhost
HypervisorConnection   : MelbVDI
RootPath               : XDHyp:\Connections\MelbVDI\M.datacenter\M C P.cluster\VDI.resourcepool
RootId                 : resgroup-6718
NetworkPath            : XDHyp:\Connections\MelbVDI\M.datacenter\M C P.cluster\VDI.resourcepool\VM Network.network
NetworkId              : Network:network-82
Storage                : {XDHyp:\Connections\MelbVDI\M.datacenter\M C p.cluster\VDI.resourcepool\melsan01:melvmdk06.storage, XDHyp:\Connections\MelbVDI\Melbourne.datacenter\M C P.cluster\VDI.resourcepool\melsan01:melvmdk07.storage, XDHyp:\Connections\MelbVDI\M.datacenter\M C P.cluster\VDI.resourcepool\MEL-T3-VMDK01.storage}
VMTaggingEnabled       : True
UseLocalStorageCaching : False
Metadata               : {}

PS C:\> remove-hyphostingunitstorage -literalpath xdhyp:\hostingunits\vdihost -StoragePath XDHyp:\"Connections\MelbVDI\M.datacenter\M C P.cluster\VDI.resourcepool\melsan01:melvmdk06.storage"

HostingUnitUid         : e1bd6ca2-a30b-40b1-8200-518e262da208
HostingUnitName        : VDIhost
HypervisorConnection   : MelbVDI
RootPath               : /M.datacenter/M C P.cluster/VDI.resourcepool
RootId                 : resgroup-6718
NetworkPath            : /M.datacenter/M C P.cluster/VDI.resourcepool/VM Network.netwo
                         rk
NetworkId              : Network:network-82
Storage                : {/M.datacenter/M C P.cluster/VDI.resourcepool/melsan01:melvmd
                         k07.storage, /M.datacenter/M C P.cluster/VDI.resourcepool/MEL
                         -T3-VMDK01.storage, /M.datacenter/M C P.cluster/VDI.resourcep
                         ool/MEL-T3-VMDK02.storage}
VMTaggingEnabled       : True
UseLocalStorageCaching : False
Metadata               : {}

Quick refresh in Citrix Desktop Studio and you will see they are gone. 

Wednesday, September 14, 2011

Citrix Client version from a VBS

 

Dim WshShell, objFSO, strOCXLocation, strICAVersion

Set WshShell = WScript.CreateObject("WScript.Shell")
Set objFSO = CreateObject("Scripting.FileSystemObject")
strOCXLocation = WshShell.RegRead("HKCR\CLSID\{238F6F83-B8B4-11CF-8771-00A024541EE3}\InprocServer32\")
strICAVersion = objFSO.GetFileVersion(strOCXLocation)
Wscript.echo strICAVersion

 

Enough said.

 

Original article: http://support.citrix.com/article/CTX229784

Blog Archive