Friday, March 9, 2012

Task Scheduler ja Desired Configuration Management

Sissejuhatus

Hetkel on käsil Configuration Manager 2007 Client Health e „Kliendi Tervise“ projekt ja selleks olen ehitanud PowerShellis ühe custom lahenduse, mis kontrollib kliendi arvutis teatuid asju ja peale seda raporteerib serverisse tagasi. Skripti käivitamine arvutis käib Task Scheduleri kaudu, mis on arvutitesse seadistatud läbi GP (Group Policy) eelistuste kaudu. Custom lahendus näeb välja selline.

image

Kuna skripti käivitamise task on seadistatud läbi GPO ja kuna GPO-ga ei saa ma tagasisidet kas see task on seadistatud kliendi arvutis või mitte. Siit tekkiski vajadus kontrollida, et kui palju arvutitel on reaalselt see task olemas ja võrrelda seda numbrit raporteerinud arvutite arvuga.

 

Probleem

Esialgu tundus selle probleemi lahendamine lihtne aga asjaga tegeledes avastasin ühe väga lolli asja. Keegi tark mees on arvanud, et need Scheduled Taskid mida tehakse läbi graafilise liidese ei registreerita neid Win32_ScheduledJob WMI klassi. Win32_ScheduledJob klassi registreeritakse ainult läbi skriptiga tehtud taskid. Selline erinevus on minu jaoks kuidagi arusaamatu, et miks on kaks eraldi API´d selle jaoks ja miks ei võiks registreerida kõiki töid sinna. Lähemalt saate lugeda siit

Kui teil on näiteks GP-ga seadistatud Scheduled Task, siis need leiab C:\Windows\Tasks kausta alt või kasutada Schtsaks tööriista. Kuna WMI klassi neid ei registreerita, siis ei saa lihtsalt teha ka mingit ConfigMgr raportit. Hetkel ei oska öelda kuidas on asi lahendatud Windows 8-s.

 

Lahendus

Selleks, et välja selgitada millistes arvutites on konkreetne task olemas või mitte, siis selleks ma otsustasin kasutada Desired Configuration Management komponenti. DCM´ga saab lihtsasti teha reegli mis kontrollib teatuid asju ja vastavalt sellele kas arvuti on vastavuses või mitte (Compliance või Non-Compliance). Selleks, et DCM´ga vastavust kontrollida peate te lubama DCM kliendi teenuse ja klientidel peab olema vähemalt DotNet 2.0 installeeritud

Selleks, et see asi tööle saada peame me:

1. Seadistama Configuration Item´i e CI

2. Seadistama Configuration Baseline ja linkima CI Baseline külge

3. Rakendama uue Baseline kollektsioonile

 

Configuration Itemi loomine

1. Vali CM konsoolist Desired Configuration Managament ja sealt Configuration Items

image

2. Actions menüüst vali General Configuration Item

image

3. Sisesta CI nimi ja kirjeldus

image

4. Siin lehel pole vaja midagi seadistada

image

5. Siin lehel vali New ja sealt Script

image

6. Sellel lehel tuleb sisestada skript millega vastavust kontrollida ja teil on võimalus kasutada VB Skripti, JSkripti või PowerShelli. Selles näites kasutan VBScripti. Skript mida kasutada saate on järgmine:

Option Explicit

Dim strReturn

Dim objFSO

Dim File

On Error Resume Next

strReturn = "FALSE"

Set objFSO = CreateObject("Scripting.FileSystemObject")

File = "C:\Windows\Tasks\Client_Health.job"

If objFSO.FileExists (FILE) then

' Return TRUE

strReturn = "TRUE"

Wscript.Echo strReturn

Wscript.exit

Else

' No JOB

Wscript.Echo strReturn

End If

Selles skriptis tuleks muuta punasega märgitud teksti.

image

7. Validation paneeli pealt valige New

image

8. Selle paneeli alt tuleb seadistada, et milline on skripti väljund. Ülal toodud skripti väljund on TRUE, kui kliendi arvutis on vastav Scheduled Task olemas. Kui Scheduled Task on puudu, siis skript väljund on FALSE

image

9. Valida välja millistele operatsioonisüsteemidele seda soovite paigaldada.

image

10. Kui kõik on OK, siis peaksite nägema järgmist rohelist linnukest

image

 

Configuration Baseline loomine

Kui CI on loodud, siis tuleks luua BaseLine ja selle külge linkida vastav CI.

1. Valige Action menüüst New Configuration Baseline

image

2. Sisestage Baseline nimi ja kirjeldus

image

3. Valige Application and General link

image

Peale seda valige oma loodud CI ja vajutage OK

image

4. Kui kõik läks hästi, siis peaksite nägema rohelist linnukest

image

 

Baseline rakendamine kollektsioonile

Kui CI ja Baseline on olemas, siis valige oma Baseline ja valige „Assign to a Collection“. Peale seda valige kollektsioon kuhu te soovite seda rakendada. Mõne aja pärast peaksite te saama tulemused.

image

See oli siis selline lihtne näide, et kuidas saab kontrollida kas konkreetne Scheduled Task ekisteerib või mitte kliendi arvutis.

Wednesday, March 7, 2012

2012 MVP Global Summit

Seekord oli mul võimalus esimest korda osaleda MVP Summitil ja nii vägevat nädalat Bellevues ei osanud ma oodataki. Kui oled MVP, siis sellel üritusel mitte osalemine oleks patt. Selle nädala jooksul on võimalus tuttavaks saada teiste MVP-de ja oma kategooria toote meeskonnaga. Minul oli tootegrupiga viis päeva sessioone ja seda päris kõigil ei olnud kuna see sõltub otseselt toote meeskonnast. Toote meeskonnaga kohtumised ja arutelud on kõik NDA all ja see tähendab, et nendest ma rääkida ei saa.

MVP Summitilt ootasin ma kõige rohkem saada tuttavaks oma kategooria MVP-dega ja see mul õnnestus. Minu kategooria MVP-d on tõsiselt lahed inimesed ja igav nendega ei hakanud. Ajavahega harjumine võttis ka üks neli päeva aega ja ajavahe Eesti ja Seattle vahel on 10 tundi Naeratus

Bellevue/Seattle ei ole üldsegi nagu ameerika linnad, rohkem nagu euroopa linnad. Käisime koos Taavi, Heiki ja Toomasega Seattles maaaluses Undergroud tuuril kus saab näha vana Seattle linna mis täielikult maha põles ja sai külastatud ka Gray torni e Space Needlit ja palju muud. Toidud ja teenendus olid väga heal tasemel ja ausalt öeldes võiks Eestis ka klienditeenendus sellisel tasemel olla.

Kui sa veel MVP ei ole, siis ma soovitaksin sul seda teha. Selleks, et olla omal alal tegija on sul vaja olla ka MVP. MVP avab sulle uusi uksi ja kui oskad ja tahad neid kasutada, siis see annab sulle paremad võimalused kas või teise riiki tööle liikuda või paremat tööd saada vms. Üks asi on kindel, et mõne aasta pärast töötan Seattle kandis!

MVP Summiti kulud on umbes 1500-2000 eurot.

 

Mõned pildid ka

Minu kategooria MVP-d

421522_315279521863357_100001439368447_890899_1457636402_n

Space Needle

WP_000330

maaalusel tuuril

WP_000358

WP_000354

WP_000361

Microsoft Enterprise Engineering keskuses

WP_000437

CenturyLink jalka väljakul

WP_000429

419714_10150567721676542_663931541_9305332_700963790_n