SCCM – Gdzie moje polisy.

1 minute read

Od około dwóch tygodni testuję SCCM 2007 R2. W skrócie sprawdzam czy uda mi się go dopasować do mojego aktualnego środowiska. Podczas testów napotykam na coraz to bardziej ciekawe problemy, wynikające z mojej ciekawości:)
Ostatnio przez kilka dni co parę godzin w logu aplikacji na klientach przewijał się błąd następującej treści:
W sumie błąd dość czytelny :) BITS próbuje coś ściągnąć ale mu się nie udaje :( Szkoda tylko, że nigdzie w tym wpisie nie ma hint’u czego nie można ściągnąć:( Jednak jak to zwykle bywa każdy klient, program z MS poza standardowymi (czasem mało mówiącymi) logami ma jeden lub kilka logów tekstowych, w których jest więcej informacji. W przypadku klienta SCCM logi te umieszczone są w %SYSTEMROOT%\System32\CCM\Logs.
Po pięciu minutach grzebania po logach znalazłem trochę więcej informacji w Policy-AgentLog:
instance of CCM_PolicyAgent_PolicyDownloadFailed
{
ClientID = "GUID:A8C15B18-491B-4D52-BEED-D2FF81B3CB04";
DateTime = "20090521083429.926000+000";
DownloadErrorInfo =
instance of CCM_BitsDownloadMethod_ErrorInfo
{
ErrorCode = 2147942402;
ErrorMessage = "BITS error: 'Unknown' Context: 'Unknown'";
};
DownloadMethod = "BITS";
DownloadSource = "http://SCCM-SERVER01.SCCM.LOCAL/SMS_MP/.sms_pol?DYD20001-DYD00005-44638712.7216_00";
PolicyNamespace = "\\\\SCCM-CLIENT2\\ROOT\\ccm\\policy\\Machine\\RequestedConfig";
PolicyPath = "CCM_Policy_Policy4.PolicyID=\"DYD20001-DYD00005-44638712\",
PolicySource=\"SMS:DYD\",PolicyVersion=\"7216.00\"";
ProcessID = 2020;
ThreadID = 2708;
};





Na samym początku nie mogłem zrozumieć dlaczego klient nie może pobrać tej polisy. Drugiego dnia wszystko stało się jasne:




Jak się okazało (patrz powyższy zrzut). Polisa, której klient nie mógł pobrać z serwera miała identyfikator DYD00005 (2), który jednoznacznie wskazywał na paczkę z FF.  Co ciekawe wersja paczki była kosmiczna =14761 (1). Przecież aż tak często  nie mogłem zmieniać paczki Firefoxa.   Okazało się, że podczas tworzenia pierwszej paczki, tak był to FireFox, ustawiłem by punkt dystrybucyjny był uaktualniany co 1 minutę:





Czyli mówiąc jaśniej. Serwer co minutę uaktualniał paczkę Firefoxa. Co pięć minut klient pobierał informacje o zmianach i nowych polisach. Paczka cały czas była rozgłaszana bo nie dałem ograniczenia czasowego. W wyniku czego klient pobrał sobie polisę, zainstalował Firefoxa i po 5 minutach już miał kolejną polisę dotyczącą zmian. Po otrzymaniu informacji, że są nowe polisy zaczynała się operacja pobierania. Nie wszystko w SCCM trwa szybko. W wyniku czego od czasu do czasu (+- 1-3h) klient próbował pobierać polisę, która chwilę wcześniej została usunięta i zastąpiona nową. Klient SCCM pozostawał w martwym punkcie więc generował wpis do dziennika zdarzeń.


Problem jest trywialny jednak dla osoby, która dopiero zaczyna z SCCM jest to ‘niezła zabawa’:) 


P.S.


Problem ten dał mi do myślenia i teraz każdą dystrybucję pakietu staram się zaplanować i nie włączać nadmiarowych opcji.