:_mod-docs-content-type: ASSEMBLY
[id="ztp-configuring-managed-clusters-policies"]
= Configuring managed cluster policies by using PolicyGenTemplate resources
include::_attributes/common-attributes.adoc[]
:context: ztp-configuring-managed-clusters-policies
:policy-gen-cr: PolicyGenTemplate
:policy-prefix:
:argocd-folder: out/argocd/example/policygentemplates
:placement-rule-cr: PlacementRule
:binding-field: spec.bindingRules

toc::[]

Applied `Policy` custom resources (CRs) configure the managed clusters that you provision. You can customize how {rh-rhacm-first} uses `{policy-gen-cr}` CRs to generate the applied `Policy` CRs.

include::snippets/pgt-deprecation-notice.adoc[]

[role="_additional-resources"]
.Additional resources

* xref:../../edge_computing/policygenerator_for_ztp/ztp-configuring-managed-clusters-policygenerator.adoc#ztp-configuring-managed-clusters-policygenerator[Configuring managed cluster policies by using PolicyGenerator resources]

* xref:../../edge_computing/policygenerator_for_ztp/ztp-configuring-managed-clusters-policygenerator.adoc#ztp-comparing-pgt-and-rhacm-pg-patching-strategies_ztp-configuring-managed-clusters-policygenerator[Comparing {rh-rhacm} PolicyGenerator and PolicyGenTemplate resource patching]

include::modules/ztp-the-policygentemplate.adoc[leveloffset=+1]

include::modules/ztp-pgt-config-best-practices.adoc[leveloffset=+1]

[role="_additional-resources"]
.Additional resources

* For recommendations about scaling clusters with {rh-rhacm}, see link:https://access.redhat.com/documentation/en-us/red_hat_advanced_cluster_management_for_kubernetes/2.6/html/install/installing#performance-and-scalability[Performance and scalability].

[NOTE]
====
When managing large numbers of spoke clusters on the hub cluster, minimize the number of policies to reduce resource consumption.

Grouping multiple configuration CRs into a single or limited number of policies is one way to reduce the overall number of policies on the hub cluster. When using the common, group, and site hierarchy of policies for managing site configuration, it is especially important to combine site-specific configurations into a single policy.
====

include::modules/ztp-policygentemplates-for-ran.adoc[leveloffset=+1]

[role="_additional-resources"]
.Additional resources

* xref:../../edge_computing/ztp-preparing-the-hub-cluster.adoc#ztp-preparing-the-ztp-git-repository_ztp-preparing-the-hub-cluster[Preparing the {ztp} site configuration repository]

include::modules/ztp-customizing-a-managed-site-using-pgt.adoc[leveloffset=+1]

[role="_additional-resources"]
.Additional resources

* xref:../../edge_computing/policygenerator_for_ztp/ztp-advanced-policygenerator-config.adoc#ztp-creating-a-validator-inform-policy_ztp-advanced-policy-config[Signalling {ztp} cluster deployment completion with validator inform policies]

include::modules/ztp-monitoring-policy-deployment-progress.adoc[leveloffset=+1]

include::modules/ztp-validating-the-generation-of-configuration-policy-crs.adoc[leveloffset=+1]

include::modules/ztp-restarting-policies-reconciliation.adoc[leveloffset=+1]

[role="_additional-resources"]
.Additional resources

* For information about using {cgu-operator-first} to construct your own `ClusterGroupUpgrade` CR, see xref:../../edge_computing/cnf-talm-for-cluster-upgrades.adoc#talo-about-cgu-crs_cnf-topology-aware-lifecycle-manager[About the ClusterGroupUpgrade CR].

include::modules/ztp-removing-content-from-managed-clusters.adoc[leveloffset=+1]

include::modules/ztp-definition-of-done-for-ztp-installations.adoc[leveloffset=+1]

:!policy-gen-cr:
:!policy-prefix:
:!argocd-folder:
:!placement-rule-cr:
:!binding-field:
