Cumulative Update (CU1) Pack for System Center 2012 Configuration Manager Service Pack 1 (SP1)

Microsoft has released the first Cumulative Update (CU1) Pack for System Center 2012 Configuration Manager Service Pack 1 (SP1).

This CU1 is available here!

An overview:

Issues that are fixed

Administrator Console

  • A Discovery Data Record (DDR) that contains organizational unit (OU) paths that are longer than 220 characters are not processed. The DDM.log file on the site server contains event messages that resemble the following:

CDiscoverySource::ValidateSchema – array property User OU Name cannot expand size so rejecting.


CDiscoverDataManager::ProcessDDRs – Unable to update data source.

  • The Allow clients to use a fallback source location for content option is missing from the Distribution Points tab of the package properties.

Site systems

  • Replication Configuration Manager incorrectly reports the link status as Degraded and then reports the status as Activeone minute later.
  • Site replication fails after a site database is restored to a new server. Additionally, the Rcmctrl.log file contains the following error message:

ERROR: Received unhandled SQL exception, printing info and throwing it again. This will be retried in next cycle.
SqlException number: [8115]
ERROR: Exception message: [Arithmetic overflow error converting expression to data type int.~~The ‘spGetChangeTrackingMinValidVersion’ procedure attempted to return a status of NULL, which is not allowed. A status of 0 will be returned instead.]


Device management

  • The Configuration Manager client cannot be installed on devices that contain newer ARM processors. Additionally, the following error message is logged in the DmClientSetup log file:

    Fail to get the CAB file name because of unsupported processor type: 0

Software updates

  • The Allow clients to share content with other clients on the same subnet option in the properties of a Software Update Group Deployment is ignored. Additionally, the DataTransferService.log file contains the following message:

    Not using branch cache option.

  • When a custom port is configured for software updates, an Internet only client may append the custom port to the URL for the Windows Update service. Additionally, when the custom port is set to 880, log entries that resemble the following may be logged in the DataTransferService.log file:

    UpdateURLWithTransportSettings(): OLD URL – http://download.windowsupdate.com/msdownload/update.cab

    UpdateURLWithTransportSettings(): NEW URL – http://download.windowsupdate.com:880/msdownload/update.cab

  • The Schedule Updates Wizard does not list content for Windows Server 2012. For more information about this issue, click the following article number to view the article in the Microsoft Knowledge Base:

    2793237 FIX: The Schedule Updates Wizard does not list content for Windows Server 2012 in System Center 2012 Configuration Manager Service Pack 1

Client

  • The MicrosoftPolicyPlatformSetup.msi file is now correctly signed.
  • The selection of multiple targeted applications in Software Center will fail if the calendar region is set to Arabic (Saudi Arabia). Additionally, Software Center displays the following error message:

    Software Center cannot be loaded. There is a problem loading the required components for Software Center. You can try launching Software Center at a later time. If the problem continues, you can contact your helpdesk.

  • The hardware inventory on a computer that is running a 32-bit version of Windows Server 2003 R2 may cause the Wmiprvse.exe process to exit unexpectedly. Additionally, when you view the results of the fault, the details of the fault resemble the following:

    Faulting application wmiprvse.exe, version 5.2.3790.4455, faulting module msvcr90.dll, version 9.0.30729.6161, fault address 0x00056b1d

  • PXE support is added for IA-32 EFI computers.

PowerShell

  • When the Clear-CMPxeDeployment cmdlet is run, you receive the following error message:

    The method or operation is not implemented.

  • When the Update-CMDistributionPoint –DeploymentTypeName cmdlet is run, you receive the following error message:

    Key not Found Exception.

  • When the New-CMDeviceCollection cmdlet is run, the refreshschedule parameter is not defined in theNewByLimitName parameter set.
  • When the New-CMDeviceCollection cmdlet is run together with the LimitingCollectionName option, the cmdlet is unsuccessful. Additionally, you receive the following error message:

    Unable to cast object of type ‘Microsoft.ConfigurationManagement.ManagementProvider.WqlQueryEngine.WqlArrayItems’ to type’System.Management.ManagementBaseObject’.

  • When the .GetType method is used for the object that is returned by the New-CMSchedule cmdlet, the method is unsuccessful. Additionally, you receive the following error message:

    The adapter cannot get property “GetType” for instance of SMS_ST_RecurInterval.

  • When the Import-CMComputerInformation -CollectionName “All Systems” -ComputerName “Computer01” -MacAddress “xx:xx:xx:xx:xx:xx command is run, the command is unsuccessful. Additionally, you receive the following error message:

    WARNING: The collection All Systems does not exist or is not suitable for adding the new device.

Functionality that is updated

PowerShell

Help for PowerShell is updated for the cmdlets that are included in Configuration Manager Service Pack 1 and in this cumulative update. In a PowerShell environment, use the Update-Help –Module ConfigurationManager cmdlet to retrieve the latest Help information from Microsoft.

The following cmdlets are added to the PowerShell module:

  • Add-CMDistributionPoint
  • Import-CMAntiMalwarePolicy
  • Import-CMDriver
  • New-CMAppVVirtualEnvironment
  • New-CMMigrationJob
  • New-CMPackage
  • New-CMSoftwareUpdateAutoDeploymentRule
  • New-CMTaskSequence
  • New-CMTaskSequenceInstallUpdateAction
  • New-CMTaskSequenceMedia
  • New-CMUserDataAndProfileConfigurationItem
  • Remove-CMTaskSequenceInstallUpdateAction
  • Set-CMTaskSequenceGroup
  • New-CMTaskSequenceGroup
  • Remove-CMTaskSequenceGroup
  • Set-CMApplicationCatalogWebsitePoint
  • Set-CMAppVVirtualEnvironment
  • Set-CMClientPushInstallation
  • Set-CMClientSetting
  • Set-CMDistributionPoint
  • Set-CMDriver
  • Set-CMEndpointProtectionPoint
  • Set-CMEnrollmentPoint
  • Set-CMEnrollmentProxyPoint
  • Set-CMHierarchySetting
  • Set-CMManagementPointComponent
  • Set-CMOperatingSystemImageUpdateSchedule
  • Set-CMOutOfBandManagementComponent
  • Set-CMReportingServicePoint
  • Set-CMSite
  • Set-CMSoftwareUpdateAutoDeploymentRule
  • Set-CMSoftwareUpdatePointComponent
  • Set-CMStateMigrationPoint
  • Set-CMStatusSummarizer
  • Set-CMSystemHealthValidatorPointComponent
  • Set-CMTaskSequence
  • Set-CMTaskSequenceInstallUpdateAction
  • Set-CMUserDataAndProfileConfigurationItem
  • Start-CMDistributionPointUpgrade

Logon Process Citrix XenApp

While working with the ComTrade Management Pack (XenApp) for OpsMgr 2012 there was an alert about the User Logon Process.

The alert:

Well oké that takes a while!

But what are the phases they talk about?

PHASE 1: USER PROFILE LOADING

The phase starts just after the user credentials are validated and lasts until the profile is downloaded from the profile storage (network share).
Reasons for slow logon phase can be:

  • issues with network and profile storage availability;
  • high network load;
  • big profile size;
  • first time use of this profile on the server (the cached version of the roaming profile does not exist);
  • corrupted profile.

Additionally, monitoring of Windows user profiles for the presence and amount of the specific file categories is important. Various file categories should be tracked: executable files, media files, and custom files.

PHASE2: APPLYING GROUP POLICY OBJECTS (GPOs)

During this phase, the server applies user settings defined on the Domain Controller.
Reasons for the slow logon phase can be:

  • issues with network and domain controller availability;
  • issues with required infrastructure (required services and components are either not running or configured as expected);
  • system time is not configured correctly;
  • high network load;
  • high amount of policy settings.

PHASE 3: USER ENVIRONMENT INITIALIZATION

During this phase, network connections are restored and profile settings, such as fonts and screen colors, are loaded. Also, if this is the first time this profile is being used, some extra initialization is applied. The default profile is created, first time use settings are applied for the shell (Explorer), Internet Explorer, Office (particularly Outlook), and any other application that uses Active Setup.
Reasons for the slow logon phase can be:

  • corrupted profile;
  • issues with restoring the network connection(s);
  • first time use of profile on the server.

 

PHASE 4: LOGON SCRIPT EXECUTION

This phase is measured by how long the USRLOGON.CMD script (located in %SystemRoot%\system32) is being executed. The script’s original function is to address issues with legacy applications that were not written with a multi-user environment, such as Terminal Server, in mind. It uses application compatibility scripts (located in  %SystemRoot%\Application Compatibility Scripts) in conjunction with the %ROOTDRIVE% variable to address these issues. USRLOGON.CMD script is also used as a starting point for custom profiles.
Reasons for the slow logon phase can be:

  • issues with application compatibility scripts;
  • legacy applications;
  • custom profile initialization.

You should differentiate between Terminal Server (RDP client) and Citrix (ICA client) logon. If the user used the RDP connection to log on to the server, this will be the last phase of the logon process.

PHASE 5: CITRIX APPLICATION INITIALIZATION

This phase covers Citrix specific activity before it launches the requested application: launching seamless windows engine shell, auto creation of client printers, and ICA client update process.
Reasons for the slow logon phase can be:

  • issues with the client printer (usually third party printer drivers);
  • issues with retrieving ICA client version and the rest of the update process.

 

 

Original source: here.

NetApp Data ONTAP 8.1.1 – SMB2.1 oplocks

With a NetApp FAS2240-2 filer with CIFS enabled I encountered a problem with the performance of Windows File Share clients and Citrix XenApp Servers on Windows Server 2008 R2 SP1.

After investigation of the problem it filtered down to user data, but then for random users. Hmm oke not good. Further investigation led to the real error: Oplocks on the NetApp filer. Oplocks are used for performance and should not be a problem!

So what was happening?

The NetApp was running Data ONTAP 8.1.1 which should be able to talk SMB2. And it does! But Windows Server 2008 R2 SP1 talks SMB2.1….and Data ONTAP 8.1.1 does not!

Aha so that’s where my Oplocks and unrecognized commands are coming from.

Solution:

Upgrade the NetApp filer to Data ONTAP 8.1.2 (which has SMB2.1 disabled by default) and all my errors (and problems went away).

 

This is also discussed on the NetApp forum under: https://forums.netapp.com/thread/35860

 

More Info on Oplocks:

Opportunistic locking (oplocks) is a Windows-specific mechanism for client/server data to allow multiple processes to lock the same file while allowing for local (client) data caching to improve performance over Windows networks.

Microsoft’s documentation states “An opportunistic lock (also called an oplock) is a lock placed by a client on a file residing on a server. In most cases, a client requests an oplock so it can cache data locally, thus reducing network traffic and improving apparent response time. Oplocks are used by network redirectors on clients with remote servers, as well as by client applications on local servers” and “Oplocks are requests from the client to the server. From the point of view of the client, they are opportunistic. In other words, the server grants such locks whenever other factors make the locks possible.”.

You can read more about oplocks in Microsoft’s documentation:

 

 

NetApp Performance Monitoring

 

Netapp sysstat reports filer performance statistics like CPU utilization, the amount of disk traffic, and cache utilization. When run without options, sysstat will print a new line every 15 seconds, of just a basic amount of information. You have to use control-C (^c) or set the interval count (-c count ) to stop sysstat after time. For more detailed information, use the -u option. For specific information to one particular protocol, you can use other options.

 

More info: http://www.wafl.co.uk/sysstat/

 

Synopsis:

sysstat [ interval ]

sysstat [ -c count ] [ -s ] [ -u | -x | -m | -f | -i | -b ] [ interval ]

  • -c count

    Terminate the output after count number of iterations. The count is a positive, nonzero integer, values larger than LONG_MAX will be truncated to LONG_MAX.

  • -s

    Display a summary of the output columns upon termination, descriptive columns such as `CP ty’ will not have summaries printed. Note that, with the exception of `Cache hit’, the `Avg’ summary for percentage values is an average of percentages, not a true mean of the underlying data. The `Avg’ is only intended as a gross indicator of performance. For more detailed information use tools such as nfsstat, netstat, or statit.

  • -f

    For the default format display FCP statistics.

  • -i

    For the default format display iSCSI statistics.

  • -b

    Display the SAN extended statistics instead of the default display.

  • -u

    Display the extended utilization statistics instead of the default display.

  • -x

    Displays the extended output format instead of the default display. This includes all available output fields. Be aware that this produces output that is longer than 80 columns and is generally intended for “offline” types of analysis and not for “realtime” viewing.

  • -m

    Displays multi-processor CPU utilization statistics. In addition to the percentage of the time that one or more CPUs were busy (ANY), the average (AVG) is displayed, as well as, the individual utilization of each processor.

  • interval

    A positive, non-zero integer that represents the reporting interval in seconds. If not provided, the default is 15 seconds.

     

Here are some explanations on the columns of netapp sysstat command.

 

Cache age : The age in minutes or seconds (by the added s) of the oldest read-only blocks in the buffer cache. Data in this column indicates how fast read operations are cycling through system memory; when the filer is reading very large files, buffer cache age will be very low. Also if reads are random, the cache age will be low. If you have a performance problem, where the read performance is poor, this number may indicate you need a larger memory system or  analyze the application to reduce the randomness of the workload.

 

Cache hit : This is the WAFL cache hit rate percentage. This is the percentage of times where WAFL tried to read a data block from disk that and the data was found already cached in memory. A dash in this column indicates that WAFL did not attempt to load any blocks during the measurement interval.

 

CP Ty : Consistency Point (CP) type is the reason that a CP started in that interval. The CP types are:

 


  • No CP started during sampling interval

  • number

    Number of CPs started during sampling interval, if greater than one

  • B

    Back to back CPs (CP generated CP)

  • b

    Deferred back to back CPs (CP generated CP)

  • F

    CP caused by full NVLog

  • H

    A type H CP is a CP from high watermark in modified buffers. If a CP is not in progress, and the number of buffers holding data that has been modified but not yet written to disk exceeds a threshold, then a CP from high watermark is triggered.

  • L

    A type L CP is a CP from low watermark in available buffers. If a CP is not in progress, and the number of buffers available goes below a threshold, then a CP form low watermark is triggered.

  • S

    CP caused by snapshot operation

  • T

    CP caused by timer

  • U

    CP caused by flush

  • Z

    CP caused by internal sync

  • V

    CP caused by low virtual buffers

  • M

    CP caused by low mbufs

  • D

    CP caused by low datavecs

  • :

    continuation of CP from previous interval

  • #

    continuation of CP from previous interval, and the NVLog for the next CP is now full, so that the next CP will be of type B.

 

The type character is followed by a second character which indicates the phase of the CP at the end of the sampling interval. If the CP completed during the sampling interval, this second character will be blank. The phases are:

 

  • 0

    Initializing

  • n

    Processing normal files

  • s

    Processing special files

  • q

    Processing quota files

  • f

    Flushing modified data to disk

  • v

    Flushing modified superblock to disk

     

CP util : The Consistency Point (CP) utilization, the % of time spent in a CP.  100% time in CP is a good thing. It means, the amount of time, used out of the cpu, that was dedicated to writing data, 100% of it was used. 75% means, that only 75% of the time allocated to writing data was utilized, which means we wasted 25% of that time. A good CP percentage has to be at or near 100%.

 

Examples:

 

sysstat
Display the default output every 15 seconds, requires control-C to terminate.

sysstat 1
Display the default output every second, requires control-C to terminate.

sysstat -s 1
Display the default output every second, upon control-C termination print out the summary statistics.

sysstat -c 10
Display the default output every 15 seconds, stopping after the 10th iteration.

sysstat -c 10 -s -u 2

sysstat -u -c 10 -s 2
Display the utilization output format, every 2 seconds, stopping after the 10th iteration, upon completion print out the summary statistics.

sysstat -x -s 5
Display the extended (full) output, every 5 seconds, upon control-C termination print out the summary statistics.