Tuesday, December 11, 2018
SCCM - Content failed to update package - PullDP notification failed.
One on my PullDP not working since some days. Some content failed to update package
As you can see SMS_DP$ have always .tz files
Usually, it is a IIS Problem or client problem. All my check seems indicated all working...
BUT reading PkgXferMgr.log log file on my secondary I can see some errors on this Pull DP
Failed to notify PullDP. check \\SCOMPUTERNAME.DOMAIN.NET\SMS_DP$\sms\logs\smsdpprov.log
PullDP notification failed. Failure count = 1/30, Restart time = 11/12/2018 1:38:08 AM AUS Eastern Daylight Time
As all my test not indicated anything wrong, I use (again) ApiMonitor to monitor SCCM API
IWbemServices::ExecMethod ( "SMS_DistributionPoint", "NotifyPullDP", 0, NULL, NULL, 0x000000be9ccdf910, NULL ) WBEM_E_PROVIDER_LOAD_FAILURE 0x80041013 = Provider load failure
Now I try to finding to duplicate same problem using Powershell
using this next commands I finally find same problem
Get-WmiObject -ComputerName MYCOMPUTER.MYDOMAIN.NET -Namespace Root\SCCMDP -Class SMS_DistributionPoint
But using WbemTest it seems there is no problem
So I suppose it was a WMI Problem. To check that I restart WMI
and I try powershell script again (seconde line)
And now it works!!
as PkgXferMgr.log log file indicate:
Attempted max retry count. The job would be marked for deletion now.
I must redistribute package
Wait 5 minute and now PkgXferMgr.log log file indicate
Pull DP Sending thread complete
and we can see SMS_DP$ already deleted .tz and begin to download
and SCCMContentLib\PkgLib have already downloaded XXX0022E package
Problem solved
Thursday, November 15, 2018
Set ON/OFF Metered Ethernet Connection on windows 10
For old Windows 10 version you can change ethernet metered connection using registry
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\NetworkList\DefaultMediaCost
(example at https://4sysops.com/archives/set-windows-10-ethernet-connection-to-metered-with-powershell/ )
But since each Ethernet Metered Connection have it own information (since Windows 10 version 1709 I believe, in Settings / Network & Internet / Ethernet / then select your connection), there is a NEW key to know
Where is Network Card connection metered information:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\DusmSvc\Profiles\{XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX}\* in REG_DWORD name UserCost indicate if metered or not
with {XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX} your Network Card GUID
and
UserCost = 0 when Metered is off
UserCost = 2 when Metered is on
Below when metered is On
You need to restart "Data Usage" Service DusmSvc before your settings take effect
In registry Network Card ID {XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX}is in:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\NetworkCards\Y\{XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX}
With Y= a number
In Powershell to have GUID Network Card
Get-NetAdapter | select InterfaceDescription, InterfaceGuid
or in old Powershell version
Get-WmiObject Win32_NetworkAdapterConfiguration -filter 'IPEnabled=True' | %{$_.GetRelated('Win32_NetworkAdapter')}| select Description,GUID
Using this Script SetMeteredEthernetConnection.ps1 you can do it by yourself
PS C:\temp>
.\SetMeteredEthernetConnection.ps1 -MeteredAction DisplayNetworkCardOnly
Display Network Card: 'Intel(R) 82579LM Gigabit Network Connection' ID:'{2FD6004A-2CB4-4B1E-ACEB-CC5792236B44}'
PS C:\temp> .\SetMeteredEthernetConnection.ps1 -MeteredAction DisplayNetworkCardOnly -NetWorkCardLike giga
Display Network Card: 'Intel(R) 82579LM Gigabit Network Connection' ID:'{2FD6004A-2CB4-4B1E-ACEB-CC5792236B44}'
PS C:\temp> .\SetMeteredEthernetConnection.ps1 -MeteredAction DisplayNetworkCardOnly -NetWorkCardLike NOOO
PS C:\temp> .\SetMeteredEthernetConnection.ps1 -MeteredAction MeteredOff
Set MeteredOff to connection Intel(R) 82579LM Gigabit Network Connection
PS C:\temp>
#
# SetMeteredEthernetConnection.ps1
#
# by RICHARD Franck
# 2018-11
#
Param(
[parameter(Mandatory=$true,Position=0)][ValidateSet("DisplayNetworkCardOnly","MeteredOn","MeteredOff")][string]$MeteredAction
,[string]$NetWorkCardLike=""
)
If (-NOT ([Security.Principal.WindowsPrincipal] [Security.Principal.WindowsIdentity]::GetCurrent()).IsInRole([Security.Principal.WindowsBuiltInRole] "Administrator")) {
Write-Warning "You do not have Administrator rights to run this script!`nPlease re-run this script as an Administrator!"
Exit
}
if ($MeteredAction -eq "MeteredOn") { $MeteredChoice = 2 } else { $MeteredChoice = 0 }
if ($NetWorkCardLike -eq "") {
$NetCards = Get-NetAdapter | select InterfaceDescription, InterfaceGuid
} else {
$NetCards = Get-NetAdapter | Where-Object { $_.InterfaceDescription -Like "*$($NetWorkCardLike)*" } | select InterfaceDescription, InterfaceGuid
}
$RegistryName = "UserCost"
Foreach ($card in $NetCards) {
if ($MeteredAction -eq "DisplayNetworkCardOnly") {
Write-Host "Display Network Card: '$($card.InterfaceDescription)' ID:'$($card.InterfaceGuid)'"
} else {
Write-Host "Set $($MeteredAction) to connection $($card.InterfaceDescription)"
$registryPath = "HKLM:\SOFTWARE\Microsoft\DusmSvc\Profiles\$($card.InterfaceGuid)\*"
New-ItemProperty -Path $registryPath -Name $RegistryName -Value $MeteredChoice -PropertyType DWORD -Force | Out-Null
}
}
# your settings take effect when you restart "date usage" DusmSvc
Restart-Service -Name DusmSvc -Force
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\NetworkList\DefaultMediaCost
(example at https://4sysops.com/archives/set-windows-10-ethernet-connection-to-metered-with-powershell/ )
But since each Ethernet Metered Connection have it own information (since Windows 10 version 1709 I believe, in Settings / Network & Internet / Ethernet / then select your connection), there is a NEW key to know
Where is Network Card connection metered information:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\DusmSvc\Profiles\{XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX}\* in REG_DWORD name UserCost indicate if metered or not
with {XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX} your Network Card GUID
and
UserCost = 0 when Metered is off
UserCost = 2 when Metered is on
Below when metered is On
You need to restart "Data Usage" Service DusmSvc before your settings take effect
In registry Network Card ID {XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX}is in:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\NetworkCards\Y\{XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX}
With Y= a number
In Powershell to have GUID Network Card
Get-NetAdapter | select InterfaceDescription, InterfaceGuid
or in old Powershell version
Get-WmiObject Win32_NetworkAdapterConfiguration -filter 'IPEnabled=True' | %{$_.GetRelated('Win32_NetworkAdapter')}| select Description,GUID
Using this Script SetMeteredEthernetConnection.ps1 you can do it by yourself
PS C:\temp>
.\SetMeteredEthernetConnection.ps1 -MeteredAction DisplayNetworkCardOnly
Display Network Card: 'Intel(R) 82579LM Gigabit Network Connection' ID:'{2FD6004A-2CB4-4B1E-ACEB-CC5792236B44}'
PS C:\temp> .\SetMeteredEthernetConnection.ps1 -MeteredAction DisplayNetworkCardOnly -NetWorkCardLike giga
Display Network Card: 'Intel(R) 82579LM Gigabit Network Connection' ID:'{2FD6004A-2CB4-4B1E-ACEB-CC5792236B44}'
PS C:\temp> .\SetMeteredEthernetConnection.ps1 -MeteredAction DisplayNetworkCardOnly -NetWorkCardLike NOOO
PS C:\temp> .\SetMeteredEthernetConnection.ps1 -MeteredAction MeteredOff
Set MeteredOff to connection Intel(R) 82579LM Gigabit Network Connection
PS C:\temp>
#
# SetMeteredEthernetConnection.ps1
#
# by RICHARD Franck
# 2018-11
#
Param(
[parameter(Mandatory=$true,Position=0)][ValidateSet("DisplayNetworkCardOnly","MeteredOn","MeteredOff")][string]$MeteredAction
,[string]$NetWorkCardLike=""
)
If (-NOT ([Security.Principal.WindowsPrincipal] [Security.Principal.WindowsIdentity]::GetCurrent()).IsInRole([Security.Principal.WindowsBuiltInRole] "Administrator")) {
Write-Warning "You do not have Administrator rights to run this script!`nPlease re-run this script as an Administrator!"
Exit
}
if ($MeteredAction -eq "MeteredOn") { $MeteredChoice = 2 } else { $MeteredChoice = 0 }
if ($NetWorkCardLike -eq "") {
$NetCards = Get-NetAdapter | select InterfaceDescription, InterfaceGuid
} else {
$NetCards = Get-NetAdapter | Where-Object { $_.InterfaceDescription -Like "*$($NetWorkCardLike)*" } | select InterfaceDescription, InterfaceGuid
}
$RegistryName = "UserCost"
Foreach ($card in $NetCards) {
if ($MeteredAction -eq "DisplayNetworkCardOnly") {
Write-Host "Display Network Card: '$($card.InterfaceDescription)' ID:'$($card.InterfaceGuid)'"
} else {
Write-Host "Set $($MeteredAction) to connection $($card.InterfaceDescription)"
$registryPath = "HKLM:\SOFTWARE\Microsoft\DusmSvc\Profiles\$($card.InterfaceGuid)\*"
New-ItemProperty -Path $registryPath -Name $RegistryName -Value $MeteredChoice -PropertyType DWORD -Force | Out-Null
}
}
# your settings take effect when you restart "date usage" DusmSvc
Restart-Service -Name DusmSvc -Force
Labels:
connection,
DefaultMediaCost,
DusmSvc,
metered,
UserCost,
windows 10
Wednesday, November 14, 2018
SCCM 'Client certificate' value set to 'None' can be a Metered Network Connection set to Off
As you can see 'Client certificate' value is set to 'None'. I verified all port connection to MP and delete previous certificate 19c5cf9* in C:\ProgramDate\Microsoft\Crypto\RSA\MachineKeys but always same problem
finally, client log "CcmMessaging.log" permit to help to find solution
Request to http://SRAADEVY01CM101.accor.net/ccm_system/request cannot be fulfilled since use of metered network is not allowed.
Post to http://SRAADEVY01CM101.accor.net/ccm_system/request failed with 0x87d00231.
Request to http://SRAADEVY01CM101.accor.net/ccm_system_windowsauth/request cannot be fulfilled since use of metered network is not allowed.
Post to http://SRAADEVY01CM101.accor.net/ccm_system_windowsauth/request failed with 0x87d00231.
Metered network is a Windows 10 functionnality which permit to limit data in an Internet connection. Cellular data connections are set as metered by default. Wi-Fi and Ethernet network connections can be set to metered but aren't by default
Verification on computer
That's the problem:Metered connection is ON (for a desktop workstation what a weird configuration...surely an human mistake)
So change Metered to OFF
In CertificateMaintenance.Log file
Creating Signing Certificate...
Successfully created certifcate
Creating Encryption Certificate...Successfully created certifcate
And now all seems OK
This is the 1st time I see this problem.I suppose this computer has been installed using an offline installation, or SCCM client have been installed after some other configuration. And SCCM registration NOT work and NOT cummunicate if your are on a metered network.
Labels:
0x87d00231,
client certificate,
configmgr,
Configuration Manager,
metered,
none,
sccm
Tuesday, October 30, 2018
SCCM - Pull Distribution Point - failed to get IsDPSiteSystemCertInstalled
One more problem, 1 PullDP does not seems to work correctly
Analysing DistMgr.log we can see:
~Sleep 65 seconds...
Failed to open certificate store "MYPULLDP.MYDOMAIN.NET\SMS" (0x80070035)
Failed to get IsDPSiteSytemCertInstalled method
Failed to check if the sitesystemcert installation state for ["Display=\\MYPULLDP.MYDOMAIN.NET\"]MSWNET:["SMS_SITE=XXX"]\\MYPULLDP.MYDOMAIN.NET\, Error - 0x80041002
InstallDPSiteSystemCert failed to install the sitesystem certificate for ["Display=\\MYPULLDP.MYDOMAIN.NET\"]MSWNET:["SMS_SITE=XXX"]\\MYPULLDP.MYDOMAIN.NET\, Error - 0x80041002
~Currently using 0 out of 20 allowed package processing threads.
~Sleep 60 seconds...
So I use ApiMonitor to find error fastly
We can see SMS_DistributionPoint is object with problem because Method IsDPSiteSystemCertInstalled seems not found ( 0x80041002)
Comparing PullDP with problem and a PullDP working as below we can see some Methods missing
$smsdp_ERROR = Get-WmiObject -ComputerName PULLDP_WITH_ERRORS -Namespace root\sccmdp -List SMS_DistributionPoint
$smsdp_ERROR.Methods | select name | sort name
Name
----
AddDeltaFile
AddFile
AddFiles
CancelPullDPJob
CleanupContentLib
ConfigurePXE
CreatePackageShare
CreateRegistryKey
DeleteDPHealthMonTask
DisableDPUsageStatsGathering
EnableDPUsageStatsGathering
ExpandContent
ExpandPXEImage
FinalizeContent
GetContentHash
ImportToSIS
InstallPullDP
InstallPullDPEx
InstallPXE
IsClientUpgradeRequired
NotifyPullDP
RegisterDPHealthMonTask
RemoveContent
SetDefaultAccessPermission
StartDPHealthMonTask
UninstallPullDP
UpdatePackage
UpdatePackageContentReferences
$smsdp_OK = Get-WmiObject -ComputerName PULLDP_OK -Namespace root\sccmdp -List SMS_DistributionPoint
$smsdp_OK.Methods | select name | sort name
Name
----
AddDeltaFile
AddFile
AddFiles
CancelPullDPJob
CleanupContentLib
ConfigureIISModules
ConfigurePXE
CreatePackageShare
CreateRegistryKey
DeleteDPHealthMonTask
DisableDPUsageStatsGathering
EnableDPUsageStatsGathering
ExpandContent
ExpandPXEImage
FinalizeContent
GetContentHash
ImportToSIS
InstallDPSiteSystemCert
InstallPullDP
InstallPullDPEx
InstallPXE
IsClientUpgradeRequired
IsDPSiteSytemCertInstalled
NotifyPullDP
RegisterDPHealthMonTask
RemoveContent
SetDefaultAccessPermission
StartDPHealthMonTask
UninstallPullDP
UpdateIISBinding
UpdatePackage
UpdatePackageContentReferences
Verifying SMS_DP$\sms\bin\smsdpprov.mof file on PullDP we can see these methods exist.
We can also see all files in SMS_DP$\sms\bin are last Distribution Point binaries comparing to another working DP. Problem seems smsdpprov.mof have not been compiled OR wmi have been recompiled WITHOUT compiling this .mof. To verify that we can do it manually using command:
mofcomp smsdpprov.mof (french computer so display in french below but it exactly same in english)
below before and after mofcomp. After mof compilation new methods appears
Just after recompilation you have some failed but now "package thread limit: 20" and some minutes after no more problem (just wait )
Failed to open certificate store "MYPULLDP.MYDOMAIN.NET\SMS" (0x80070035)
~Package Thread Limit: 20
1 more problem solved
SCCM Recover Site - Lines displayed in "Show Install Status"
Just for information below lines taken from SCCM "Show Install Status" after I do a recover (\Administration\Overview\Site Configuration\Sites / right click / "Show Install Status")
[Passed]:Begin prerequisite checks
[Passed]:Verifies that the site server computer account has administrative rights on the SQL Server and management point.
[Passed]:Check Server Service (LanmanServer) is running.
[Passed]:Verifies that the site server operating system meets the minimum requirement for site server installation. https://go.microsoft.com/fwlink/?linkid=841654
[Passed]:Verifies that the computer specified for installation is a member of a Windows domain.
[Passed]:Checks that the site server computer has sufficient available disk space to install the site server.
[Passed]:Checks if a system restart is pending.
[Passed]:Checking unsupported Read-Only Domain Controller on site server.
[Passed]:Checking Site Server FQDN Length.
[Passed]:Verifies that the Microsoft Core XML Services (MSXML) version 6.0 or later libraries are installed.
[Passed]:Verifies that the Microsoft Remote Differential Compression (RDC) library is registered on the computer specified for Configuration Manager site server installation.
[Passed]:Checking Windows Installer Version >= 4.5.
[Passed]:Checks if SQL Server Express can be successfully installed on a secondary site.
[Passed]:Checks if the target site server computer already has existing Configuration Manager server components installed.
[Passed]:Checks if the Windows Defender Firewall is disabled or if a relevant Windows Defender Firewall exception exists for SQL Server.
[Passed]:Check SQL Server service running account.
[Passed]:Check to see if the selected SQL Server instance is already in use by another Configuratin Manager site
[Warning]:SQL Index create memory is not configured as default value of 0 and might hit issue
[Passed]:Verifies that the site server's database collation matches the database collation of its parent site.
[Passed]:Verifies that the Microsoft .NET Framework version 3.5 is installed on Configuration Manager central administration site servers, primary site servers, and secondary site servers.
[Passed]:Verifies that the Microsoft .NET Framework version 4.0 is installed on Configuration Manager Secondary site computers for installing SQL Server Express edition.
[Passed]:Check product version in source folder for secondary site installation.
[Passed]:Check machine account of secondary site access to setup source folder.
[Passed]:Check SQL Server in the secondary site machine.
[Passed]:Checks if the FQDN provided for the site system uses the primary DNS hostname for the computer.
[Warning]:The site server might be unable to publish to Active Directory. The computer account for the site server must have Full Control permissions to the System Management container in its Active Directory domain. You can ignore this warning if you have manually verified these permissions. For more information about your options to configure required permissions, see https://go.microsoft.com/fwlink/p/?LinkId=233190.
[Passed]:Check remote connection to WMI on secondary site.
[Passed]:Verifies that the SQL Server instance and Configuration Manager site database (if present) are configured to use a supported collation.
[Passed]:Checks if the SQL Server Express version on the secondary site is at least SQL Server 2008 R2 Service Pack 1 (version 10.51.2500.0). If Configuration Manager did not previously install SQL Server Express (existing instance is not CONFIGMGRSEC), then Setup skips this check.
[Passed]:Verifies that SUM is not using any virtual locations for active SUPs.
[Passed]:Verifies that the user account running Configuration Manager Setup has been granted sysadmin SQL Server role permissions on the SQL Server instance selected for site database installation. SQL Server sysadmin role permissions are required in order to create the site database and configure necessary database role and login permissions for Configuration Manager sites.
[Passed]:Verifies that the user account running Configuration Manager Setup has been granted sysadmin SQL Server role permissions on the SQL Server instance targeted for site database installation. SQL Server sysadmin role permissions are required in order to create the site database and configure necessary database role and login permissions for Configuration Manager sites.
[Passed]:Verifies that SQL Server is configured for Windows authentication security.
[Passed]:Verifies that the version of Microsoft SQL Server installed on the computer selected to host the site database meets the minimum requirements.
[Passed]:Configuration Manager sites require a supported SQL Server version. For more information, see https://go.microsoft.com/fwlink/p/?LinkID=232936.
[Passed]:Checking the site SQL Server is not Express Edition.
[Passed]:Checking the site SQL Server Tcp is enabled and set to Static port.
[Warning]:SQL Server is configured for unlimited memory usage. You should configure SQL Server memory to have a maximum limit.
[Warning]:Configuration Manager requires SQL Server to reserve a minimum of 8 gigabytes (GB) of memory for the central administration site and primary site and a minimum of 4 gigabytes (GB) for the secondary site. This memory is reserved by using the Minimum server memory setting under Server Memory Options and is configured by using SQL Server Management Studio. For more information about how to set a fixed amount of memory, see https://go.microsoft.com/fwlink/p/?LinkId=233759.
[Passed]:Checks if the SQL Server hosting the Configuration Manager site database is using a case-insensitive collation.
[Passed]:Check that the specified FQDN for the SQL Server computer is valid.
[Passed]:Verifies that the required administrative shares are present on the site system computer.
[Passed]:Verifies that a valid Service Principal Name (SPN) is registered in Active Directory Domain Services for the account configured to run the SQL Server service.
[Passed]:Verifies that the site server operating system meets the minimum requirement for site server installation. https://go.microsoft.com/fwlink/?linkid=841654
[Passed]:Check target management point and distribution point machine is not Windows Cluster Node.
[Passed]:Verifies that Internet Information Services (IIS) is running.
[Passed]:Verifies that Background Intelligent Transfer Service (BITS) is installed in Internet Information Services (IIS).
[Passed]:Verifies that Background Intelligent Transfer Service (BITS) is enabled in Internet Information Services (IIS).
[Passed]:Verifies that Internet Information Services (IIS) is configured for HTTPS communication protocol.
[Passed]:Checks if the Windows Defender Firewall is disabled or if a relevant Windows Defender Firewall exception exists for SQL Server.
[Passed]:Verifies that the machine account of site server has administrative rights on the management point and distribution point computer.
[Passed]:Checks to see if there is an earlier version of the Configuration Manager client installed on the targeted management point computer.
[Passed]:Verifies that the operating system meets the minimum requirement of Windows Server 2003 for distribution point installation.
[Passed]:Verifies that the Microsoft Core XML Services (MSXML) version 6.0 or later libraries are installed.
[Passed]:Verifies that Internet Information Services (IIS) is configured for HTTPS communication protocol.
[Passed]:Verifies that the user running Setup has local administrator rights on the distribution point computer.
[Passed]:Prerequisite checks complete
[Passed]:Initiate secondary site server bootstrap installation service
[Passed]:Secondary site server bootstrap installation service initiation succeeded
[Passed]:Decompress secondary site server installation files
[Passed]:Secondary site server installation file decompression succeeded
[Passed]:Secondary site server bootstrap installation service initiating setup
[Passed]:Secondary site server bootstrap installation service initiating setup succeeded
[Passed]:ConfigMgr Setup - Recovering ConfigMgr Secondary site...
[Passed]:ConfigMgr Setup - Drop existing database on the secondary site.
[Passed]:Begin downloading and verifying installation files
[Passed]:Downloaded and verified installation files
[Passed]:Begin evaluation of secondary site server installation
[Passed]:Evaluation of secondary site server installation succeeded
[Passed]:Begin creation of secondary site server database
[Passed]:Creation of secondary site server database succeeded
[Passed]:Begin transfer of secondary site server installation files from parent primary site server
[Passed]:Transfer of secondary site server installation files from parent primary site server succeeded
[Passed]:Register secondary site server controls
[Passed]:Secondary site server control registration succeeded
[Passed]:Begin replication of secondary site server data from primary site server
[Passed]:Replication of secondary site server data from primary site server succeeded
[Passed]:Begin installation of secondary site server component manager
[Passed]:Installation of secondary site server component manager succeeded
[Passed]:Begin installation of secondary site server component manager service
[Passed]:Installation of secondary site server component manager service succeeded
[Passed]:Waiting for Database Replication Link State to be active.
[Passed]:Database Replication Link between primary and seconary site is active.
[Passed]:Start to validate content on the secondary site.
[Passed]:Content validation is in progress on the secondary site.
[Passed]:Content is validated on the secondary site.
[Passed]:ConfigMgr Setup - Recovered ConfigMgr secondary site successfully.
[Passed]:Secondary site server bootstrap installation service succeeded
[Passed]:Begin prerequisite checks
[Passed]:Verifies that the site server computer account has administrative rights on the SQL Server and management point.
[Passed]:Check Server Service (LanmanServer) is running.
[Passed]:Verifies that the site server operating system meets the minimum requirement for site server installation. https://go.microsoft.com/fwlink/?linkid=841654
[Passed]:Verifies that the computer specified for installation is a member of a Windows domain.
[Passed]:Checks that the site server computer has sufficient available disk space to install the site server.
[Passed]:Checks if a system restart is pending.
[Passed]:Checking unsupported Read-Only Domain Controller on site server.
[Passed]:Checking Site Server FQDN Length.
[Passed]:Verifies that the Microsoft Core XML Services (MSXML) version 6.0 or later libraries are installed.
[Passed]:Verifies that the Microsoft Remote Differential Compression (RDC) library is registered on the computer specified for Configuration Manager site server installation.
[Passed]:Checking Windows Installer Version >= 4.5.
[Passed]:Checks if SQL Server Express can be successfully installed on a secondary site.
[Passed]:Checks if the target site server computer already has existing Configuration Manager server components installed.
[Passed]:Checks if the Windows Defender Firewall is disabled or if a relevant Windows Defender Firewall exception exists for SQL Server.
[Passed]:Check SQL Server service running account.
[Passed]:Check to see if the selected SQL Server instance is already in use by another Configuratin Manager site
[Warning]:SQL Index create memory is not configured as default value of 0 and might hit issue
[Passed]:Verifies that the site server's database collation matches the database collation of its parent site.
[Passed]:Verifies that the Microsoft .NET Framework version 3.5 is installed on Configuration Manager central administration site servers, primary site servers, and secondary site servers.
[Passed]:Verifies that the Microsoft .NET Framework version 4.0 is installed on Configuration Manager Secondary site computers for installing SQL Server Express edition.
[Passed]:Check product version in source folder for secondary site installation.
[Passed]:Check machine account of secondary site access to setup source folder.
[Passed]:Check SQL Server in the secondary site machine.
[Passed]:Checks if the FQDN provided for the site system uses the primary DNS hostname for the computer.
[Warning]:The site server might be unable to publish to Active Directory. The computer account for the site server must have Full Control permissions to the System Management container in its Active Directory domain. You can ignore this warning if you have manually verified these permissions. For more information about your options to configure required permissions, see https://go.microsoft.com/fwlink/p/?LinkId=233190.
[Passed]:Check remote connection to WMI on secondary site.
[Passed]:Verifies that the SQL Server instance and Configuration Manager site database (if present) are configured to use a supported collation.
[Passed]:Checks if the SQL Server Express version on the secondary site is at least SQL Server 2008 R2 Service Pack 1 (version 10.51.2500.0). If Configuration Manager did not previously install SQL Server Express (existing instance is not CONFIGMGRSEC), then Setup skips this check.
[Passed]:Verifies that SUM is not using any virtual locations for active SUPs.
[Passed]:Verifies that the user account running Configuration Manager Setup has been granted sysadmin SQL Server role permissions on the SQL Server instance selected for site database installation. SQL Server sysadmin role permissions are required in order to create the site database and configure necessary database role and login permissions for Configuration Manager sites.
[Passed]:Verifies that the user account running Configuration Manager Setup has been granted sysadmin SQL Server role permissions on the SQL Server instance targeted for site database installation. SQL Server sysadmin role permissions are required in order to create the site database and configure necessary database role and login permissions for Configuration Manager sites.
[Passed]:Verifies that SQL Server is configured for Windows authentication security.
[Passed]:Verifies that the version of Microsoft SQL Server installed on the computer selected to host the site database meets the minimum requirements.
[Passed]:Configuration Manager sites require a supported SQL Server version. For more information, see https://go.microsoft.com/fwlink/p/?LinkID=232936.
[Passed]:Checking the site SQL Server is not Express Edition.
[Passed]:Checking the site SQL Server Tcp is enabled and set to Static port.
[Warning]:SQL Server is configured for unlimited memory usage. You should configure SQL Server memory to have a maximum limit.
[Warning]:Configuration Manager requires SQL Server to reserve a minimum of 8 gigabytes (GB) of memory for the central administration site and primary site and a minimum of 4 gigabytes (GB) for the secondary site. This memory is reserved by using the Minimum server memory setting under Server Memory Options and is configured by using SQL Server Management Studio. For more information about how to set a fixed amount of memory, see https://go.microsoft.com/fwlink/p/?LinkId=233759.
[Passed]:Checks if the SQL Server hosting the Configuration Manager site database is using a case-insensitive collation.
[Passed]:Check that the specified FQDN for the SQL Server computer is valid.
[Passed]:Verifies that the required administrative shares are present on the site system computer.
[Passed]:Verifies that a valid Service Principal Name (SPN) is registered in Active Directory Domain Services for the account configured to run the SQL Server service.
[Passed]:Verifies that the site server operating system meets the minimum requirement for site server installation. https://go.microsoft.com/fwlink/?linkid=841654
[Passed]:Check target management point and distribution point machine is not Windows Cluster Node.
[Passed]:Verifies that Internet Information Services (IIS) is running.
[Passed]:Verifies that Background Intelligent Transfer Service (BITS) is installed in Internet Information Services (IIS).
[Passed]:Verifies that Background Intelligent Transfer Service (BITS) is enabled in Internet Information Services (IIS).
[Passed]:Verifies that Internet Information Services (IIS) is configured for HTTPS communication protocol.
[Passed]:Checks if the Windows Defender Firewall is disabled or if a relevant Windows Defender Firewall exception exists for SQL Server.
[Passed]:Verifies that the machine account of site server has administrative rights on the management point and distribution point computer.
[Passed]:Checks to see if there is an earlier version of the Configuration Manager client installed on the targeted management point computer.
[Passed]:Verifies that the operating system meets the minimum requirement of Windows Server 2003 for distribution point installation.
[Passed]:Verifies that the Microsoft Core XML Services (MSXML) version 6.0 or later libraries are installed.
[Passed]:Verifies that Internet Information Services (IIS) is configured for HTTPS communication protocol.
[Passed]:Verifies that the user running Setup has local administrator rights on the distribution point computer.
[Passed]:Prerequisite checks complete
[Passed]:Initiate secondary site server bootstrap installation service
[Passed]:Secondary site server bootstrap installation service initiation succeeded
[Passed]:Decompress secondary site server installation files
[Passed]:Secondary site server installation file decompression succeeded
[Passed]:Secondary site server bootstrap installation service initiating setup
[Passed]:Secondary site server bootstrap installation service initiating setup succeeded
[Passed]:ConfigMgr Setup - Recovering ConfigMgr Secondary site...
[Passed]:ConfigMgr Setup - Drop existing database on the secondary site.
[Passed]:Begin downloading and verifying installation files
[Passed]:Downloaded and verified installation files
[Passed]:Begin evaluation of secondary site server installation
[Passed]:Evaluation of secondary site server installation succeeded
[Passed]:Begin creation of secondary site server database
[Passed]:Creation of secondary site server database succeeded
[Passed]:Begin transfer of secondary site server installation files from parent primary site server
[Passed]:Transfer of secondary site server installation files from parent primary site server succeeded
[Passed]:Register secondary site server controls
[Passed]:Secondary site server control registration succeeded
[Passed]:Begin replication of secondary site server data from primary site server
[Passed]:Replication of secondary site server data from primary site server succeeded
[Passed]:Begin installation of secondary site server component manager
[Passed]:Installation of secondary site server component manager succeeded
[Passed]:Begin installation of secondary site server component manager service
[Passed]:Installation of secondary site server component manager service succeeded
[Passed]:Waiting for Database Replication Link State to be active.
[Passed]:Database Replication Link between primary and seconary site is active.
[Passed]:Start to validate content on the secondary site.
[Passed]:Content validation is in progress on the secondary site.
[Passed]:Content is validated on the secondary site.
[Passed]:ConfigMgr Setup - Recovered ConfigMgr secondary site successfully.
[Passed]:Secondary site server bootstrap installation service succeeded
Wednesday, October 24, 2018
SCCM Secondary Site stuck in recovering - "Recover Secondary Site" grayed (edit 2019-01: + Upgrade grayed)
[EDIT 2019-01-27 begin]
I complete my article:
It exist a stored procedure spUpdateSiteStatus permitting to un-gray by changing status.(Thanks Alban for this tip)
For this situation for example: here Upgrade stay grayed after some hours
but prerequisite KO (moreover you can see c:\ConfigMgrSetup.log , c:\ConfigMgrSetupWizard.log and X:\SMS_BOOTSTRAP.log NOT modified since 4 months ago since last upgrade)
now you can try to upgrade again
Checking stored proc code:
3, 2 = Install Successed
5,2 = Upgrade Successed
6,2 = Recover Successed
-->
below my old article
[EDIT 2019-01-27 end]
Problem in one of secondary site stuck in recovering
And recovering does not seems to be cancellable and "Recover Secondary Site" grayed
In "Show Install Status" log stay at
[Passed]:Waiting for Database Replication Link State to be active.
but in C:\ConfigMgrSetup.log secondary site seems to be active (PRI = Primary MXX=Secondary site code, secondary computer is mysecondary.mydomain.net)
INFO: Verified that iphlpsvc is running on \\mysecondary.mydomain.net.
INFO: Setup will not check the CcmExec service .
INFO: Configuring SQL Server service broker...
INFO: Reading Primary SQL Server certificate, Primary sitecode is PRI.
INFO: SQL Connection succeeded. Connection: SMS ACCESS, Type: Secure
INFO: Stored Parent Site [PRI] SQL Certificate to registry.
INFO: SQL Connection succeeded. Connection: mysecondary.mydomain.net CONFIGMGRSEC\CM_MXX, Type: Secure
INFO: Service Broker configuration complete.
CPublicKeyLookup::Initialize("E:\Program Files\Microsoft Configuration Manager\inboxes\hman.box\pubkey")
CPublicKeyLookup::Initialize() Initializing the Public Key Store Path to E:\Program Files\Microsoft Configuration Manager\inboxes\hman.box\pubkey~
CPublicKeyLookup::UpdateCurrentKey("PRI", "0602000000A40XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX")
CPublicKeyLookup::UpdateCurrentKey() Checking E:\Program Files\Microsoft Configuration Manager\inboxes\hman.box\pubkey\PRI.pkp for Key0~
CPublicKeyLookup::UpdateCurrentKey() Matching Key found in iteration 0. Updating Date.~
INFO: Registered type SMS_ACCESS for mysecondary.mydomain.net CONFIGMGRSEC\CM_MXX
INFO: SQL Connection succeeded. Connection: SMS_ACCESS, Type: Secure
INFO: SiteStatus set to 105 on mysecondary.mydomain.net
INFO: send message 0x00030051 to parent
INFO: SQL Connection succeeded. Connection: SMS ACCESS, Type: Secure
INFO: wait for secondary site replication state to be active.
INFO: send message 0x00060007 to parent
INFO: send message 0x00060007 to parent
INFO: send message 0x00060007 to parent
INFO: send message 0x00060007 to parent
INFO: send message 0x00060007 to parent
INFO: secondary site is now active
INFO: send message 0x00060008 to parent
INFO: send message 0x00060004 to parent
INFO: verifying content metadata (1 processed)...
INFO: send message 0x00060006 to parent
INFO: Some content does not exist on secondary site. Make call to ResetMappedPkgStatus()
Content can be identified with SQL query on Secondary Site DB: SELECT * From PkgStatus_G where SourceVersion = 0 AND Type=1 AND SiteCode=dbo.fnGetSiteCode()
INFO: send message 0x00060005 to parent
INFO: send message 0x00060002 to parent
INFO: Removing byte order marker after reading from file (E:\Program Files\Microsoft Configuration Manager\bin\X64\secondarysiteupdatepackage.xml)
Successfully update secondary site update pacakge status from file E:\Program Files\Microsoft Configuration Manager\bin\X64\secondarysiteupdatepackage.xml
INFO: Successfully begin Automatic Updates detection task
Not recovery mode or not top level site. Skip restoring client piloting packages.
~~===================== Completed Configuration Manager Server Setup =====================
Waiting some hours, but Secondary site was always in "recovering mode" . I find problem could be in SCCM SQL table Sites
After some internet search, I only find information about something really interesting in Release notes for System Center Configuration Manager
which give me information that table Sites AND SC_SiteDefinition_Property tables are important
I copy some article line in case of article deletion:
This issue affects System Center Configuration Manager version 1511 and 1602, and is expected to be resolved in a future update.
Workaround: Use one of the following methods to recover (reinstall) the secondary site:
I DON'T WANT delete my secondary site. Too much configuration to do, and Microsoft recommend to use another SiteCode
So I verify that using some SQL queries
SELECT * FROM Sites
We can see "Status" and "DetailedStatus" field different in MXX from others Site codes
SELECT * FROM SC_SiteDefinition_Property
WHERE SiteNumber
IN (
SELECT Sitenumber FROM SC_SiteDefinition
WHERE SiteCode = 'MXX'
)
As you can see field Named "Requested Status" has Value1 corresponding to "Status" Sites table and Value2 corresponding to "DetailedStatus" Sites table
Information about theses information in SMS_Site Server WMI Class
RequestedStatus
Value indicating a request for secondary site status. Possible values are listed below. The default value is 1001.
1001 Create a secondary site; the primary site will send down the installation media.
1002 Create a secondary site using the installation media already available on the secondary site.
1003 Secondary site creation has started.
1004 Upgrade a secondary site; the primary site will send down the installation media.
1005 Upgrade a secondary site using the installation media already available on the secondary site.
1006 Secondary site upgrade has started.
1007 Deinstall a secondary site.
1008 Secondary site deinstall has started.
1009 Delete a secondary site.
1010 Secondary site deletion has started.
1011 Recover a secondary site; the primary site will send down the installation media.
1012 Recover a secondary site; the installation media is already available on the secondary site.
1013 Secondary site recovery has started.
Status
Current status of the site. Possible values are listed below. The default value is ACTIVE (1).
1 ACTIVE
2 PENDING
3 FAILED
4 DELETED
5 UPGRADE
6 Failed to delete or deinstall the secondary site.
7 Failed to upgrade the secondary site.
8 Secondary site recovery is in progress.
9 Failed to recover secondary site.
[EDIT 2019-01-27 begin]
From https://blogs.technet.microsoft.com/umairkhan/2014/02/17/configmgr-2012-data-replication-service-drs-unleashed/ which seems to complete DetailedStatus
[EDIT 2019-01-27 end]
So I modify request as
declare @SiteCode NVARCHAR(3)=N'MXX'
UPDATE Sites SET Status = 1, DetailedStatus = 125
FROM Sites WHERE SiteCode = @SiteCode
UPDATE SCP SET SCP.Value1 = 1 , SCP.Value2 = N'125'
FROM SC_SiteDefinition_Property SCP INNER JOIN SC_SiteDefinition SC ON SC.SiteNumber = SCP.SiteNumber
WHERE SC.SiteCode = @SiteCode AND SCP.[Name] = N'Requested Status'
WARNING: modifying database is NOT supported by Microsoft. Please use it at your own risk
now Sites and SC_SiteDefinition_Property tables are ok
SELECT * FROM Sites
SELECT * FROM SC_SiteDefinition_Property
WHERE SiteNumber
IN (
SELECT Sitenumber FROM SC_SiteDefinition
WHERE SiteCode = 'MXX'
and now "Recover Secondary Site" no more grayed. I can recover secondary site if it's necessary.
I complete my article:
It exist a stored procedure spUpdateSiteStatus permitting to un-gray by changing status.(Thanks Alban for this tip)
For this situation for example: here Upgrade stay grayed after some hours
but prerequisite KO (moreover you can see c:\ConfigMgrSetup.log , c:\ConfigMgrSetupWizard.log and X:\SMS_BOOTSTRAP.log NOT modified since 4 months ago since last upgrade)
You must execute in SQL (with XXX = site code)
exec dbo.spUpdateSiteStatus 'XXX', 3,2
now you can try to upgrade again
Checking stored proc code:
3, 2 = Install Successed
5,2 = Upgrade Successed
6,2 = Recover Successed
-->
below my old article
[EDIT 2019-01-27 end]
Problem in one of secondary site stuck in recovering
And recovering does not seems to be cancellable and "Recover Secondary Site" grayed
In "Show Install Status" log stay at
[Passed]:Waiting for Database Replication Link State to be active.
but in C:\ConfigMgrSetup.log secondary site seems to be active (PRI = Primary MXX=Secondary site code, secondary computer is mysecondary.mydomain.net)
INFO: Verified that iphlpsvc is running on \\mysecondary.mydomain.net.
INFO: Setup will not check the CcmExec service .
INFO: Configuring SQL Server service broker...
INFO: Reading Primary SQL Server certificate, Primary sitecode is PRI.
INFO: SQL Connection succeeded. Connection: SMS ACCESS, Type: Secure
INFO: Stored Parent Site [PRI] SQL Certificate to registry.
INFO: SQL Connection succeeded. Connection: mysecondary.mydomain.net CONFIGMGRSEC\CM_MXX, Type: Secure
INFO: Service Broker configuration complete.
CPublicKeyLookup::Initialize("E:\Program Files\Microsoft Configuration Manager\inboxes\hman.box\pubkey")
CPublicKeyLookup::Initialize() Initializing the Public Key Store Path to E:\Program Files\Microsoft Configuration Manager\inboxes\hman.box\pubkey~
CPublicKeyLookup::UpdateCurrentKey("PRI", "0602000000A40XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX")
CPublicKeyLookup::UpdateCurrentKey() Checking E:\Program Files\Microsoft Configuration Manager\inboxes\hman.box\pubkey\PRI.pkp for Key0~
CPublicKeyLookup::UpdateCurrentKey() Matching Key found in iteration 0. Updating Date.~
INFO: Registered type SMS_ACCESS for mysecondary.mydomain.net CONFIGMGRSEC\CM_MXX
INFO: SQL Connection succeeded. Connection: SMS_ACCESS, Type: Secure
INFO: SiteStatus set to 105 on mysecondary.mydomain.net
INFO: send message 0x00030051 to parent
INFO: SQL Connection succeeded. Connection: SMS ACCESS, Type: Secure
INFO: wait for secondary site replication state to be active.
INFO: send message 0x00060007 to parent
INFO: send message 0x00060007 to parent
INFO: send message 0x00060007 to parent
INFO: send message 0x00060007 to parent
INFO: send message 0x00060007 to parent
INFO: secondary site is now active
INFO: send message 0x00060008 to parent
INFO: send message 0x00060004 to parent
INFO: verifying content metadata (1 processed)...
INFO: send message 0x00060006 to parent
INFO: Some content does not exist on secondary site. Make call to ResetMappedPkgStatus()
Content can be identified with SQL query on Secondary Site DB: SELECT * From PkgStatus_G where SourceVersion = 0 AND Type=1 AND SiteCode=dbo.fnGetSiteCode()
INFO: send message 0x00060005 to parent
INFO: send message 0x00060002 to parent
INFO: Removing byte order marker after reading from file (E:\Program Files\Microsoft Configuration Manager\bin\X64\secondarysiteupdatepackage.xml)
Successfully update secondary site update pacakge status from file E:\Program Files\Microsoft Configuration Manager\bin\X64\secondarysiteupdatepackage.xml
INFO: Successfully begin Automatic Updates detection task
Not recovery mode or not top level site. Skip restoring client piloting packages.
~~===================== Completed Configuration Manager Server Setup =====================
Waiting some hours, but Secondary site was always in "recovering mode" . I find problem could be in SCCM SQL table Sites
After some internet search, I only find information about something really interesting in Release notes for System Center Configuration Manager
which give me information that table Sites AND SC_SiteDefinition_Property tables are important
I copy some article line in case of article deletion:
Recovery options for a secondary site are not available in the console
After recovery of a secondary site fails, the option Recover Secondary Site might no longer be available in the Configuration Manager console.This issue affects System Center Configuration Manager version 1511 and 1602, and is expected to be resolved in a future update.
Workaround: Use one of the following methods to recover (reinstall) the secondary site:
- Use Preinst.exe and the /delsite command to remove the secondary site, and then reinstall the secondary site. For information about preinst.exe, see Hierarchy Maintenance Tool (Preinst.exe) for System Center Configuration Manager
- Run the following script to start the secondary site recovery. You run this script on the database at the primary parent site of the secondary site you want to recover:
declare @SiteCode NVARCHAR(3)=N''
UPDATE Sites SET Status = 9
, DetailedStatus = 3
FROM Sites WHERE SiteCode = @SiteCode
UPDATE SCP SET SCP.Value1 = 9
, SCP.Value2 = N'3'
FROM SC_SiteDefinition_Property SCP INNER JOIN SC_SiteDefinition SC ON SC.SiteNumber = SCP.SiteNumber
WHERE SC.SiteCode = @SiteCode AND SCP.[Name] = N'Requested Status'
I DON'T WANT delete my secondary site. Too much configuration to do, and Microsoft recommend to use another SiteCode
So I verify that using some SQL queries
SELECT * FROM Sites
We can see "Status" and "DetailedStatus" field different in MXX from others Site codes
SELECT * FROM SC_SiteDefinition_Property
WHERE SiteNumber
IN (
SELECT Sitenumber FROM SC_SiteDefinition
WHERE SiteCode = 'MXX'
)
As you can see field Named "Requested Status" has Value1 corresponding to "Status" Sites table and Value2 corresponding to "DetailedStatus" Sites table
Information about theses information in SMS_Site Server WMI Class
RequestedStatus
Value indicating a request for secondary site status. Possible values are listed below. The default value is 1001.
1001 Create a secondary site; the primary site will send down the installation media.
1002 Create a secondary site using the installation media already available on the secondary site.
1003 Secondary site creation has started.
1004 Upgrade a secondary site; the primary site will send down the installation media.
1005 Upgrade a secondary site using the installation media already available on the secondary site.
1006 Secondary site upgrade has started.
1007 Deinstall a secondary site.
1008 Secondary site deinstall has started.
1009 Delete a secondary site.
1010 Secondary site deletion has started.
1011 Recover a secondary site; the primary site will send down the installation media.
1012 Recover a secondary site; the installation media is already available on the secondary site.
1013 Secondary site recovery has started.
Status
Current status of the site. Possible values are listed below. The default value is ACTIVE (1).
1 ACTIVE
2 PENDING
3 FAILED
4 DELETED
5 UPGRADE
6 Failed to delete or deinstall the secondary site.
7 Failed to upgrade the secondary site.
8 Secondary site recovery is in progress.
9 Failed to recover secondary site.
[EDIT 2019-01-27 begin]
From https://blogs.technet.microsoft.com/umairkhan/2014/02/17/configmgr-2012-data-replication-service-drs-unleashed/ which seems to complete DetailedStatus
SiteStatus | Mode | ||||||||||||||||||||||||||||||||||||
|
|
So I modify request as
declare @SiteCode NVARCHAR(3)=N'MXX'
UPDATE Sites SET Status = 1, DetailedStatus = 125
FROM Sites WHERE SiteCode = @SiteCode
UPDATE SCP SET SCP.Value1 = 1 , SCP.Value2 = N'125'
FROM SC_SiteDefinition_Property SCP INNER JOIN SC_SiteDefinition SC ON SC.SiteNumber = SCP.SiteNumber
WHERE SC.SiteCode = @SiteCode AND SCP.[Name] = N'Requested Status'
WARNING: modifying database is NOT supported by Microsoft. Please use it at your own risk
SELECT * FROM Sites
SELECT * FROM SC_SiteDefinition_Property
WHERE SiteNumber
IN (
SELECT Sitenumber FROM SC_SiteDefinition
WHERE SiteCode = 'MXX'
and now "Recover Secondary Site" no more grayed. I can recover secondary site if it's necessary.
Labels:
configmgr,
Configuration Manager,
grayed,
recover,
recovering,
sccm,
secondary site,
site,
stuck
Thursday, September 13, 2018
SCCM - Distribution Point Console Performance Issues - Please make an Index
When you have a lot of Distribution Points you could have Console Performance Issues (SCCM CB 1803, I don't know if solution below have been released since in SCCM CB future release)
For example, when I click on "Administration\Overview\Distribution Points" it takes 6-7 minutes to display 2900 Standard and Pulll Distribution Point
If we look into SMSProv.log file (in folder "Program Files\Microsoft Configuration Manager\Logs") when you click on "Distribution Points" you should have theses entries
Execute WQL =Select * From SMS_DistributionPointInfo~
Execute SQL =select all SMS_DistributionPointInfo.AddressScheduleEnabled,SMS_DistributionPointInfo.BindExcept,SMS_DistributionPointInfo.BindPolicy,SMS_DistributionPointInfo.BitsEnabled,SMS_DistributionPointInfo.CertificateType,SMS_DistributionPointInfo.Communication,SMS_DistributionPointInfo.Description,SMS_DistributionPointInfo.DPFlags,SMS_DistributionPointInfo.Drive,SMS_DistributionPointInfo.GroupCount,SMS_DistributionPointInfo.HasRelationship,SMS_DistributionPointInfo.HealthCheckEnabled,SMS_DistributionPointInfo.HealthCheckPriority,SMS_DistributionPointInfo.HealthCheckSchedule,SMS_DistributionPointInfo.ID,SMS_DistributionPointInfo.IdentityGUID,SMS_DistributionPointInfo.InternetFacing,SMS_DistributionPointInfo.IsActive,SMS_DistributionPointInfo.IsMulticast,SMS_DistributionPointInfo.IsPeerDP,SMS_DistributionPointInfo.IsProtected,SMS_DistributionPointInfo.IsPullDP,SMS_DistributionPointInfo.IsPXE,SMS_DistributionPointInfo.NALPath,SMS_DistributionPointInfo.Name,SMS_DistributionPointInfo.OperatingSystem,SMS_DistributionPointInfo.PreStagingAllowed,SMS_DistributionPointInfo.Priority,SMS_DistributionPointInfo.PXEPassword,SMS_DistributionPointInfo.RateLimitsEnabled,SMS_DistributionPointInfo.Region,SMS_DistributionPointInfo.ResourceType,SMS_DistributionPointInfo.ResponseDelay,SMS_DistributionPointInfo.SccmPXE,SMS_DistributionPointInfo.ServerName,SMS_DistributionPointInfo.ServiceType,SMS_DistributionPointInfo.ShareName,SMS_DistributionPointInfo.SiteCode,SMS_DistributionPointInfo.SiteName,SMS_DistributionPointInfo.SupportUnknownMachines,SMS_DistributionPointInfo.TransferRate,SMS_DistributionPointInfo.UdaSetting,SMS_DistributionPointInfo.Version from v_DistributionPointInfo AS SMS_DistributionPointInfo ~
When I do same query on SQL Server Management Studio
SELECT * from v_DistributionPointInfo
->same result
So I make a Call To Microsoft (because I assume I will need an Index )
After query with "Include Actual Execution Plan" we can see problem
here what view do...
And as you can see in a zoom below a lot of SC_SysResUse_Property seems take a lot of time (missing an Index...)
So using an new index (Thanks to Cyril C. from Microsoft), now same query in 5 sec (remember before it was 7-8min)
As usual, it is NOT permit to modify SQL directly to do not lose your Microsoft support. So please contact Microsoft if you need to resolve this problem.
/******
Object: Index [NonClusteredIndex-20180827-163036]
Script Date: 27/08/2018 16:42:14 ******/
CREATE
NONCLUSTERED INDEX [NonClusteredIndex-20180827-163036] ON
[dbo].[SC_SysResUse_Property]
(
[SysResUseID] ASC,
[Value3] ASC
)WITH (PAD_INDEX
= OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, DROP_EXISTING = OFF,
ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
GO
USE [CM_AHD]
GO
SET ANSI_PADDING
ON
GO
/******
Object: Index [NonClusteredIndex-20180827-161513]
Script Date: 27/08/2018 16:42:00 ******/
CREATE
NONCLUSTERED INDEX [NonClusteredIndex-20180827-161513] ON
[dbo].[SC_SysResUse_Property]
(
[SysResUseID] ASC
)
INCLUDE (
[Value3],
[Name],
[Value1],
[Value2]) WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB =
OFF, DROP_EXISTING = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS
= ON) ON [PRIMARY]
GO
Labels:
console,
Distribution Point,
DP,
sccm;performance
Subscribe to:
Posts (Atom)