SlideShare una empresa de Scribd logo
1 de 84
Important links:
PoSH Scripts
Webinar Recording

Citrix Support Secrets
Webinar Series
10 Tips Every XenDesktop Admin Should Know
Mick Glover – Sr. Readiness Specialist, Worldwide Support Readiness
January 30, 2014
Presenter Bio: Mick Glover
• Over 18 Years of Experience in IT
• Joined Citrix in January 2005
• Started as Senior member of Frontline team
• Spent 3 years working as an Escalation Engineer
• Been with the WW Readiness team since 2009

• Certifications: CCA, CCEE, CCIA, CCI & MCSE
• SME areas: XenDesktop, App Orchestration, UPM
• Promotes the XD Tipster Blog Series and @XDtipster twitter feed

2

© 2012 Citrix | Confidential – Do Not Distribute
Objectives
At the end of this webinar, you will be able to:
• Customize your PoSH working environment
• Validate the true state of FMA services and identity possible issues
• Generate and apply Schema update scripts against Site DB
• Logically group machines using Broker tags
• Manage computer a/c’s and naming schemes for MCS Catalogs

• Explicitly Control access to desktops through PoSH
• Configure aspects of XD using built-in Citrix PSProviders
• Configure advanced PMGMT features

• Create service DB scripts of various types to facilitate XD Deployments
© 2012 Citrix | Confidential – Do Not Distribute
Tip Number 10
Creating a customized XD PoSH $profile
What is a PoSH Profile?
The nuts and Bolts
• PoSH script file (.ps1) that runs when PoSH starts up
ᵒCan contain Cmdlets, Scripts, functions i.e. any valid PoSH commands

• Can be used to set-up and customize your PoSH env
• Advantage for XenDesktop administrators?
• Lets take a look….

© 2012 Citrix | Confidential – Do Not Distribute
Step 1: Confirm if profile already exists
Test-path $profile
• Return value False = No existing profile
• Return value True = Existing profile

© 2012 Citrix | Confidential – Do Not Distribute
Step 2: Create PoSH $Profile
New-item –type file $profile
• -Force parameter can be used to overwrite an existing profile

© 2012 Citrix | Confidential – Do Not Distribute
Step 3: Configure PoSH $Profile
Notepad $profile
• Type notepad $profile
ᵒEnter commands to customize PoSH env
ᵒFile  Save  Exit

© 2012 Citrix | Confidential – Do Not Distribute
Step 4: Confirm existence of $Profile
Test-Path %profile
• Expected return value = True
• Edit at any stage by typing Notepad $profile  Return

© 2012 Citrix | Confidential – Do Not Distribute
New-Item PoSH cmdlet
-Force switch Usage
• Allows the cmdlet to create an item that writes over an existing read-only item

© 2012 Citrix | Confidential – Do Not Distribute
Step 5: Confirm $Profile functionality
E.G. Get-BrokerSite

© 2012 Citrix | Confidential – Do Not Distribute
Tip Number 9
Service MGMT (Checking The state of FMA
services through PoSH)
Checking the Status of the controller Services
Windows services applet won’t paint the full picture…
• Run Get-<Alias>ServiceStatus for each service
ᵒExpected return value = OK

• Other Possible Return values include:
•
•
•
•

DBMissingOptionalFeature
DBRejectedConnection
DBUnconfigured
…

• Lets take a look…

© 2012 Citrix | Confidential – Do Not Distribute
PoSH - Validating Service Status
XD 5.x
• Use Get-BrokerServiceStatus (Broker Service)
• Use Get-ConfigServiceStatus (Configuration Service)
• Use Get-HypServiceStatus (Host Service)
• Use Get-AcctServiceStatus (AD Identity Service)
• Use Get-ProvServiceStatus (Machine Creation Service)

• Use Get-PvsvmServiceStatus (Machine Identity Service)
• Use Get-LicServiceStatus (License Service)

© 2012 Citrix | Confidential – Do Not Distribute
PoSH - Validating Service Status
XD 7.x 1 of 2
• Use Get-BrokerServiceStatus (Broker Service)
• Use Get-ConfigServiceStatus (Configuration Service)
• Use Get-HypServiceStatus (Host Service)
• Use Get-AcctServiceStatus (AD Identity Service)
• Use Get-ProvServiceStatus (Machine Creation Service)

• Use Get-LicServiceStatus (License Service)

© 2012 Citrix | Confidential – Do Not Distribute
PoSH - Validating Service Status
XD 7.x 2 of 2
• Use Get-EnvTestServiceStatus (Environment Test Service)
• Use Get-SfServiceStatus (Storefront Service)
• Use Get-MonitorServiceStatus (Monitor Service)
• Use Get-LogServiceStatus (Configuration Logging Service)
• Use Get-AdminServiceStatus (Delegated Administration Service)

© 2012 Citrix | Confidential – Do Not Distribute
Get-BrokerServiceStatus - Return Values (1 of 2)
Status

Meaning

OK

The broker is connected to a database that is valid, and the service is
running.

DBUnconfigured

The broker does not have a database connection configured

DBRejectedConnection

The database rejected the logon from the Broker Service. This may be
caused by bad credentials, or the database not being installed.

InvalidDBConfigured

The database schema is missing (possibly just the stored procedures in
it).

DBNotFound

The specified database could not be located with the configured
connection string.

DBMissingOptionalFeature

The broker is connected to a database that is valid, but it does not
have the full functionality required for optimal performance.
Upgrading the database is advisable.

DBMissingMandatoryFeature
© 2012 Citrix | Confidential – Do Not Distribute

The broker is connected to a database that is valid, but it does not
have the full functionality required so the broker cannot function.
Upgrading the database is required.
Get-BrokerServiceStatus - Return Values (2 of 2)
Status

Meaning

DBNewerVersionThanService

The broker is too old to use the database. A newer version is required.

DBOlderVersionThanService

The database is too old for the Broker Service. Upgrade the database.

DBVersionChangeInProgress

A database schema upgrade is in progress.

OK
PendingFailure

Connectivity between the Broker Service and the database has been
lost. This may be a transitory network error, but may indicate a loss of
connectivity that requires administrator intervention.

Failed

Connectivity between the broker and the database has been lost for
an extended period of time, or has failed due to a configuration
problem. The broker service cannot operate while its connection to
the database is unavailable.

Unknown

The Service's status cannot be determined

© 2012 Citrix | Confidential – Do Not Distribute
Validating the Status of the controller Services
Write simple .ps1 script for single Controller to make your life easier

© 2012 Citrix | Confidential – Do Not Distribute
Validating the Status of the controller Services
Return value is important

© 2012 Citrix | Confidential – Do Not Distribute
What does DBMissingOptionalFeature mean?
Run Help Get-BrokerServiceStatus –Full to find out…
• The broker is connected to a database that is valid, but it does not have the full
functionality required for optimal performance. Upgrading the database is
advisable.
• Next Step? See Tip 8

© 2012 Citrix | Confidential – Do Not Distribute
Tip Number 8
Checking & Updating DB Schema versions
manually through PoSH
DB Schema’s
background
• Each Service has it’s own DB Schema and set of tables that it communicates
with

• DB Schema version should match the version of the service itself for optimal
performance
• Let’s take a look and see what the problem is…

© 2012 Citrix | Confidential – Do Not Distribute
Step 1: Run Get-BrokerInstalledDbVersion
Check current Broker Service DB schema and available upgrade options

© 2012 Citrix | Confidential – Do Not Distribute
Step 2: Run Get-BrokerController
Check Controller Version

© 2012 Citrix | Confidential – Do Not Distribute
Step 3: Run Get-BrokerDBVersionChangeScript
Create upgrade script

© 2012 Citrix | Confidential – Do Not Distribute
Step 4: Disconnect Controller from DB

• Any controller can essentially be turned off (disconnect from the DB)by unconfiguring the services
• You could also stop the Broker Service…
© 2012 Citrix | Confidential – Do Not Distribute
Step 5: Upgrade the Broker Service Schema
• Execute upgrade_71.sql file on
SQLServer in SQLCMD mode and
against the XD DB
• Check messages window for
confirmation…
• Start the Broker service one again
on Controller prior to Step 7 (Next
Slide)

© 2012 Citrix | Confidential – Do Not Distribute
Step 7: Check Status of Broker Service again
Get-BrokerServiceStatus
• Expected return value = OK
• Remember: Creating simple scripts will make your life easier and can be fun to
use…

© 2012 Citrix | Confidential – Do Not Distribute
Tip Number 7
Machine Tagging
Machine Tagging
The Nuts and Bolts
• Machine tagging first introduced in XD 5.x
• Can be used to create a logical grouping of machines within a site
ᵒAcross Delivery Groups & OU’s

• This can have advantages when configuring HDX Policies/Access to resources
• Let’s take a look…

© 2012 Citrix | Confidential – Do Not Distribute
Machine Tagging through Citrix Studio
• Any machine which is part of a Delivery or Desktop Group can be tagged within
Citrix Studio…

© 2012 Citrix | Confidential – Do Not Distribute
Assigning Tags through PoSH
Example - Alternative Option
1. New-BrokerTag -Name <Executive>
2. $desktop = Get-BrokerDesktop -uid 1
3. Add-BrokerTag -Name Executive -desktop $desktop

© 2012 Citrix | Confidential – Do Not Distribute
Assigning Tags through PoSH
Visual Example 2

© 2012 Citrix | Confidential – Do Not Distribute
Confirming Machine UID’s

© 2012 Citrix | Confidential – Do Not Distribute
Viewing Tags through PoSH
Use Select Command
• Get-BrokerMachine | select machinename, tags | format-table

© 2012 Citrix | Confidential – Do Not Distribute
HDX Tag Filter
Use Case
• HDX Policies can be applied
against specific tags…

© 2012 Citrix | Confidential – Do Not Distribute
Tip Number 6
Managing the Identity Pool StartCount and
NamingScheme Parameters for MCS Catalogs
Identity Pools
Created and managed by the AD Identity Service
• Associated with Catalogs

© 2012 Citrix | Confidential – Do Not Distribute
Observation
IdentityPoolName & ProvisioningSchemeName matching values

© 2012 Citrix | Confidential – Do Not Distribute
XenDesktop A/C delete/re-use options
MCS Only
• Important to understand
Delete options in relation to
machine a/c mgmt…
• NB: If machine AD a/c is
deleted then it can be used
again automatically as long as
the StartCount value is reset
to match
• If AD a/c is not deleted then
resetting the StartCount will
have no impact
© 2012 Citrix | Confidential – Do Not Distribute
StartCount value determines

© 2012 Citrix | Confidential – Do Not Distribute
© 2012 Citrix | Confidential – Do Not Distribute
Changing the NamingScheme
Considerations

© 2012 Citrix | Confidential – Do Not Distribute
Changing the NamingScheme
WebinarTest#
• Set-AcctIdentityPool -IdentityPoolName
"Windows 7 SP1 x86 - 1GB" -NamingScheme
WebinarTest# -StartCount 1
• Note: Unless the StartCount value is explicitly
set then it will remain as it was prior to the
change in NamingScheme

© 2012 Citrix | Confidential – Do Not Distribute
Reverting NamingScheme
Considerations
• StartCount will not change

© 2012 Citrix | Confidential – Do Not Distribute
Tip Number 5
Controlling Access To Resources
XD Site Policies
Overview
• Entitlement Policies (Pooled/Shared Desktops)
ᵒGet-BrokerEntitlementPolicyRule
ᵒGet-BrokerAppEntitlementPolicyRule

• Assignment Policies (Dedicated/Private Desktops)
ᵒGet-BrokerAssignmentPolicyRule
ᵒGet-BrokerAppAssignmentPolicyRule

• Access Policy
ᵒGet-BrokerAccessPolicyRule (Discussed during Tip# 2)

• Lets take a look…

© 2012 Citrix | Confidential – Do Not Distribute
Viewing BrokerEntitlementPolicy rule(s)
Training Win7 Delivery Group

• By default, no exclusions are set

© 2012 Citrix | Confidential – Do Not Distribute
© 2012 Citrix | Confidential – Do Not Distribute
Setting a BrokerEntitlementPolicy rule
Edit existing rule for relevant Delivery Group

© 2012 Citrix | Confidential – Do Not Distribute
© 2012 Citrix | Confidential – Do Not Distribute
Revert Changes/Remove Exclusions
• Use –RemoveExcludedUsers parameter or empty the array using @()
ᵒSet-BrokerEntitlementPolicyRule -Name "Training Win7_1" -RemoveExcludedUsers
traininguser1 -ExcludedUserFilterEnabled $false
Or
ᵒSet-BrokerEntitlementPolicyRule -Name "Training Win7_1" ExcludedUserFilterEnabled $false -ExcludedUsers @()

© 2012 Citrix | Confidential – Do Not Distribute
Tip Number 4
Exploring Citrix PowerShell Providers
What are PowerShell Providers
The nuts and Bolts
• Extension’s which allow data structures to be mounted through PoSH
• Available PSProviders can be viewed using Get-PSProvider
• XenDesktop 5.x & 7.x ship with two PSproviders
ᵒCitrixGroupPolicy
ᵒCitrix.Hypervisor

• Lets take a look….

© 2012 Citrix | Confidential – Do Not Distribute
View all available Providers
Run Get-PSProvider

• Specific PS-Drives are created by default for each PSProvider
© 2012 Citrix | Confidential – Do Not Distribute
Use CD command to mount PSDrives
• CD XDHYP:  Return
• CD LocalGPO:  Return
• CD Templates: --> Return
• CitrixGroupPolicy PSProvider also supports other PSDrives that are not
available by default
ᵒTo view these options run Help New-PSDrive –Full from within the mounted LocalGPO
or Templates drive…

© 2012 Citrix | Confidential – Do Not Distribute
Example Usage: Enabling Intellicache

© 2012 Citrix | Confidential – Do Not Distribute
LocalStorageCaching related error

© 2012 Citrix | Confidential – Do Not Distribute
Creating HDX Policies through PoSH
Use the CitrixGroupPolicy PSProvider
• New-PSDrive Webinar -PSProvider CitrixGroupPolicy -Root  -Controller
DC1dir

© 2012 Citrix | Confidential – Do Not Distribute
Enable Setting
Example: ReadonlyClipboard
• PS Webinar:usertrainingSettingsica> Set-ItemProperty ReadonlyClipboard Name State -Value enabled

• Running dir under the Ica folder will return the following…

© 2012 Citrix | Confidential – Do Not Distribute
Configure Tag filter through Citrix Studio
Allow: Training Tag

© 2012 Citrix | Confidential – Do Not Distribute
Validate Functionality
Through Registry
• HKLMSoftwarePoliciesCitrix<s
ession#UserVCPolicies….

© 2012 Citrix | Confidential – Do Not Distribute
Tip Number 3
Configuring Extended Disconnect/Logoff settings
Extended Disconnect/Logoff Settings
Extending Functionality…
• Available for Pooled & Dedicated Desktops/Delivery Groups
• Can only be configured through PoSH
• Available for Peak & OffPeak hours
• Let’s take a look…

© 2012 Citrix | Confidential – Do Not Distribute
View all disconnect options through PoSH
• Get-BrokerDesktopGroup -Name "training win7" | select *peakdis*, *extende* |
format-list

© 2012 Citrix | Confidential – Do Not Distribute
Configuring Extended Disconnect Setting
Example: Peak Hours
• Set-BrokerDesktopGroup -Name "Training Win7" PeakExtendedDisconnectAction suspend -PeakExtendedDisconnectTimeout 5

© 2012 Citrix | Confidential – Do Not Distribute
Tip Number 2
Using the Site Access Policy to Restrict Access to
Resources
Site Access Policy
• Contains two rules per Delivery Group by default
ᵒDirect Connections
ᵒConnections through Netscaler/AG

• Similar to the Entitlement and Assignment site policy rules, Site access policy
rules control access to resources
• What is the key difference?
ᵒEntitlement & Assignment policy rules control user access (included/excluded users)
ᵒAccess policy rules control the wider conditions
(Clientnames/ClientIPs/SmartAccessFilters)

• Lets take a look…

© 2012 Citrix | Confidential – Do Not Distribute
Example: Restrict access from ClientIP
• Return Access Policy rules for a specific Delivery Group
ᵒGet-BrokerAccessPolicyRule -DesktopGroupName "Training Win7 - Dedicated“

• Edit the direct rule and exclude a specific IP address
ᵒSet-BrokerAccessPolicyRule "Training Win7 - Dedicated_Direct" ExcludedClientIPFilterEnabled $true -ExcludedClientIPs 192.168.10.29 to restrict
access from the Win7Client machine

© 2012 Citrix | Confidential – Do Not Distribute
© 2012 Citrix | Confidential – Do Not Distribute
Tip Number 1
Manually Joining a Controller to an existing Site
Manually Joining a Controller to an existing Site
Simple three step process

1

• Create Instance Scripts for each service running on DC1
(Controller)

2
3
© 2012 Citrix | Confidential – Do Not Distribute
Manually Joining a Controller to an existing Site
Simple three step process

1

2

• Create Instance Scripts for each service running on DC1
(Controller)
• Configure the DB connection string for each service

3
© 2012 Citrix | Confidential – Do Not Distribute
Manually Joining a Controller to an existing Site
Simple three step process

1

2
3

• Create Instance Scripts for each service running on DC1
(Controller)
• Configure the DB connection string for each service
• Register each service with the Configuration service

© 2012 Citrix | Confidential – Do Not Distribute
Lets take a look…
• Complete instructions can be found here
ᵒhttp://blogs.citrix.com/2013/08/20/xd-tipster-manually-joining-a-new-controller-to-anexisting-db-3-simple-steps/

© 2012 Citrix | Confidential – Do Not Distribute
Before I Finish…
© 2012 Citrix | Confidential – Do Not Distribute
XD Tipster Blog Series
XD Tipster Blogs
Just a selection…
• http://blogs.citrix.com/2013/09/19/xd-tipster-introducing-the-new-xd7xendesktop-posh-module/

• http://blogs.citrix.com/2013/08/29/xd-tipster-machine-tagging-and-hdx-policies/
• http://blogs.citrix.com/2013/08/21/xd-tipster-changing-delivery-group-iconsrevisited-xd7/

• http://blogs.citrix.com/2013/08/20/xd-tipster-manually-joining-a-new-controllerto-an-existing-db-3-simple-steps/
• http://blogs.citrix.com/2013/10/01/xd-tipster-creating-hdx-policies-through-posh/
• http://blogs.citrix.com/2013/10/22/xd-tipster-removing-controllers-from-an-xdsite-using-posh/
© 2012 Citrix | Confidential – Do Not Distribute
About
Citrix Services
Citrix Services make sure
you succeed with your
virtualization programs.

Educate | Guide | Support | Succeed

How we can help
Citrix Education – The fastest, most efficient way to
get your team the virtualization skills they need. Online,
on-site or in class.
citrix.com/training
Citrix Consulting – Intensive engagements for
complex, critical or just plain massive projects.
citrix.com/consulting
Citrix Support – Always-on support services that
leverage everything we know about best-practice
deployment and maintenance.
citrix.com/support

© 2012 Citrix | Confidential – Do Not Distribute
Secrets of the Citrix Support Ninjas
• 40 insider troubleshooting tips

• Covering XenDesktop, XenServer, XenApp and NetScaler
• Citrix Support top engineers

• FREE eBook
• Citrix Auto Support
• Now available!
© 2012 Citrix | Confidential – Do Not Distribute
Premier Support Calculator
Check it out

© 2012 Citrix | Confidential – Do Not Distribute
Work better. Live better.

Más contenido relacionado

La actualidad más candente

cloud_foundation_on_vxrail_vcf_pnp_licensing_guide.pptx
cloud_foundation_on_vxrail_vcf_pnp_licensing_guide.pptxcloud_foundation_on_vxrail_vcf_pnp_licensing_guide.pptx
cloud_foundation_on_vxrail_vcf_pnp_licensing_guide.pptx
VitNguyn252054
 

La actualidad más candente (20)

Git Tutorial | Git Basics - Branching, Merging, Rebasing | Learn Git | DevOps...
Git Tutorial | Git Basics - Branching, Merging, Rebasing | Learn Git | DevOps...Git Tutorial | Git Basics - Branching, Merging, Rebasing | Learn Git | DevOps...
Git Tutorial | Git Basics - Branching, Merging, Rebasing | Learn Git | DevOps...
 
CFの便利機能を他の環境でも。Open Service Broker
CFの便利機能を他の環境でも。Open Service BrokerCFの便利機能を他の環境でも。Open Service Broker
CFの便利機能を他の環境でも。Open Service Broker
 
Load Balancing SSTP VPN with KEMP LoadMaster
Load Balancing SSTP VPN with KEMP LoadMasterLoad Balancing SSTP VPN with KEMP LoadMaster
Load Balancing SSTP VPN with KEMP LoadMaster
 
DevSecOps 101
DevSecOps 101DevSecOps 101
DevSecOps 101
 
cloud_foundation_on_vxrail_vcf_pnp_licensing_guide.pptx
cloud_foundation_on_vxrail_vcf_pnp_licensing_guide.pptxcloud_foundation_on_vxrail_vcf_pnp_licensing_guide.pptx
cloud_foundation_on_vxrail_vcf_pnp_licensing_guide.pptx
 
Introduction to systemd
Introduction to systemdIntroduction to systemd
Introduction to systemd
 
Introduction to git and github
Introduction to git and githubIntroduction to git and github
Introduction to git and github
 
Kubernetes GitOps featuring GitHub, Kustomize and ArgoCD
Kubernetes GitOps featuring GitHub, Kustomize and ArgoCDKubernetes GitOps featuring GitHub, Kustomize and ArgoCD
Kubernetes GitOps featuring GitHub, Kustomize and ArgoCD
 
Implementing generic JNI hardware control for Kotlin based app on AOSP
Implementing generic JNI hardware control for Kotlin based app on AOSPImplementing generic JNI hardware control for Kotlin based app on AOSP
Implementing generic JNI hardware control for Kotlin based app on AOSP
 
GitHub Actions with Node.js
GitHub Actions with Node.jsGitHub Actions with Node.js
GitHub Actions with Node.js
 
GIT INTRODUCTION
GIT INTRODUCTIONGIT INTRODUCTION
GIT INTRODUCTION
 
VSAN – Architettura e Design
VSAN – Architettura e DesignVSAN – Architettura e Design
VSAN – Architettura e Design
 
OSDC 2018 | OPNsense: the “open” firewall for your datacenter by Thomas Niede...
OSDC 2018 | OPNsense: the “open” firewall for your datacenter by Thomas Niede...OSDC 2018 | OPNsense: the “open” firewall for your datacenter by Thomas Niede...
OSDC 2018 | OPNsense: the “open” firewall for your datacenter by Thomas Niede...
 
Migration vers Active Directory 2012 et 2012 R2 : les meilleures pratiques
Migration vers Active Directory 2012 et 2012 R2 : les meilleures pratiques Migration vers Active Directory 2012 et 2012 R2 : les meilleures pratiques
Migration vers Active Directory 2012 et 2012 R2 : les meilleures pratiques
 
Web Servislerine Yönelik Sızma Testleri
Web Servislerine Yönelik Sızma TestleriWeb Servislerine Yönelik Sızma Testleri
Web Servislerine Yönelik Sızma Testleri
 
Docker Networking Overview
Docker Networking OverviewDocker Networking Overview
Docker Networking Overview
 
Taking advantage of Prometheus relabeling
Taking advantage of Prometheus relabelingTaking advantage of Prometheus relabeling
Taking advantage of Prometheus relabeling
 
DevOps on AZURE
DevOps on AZUREDevOps on AZURE
DevOps on AZURE
 
July 28: Tanzu Mission Control: Resolving Kubernetes fragmentation across Dev...
July 28: Tanzu Mission Control: Resolving Kubernetes fragmentation across Dev...July 28: Tanzu Mission Control: Resolving Kubernetes fragmentation across Dev...
July 28: Tanzu Mission Control: Resolving Kubernetes fragmentation across Dev...
 
Introduction to ibm cloud paks concept license and minimum config public
Introduction to ibm cloud paks concept license and minimum config publicIntroduction to ibm cloud paks concept license and minimum config public
Introduction to ibm cloud paks concept license and minimum config public
 

Destacado

What's new in Citrix xen Desktop
What's new in Citrix xen DesktopWhat's new in Citrix xen Desktop
What's new in Citrix xen Desktop
Digicomp Academy AG
 

Destacado (20)

Configuring and Troubleshooting XenDesktop Sites
Configuring and Troubleshooting XenDesktop SitesConfiguring and Troubleshooting XenDesktop Sites
Configuring and Troubleshooting XenDesktop Sites
 
The Top Eight Best Practices for Deploying XenApp and XenDesktop 7.6
The Top Eight Best Practices for Deploying XenApp and XenDesktop 7.6The Top Eight Best Practices for Deploying XenApp and XenDesktop 7.6
The Top Eight Best Practices for Deploying XenApp and XenDesktop 7.6
 
Troubleshooting Provisioning Services Target Boot Processes
Troubleshooting Provisioning Services Target Boot ProcessesTroubleshooting Provisioning Services Target Boot Processes
Troubleshooting Provisioning Services Target Boot Processes
 
PVS and MCS Webinar - Technical Deep Dive
PVS and MCS Webinar - Technical Deep DivePVS and MCS Webinar - Technical Deep Dive
PVS and MCS Webinar - Technical Deep Dive
 
Citrix TechEdge 2014 - How to Troubleshoot Deployments of StoreFront and NetS...
Citrix TechEdge 2014 - How to Troubleshoot Deployments of StoreFront and NetS...Citrix TechEdge 2014 - How to Troubleshoot Deployments of StoreFront and NetS...
Citrix TechEdge 2014 - How to Troubleshoot Deployments of StoreFront and NetS...
 
Top Troubleshooting Tips and Techniques for Citrix XenServer Deployments
Top Troubleshooting Tips and Techniques for Citrix XenServer DeploymentsTop Troubleshooting Tips and Techniques for Citrix XenServer Deployments
Top Troubleshooting Tips and Techniques for Citrix XenServer Deployments
 
Maintaining and Troubleshooting your XenDesktop 7.5 Environment
Maintaining and Troubleshooting your XenDesktop 7.5 EnvironmentMaintaining and Troubleshooting your XenDesktop 7.5 Environment
Maintaining and Troubleshooting your XenDesktop 7.5 Environment
 
Citrix Group Policy Troubleshooting for XenApp and XenDesktop
Citrix Group Policy Troubleshooting for XenApp and XenDesktopCitrix Group Policy Troubleshooting for XenApp and XenDesktop
Citrix Group Policy Troubleshooting for XenApp and XenDesktop
 
XenDesktop Master Class - Live Installation of XenDesktop/XenApp 7.6
XenDesktop Master Class - Live Installation of XenDesktop/XenApp 7.6XenDesktop Master Class - Live Installation of XenDesktop/XenApp 7.6
XenDesktop Master Class - Live Installation of XenDesktop/XenApp 7.6
 
Troubleshooting a XenDesktop Environment using the PowerShell SDK
Troubleshooting a XenDesktop Environment using the PowerShell SDKTroubleshooting a XenDesktop Environment using the PowerShell SDK
Troubleshooting a XenDesktop Environment using the PowerShell SDK
 
What's new in Citrix xen Desktop
What's new in Citrix xen DesktopWhat's new in Citrix xen Desktop
What's new in Citrix xen Desktop
 
Citrix Internals: ICA Connectivity
Citrix Internals: ICA ConnectivityCitrix Internals: ICA Connectivity
Citrix Internals: ICA Connectivity
 
Real world experience with provisioning services
Real world experience with provisioning servicesReal world experience with provisioning services
Real world experience with provisioning services
 
Troubleshooting XenApp with the Citrix Diagnostic Toolkit
Troubleshooting XenApp with the Citrix Diagnostic ToolkitTroubleshooting XenApp with the Citrix Diagnostic Toolkit
Troubleshooting XenApp with the Citrix Diagnostic Toolkit
 
Choosing the Best Approach for Monitoring Citrix User Experience: Should You ...
Choosing the Best Approach for Monitoring Citrix User Experience: Should You ...Choosing the Best Approach for Monitoring Citrix User Experience: Should You ...
Choosing the Best Approach for Monitoring Citrix User Experience: Should You ...
 
SYN 219 Getting Up Close and Personal With MCS and PVS
SYN 219  Getting Up Close and Personal With MCS and PVS SYN 219  Getting Up Close and Personal With MCS and PVS
SYN 219 Getting Up Close and Personal With MCS and PVS
 
What's new in Citrix XenApp 7.5 und XenDesktop 7.5?
What's new in Citrix XenApp 7.5 und XenDesktop 7.5?What's new in Citrix XenApp 7.5 und XenDesktop 7.5?
What's new in Citrix XenApp 7.5 und XenDesktop 7.5?
 
Citrix Day 2014: XenApp / XenDesktop 7.6
Citrix Day 2014: XenApp / XenDesktop 7.6Citrix Day 2014: XenApp / XenDesktop 7.6
Citrix Day 2014: XenApp / XenDesktop 7.6
 
Designing your XenApp 7.5 Environment
Designing your XenApp 7.5 EnvironmentDesigning your XenApp 7.5 Environment
Designing your XenApp 7.5 Environment
 
Tricerat Simplify Monitoring Install
Tricerat Simplify Monitoring InstallTricerat Simplify Monitoring Install
Tricerat Simplify Monitoring Install
 

Similar a 10 Tips Every XenDesktop Admin Should Know

O365-AzureAD Identity management
O365-AzureAD Identity managementO365-AzureAD Identity management
O365-AzureAD Identity management
David Pechon
 
Administrators manual
Administrators manualAdministrators manual
Administrators manual
ScrumDesk
 

Similar a 10 Tips Every XenDesktop Admin Should Know (20)

Maintaining and troubleshooting your xen desktop 7.5 environment
Maintaining and troubleshooting your xen desktop 7.5 environmentMaintaining and troubleshooting your xen desktop 7.5 environment
Maintaining and troubleshooting your xen desktop 7.5 environment
 
Citrix TechEdge 2014 - Best Practices for Implementing, Administering, and Tr...
Citrix TechEdge 2014 - Best Practices for Implementing, Administering, and Tr...Citrix TechEdge 2014 - Best Practices for Implementing, Administering, and Tr...
Citrix TechEdge 2014 - Best Practices for Implementing, Administering, and Tr...
 
Best practices for implementing, administering, and troubleshooting XenDeskto...
Best practices for implementing, administering, and troubleshooting XenDeskto...Best practices for implementing, administering, and troubleshooting XenDeskto...
Best practices for implementing, administering, and troubleshooting XenDeskto...
 
Best practices for implementing, administering, and troubleshooting xen deskt...
Best practices for implementing, administering, and troubleshooting xen deskt...Best practices for implementing, administering, and troubleshooting xen deskt...
Best practices for implementing, administering, and troubleshooting xen deskt...
 
Common Pitfalls when Setting up a NetScaler for the First Time
Common Pitfalls when Setting up a NetScaler for the First TimeCommon Pitfalls when Setting up a NetScaler for the First Time
Common Pitfalls when Setting up a NetScaler for the First Time
 
Identity Management for Office 365 and Microsoft Azure
Identity Management for Office 365 and Microsoft AzureIdentity Management for Office 365 and Microsoft Azure
Identity Management for Office 365 and Microsoft Azure
 
O365-AzureAD Identity management
O365-AzureAD Identity managementO365-AzureAD Identity management
O365-AzureAD Identity management
 
AzureConf 2014 - Azure hybrid connections (Sam Vanhoutte)
AzureConf 2014 - Azure hybrid connections (Sam Vanhoutte)AzureConf 2014 - Azure hybrid connections (Sam Vanhoutte)
AzureConf 2014 - Azure hybrid connections (Sam Vanhoutte)
 
Administrators manual
Administrators manualAdministrators manual
Administrators manual
 
Administrators manual
Administrators manualAdministrators manual
Administrators manual
 
XenApp XenDesktop 7.8 Workshop
XenApp XenDesktop 7.8 Workshop XenApp XenDesktop 7.8 Workshop
XenApp XenDesktop 7.8 Workshop
 
Troubleshooting Tools – How to isolate and resolve issues in your XenApp & Xe...
Troubleshooting Tools – How to isolate and resolve issues in your XenApp & Xe...Troubleshooting Tools – How to isolate and resolve issues in your XenApp & Xe...
Troubleshooting Tools – How to isolate and resolve issues in your XenApp & Xe...
 
Deep Dive - Usage of on premises data gateway for hybrid integration scenarios
Deep Dive - Usage of on premises data gateway for hybrid integration scenariosDeep Dive - Usage of on premises data gateway for hybrid integration scenarios
Deep Dive - Usage of on premises data gateway for hybrid integration scenarios
 
Citrix TechEdge 2014 - A Deep Dive Look Into Supporting XenDesktop
Citrix TechEdge 2014 - A Deep Dive Look Into Supporting XenDesktopCitrix TechEdge 2014 - A Deep Dive Look Into Supporting XenDesktop
Citrix TechEdge 2014 - A Deep Dive Look Into Supporting XenDesktop
 
A deep dive into supporting xen desktop
A deep dive into supporting xen desktopA deep dive into supporting xen desktop
A deep dive into supporting xen desktop
 
Scribe insight 04 insight 7.9.0
Scribe insight 04   insight 7.9.0Scribe insight 04   insight 7.9.0
Scribe insight 04 insight 7.9.0
 
Designing your xen desktop 7.5 environment with training guide
Designing your xen desktop 7.5 environment with training guideDesigning your xen desktop 7.5 environment with training guide
Designing your xen desktop 7.5 environment with training guide
 
Integrating your on-premises Active Directory with Azure and Office 365
Integrating your on-premises Active Directory with Azure and Office 365Integrating your on-premises Active Directory with Azure and Office 365
Integrating your on-premises Active Directory with Azure and Office 365
 
Presentation basic administration for citrix xen app 6
Presentation   basic administration for citrix xen app 6Presentation   basic administration for citrix xen app 6
Presentation basic administration for citrix xen app 6
 
Server virtualization 1
Server virtualization   1Server virtualization   1
Server virtualization 1
 

Más de David McGeough

Más de David McGeough (16)

Manage and Diagnose your Environment using Citrix Insight Services
Manage and Diagnose your Environment using Citrix Insight ServicesManage and Diagnose your Environment using Citrix Insight Services
Manage and Diagnose your Environment using Citrix Insight Services
 
Advanced Tools and Techniques for Troubleshooting NetScaler Appliances
Advanced Tools and Techniques for Troubleshooting NetScaler AppliancesAdvanced Tools and Techniques for Troubleshooting NetScaler Appliances
Advanced Tools and Techniques for Troubleshooting NetScaler Appliances
 
How to Protect Against top Web Security Issues With Citrix NetScaler
How to Protect Against top Web Security Issues With Citrix NetScalerHow to Protect Against top Web Security Issues With Citrix NetScaler
How to Protect Against top Web Security Issues With Citrix NetScaler
 
Citrix TechEdge 2014 - Understanding and Troubleshooting Authentication Flow ...
Citrix TechEdge 2014 - Understanding and Troubleshooting Authentication Flow ...Citrix TechEdge 2014 - Understanding and Troubleshooting Authentication Flow ...
Citrix TechEdge 2014 - Understanding and Troubleshooting Authentication Flow ...
 
Citrix TechEdge 2014 - Troubelshooting Top Issues with XenMobile Enterprise E...
Citrix TechEdge 2014 - Troubelshooting Top Issues with XenMobile Enterprise E...Citrix TechEdge 2014 - Troubelshooting Top Issues with XenMobile Enterprise E...
Citrix TechEdge 2014 - Troubelshooting Top Issues with XenMobile Enterprise E...
 
Citrix TechEdge 2014 - How to Protect Against the Top 10 Web Security Issues ...
Citrix TechEdge 2014 - How to Protect Against the Top 10 Web Security Issues ...Citrix TechEdge 2014 - How to Protect Against the Top 10 Web Security Issues ...
Citrix TechEdge 2014 - How to Protect Against the Top 10 Web Security Issues ...
 
Citrix TechEdge 2014 - Citrix Group Policy Troubleshooting for XenApp and Xen...
Citrix TechEdge 2014 - Citrix Group Policy Troubleshooting for XenApp and Xen...Citrix TechEdge 2014 - Citrix Group Policy Troubleshooting for XenApp and Xen...
Citrix TechEdge 2014 - Citrix Group Policy Troubleshooting for XenApp and Xen...
 
Citrix TechEdge 2014 - Advanced Tools and Techniques for Troubleshooting NetS...
Citrix TechEdge 2014 - Advanced Tools and Techniques for Troubleshooting NetS...Citrix TechEdge 2014 - Advanced Tools and Techniques for Troubleshooting NetS...
Citrix TechEdge 2014 - Advanced Tools and Techniques for Troubleshooting NetS...
 
Maintaining and Troubleshooting your XenApp 7.5 Environment
Maintaining and Troubleshooting your XenApp 7.5 EnvironmentMaintaining and Troubleshooting your XenApp 7.5 Environment
Maintaining and Troubleshooting your XenApp 7.5 Environment
 
Jump Start your XenDesktop 7.5 Deployment
Jump Start your XenDesktop 7.5 DeploymentJump Start your XenDesktop 7.5 Deployment
Jump Start your XenDesktop 7.5 Deployment
 
Troubleshooting Common Network Related Issues with NetScaler
Troubleshooting Common Network Related Issues with NetScalerTroubleshooting Common Network Related Issues with NetScaler
Troubleshooting Common Network Related Issues with NetScaler
 
Jump Start your XenApp 7.5 Deployment
Jump Start your XenApp 7.5 DeploymentJump Start your XenApp 7.5 Deployment
Jump Start your XenApp 7.5 Deployment
 
In-depth Troubleshooting on NetScaler using Command Line Tools
In-depth Troubleshooting on NetScaler using Command Line ToolsIn-depth Troubleshooting on NetScaler using Command Line Tools
In-depth Troubleshooting on NetScaler using Command Line Tools
 
Using NetScaler Insight to Troubleshoot Network and Server Performance Issues
Using NetScaler Insight to Troubleshoot Network and Server Performance IssuesUsing NetScaler Insight to Troubleshoot Network and Server Performance Issues
Using NetScaler Insight to Troubleshoot Network and Server Performance Issues
 
Implementing and Troubleshooting EdgeSight
Implementing and Troubleshooting EdgeSightImplementing and Troubleshooting EdgeSight
Implementing and Troubleshooting EdgeSight
 
Migrating from XenApp 4.5 and 5 to XenApp 6.5
Migrating from XenApp 4.5 and 5 to XenApp 6.5Migrating from XenApp 4.5 and 5 to XenApp 6.5
Migrating from XenApp 4.5 and 5 to XenApp 6.5
 

Último

CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
giselly40
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
vu2urc
 

Último (20)

Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdf
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 

10 Tips Every XenDesktop Admin Should Know

  • 1. Important links: PoSH Scripts Webinar Recording Citrix Support Secrets Webinar Series 10 Tips Every XenDesktop Admin Should Know Mick Glover – Sr. Readiness Specialist, Worldwide Support Readiness January 30, 2014
  • 2. Presenter Bio: Mick Glover • Over 18 Years of Experience in IT • Joined Citrix in January 2005 • Started as Senior member of Frontline team • Spent 3 years working as an Escalation Engineer • Been with the WW Readiness team since 2009 • Certifications: CCA, CCEE, CCIA, CCI & MCSE • SME areas: XenDesktop, App Orchestration, UPM • Promotes the XD Tipster Blog Series and @XDtipster twitter feed 2 © 2012 Citrix | Confidential – Do Not Distribute
  • 3. Objectives At the end of this webinar, you will be able to: • Customize your PoSH working environment • Validate the true state of FMA services and identity possible issues • Generate and apply Schema update scripts against Site DB • Logically group machines using Broker tags • Manage computer a/c’s and naming schemes for MCS Catalogs • Explicitly Control access to desktops through PoSH • Configure aspects of XD using built-in Citrix PSProviders • Configure advanced PMGMT features • Create service DB scripts of various types to facilitate XD Deployments © 2012 Citrix | Confidential – Do Not Distribute
  • 4. Tip Number 10 Creating a customized XD PoSH $profile
  • 5. What is a PoSH Profile? The nuts and Bolts • PoSH script file (.ps1) that runs when PoSH starts up ᵒCan contain Cmdlets, Scripts, functions i.e. any valid PoSH commands • Can be used to set-up and customize your PoSH env • Advantage for XenDesktop administrators? • Lets take a look…. © 2012 Citrix | Confidential – Do Not Distribute
  • 6. Step 1: Confirm if profile already exists Test-path $profile • Return value False = No existing profile • Return value True = Existing profile © 2012 Citrix | Confidential – Do Not Distribute
  • 7. Step 2: Create PoSH $Profile New-item –type file $profile • -Force parameter can be used to overwrite an existing profile © 2012 Citrix | Confidential – Do Not Distribute
  • 8. Step 3: Configure PoSH $Profile Notepad $profile • Type notepad $profile ᵒEnter commands to customize PoSH env ᵒFile  Save  Exit © 2012 Citrix | Confidential – Do Not Distribute
  • 9. Step 4: Confirm existence of $Profile Test-Path %profile • Expected return value = True • Edit at any stage by typing Notepad $profile  Return © 2012 Citrix | Confidential – Do Not Distribute
  • 10. New-Item PoSH cmdlet -Force switch Usage • Allows the cmdlet to create an item that writes over an existing read-only item © 2012 Citrix | Confidential – Do Not Distribute
  • 11. Step 5: Confirm $Profile functionality E.G. Get-BrokerSite © 2012 Citrix | Confidential – Do Not Distribute
  • 12. Tip Number 9 Service MGMT (Checking The state of FMA services through PoSH)
  • 13. Checking the Status of the controller Services Windows services applet won’t paint the full picture… • Run Get-<Alias>ServiceStatus for each service ᵒExpected return value = OK • Other Possible Return values include: • • • • DBMissingOptionalFeature DBRejectedConnection DBUnconfigured … • Lets take a look… © 2012 Citrix | Confidential – Do Not Distribute
  • 14. PoSH - Validating Service Status XD 5.x • Use Get-BrokerServiceStatus (Broker Service) • Use Get-ConfigServiceStatus (Configuration Service) • Use Get-HypServiceStatus (Host Service) • Use Get-AcctServiceStatus (AD Identity Service) • Use Get-ProvServiceStatus (Machine Creation Service) • Use Get-PvsvmServiceStatus (Machine Identity Service) • Use Get-LicServiceStatus (License Service) © 2012 Citrix | Confidential – Do Not Distribute
  • 15. PoSH - Validating Service Status XD 7.x 1 of 2 • Use Get-BrokerServiceStatus (Broker Service) • Use Get-ConfigServiceStatus (Configuration Service) • Use Get-HypServiceStatus (Host Service) • Use Get-AcctServiceStatus (AD Identity Service) • Use Get-ProvServiceStatus (Machine Creation Service) • Use Get-LicServiceStatus (License Service) © 2012 Citrix | Confidential – Do Not Distribute
  • 16. PoSH - Validating Service Status XD 7.x 2 of 2 • Use Get-EnvTestServiceStatus (Environment Test Service) • Use Get-SfServiceStatus (Storefront Service) • Use Get-MonitorServiceStatus (Monitor Service) • Use Get-LogServiceStatus (Configuration Logging Service) • Use Get-AdminServiceStatus (Delegated Administration Service) © 2012 Citrix | Confidential – Do Not Distribute
  • 17. Get-BrokerServiceStatus - Return Values (1 of 2) Status Meaning OK The broker is connected to a database that is valid, and the service is running. DBUnconfigured The broker does not have a database connection configured DBRejectedConnection The database rejected the logon from the Broker Service. This may be caused by bad credentials, or the database not being installed. InvalidDBConfigured The database schema is missing (possibly just the stored procedures in it). DBNotFound The specified database could not be located with the configured connection string. DBMissingOptionalFeature The broker is connected to a database that is valid, but it does not have the full functionality required for optimal performance. Upgrading the database is advisable. DBMissingMandatoryFeature © 2012 Citrix | Confidential – Do Not Distribute The broker is connected to a database that is valid, but it does not have the full functionality required so the broker cannot function. Upgrading the database is required.
  • 18. Get-BrokerServiceStatus - Return Values (2 of 2) Status Meaning DBNewerVersionThanService The broker is too old to use the database. A newer version is required. DBOlderVersionThanService The database is too old for the Broker Service. Upgrade the database. DBVersionChangeInProgress A database schema upgrade is in progress. OK PendingFailure Connectivity between the Broker Service and the database has been lost. This may be a transitory network error, but may indicate a loss of connectivity that requires administrator intervention. Failed Connectivity between the broker and the database has been lost for an extended period of time, or has failed due to a configuration problem. The broker service cannot operate while its connection to the database is unavailable. Unknown The Service's status cannot be determined © 2012 Citrix | Confidential – Do Not Distribute
  • 19. Validating the Status of the controller Services Write simple .ps1 script for single Controller to make your life easier © 2012 Citrix | Confidential – Do Not Distribute
  • 20. Validating the Status of the controller Services Return value is important © 2012 Citrix | Confidential – Do Not Distribute
  • 21. What does DBMissingOptionalFeature mean? Run Help Get-BrokerServiceStatus –Full to find out… • The broker is connected to a database that is valid, but it does not have the full functionality required for optimal performance. Upgrading the database is advisable. • Next Step? See Tip 8 © 2012 Citrix | Confidential – Do Not Distribute
  • 22. Tip Number 8 Checking & Updating DB Schema versions manually through PoSH
  • 23. DB Schema’s background • Each Service has it’s own DB Schema and set of tables that it communicates with • DB Schema version should match the version of the service itself for optimal performance • Let’s take a look and see what the problem is… © 2012 Citrix | Confidential – Do Not Distribute
  • 24. Step 1: Run Get-BrokerInstalledDbVersion Check current Broker Service DB schema and available upgrade options © 2012 Citrix | Confidential – Do Not Distribute
  • 25. Step 2: Run Get-BrokerController Check Controller Version © 2012 Citrix | Confidential – Do Not Distribute
  • 26. Step 3: Run Get-BrokerDBVersionChangeScript Create upgrade script © 2012 Citrix | Confidential – Do Not Distribute
  • 27. Step 4: Disconnect Controller from DB • Any controller can essentially be turned off (disconnect from the DB)by unconfiguring the services • You could also stop the Broker Service… © 2012 Citrix | Confidential – Do Not Distribute
  • 28. Step 5: Upgrade the Broker Service Schema • Execute upgrade_71.sql file on SQLServer in SQLCMD mode and against the XD DB • Check messages window for confirmation… • Start the Broker service one again on Controller prior to Step 7 (Next Slide) © 2012 Citrix | Confidential – Do Not Distribute
  • 29. Step 7: Check Status of Broker Service again Get-BrokerServiceStatus • Expected return value = OK • Remember: Creating simple scripts will make your life easier and can be fun to use… © 2012 Citrix | Confidential – Do Not Distribute
  • 31. Machine Tagging The Nuts and Bolts • Machine tagging first introduced in XD 5.x • Can be used to create a logical grouping of machines within a site ᵒAcross Delivery Groups & OU’s • This can have advantages when configuring HDX Policies/Access to resources • Let’s take a look… © 2012 Citrix | Confidential – Do Not Distribute
  • 32. Machine Tagging through Citrix Studio • Any machine which is part of a Delivery or Desktop Group can be tagged within Citrix Studio… © 2012 Citrix | Confidential – Do Not Distribute
  • 33. Assigning Tags through PoSH Example - Alternative Option 1. New-BrokerTag -Name <Executive> 2. $desktop = Get-BrokerDesktop -uid 1 3. Add-BrokerTag -Name Executive -desktop $desktop © 2012 Citrix | Confidential – Do Not Distribute
  • 34. Assigning Tags through PoSH Visual Example 2 © 2012 Citrix | Confidential – Do Not Distribute
  • 35. Confirming Machine UID’s © 2012 Citrix | Confidential – Do Not Distribute
  • 36. Viewing Tags through PoSH Use Select Command • Get-BrokerMachine | select machinename, tags | format-table © 2012 Citrix | Confidential – Do Not Distribute
  • 37. HDX Tag Filter Use Case • HDX Policies can be applied against specific tags… © 2012 Citrix | Confidential – Do Not Distribute
  • 38. Tip Number 6 Managing the Identity Pool StartCount and NamingScheme Parameters for MCS Catalogs
  • 39. Identity Pools Created and managed by the AD Identity Service • Associated with Catalogs © 2012 Citrix | Confidential – Do Not Distribute
  • 40. Observation IdentityPoolName & ProvisioningSchemeName matching values © 2012 Citrix | Confidential – Do Not Distribute
  • 41. XenDesktop A/C delete/re-use options MCS Only • Important to understand Delete options in relation to machine a/c mgmt… • NB: If machine AD a/c is deleted then it can be used again automatically as long as the StartCount value is reset to match • If AD a/c is not deleted then resetting the StartCount will have no impact © 2012 Citrix | Confidential – Do Not Distribute
  • 42. StartCount value determines © 2012 Citrix | Confidential – Do Not Distribute
  • 43. © 2012 Citrix | Confidential – Do Not Distribute
  • 44. Changing the NamingScheme Considerations © 2012 Citrix | Confidential – Do Not Distribute
  • 45. Changing the NamingScheme WebinarTest# • Set-AcctIdentityPool -IdentityPoolName "Windows 7 SP1 x86 - 1GB" -NamingScheme WebinarTest# -StartCount 1 • Note: Unless the StartCount value is explicitly set then it will remain as it was prior to the change in NamingScheme © 2012 Citrix | Confidential – Do Not Distribute
  • 46. Reverting NamingScheme Considerations • StartCount will not change © 2012 Citrix | Confidential – Do Not Distribute
  • 47. Tip Number 5 Controlling Access To Resources
  • 48. XD Site Policies Overview • Entitlement Policies (Pooled/Shared Desktops) ᵒGet-BrokerEntitlementPolicyRule ᵒGet-BrokerAppEntitlementPolicyRule • Assignment Policies (Dedicated/Private Desktops) ᵒGet-BrokerAssignmentPolicyRule ᵒGet-BrokerAppAssignmentPolicyRule • Access Policy ᵒGet-BrokerAccessPolicyRule (Discussed during Tip# 2) • Lets take a look… © 2012 Citrix | Confidential – Do Not Distribute
  • 49. Viewing BrokerEntitlementPolicy rule(s) Training Win7 Delivery Group • By default, no exclusions are set © 2012 Citrix | Confidential – Do Not Distribute
  • 50. © 2012 Citrix | Confidential – Do Not Distribute
  • 51. Setting a BrokerEntitlementPolicy rule Edit existing rule for relevant Delivery Group © 2012 Citrix | Confidential – Do Not Distribute
  • 52. © 2012 Citrix | Confidential – Do Not Distribute
  • 53. Revert Changes/Remove Exclusions • Use –RemoveExcludedUsers parameter or empty the array using @() ᵒSet-BrokerEntitlementPolicyRule -Name "Training Win7_1" -RemoveExcludedUsers traininguser1 -ExcludedUserFilterEnabled $false Or ᵒSet-BrokerEntitlementPolicyRule -Name "Training Win7_1" ExcludedUserFilterEnabled $false -ExcludedUsers @() © 2012 Citrix | Confidential – Do Not Distribute
  • 54. Tip Number 4 Exploring Citrix PowerShell Providers
  • 55. What are PowerShell Providers The nuts and Bolts • Extension’s which allow data structures to be mounted through PoSH • Available PSProviders can be viewed using Get-PSProvider • XenDesktop 5.x & 7.x ship with two PSproviders ᵒCitrixGroupPolicy ᵒCitrix.Hypervisor • Lets take a look…. © 2012 Citrix | Confidential – Do Not Distribute
  • 56. View all available Providers Run Get-PSProvider • Specific PS-Drives are created by default for each PSProvider © 2012 Citrix | Confidential – Do Not Distribute
  • 57. Use CD command to mount PSDrives • CD XDHYP:  Return • CD LocalGPO:  Return • CD Templates: --> Return • CitrixGroupPolicy PSProvider also supports other PSDrives that are not available by default ᵒTo view these options run Help New-PSDrive –Full from within the mounted LocalGPO or Templates drive… © 2012 Citrix | Confidential – Do Not Distribute
  • 58. Example Usage: Enabling Intellicache © 2012 Citrix | Confidential – Do Not Distribute
  • 59. LocalStorageCaching related error © 2012 Citrix | Confidential – Do Not Distribute
  • 60. Creating HDX Policies through PoSH Use the CitrixGroupPolicy PSProvider • New-PSDrive Webinar -PSProvider CitrixGroupPolicy -Root -Controller DC1dir © 2012 Citrix | Confidential – Do Not Distribute
  • 61. Enable Setting Example: ReadonlyClipboard • PS Webinar:usertrainingSettingsica> Set-ItemProperty ReadonlyClipboard Name State -Value enabled • Running dir under the Ica folder will return the following… © 2012 Citrix | Confidential – Do Not Distribute
  • 62. Configure Tag filter through Citrix Studio Allow: Training Tag © 2012 Citrix | Confidential – Do Not Distribute
  • 63. Validate Functionality Through Registry • HKLMSoftwarePoliciesCitrix<s ession#UserVCPolicies…. © 2012 Citrix | Confidential – Do Not Distribute
  • 64. Tip Number 3 Configuring Extended Disconnect/Logoff settings
  • 65. Extended Disconnect/Logoff Settings Extending Functionality… • Available for Pooled & Dedicated Desktops/Delivery Groups • Can only be configured through PoSH • Available for Peak & OffPeak hours • Let’s take a look… © 2012 Citrix | Confidential – Do Not Distribute
  • 66. View all disconnect options through PoSH • Get-BrokerDesktopGroup -Name "training win7" | select *peakdis*, *extende* | format-list © 2012 Citrix | Confidential – Do Not Distribute
  • 67. Configuring Extended Disconnect Setting Example: Peak Hours • Set-BrokerDesktopGroup -Name "Training Win7" PeakExtendedDisconnectAction suspend -PeakExtendedDisconnectTimeout 5 © 2012 Citrix | Confidential – Do Not Distribute
  • 68. Tip Number 2 Using the Site Access Policy to Restrict Access to Resources
  • 69. Site Access Policy • Contains two rules per Delivery Group by default ᵒDirect Connections ᵒConnections through Netscaler/AG • Similar to the Entitlement and Assignment site policy rules, Site access policy rules control access to resources • What is the key difference? ᵒEntitlement & Assignment policy rules control user access (included/excluded users) ᵒAccess policy rules control the wider conditions (Clientnames/ClientIPs/SmartAccessFilters) • Lets take a look… © 2012 Citrix | Confidential – Do Not Distribute
  • 70. Example: Restrict access from ClientIP • Return Access Policy rules for a specific Delivery Group ᵒGet-BrokerAccessPolicyRule -DesktopGroupName "Training Win7 - Dedicated“ • Edit the direct rule and exclude a specific IP address ᵒSet-BrokerAccessPolicyRule "Training Win7 - Dedicated_Direct" ExcludedClientIPFilterEnabled $true -ExcludedClientIPs 192.168.10.29 to restrict access from the Win7Client machine © 2012 Citrix | Confidential – Do Not Distribute
  • 71. © 2012 Citrix | Confidential – Do Not Distribute
  • 72. Tip Number 1 Manually Joining a Controller to an existing Site
  • 73. Manually Joining a Controller to an existing Site Simple three step process 1 • Create Instance Scripts for each service running on DC1 (Controller) 2 3 © 2012 Citrix | Confidential – Do Not Distribute
  • 74. Manually Joining a Controller to an existing Site Simple three step process 1 2 • Create Instance Scripts for each service running on DC1 (Controller) • Configure the DB connection string for each service 3 © 2012 Citrix | Confidential – Do Not Distribute
  • 75. Manually Joining a Controller to an existing Site Simple three step process 1 2 3 • Create Instance Scripts for each service running on DC1 (Controller) • Configure the DB connection string for each service • Register each service with the Configuration service © 2012 Citrix | Confidential – Do Not Distribute
  • 76. Lets take a look… • Complete instructions can be found here ᵒhttp://blogs.citrix.com/2013/08/20/xd-tipster-manually-joining-a-new-controller-to-anexisting-db-3-simple-steps/ © 2012 Citrix | Confidential – Do Not Distribute
  • 78. © 2012 Citrix | Confidential – Do Not Distribute
  • 79. XD Tipster Blog Series
  • 80. XD Tipster Blogs Just a selection… • http://blogs.citrix.com/2013/09/19/xd-tipster-introducing-the-new-xd7xendesktop-posh-module/ • http://blogs.citrix.com/2013/08/29/xd-tipster-machine-tagging-and-hdx-policies/ • http://blogs.citrix.com/2013/08/21/xd-tipster-changing-delivery-group-iconsrevisited-xd7/ • http://blogs.citrix.com/2013/08/20/xd-tipster-manually-joining-a-new-controllerto-an-existing-db-3-simple-steps/ • http://blogs.citrix.com/2013/10/01/xd-tipster-creating-hdx-policies-through-posh/ • http://blogs.citrix.com/2013/10/22/xd-tipster-removing-controllers-from-an-xdsite-using-posh/ © 2012 Citrix | Confidential – Do Not Distribute
  • 81. About Citrix Services Citrix Services make sure you succeed with your virtualization programs. Educate | Guide | Support | Succeed How we can help Citrix Education – The fastest, most efficient way to get your team the virtualization skills they need. Online, on-site or in class. citrix.com/training Citrix Consulting – Intensive engagements for complex, critical or just plain massive projects. citrix.com/consulting Citrix Support – Always-on support services that leverage everything we know about best-practice deployment and maintenance. citrix.com/support © 2012 Citrix | Confidential – Do Not Distribute
  • 82. Secrets of the Citrix Support Ninjas • 40 insider troubleshooting tips • Covering XenDesktop, XenServer, XenApp and NetScaler • Citrix Support top engineers • FREE eBook • Citrix Auto Support • Now available! © 2012 Citrix | Confidential – Do Not Distribute
  • 83. Premier Support Calculator Check it out © 2012 Citrix | Confidential – Do Not Distribute
  • 84. Work better. Live better.

Notas del editor

  1. Tip 10: Creating a customized XD PoSH $profilerun Test-Path $Profilerun New-Item -Type File $Profile (-Force optional / overwrite existing object)type Notepad $profile 7 hit returnadd the following lines:asnpcitrix*Import-Module -name Citrix.XenDesktop.Admin (New XD High Level Administration Module)Close PoSH and re-openTest-Path $Profile = return value = TrueRun Get-BrokerSiteRun Get-XD &amp; Tab......To delete PoSH profile --&gt; Remove-Item $PROFILESource:http://technet.microsoft.com/en-us/library/ff461033.aspxhttp://blogs.technet.com/b/heyscriptingguy/archive/2012/05/21/understanding-the-six-powershell-profiles.aspxhttp://technet.microsoft.com/en-us/library/bb613488%28v=vs.85%29.aspxhttp://technet.microsoft.com/en-us/magazine/2008.10.windowspowershell.aspx
  2. Notes:It’s location and name are what separate it from a regular .ps1 fileQuerying the $profile will return the full path to the default profile locationDefault PoSH Profile:%UserProfile%\My Documents\WindowsPowerShell\Microsoft.PowerShell_profile.ps1
  3. Test-path $profile (Expected return value = False) / No Existing PoSH profileTo remove an existing PoSH profile use the following: Remove-Item -force $profile
  4. Notes:asnp citrix* will load all Citrix XD snap-ins i.e all XD cmdletsImport-Module -name Citrix.XenDesktop.Admin will import the new XD Administration module and its associated cmdlets. For more information see http://blogs.citrix.com/2013/09/19/xd-tipster-introducing-the-new-xd7-xendesktop-posh-module/
  5. -Force [&lt;SwitchParameter&gt;] Allows the cmdlet to create an item that writes over an existing read-only item. Implementation varies from pro vider to provider. For more information, see about_Providers. Even using the Force parameter, the cmdlet cannot override security restrictions.
  6. After the PoSH Profile has been configured correctly, you can close the PoSH window, even log-out of the machine and the next time you launch an instance of PoSH – the configured profile will load and customize your env.
  7. Tip 9: Service MGMT (Checking The state of FMA services through PoSH)Run Script - statuserror.ps1Run Help Get-BrokerServiceStatus –Full to view details about DBMissingOptionalFeature return value
  8. Just because the Controller FMA services appear to be running fine through the windows services applet, this does not mean that they are in a healthy state internally. The exact status can and should be queried through PoSH.
  9. Run Help Get-BrokerServiceStatus –Full to view full list of return values for the Broker service for example…
  10. Run Help Get-BrokerServiceStatus –Full to view full list of return values for the Broker service for example…
  11. Run Help Get-BrokerServiceStatus –Full to view full list of return values for the Broker service for example…
  12. Ref: http://support.citrix.com/static/kc/CTX127254/help/Get-BrokerServiceStatus.html
  13. Ref: http://support.citrix.com/static/kc/CTX127254/help/Get-BrokerServiceStatus.html
  14. &quot; &quot;&quot;Current Status of Controller Services&quot;&quot; &quot;&quot; &quot;&quot; &quot;write-host –NoNewLine &quot;Broker Service&quot; -BackgroundColor &quot;RED&quot; -ForegroundColor &quot;Black&quot;Get-BrokerServiceStatus | select ser* | format-listwrite-host –NoNewLine &quot;Configuration Service&quot; -BackgroundColor &quot;Green&quot; -ForegroundColor &quot;Black&quot;Get-ConfigServiceStatus | select ser* | format-listwrite-host –NoNewLine &quot;Host Service&quot; -BackgroundColor &quot;Green&quot; -ForegroundColor &quot;Black&quot;Get-HypServiceStatus | select ser* | format-listwrite-host –NoNewLine &quot;Machine Creation Service&quot; -BackgroundColor &quot;Green&quot; -ForegroundColor &quot;Black&quot;Get-ProvServiceStatus | select ser* | format-listwrite-host –NoNewLine &quot;AD Identity Service&quot; -BackgroundColor &quot;Green&quot; -ForegroundColor &quot;Black&quot;Get-AcctServiceStatus | select ser* | format-listwrite-host –NoNewLine &quot;Monitor Service&quot; -BackgroundColor &quot;Green&quot; -ForegroundColor &quot;Black&quot;Get-MonitorServiceStatus | select ser* | format-listwrite-host –NoNewLine &quot;Configuration Service LOgging&quot; -BackgroundColor &quot;Green&quot; -ForegroundColor &quot;Black&quot;Get-LogServiceStatus | select ser* | format-listwrite-host –NoNewLine &quot;Environment Test Service&quot; -BackgroundColor &quot;Green&quot; -ForegroundColor &quot;Black&quot;Get-EnvTestServiceStatus | select ser* | format-listwrite-host –NoNewLine &quot;StoreFront Service&quot; -BackgroundColor &quot;Green&quot; -ForegroundColor &quot;Black&quot;Get-SFServiceStatus | select ser* | format-listwrite-host –NoNewLine &quot;Delegated Administration Service&quot; -BackgroundColor &quot;Green&quot; -ForegroundColor &quot;Black&quot;Get-AdminServiceStatus | select ser* | format-list
  15. Tip 8: Checking &amp; Updating DB Schema versions manually through PoSHRun Get-BrokerInstalledDBVersion - Return value = 7.0.0.0 (Reason for error)Run Get-BrokerInstalledDBVersionRun Get-BrokerInstalledDBVersion - upgradeUpdate Schema manually by creating update script and applying to DB:$upgrade = Get-BrokerDBVersionChangeScript -DatabaseName CitrixTraining -TargetVersion 7.1.0.0$upgrade.Script &gt; update_71.sql (Already exists on SQLServer)Stop Broker service on DC1 or run reset.ps1 (Note usage of -Force switch) to unconfigure all servicesExecute update_71.sql on SQLServerRun Script - statusfixed.ps1 again: return value for Broker Service = OK
  16. Based on the description of the DBMissingOptionalFeature return value when checking the status of the Broker Service through PoSH:“The broker is connected to a database that is valid, but it does not have the full functionality required for optimal performance. Upgrading the database is advisable.”It appears the DB schema for the Broker service is out of date or out of sync with the Broker Service binary version. Run Get-BrokerInstalledDbVersion to check the
  17. After confirming the DB schema version for the broker service in the previous slide i.e. 7.0.0.0, running Get-BrokerController will give a good indication if the schema is out of date i.e. Broker Schema should be 7.1.0.0 to match major and minor versions above.
  18. C:\&gt;$upgrade = Get-BrokerDBVersionChangeScript -DatabaseName CitrixTraining -TargetVersion 7.1.0.0C:\&gt;$upgrade.Script &gt; update_71.sql (Already exists on SQLServer)
  19. Note: In fact, Only the Broker service has to be un-configured to place a Controller in an off state.
  20. Note: if you stopped the Broker service in step 4 then just start the service again. If you disconnected all services from the DB using a script or manually using PoSH then reset each service to point to the DB again.
  21. Script:&quot; &quot;&quot;Current Status of Controller Services&quot;&quot; &quot;&quot; &quot;&quot; &quot;write-host –NoNewLine &quot;Broker Service&quot; -BackgroundColor &quot;Green&quot; -ForegroundColor &quot;Black&quot;Get-BrokerServiceStatus | select ser* | format-listwrite-host –NoNewLine &quot;Configuration Service&quot; -BackgroundColor &quot;Green&quot; -ForegroundColor &quot;Black&quot;Get-ConfigServiceStatus | select ser* | format-listwrite-host –NoNewLine &quot;Host Service&quot; -BackgroundColor &quot;Green&quot; -ForegroundColor &quot;Black&quot;Get-HypServiceStatus | select ser* | format-listwrite-host –NoNewLine &quot;Machine Creation Service&quot; -BackgroundColor &quot;Green&quot; -ForegroundColor &quot;Black&quot;Get-ProvServiceStatus | select ser* | format-listwrite-host –NoNewLine &quot;AD Identity Service&quot; -BackgroundColor &quot;Green&quot; -ForegroundColor &quot;Black&quot;Get-AcctServiceStatus | select ser* | format-listwrite-host –NoNewLine &quot;Monitor Service&quot; -BackgroundColor &quot;Green&quot; -ForegroundColor &quot;Black&quot;Get-MonitorServiceStatus | select ser* | format-listwrite-host –NoNewLine &quot;Configuration Service LOgging&quot; -BackgroundColor &quot;Green&quot; -ForegroundColor &quot;Black&quot;Get-LogServiceStatus | select ser* | format-listwrite-host –NoNewLine &quot;Environment Test Service&quot; -BackgroundColor &quot;Green&quot; -ForegroundColor &quot;Black&quot;Get-EnvTestServiceStatus | select ser* | format-listwrite-host –NoNewLine &quot;StoreFront Service&quot; -BackgroundColor &quot;Green&quot; -ForegroundColor &quot;Black&quot;Get-SFServiceStatus | select ser* | format-listwrite-host –NoNewLine &quot;Delegated Administration Service&quot; -BackgroundColor &quot;Green&quot; -ForegroundColor &quot;Black&quot;Get-AdminServiceStatus | select ser* | format-list
  22. Tip 7: Machine TaggingSet Some tags through Citrix Studio - W7dedicated1.training.lab = TrainingRun Get-BrokerMachine | select machinename, tags | format-table through PoSHExtra steps If needed: (time permitting) run Get-BrokerDesktop | select machinen*, uid | format-table + Take note of Desktop UId of Training\W7dedicated2 machine = 4run New-BrokerTag -Name &lt;Finance&gt; to create new Tagrun $desktop = Get-BrokerDesktop -uid 4Add-BrokerTag -Name finance -desktop $desktop
  23. Once Machines have been logical grouped, HDX policies can be applied to the specific tag (subset of machines).
  24. With tags, you can deliver a HDX policy for example to a subset of machines across Delivery Groups/Delivery Group types and OUs (the three well known machine filters)…-Tags can be added and edited with Citrix Studio.-Multiple tags can be assigned -Tags can overlap machines of course
  25. Note: Tags support the asterisk (*) wildcardAlso see: http://blogs.citrix.com/2013/08/29/xd-tipster-machine-tagging-and-hdx-policies/Note: you will need to know the Uid of the desktop you want to apply the tag against – see next slide…
  26. run Get-BrokerDesktop | select machinen*, uid | format-table + Take note of Desktop UId of Training\W7dedicated2 machine = 4run New-BrokerTag -Name &lt;Finance&gt; to create new Tagrun $desktop = Get-BrokerDesktop -uid 4Add-BrokerTag -Name finance -desktop $desktop
  27. Get-BrokerDesktop | select machinen*, uid | format-table
  28. Using the Select command to only return information from specific tables is optimal. You can also format the returned output as you see fit using the various format options:Format-TableFormat-List…
  29. Quite often, the tag filter is ignored or mis-understood. Filtering policies by Machine tags can be very useful.
  30. Tip 7: Machine TaggingSet Some tags through Citrix Studio - W7dedicated1.training.lab = TrainingRun Get-BrokerMachine | select machinename, tags | format-table through PoSHExtra steps If needed: (time permitting) run Get-BrokerDesktop | select machinen*, uid | format-table + Take note of Desktop UId of Training\W7dedicated2 machine = 4run New-BrokerTag -Name &lt;Finance&gt; to create new Tagrun $desktop = Get-BrokerDesktop -uid 4Add-BrokerTag -Name finance -desktop $desktop
  31. Each MCS based catalog is associated with an identity pool of the same name which manages computer a/c’s for all machines generated from the parent catalog.Based on the screenshot above, The next machine to be created from the Windows 7 SP1 x86 – 1GB catalog (The IdentityPoolName value is inherited from the catalog name) would be W7PoolRandom4… see next slide.
  32. The IdentityPoolName value is inherited from the catalog name i.e. ProvisioningSchemeName
  33. With the introduction of XD5.x and MCS we introduced some flexibility in relation to AD computer a/c management….If the StartCount value is reset then MCS will create the next machine using the next StartCount value as long a matching computer a/c does not exist in AD. If it does then it will move onto the next available count value…
  34. Each MCS based catalog is associated with an identity pool of the same name which manages computer a/c’s for all machines generated from the parent catalog. The StartCount value is not reset if Desktops are deleted.The StartCount value in the above screenshot is 6 as the last AD a/c assigned to a machine was W7PoolRandom5
  35. The StartCount value in the above screenshot is 2 as the last AD a/c assigned to a machine was W7PoolRandom1You will also notice that the same machine exists i.e. W7PoolRandom5 as per the previous slide also. We can only create a new machine with a numeric number lower then 5 i.e. 1 after we reset the StartCount back to 1. Note: Regardless of machines being deleted, MCS will continue to increment the numeric or alpha value at the end of the NamingScheme.
  36. Set-AcctIdentityPool -IdentityPoolName &quot;Windows 7 SP1 x86 - 1GB&quot; -NamingScheme WebinarTest# -StartCount 1Result: Any new machines created from the catalog will inherit the new NamingScheme
  37. Tip 5: Controlling Access To Resources (Example: Using the Broker Entitlement Policy to explicitly exclude a user from accessing desktops with a Delivery Group)1.Login to StoreFront and Show 3 Desktops available for User12.from within PoSH on DC1 change the Entitlement Policy for the Win7 pooled Delivery Group to exclude user1:Set-BrokerEntitlementPolicyRule -Name &quot;Training Win7_1&quot; -ExcludedUserFilterEnabled $true -ExcludedUsers training\user13.Refresh or logout/in again to StoreFront and notice that only 2 Desktops are now available for User1 (My Win7 Pooled Desktops button is missing)4.Discuss how to revert exclusions: Set-BrokerEntitlementPolicyRule -Name &quot;Training Win7_1&quot; -RemoveExcludedUsers training\user1 -ExcludedUserFilterEnabled $falseorSet-BrokerEntitlementPolicyRule -Name &quot;Training Win7_1&quot; -ExcludedUserFilterEnabled $false -ExcludedUsers @()
  38. The above policies (Entitlement &amp; Assignment) control access to resources and also the conditions (Access Policy) under which resources can be accessed.Assignment policies are useful if you are assigning users on first use at the Delivery Group level. No impact if you exclude the same user that you pre-assign to a desktop as the pre-assignment will override the exclusion.
  39. Without any exclusions set, User1 has access to Three delivery Groups and the contained Desktops through association with the Domain Users Group…
  40. To set an exclusion use the following command as an example: Set-BrokerEntitlementPolicyRule -Name &quot;Training Win7_1&quot; -ExcludedUserFilterEnabled $true -ExcludedUsers training\user1
  41. After editing the existing Broker Entitlement Policy for the Training Win7 Delivery Group and excluding user1 refreshing StoreFront will reflect this…Set-BrokerEntitlementPolicyRule -Name &quot;Training Win7_1&quot; -ExcludedUserFilterEnabled $true -ExcludedUsers training\user1
  42. Tip 4: Exploring Citrix PowerShell Providersshow usage of XDHYP: and LocalGPO: PS-DrivesRun Get-PSProviderchange Dir to XDHYP:cd to Hostingunits dirrun Set-Item -LiteralPath xdhyp:\hostingunits\local -UseLocalStorageCaching $true to enable intellicacheadd new machine to existing catalog or crate new catalog = ERRORrun Set-Item -LiteralPath xdhyp:\hostingunits\local -UseLocalStorageCaching $false to disable intellicachecd into localgpo: driveRun help New-PSDrive -full and create simple HDX policy in Site DBCreating a HDX Policy in Site DB:Create New PSDrive: New-PSDrive Webinar -PSProvider CitrixGroupPolicy -Root \ -Controller DC1drill down to \user\training\settings\ICA&gt;create setting and enable value: Set-ItemProperty ReadonlyClipboard -Name State -Value enabledSet tag through Citrix Studio and launch W7dedicated1 through Storefront as user1 and check to see if policy has been applied
  43. Windows includes some default PSProviders to mount and access the registry and File System through PoSH…
  44. Other PSDrive Options as per the Help New-PSDrive –Full command:New-PSDrive [-Name] &lt;string&gt; [-PSProvider] &lt;string&gt; [-Root] &lt;string&gt; [-Credential &lt;PSCredential&gt;] [-Description &lt;string&gt;] [-Scope &lt;string&gt;] [-Confirm] [-WhatIf] [-UseTransaction] [&lt;CommonParameters&gt;]New-PSDrive [-Name] &lt;string&gt; [-PSProvider] &lt;CitrixGroupPolicy&gt; [-Root] &lt;string&gt; -DomainGpo &lt;string&gt; [-DomainController &lt;string&gt;] [-Description &lt;string&gt;] [-Scope &lt;string&gt;] [-Confirm] [-WhatIf] [&lt;CommonParameters&gt;]New-PSDrive [-Name] &lt;string&gt; [-PSProvider] &lt;CitrixGroupPolicy&gt; [-Root] &lt;string&gt; -LocalGpo &lt;string&gt; [-Description &lt;string&gt;] [-Scope &lt;string&gt;] [-Confirm] [-WhatIf] [&lt;CommonParameters&gt;]New-PSDrive [-Name] &lt;string&gt; [-PSProvider] &lt;CitrixGroupPolicy&gt; [-Root] &lt;string&gt; -FarmGpo &lt;string&gt; [-Description &lt;string&gt;] [-Scope &lt;string&gt;] [-Confirm] [-WhatIf] [&lt;CommonParameters&gt;]New-PSDrive [-Name] &lt;string&gt; [-PSProvider] &lt;CitrixGroupPolicy&gt; [-Root] &lt;string&gt; -Controller &lt;string&gt; [-LoggingId &lt;Guid&gt;] [-Description &lt;string&gt;] [-Scope &lt;string&gt;] [-Confirm] [-WhatIf] [&lt;CommonParameters&gt;]New-PSDrive [-Name] &lt;string&gt; [-PSProvider] &lt;CitrixGroupPolicy&gt; [-Root] &lt;string&gt; -Templates [-Description &lt;string&gt;][-Scope &lt;string&gt;] [-Confirm] [-WhatIf] [&lt;CommonParameters&gt;]
  45. UseSet-Item -LiteralPath xdhyp:\hostingunits\local -UseLocalStorageCaching $true to enable intellicache (LocalStorageCaching) for the Hosting Unit.Local = HostingUnitNameNote: LocalStorageCaching is only supported on NFS shared storage and as per the screenshot above where local storage is being used, Citrix Studio will throw an error when trying to add machines to an existing MCS based catalog or when trying to create a new Catalog – see next slide for an example.
  46. The following issue will be seen if Intellicache (LocalStorageCaching)is enabled for local storageTo Resolve the above issue you could disable Intellicache (LocalStorageCaching)Set-Item -LiteralPath xdhyp:\hostingunits\local -UseLocalStorageCaching $false
  47. We can use the CitrixGroupPolicy PSProvider to create and edit polices in AD and in the Site DB. Understanding how to do this can be very useful especially for automation purposes…
  48. Filters can also be configured through PoSH…
  49. After launching a desktop associated with the training tag, you can open the registry and confirm that the policy was applied correctly. This validates the usage of tags in relation to HDX policy filtering.
  50. Source: http://technet.microsoft.com/en-us/library/ff461033.aspx
  51. Note: Logoff options will not impact Pooled machines of course as a pooled machine will always restart at logoff regardless of power policy setting through the SDK
  52. Note: Timeout is set in minutes
  53. Tip 2: Using the Site Access Policy to Restrict Access to ResourcesExample:within PoSH run Get-BrokerAccessPolicyRule -DesktopGroupName &quot;Training Win7 - Dedicated&quot; to return both default rules for the &quot;Training Win7 - Dedicated&quot; delivery GroupRun Set-BrokerAccessPolicyRule &quot;Training Win7 - Dedicated_Direct&quot; -ExcludedClientIPFilterEnabled $true -ExcludedClientIPs 192.168.10.29 to restrict access from the Win7Client machineLog into Storefront as Training User1 and notice that the Win7 Dedicated machine icon is no longer visibleremove filter: Set-BrokerAccessPolicyRule &quot;Training Win7 - Dedicated_Direct&quot; -ExcludedClientIPFilterEnabled $false -ExcludedClientIPs @()
  54. Set-BrokerAccessPolicyRule &quot;Training Win7 - Dedicated_Direct&quot; -ExcludedClientIPFilterEnabled $true -ExcludedClientIPs 192.168.10.29
  55. After applying the ExcludedClientIPs filter to the direct default access policy of the Training Win7 – Dedicated delivery Group, the machines will no longer be available through Storefront…
  56. http://blogs.citrix.com/2013/08/20/xd-tipster-manually-joining-a-new-controller-to-an-existing-db-3-simple-steps/
  57. Create Instance Scripts for each service running on DC1 (Controller)Configure the DB connection string for each serviceRegister each service with the Configuration serviceLets take a look…
  58. Create Instance Scripts for each service running on DC1 (Controller)Configure the DB connection string for each serviceRegister each service with the Configuration serviceLets take a look…
  59. Create Instance Scripts for each service running on DC1 (Controller)Configure the DB connection string for each serviceRegister each service with the Configuration serviceLets take a look…
  60. For more XD Tipster Blogs see the official Citrix Blogs page and/or follow @Xdtipster for announements
  61. At Citrix Services - we’re Citrix consultants, teachers and support engineers and we’re all about one thing: making sure you succeed.With our help, you’ll deploy high-performance, robust virtualization and networking projects, faster – with dramatically lower risk and higher return.The best Citrix architects and administrators are the ones who never stop learning – and Citrix Education is here to help you learn those skills.Citrix Consulting gives you direct access to our most experienced virtualization and networking experts.When it’s complex; when it’s mission-critical; when it’s big; That’s when Citrix consultants can really help.On your virtualization journey, you’ll want always-on support from people who really care about your success.There’s no better insurance for your Citrix investment than with Citrix Support.
  62. Secrets of the Citrix Support Ninjas is a FREE eBook available next week.The eBook contains 40 insider troubleshooting tips for administrators.So the purpose of the eBook is to help administrators like you keep your Citrix deployments on track.We’ve collected some of their best tips and tricks for running robust Citrix environments and packaged them up into a free eBook.In it, you’ll discover some of the little-known tricks that our own support people use every day to tune, tweak, troubleshoot and test Citrix solutions. You may know a few of these tips. But you probably don’t know them all.And – you never know – you might discover just one that will change your life as an administrator.Let me give you a sneak peak now.