agenda - hasmug · agenda •what is client health •sql •collections / wql •dcm •client...

21

Upload: others

Post on 27-Sep-2020

5 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Agenda - HASMUG · Agenda •What is Client health •SQL •Collections / WQL •DCM •Client Status Reporting R2 •3rd party Tools
Page 2: Agenda - HASMUG · Agenda •What is Client health •SQL •Collections / WQL •DCM •Client Status Reporting R2 •3rd party Tools

Agenda

• What is Client health

• SQL

• Collections / WQL

• DCM

• Client Status Reporting R2

• 3rd party Tools

Page 3: Agenda - HASMUG · Agenda •What is Client health •SQL •Collections / WQL •DCM •Client Status Reporting R2 •3rd party Tools

What is Client Health? • Last policy vs heart beat • Hw / SW Inventory • Patched but not restarted • ConfigMgr Agent Running • Fully Patch machine • All appropriate applications installed? • WMI check • Disk Drive free space • Block certain software from running • Status Messages • State Messages • Client Certificates (Native Mode) • Service to Watch Collections

Page 4: Agenda - HASMUG · Agenda •What is Client health •SQL •Collections / WQL •DCM •Client Status Reporting R2 •3rd party Tools

SQL Unhealthy Clients

• Machines more than 4 days old

Select Count(*) From v_CH_ClientSummary Where LastHW >= getdate()-4 or LastSW >= getdate()-4 or LastStatusMessage >= getdate()-4 or LastPolicyRequest >= getdate()-4

Page 5: Agenda - HASMUG · Agenda •What is Client health •SQL •Collections / WQL •DCM •Client Status Reporting R2 •3rd party Tools

SQL Client Health Statistics

SELECT v_CH_ClientSummary.MachineID, v_CH_ClientSummary.NetBiosName, v_CH_ClientSummary.LastStatusMessage, v_CH_ClientSummary.LastPolicyRequest, v_CH_ClientSummary.LastSuccessfulPing, v_ClientHealthState.HealthStateName FROM v_CH_ClientSummary INNER JOIN v_ClientHealthState ON v_CH_ClientSummary.NetBiosName = v_ClientHealthState.NetBiosName ORDER BY v_CH_ClientSummary.NetBiosName

Page 6: Agenda - HASMUG · Agenda •What is Client health •SQL •Collections / WQL •DCM •Client Status Reporting R2 •3rd party Tools
Page 7: Agenda - HASMUG · Agenda •What is Client health •SQL •Collections / WQL •DCM •Client Status Reporting R2 •3rd party Tools

Collection Based

• Using DCM or Inventory to put client into a collection

• Right click repair the client

• Send Advertisement to “fix” the client

• Exception:

– Group Policy to keep CCM Agent Running

Page 8: Agenda - HASMUG · Agenda •What is Client health •SQL •Collections / WQL •DCM •Client Status Reporting R2 •3rd party Tools

Collection Based Last Hardware Inventory (30 days)

select SMS_R_SYSTEM.ResourceID,SMS_R_SYSTEM.ResourceType,SMS_R_SYSTEM.Name,SMS_R_SYSTEM.SMSUniqueIdentifier,SMS_R_SYSTEM.ResourceDomainORWorkgroup,SMS_R_SYSTEM.Client from SMS_R_System inner join SMS_G_System_COMPUTER_SYSTEM on SMS_G_System_COMPUTER_SYSTEM.ResourceID = SMS_R_System.ResourceId where SMS_G_System_COMPUTER_SYSTEM.Name not in (select SMS_R_System.Name from SMS_R_System inner join SMS_G_System_WORKSTATION_STATUS on SMS_G_System_WORKSTATION_STATUS.ResourceID = SMS_R_System.ResourceId where SMS_G_System_WORKSTATION_STATUS.LastHardwareScan >= DateAdd(dd,-60,GetDate()) )

Page 9: Agenda - HASMUG · Agenda •What is Client health •SQL •Collections / WQL •DCM •Client Status Reporting R2 •3rd party Tools

Collection Based Reboot Pending

select SMS_R_SYSTEM.ResourceID,SMS_R_SYSTEM.ResourceType,SMS_R_SYSTEM.Name,SMS_R_SYSTEM.SMSUniqueIdentifier,SMS_R_SYSTEM.ResourceDomainORWorkgroup,SMS_R_SYSTEM.Client from SMS_R_System inner join SMS_G_System_PatchStatusEx on SMS_G_System_PatchStatusEx.ResourceID = SMS_R_System.ResourceId where SMS_G_System_PatchStatusEx.LastStateName = "reboot pending"

Page 10: Agenda - HASMUG · Agenda •What is Client health •SQL •Collections / WQL •DCM •Client Status Reporting R2 •3rd party Tools

Collection Based Machines not run a program in X days

select distinct SMS_R_System.ResourceId, SMS_R_System.Name from SMS_R_System where SMS_R_System.ResourceId not in (select distinct SMS_R_System.ResourceId from SMS_R_System inner join SMS_G_System_SoftwareUsageData on SMS_G_System_SoftwareUsageData.ResourceID = SMS_R_System.ResourceId where SMS_G_System_SoftwareUsageData.FileName = "sol.exe" and SMS_G_System_SoftwareUsageData.StartTimeLocal > DateAdd(dd,-6,GetDate()))

Page 11: Agenda - HASMUG · Agenda •What is Client health •SQL •Collections / WQL •DCM •Client Status Reporting R2 •3rd party Tools

Collections in reverse Uninstall if not approved

• Used to uninstall applications

• Control application installs (pre-applocker)

• Collection of Users not in a collection

• Example: Keep Google Earth off machines

Page 12: Agenda - HASMUG · Agenda •What is Client health •SQL •Collections / WQL •DCM •Client Status Reporting R2 •3rd party Tools

Collections in Reverse: Child Collection

select SMS_R_SYSTEM.ResourceID,SMS_R_SYSTEM.ResourceType,SMS_R_SYSTEM.Name,SMS_R_SYSTEM.SMSUniqueIdentifier,SMS_R_SYSTEM.ResourceDomainORWorkgroup,SMS_R_SYSTEM.Client from SMS_R_System inner join SMS_G_System_ADD_REMOVE_PROGRAMS on SMS_G_System_ADD_REMOVE_PROGRAMS.ResourceId = SMS_R_System.ResourceId where SMS_G_System_ADD_REMOVE_PROGRAMS.DisplayName = "Google Earth" and ResourceId not in (select ResourceID from SMS_CM_RES_COLL_ABC00447)

Page 13: Agenda - HASMUG · Agenda •What is Client health •SQL •Collections / WQL •DCM •Client Status Reporting R2 •3rd party Tools

Health Via DCM

• Certain Services Running

• Anti-Virus Definitions out-of-date by x days

• Firewall on / Firewall Settings

• Applications installed

• Free Drive space

• Vbscript to check the machine

• Certain Critical Patches

Page 14: Agenda - HASMUG · Agenda •What is Client health •SQL •Collections / WQL •DCM •Client Status Reporting R2 •3rd party Tools

WQL Query Based Certificate / Policy Errors

select distinct SMS_R_System.Name,SMS_R_System.ResourceID,SMS_R_System.ResourceType, SMS_R_System.ResourceDomainORWorkgroup,SMS_R_System.Client from SMS_R_System left join SMS_StatusMessage on SMS_StatusMessage.MachineName = SMS_R_SYSTEM.Name0 left join SMS_StatMsgInsStrings on SMS_StatMsgInsStrings.RecordId = SMS_StatusMessage.RecordId left join SMS_StatMsgAttributes on SMS_StatMsgAttributes.RecordId = SMS_StatusMessage.RecordId where SMS_StatusMessage.MessageID = 10805 and SMS_StatusMessage.Time >= ##PRM:SMS_StatusMessage.Time##

10805 - The SMS Advanced Client has determined that its policy is incorrect. A full

policy update will be requested to correct the issue. For more information see PolicyAgent.log on the client machine.

Page 15: Agenda - HASMUG · Agenda •What is Client health •SQL •Collections / WQL •DCM •Client Status Reporting R2 •3rd party Tools

Certificate Validation

Page 16: Agenda - HASMUG · Agenda •What is Client health •SQL •Collections / WQL •DCM •Client Status Reporting R2 •3rd party Tools

Client Status Reporting (R2)

– Clients that have not responded recently (in a

specified number of days).

– Computers not discovered recently (in a specified

number of days).

– Computers not inventoried recently (in a specified

number of days).

Page 17: Agenda - HASMUG · Agenda •What is Client health •SQL •Collections / WQL •DCM •Client Status Reporting R2 •3rd party Tools

Client Status Reporting (R2)

• Identifies clients that are online but are not requesting policy. • Provides a number of reports that detail the status of clients on your site. • Identifies clients that are online but have nonfunctioning client components. • Identifies clients that are online but do not have up-to-date discovery or inventory

records. • Identifies clients that are offline. • Uses a number of data sources for its analysis, including data from the

Configuration Manager 2007 site database, such as inventory, discovery, and heartbeat data.

• Gather and analyze policy, request log files from management points, and client components.

• Clients that do not have records within the client status reporting periods are categorized as inactive clients.

• Uses client pulse and client ping to retrieve information about the status of the client. Clients that are categorized as inactive are then further examined. Client ping then returns further information from the client computer such as whether a client component might be malfunctioning, or whether the client is offline.

Page 18: Agenda - HASMUG · Agenda •What is Client health •SQL •Collections / WQL •DCM •Client Status Reporting R2 •3rd party Tools
Page 19: Agenda - HASMUG · Agenda •What is Client health •SQL •Collections / WQL •DCM •Client Status Reporting R2 •3rd party Tools

3rd Party tools

• EminentWare

– WMI Repair

• Jason Sandy’s :ConfigMgr Client Startup Script – http://blogs.catapultsystems.com/jsandys/archive/2010/12/30/updat

ed-configmgr-startup-script.aspx

• SCCM Client Health Check – http://myitforum.com/cs2/blogs/cstauffer/archive/2009/02/09/sccm-

client-health-check-startup-script.aspx

• Roger Zander Client tools

• Rich Houchins Right click tools

• Client Commander

• Various Health client Tools / Scripts – http://chadstech.net/wiki/index.php?title=SCCM_2007_Client_Health

Page 21: Agenda - HASMUG · Agenda •What is Client health •SQL •Collections / WQL •DCM •Client Status Reporting R2 •3rd party Tools

Questions