|
1 | 1 | --- |
2 | | -title: ClusterResourcePlacementRolloutStarted failure when using ClusterResourcePlacement API object in Azure Kubernetes Fleet Manager |
3 | | -description: Helps you resolve the ClusterResourcePlacementRolloutStarted failure when you propagate resources using the ClusterResourcePlacement API object in Azure Kubernetes Fleet Manager. |
4 | | -ms.date: 08/05/2024 |
| 2 | +title: ClusterResourcePlacementRolloutStarted / ResourcePlacementRolloutStarted failure when using placement APIs in Azure Kubernetes Fleet Manager |
| 3 | +description: Helps you resolve the ClusterResourcePlacementRolloutStarted or ResourcePlacementRolloutStarted failure when you propagate resources using the ClusterResourcePlacement or ResourcePlacement API object in Azure Kubernetes Fleet Manager. |
| 4 | +ms.date: 12/09/2025 |
5 | 5 | ms.reviewer: zhangryan, chiragpa, shasb, ericlucier, arfallas, sachidesai, v-weizhu |
6 | 6 | ms.service: azure-kubernetes-fleet-manager |
7 | 7 | ms.custom: sap:Other issue or questions related to Fleet manager |
8 | 8 | --- |
9 | | -# Resource propagation failure: ClusterResourcePlacementRolloutStarted is false |
| 9 | +# Resource propagation failure: ClusterResourcePlacementRolloutStarted / ResourcePlacementRolloutStarted is false |
10 | 10 |
|
11 | | -This article describes how to troubleshoot `ClusterResourcePlacementRolloutStarted` issues when you propagate resources using the `ClusterResourcePlacement` API object in Azure Kubernetes Fleet Manager. |
| 11 | +This article describes how to troubleshoot `ClusterResourcePlacementRolloutStarted` (for ClusterResourcePlacement) or `ResourcePlacementRolloutStarted` (for ResourcePlacement) issues when you propagate resources using placement APIs in Azure Kubernetes Fleet Manager. |
12 | 12 |
|
13 | 13 | ## Symptoms |
14 | 14 |
|
15 | | -When using the `ClusterResourcePlacement` API object in Azure Kubernetes Fleet Manager to propagate resources, the selected resources aren't rolled out in all scheduled clusters, and the `ClusterResourcePlacementRolloutStarted` condition status shows as `False`. |
| 15 | +When using the `ClusterResourcePlacement` or `ResourcePlacement` API object in Azure Kubernetes Fleet Manager to propagate resources, the selected resources aren't rolled out in all scheduled clusters, and the `ClusterResourcePlacementRolloutStarted` (for ClusterResourcePlacement) or `ResourcePlacementRolloutStarted` (for ResourcePlacement) condition status shows as `False`. |
16 | 16 |
|
17 | 17 | > [!NOTE] |
| 18 | +> This TSG only applies to the `RollingUpdate` rollout strategy, which is the default strategy if you don't specify in the placement. To troubleshoot the update run strategy when you specify `External` in the placement, refer to the staged update run troubleshooting documentation. |
| 19 | +> |
18 | 20 | > To get more information about why the rollout doesn't start, you can check the [rollout controller](https://github.com/Azure/fleet/blob/main/pkg/controllers/rollout/controller.go) logs. |
19 | 21 |
|
20 | 22 | ## Cause |
21 | 23 |
|
22 | | -The Cluster Resource Placement rollout strategy is blocked because the `RollingUpdate` configuration is too strict. |
| 24 | +The rollout strategy is blocked because the `RollingUpdate` configuration is too strict. |
23 | 25 |
|
24 | 26 | ## Troubleshooting steps |
25 | 27 |
|
26 | | -1. In the `ClusterResourcePlacement` status section, check the `placementStatuses` to identify clusters that have the `RolloutStarted` status set to `False`. |
27 | | -2. Locate the corresponding `ClusterResourceBinding` for the identified cluster. For more information, see [How can I find the latest ClusterResourceBinding resource?](troubleshoot-clusterresourceplacement-api-issues.md#how-can-i-find-the-latest-clusterresourcebinding-resource) This resource should indicate the `Work` status (whether it was created or updated). |
| 28 | +1. In the placement status section, check the `placementStatuses` to identify clusters with the `RolloutStarted` status set to `False`. |
| 29 | +2. Locate the corresponding `ClusterResourceBinding` (for ClusterResourcePlacement) or `ResourceBinding` (for ResourcePlacement) for the identified cluster. |
| 30 | + - For ClusterResourcePlacement, see [How can I find the latest ClusterResourceBinding resource?](troubleshoot-clusterresourceplacement-api-issues.md#how-can-i-find-the-latest-clusterresourcebinding-resource) |
| 31 | + - For ResourcePlacement, see [How can I find the latest ResourceBinding resource?](troubleshoot-resourceplacement-api-issues.md#how-can-i-find-the-latest-resourcebinding-resource) |
| 32 | + |
| 33 | + This resource should indicate the `Work` status (whether it was created or updated). |
28 | 34 | 3. Verify the values of `maxUnavailable` and `maxSurge` to ensure they align with your expectations. |
29 | 35 |
|
30 | | -## Case study |
| 36 | +## Case study: ClusterResourcePlacement |
31 | 37 |
|
32 | 38 | In the following example, the `ClusterResourcePlacement` is trying to propagate a namespace to three member clusters. However, during the initial creation of the `ClusterResourcePlacement`, the namespace didn't exist on the hub cluster, and the fleet currently comprises two member clusters named `kind-cluster-1` and `kind-cluster-2`. |
33 | 39 |
|
@@ -369,5 +375,8 @@ Upon creating the `test-ns` namespace on the hub cluster, the rollout controller |
369 | 375 |
|
370 | 376 | In this situation, to address this issue, consider manually setting `maxUnavailable` to a value greater than `1` to relax the `RollingUpdate` configuration. Alternatively, you can join a third member cluster. |
371 | 377 |
|
| 378 | +### General Notes |
| 379 | +The rollout failure investigation flow is identical for ClusterResourcePlacement and ResourcePlacement; only the snapshot object kind differs. Replace CRP-specific object kinds with their RP equivalents when working with namespace-scoped placements. |
| 380 | + |
372 | 381 | [!INCLUDE [Azure Help Support](../../../includes/azure-help-support.md)] |
373 | 382 |
|
0 commit comments