Najlepsze rozwiązania dotyczące kolekcji w Configuration ManagerBest practices for collections in Configuration Manager

Dotyczy: Configuration Manager (Current Branch)Applies to: Configuration Manager (current branch)

Niektóre wskazówki dotyczące zarządzania gromadzeniem danych mogą być sprzeczne.Some collection management guidance can be contradictory. Na przykład ze względu na wydajność należy ograniczyć liczbę kolekcji, które często są aktualizowane.For example, for performance reasons, you should limit the number of collections that update frequently. Jednak często aktualizowane kolekcje są wygodne, ponieważ większość Configuration Manager funkcji jest zależna od kolekcji.But updating collections frequently is convenient, since most Configuration Manager functionality is dependent on collections. Podczas projektowania i konfigurowania kolekcji i oceny kolekcji należy uważnie rozważyć wpływ na wydajność i wymagania biznesowe.Carefully consider both performance impacts and business requirements when you design and configure collections and collection evaluation.

Należy stosować następujące najlepsze rozwiązania dotyczące kolekcji w Configuration Manager.Use the following best practices for collections in Configuration Manager.

Konfiguruj okno obsługi aktualizacjiConfigure maintenance window for updates

Można skonfigurować okna obsługi kolekcji urządzeń, aby ograniczyć czas, w którym Configuration Manager mogą instalować oprogramowanie na tych urządzeniach.You can configure maintenance windows for device collections to restrict the times that Configuration Manager can install software on these devices. W przypadku skonfigurowania zbyt małej wielkości okna obsługi klient może nie być w stanie zainstalować krytycznych aktualizacji oprogramowania, co pozostawia klientowi podatne na problemy, które nie są rozwiązywane przez aktualizację.If you configure the maintenance window to be too small, the client might not be able to install critical software updates, which leaves the client vulnerable to the issues the update mitigates.

Ważne zagadnienia, które należy wziąć pod uwagę podczas planowania okien obsługi:Important considerations to keep in mind when planning your maintenance windows:

  • Domyślny maksymalny czas wykonywania aktualizacji oprogramowania to 60 minut.The default software update maximum run time is 60 minutes.
  • Gdy Configuration Manager oblicza, czy aktualizacja może zostać zainstalowana, program dodaje pięć minut do maksymalnego czasu działania, aby uwzględnić ponowne uruchomienie.When Configuration Manager calculates whether an update can install, it adds five minutes to the maximum run time to account for a restart.
  • Pozostały czas trwania okna obsługi musi być dłuższy niż maksymalny czas wykonywania aktualizacji oprogramowania plus pięć minut.The remaining duration of a maintenance window must be longer than the maximum run time of the software update plus five minutes.

Unikaj częstej oceny kolekcjiAvoid frequent collection evaluation

Pełna Ocena kolekcji ocenia nie tylko kolekcję docelową, ale również wszystkie kolekcje, które są ograniczone przez kolekcję w przypadku wystąpienia aktualizacji.A full collection evaluation evaluates not only the targeted collection, but also any collections that the collection limits if an update occurs. Ponadto kolekcja bez harmonogramu jest nadal oceniana w przypadku aktualizowania kolekcji ograniczającej.Also, a collection with no schedule is still evaluated if its limiting collection updates. Jest możliwe, że niektóre kolekcje mogą być oceniane częściej niż oczekiwano.So it's possible that some collections may be evaluated more often than you expect.

W przypadku zajętego środowiska Configuration Manager można poprawić wydajność oceny kolekcji przez skalowanie harmonogramów wstecz, aby uniknąć powtarzających się ocen kolekcji.In a busy Configuration Manager environment, you can improve collection evaluation performance by scaling back schedules to avoid repeated collection evaluations. W głębokim drzewie można zmniejszyć częstotliwość oceny kolekcji, jak kolekcje są najwyższego poziomu w drzewie, ponieważ oceny kolekcji na wyższym poziomie będą również wyzwalać oceny kolekcji niższego poziomu.In a deep tree, you can decrease collection evaluation frequency as the collections descend deeper in the tree, because higher-level collection evaluations will also trigger lower-level collection evaluations.

Informacje na temat wykresu oceny kolekcjiUnderstand the collection evaluation graph

Należy pamiętać o tym, jak działa wykres oceny kolekcji, aby można było zaprojektować odpowiednią strukturę kolekcji.Be aware of how the collection evaluation graph works so you can design an appropriate collection structure. Nie należy polegać na pełnej ocenie kolekcji, aby zawsze aktualizować wszystkie kolekcje.Don't rely on full collection evaluation to always update all collections. Jeśli przyrostowo Zaktualizowano aktualizacje kolekcji zgodnie z harmonogramem, odwołania do kolekcji, które nie są włączone dla aktualizacji przyrostowych, mogą nie być aktualizowane.If an incrementally updated collection updates on a schedule, referencing collections that aren't enabled for incremental updates may not update. Ponieważ aktualizacje mogą wystąpić podczas oceny przyrostowej, pełna ocena może nie zaktualizować kolekcji, kończąc wykres oceny kolekcji dla tego cyklu.Because updates likely occurred during incremental evaluations, a full evaluation may not update the collection, ending the collection evaluation graph for that cycle. W takim przypadku nie wystąpią żadne oceny odwołujących się kolekcji.In that case, no referencing collection evaluations occur. Aby uzyskać więcej informacji, zobacz Wykres oceny kolekcji.For more information, see Collection evaluation graph.

Ogranicz aktualizacje przyrostoweLimit incremental updates

Włączenie aktualizacji przyrostowych dla wielu kolekcji może spowodować opóźnienia w ocenie.Enabling incremental updates for many collections might cause evaluation delays. Najlepiej jest ograniczyć liczbę przyrostowo zaktualizowanych kolekcji do 200.It's best to limit the number of incrementally updated collections to 200. Dokładna liczba zależy od:The exact number depends on:

  • Łączna liczba kolekcjiThe total number of collections
  • Częstotliwość dodawania i modyfikowania nowych zasobów w hierarchiiThe frequency of new resources being added and changed in the hierarchy
  • Liczba klientów w hierarchiiThe number of clients in a hierarchy
  • Złożoność reguł członkostwa w kolekcji w hierarchiiThe complexity of collection membership rules in a hierarchy

Jeśli przyrostowy cykl oceny trwa dłużej niż skonfigurowana częstotliwość aktualizacji, Configuration Manager ciągle przetwarza oceny kolekcji, co może mieć wpływ na wydajność systemu.If the incremental evaluation cycle is taking longer than the configured update frequency, then Configuration Manager is constantly processing collection evaluations, which could impact system performance. Zmniejsz liczbę przyrostowo zaktualizowanych kolekcji lub Zwiększ czas między cyklami oceny przyrostowej.Reduce the number of incrementally updated collections, or increase the time between incremental evaluation cycles.

Mając na względzie potencjalny wpływ na kolekcje przyrostowe, ważne jest, aby mieć zasady lub procedurę tworzenia kolekcji i przypisywania harmonogramów aktualizacji.Given the potential impacts of incremental collections, it's important to have a policy or procedure for creating the collections and assigning update schedules. Przykłady zagadnień dotyczących zasad mogą być następujące:Examples of policy considerations might be:

  • Aktualizacje przyrostowe są używane tylko w przypadku kolekcji, które są używane do określania zakresu zabezpieczeń, ustawień klienta i okien obsługi.Only use incremental updates for collections that are used for security scoping, client settings, and maintenance windows. Te aktualizacje kolekcji wpływają na zachowanie klienta i dostęp do zasobów.These collection updates affect client behavior and access to resources.
  • W przypadku aplikacji bez zatwierdzania licencji Anonsuj aplikacje do istniejących kolekcji i użyj warunków globalnych, aby ograniczyć dostępność.For applications with no licensing approval, advertise applications to existing collections, and use global conditions to restrict availability.
  • Zaplanowanie odpowiednich okresów dla innych kolekcji z zaplanowanymi pełnymi aktualizacjami kolekcji.Outline appropriate periods for other collections that have full collection updates scheduled.

Unikaj oceny dużych drzew z poziomu urzędów certyfikacjiAvoid evaluation of large trees from the CAS

W środowisku Configuration Manager Centralna lokacja administracyjna (CAS) nie szacuje członkostwa w kolekcji.In a Configuration Manager environment, the Central Administration Site (CAS) doesn't evaluate collection membership. Lokacje główne są jedynymi lokacjami, które szacują kolekcje.Primary sites are the only sites that evaluate collections. Lokacje dodatkowe działają jako serwery proxy, które używają tylko tych danych, które są replikowane z ich lokacji głównej.Secondary sites act as proxies that use only data they replicate from their primary site.

Aby zażądać aktualizacji kolekcji, urzędy certyfikacji wysyłają żądanie do każdej lokacji głównej.To request a collection update, the CAS sends a request to each primary site. Lokacje główne szacują kolekcję i wysyłają wyniki z powrotem do urzędów certyfikacji.The primary sites evaluate the collection and send the results back to the CAS. Wyniki oceny kolekcji są wyświetlane dopiero po przeprowadzeniu replikacji wszystkich instrukcji oceny kolekcji do wszystkich lokacji, wszystkie lokacje oceniają wszystkie kolekcje, a wszystkie dane powracają do urzędów certyfikacji i konsolidowania.The collection evaluation results appear only after all collection evaluation instructions replicate to all sites, all sites evaluate all collections, and all data returns to the CAS and consolidates.

Na poniższym diagramie przedstawiono przepływ, gdy urzędy certyfikacji żądają ręcznej aktualizacji kolekcji:The following diagram demonstrates the flow when the CAS requests a manual collection update:

Ręczna aktualizacja kolekcji z urzędów certyfikacji

Aktualizacja kolekcji z urzędów certyfikacji z wieloma lokacjami głównymi może zająć dużo czasu.A collection update from a CAS with multiple primary sites can be time consuming. Jeśli kolekcja nie jest szacowana w odpowiednim czasie, jest to skłonność do powtarzania żądania.If a collection doesn't evaluate in a timely fashion, it's tempting to repeat the request.

Po rozpoczęciu wątku oceny kolekcji i załadowaniu wykresu oceny Ocena jest kontynuowana do momentu, gdy wykres oceny kolekcji będzie pusty.Once a collection evaluation thread begins and loads the evaluation graph, evaluation continues until the collection evaluation graph is empty. Wątek kończy działanie i będzie dostępny do następnej oceny.The thread then terminates and becomes available for the next evaluation. Jeśli jednak inne kolejki cyklu oceny kolekcji, gdy wątek ocenia kolekcje, wątek zostanie natychmiast ponownie uruchomiony, aby podjąć próbę oceny cyklu "pominięte".However, if another collection evaluation cycle queues while the thread is evaluating collections, the thread immediately restarts to attempt an evaluation of the "missed" cycle.

Każda metoda oceny jest uruchamiana we własnym wątku.Each evaluation method runs in its own thread. Istnieje możliwość, że w wątku Configuration Manager może próbować grafować tę samą kolekcję więcej niż raz.It's possible that within the thread, Configuration Manager may attempt to graph the same collection more than once. Configuration Manager następnie porzuca drugi i kolejne żądania.Configuration Manager then drops the second and subsequent requests.

Aby zapobiec tym scenariuszom, należy unikać ręcznego oceny kolekcji dużych drzew, szczególnie podczas pracy z urzędów certyfikacji z wieloma lokacjami.To prevent these scenarios, avoid manual collection evaluations of large trees, especially when working from the CAS with multiple sites.

Rozważ głębokość kolekcji i odsyłaczeConsider collection depth and cross-referencing

Aby uzyskać kompromis między wymaganiami biznesowymi i wydajnością, ważne jest zrozumienie struktury kolekcji, którą tworzysz, oraz jej zależności od innych kolekcji.To strike a balance between business requirements and performance, it's important to understand the collection structure you create, and its dependencies on other collections. W przypadku utworzenia kolekcji z regułami odwołującymi się do co najmniej jednej kolekcji, która odwołuje się również do innych kolekcji, wszystkie te kolekcje są oceniane w celu utworzenia członkostwa w kolekcji.If you create a collection with rules that reference one or more collections that also refer to other collections, all of those collections are evaluated to create the membership of the collection.

Reguły dołączania i wykluczania kolekcji w Configuration Manager umożliwiają łatwiejsze odwoływanie się do kolekcji.The include and exclude collection rules in Configuration Manager make referencing collections easier than writing a custom WQL query. Jeśli jednak użycie funkcji include i wykluczanie kolekcji powoduje, że nastąpi połączenie o wysokiej wydajności, zamiast tego można użyć metody zapytania WQL:However, if using include and exclude collections results in a high performance toll, you can use the WQL query method instead:

ByćInclude:

Select * from SMSRSystem where SMSRSystem.ResourceId in (select ResourceID from SMS_CM_RES_COLL_[collection id])

KluczaExclude:

Select * from SMSRSystem where SMSRSystem.ResourceId not in (select ResourceID from SMS_CM_RES_COLL_[collection id])

Użyj CEViewer do monitorowania oceny kolekcjiUse CEViewer to monitor collection evaluation

Możesz użyć podglądu oceny kolekcji (CEViewer) , aby monitorować, ile kolekcji są oceniane i jak długo Każda kolekcja trwa do aktualizacji.You can use the Collection Evaluation Viewer (CEViewer) to monitor how many collections are being evaluated and how long each collection is taking to update. CEViewer znajduje się na dysku CD. Najnowszy folder na serwerze lokacji.The CEViewer is in the CD.Latest folder on the site server.

Aby ręcznie wykonać podobne sprawdzenie w programie SQL, można użyć następującego zapytania:To manually perform a similar check with SQL, you can use the following query:

SELECT [t2].[CollectionName], [t2].[SiteID], [t2].[value] AS [Seconds], [t2].[LastIncrementalRefreshTime], [t2].[IncrementalMemberChanges] AS [IncChanges], [t2].[LastMemberChangeTime] AS [MemberChangeTime]
FROM (
    SELECT [t0].[CollectionName], [t0].[SiteID], DATEDIFF(Millisecond, [t1].[IncrementalEvaluationStartTime], [t1].[LastIncrementalRefreshTime]) * 0.001 AS [value], [t1].[LastIncrementalRefreshTime], [t1].[IncrementalMemberChanges], [t1].[LastMemberChangeTime], [t1].[IncrementalEvaluationStartTime], v1.[RefreshType]
    FROM [dbo].[Collections_G] AS [t0]
    INNER JOIN [dbo].[Collections_L] AS [t1] ON [t0].[CollectionID] = [t1].[CollectionID]
    inner join v_Collection v1 on [t0].[siteid] = v1.CollectionID
    ) AS [t2]
WHERE ([t2].[IncrementalEvaluationStartTime] IS NOT NULL) AND ([t2].[LastIncrementalRefreshTime] IS NOT NULL) and (refreshtype='4' or refreshtype='6')
ORDER BY [t2].[value] DESC