Repository: spectrocloud/librarium
Pull request #6391: docs: expand update a cluster DOC-1780
Author: login: Linus-SpectroCloud
Labels: name: auto-backport
description: Enable backport
name: backport-version-4-2
description: Backport change to version 4.2
name: backport-version-4-3
description: Backport change to version 4.3
name: released
name: backport-version-4-4
description: Backport change to version 4.4
name: backport-version-4-5
description: Backport change to version 4.5
name: backport-version-4-6
description: Backport change to version 4.6
Created: 2025-04-09T21:22:42Z | Merged: 2025-04-15T17:43:10Z

## Describe the Change

<!-- Add a description of what the pull request is changing, adding, and any other relevant context.  -->

This PR documents that updating a cluster will not delete old containers no longer in use. 

## Changed Pages

<!-- Add a link to the preview URL generated by Netlify. Include direct links to the pages affected by the PR. -->

💻 [Add Preview URL for Page](https://deploy-preview-6391--docs-spectrocloud.netlify.app/clusters/cluster-management/cluster-updates/#advanced-cluster-update-consideration)

## Jira Tickets

<!-- Add a link to the JIRA tickets (if applicable) -->

🎫 [Jira Ticket](https://spectrocloud.atlassian.net/browse/DOC-1780)

## Backports

<!-- Add the relevant backport labels to reflect which versions of the docs your changes will affect. -->

Can this PR be backported?

- [x] Yes. _Remember to add the relevant backport labels to your PR._
- [ ] No. _Please leave a short comment below about why this PR cannot be backported._



Diff:
diff --git a/docs/docs-content/clusters/cluster-management/cluster-updates.md b/docs/docs-content/clusters/cluster-management/cluster-updates.md
index 8c940d7bacf..adc11fbb606 100644
--- a/docs/docs-content/clusters/cluster-management/cluster-updates.md
+++ b/docs/docs-content/clusters/cluster-management/cluster-updates.md
@@ -45,11 +45,13 @@ upgrading, you review the information provided in the
   - For K3s, refer to [K3s Upgrades](https://docs.k3s.io/upgrades#version-specific-caveats)
   - For RKE2, refer to [RKE2 Manual Upgrades](https://docs.rke2.io/upgrades/manual_upgrade)
 
-## Prerequisites
+## Update a Cluster
+
+### Prerequisites
 
 - An active Kubernetes cluster in Palette.
 
-## Update a Cluster
+### Enablement
 
 <Tabs groupId="update-method">
 <TabItem value="profile-version" label="Use a new cluster profile version">
@@ -129,7 +131,7 @@ guidance on creating a new cluster profile version.
 </TabItem>
 </Tabs>
 
-## Validation
+### Validation
 
 You can follow these steps to validate all cluster update approaches.
 
@@ -140,3 +142,127 @@ You can follow these steps to validate all cluster update approaches.
 3. Select the cluster you updated, and navigate to the **Profile** tab of the cluster.
 
 4. Confirm that the cluster is now using an updated profile.
+
+## Palette Reconciliation After Updating
+
+When cluster profile updates are applied, Palette will apply the changes to the cluster but will not delete any
+resources that are no longer in use. You can choose to keep or manually remove these resources.
+
+To remove unused resources created by a pack from a cluster, you need to manually delete the pack from the cluster
+profile and apply the changes to the cluster. This will effectively remove all resources associated with the pack.
+However, this approach may not always be desirable, and there are alternative solutions.
+
+For example, you can use `kubectl` to scale the resource replicas to zero. While manually deleting the resource is an
+option, Palette will automatically recreate it if the pack remains in the cluster profile. Scaling the replicas to zero
+using `kubectl` ensures that no active instances of the resource are running, without triggering Palette to restore
+them.
+
+### Prerequisites
+
+- An active Kubernetes cluster in Palette.
+- A terminal client.
+
+### Enablement
+
+<!-- prettier-ignore-start -->
+
+The following steps provide an example of how to clean up unneeded resources using `kubectl`. In this example, an AWS cluster is created using a cluster profile with the <VersionedLink text="Hello Universe" url="/integrations/packs/?pack=hello-universe" /> included. The Hello Universe pack
+has the API preset option disabled.
+
+<!-- prettier-ignore-end -->
+
+1. Log in to [Palette](https://console.spectrocloud.com/).
+
+2. Create a cluster profile with two versions for an AWS IaaS cluster that includes the Hello Universe pack. For
+   example:
+
+   **Version 1.0.0**.
+
+   - OS = <VersionedLink text="Ubuntu" url="/integrations/packs/?pack=ubuntu-aws" />
+   - Kubernetes = <VersionedLink text="Kubernetes" url="/integrations/packs/?pack=kubernetes" />
+   - Network = <VersionedLink text="Calico CNI" url="/integrations/packs/?pack=cni-calico" />
+   - Storage = <VersionedLink text="AWS EBS CSI Driver" url="/integrations/packs/?pack=csi-aws-ebs" />
+   - App services = <VersionedLink text="Hello Universe" url="/integrations/packs/?pack=hello-universe" /> with the API
+     preset option disabled.
+
+   **Version 1.1.0**.
+
+   - OS = <VersionedLink text="Ubuntu" url="/integrations/packs/?pack=ubuntu-aws" />
+   - Kubernetes = <VersionedLink text="Kubernetes" url="/integrations/packs/?pack=kubernetes" />
+   - Network = <VersionedLink text="Calico CNI" url="/integrations/packs/?pack=cni-calico" />
+   - Storage = <VersionedLink text="AWS EBS CSI Driver" url="/integrations/packs/?pack=csi-aws-ebs" />
+   - App services = <VersionedLink text="Hello Universe" url="/integrations/packs/?pack=hello-universe" /> with the API
+     preset option enabled.
+
+3. Build a cluster using cluster profile version 1.0.0. This will take 15-20 minutes.
+
+4. Download the [Admin kubeconfig](./kubeconfig.md) file from the cluster **Overview** tab and export the `KUBECONFIG`
+   environment variable to the file path of the kubeconfig file.
+
+5. Open a terminal window and run the following command.
+
+   ```shell
+   kubectl get pods --namespace=hello-universe --output=custom-columns="POD_NAME:.metadata.name,CONTAINER_NAME:.status.containerStatuses[].name,CONTAINER_ID:.status.containerStatuses[].containerID"
+   ```
+
+   This command will display the containers in the cluster that are in the `hello-universe` namespace. It will include
+   the pod name, container name, and container ID. You can use these identifiers with various `kubectl` options.
+
+   Sample output
+
+   ```shell
+   POD_NAME                                     CONTAINER_NAME   CONTAINER_ID
+   hello-universe-deployment-6854947c67-ltdmq   hello-universe   containerd://584f07c2cf2dbb24f62e63be4322d16314d86e496eeb185c5a5944e884744239
+   ```
+
+6. Return to Palette and update the cluster using the profile version 1.1.0. Refer to the
+   [Update a Cluster](#update-a-cluster) section for instructions on updating your cluster.
+
+7. Return to the terminal and run the following command.
+
+   ```shell
+   kubectl get pods --namespace=hello-universe -o=custom-columns="POD_NAME:.metadata.name,CONTAINER_NAME:.status.containerStatuses[].name,CONTAINER_ID:.status.containerStatuses[].containerID"
+   ```
+
+   Sample output
+
+   ```shell
+   POD_NAME                                     CONTAINER_NAME   CONTAINER_ID
+   api-86f745b67c-gk4lx                         api              containerd://21c7c18e42350efc25ea300e43c3471c64fba6953ae14bb2b46387c8e5d9c06d
+   hello-universe-deployment-6854947c67-ltdmq   hello-universe   containerd://584f07c2cf2dbb24f62e63be4322d16314d86e496eeb185c5a5944e884744239
+   postgres-567dc9cb4c-cd7fn                    postgres         containerd://b704c87e77ea468156d7f8033b7ad8d9a8ce6048e640b84c529572ac1fb41cd5
+   ui-f7ff4ddc5-hcv72                           ui               containerd://40f78fb4aef00445dc9cf051ca57d61f935594cbe1e426d1f193624769ac132d
+   ```
+
+   With the cluster updated, note that the previous version of the Hello Universe app remains. This container, however,
+   is not used with the API version and is no longer needed.
+
+8. Locate the pod name of the container you want to remove and run the following command.
+
+   ```shell
+   kubectl scale deployment hello-universe-deployment --replicas=0 hello-universe-deployment-6854947c67-ltdmq --namespace hello-universe
+   ```
+
+   Sample output
+
+   ```shell
+   deployment.apps/hello-universe-deployment scaled Error from server (NotFound): deployments.apps
+   "hello-universe-deployment-6854947c67-ltdmq" not found
+   ```
+
+   This command will reduce the container count to 0, effectively stopping the container without destroying it.
+
+   If you have multiple clusters with resources no longer in use, you could put the command into a script to help scale
+   down those additional resources.
+
+### Validation
+
+1. Log in to [Palette](https://console.spectrocloud.com/).
+
+2. Navigate to the left main menu and select **Clusters**.
+
+3. Select the cluster you modified, and navigate to the **Workloads** tab of the cluster.
+
+4. Select **Pods** and filter for the deployment namespace.
+
+5. Confirm that the unnecessary resources have been removed.
diff --git a/static/assets/docs/images/clusters_management_updates_kubeconfig-download.webp b/static/assets/docs/images/clusters_management_updates_kubeconfig-download.webp
new file mode 100644
index 00000000000..ba7f2b56726
Binary files /dev/null and b/static/assets/docs/images/clusters_management_updates_kubeconfig-download.webp differ
diff --git a/static/assets/docs/images/clusters_management_updates_kubectl-api-hellouniverse-removed.webp b/static/assets/docs/images/clusters_management_updates_kubectl-api-hellouniverse-removed.webp
new file mode 100644
index 00000000000..24d5da5ded6
Binary files /dev/null and b/static/assets/docs/images/clusters_management_updates_kubectl-api-hellouniverse-removed.webp differ
diff --git a/static/assets/docs/images/clusters_management_updates_kubectl-api-hellouniverse.webp b/static/assets/docs/images/clusters_management_updates_kubectl-api-hellouniverse.webp
new file mode 100644
index 00000000000..a69b69651d5
Binary files /dev/null and b/static/assets/docs/images/clusters_management_updates_kubectl-api-hellouniverse.webp differ
diff --git a/static/assets/docs/images/clusters_management_updates_kubectl-noapi-hellouniverse.webp b/static/assets/docs/images/clusters_management_updates_kubectl-noapi-hellouniverse.webp
new file mode 100644
index 00000000000..f124c3842c2
Binary files /dev/null and b/static/assets/docs/images/clusters_management_updates_kubectl-noapi-hellouniverse.webp differ
diff --git a/static/assets/docs/images/clusters_management_updates_palette-api-hellouniverse.webp b/static/assets/docs/images/clusters_management_updates_palette-api-hellouniverse.webp
new file mode 100644
index 00000000000..ede57977a24
Binary files /dev/null and b/static/assets/docs/images/clusters_management_updates_palette-api-hellouniverse.webp differ


Reviews:
user: login: github-actions[bot]
state: COMMENTED
author_association: CONTRIBUTOR
submitted_at: 2025-04-09T21:23:33Z
user: login: github-actions[bot]
state: COMMENTED
author_association: CONTRIBUTOR
submitted_at: 2025-04-09T21:26:48Z
user: login: github-actions[bot]
state: COMMENTED
author_association: CONTRIBUTOR
submitted_at: 2025-04-10T19:40:44Z
user: login: github-actions[bot]
state: COMMENTED
author_association: CONTRIBUTOR
submitted_at: 2025-04-11T19:44:06Z
user: login: github-actions[bot]
state: COMMENTED
author_association: CONTRIBUTOR
submitted_at: 2025-04-11T19:47:22Z
user: login: Linus-SpectroCloud
state: COMMENTED
author_association: CONTRIBUTOR
submitted_at: 2025-04-13T17:14:36Z
user: login: Linus-SpectroCloud
state: COMMENTED
author_association: CONTRIBUTOR
submitted_at: 2025-04-13T17:19:55Z
user: login: benradstone
state: COMMENTED
author_association: CONTRIBUTOR
submitted_at: 2025-04-14T09:52:07Z
user: login: benradstone
state: COMMENTED
author_association: CONTRIBUTOR
submitted_at: 2025-04-14T10:18:36Z
user: login: benradstone
state: COMMENTED
author_association: CONTRIBUTOR
submitted_at: 2025-04-14T10:19:47Z
user: login: benradstone
state: COMMENTED
author_association: CONTRIBUTOR
submitted_at: 2025-04-14T10:21:15Z
user: login: benradstone
state: COMMENTED
author_association: CONTRIBUTOR
submitted_at: 2025-04-14T10:23:51Z
user: login: benradstone
state: COMMENTED
author_association: CONTRIBUTOR
submitted_at: 2025-04-14T10:24:58Z
user: login: benradstone
state: COMMENTED
author_association: CONTRIBUTOR
submitted_at: 2025-04-14T10:32:32Z
user: login: benradstone
state: COMMENTED
author_association: CONTRIBUTOR
submitted_at: 2025-04-14T10:32:56Z
user: login: benradstone
state: COMMENTED
author_association: CONTRIBUTOR
submitted_at: 2025-04-14T10:33:23Z
user: login: benradstone
state: COMMENTED
author_association: CONTRIBUTOR
submitted_at: 2025-04-14T10:38:21Z
user: login: benradstone
state: COMMENTED
author_association: CONTRIBUTOR
submitted_at: 2025-04-14T10:39:36Z
user: login: benradstone
state: COMMENTED
author_association: CONTRIBUTOR
submitted_at: 2025-04-14T11:06:44Z
user: login: benradstone
state: COMMENTED
author_association: CONTRIBUTOR
submitted_at: 2025-04-14T12:10:23Z
user: login: benradstone
state: COMMENTED
author_association: CONTRIBUTOR
submitted_at: 2025-04-14T12:11:15Z
user: login: benradstone
state: COMMENTED
author_association: CONTRIBUTOR
submitted_at: 2025-04-14T13:03:34Z
user: login: benradstone
state: COMMENTED
author_association: CONTRIBUTOR
submitted_at: 2025-04-14T13:07:20Z
user: login: benradstone
state: COMMENTED
author_association: CONTRIBUTOR
submitted_at: 2025-04-14T13:16:05Z
user: login: benradstone
state: COMMENTED
author_association: CONTRIBUTOR
submitted_at: 2025-04-14T13:17:14Z
user: login: benradstone
state: COMMENTED
author_association: CONTRIBUTOR
submitted_at: 2025-04-14T13:18:36Z
user: login: benradstone
state: COMMENTED
author_association: CONTRIBUTOR
submitted_at: 2025-04-14T13:20:11Z
user: login: benradstone
state: COMMENTED
author_association: CONTRIBUTOR
submitted_at: 2025-04-14T13:20:48Z
user: login: benradstone
state: COMMENTED
author_association: CONTRIBUTOR
submitted_at: 2025-04-14T13:21:29Z
user: login: benradstone
state: COMMENTED
author_association: CONTRIBUTOR
submitted_at: 2025-04-14T13:22:33Z
user: login: benradstone
state: COMMENTED
author_association: CONTRIBUTOR
submitted_at: 2025-04-14T13:22:59Z
user: login: benradstone
state: COMMENTED
author_association: CONTRIBUTOR
submitted_at: 2025-04-14T13:24:05Z
user: login: benradstone
state: COMMENTED
author_association: CONTRIBUTOR
submitted_at: 2025-04-14T13:24:55Z
user: login: benradstone
body: Let me know if you'd like a chat about these comments!
state: COMMENTED
author_association: CONTRIBUTOR
submitted_at: 2025-04-14T13:25:33Z
user: login: github-actions[bot]
state: COMMENTED
author_association: CONTRIBUTOR
submitted_at: 2025-04-14T14:34:27Z
user: login: github-actions[bot]
state: COMMENTED
author_association: CONTRIBUTOR
submitted_at: 2025-04-14T15:49:50Z
user: login: github-actions[bot]
state: COMMENTED
author_association: CONTRIBUTOR
submitted_at: 2025-04-14T15:58:32Z
user: login: lennessyy
state: COMMENTED
author_association: CONTRIBUTOR
submitted_at: 2025-04-14T22:46:16Z
user: login: benradstone
state: COMMENTED
author_association: CONTRIBUTOR
submitted_at: 2025-04-15T08:26:33Z
user: login: benradstone
state: COMMENTED
author_association: CONTRIBUTOR
submitted_at: 2025-04-15T08:26:59Z
user: login: benradstone
state: COMMENTED
author_association: CONTRIBUTOR
submitted_at: 2025-04-15T08:28:28Z
user: login: benradstone
state: COMMENTED
author_association: CONTRIBUTOR
submitted_at: 2025-04-15T08:28:58Z
user: login: benradstone
state: COMMENTED
author_association: CONTRIBUTOR
submitted_at: 2025-04-15T08:29:22Z
user: login: benradstone
state: COMMENTED
author_association: CONTRIBUTOR
submitted_at: 2025-04-15T08:31:18Z
user: login: benradstone
state: COMMENTED
author_association: CONTRIBUTOR
submitted_at: 2025-04-15T09:28:21Z
user: login: benradstone
state: COMMENTED
author_association: CONTRIBUTOR
submitted_at: 2025-04-15T09:29:44Z
user: login: benradstone
state: COMMENTED
author_association: CONTRIBUTOR
submitted_at: 2025-04-15T09:31:09Z
user: login: benradstone
state: COMMENTED
author_association: CONTRIBUTOR
submitted_at: 2025-04-15T09:32:11Z
user: login: addetz
state: COMMENTED
author_association: CONTRIBUTOR
submitted_at: 2025-04-15T11:16:09Z
user: login: addetz
body: Big improvement since your first draft! 👏 
state: COMMENTED
author_association: CONTRIBUTOR
submitted_at: 2025-04-15T11:31:45Z
user: login: benradstone
state: COMMENTED
author_association: CONTRIBUTOR
submitted_at: 2025-04-15T11:45:40Z
user: login: github-actions[bot]
state: COMMENTED
author_association: CONTRIBUTOR
submitted_at: 2025-04-15T11:49:38Z
user: login: github-actions[bot]
state: COMMENTED
author_association: CONTRIBUTOR
submitted_at: 2025-04-15T13:27:45Z
user: login: github-actions[bot]
state: COMMENTED
author_association: CONTRIBUTOR
submitted_at: 2025-04-15T14:07:12Z
user: login: addetz
state: APPROVED
author_association: CONTRIBUTOR
submitted_at: 2025-04-15T15:18:46Z
user: login: caroldelwing
body: PR approved with a few important suggestions. This topic and ticket was tricky and you did a great job investigating and documenting this behavior. Congratulations, Linus! :rocket:
state: APPROVED
author_association: CONTRIBUTOR
submitted_at: 2025-04-15T15:45:09Z
user: login: github-actions[bot]
state: COMMENTED
author_association: CONTRIBUTOR
submitted_at: 2025-04-15T15:57:54Z
user: login: github-actions[bot]
state: COMMENTED
author_association: CONTRIBUTOR
submitted_at: 2025-04-15T16:01:40Z

Review comments:
diff_hunk: @@ -98,6 +98,7 @@ create a new profile version, and then upgrade active clusters to the new versio
 [Version a Cluster Profile](../../profiles/cluster-profiles/modify-cluster-profiles/version-cluster-profile.md) for
 guidance on creating a new cluster profile version.
 
+This is a test item. DELETE ME!
path: docs/docs-content/clusters/cluster-management/cluster-updates.md
user: login: github-actions[bot]
body: 🚫 **[vale]** <sub>reported by [reviewdog](https://github.com/reviewdog/reviewdog) :dog:</sub><br>[Google.Exclamation] Don't use exclamation points in text.
created_at: 2025-04-09T21:23:33Z
author_association: CONTRIBUTOR
diff_hunk: @@ -98,7 +98,7 @@ create a new profile version, and then upgrade active clusters to the new versio
 [Version a Cluster Profile](../../profiles/cluster-profiles/modify-cluster-profiles/version-cluster-profile.md) for
 guidance on creating a new cluster profile version.
 
-:::
+This is a test item. DELETE ME! :::
path: docs/docs-content/clusters/cluster-management/cluster-updates.md
user: login: github-actions[bot]
body: 🚫 **[vale]** <sub>reported by [reviewdog](https://github.com/reviewdog/reviewdog) :dog:</sub><br>[Google.Exclamation] Don't use exclamation points in text.
created_at: 2025-04-09T21:26:48Z
author_association: CONTRIBUTOR
diff_hunk: @@ -83,6 +83,13 @@ Palette. You will then create a cluster profile and use the registered host to d
   - [rsyslog](https://github.com/rsyslog/rsyslog). This is required for audit logs.
   - (Airgap only) [Palette Edge CLI](../../spectro-downloads.md#palette-edge-cli)
 
+  If you are using Ubuntu or any OS that uses apt or apt-get for package management, you can issue the following command
+  to install all dependencies for installation (not including the Palette Edge CLI) with the following command:
+
+  ```shell
+  sudo apt-get update && sudo apt-get install -y bash jq zstd rsync systemd-timesyncd conntrack iptables rsyslog --no-install-recommends
path: docs/docs-content/deployment-modes/agent-mode/install-agent-host.md
user: login: github-actions[bot]
body: 🚫 **[vale]** <sub>reported by [reviewdog](https://github.com/reviewdog/reviewdog) :dog:</sub><br>[spectrocloud-docs-internal.longform] Avoid using the short form of commands. Replace the short form flag in 'install -y' with the corresponding long form flag.
created_at: 2025-04-10T19:40:44Z
author_association: CONTRIBUTOR
diff_hunk: @@ -661,92 +633,117 @@ internet.
    export HTTPS_PROXY=<httpsProxyAddress>
    ```
 
-5. Download the agent installation image from a host with internet access and export it to a TAR file. Replace
-   `<architecture>` with the architecture of your CPU. If you have ARM64, use `arm64`. If you have AMD64 or x86_64, use
-   `amd64`. Replace `<version>` with the desired version number. In this example, we use `v4.5.0`.
-
-   ```shell
-   crane pull us-docker.pkg.dev/palette-images/edge/stylus-agent-mode-linux-<architecture>:<version> agent-image.tar
-   ```
-
-6. Issue the following command from a host with internet access to download the agent binary.
+3. Download the airgap agent installation package and save it as a TAR file. Replace `<architecture>` with the
+   architecture of your CPU. If you have ARM64, use `arm64`. If you have AMD64 or x86_64, use `amd64`. Replace
+   `<version>` with the desired version number. In this example, we use `v4.5.0`. Refer to
+   [Agent Mode Releases](https://github.com/spectrocloud/agent-mode/releases) for all the available releases.
 
    <Tabs groupID="FIPS">
 
    <TabItem value="Non-FIPS">
 
-   Name the binary `palette-agent`. Replace `<architecture>` with the architecture of your CPU. If you have ARM64, use
-   `arm64`. If you have AMD64 or x86_64, use `amd64`. Replace `<version>` with the desired version number. In this
-   example, we use `v4.5.0`.
-
    ```shell
-   export URL=https://github.com/spectrocloud/agent-mode/releases/download/<version>/palette-agent-linux-<architecture>
-   curl --verbose --location $URL --output palette-agent
+   curl -L https://github.com/spectrocloud/agent-mode/releases/download/<version>/agent-mode-linux-<architecture>.tar --output agent-mode-linux-<architecture>.tar
path: docs/docs-content/deployment-modes/agent-mode/install-agent-host.md
user: login: github-actions[bot]
body: 🚫 **[vale]** <sub>reported by [reviewdog](https://github.com/reviewdog/reviewdog) :dog:</sub><br>[spectrocloud-docs-internal.longform] Avoid using the short form of commands. Replace the short form flag in 'curl -L' with the corresponding long form flag.
created_at: 2025-04-10T19:40:44Z
author_association: CONTRIBUTOR
diff_hunk: @@ -661,92 +633,117 @@ internet.
    export HTTPS_PROXY=<httpsProxyAddress>
    ```
 
-5. Download the agent installation image from a host with internet access and export it to a TAR file. Replace
-   `<architecture>` with the architecture of your CPU. If you have ARM64, use `arm64`. If you have AMD64 or x86_64, use
-   `amd64`. Replace `<version>` with the desired version number. In this example, we use `v4.5.0`.
-
-   ```shell
-   crane pull us-docker.pkg.dev/palette-images/edge/stylus-agent-mode-linux-<architecture>:<version> agent-image.tar
-   ```
-
-6. Issue the following command from a host with internet access to download the agent binary.
+3. Download the airgap agent installation package and save it as a TAR file. Replace `<architecture>` with the
+   architecture of your CPU. If you have ARM64, use `arm64`. If you have AMD64 or x86_64, use `amd64`. Replace
+   `<version>` with the desired version number. In this example, we use `v4.5.0`. Refer to
+   [Agent Mode Releases](https://github.com/spectrocloud/agent-mode/releases) for all the available releases.
 
    <Tabs groupID="FIPS">
 
    <TabItem value="Non-FIPS">
 
-   Name the binary `palette-agent`. Replace `<architecture>` with the architecture of your CPU. If you have ARM64, use
-   `arm64`. If you have AMD64 or x86_64, use `amd64`. Replace `<version>` with the desired version number. In this
-   example, we use `v4.5.0`.
-
    ```shell
-   export URL=https://github.com/spectrocloud/agent-mode/releases/download/<version>/palette-agent-linux-<architecture>
-   curl --verbose --location $URL --output palette-agent
+   curl -L https://github.com/spectrocloud/agent-mode/releases/download/<version>/agent-mode-linux-<architecture>.tar --output agent-mode-linux-<architecture>.tar
    ```
 
    </TabItem>
 
    <TabItem value="FIPS">
 
-   Name the binary `palette-agent`. Replace `<version>` with the desired version number. In this example, we use
-   `v4.5.0`. Note that the FIPS version only supports a CPU architecture of AMD64.
-
    ```shell
-   export URL=https://github.com/spectrocloud/agent-mode/releases/download/<version>/palette-agent-fips-linux-amd64
-   curl --verbose --location $URL --output palette-agent
+   curl -L https://github.com/spectrocloud/agent-mode/releases/download/<version>/agent-mode-fips-linux-<architecture>.tar --output agent-mode-linux-<architecture>.tar
path: docs/docs-content/deployment-modes/agent-mode/install-agent-host.md
user: login: github-actions[bot]
body: 🚫 **[vale]** <sub>reported by [reviewdog](https://github.com/reviewdog/reviewdog) :dog:</sub><br>[spectrocloud-docs-internal.longform] Avoid using the short form of commands. Replace the short form flag in 'curl -L' with the corresponding long form flag.
created_at: 2025-04-10T19:40:44Z
author_association: CONTRIBUTOR
diff_hunk: @@ -140,3 +142,106 @@ You can follow these steps to validate all cluster update approaches.
 3. Select the cluster you updated, and navigate to the **Profile** tab of the cluster.
 
 4. Confirm that the cluster is now using an updated profile.
+
+## Palette Reconciliation Behavior
+
+When cluster profile updates are applied, Palette will apply the changes to the cluster but will not delete any resources that are no longer in use. This may be appropriate in some instances, but removing those resources will be necessary in others. This can be achieved by utilizing one of the two following methods.
+
+The first would be to utilize a clean deployment with a new cluster profile. The previous version could be deleted once the new cluster and cluster profile are deployed. The challenge, however, is when particular resources are in use.
+
+The second option is to use `kubectl` to scale the resource count to 0. While deleting the resource using something like K9s is possible, Palette will recreate it immediately.
+
+### Limitations
+
+:::warning
+
+Once you upgrade your cluster to a new Kubernetes version, you will not be able to downgrade. We recommend that, before
+upgrading, you review the information provided in the
+[Kubernetes Upgrades](../../integrations/kubernetes-support.md#kubernetes-upgrades) section.
+
+:::
+
+- You cannot update a cluster while its status is still **Provisioning**.
+
+- You cannot change the Container Network Interface (CNI) of an Edge cluster. You must delete and re-create the cluster
+  instead. For more information about creating an Edge cluster, refer to
+  [Create Cluster Definition](../edge/site-deployment/cluster-deployment.md).
+
+- Avoid skipping minor versions when upgrading the Kubernetes version of a cluster. Refer to the documentation of your
+  Kubernetes distribution for upgrade guidance and follow the recommended upgrade paths.
+
+  - For PXK and PXK-E, refer to
+    [Upgrade Kubeadm Clusters](https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-upgrade/).
+  - For K3s, refer to [K3s Upgrades](https://docs.k3s.io/upgrades#version-specific-caveats)
+  - For RKE2, refer to [RKE2 Manual Upgrades](https://docs.rke2.io/upgrades/manual_upgrade)
+
+
+### Prerequisites
+
+- An active Kubernetes cluster in Palette.
+- A terminal client
+
+### Enablement
+
+The steps below show how we can use the second option while deploying the Hello Universe application pack and updating the cluster profile. In this example, we create an AWS cluster called cluster-update-deletion. We will use Palette and a terminal application.
+
+1. Log into Palette and create a cluster profile with two versions. The base layers should be ubuntu-aws, Kubernetes, cni-calico, and csi-aws-ebs. The App Services layer will use the Hello Universe from the Palette Community Registry (OCI).
path: docs/docs-content/clusters/cluster-management/cluster-updates.md
user: login: github-actions[bot]
body: 🚫 **[vale]** <sub>reported by [reviewdog](https://github.com/reviewdog/reviewdog) :dog:</sub><br>[Vale.Terms] Use 'Ubuntu' instead of 'ubuntu'.
created_at: 2025-04-11T19:44:05Z
author_association: CONTRIBUTOR
diff_hunk: @@ -140,3 +142,106 @@ You can follow these steps to validate all cluster update approaches.
 3. Select the cluster you updated, and navigate to the **Profile** tab of the cluster.
 
 4. Confirm that the cluster is now using an updated profile.
+
+## Palette Reconciliation Behavior
+
+When cluster profile updates are applied, Palette will apply the changes to the cluster but will not delete any resources that are no longer in use. This may be appropriate in some instances, but removing those resources will be necessary in others. This can be achieved by utilizing one of the two following methods.
+
+The first would be to utilize a clean deployment with a new cluster profile. The previous version could be deleted once the new cluster and cluster profile are deployed. The challenge, however, is when particular resources are in use.
+
+The second option is to use `kubectl` to scale the resource count to 0. While deleting the resource using something like K9s is possible, Palette will recreate it immediately.
+
+### Limitations
+
+:::warning
+
+Once you upgrade your cluster to a new Kubernetes version, you will not be able to downgrade. We recommend that, before
+upgrading, you review the information provided in the
+[Kubernetes Upgrades](../../integrations/kubernetes-support.md#kubernetes-upgrades) section.
+
+:::
+
+- You cannot update a cluster while its status is still **Provisioning**.
+
+- You cannot change the Container Network Interface (CNI) of an Edge cluster. You must delete and re-create the cluster
+  instead. For more information about creating an Edge cluster, refer to
+  [Create Cluster Definition](../edge/site-deployment/cluster-deployment.md).
+
+- Avoid skipping minor versions when upgrading the Kubernetes version of a cluster. Refer to the documentation of your
+  Kubernetes distribution for upgrade guidance and follow the recommended upgrade paths.
+
+  - For PXK and PXK-E, refer to
+    [Upgrade Kubeadm Clusters](https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-upgrade/).
+  - For K3s, refer to [K3s Upgrades](https://docs.k3s.io/upgrades#version-specific-caveats)
+  - For RKE2, refer to [RKE2 Manual Upgrades](https://docs.rke2.io/upgrades/manual_upgrade)
+
+
+### Prerequisites
+
+- An active Kubernetes cluster in Palette.
+- A terminal client
+
+### Enablement
+
+The steps below show how we can use the second option while deploying the Hello Universe application pack and updating the cluster profile. In this example, we create an AWS cluster called cluster-update-deletion. We will use Palette and a terminal application.
+
+1. Log into Palette and create a cluster profile with two versions. The base layers should be ubuntu-aws, Kubernetes, cni-calico, and csi-aws-ebs. The App Services layer will use the Hello Universe from the Palette Community Registry (OCI).
+   
+   The first profile version (1.0.0) should be the Hello Universe 1.2.0 pack with the API disabled. 
+   
+   The second version (1.1.0) should be the Hello Universe 1.2.0 pack with the API enabled. 
+   
+2. Build a cluster using the profile version 1.0.0 (takes about 15-20 min)
+   
+3. Download the Admin kubeconfig file from the cluster Overview.
+   
+   Sample output:
+
+  ![How to download Admin kubeconfig file from Palette](/clusters_management_updates_kubeconfig-download.webp)   
+
+4. Go your terminal application and run the following command
path: docs/docs-content/clusters/cluster-management/cluster-updates.md
user: login: github-actions[bot]
body: 🚫 **[vale]** <sub>reported by [reviewdog](https://github.com/reviewdog/reviewdog) :dog:</sub><br>[spectrocloud-docs-internal.ableism] Avoid using ableism terms. Use 'issue' instead of 'run'.
created_at: 2025-04-11T19:44:05Z
author_association: CONTRIBUTOR
diff_hunk: @@ -140,3 +142,106 @@ You can follow these steps to validate all cluster update approaches.
 3. Select the cluster you updated, and navigate to the **Profile** tab of the cluster.
 
 4. Confirm that the cluster is now using an updated profile.
+
+## Palette Reconciliation Behavior
+
+When cluster profile updates are applied, Palette will apply the changes to the cluster but will not delete any resources that are no longer in use. This may be appropriate in some instances, but removing those resources will be necessary in others. This can be achieved by utilizing one of the two following methods.
+
+The first would be to utilize a clean deployment with a new cluster profile. The previous version could be deleted once the new cluster and cluster profile are deployed. The challenge, however, is when particular resources are in use.
+
+The second option is to use `kubectl` to scale the resource count to 0. While deleting the resource using something like K9s is possible, Palette will recreate it immediately.
+
+### Limitations
+
+:::warning
+
+Once you upgrade your cluster to a new Kubernetes version, you will not be able to downgrade. We recommend that, before
+upgrading, you review the information provided in the
+[Kubernetes Upgrades](../../integrations/kubernetes-support.md#kubernetes-upgrades) section.
+
+:::
+
+- You cannot update a cluster while its status is still **Provisioning**.
+
+- You cannot change the Container Network Interface (CNI) of an Edge cluster. You must delete and re-create the cluster
+  instead. For more information about creating an Edge cluster, refer to
+  [Create Cluster Definition](../edge/site-deployment/cluster-deployment.md).
+
+- Avoid skipping minor versions when upgrading the Kubernetes version of a cluster. Refer to the documentation of your
+  Kubernetes distribution for upgrade guidance and follow the recommended upgrade paths.
+
+  - For PXK and PXK-E, refer to
+    [Upgrade Kubeadm Clusters](https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-upgrade/).
+  - For K3s, refer to [K3s Upgrades](https://docs.k3s.io/upgrades#version-specific-caveats)
+  - For RKE2, refer to [RKE2 Manual Upgrades](https://docs.rke2.io/upgrades/manual_upgrade)
+
+
+### Prerequisites
+
+- An active Kubernetes cluster in Palette.
+- A terminal client
+
+### Enablement
+
+The steps below show how we can use the second option while deploying the Hello Universe application pack and updating the cluster profile. In this example, we create an AWS cluster called cluster-update-deletion. We will use Palette and a terminal application.
+
+1. Log into Palette and create a cluster profile with two versions. The base layers should be ubuntu-aws, Kubernetes, cni-calico, and csi-aws-ebs. The App Services layer will use the Hello Universe from the Palette Community Registry (OCI).
+   
+   The first profile version (1.0.0) should be the Hello Universe 1.2.0 pack with the API disabled. 
+   
+   The second version (1.1.0) should be the Hello Universe 1.2.0 pack with the API enabled. 
+   
+2. Build a cluster using the profile version 1.0.0 (takes about 15-20 min)
+   
+3. Download the Admin kubeconfig file from the cluster Overview.
+   
+   Sample output:
+
+  ![How to download Admin kubeconfig file from Palette](/clusters_management_updates_kubeconfig-download.webp)   
+
+4. Go your terminal application and run the following command
+
+ ```kubectl get pods --kubeconfig=admin.cluster-update-deletion.kubeconfig --namespace=hello-universe -o=custom-columns="POD_NAME:.metadata.name,CONTAINER_NAME:.status.containerStatuses[].name,CONTAINER_ID:.status.containerStatuses[].containerID"```
path: docs/docs-content/clusters/cluster-management/cluster-updates.md
user: login: github-actions[bot]
body: 🚫 **[vale]** <sub>reported by [reviewdog](https://github.com/reviewdog/reviewdog) :dog:</sub><br>[spectrocloud-docs-internal.longform] Avoid using the short form of commands. Replace the short form flag in 'universe -o' with the corresponding long form flag.
created_at: 2025-04-11T19:44:05Z
author_association: CONTRIBUTOR
diff_hunk: @@ -140,3 +142,106 @@ You can follow these steps to validate all cluster update approaches.
 3. Select the cluster you updated, and navigate to the **Profile** tab of the cluster.
 
 4. Confirm that the cluster is now using an updated profile.
+
+## Palette Reconciliation Behavior
+
+When cluster profile updates are applied, Palette will apply the changes to the cluster but will not delete any resources that are no longer in use. This may be appropriate in some instances, but removing those resources will be necessary in others. This can be achieved by utilizing one of the two following methods.
+
+The first would be to utilize a clean deployment with a new cluster profile. The previous version could be deleted once the new cluster and cluster profile are deployed. The challenge, however, is when particular resources are in use.
+
+The second option is to use `kubectl` to scale the resource count to 0. While deleting the resource using something like K9s is possible, Palette will recreate it immediately.
+
+### Limitations
+
+:::warning
+
+Once you upgrade your cluster to a new Kubernetes version, you will not be able to downgrade. We recommend that, before
+upgrading, you review the information provided in the
+[Kubernetes Upgrades](../../integrations/kubernetes-support.md#kubernetes-upgrades) section.
+
+:::
+
+- You cannot update a cluster while its status is still **Provisioning**.
+
+- You cannot change the Container Network Interface (CNI) of an Edge cluster. You must delete and re-create the cluster
+  instead. For more information about creating an Edge cluster, refer to
+  [Create Cluster Definition](../edge/site-deployment/cluster-deployment.md).
+
+- Avoid skipping minor versions when upgrading the Kubernetes version of a cluster. Refer to the documentation of your
+  Kubernetes distribution for upgrade guidance and follow the recommended upgrade paths.
+
+  - For PXK and PXK-E, refer to
+    [Upgrade Kubeadm Clusters](https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-upgrade/).
+  - For K3s, refer to [K3s Upgrades](https://docs.k3s.io/upgrades#version-specific-caveats)
+  - For RKE2, refer to [RKE2 Manual Upgrades](https://docs.rke2.io/upgrades/manual_upgrade)
+
+
+### Prerequisites
+
+- An active Kubernetes cluster in Palette.
+- A terminal client
+
+### Enablement
+
+The steps below show how we can use the second option while deploying the Hello Universe application pack and updating the cluster profile. In this example, we create an AWS cluster called cluster-update-deletion. We will use Palette and a terminal application.
+
+1. Log into Palette and create a cluster profile with two versions. The base layers should be ubuntu-aws, Kubernetes, cni-calico, and csi-aws-ebs. The App Services layer will use the Hello Universe from the Palette Community Registry (OCI).
+   
+   The first profile version (1.0.0) should be the Hello Universe 1.2.0 pack with the API disabled. 
+   
+   The second version (1.1.0) should be the Hello Universe 1.2.0 pack with the API enabled. 
+   
+2. Build a cluster using the profile version 1.0.0 (takes about 15-20 min)
+   
+3. Download the Admin kubeconfig file from the cluster Overview.
+   
+   Sample output:
+
+  ![How to download Admin kubeconfig file from Palette](/clusters_management_updates_kubeconfig-download.webp)   
+
+4. Go your terminal application and run the following command
+
+ ```kubectl get pods --kubeconfig=admin.cluster-update-deletion.kubeconfig --namespace=hello-universe -o=custom-columns="POD_NAME:.metadata.name,CONTAINER_NAME:.status.containerStatuses[].name,CONTAINER_ID:.status.containerStatuses[].containerID"```
+   
+5. This command will show the containers in the cluster that are in the hello universe namespace. It will include the pod name, container name, and container ID. You can use these identifiers with various `kubectl` options.
path: docs/docs-content/clusters/cluster-management/cluster-updates.md
user: login: github-actions[bot]
body: 🚫 **[vale]** <sub>reported by [reviewdog](https://github.com/reviewdog/reviewdog) :dog:</sub><br>[spectrocloud-docs-internal.ableism] Avoid using ableism terms. Use 'display' instead of 'see'.
created_at: 2025-04-11T19:44:05Z
author_association: CONTRIBUTOR
diff_hunk: @@ -140,3 +142,106 @@ You can follow these steps to validate all cluster update approaches.
 3. Select the cluster you updated, and navigate to the **Profile** tab of the cluster.
 
 4. Confirm that the cluster is now using an updated profile.
+
+## Palette Reconciliation Behavior
+
+When cluster profile updates are applied, Palette will apply the changes to the cluster but will not delete any resources that are no longer in use. This may be appropriate in some instances, but removing those resources will be necessary in others. This can be achieved by utilizing one of the two following methods.
+
+The first would be to utilize a clean deployment with a new cluster profile. The previous version could be deleted once the new cluster and cluster profile are deployed. The challenge, however, is when particular resources are in use.
+
+The second option is to use `kubectl` to scale the resource count to 0. While deleting the resource using something like K9s is possible, Palette will recreate it immediately.
+
+### Limitations
+
+:::warning
+
+Once you upgrade your cluster to a new Kubernetes version, you will not be able to downgrade. We recommend that, before
+upgrading, you review the information provided in the
+[Kubernetes Upgrades](../../integrations/kubernetes-support.md#kubernetes-upgrades) section.
+
+:::
+
+- You cannot update a cluster while its status is still **Provisioning**.
+
+- You cannot change the Container Network Interface (CNI) of an Edge cluster. You must delete and re-create the cluster
+  instead. For more information about creating an Edge cluster, refer to
+  [Create Cluster Definition](../edge/site-deployment/cluster-deployment.md).
+
+- Avoid skipping minor versions when upgrading the Kubernetes version of a cluster. Refer to the documentation of your
+  Kubernetes distribution for upgrade guidance and follow the recommended upgrade paths.
+
+  - For PXK and PXK-E, refer to
+    [Upgrade Kubeadm Clusters](https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-upgrade/).
+  - For K3s, refer to [K3s Upgrades](https://docs.k3s.io/upgrades#version-specific-caveats)
+  - For RKE2, refer to [RKE2 Manual Upgrades](https://docs.rke2.io/upgrades/manual_upgrade)
+
+
+### Prerequisites
+
+- An active Kubernetes cluster in Palette.
+- A terminal client
+
+### Enablement
+
+The steps below show how we can use the second option while deploying the Hello Universe application pack and updating the cluster profile. In this example, we create an AWS cluster called cluster-update-deletion. We will use Palette and a terminal application.
+
+1. Log into Palette and create a cluster profile with two versions. The base layers should be ubuntu-aws, Kubernetes, cni-calico, and csi-aws-ebs. The App Services layer will use the Hello Universe from the Palette Community Registry (OCI).
+   
+   The first profile version (1.0.0) should be the Hello Universe 1.2.0 pack with the API disabled. 
+   
+   The second version (1.1.0) should be the Hello Universe 1.2.0 pack with the API enabled. 
+   
+2. Build a cluster using the profile version 1.0.0 (takes about 15-20 min)
+   
+3. Download the Admin kubeconfig file from the cluster Overview.
+   
+   Sample output:
+
+  ![How to download Admin kubeconfig file from Palette](/clusters_management_updates_kubeconfig-download.webp)   
+
+4. Go your terminal application and run the following command
+
+ ```kubectl get pods --kubeconfig=admin.cluster-update-deletion.kubeconfig --namespace=hello-universe -o=custom-columns="POD_NAME:.metadata.name,CONTAINER_NAME:.status.containerStatuses[].name,CONTAINER_ID:.status.containerStatuses[].containerID"```
+   
+5. This command will show the containers in the cluster that are in the hello universe namespace. It will include the pod name, container name, and container ID. You can use these identifiers with various `kubectl` options.
path: docs/docs-content/clusters/cluster-management/cluster-updates.md
user: login: github-actions[bot]
body: 🚫 **[vale]** <sub>reported by [reviewdog](https://github.com/reviewdog/reviewdog) :dog:</sub><br>[spectrocloud-docs-internal.ableism] Avoid using ableism terms. Use 'operating' instead of 'running'.
created_at: 2025-04-11T19:44:05Z
author_association: CONTRIBUTOR
diff_hunk: @@ -140,3 +142,106 @@ You can follow these steps to validate all cluster update approaches.
 3. Select the cluster you updated, and navigate to the **Profile** tab of the cluster.
 
 4. Confirm that the cluster is now using an updated profile.
+
+## Palette Reconciliation Behavior
+
+When cluster profile updates are applied, Palette will apply the changes to the cluster but will not delete any resources that are no longer in use. This may be appropriate in some instances, but removing those resources will be necessary in others. This can be achieved by utilizing one of the two following methods.
+
+The first would be to utilize a clean deployment with a new cluster profile. The previous version could be deleted once the new cluster and cluster profile are deployed. The challenge, however, is when particular resources are in use.
+
+The second option is to use `kubectl` to scale the resource count to 0. While deleting the resource using something like K9s is possible, Palette will recreate it immediately.
+
+### Limitations
+
+:::warning
+
+Once you upgrade your cluster to a new Kubernetes version, you will not be able to downgrade. We recommend that, before
+upgrading, you review the information provided in the
+[Kubernetes Upgrades](../../integrations/kubernetes-support.md#kubernetes-upgrades) section.
+
+:::
+
+- You cannot update a cluster while its status is still **Provisioning**.
+
+- You cannot change the Container Network Interface (CNI) of an Edge cluster. You must delete and re-create the cluster
+  instead. For more information about creating an Edge cluster, refer to
+  [Create Cluster Definition](../edge/site-deployment/cluster-deployment.md).
+
+- Avoid skipping minor versions when upgrading the Kubernetes version of a cluster. Refer to the documentation of your
+  Kubernetes distribution for upgrade guidance and follow the recommended upgrade paths.
+
+  - For PXK and PXK-E, refer to
+    [Upgrade Kubeadm Clusters](https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-upgrade/).
+  - For K3s, refer to [K3s Upgrades](https://docs.k3s.io/upgrades#version-specific-caveats)
+  - For RKE2, refer to [RKE2 Manual Upgrades](https://docs.rke2.io/upgrades/manual_upgrade)
+
+
+### Prerequisites
+
+- An active Kubernetes cluster in Palette.
+- A terminal client
+
+### Enablement
+
+The steps below show how we can use the second option while deploying the Hello Universe application pack and updating the cluster profile. In this example, we create an AWS cluster called cluster-update-deletion. We will use Palette and a terminal application.
+
+1. Log into Palette and create a cluster profile with two versions. The base layers should be ubuntu-aws, Kubernetes, cni-calico, and csi-aws-ebs. The App Services layer will use the Hello Universe from the Palette Community Registry (OCI).
+   
+   The first profile version (1.0.0) should be the Hello Universe 1.2.0 pack with the API disabled. 
+   
+   The second version (1.1.0) should be the Hello Universe 1.2.0 pack with the API enabled. 
+   
+2. Build a cluster using the profile version 1.0.0 (takes about 15-20 min)
+   
+3. Download the Admin kubeconfig file from the cluster Overview.
+   
+   Sample output:
+
+  ![How to download Admin kubeconfig file from Palette](/clusters_management_updates_kubeconfig-download.webp)   
+
+4. Go your terminal application and run the following command
+
+ ```kubectl get pods --kubeconfig=admin.cluster-update-deletion.kubeconfig --namespace=hello-universe -o=custom-columns="POD_NAME:.metadata.name,CONTAINER_NAME:.status.containerStatuses[].name,CONTAINER_ID:.status.containerStatuses[].containerID"```
+   
+5. This command will show the containers in the cluster that are in the hello universe namespace. It will include the pod name, container name, and container ID. You can use these identifiers with various `kubectl` options.
+   
+ Sample output: 
+
+![Using kubectl to see what containers are running](/clusters_management_updates_kubectl-noapi-hellouniverse.webp) 
+
+6. Return to Palette and update the cluster using the profile version 1.1.0 (takes about 1-2 min).
+   
+7. Return to the terminal and run the following command
path: docs/docs-content/clusters/cluster-management/cluster-updates.md
user: login: github-actions[bot]
body: 🚫 **[vale]** <sub>reported by [reviewdog](https://github.com/reviewdog/reviewdog) :dog:</sub><br>[spectrocloud-docs-internal.ableism] Avoid using ableism terms. Use 'issue' instead of 'run'.
created_at: 2025-04-11T19:44:05Z
author_association: CONTRIBUTOR
diff_hunk: @@ -140,3 +142,106 @@ You can follow these steps to validate all cluster update approaches.
 3. Select the cluster you updated, and navigate to the **Profile** tab of the cluster.
 
 4. Confirm that the cluster is now using an updated profile.
+
+## Palette Reconciliation Behavior
+
+When cluster profile updates are applied, Palette will apply the changes to the cluster but will not delete any resources that are no longer in use. This may be appropriate in some instances, but removing those resources will be necessary in others. This can be achieved by utilizing one of the two following methods.
+
+The first would be to utilize a clean deployment with a new cluster profile. The previous version could be deleted once the new cluster and cluster profile are deployed. The challenge, however, is when particular resources are in use.
+
+The second option is to use `kubectl` to scale the resource count to 0. While deleting the resource using something like K9s is possible, Palette will recreate it immediately.
+
+### Limitations
+
+:::warning
+
+Once you upgrade your cluster to a new Kubernetes version, you will not be able to downgrade. We recommend that, before
+upgrading, you review the information provided in the
+[Kubernetes Upgrades](../../integrations/kubernetes-support.md#kubernetes-upgrades) section.
+
+:::
+
+- You cannot update a cluster while its status is still **Provisioning**.
+
+- You cannot change the Container Network Interface (CNI) of an Edge cluster. You must delete and re-create the cluster
+  instead. For more information about creating an Edge cluster, refer to
+  [Create Cluster Definition](../edge/site-deployment/cluster-deployment.md).
+
+- Avoid skipping minor versions when upgrading the Kubernetes version of a cluster. Refer to the documentation of your
+  Kubernetes distribution for upgrade guidance and follow the recommended upgrade paths.
+
+  - For PXK and PXK-E, refer to
+    [Upgrade Kubeadm Clusters](https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-upgrade/).
+  - For K3s, refer to [K3s Upgrades](https://docs.k3s.io/upgrades#version-specific-caveats)
+  - For RKE2, refer to [RKE2 Manual Upgrades](https://docs.rke2.io/upgrades/manual_upgrade)
+
+
+### Prerequisites
+
+- An active Kubernetes cluster in Palette.
+- A terminal client
+
+### Enablement
+
+The steps below show how we can use the second option while deploying the Hello Universe application pack and updating the cluster profile. In this example, we create an AWS cluster called cluster-update-deletion. We will use Palette and a terminal application.
+
+1. Log into Palette and create a cluster profile with two versions. The base layers should be ubuntu-aws, Kubernetes, cni-calico, and csi-aws-ebs. The App Services layer will use the Hello Universe from the Palette Community Registry (OCI).
+   
+   The first profile version (1.0.0) should be the Hello Universe 1.2.0 pack with the API disabled. 
+   
+   The second version (1.1.0) should be the Hello Universe 1.2.0 pack with the API enabled. 
+   
+2. Build a cluster using the profile version 1.0.0 (takes about 15-20 min)
+   
+3. Download the Admin kubeconfig file from the cluster Overview.
+   
+   Sample output:
+
+  ![How to download Admin kubeconfig file from Palette](/clusters_management_updates_kubeconfig-download.webp)   
+
+4. Go your terminal application and run the following command
+
+ ```kubectl get pods --kubeconfig=admin.cluster-update-deletion.kubeconfig --namespace=hello-universe -o=custom-columns="POD_NAME:.metadata.name,CONTAINER_NAME:.status.containerStatuses[].name,CONTAINER_ID:.status.containerStatuses[].containerID"```
+   
+5. This command will show the containers in the cluster that are in the hello universe namespace. It will include the pod name, container name, and container ID. You can use these identifiers with various `kubectl` options.
+   
+ Sample output: 
+
+![Using kubectl to see what containers are running](/clusters_management_updates_kubectl-noapi-hellouniverse.webp) 
+
+6. Return to Palette and update the cluster using the profile version 1.1.0 (takes about 1-2 min).
+   
+7. Return to the terminal and run the following command
+   
+ ```kubectl get pods --kubeconfig=admin.cluster-update-deletion.kubeconfig --namespace=hello-universe -o=custom-columns="POD_NAME:.metadata.name,CONTAINER_NAME:.status.containerStatuses[].name,CONTAINER_ID:.status.containerStatuses[].containerID"```
path: docs/docs-content/clusters/cluster-management/cluster-updates.md
user: login: github-actions[bot]
body: 🚫 **[vale]** <sub>reported by [reviewdog](https://github.com/reviewdog/reviewdog) :dog:</sub><br>[spectrocloud-docs-internal.longform] Avoid using the short form of commands. Replace the short form flag in 'universe -o' with the corresponding long form flag.
created_at: 2025-04-11T19:44:06Z
author_association: CONTRIBUTOR
diff_hunk: @@ -140,3 +142,106 @@ You can follow these steps to validate all cluster update approaches.
 3. Select the cluster you updated, and navigate to the **Profile** tab of the cluster.
 
 4. Confirm that the cluster is now using an updated profile.
+
+## Palette Reconciliation Behavior
+
+When cluster profile updates are applied, Palette will apply the changes to the cluster but will not delete any resources that are no longer in use. This may be appropriate in some instances, but removing those resources will be necessary in others. This can be achieved by utilizing one of the two following methods.
+
+The first would be to utilize a clean deployment with a new cluster profile. The previous version could be deleted once the new cluster and cluster profile are deployed. The challenge, however, is when particular resources are in use.
+
+The second option is to use `kubectl` to scale the resource count to 0. While deleting the resource using something like K9s is possible, Palette will recreate it immediately.
+
+### Limitations
+
+:::warning
+
+Once you upgrade your cluster to a new Kubernetes version, you will not be able to downgrade. We recommend that, before
+upgrading, you review the information provided in the
+[Kubernetes Upgrades](../../integrations/kubernetes-support.md#kubernetes-upgrades) section.
+
+:::
+
+- You cannot update a cluster while its status is still **Provisioning**.
+
+- You cannot change the Container Network Interface (CNI) of an Edge cluster. You must delete and re-create the cluster
+  instead. For more information about creating an Edge cluster, refer to
+  [Create Cluster Definition](../edge/site-deployment/cluster-deployment.md).
+
+- Avoid skipping minor versions when upgrading the Kubernetes version of a cluster. Refer to the documentation of your
+  Kubernetes distribution for upgrade guidance and follow the recommended upgrade paths.
+
+  - For PXK and PXK-E, refer to
+    [Upgrade Kubeadm Clusters](https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-upgrade/).
+  - For K3s, refer to [K3s Upgrades](https://docs.k3s.io/upgrades#version-specific-caveats)
+  - For RKE2, refer to [RKE2 Manual Upgrades](https://docs.rke2.io/upgrades/manual_upgrade)
+
+
+### Prerequisites
+
+- An active Kubernetes cluster in Palette.
+- A terminal client
+
+### Enablement
+
+The steps below show how we can use the second option while deploying the Hello Universe application pack and updating the cluster profile. In this example, we create an AWS cluster called cluster-update-deletion. We will use Palette and a terminal application.
+
+1. Log into Palette and create a cluster profile with two versions. The base layers should be ubuntu-aws, Kubernetes, cni-calico, and csi-aws-ebs. The App Services layer will use the Hello Universe from the Palette Community Registry (OCI).
+   
+   The first profile version (1.0.0) should be the Hello Universe 1.2.0 pack with the API disabled. 
+   
+   The second version (1.1.0) should be the Hello Universe 1.2.0 pack with the API enabled. 
+   
+2. Build a cluster using the profile version 1.0.0 (takes about 15-20 min)
+   
+3. Download the Admin kubeconfig file from the cluster Overview.
+   
+   Sample output:
+
+  ![How to download Admin kubeconfig file from Palette](/clusters_management_updates_kubeconfig-download.webp)   
+
+4. Go your terminal application and run the following command
+
+ ```kubectl get pods --kubeconfig=admin.cluster-update-deletion.kubeconfig --namespace=hello-universe -o=custom-columns="POD_NAME:.metadata.name,CONTAINER_NAME:.status.containerStatuses[].name,CONTAINER_ID:.status.containerStatuses[].containerID"```
+   
+5. This command will show the containers in the cluster that are in the hello universe namespace. It will include the pod name, container name, and container ID. You can use these identifiers with various `kubectl` options.
+   
+ Sample output: 
+
+![Using kubectl to see what containers are running](/clusters_management_updates_kubectl-noapi-hellouniverse.webp) 
+
+6. Return to Palette and update the cluster using the profile version 1.1.0 (takes about 1-2 min).
+   
+7. Return to the terminal and run the following command
+   
+ ```kubectl get pods --kubeconfig=admin.cluster-update-deletion.kubeconfig --namespace=hello-universe -o=custom-columns="POD_NAME:.metadata.name,CONTAINER_NAME:.status.containerStatuses[].name,CONTAINER_ID:.status.containerStatuses[].containerID"```
+
+Sample output:
path: docs/docs-content/clusters/cluster-management/cluster-updates.md
user: login: github-actions[bot]
body: 🚫 **[vale]** <sub>reported by [reviewdog](https://github.com/reviewdog/reviewdog) :dog:</sub><br>[spectrocloud-docs-internal.colon] Use colons only to introduce lists, unless in code blocks or inline code.
created_at: 2025-04-11T19:44:06Z
author_association: CONTRIBUTOR
diff_hunk: @@ -140,3 +142,106 @@ You can follow these steps to validate all cluster update approaches.
 3. Select the cluster you updated, and navigate to the **Profile** tab of the cluster.
 
 4. Confirm that the cluster is now using an updated profile.
+
+## Palette Reconciliation Behavior
+
+When cluster profile updates are applied, Palette will apply the changes to the cluster but will not delete any resources that are no longer in use. This may be appropriate in some instances, but removing those resources will be necessary in others. This can be achieved by utilizing one of the two following methods.
+
+The first would be to utilize a clean deployment with a new cluster profile. The previous version could be deleted once the new cluster and cluster profile are deployed. The challenge, however, is when particular resources are in use.
+
+The second option is to use `kubectl` to scale the resource count to 0. While deleting the resource using something like K9s is possible, Palette will recreate it immediately.
+
+### Limitations
+
+:::warning
+
+Once you upgrade your cluster to a new Kubernetes version, you will not be able to downgrade. We recommend that, before
+upgrading, you review the information provided in the
+[Kubernetes Upgrades](../../integrations/kubernetes-support.md#kubernetes-upgrades) section.
+
+:::
+
+- You cannot update a cluster while its status is still **Provisioning**.
+
+- You cannot change the Container Network Interface (CNI) of an Edge cluster. You must delete and re-create the cluster
+  instead. For more information about creating an Edge cluster, refer to
+  [Create Cluster Definition](../edge/site-deployment/cluster-deployment.md).
+
+- Avoid skipping minor versions when upgrading the Kubernetes version of a cluster. Refer to the documentation of your
+  Kubernetes distribution for upgrade guidance and follow the recommended upgrade paths.
+
+  - For PXK and PXK-E, refer to
+    [Upgrade Kubeadm Clusters](https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-upgrade/).
+  - For K3s, refer to [K3s Upgrades](https://docs.k3s.io/upgrades#version-specific-caveats)
+  - For RKE2, refer to [RKE2 Manual Upgrades](https://docs.rke2.io/upgrades/manual_upgrade)
+
+
+### Prerequisites
+
+- An active Kubernetes cluster in Palette.
+- A terminal client
+
+### Enablement
+
+The steps below show how we can use the second option while deploying the Hello Universe application pack and updating the cluster profile. In this example, we create an AWS cluster called cluster-update-deletion. We will use Palette and a terminal application.
+
+1. Log into Palette and create a cluster profile with two versions. The base layers should be ubuntu-aws, Kubernetes, cni-calico, and csi-aws-ebs. The App Services layer will use the Hello Universe from the Palette Community Registry (OCI).
+   
+   The first profile version (1.0.0) should be the Hello Universe 1.2.0 pack with the API disabled. 
+   
+   The second version (1.1.0) should be the Hello Universe 1.2.0 pack with the API enabled. 
+   
+2. Build a cluster using the profile version 1.0.0 (takes about 15-20 min)
+   
+3. Download the Admin kubeconfig file from the cluster Overview.
+   
+   Sample output:
+
+  ![How to download Admin kubeconfig file from Palette](/clusters_management_updates_kubeconfig-download.webp)   
+
+4. Go your terminal application and run the following command
+
+ ```kubectl get pods --kubeconfig=admin.cluster-update-deletion.kubeconfig --namespace=hello-universe -o=custom-columns="POD_NAME:.metadata.name,CONTAINER_NAME:.status.containerStatuses[].name,CONTAINER_ID:.status.containerStatuses[].containerID"```
+   
+5. This command will show the containers in the cluster that are in the hello universe namespace. It will include the pod name, container name, and container ID. You can use these identifiers with various `kubectl` options.
+   
+ Sample output: 
+
+![Using kubectl to see what containers are running](/clusters_management_updates_kubectl-noapi-hellouniverse.webp) 
+
+6. Return to Palette and update the cluster using the profile version 1.1.0 (takes about 1-2 min).
+   
+7. Return to the terminal and run the following command
+   
+ ```kubectl get pods --kubeconfig=admin.cluster-update-deletion.kubeconfig --namespace=hello-universe -o=custom-columns="POD_NAME:.metadata.name,CONTAINER_NAME:.status.containerStatuses[].name,CONTAINER_ID:.status.containerStatuses[].containerID"```
+
+Sample output:
+
+![Using kubectl to see what containers are running in the updated cluster](/clusters_management_updates_kubectl-api-hellouniverse.webp) 
path: docs/docs-content/clusters/cluster-management/cluster-updates.md
user: login: github-actions[bot]
body: 🚫 **[vale]** <sub>reported by [reviewdog](https://github.com/reviewdog/reviewdog) :dog:</sub><br>[spectrocloud-docs-internal.ableism] Avoid using ableism terms. Use 'display' instead of 'see'.
created_at: 2025-04-11T19:44:06Z
author_association: CONTRIBUTOR
diff_hunk: @@ -140,3 +142,106 @@ You can follow these steps to validate all cluster update approaches.
 3. Select the cluster you updated, and navigate to the **Profile** tab of the cluster.
 
 4. Confirm that the cluster is now using an updated profile.
+
+## Palette Reconciliation Behavior
+
+When cluster profile updates are applied, Palette will apply the changes to the cluster but will not delete any resources that are no longer in use. This may be appropriate in some instances, but removing those resources will be necessary in others. This can be achieved by utilizing one of the two following methods.
+
+The first would be to utilize a clean deployment with a new cluster profile. The previous version could be deleted once the new cluster and cluster profile are deployed. The challenge, however, is when particular resources are in use.
+
+The second option is to use `kubectl` to scale the resource count to 0. While deleting the resource using something like K9s is possible, Palette will recreate it immediately.
+
+### Limitations
+
+:::warning
+
+Once you upgrade your cluster to a new Kubernetes version, you will not be able to downgrade. We recommend that, before
+upgrading, you review the information provided in the
+[Kubernetes Upgrades](../../integrations/kubernetes-support.md#kubernetes-upgrades) section.
+
+:::
+
+- You cannot update a cluster while its status is still **Provisioning**.
+
+- You cannot change the Container Network Interface (CNI) of an Edge cluster. You must delete and re-create the cluster
+  instead. For more information about creating an Edge cluster, refer to
+  [Create Cluster Definition](../edge/site-deployment/cluster-deployment.md).
+
+- Avoid skipping minor versions when upgrading the Kubernetes version of a cluster. Refer to the documentation of your
+  Kubernetes distribution for upgrade guidance and follow the recommended upgrade paths.
+
+  - For PXK and PXK-E, refer to
+    [Upgrade Kubeadm Clusters](https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-upgrade/).
+  - For K3s, refer to [K3s Upgrades](https://docs.k3s.io/upgrades#version-specific-caveats)
+  - For RKE2, refer to [RKE2 Manual Upgrades](https://docs.rke2.io/upgrades/manual_upgrade)
+
+
+### Prerequisites
+
+- An active Kubernetes cluster in Palette.
+- A terminal client
+
+### Enablement
+
+The steps below show how we can use the second option while deploying the Hello Universe application pack and updating the cluster profile. In this example, we create an AWS cluster called cluster-update-deletion. We will use Palette and a terminal application.
+
+1. Log into Palette and create a cluster profile with two versions. The base layers should be ubuntu-aws, Kubernetes, cni-calico, and csi-aws-ebs. The App Services layer will use the Hello Universe from the Palette Community Registry (OCI).
+   
+   The first profile version (1.0.0) should be the Hello Universe 1.2.0 pack with the API disabled. 
+   
+   The second version (1.1.0) should be the Hello Universe 1.2.0 pack with the API enabled. 
+   
+2. Build a cluster using the profile version 1.0.0 (takes about 15-20 min)
+   
+3. Download the Admin kubeconfig file from the cluster Overview.
+   
+   Sample output:
+
+  ![How to download Admin kubeconfig file from Palette](/clusters_management_updates_kubeconfig-download.webp)   
+
+4. Go your terminal application and run the following command
+
+ ```kubectl get pods --kubeconfig=admin.cluster-update-deletion.kubeconfig --namespace=hello-universe -o=custom-columns="POD_NAME:.metadata.name,CONTAINER_NAME:.status.containerStatuses[].name,CONTAINER_ID:.status.containerStatuses[].containerID"```
+   
+5. This command will show the containers in the cluster that are in the hello universe namespace. It will include the pod name, container name, and container ID. You can use these identifiers with various `kubectl` options.
+   
+ Sample output: 
+
+![Using kubectl to see what containers are running](/clusters_management_updates_kubectl-noapi-hellouniverse.webp) 
+
+6. Return to Palette and update the cluster using the profile version 1.1.0 (takes about 1-2 min).
+   
+7. Return to the terminal and run the following command
+   
+ ```kubectl get pods --kubeconfig=admin.cluster-update-deletion.kubeconfig --namespace=hello-universe -o=custom-columns="POD_NAME:.metadata.name,CONTAINER_NAME:.status.containerStatuses[].name,CONTAINER_ID:.status.containerStatuses[].containerID"```
+
+Sample output:
+
+![Using kubectl to see what containers are running in the updated cluster](/clusters_management_updates_kubectl-api-hellouniverse.webp) 
path: docs/docs-content/clusters/cluster-management/cluster-updates.md
user: login: github-actions[bot]
body: 🚫 **[vale]** <sub>reported by [reviewdog](https://github.com/reviewdog/reviewdog) :dog:</sub><br>[spectrocloud-docs-internal.ableism] Avoid using ableism terms. Use 'operating' instead of 'running'.
created_at: 2025-04-11T19:44:06Z
author_association: CONTRIBUTOR
diff_hunk: @@ -140,3 +142,106 @@ You can follow these steps to validate all cluster update approaches.
 3. Select the cluster you updated, and navigate to the **Profile** tab of the cluster.
 
 4. Confirm that the cluster is now using an updated profile.
+
+## Palette Reconciliation Behavior
+
+When cluster profile updates are applied, Palette will apply the changes to the cluster but will not delete any resources that are no longer in use. This may be appropriate in some instances, but removing those resources will be necessary in others. This can be achieved by utilizing one of the two following methods.
+
+The first would be to utilize a clean deployment with a new cluster profile. The previous version could be deleted once the new cluster and cluster profile are deployed. The challenge, however, is when particular resources are in use.
+
+The second option is to use `kubectl` to scale the resource count to 0. While deleting the resource using something like K9s is possible, Palette will recreate it immediately.
+
+### Limitations
+
+:::warning
+
+Once you upgrade your cluster to a new Kubernetes version, you will not be able to downgrade. We recommend that, before
+upgrading, you review the information provided in the
+[Kubernetes Upgrades](../../integrations/kubernetes-support.md#kubernetes-upgrades) section.
+
+:::
+
+- You cannot update a cluster while its status is still **Provisioning**.
+
+- You cannot change the Container Network Interface (CNI) of an Edge cluster. You must delete and re-create the cluster
+  instead. For more information about creating an Edge cluster, refer to
+  [Create Cluster Definition](../edge/site-deployment/cluster-deployment.md).
+
+- Avoid skipping minor versions when upgrading the Kubernetes version of a cluster. Refer to the documentation of your
+  Kubernetes distribution for upgrade guidance and follow the recommended upgrade paths.
+
+  - For PXK and PXK-E, refer to
+    [Upgrade Kubeadm Clusters](https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-upgrade/).
+  - For K3s, refer to [K3s Upgrades](https://docs.k3s.io/upgrades#version-specific-caveats)
+  - For RKE2, refer to [RKE2 Manual Upgrades](https://docs.rke2.io/upgrades/manual_upgrade)
+
+
+### Prerequisites
+
+- An active Kubernetes cluster in Palette.
+- A terminal client
+
+### Enablement
+
+The steps below show how we can use the second option while deploying the Hello Universe application pack and updating the cluster profile. In this example, we create an AWS cluster called cluster-update-deletion. We will use Palette and a terminal application.
+
+1. Log into Palette and create a cluster profile with two versions. The base layers should be ubuntu-aws, Kubernetes, cni-calico, and csi-aws-ebs. The App Services layer will use the Hello Universe from the Palette Community Registry (OCI).
+   
+   The first profile version (1.0.0) should be the Hello Universe 1.2.0 pack with the API disabled. 
+   
+   The second version (1.1.0) should be the Hello Universe 1.2.0 pack with the API enabled. 
+   
+2. Build a cluster using the profile version 1.0.0 (takes about 15-20 min)
+   
+3. Download the Admin kubeconfig file from the cluster Overview.
+   
+   Sample output:
+
+  ![How to download Admin kubeconfig file from Palette](/clusters_management_updates_kubeconfig-download.webp)   
+
+4. Go your terminal application and run the following command
+
+ ```kubectl get pods --kubeconfig=admin.cluster-update-deletion.kubeconfig --namespace=hello-universe -o=custom-columns="POD_NAME:.metadata.name,CONTAINER_NAME:.status.containerStatuses[].name,CONTAINER_ID:.status.containerStatuses[].containerID"```
+   
+5. This command will show the containers in the cluster that are in the hello universe namespace. It will include the pod name, container name, and container ID. You can use these identifiers with various `kubectl` options.
+   
+ Sample output: 
+
+![Using kubectl to see what containers are running](/clusters_management_updates_kubectl-noapi-hellouniverse.webp) 
+
+6. Return to Palette and update the cluster using the profile version 1.1.0 (takes about 1-2 min).
+   
+7. Return to the terminal and run the following command
+   
+ ```kubectl get pods --kubeconfig=admin.cluster-update-deletion.kubeconfig --namespace=hello-universe -o=custom-columns="POD_NAME:.metadata.name,CONTAINER_NAME:.status.containerStatuses[].name,CONTAINER_ID:.status.containerStatuses[].containerID"```
+
+Sample output:
+
+![Using kubectl to see what containers are running in the updated cluster](/clusters_management_updates_kubectl-api-hellouniverse.webp) 
+
+With the cluster updated, we can see that the previous version of the Hello Universe app remains. This container, however, is not used with the API version and is no longer needed. 
path: docs/docs-content/clusters/cluster-management/cluster-updates.md
user: login: github-actions[bot]
body: 🚫 **[vale]** <sub>reported by [reviewdog](https://github.com/reviewdog/reviewdog) :dog:</sub><br>[spectrocloud-docs-internal.ableism] Avoid using ableism terms. Use 'display' instead of 'see'.
created_at: 2025-04-11T19:44:06Z
author_association: CONTRIBUTOR
diff_hunk: @@ -140,3 +142,106 @@ You can follow these steps to validate all cluster update approaches.
 3. Select the cluster you updated, and navigate to the **Profile** tab of the cluster.
 
 4. Confirm that the cluster is now using an updated profile.
+
+## Palette Reconciliation Behavior
+
+When cluster profile updates are applied, Palette will apply the changes to the cluster but will not delete any resources that are no longer in use. This may be appropriate in some instances, but removing those resources will be necessary in others. This can be achieved by utilizing one of the two following methods.
+
+The first would be to utilize a clean deployment with a new cluster profile. The previous version could be deleted once the new cluster and cluster profile are deployed. The challenge, however, is when particular resources are in use.
+
+The second option is to use `kubectl` to scale the resource count to 0. While deleting the resource using something like K9s is possible, Palette will recreate it immediately.
+
+### Limitations
+
+:::warning
+
+Once you upgrade your cluster to a new Kubernetes version, you will not be able to downgrade. We recommend that, before
+upgrading, you review the information provided in the
+[Kubernetes Upgrades](../../integrations/kubernetes-support.md#kubernetes-upgrades) section.
+
+:::
+
+- You cannot update a cluster while its status is still **Provisioning**.
+
+- You cannot change the Container Network Interface (CNI) of an Edge cluster. You must delete and re-create the cluster
+  instead. For more information about creating an Edge cluster, refer to
+  [Create Cluster Definition](../edge/site-deployment/cluster-deployment.md).
+
+- Avoid skipping minor versions when upgrading the Kubernetes version of a cluster. Refer to the documentation of your
+  Kubernetes distribution for upgrade guidance and follow the recommended upgrade paths.
+
+  - For PXK and PXK-E, refer to
+    [Upgrade Kubeadm Clusters](https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-upgrade/).
+  - For K3s, refer to [K3s Upgrades](https://docs.k3s.io/upgrades#version-specific-caveats)
+  - For RKE2, refer to [RKE2 Manual Upgrades](https://docs.rke2.io/upgrades/manual_upgrade)
+
+
+### Prerequisites
+
+- An active Kubernetes cluster in Palette.
+- A terminal client
+
+### Enablement
+
+The steps below show how we can use the second option while deploying the Hello Universe application pack and updating the cluster profile. In this example, we create an AWS cluster called cluster-update-deletion. We will use Palette and a terminal application.
+
+1. Log into Palette and create a cluster profile with two versions. The base layers should be ubuntu-aws, Kubernetes, cni-calico, and csi-aws-ebs. The App Services layer will use the Hello Universe from the Palette Community Registry (OCI).
+   
+   The first profile version (1.0.0) should be the Hello Universe 1.2.0 pack with the API disabled. 
+   
+   The second version (1.1.0) should be the Hello Universe 1.2.0 pack with the API enabled. 
+   
+2. Build a cluster using the profile version 1.0.0 (takes about 15-20 min)
+   
+3. Download the Admin kubeconfig file from the cluster Overview.
+   
+   Sample output:
+
+  ![How to download Admin kubeconfig file from Palette](/clusters_management_updates_kubeconfig-download.webp)   
+
+4. Go your terminal application and run the following command
+
+ ```kubectl get pods --kubeconfig=admin.cluster-update-deletion.kubeconfig --namespace=hello-universe -o=custom-columns="POD_NAME:.metadata.name,CONTAINER_NAME:.status.containerStatuses[].name,CONTAINER_ID:.status.containerStatuses[].containerID"```
+   
+5. This command will show the containers in the cluster that are in the hello universe namespace. It will include the pod name, container name, and container ID. You can use these identifiers with various `kubectl` options.
+   
+ Sample output: 
+
+![Using kubectl to see what containers are running](/clusters_management_updates_kubectl-noapi-hellouniverse.webp) 
+
+6. Return to Palette and update the cluster using the profile version 1.1.0 (takes about 1-2 min).
+   
+7. Return to the terminal and run the following command
+   
+ ```kubectl get pods --kubeconfig=admin.cluster-update-deletion.kubeconfig --namespace=hello-universe -o=custom-columns="POD_NAME:.metadata.name,CONTAINER_NAME:.status.containerStatuses[].name,CONTAINER_ID:.status.containerStatuses[].containerID"```
+
+Sample output:
+
+![Using kubectl to see what containers are running in the updated cluster](/clusters_management_updates_kubectl-api-hellouniverse.webp) 
+
+With the cluster updated, we can see that the previous version of the Hello Universe app remains. This container, however, is not used with the API version and is no longer needed. 
+
+8. Locate the pod name of the container you want to remove and run the following command.
path: docs/docs-content/clusters/cluster-management/cluster-updates.md
user: login: github-actions[bot]
body: 🚫 **[vale]** <sub>reported by [reviewdog](https://github.com/reviewdog/reviewdog) :dog:</sub><br>[spectrocloud-docs-internal.ableism] Avoid using ableism terms. Use 'issue' instead of 'run'.
created_at: 2025-04-11T19:44:06Z
author_association: CONTRIBUTOR
diff_hunk: @@ -140,3 +142,106 @@ You can follow these steps to validate all cluster update approaches.
 3. Select the cluster you updated, and navigate to the **Profile** tab of the cluster.
 
 4. Confirm that the cluster is now using an updated profile.
+
+## Palette Reconciliation Behavior
+
+When cluster profile updates are applied, Palette will apply the changes to the cluster but will not delete any resources that are no longer in use. This may be appropriate in some instances, but removing those resources will be necessary in others. This can be achieved by utilizing one of the two following methods.
+
+The first would be to utilize a clean deployment with a new cluster profile. The previous version could be deleted once the new cluster and cluster profile are deployed. The challenge, however, is when particular resources are in use.
+
+The second option is to use `kubectl` to scale the resource count to 0. While deleting the resource using something like K9s is possible, Palette will recreate it immediately.
+
+### Limitations
+
+:::warning
+
+Once you upgrade your cluster to a new Kubernetes version, you will not be able to downgrade. We recommend that, before
+upgrading, you review the information provided in the
+[Kubernetes Upgrades](../../integrations/kubernetes-support.md#kubernetes-upgrades) section.
+
+:::
+
+- You cannot update a cluster while its status is still **Provisioning**.
+
+- You cannot change the Container Network Interface (CNI) of an Edge cluster. You must delete and re-create the cluster
+  instead. For more information about creating an Edge cluster, refer to
+  [Create Cluster Definition](../edge/site-deployment/cluster-deployment.md).
+
+- Avoid skipping minor versions when upgrading the Kubernetes version of a cluster. Refer to the documentation of your
+  Kubernetes distribution for upgrade guidance and follow the recommended upgrade paths.
+
+  - For PXK and PXK-E, refer to
+    [Upgrade Kubeadm Clusters](https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-upgrade/).
+  - For K3s, refer to [K3s Upgrades](https://docs.k3s.io/upgrades#version-specific-caveats)
+  - For RKE2, refer to [RKE2 Manual Upgrades](https://docs.rke2.io/upgrades/manual_upgrade)
+
+
+### Prerequisites
+
+- An active Kubernetes cluster in Palette.
+- A terminal client
+
+### Enablement
+
+The steps below show how we can use the second option while deploying the Hello Universe application pack and updating the cluster profile. In this example, we create an AWS cluster called cluster-update-deletion. We will use Palette and a terminal application.
+
+1. Log into Palette and create a cluster profile with two versions. The base layers should be ubuntu-aws, Kubernetes, cni-calico, and csi-aws-ebs. The App Services layer will use the Hello Universe from the Palette Community Registry (OCI).
+   
+   The first profile version (1.0.0) should be the Hello Universe 1.2.0 pack with the API disabled. 
+   
+   The second version (1.1.0) should be the Hello Universe 1.2.0 pack with the API enabled. 
+   
+2. Build a cluster using the profile version 1.0.0 (takes about 15-20 min)
+   
+3. Download the Admin kubeconfig file from the cluster Overview.
+   
+   Sample output:
+
+  ![How to download Admin kubeconfig file from Palette](/clusters_management_updates_kubeconfig-download.webp)   
+
+4. Go your terminal application and run the following command
+
+ ```kubectl get pods --kubeconfig=admin.cluster-update-deletion.kubeconfig --namespace=hello-universe -o=custom-columns="POD_NAME:.metadata.name,CONTAINER_NAME:.status.containerStatuses[].name,CONTAINER_ID:.status.containerStatuses[].containerID"```
+   
+5. This command will show the containers in the cluster that are in the hello universe namespace. It will include the pod name, container name, and container ID. You can use these identifiers with various `kubectl` options.
+   
+ Sample output: 
+
+![Using kubectl to see what containers are running](/clusters_management_updates_kubectl-noapi-hellouniverse.webp) 
+
+6. Return to Palette and update the cluster using the profile version 1.1.0 (takes about 1-2 min).
+   
+7. Return to the terminal and run the following command
+   
+ ```kubectl get pods --kubeconfig=admin.cluster-update-deletion.kubeconfig --namespace=hello-universe -o=custom-columns="POD_NAME:.metadata.name,CONTAINER_NAME:.status.containerStatuses[].name,CONTAINER_ID:.status.containerStatuses[].containerID"```
+
+Sample output:
+
+![Using kubectl to see what containers are running in the updated cluster](/clusters_management_updates_kubectl-api-hellouniverse.webp) 
+
+With the cluster updated, we can see that the previous version of the Hello Universe app remains. This container, however, is not used with the API version and is no longer needed. 
+
+8. Locate the pod name of the container you want to remove and run the following command.
+   
+   
+ ``` kubectl scale deployment hello-universe-deployment --replicas=0 hello-universe-deployment-6854947c67-jtlp7 --kubeconfig=cluster-update-deletion.kubeconfig --namespace hello-universe ```
+
+   Sample output:
path: docs/docs-content/clusters/cluster-management/cluster-updates.md
user: login: github-actions[bot]
body: 🚫 **[vale]** <sub>reported by [reviewdog](https://github.com/reviewdog/reviewdog) :dog:</sub><br>[spectrocloud-docs-internal.colon] Use colons only to introduce lists, unless in code blocks or inline code.
created_at: 2025-04-11T19:44:06Z
author_association: CONTRIBUTOR
diff_hunk: @@ -140,3 +142,109 @@ You can follow these steps to validate all cluster update approaches.
 3. Select the cluster you updated, and navigate to the **Profile** tab of the cluster.
 
 4. Confirm that the cluster is now using an updated profile.
+
+## Palette Reconciliation Behavior
+
+When cluster profile updates are applied, Palette will apply the changes to the cluster but will not delete any
+resources that are no longer in use. This may be appropriate in some instances, but removing those resources will be
+necessary in others. This can be achieved by utilizing one of the two following methods.
+
+The first would be to utilize a clean deployment with a new cluster profile. The previous version could be deleted once
+the new cluster and cluster profile are deployed. The challenge, however, is when particular resources are in use.
+
+The second option is to use `kubectl` to scale the resource count to 0. While deleting the resource using something like
+K9s is possible, Palette will recreate it immediately.
+
+### Limitations
+
+:::warning
+
+Once you upgrade your cluster to a new Kubernetes version, you will not be able to downgrade. We recommend that, before
+upgrading, you review the information provided in the
+[Kubernetes Upgrades](../../integrations/kubernetes-support.md#kubernetes-upgrades) section.
+
+:::
+
+- You cannot update a cluster while its status is still **Provisioning**.
+
+- You cannot change the Container Network Interface (CNI) of an Edge cluster. You must delete and re-create the cluster
+  instead. For more information about creating an Edge cluster, refer to
+  [Create Cluster Definition](../edge/site-deployment/cluster-deployment.md).
+
+- Avoid skipping minor versions when upgrading the Kubernetes version of a cluster. Refer to the documentation of your
+  Kubernetes distribution for upgrade guidance and follow the recommended upgrade paths.
+
+  - For PXK and PXK-E, refer to
+    [Upgrade Kubeadm Clusters](https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-upgrade/).
+  - For K3s, refer to [K3s Upgrades](https://docs.k3s.io/upgrades#version-specific-caveats)
+  - For RKE2, refer to [RKE2 Manual Upgrades](https://docs.rke2.io/upgrades/manual_upgrade)
+
+### Prerequisites
+
+- An active Kubernetes cluster in Palette.
+- A terminal client
+
+### Enablement
+
+The steps below show how we can use the second option while deploying the Hello Universe application pack and updating
+the cluster profile. In this example, we create an AWS cluster called cluster-update-deletion. We will use Palette and a
+terminal application.
+
+1. Log into Palette and create a cluster profile with two versions. The base layers should be ubuntu-aws, Kubernetes,
path: docs/docs-content/clusters/cluster-management/cluster-updates.md
user: login: github-actions[bot]
body: 🚫 **[vale]** <sub>reported by [reviewdog](https://github.com/reviewdog/reviewdog) :dog:</sub><br>[Vale.Terms] Use 'Ubuntu' instead of 'ubuntu'.
created_at: 2025-04-11T19:47:22Z
author_association: CONTRIBUTOR
diff_hunk: @@ -140,3 +142,109 @@ You can follow these steps to validate all cluster update approaches.
 3. Select the cluster you updated, and navigate to the **Profile** tab of the cluster.
 
 4. Confirm that the cluster is now using an updated profile.
+
+## Palette Reconciliation Behavior
+
+When cluster profile updates are applied, Palette will apply the changes to the cluster but will not delete any
+resources that are no longer in use. This may be appropriate in some instances, but removing those resources will be
+necessary in others. This can be achieved by utilizing one of the two following methods.
+
+The first would be to utilize a clean deployment with a new cluster profile. The previous version could be deleted once
+the new cluster and cluster profile are deployed. The challenge, however, is when particular resources are in use.
+
+The second option is to use `kubectl` to scale the resource count to 0. While deleting the resource using something like
+K9s is possible, Palette will recreate it immediately.
+
+### Limitations
+
+:::warning
+
+Once you upgrade your cluster to a new Kubernetes version, you will not be able to downgrade. We recommend that, before
+upgrading, you review the information provided in the
+[Kubernetes Upgrades](../../integrations/kubernetes-support.md#kubernetes-upgrades) section.
+
+:::
+
+- You cannot update a cluster while its status is still **Provisioning**.
+
+- You cannot change the Container Network Interface (CNI) of an Edge cluster. You must delete and re-create the cluster
+  instead. For more information about creating an Edge cluster, refer to
+  [Create Cluster Definition](../edge/site-deployment/cluster-deployment.md).
+
+- Avoid skipping minor versions when upgrading the Kubernetes version of a cluster. Refer to the documentation of your
+  Kubernetes distribution for upgrade guidance and follow the recommended upgrade paths.
+
+  - For PXK and PXK-E, refer to
+    [Upgrade Kubeadm Clusters](https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-upgrade/).
+  - For K3s, refer to [K3s Upgrades](https://docs.k3s.io/upgrades#version-specific-caveats)
+  - For RKE2, refer to [RKE2 Manual Upgrades](https://docs.rke2.io/upgrades/manual_upgrade)
+
+### Prerequisites
+
+- An active Kubernetes cluster in Palette.
+- A terminal client
+
+### Enablement
+
+The steps below show how we can use the second option while deploying the Hello Universe application pack and updating
+the cluster profile. In this example, we create an AWS cluster called cluster-update-deletion. We will use Palette and a
+terminal application.
+
+1. Log into Palette and create a cluster profile with two versions. The base layers should be ubuntu-aws, Kubernetes,
+   cni-calico, and csi-aws-ebs. The App Services layer will use the Hello Universe from the Palette Community Registry
+   (OCI).
+
+   The first profile version (1.0.0) should be the Hello Universe 1.2.0 pack with the API disabled.
+
+   The second version (1.1.0) should be the Hello Universe 1.2.0 pack with the API enabled.
+
+2. Build a cluster using the profile version 1.0.0 (takes about 15-20 min)
+3. Download the Admin kubeconfig file from the cluster Overview.
+
+   Sample output:
path: docs/docs-content/clusters/cluster-management/cluster-updates.md
user: login: github-actions[bot]
body: 🚫 **[vale]** <sub>reported by [reviewdog](https://github.com/reviewdog/reviewdog) :dog:</sub><br>[spectrocloud-docs-internal.colon] Use colons only to introduce lists, unless in code blocks or inline code.
created_at: 2025-04-11T19:47:22Z
author_association: CONTRIBUTOR
diff_hunk: @@ -140,3 +142,109 @@ You can follow these steps to validate all cluster update approaches.
 3. Select the cluster you updated, and navigate to the **Profile** tab of the cluster.
 
 4. Confirm that the cluster is now using an updated profile.
+
+## Palette Reconciliation Behavior
+
+When cluster profile updates are applied, Palette will apply the changes to the cluster but will not delete any
+resources that are no longer in use. This may be appropriate in some instances, but removing those resources will be
+necessary in others. This can be achieved by utilizing one of the two following methods.
+
+The first would be to utilize a clean deployment with a new cluster profile. The previous version could be deleted once
+the new cluster and cluster profile are deployed. The challenge, however, is when particular resources are in use.
+
+The second option is to use `kubectl` to scale the resource count to 0. While deleting the resource using something like
+K9s is possible, Palette will recreate it immediately.
+
+### Limitations
+
+:::warning
+
+Once you upgrade your cluster to a new Kubernetes version, you will not be able to downgrade. We recommend that, before
+upgrading, you review the information provided in the
+[Kubernetes Upgrades](../../integrations/kubernetes-support.md#kubernetes-upgrades) section.
+
+:::
+
+- You cannot update a cluster while its status is still **Provisioning**.
+
+- You cannot change the Container Network Interface (CNI) of an Edge cluster. You must delete and re-create the cluster
+  instead. For more information about creating an Edge cluster, refer to
+  [Create Cluster Definition](../edge/site-deployment/cluster-deployment.md).
+
+- Avoid skipping minor versions when upgrading the Kubernetes version of a cluster. Refer to the documentation of your
+  Kubernetes distribution for upgrade guidance and follow the recommended upgrade paths.
+
+  - For PXK and PXK-E, refer to
+    [Upgrade Kubeadm Clusters](https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-upgrade/).
+  - For K3s, refer to [K3s Upgrades](https://docs.k3s.io/upgrades#version-specific-caveats)
+  - For RKE2, refer to [RKE2 Manual Upgrades](https://docs.rke2.io/upgrades/manual_upgrade)
+
+### Prerequisites
+
+- An active Kubernetes cluster in Palette.
+- A terminal client
+
+### Enablement
+
+The steps below show how we can use the second option while deploying the Hello Universe application pack and updating
+the cluster profile. In this example, we create an AWS cluster called cluster-update-deletion. We will use Palette and a
+terminal application.
+
+1. Log into Palette and create a cluster profile with two versions. The base layers should be ubuntu-aws, Kubernetes,
+   cni-calico, and csi-aws-ebs. The App Services layer will use the Hello Universe from the Palette Community Registry
+   (OCI).
+
+   The first profile version (1.0.0) should be the Hello Universe 1.2.0 pack with the API disabled.
+
+   The second version (1.1.0) should be the Hello Universe 1.2.0 pack with the API enabled.
+
+2. Build a cluster using the profile version 1.0.0 (takes about 15-20 min)
+3. Download the Admin kubeconfig file from the cluster Overview.
+
+   Sample output:
+
+![How to download Admin kubeconfig file from Palette](/clusters_management_updates_kubeconfig-download.webp)
+
+4. Go your terminal application and run the following command
+
+`kubectl get pods --kubeconfig=admin.cluster-update-deletion.kubeconfig --namespace=hello-universe -o=custom-columns="POD_NAME:.metadata.name,CONTAINER_NAME:.status.containerStatuses[].name,CONTAINER_ID:.status.containerStatuses[].containerID"`
path: docs/docs-content/clusters/cluster-management/cluster-updates.md
user: login: github-actions[bot]
body: 🚫 **[vale]** <sub>reported by [reviewdog](https://github.com/reviewdog/reviewdog) :dog:</sub><br>[spectrocloud-docs-internal.longform] Avoid using the short form of commands. Replace the short form flag in 'universe -o' with the corresponding long form flag.
created_at: 2025-04-11T19:47:22Z
author_association: CONTRIBUTOR
diff_hunk: @@ -140,3 +142,109 @@ You can follow these steps to validate all cluster update approaches.
 3. Select the cluster you updated, and navigate to the **Profile** tab of the cluster.
 
 4. Confirm that the cluster is now using an updated profile.
+
+## Palette Reconciliation Behavior
+
+When cluster profile updates are applied, Palette will apply the changes to the cluster but will not delete any
+resources that are no longer in use. This may be appropriate in some instances, but removing those resources will be
+necessary in others. This can be achieved by utilizing one of the two following methods.
+
+The first would be to utilize a clean deployment with a new cluster profile. The previous version could be deleted once
+the new cluster and cluster profile are deployed. The challenge, however, is when particular resources are in use.
+
+The second option is to use `kubectl` to scale the resource count to 0. While deleting the resource using something like
+K9s is possible, Palette will recreate it immediately.
+
+### Limitations
+
+:::warning
+
+Once you upgrade your cluster to a new Kubernetes version, you will not be able to downgrade. We recommend that, before
+upgrading, you review the information provided in the
+[Kubernetes Upgrades](../../integrations/kubernetes-support.md#kubernetes-upgrades) section.
+
+:::
+
+- You cannot update a cluster while its status is still **Provisioning**.
+
+- You cannot change the Container Network Interface (CNI) of an Edge cluster. You must delete and re-create the cluster
+  instead. For more information about creating an Edge cluster, refer to
+  [Create Cluster Definition](../edge/site-deployment/cluster-deployment.md).
+
+- Avoid skipping minor versions when upgrading the Kubernetes version of a cluster. Refer to the documentation of your
+  Kubernetes distribution for upgrade guidance and follow the recommended upgrade paths.
+
+  - For PXK and PXK-E, refer to
+    [Upgrade Kubeadm Clusters](https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-upgrade/).
+  - For K3s, refer to [K3s Upgrades](https://docs.k3s.io/upgrades#version-specific-caveats)
+  - For RKE2, refer to [RKE2 Manual Upgrades](https://docs.rke2.io/upgrades/manual_upgrade)
+
+### Prerequisites
+
+- An active Kubernetes cluster in Palette.
+- A terminal client
+
+### Enablement
+
+The steps below show how we can use the second option while deploying the Hello Universe application pack and updating
+the cluster profile. In this example, we create an AWS cluster called cluster-update-deletion. We will use Palette and a
+terminal application.
+
+1. Log into Palette and create a cluster profile with two versions. The base layers should be ubuntu-aws, Kubernetes,
+   cni-calico, and csi-aws-ebs. The App Services layer will use the Hello Universe from the Palette Community Registry
+   (OCI).
+
+   The first profile version (1.0.0) should be the Hello Universe 1.2.0 pack with the API disabled.
+
+   The second version (1.1.0) should be the Hello Universe 1.2.0 pack with the API enabled.
+
+2. Build a cluster using the profile version 1.0.0 (takes about 15-20 min)
+3. Download the Admin kubeconfig file from the cluster Overview.
+
+   Sample output:
+
+![How to download Admin kubeconfig file from Palette](/clusters_management_updates_kubeconfig-download.webp)
+
+4. Go your terminal application and run the following command
+
+`kubectl get pods --kubeconfig=admin.cluster-update-deletion.kubeconfig --namespace=hello-universe -o=custom-columns="POD_NAME:.metadata.name,CONTAINER_NAME:.status.containerStatuses[].name,CONTAINER_ID:.status.containerStatuses[].containerID"`
+
+5. This command will show the containers in the cluster that are in the hello universe namespace. It will include the
+   pod name, container name, and container ID. You can use these identifiers with various `kubectl` options.
+
+Sample output:
path: docs/docs-content/clusters/cluster-management/cluster-updates.md
user: login: github-actions[bot]
body: 🚫 **[vale]** <sub>reported by [reviewdog](https://github.com/reviewdog/reviewdog) :dog:</sub><br>[spectrocloud-docs-internal.colon] Use colons only to introduce lists, unless in code blocks or inline code.
created_at: 2025-04-11T19:47:22Z
author_association: CONTRIBUTOR
diff_hunk: @@ -140,3 +142,109 @@ You can follow these steps to validate all cluster update approaches.
 3. Select the cluster you updated, and navigate to the **Profile** tab of the cluster.
 
 4. Confirm that the cluster is now using an updated profile.
+
+## Palette Reconciliation Behavior
+
+When cluster profile updates are applied, Palette will apply the changes to the cluster but will not delete any
+resources that are no longer in use. This may be appropriate in some instances, but removing those resources will be
+necessary in others. This can be achieved by utilizing one of the two following methods.
+
+The first would be to utilize a clean deployment with a new cluster profile. The previous version could be deleted once
+the new cluster and cluster profile are deployed. The challenge, however, is when particular resources are in use.
+
+The second option is to use `kubectl` to scale the resource count to 0. While deleting the resource using something like
+K9s is possible, Palette will recreate it immediately.
+
+### Limitations
+
+:::warning
+
+Once you upgrade your cluster to a new Kubernetes version, you will not be able to downgrade. We recommend that, before
+upgrading, you review the information provided in the
+[Kubernetes Upgrades](../../integrations/kubernetes-support.md#kubernetes-upgrades) section.
+
+:::
+
+- You cannot update a cluster while its status is still **Provisioning**.
+
+- You cannot change the Container Network Interface (CNI) of an Edge cluster. You must delete and re-create the cluster
+  instead. For more information about creating an Edge cluster, refer to
+  [Create Cluster Definition](../edge/site-deployment/cluster-deployment.md).
+
+- Avoid skipping minor versions when upgrading the Kubernetes version of a cluster. Refer to the documentation of your
+  Kubernetes distribution for upgrade guidance and follow the recommended upgrade paths.
+
+  - For PXK and PXK-E, refer to
+    [Upgrade Kubeadm Clusters](https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-upgrade/).
+  - For K3s, refer to [K3s Upgrades](https://docs.k3s.io/upgrades#version-specific-caveats)
+  - For RKE2, refer to [RKE2 Manual Upgrades](https://docs.rke2.io/upgrades/manual_upgrade)
+
+### Prerequisites
+
+- An active Kubernetes cluster in Palette.
+- A terminal client
+
+### Enablement
+
+The steps below show how we can use the second option while deploying the Hello Universe application pack and updating
+the cluster profile. In this example, we create an AWS cluster called cluster-update-deletion. We will use Palette and a
+terminal application.
+
+1. Log into Palette and create a cluster profile with two versions. The base layers should be ubuntu-aws, Kubernetes,
+   cni-calico, and csi-aws-ebs. The App Services layer will use the Hello Universe from the Palette Community Registry
+   (OCI).
+
+   The first profile version (1.0.0) should be the Hello Universe 1.2.0 pack with the API disabled.
+
+   The second version (1.1.0) should be the Hello Universe 1.2.0 pack with the API enabled.
+
+2. Build a cluster using the profile version 1.0.0 (takes about 15-20 min)
+3. Download the Admin kubeconfig file from the cluster Overview.
+
+   Sample output:
+
+![How to download Admin kubeconfig file from Palette](/clusters_management_updates_kubeconfig-download.webp)
+
+4. Go your terminal application and run the following command
+
+`kubectl get pods --kubeconfig=admin.cluster-update-deletion.kubeconfig --namespace=hello-universe -o=custom-columns="POD_NAME:.metadata.name,CONTAINER_NAME:.status.containerStatuses[].name,CONTAINER_ID:.status.containerStatuses[].containerID"`
+
+5. This command will show the containers in the cluster that are in the hello universe namespace. It will include the
+   pod name, container name, and container ID. You can use these identifiers with various `kubectl` options.
+
+Sample output:
+
+![Using kubectl to see what containers are running](/clusters_management_updates_kubectl-noapi-hellouniverse.webp)
path: docs/docs-content/clusters/cluster-management/cluster-updates.md
user: login: github-actions[bot]
body: 🚫 **[vale]** <sub>reported by [reviewdog](https://github.com/reviewdog/reviewdog) :dog:</sub><br>[spectrocloud-docs-internal.ableism] Avoid using ableism terms. Use 'display' instead of 'see'.
created_at: 2025-04-11T19:47:22Z
author_association: CONTRIBUTOR
diff_hunk: @@ -140,3 +142,109 @@ You can follow these steps to validate all cluster update approaches.
 3. Select the cluster you updated, and navigate to the **Profile** tab of the cluster.
 
 4. Confirm that the cluster is now using an updated profile.
+
+## Palette Reconciliation Behavior
+
+When cluster profile updates are applied, Palette will apply the changes to the cluster but will not delete any
+resources that are no longer in use. This may be appropriate in some instances, but removing those resources will be
+necessary in others. This can be achieved by utilizing one of the two following methods.
+
+The first would be to utilize a clean deployment with a new cluster profile. The previous version could be deleted once
+the new cluster and cluster profile are deployed. The challenge, however, is when particular resources are in use.
+
+The second option is to use `kubectl` to scale the resource count to 0. While deleting the resource using something like
+K9s is possible, Palette will recreate it immediately.
+
+### Limitations
+
+:::warning
+
+Once you upgrade your cluster to a new Kubernetes version, you will not be able to downgrade. We recommend that, before
+upgrading, you review the information provided in the
+[Kubernetes Upgrades](../../integrations/kubernetes-support.md#kubernetes-upgrades) section.
+
+:::
+
+- You cannot update a cluster while its status is still **Provisioning**.
+
+- You cannot change the Container Network Interface (CNI) of an Edge cluster. You must delete and re-create the cluster
+  instead. For more information about creating an Edge cluster, refer to
+  [Create Cluster Definition](../edge/site-deployment/cluster-deployment.md).
+
+- Avoid skipping minor versions when upgrading the Kubernetes version of a cluster. Refer to the documentation of your
+  Kubernetes distribution for upgrade guidance and follow the recommended upgrade paths.
+
+  - For PXK and PXK-E, refer to
+    [Upgrade Kubeadm Clusters](https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-upgrade/).
+  - For K3s, refer to [K3s Upgrades](https://docs.k3s.io/upgrades#version-specific-caveats)
+  - For RKE2, refer to [RKE2 Manual Upgrades](https://docs.rke2.io/upgrades/manual_upgrade)
+
+### Prerequisites
+
+- An active Kubernetes cluster in Palette.
+- A terminal client
+
+### Enablement
+
+The steps below show how we can use the second option while deploying the Hello Universe application pack and updating
+the cluster profile. In this example, we create an AWS cluster called cluster-update-deletion. We will use Palette and a
+terminal application.
+
+1. Log into Palette and create a cluster profile with two versions. The base layers should be ubuntu-aws, Kubernetes,
+   cni-calico, and csi-aws-ebs. The App Services layer will use the Hello Universe from the Palette Community Registry
+   (OCI).
+
+   The first profile version (1.0.0) should be the Hello Universe 1.2.0 pack with the API disabled.
+
+   The second version (1.1.0) should be the Hello Universe 1.2.0 pack with the API enabled.
+
+2. Build a cluster using the profile version 1.0.0 (takes about 15-20 min)
+3. Download the Admin kubeconfig file from the cluster Overview.
+
+   Sample output:
+
+![How to download Admin kubeconfig file from Palette](/clusters_management_updates_kubeconfig-download.webp)
+
+4. Go your terminal application and run the following command
+
+`kubectl get pods --kubeconfig=admin.cluster-update-deletion.kubeconfig --namespace=hello-universe -o=custom-columns="POD_NAME:.metadata.name,CONTAINER_NAME:.status.containerStatuses[].name,CONTAINER_ID:.status.containerStatuses[].containerID"`
+
+5. This command will show the containers in the cluster that are in the hello universe namespace. It will include the
+   pod name, container name, and container ID. You can use these identifiers with various `kubectl` options.
+
+Sample output:
+
+![Using kubectl to see what containers are running](/clusters_management_updates_kubectl-noapi-hellouniverse.webp)
path: docs/docs-content/clusters/cluster-management/cluster-updates.md
user: login: github-actions[bot]
body: 🚫 **[vale]** <sub>reported by [reviewdog](https://github.com/reviewdog/reviewdog) :dog:</sub><br>[spectrocloud-docs-internal.ableism] Avoid using ableism terms. Use 'operating' instead of 'running'.
created_at: 2025-04-11T19:47:22Z
author_association: CONTRIBUTOR
diff_hunk: @@ -140,3 +142,109 @@ You can follow these steps to validate all cluster update approaches.
 3. Select the cluster you updated, and navigate to the **Profile** tab of the cluster.
 
 4. Confirm that the cluster is now using an updated profile.
+
+## Palette Reconciliation Behavior
+
+When cluster profile updates are applied, Palette will apply the changes to the cluster but will not delete any
+resources that are no longer in use. This may be appropriate in some instances, but removing those resources will be
+necessary in others. This can be achieved by utilizing one of the two following methods.
+
+The first would be to utilize a clean deployment with a new cluster profile. The previous version could be deleted once
+the new cluster and cluster profile are deployed. The challenge, however, is when particular resources are in use.
+
+The second option is to use `kubectl` to scale the resource count to 0. While deleting the resource using something like
+K9s is possible, Palette will recreate it immediately.
+
+### Limitations
+
+:::warning
+
+Once you upgrade your cluster to a new Kubernetes version, you will not be able to downgrade. We recommend that, before
+upgrading, you review the information provided in the
+[Kubernetes Upgrades](../../integrations/kubernetes-support.md#kubernetes-upgrades) section.
+
+:::
+
+- You cannot update a cluster while its status is still **Provisioning**.
+
+- You cannot change the Container Network Interface (CNI) of an Edge cluster. You must delete and re-create the cluster
+  instead. For more information about creating an Edge cluster, refer to
+  [Create Cluster Definition](../edge/site-deployment/cluster-deployment.md).
+
+- Avoid skipping minor versions when upgrading the Kubernetes version of a cluster. Refer to the documentation of your
+  Kubernetes distribution for upgrade guidance and follow the recommended upgrade paths.
+
+  - For PXK and PXK-E, refer to
+    [Upgrade Kubeadm Clusters](https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-upgrade/).
+  - For K3s, refer to [K3s Upgrades](https://docs.k3s.io/upgrades#version-specific-caveats)
+  - For RKE2, refer to [RKE2 Manual Upgrades](https://docs.rke2.io/upgrades/manual_upgrade)
+
+### Prerequisites
+
+- An active Kubernetes cluster in Palette.
+- A terminal client
+
+### Enablement
+
+The steps below show how we can use the second option while deploying the Hello Universe application pack and updating
+the cluster profile. In this example, we create an AWS cluster called cluster-update-deletion. We will use Palette and a
+terminal application.
+
+1. Log into Palette and create a cluster profile with two versions. The base layers should be ubuntu-aws, Kubernetes,
+   cni-calico, and csi-aws-ebs. The App Services layer will use the Hello Universe from the Palette Community Registry
+   (OCI).
+
+   The first profile version (1.0.0) should be the Hello Universe 1.2.0 pack with the API disabled.
+
+   The second version (1.1.0) should be the Hello Universe 1.2.0 pack with the API enabled.
+
+2. Build a cluster using the profile version 1.0.0 (takes about 15-20 min)
+3. Download the Admin kubeconfig file from the cluster Overview.
+
+   Sample output:
+
+![How to download Admin kubeconfig file from Palette](/clusters_management_updates_kubeconfig-download.webp)
+
+4. Go your terminal application and run the following command
+
+`kubectl get pods --kubeconfig=admin.cluster-update-deletion.kubeconfig --namespace=hello-universe -o=custom-columns="POD_NAME:.metadata.name,CONTAINER_NAME:.status.containerStatuses[].name,CONTAINER_ID:.status.containerStatuses[].containerID"`
+
+5. This command will show the containers in the cluster that are in the hello universe namespace. It will include the
+   pod name, container name, and container ID. You can use these identifiers with various `kubectl` options.
+
+Sample output:
+
+![Using kubectl to see what containers are running](/clusters_management_updates_kubectl-noapi-hellouniverse.webp)
+
+6. Return to Palette and update the cluster using the profile version 1.1.0 (takes about 1-2 min).
+7. Return to the terminal and run the following command
+
+`kubectl get pods --kubeconfig=admin.cluster-update-deletion.kubeconfig --namespace=hello-universe -o=custom-columns="POD_NAME:.metadata.name,CONTAINER_NAME:.status.containerStatuses[].name,CONTAINER_ID:.status.containerStatuses[].containerID"`
path: docs/docs-content/clusters/cluster-management/cluster-updates.md
user: login: github-actions[bot]
body: 🚫 **[vale]** <sub>reported by [reviewdog](https://github.com/reviewdog/reviewdog) :dog:</sub><br>[spectrocloud-docs-internal.longform] Avoid using the short form of commands. Replace the short form flag in 'universe -o' with the corresponding long form flag.
created_at: 2025-04-11T19:47:22Z
author_association: CONTRIBUTOR
diff_hunk: @@ -140,3 +142,109 @@ You can follow these steps to validate all cluster update approaches.
 3. Select the cluster you updated, and navigate to the **Profile** tab of the cluster.
 
 4. Confirm that the cluster is now using an updated profile.
+
+## Palette Reconciliation Behavior
+
+When cluster profile updates are applied, Palette will apply the changes to the cluster but will not delete any
+resources that are no longer in use. This may be appropriate in some instances, but removing those resources will be
+necessary in others. This can be achieved by utilizing one of the two following methods.
+
+The first would be to utilize a clean deployment with a new cluster profile. The previous version could be deleted once
+the new cluster and cluster profile are deployed. The challenge, however, is when particular resources are in use.
+
+The second option is to use `kubectl` to scale the resource count to 0. While deleting the resource using something like
+K9s is possible, Palette will recreate it immediately.
+
+### Limitations
+
+:::warning
+
+Once you upgrade your cluster to a new Kubernetes version, you will not be able to downgrade. We recommend that, before
+upgrading, you review the information provided in the
+[Kubernetes Upgrades](../../integrations/kubernetes-support.md#kubernetes-upgrades) section.
+
+:::
+
+- You cannot update a cluster while its status is still **Provisioning**.
+
+- You cannot change the Container Network Interface (CNI) of an Edge cluster. You must delete and re-create the cluster
+  instead. For more information about creating an Edge cluster, refer to
+  [Create Cluster Definition](../edge/site-deployment/cluster-deployment.md).
+
+- Avoid skipping minor versions when upgrading the Kubernetes version of a cluster. Refer to the documentation of your
+  Kubernetes distribution for upgrade guidance and follow the recommended upgrade paths.
+
+  - For PXK and PXK-E, refer to
+    [Upgrade Kubeadm Clusters](https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-upgrade/).
+  - For K3s, refer to [K3s Upgrades](https://docs.k3s.io/upgrades#version-specific-caveats)
+  - For RKE2, refer to [RKE2 Manual Upgrades](https://docs.rke2.io/upgrades/manual_upgrade)
+
+### Prerequisites
+
+- An active Kubernetes cluster in Palette.
+- A terminal client
+
+### Enablement
+
+The steps below show how we can use the second option while deploying the Hello Universe application pack and updating
+the cluster profile. In this example, we create an AWS cluster called cluster-update-deletion. We will use Palette and a
+terminal application.
+
+1. Log into Palette and create a cluster profile with two versions. The base layers should be ubuntu-aws, Kubernetes,
+   cni-calico, and csi-aws-ebs. The App Services layer will use the Hello Universe from the Palette Community Registry
+   (OCI).
+
+   The first profile version (1.0.0) should be the Hello Universe 1.2.0 pack with the API disabled.
+
+   The second version (1.1.0) should be the Hello Universe 1.2.0 pack with the API enabled.
+
+2. Build a cluster using the profile version 1.0.0 (takes about 15-20 min)
+3. Download the Admin kubeconfig file from the cluster Overview.
+
+   Sample output:
+
+![How to download Admin kubeconfig file from Palette](/clusters_management_updates_kubeconfig-download.webp)
+
+4. Go your terminal application and run the following command
+
+`kubectl get pods --kubeconfig=admin.cluster-update-deletion.kubeconfig --namespace=hello-universe -o=custom-columns="POD_NAME:.metadata.name,CONTAINER_NAME:.status.containerStatuses[].name,CONTAINER_ID:.status.containerStatuses[].containerID"`
+
+5. This command will show the containers in the cluster that are in the hello universe namespace. It will include the
+   pod name, container name, and container ID. You can use these identifiers with various `kubectl` options.
+
+Sample output:
+
+![Using kubectl to see what containers are running](/clusters_management_updates_kubectl-noapi-hellouniverse.webp)
+
+6. Return to Palette and update the cluster using the profile version 1.1.0 (takes about 1-2 min).
+7. Return to the terminal and run the following command
+
+`kubectl get pods --kubeconfig=admin.cluster-update-deletion.kubeconfig --namespace=hello-universe -o=custom-columns="POD_NAME:.metadata.name,CONTAINER_NAME:.status.containerStatuses[].name,CONTAINER_ID:.status.containerStatuses[].containerID"`
+
+Sample output:
+
+![Using kubectl to see what containers are running in the updated cluster](/clusters_management_updates_kubectl-api-hellouniverse.webp)
path: docs/docs-content/clusters/cluster-management/cluster-updates.md
user: login: github-actions[bot]
body: 🚫 **[vale]** <sub>reported by [reviewdog](https://github.com/reviewdog/reviewdog) :dog:</sub><br>[spectrocloud-docs-internal.ableism] Avoid using ableism terms. Use 'display' instead of 'see'.
created_at: 2025-04-11T19:47:22Z
author_association: CONTRIBUTOR
diff_hunk: @@ -140,3 +142,109 @@ You can follow these steps to validate all cluster update approaches.
 3. Select the cluster you updated, and navigate to the **Profile** tab of the cluster.
 
 4. Confirm that the cluster is now using an updated profile.
+
+## Palette Reconciliation Behavior
+
+When cluster profile updates are applied, Palette will apply the changes to the cluster but will not delete any
+resources that are no longer in use. This may be appropriate in some instances, but removing those resources will be
+necessary in others. This can be achieved by utilizing one of the two following methods.
+
+The first would be to utilize a clean deployment with a new cluster profile. The previous version could be deleted once
+the new cluster and cluster profile are deployed. The challenge, however, is when particular resources are in use.
+
+The second option is to use `kubectl` to scale the resource count to 0. While deleting the resource using something like
+K9s is possible, Palette will recreate it immediately.
+
+### Limitations
+
+:::warning
+
+Once you upgrade your cluster to a new Kubernetes version, you will not be able to downgrade. We recommend that, before
+upgrading, you review the information provided in the
+[Kubernetes Upgrades](../../integrations/kubernetes-support.md#kubernetes-upgrades) section.
+
+:::
+
+- You cannot update a cluster while its status is still **Provisioning**.
+
+- You cannot change the Container Network Interface (CNI) of an Edge cluster. You must delete and re-create the cluster
+  instead. For more information about creating an Edge cluster, refer to
+  [Create Cluster Definition](../edge/site-deployment/cluster-deployment.md).
+
+- Avoid skipping minor versions when upgrading the Kubernetes version of a cluster. Refer to the documentation of your
+  Kubernetes distribution for upgrade guidance and follow the recommended upgrade paths.
+
+  - For PXK and PXK-E, refer to
+    [Upgrade Kubeadm Clusters](https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-upgrade/).
+  - For K3s, refer to [K3s Upgrades](https://docs.k3s.io/upgrades#version-specific-caveats)
+  - For RKE2, refer to [RKE2 Manual Upgrades](https://docs.rke2.io/upgrades/manual_upgrade)
+
+### Prerequisites
+
+- An active Kubernetes cluster in Palette.
+- A terminal client
+
+### Enablement
+
+The steps below show how we can use the second option while deploying the Hello Universe application pack and updating
+the cluster profile. In this example, we create an AWS cluster called cluster-update-deletion. We will use Palette and a
+terminal application.
+
+1. Log into Palette and create a cluster profile with two versions. The base layers should be ubuntu-aws, Kubernetes,
+   cni-calico, and csi-aws-ebs. The App Services layer will use the Hello Universe from the Palette Community Registry
+   (OCI).
+
+   The first profile version (1.0.0) should be the Hello Universe 1.2.0 pack with the API disabled.
+
+   The second version (1.1.0) should be the Hello Universe 1.2.0 pack with the API enabled.
+
+2. Build a cluster using the profile version 1.0.0 (takes about 15-20 min)
+3. Download the Admin kubeconfig file from the cluster Overview.
+
+   Sample output:
+
+![How to download Admin kubeconfig file from Palette](/clusters_management_updates_kubeconfig-download.webp)
+
+4. Go your terminal application and run the following command
+
+`kubectl get pods --kubeconfig=admin.cluster-update-deletion.kubeconfig --namespace=hello-universe -o=custom-columns="POD_NAME:.metadata.name,CONTAINER_NAME:.status.containerStatuses[].name,CONTAINER_ID:.status.containerStatuses[].containerID"`
+
+5. This command will show the containers in the cluster that are in the hello universe namespace. It will include the
+   pod name, container name, and container ID. You can use these identifiers with various `kubectl` options.
+
+Sample output:
+
+![Using kubectl to see what containers are running](/clusters_management_updates_kubectl-noapi-hellouniverse.webp)
+
+6. Return to Palette and update the cluster using the profile version 1.1.0 (takes about 1-2 min).
+7. Return to the terminal and run the following command
+
+`kubectl get pods --kubeconfig=admin.cluster-update-deletion.kubeconfig --namespace=hello-universe -o=custom-columns="POD_NAME:.metadata.name,CONTAINER_NAME:.status.containerStatuses[].name,CONTAINER_ID:.status.containerStatuses[].containerID"`
+
+Sample output:
+
+![Using kubectl to see what containers are running in the updated cluster](/clusters_management_updates_kubectl-api-hellouniverse.webp)
path: docs/docs-content/clusters/cluster-management/cluster-updates.md
user: login: github-actions[bot]
body: 🚫 **[vale]** <sub>reported by [reviewdog](https://github.com/reviewdog/reviewdog) :dog:</sub><br>[spectrocloud-docs-internal.ableism] Avoid using ableism terms. Use 'operating' instead of 'running'.
created_at: 2025-04-11T19:47:22Z
author_association: CONTRIBUTOR
diff_hunk: @@ -140,3 +142,109 @@ You can follow these steps to validate all cluster update approaches.
 3. Select the cluster you updated, and navigate to the **Profile** tab of the cluster.
 
 4. Confirm that the cluster is now using an updated profile.
+
+## Palette Reconciliation Behavior
+
+When cluster profile updates are applied, Palette will apply the changes to the cluster but will not delete any
+resources that are no longer in use. This may be appropriate in some instances, but removing those resources will be
+necessary in others. This can be achieved by utilizing one of the two following methods.
+
+The first would be to utilize a clean deployment with a new cluster profile. The previous version could be deleted once
+the new cluster and cluster profile are deployed. The challenge, however, is when particular resources are in use.
+
+The second option is to use `kubectl` to scale the resource count to 0. While deleting the resource using something like
+K9s is possible, Palette will recreate it immediately.
+
+### Limitations
+
+:::warning
+
+Once you upgrade your cluster to a new Kubernetes version, you will not be able to downgrade. We recommend that, before
+upgrading, you review the information provided in the
+[Kubernetes Upgrades](../../integrations/kubernetes-support.md#kubernetes-upgrades) section.
+
+:::
+
+- You cannot update a cluster while its status is still **Provisioning**.
+
+- You cannot change the Container Network Interface (CNI) of an Edge cluster. You must delete and re-create the cluster
+  instead. For more information about creating an Edge cluster, refer to
+  [Create Cluster Definition](../edge/site-deployment/cluster-deployment.md).
+
+- Avoid skipping minor versions when upgrading the Kubernetes version of a cluster. Refer to the documentation of your
+  Kubernetes distribution for upgrade guidance and follow the recommended upgrade paths.
+
+  - For PXK and PXK-E, refer to
+    [Upgrade Kubeadm Clusters](https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-upgrade/).
+  - For K3s, refer to [K3s Upgrades](https://docs.k3s.io/upgrades#version-specific-caveats)
+  - For RKE2, refer to [RKE2 Manual Upgrades](https://docs.rke2.io/upgrades/manual_upgrade)
+
+### Prerequisites
+
+- An active Kubernetes cluster in Palette.
+- A terminal client
+
+### Enablement
+
+The steps below show how we can use the second option while deploying the Hello Universe application pack and updating
+the cluster profile. In this example, we create an AWS cluster called cluster-update-deletion. We will use Palette and a
+terminal application.
+
+1. Log into Palette and create a cluster profile with two versions. The base layers should be ubuntu-aws, Kubernetes,
+   cni-calico, and csi-aws-ebs. The App Services layer will use the Hello Universe from the Palette Community Registry
+   (OCI).
+
+   The first profile version (1.0.0) should be the Hello Universe 1.2.0 pack with the API disabled.
+
+   The second version (1.1.0) should be the Hello Universe 1.2.0 pack with the API enabled.
+
+2. Build a cluster using the profile version 1.0.0 (takes about 15-20 min)
+3. Download the Admin kubeconfig file from the cluster Overview.
+
+   Sample output:
+
+![How to download Admin kubeconfig file from Palette](/clusters_management_updates_kubeconfig-download.webp)
+
+4. Go your terminal application and run the following command
+
+`kubectl get pods --kubeconfig=admin.cluster-update-deletion.kubeconfig --namespace=hello-universe -o=custom-columns="POD_NAME:.metadata.name,CONTAINER_NAME:.status.containerStatuses[].name,CONTAINER_ID:.status.containerStatuses[].containerID"`
+
+5. This command will show the containers in the cluster that are in the hello universe namespace. It will include the
+   pod name, container name, and container ID. You can use these identifiers with various `kubectl` options.
+
+Sample output:
+
+![Using kubectl to see what containers are running](/clusters_management_updates_kubectl-noapi-hellouniverse.webp)
+
+6. Return to Palette and update the cluster using the profile version 1.1.0 (takes about 1-2 min).
+7. Return to the terminal and run the following command
+
+`kubectl get pods --kubeconfig=admin.cluster-update-deletion.kubeconfig --namespace=hello-universe -o=custom-columns="POD_NAME:.metadata.name,CONTAINER_NAME:.status.containerStatuses[].name,CONTAINER_ID:.status.containerStatuses[].containerID"`
+
+Sample output:
+
+![Using kubectl to see what containers are running in the updated cluster](/clusters_management_updates_kubectl-api-hellouniverse.webp)
+
+With the cluster updated, we can see that the previous version of the Hello Universe app remains. This container,
path: docs/docs-content/clusters/cluster-management/cluster-updates.md
user: login: github-actions[bot]
body: 🚫 **[vale]** <sub>reported by [reviewdog](https://github.com/reviewdog/reviewdog) :dog:</sub><br>[spectrocloud-docs-internal.ableism] Avoid using ableism terms. Use 'display' instead of 'see'.
created_at: 2025-04-11T19:47:22Z
author_association: CONTRIBUTOR
diff_hunk: @@ -140,3 +142,109 @@ You can follow these steps to validate all cluster update approaches.
 3. Select the cluster you updated, and navigate to the **Profile** tab of the cluster.
 
 4. Confirm that the cluster is now using an updated profile.
+
+## Palette Reconciliation Behavior
+
+When cluster profile updates are applied, Palette will apply the changes to the cluster but will not delete any
+resources that are no longer in use. This may be appropriate in some instances, but removing those resources will be
+necessary in others. This can be achieved by utilizing one of the two following methods.
+
+The first would be to utilize a clean deployment with a new cluster profile. The previous version could be deleted once
+the new cluster and cluster profile are deployed. The challenge, however, is when particular resources are in use.
+
+The second option is to use `kubectl` to scale the resource count to 0. While deleting the resource using something like
+K9s is possible, Palette will recreate it immediately.
+
+### Limitations
+
+:::warning
+
+Once you upgrade your cluster to a new Kubernetes version, you will not be able to downgrade. We recommend that, before
+upgrading, you review the information provided in the
+[Kubernetes Upgrades](../../integrations/kubernetes-support.md#kubernetes-upgrades) section.
+
+:::
+
+- You cannot update a cluster while its status is still **Provisioning**.
+
+- You cannot change the Container Network Interface (CNI) of an Edge cluster. You must delete and re-create the cluster
+  instead. For more information about creating an Edge cluster, refer to
+  [Create Cluster Definition](../edge/site-deployment/cluster-deployment.md).
+
+- Avoid skipping minor versions when upgrading the Kubernetes version of a cluster. Refer to the documentation of your
+  Kubernetes distribution for upgrade guidance and follow the recommended upgrade paths.
+
+  - For PXK and PXK-E, refer to
+    [Upgrade Kubeadm Clusters](https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-upgrade/).
+  - For K3s, refer to [K3s Upgrades](https://docs.k3s.io/upgrades#version-specific-caveats)
+  - For RKE2, refer to [RKE2 Manual Upgrades](https://docs.rke2.io/upgrades/manual_upgrade)
+
+### Prerequisites
+
+- An active Kubernetes cluster in Palette.
+- A terminal client
+
+### Enablement
+
+The steps below show how we can use the second option while deploying the Hello Universe application pack and updating
+the cluster profile. In this example, we create an AWS cluster called cluster-update-deletion. We will use Palette and a
+terminal application.
+
+1. Log into Palette and create a cluster profile with two versions. The base layers should be ubuntu-aws, Kubernetes,
+   cni-calico, and csi-aws-ebs. The App Services layer will use the Hello Universe from the Palette Community Registry
+   (OCI).
+
+   The first profile version (1.0.0) should be the Hello Universe 1.2.0 pack with the API disabled.
+
+   The second version (1.1.0) should be the Hello Universe 1.2.0 pack with the API enabled.
+
+2. Build a cluster using the profile version 1.0.0 (takes about 15-20 min)
+3. Download the Admin kubeconfig file from the cluster Overview.
+
+   Sample output:
+
+![How to download Admin kubeconfig file from Palette](/clusters_management_updates_kubeconfig-download.webp)
+
+4. Go your terminal application and run the following command
+
+`kubectl get pods --kubeconfig=admin.cluster-update-deletion.kubeconfig --namespace=hello-universe -o=custom-columns="POD_NAME:.metadata.name,CONTAINER_NAME:.status.containerStatuses[].name,CONTAINER_ID:.status.containerStatuses[].containerID"`
+
+5. This command will show the containers in the cluster that are in the hello universe namespace. It will include the
+   pod name, container name, and container ID. You can use these identifiers with various `kubectl` options.
+
+Sample output:
+
+![Using kubectl to see what containers are running](/clusters_management_updates_kubectl-noapi-hellouniverse.webp)
+
+6. Return to Palette and update the cluster using the profile version 1.1.0 (takes about 1-2 min).
+7. Return to the terminal and run the following command
+
+`kubectl get pods --kubeconfig=admin.cluster-update-deletion.kubeconfig --namespace=hello-universe -o=custom-columns="POD_NAME:.metadata.name,CONTAINER_NAME:.status.containerStatuses[].name,CONTAINER_ID:.status.containerStatuses[].containerID"`
+
+Sample output:
+
+![Using kubectl to see what containers are running in the updated cluster](/clusters_management_updates_kubectl-api-hellouniverse.webp)
+
+With the cluster updated, we can see that the previous version of the Hello Universe app remains. This container,
+however, is not used with the API version and is no longer needed.
+
+8. Locate the pod name of the container you want to remove and run the following command.
+
+`kubectl scale deployment hello-universe-deployment --replicas=0 hello-universe-deployment-6854947c67-jtlp7 --kubeconfig=cluster-update-deletion.kubeconfig --namespace hello-universe`
+
+Sample output:
path: docs/docs-content/clusters/cluster-management/cluster-updates.md
user: login: github-actions[bot]
body: 🚫 **[vale]** <sub>reported by [reviewdog](https://github.com/reviewdog/reviewdog) :dog:</sub><br>[spectrocloud-docs-internal.colon] Use colons only to introduce lists, unless in code blocks or inline code.
created_at: 2025-04-11T19:47:22Z
author_association: CONTRIBUTOR
diff_hunk: @@ -140,3 +142,109 @@ You can follow these steps to validate all cluster update approaches.
 3. Select the cluster you updated, and navigate to the **Profile** tab of the cluster.
 
 4. Confirm that the cluster is now using an updated profile.
+
+## Palette Reconciliation Behavior
+
+When cluster profile updates are applied, Palette will apply the changes to the cluster but will not delete any
+resources that are no longer in use. This may be appropriate in some instances, but removing those resources will be
+necessary in others. This can be achieved by utilizing one of the two following methods.
+
+The first would be to utilize a clean deployment with a new cluster profile. The previous version could be deleted once
+the new cluster and cluster profile are deployed. The challenge, however, is when particular resources are in use.
+
+The second option is to use `kubectl` to scale the resource count to 0. While deleting the resource using something like
+K9s is possible, Palette will recreate it immediately.
+
+### Limitations
+
+:::warning
+
+Once you upgrade your cluster to a new Kubernetes version, you will not be able to downgrade. We recommend that, before
+upgrading, you review the information provided in the
+[Kubernetes Upgrades](../../integrations/kubernetes-support.md#kubernetes-upgrades) section.
+
+:::
+
+- You cannot update a cluster while its status is still **Provisioning**.
+
+- You cannot change the Container Network Interface (CNI) of an Edge cluster. You must delete and re-create the cluster
+  instead. For more information about creating an Edge cluster, refer to
+  [Create Cluster Definition](../edge/site-deployment/cluster-deployment.md).
+
+- Avoid skipping minor versions when upgrading the Kubernetes version of a cluster. Refer to the documentation of your
+  Kubernetes distribution for upgrade guidance and follow the recommended upgrade paths.
+
+  - For PXK and PXK-E, refer to
+    [Upgrade Kubeadm Clusters](https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-upgrade/).
+  - For K3s, refer to [K3s Upgrades](https://docs.k3s.io/upgrades#version-specific-caveats)
+  - For RKE2, refer to [RKE2 Manual Upgrades](https://docs.rke2.io/upgrades/manual_upgrade)
+
+### Prerequisites
+
+- An active Kubernetes cluster in Palette.
+- A terminal client
+
+### Enablement
+
+The steps below show how we can use the second option while deploying the Hello Universe application pack and updating
+the cluster profile. In this example, we create an AWS cluster called cluster-update-deletion. We will use Palette and a
+terminal application.
+
+1. Log into Palette and create a cluster profile with two versions. The base layers should be ubuntu-aws, Kubernetes,
path: docs/docs-content/clusters/cluster-management/cluster-updates.md
user: login: Linus-SpectroCloud
body: "ubuntu-aws" is the actual name and case of the layer. 
created_at: 2025-04-13T17:14:36Z
author_association: CONTRIBUTOR
diff_hunk: @@ -140,3 +142,106 @@ You can follow these steps to validate all cluster update approaches.
 3. Select the cluster you updated, and navigate to the **Profile** tab of the cluster.
 
 4. Confirm that the cluster is now using an updated profile.
+
+## Palette Reconciliation Behavior
+
+When cluster profile updates are applied, Palette will apply the changes to the cluster but will not delete any resources that are no longer in use. This may be appropriate in some instances, but removing those resources will be necessary in others. This can be achieved by utilizing one of the two following methods.
+
+The first would be to utilize a clean deployment with a new cluster profile. The previous version could be deleted once the new cluster and cluster profile are deployed. The challenge, however, is when particular resources are in use.
+
+The second option is to use `kubectl` to scale the resource count to 0. While deleting the resource using something like K9s is possible, Palette will recreate it immediately.
+
+### Limitations
+
+:::warning
+
+Once you upgrade your cluster to a new Kubernetes version, you will not be able to downgrade. We recommend that, before
+upgrading, you review the information provided in the
+[Kubernetes Upgrades](../../integrations/kubernetes-support.md#kubernetes-upgrades) section.
+
+:::
+
+- You cannot update a cluster while its status is still **Provisioning**.
+
+- You cannot change the Container Network Interface (CNI) of an Edge cluster. You must delete and re-create the cluster
+  instead. For more information about creating an Edge cluster, refer to
+  [Create Cluster Definition](../edge/site-deployment/cluster-deployment.md).
+
+- Avoid skipping minor versions when upgrading the Kubernetes version of a cluster. Refer to the documentation of your
+  Kubernetes distribution for upgrade guidance and follow the recommended upgrade paths.
+
+  - For PXK and PXK-E, refer to
+    [Upgrade Kubeadm Clusters](https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-upgrade/).
+  - For K3s, refer to [K3s Upgrades](https://docs.k3s.io/upgrades#version-specific-caveats)
+  - For RKE2, refer to [RKE2 Manual Upgrades](https://docs.rke2.io/upgrades/manual_upgrade)
+
+
+### Prerequisites
+
+- An active Kubernetes cluster in Palette.
+- A terminal client
+
+### Enablement
+
+The steps below show how we can use the second option while deploying the Hello Universe application pack and updating the cluster profile. In this example, we create an AWS cluster called cluster-update-deletion. We will use Palette and a terminal application.
+
+1. Log into Palette and create a cluster profile with two versions. The base layers should be ubuntu-aws, Kubernetes, cni-calico, and csi-aws-ebs. The App Services layer will use the Hello Universe from the Palette Community Registry (OCI).
+   
+   The first profile version (1.0.0) should be the Hello Universe 1.2.0 pack with the API disabled. 
+   
+   The second version (1.1.0) should be the Hello Universe 1.2.0 pack with the API enabled. 
+   
+2. Build a cluster using the profile version 1.0.0 (takes about 15-20 min)
+   
+3. Download the Admin kubeconfig file from the cluster Overview.
+   
+   Sample output:
+
+  ![How to download Admin kubeconfig file from Palette](/clusters_management_updates_kubeconfig-download.webp)   
+
+4. Go your terminal application and run the following command
+
+ ```kubectl get pods --kubeconfig=admin.cluster-update-deletion.kubeconfig --namespace=hello-universe -o=custom-columns="POD_NAME:.metadata.name,CONTAINER_NAME:.status.containerStatuses[].name,CONTAINER_ID:.status.containerStatuses[].containerID"```
path: docs/docs-content/clusters/cluster-management/cluster-updates.md
user: login: Linus-SpectroCloud
body: kubectl does not have a long form for -o
created_at: 2025-04-13T17:19:54Z
author_association: CONTRIBUTOR
diff_hunk: @@ -140,3 +142,109 @@ You can follow these steps to validate all cluster update approaches.
 3. Select the cluster you updated, and navigate to the **Profile** tab of the cluster.
 
 4. Confirm that the cluster is now using an updated profile.
+
+## Palette Reconciliation Behavior
+
+When cluster profile updates are applied, Palette will apply the changes to the cluster but will not delete any
+resources that are no longer in use. This may be appropriate in some instances, but removing those resources will be
+necessary in others. This can be achieved by utilizing one of the two following methods.
+
+The first would be to utilize a clean deployment with a new cluster profile. The previous version could be deleted once
+the new cluster and cluster profile are deployed. The challenge, however, is when particular resources are in use.
+
+The second option is to use `kubectl` to scale the resource count to 0. While deleting the resource using something like
+K9s is possible, Palette will recreate it immediately.
+
+### Limitations
+
+:::warning
+
+Once you upgrade your cluster to a new Kubernetes version, you will not be able to downgrade. We recommend that, before
+upgrading, you review the information provided in the
+[Kubernetes Upgrades](../../integrations/kubernetes-support.md#kubernetes-upgrades) section.
+
+:::
+
+- You cannot update a cluster while its status is still **Provisioning**.
+
+- You cannot change the Container Network Interface (CNI) of an Edge cluster. You must delete and re-create the cluster
+  instead. For more information about creating an Edge cluster, refer to
+  [Create Cluster Definition](../edge/site-deployment/cluster-deployment.md).
+
+- Avoid skipping minor versions when upgrading the Kubernetes version of a cluster. Refer to the documentation of your
+  Kubernetes distribution for upgrade guidance and follow the recommended upgrade paths.
+
+  - For PXK and PXK-E, refer to
+    [Upgrade Kubeadm Clusters](https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-upgrade/).
+  - For K3s, refer to [K3s Upgrades](https://docs.k3s.io/upgrades#version-specific-caveats)
+  - For RKE2, refer to [RKE2 Manual Upgrades](https://docs.rke2.io/upgrades/manual_upgrade)
path: docs/docs-content/clusters/cluster-management/cluster-updates.md
user: login: benradstone
body: @Linus-SpectroCloud You can use a "global" Limitations section for an article, so I would put a Limitations (header 2) at the beginning of the article that covers both How-tos (rather than two Limitations headers for each How-to).

The rest of the article headers are all in alignment with our guidance though.
created_at: 2025-04-14T09:52:06Z
author_association: CONTRIBUTOR
diff_hunk: @@ -140,3 +142,109 @@ You can follow these steps to validate all cluster update approaches.
 3. Select the cluster you updated, and navigate to the **Profile** tab of the cluster.
 
 4. Confirm that the cluster is now using an updated profile.
+
+## Palette Reconciliation Behavior
+
+When cluster profile updates are applied, Palette will apply the changes to the cluster but will not delete any
+resources that are no longer in use. This may be appropriate in some instances, but removing those resources will be
+necessary in others. This can be achieved by utilizing one of the two following methods.
path: docs/docs-content/clusters/cluster-management/cluster-updates.md
user: login: benradstone
body: ```suggestion
resources that are no longer in use. Depending on the situation, you can choose to keep or remove these resources. To remove the resources, utilize one of the following two methods.
```
created_at: 2025-04-14T10:18:36Z
author_association: CONTRIBUTOR
diff_hunk: @@ -140,3 +142,109 @@ You can follow these steps to validate all cluster update approaches.
 3. Select the cluster you updated, and navigate to the **Profile** tab of the cluster.
 
 4. Confirm that the cluster is now using an updated profile.
+
+## Palette Reconciliation Behavior
+
+When cluster profile updates are applied, Palette will apply the changes to the cluster but will not delete any
+resources that are no longer in use. This may be appropriate in some instances, but removing those resources will be
+necessary in others. This can be achieved by utilizing one of the two following methods.
+
+The first would be to utilize a clean deployment with a new cluster profile. The previous version could be deleted once
+the new cluster and cluster profile are deployed. The challenge, however, is when particular resources are in use.
path: docs/docs-content/clusters/cluster-management/cluster-updates.md
user: login: benradstone
body: ```suggestion
The first method would be a clean deployment with a new cluster profile. Once the new cluster and cluster profile are deployed, the previous version could be deleted. The challenge, however, is when particular resources are in use.
```
created_at: 2025-04-14T10:19:46Z
author_association: CONTRIBUTOR
diff_hunk: @@ -140,3 +142,109 @@ You can follow these steps to validate all cluster update approaches.
 3. Select the cluster you updated, and navigate to the **Profile** tab of the cluster.
 
 4. Confirm that the cluster is now using an updated profile.
+
+## Palette Reconciliation Behavior
+
+When cluster profile updates are applied, Palette will apply the changes to the cluster but will not delete any
+resources that are no longer in use. This may be appropriate in some instances, but removing those resources will be
+necessary in others. This can be achieved by utilizing one of the two following methods.
+
+The first would be to utilize a clean deployment with a new cluster profile. The previous version could be deleted once
+the new cluster and cluster profile are deployed. The challenge, however, is when particular resources are in use.
+
+The second option is to use `kubectl` to scale the resource count to 0. While deleting the resource using something like
+K9s is possible, Palette will recreate it immediately.
+
+### Limitations
+
+:::warning
+
+Once you upgrade your cluster to a new Kubernetes version, you will not be able to downgrade. We recommend that, before
+upgrading, you review the information provided in the
+[Kubernetes Upgrades](../../integrations/kubernetes-support.md#kubernetes-upgrades) section.
+
+:::
+
+- You cannot update a cluster while its status is still **Provisioning**.
+
+- You cannot change the Container Network Interface (CNI) of an Edge cluster. You must delete and re-create the cluster
+  instead. For more information about creating an Edge cluster, refer to
+  [Create Cluster Definition](../edge/site-deployment/cluster-deployment.md).
+
+- Avoid skipping minor versions when upgrading the Kubernetes version of a cluster. Refer to the documentation of your
+  Kubernetes distribution for upgrade guidance and follow the recommended upgrade paths.
+
+  - For PXK and PXK-E, refer to
+    [Upgrade Kubeadm Clusters](https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-upgrade/).
+  - For K3s, refer to [K3s Upgrades](https://docs.k3s.io/upgrades#version-specific-caveats)
+  - For RKE2, refer to [RKE2 Manual Upgrades](https://docs.rke2.io/upgrades/manual_upgrade)
+
+### Prerequisites
+
+- An active Kubernetes cluster in Palette.
+- A terminal client
path: docs/docs-content/clusters/cluster-management/cluster-updates.md
user: login: benradstone
body: ```suggestion
- A terminal client.
```
created_at: 2025-04-14T10:21:15Z
author_association: CONTRIBUTOR
diff_hunk: @@ -140,3 +142,109 @@ You can follow these steps to validate all cluster update approaches.
 3. Select the cluster you updated, and navigate to the **Profile** tab of the cluster.
 
 4. Confirm that the cluster is now using an updated profile.
+
+## Palette Reconciliation Behavior
+
+When cluster profile updates are applied, Palette will apply the changes to the cluster but will not delete any
+resources that are no longer in use. This may be appropriate in some instances, but removing those resources will be
+necessary in others. This can be achieved by utilizing one of the two following methods.
+
+The first would be to utilize a clean deployment with a new cluster profile. The previous version could be deleted once
+the new cluster and cluster profile are deployed. The challenge, however, is when particular resources are in use.
+
+The second option is to use `kubectl` to scale the resource count to 0. While deleting the resource using something like
path: docs/docs-content/clusters/cluster-management/cluster-updates.md
user: login: benradstone
body: ```suggestion
The second method is to use `kubectl` to scale the resource count to 0. While deleting the resource using something like
```
created_at: 2025-04-14T10:23:51Z
author_association: CONTRIBUTOR
diff_hunk: @@ -140,3 +142,109 @@ You can follow these steps to validate all cluster update approaches.
 3. Select the cluster you updated, and navigate to the **Profile** tab of the cluster.
 
 4. Confirm that the cluster is now using an updated profile.
+
+## Palette Reconciliation Behavior
+
+When cluster profile updates are applied, Palette will apply the changes to the cluster but will not delete any
+resources that are no longer in use. This may be appropriate in some instances, but removing those resources will be
+necessary in others. This can be achieved by utilizing one of the two following methods.
+
+The first would be to utilize a clean deployment with a new cluster profile. The previous version could be deleted once
+the new cluster and cluster profile are deployed. The challenge, however, is when particular resources are in use.
+
+The second option is to use `kubectl` to scale the resource count to 0. While deleting the resource using something like
+K9s is possible, Palette will recreate it immediately.
path: docs/docs-content/clusters/cluster-management/cluster-updates.md
user: login: benradstone
body: ```suggestion
K9s is possible, Palette will recreate it immediately. Scaling replicas to zero via `kubectl` ensures the resource is effectively removed.
```
created_at: 2025-04-14T10:24:57Z
author_association: CONTRIBUTOR
diff_hunk: @@ -140,3 +142,109 @@ You can follow these steps to validate all cluster update approaches.
 3. Select the cluster you updated, and navigate to the **Profile** tab of the cluster.
 
 4. Confirm that the cluster is now using an updated profile.
+
+## Palette Reconciliation Behavior
+
+When cluster profile updates are applied, Palette will apply the changes to the cluster but will not delete any
+resources that are no longer in use. This may be appropriate in some instances, but removing those resources will be
+necessary in others. This can be achieved by utilizing one of the two following methods.
+
+The first would be to utilize a clean deployment with a new cluster profile. The previous version could be deleted once
+the new cluster and cluster profile are deployed. The challenge, however, is when particular resources are in use.
+
+The second option is to use `kubectl` to scale the resource count to 0. While deleting the resource using something like
+K9s is possible, Palette will recreate it immediately.
path: docs/docs-content/clusters/cluster-management/cluster-updates.md
user: login: benradstone
body: Just some additional context on the use of this method.
created_at: 2025-04-14T10:32:32Z
author_association: CONTRIBUTOR
diff_hunk: @@ -140,3 +142,109 @@ You can follow these steps to validate all cluster update approaches.
 3. Select the cluster you updated, and navigate to the **Profile** tab of the cluster.
 
 4. Confirm that the cluster is now using an updated profile.
+
+## Palette Reconciliation Behavior
+
+When cluster profile updates are applied, Palette will apply the changes to the cluster but will not delete any
+resources that are no longer in use. This may be appropriate in some instances, but removing those resources will be
+necessary in others. This can be achieved by utilizing one of the two following methods.
+
+The first would be to utilize a clean deployment with a new cluster profile. The previous version could be deleted once
+the new cluster and cluster profile are deployed. The challenge, however, is when particular resources are in use.
+
+The second option is to use `kubectl` to scale the resource count to 0. While deleting the resource using something like
path: docs/docs-content/clusters/cluster-management/cluster-updates.md
user: login: benradstone
body: This will keep the terminology consistent from the intro.
created_at: 2025-04-14T10:32:56Z
author_association: CONTRIBUTOR
diff_hunk: @@ -140,3 +142,109 @@ You can follow these steps to validate all cluster update approaches.
 3. Select the cluster you updated, and navigate to the **Profile** tab of the cluster.
 
 4. Confirm that the cluster is now using an updated profile.
+
+## Palette Reconciliation Behavior
+
+When cluster profile updates are applied, Palette will apply the changes to the cluster but will not delete any
+resources that are no longer in use. This may be appropriate in some instances, but removing those resources will be
+necessary in others. This can be achieved by utilizing one of the two following methods.
path: docs/docs-content/clusters/cluster-management/cluster-updates.md
user: login: benradstone
body: Slightly more active language suggested.
created_at: 2025-04-14T10:33:23Z
author_association: CONTRIBUTOR
diff_hunk: @@ -140,3 +142,109 @@ You can follow these steps to validate all cluster update approaches.
 3. Select the cluster you updated, and navigate to the **Profile** tab of the cluster.
 
 4. Confirm that the cluster is now using an updated profile.
+
+## Palette Reconciliation Behavior
+
+When cluster profile updates are applied, Palette will apply the changes to the cluster but will not delete any
+resources that are no longer in use. This may be appropriate in some instances, but removing those resources will be
+necessary in others. This can be achieved by utilizing one of the two following methods.
+
+The first would be to utilize a clean deployment with a new cluster profile. The previous version could be deleted once
+the new cluster and cluster profile are deployed. The challenge, however, is when particular resources are in use.
+
+The second option is to use `kubectl` to scale the resource count to 0. While deleting the resource using something like
+K9s is possible, Palette will recreate it immediately.
+
path: docs/docs-content/clusters/cluster-management/cluster-updates.md
user: login: benradstone
body: ```suggestion

This section provides guidance on removing resources using the second method. 

```
created_at: 2025-04-14T10:38:21Z
author_association: CONTRIBUTOR
diff_hunk: @@ -140,3 +142,109 @@ You can follow these steps to validate all cluster update approaches.
 3. Select the cluster you updated, and navigate to the **Profile** tab of the cluster.
 
 4. Confirm that the cluster is now using an updated profile.
+
+## Palette Reconciliation Behavior
+
+When cluster profile updates are applied, Palette will apply the changes to the cluster but will not delete any
+resources that are no longer in use. This may be appropriate in some instances, but removing those resources will be
+necessary in others. This can be achieved by utilizing one of the two following methods.
+
+The first would be to utilize a clean deployment with a new cluster profile. The previous version could be deleted once
+the new cluster and cluster profile are deployed. The challenge, however, is when particular resources are in use.
+
+The second option is to use `kubectl` to scale the resource count to 0. While deleting the resource using something like
+K9s is possible, Palette will recreate it immediately.
+
path: docs/docs-content/clusters/cluster-management/cluster-updates.md
user: login: benradstone
body: I suggest telling users which method we'll provide guidance on at the beginning.

You can then shorten the initial intro to the steps.
created_at: 2025-04-14T10:39:36Z
author_association: CONTRIBUTOR
diff_hunk: @@ -140,3 +142,109 @@ You can follow these steps to validate all cluster update approaches.
 3. Select the cluster you updated, and navigate to the **Profile** tab of the cluster.
 
 4. Confirm that the cluster is now using an updated profile.
+
+## Palette Reconciliation Behavior
+
+When cluster profile updates are applied, Palette will apply the changes to the cluster but will not delete any
+resources that are no longer in use. This may be appropriate in some instances, but removing those resources will be
+necessary in others. This can be achieved by utilizing one of the two following methods.
+
+The first would be to utilize a clean deployment with a new cluster profile. The previous version could be deleted once
+the new cluster and cluster profile are deployed. The challenge, however, is when particular resources are in use.
+
+The second option is to use `kubectl` to scale the resource count to 0. While deleting the resource using something like
+K9s is possible, Palette will recreate it immediately.
+
+### Limitations
+
+:::warning
+
+Once you upgrade your cluster to a new Kubernetes version, you will not be able to downgrade. We recommend that, before
+upgrading, you review the information provided in the
+[Kubernetes Upgrades](../../integrations/kubernetes-support.md#kubernetes-upgrades) section.
+
+:::
+
+- You cannot update a cluster while its status is still **Provisioning**.
+
+- You cannot change the Container Network Interface (CNI) of an Edge cluster. You must delete and re-create the cluster
+  instead. For more information about creating an Edge cluster, refer to
+  [Create Cluster Definition](../edge/site-deployment/cluster-deployment.md).
+
+- Avoid skipping minor versions when upgrading the Kubernetes version of a cluster. Refer to the documentation of your
+  Kubernetes distribution for upgrade guidance and follow the recommended upgrade paths.
+
+  - For PXK and PXK-E, refer to
+    [Upgrade Kubeadm Clusters](https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-upgrade/).
+  - For K3s, refer to [K3s Upgrades](https://docs.k3s.io/upgrades#version-specific-caveats)
+  - For RKE2, refer to [RKE2 Manual Upgrades](https://docs.rke2.io/upgrades/manual_upgrade)
+
+### Prerequisites
+
+- An active Kubernetes cluster in Palette.
+- A terminal client
+
+### Enablement
+
+The steps below show how we can use the second option while deploying the Hello Universe application pack and updating
+the cluster profile. In this example, we create an AWS cluster called cluster-update-deletion. We will use Palette and a
+terminal application.
path: docs/docs-content/clusters/cluster-management/cluster-updates.md
user: login: benradstone
body: ```suggestion
The following steps provide an example of how to clean up unneeded resources using `kubectl`. In this example, an AWS cluster called **cluster-update-deletion** is created using a cluster profile with the <VersionedLink text="Hello Universe" url="/integrations/packs/?pack=hello-universe" /> included. The Hello Universe pack has the API preset option disabled.
```
created_at: 2025-04-14T11:06:43Z
author_association: CONTRIBUTOR
diff_hunk: @@ -140,3 +142,109 @@ You can follow these steps to validate all cluster update approaches.
 3. Select the cluster you updated, and navigate to the **Profile** tab of the cluster.
 
 4. Confirm that the cluster is now using an updated profile.
+
+## Palette Reconciliation Behavior
+
+When cluster profile updates are applied, Palette will apply the changes to the cluster but will not delete any
+resources that are no longer in use. This may be appropriate in some instances, but removing those resources will be
+necessary in others. This can be achieved by utilizing one of the two following methods.
+
+The first would be to utilize a clean deployment with a new cluster profile. The previous version could be deleted once
+the new cluster and cluster profile are deployed. The challenge, however, is when particular resources are in use.
+
+The second option is to use `kubectl` to scale the resource count to 0. While deleting the resource using something like
+K9s is possible, Palette will recreate it immediately.
+
+### Limitations
+
+:::warning
+
+Once you upgrade your cluster to a new Kubernetes version, you will not be able to downgrade. We recommend that, before
+upgrading, you review the information provided in the
+[Kubernetes Upgrades](../../integrations/kubernetes-support.md#kubernetes-upgrades) section.
+
+:::
+
+- You cannot update a cluster while its status is still **Provisioning**.
+
+- You cannot change the Container Network Interface (CNI) of an Edge cluster. You must delete and re-create the cluster
+  instead. For more information about creating an Edge cluster, refer to
+  [Create Cluster Definition](../edge/site-deployment/cluster-deployment.md).
+
+- Avoid skipping minor versions when upgrading the Kubernetes version of a cluster. Refer to the documentation of your
+  Kubernetes distribution for upgrade guidance and follow the recommended upgrade paths.
+
+  - For PXK and PXK-E, refer to
+    [Upgrade Kubeadm Clusters](https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-upgrade/).
+  - For K3s, refer to [K3s Upgrades](https://docs.k3s.io/upgrades#version-specific-caveats)
+  - For RKE2, refer to [RKE2 Manual Upgrades](https://docs.rke2.io/upgrades/manual_upgrade)
+
+### Prerequisites
+
+- An active Kubernetes cluster in Palette.
+- A terminal client
+
+### Enablement
+
+The steps below show how we can use the second option while deploying the Hello Universe application pack and updating
+the cluster profile. In this example, we create an AWS cluster called cluster-update-deletion. We will use Palette and a
+terminal application.
+
+1. Log into Palette and create a cluster profile with two versions. The base layers should be ubuntu-aws, Kubernetes,
+   cni-calico, and csi-aws-ebs. The App Services layer will use the Hello Universe from the Palette Community Registry
+   (OCI).
+
+   The first profile version (1.0.0) should be the Hello Universe 1.2.0 pack with the API disabled.
+
+   The second version (1.1.0) should be the Hello Universe 1.2.0 pack with the API enabled.
+
+2. Build a cluster using the profile version 1.0.0 (takes about 15-20 min)
+3. Download the Admin kubeconfig file from the cluster Overview.
+
+   Sample output
+
+![How to download Admin kubeconfig file from Palette](/clusters_management_updates_kubeconfig-download.webp)
+
+4. Go your terminal application and run the following command
+
+`kubectl get pods --kubeconfig=admin.cluster-update-deletion.kubeconfig --namespace=hello-universe -o=custom-columns="POD_NAME:.metadata.name,CONTAINER_NAME:.status.containerStatuses[].name,CONTAINER_ID:.status.containerStatuses[].containerID"`
+
+5. This command will display the containers in the cluster that are in the hello universe namespace. It will include the
+   pod name, container name, and container ID. You can use these identifiers with various `kubectl` options.
+
+Sample output
+
+![Using kubectl to see what containers are running](/clusters_management_updates_kubectl-noapi-hellouniverse.webp)
+
+6. Return to Palette and update the cluster using the profile version 1.1.0 (takes about 1-2 min).
+7. Return to the terminal and run the following command
+
+`kubectl get pods --kubeconfig=admin.cluster-update-deletion.kubeconfig --namespace=hello-universe -o=custom-columns="POD_NAME:.metadata.name,CONTAINER_NAME:.status.containerStatuses[].name,CONTAINER_ID:.status.containerStatuses[].containerID"`
+
+Sample output
+
+![Using kubectl to see what containers are running in the updated cluster](/clusters_management_updates_kubectl-api-hellouniverse.webp)
+
+With the cluster updated, we can see that the previous version of the Hello Universe app remains. This container,
+however, is not used with the API version and is no longer needed.
+
+8. Locate the pod name of the container you want to remove and run the following command.
+
+`kubectl scale deployment hello-universe-deployment --replicas=0 hello-universe-deployment-6854947c67-jtlp7 --kubeconfig=cluster-update-deletion.kubeconfig --namespace hello-universe`
+
+Sample output
+
+![Using kubectl to remove resources no longer in use](/clusters_management_updates_kubectl-api-hellouniverse-removed.webp)
+
+This command will reduce the container count to 0, effectively stopping the container. If you have multiple clusters
+with resources no longer in use, you could put the command into a script to help remove those additional resources.
+
+### Validation
+
+You can follow these steps to validate all cluster update approaches.
+
+1. Log in to [Palette](https://console.spectrocloud.com/).
+2. Navigate to the left **Main Menu** and select **Clusters**.
+3. Select the cluster you modified, and navigate to the **Workloads** tab of the cluster.
+4. Select **Pods** and filter for the deployment namespace.
+5. Confirm that the unnecessary resources have been removed.
path: docs/docs-content/clusters/cluster-management/cluster-updates.md
user: login: benradstone
body: ```suggestion
1. Log in to [Palette](https://console.spectrocloud.com/).

2. Navigate to the left main menu and select **Clusters**.

3. Select the cluster you modified, and navigate to the **Workloads** tab of the cluster.

4. Select **Pods** and filter for the deployment namespace.

5. Confirm that the unnecessary resources have been removed.
```
created_at: 2025-04-14T12:10:23Z
author_association: CONTRIBUTOR
diff_hunk: @@ -140,3 +142,109 @@ You can follow these steps to validate all cluster update approaches.
 3. Select the cluster you updated, and navigate to the **Profile** tab of the cluster.
 
 4. Confirm that the cluster is now using an updated profile.
+
+## Palette Reconciliation Behavior
+
+When cluster profile updates are applied, Palette will apply the changes to the cluster but will not delete any
+resources that are no longer in use. This may be appropriate in some instances, but removing those resources will be
+necessary in others. This can be achieved by utilizing one of the two following methods.
+
+The first would be to utilize a clean deployment with a new cluster profile. The previous version could be deleted once
+the new cluster and cluster profile are deployed. The challenge, however, is when particular resources are in use.
+
+The second option is to use `kubectl` to scale the resource count to 0. While deleting the resource using something like
+K9s is possible, Palette will recreate it immediately.
+
+### Limitations
+
+:::warning
+
+Once you upgrade your cluster to a new Kubernetes version, you will not be able to downgrade. We recommend that, before
+upgrading, you review the information provided in the
+[Kubernetes Upgrades](../../integrations/kubernetes-support.md#kubernetes-upgrades) section.
+
+:::
+
+- You cannot update a cluster while its status is still **Provisioning**.
+
+- You cannot change the Container Network Interface (CNI) of an Edge cluster. You must delete and re-create the cluster
+  instead. For more information about creating an Edge cluster, refer to
+  [Create Cluster Definition](../edge/site-deployment/cluster-deployment.md).
+
+- Avoid skipping minor versions when upgrading the Kubernetes version of a cluster. Refer to the documentation of your
+  Kubernetes distribution for upgrade guidance and follow the recommended upgrade paths.
+
+  - For PXK and PXK-E, refer to
+    [Upgrade Kubeadm Clusters](https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-upgrade/).
+  - For K3s, refer to [K3s Upgrades](https://docs.k3s.io/upgrades#version-specific-caveats)
+  - For RKE2, refer to [RKE2 Manual Upgrades](https://docs.rke2.io/upgrades/manual_upgrade)
+
+### Prerequisites
+
+- An active Kubernetes cluster in Palette.
+- A terminal client
+
+### Enablement
+
+The steps below show how we can use the second option while deploying the Hello Universe application pack and updating
+the cluster profile. In this example, we create an AWS cluster called cluster-update-deletion. We will use Palette and a
+terminal application.
+
+1. Log into Palette and create a cluster profile with two versions. The base layers should be ubuntu-aws, Kubernetes,
+   cni-calico, and csi-aws-ebs. The App Services layer will use the Hello Universe from the Palette Community Registry
+   (OCI).
+
+   The first profile version (1.0.0) should be the Hello Universe 1.2.0 pack with the API disabled.
+
+   The second version (1.1.0) should be the Hello Universe 1.2.0 pack with the API enabled.
+
+2. Build a cluster using the profile version 1.0.0 (takes about 15-20 min)
+3. Download the Admin kubeconfig file from the cluster Overview.
+
+   Sample output
+
+![How to download Admin kubeconfig file from Palette](/clusters_management_updates_kubeconfig-download.webp)
+
+4. Go your terminal application and run the following command
+
+`kubectl get pods --kubeconfig=admin.cluster-update-deletion.kubeconfig --namespace=hello-universe -o=custom-columns="POD_NAME:.metadata.name,CONTAINER_NAME:.status.containerStatuses[].name,CONTAINER_ID:.status.containerStatuses[].containerID"`
+
+5. This command will display the containers in the cluster that are in the hello universe namespace. It will include the
+   pod name, container name, and container ID. You can use these identifiers with various `kubectl` options.
+
+Sample output
+
+![Using kubectl to see what containers are running](/clusters_management_updates_kubectl-noapi-hellouniverse.webp)
+
+6. Return to Palette and update the cluster using the profile version 1.1.0 (takes about 1-2 min).
+7. Return to the terminal and run the following command
+
+`kubectl get pods --kubeconfig=admin.cluster-update-deletion.kubeconfig --namespace=hello-universe -o=custom-columns="POD_NAME:.metadata.name,CONTAINER_NAME:.status.containerStatuses[].name,CONTAINER_ID:.status.containerStatuses[].containerID"`
+
+Sample output
+
+![Using kubectl to see what containers are running in the updated cluster](/clusters_management_updates_kubectl-api-hellouniverse.webp)
+
+With the cluster updated, we can see that the previous version of the Hello Universe app remains. This container,
+however, is not used with the API version and is no longer needed.
+
+8. Locate the pod name of the container you want to remove and run the following command.
+
+`kubectl scale deployment hello-universe-deployment --replicas=0 hello-universe-deployment-6854947c67-jtlp7 --kubeconfig=cluster-update-deletion.kubeconfig --namespace hello-universe`
+
+Sample output
+
+![Using kubectl to remove resources no longer in use](/clusters_management_updates_kubectl-api-hellouniverse-removed.webp)
+
+This command will reduce the container count to 0, effectively stopping the container. If you have multiple clusters
+with resources no longer in use, you could put the command into a script to help remove those additional resources.
+
+### Validation
+
+You can follow these steps to validate all cluster update approaches.
+
+1. Log in to [Palette](https://console.spectrocloud.com/).
+2. Navigate to the left **Main Menu** and select **Clusters**.
+3. Select the cluster you modified, and navigate to the **Workloads** tab of the cluster.
+4. Select **Pods** and filter for the deployment namespace.
+5. Confirm that the unnecessary resources have been removed.
path: docs/docs-content/clusters/cluster-management/cluster-updates.md
user: login: benradstone
body: Added some spacing and switched to a recent style guide change where "main menu" is no longer a proper noun in bold (you may still see this in our docs though).
created_at: 2025-04-14T12:11:14Z
author_association: CONTRIBUTOR
diff_hunk: @@ -140,3 +142,109 @@ You can follow these steps to validate all cluster update approaches.
 3. Select the cluster you updated, and navigate to the **Profile** tab of the cluster.
 
 4. Confirm that the cluster is now using an updated profile.
+
+## Palette Reconciliation Behavior
+
+When cluster profile updates are applied, Palette will apply the changes to the cluster but will not delete any
+resources that are no longer in use. This may be appropriate in some instances, but removing those resources will be
+necessary in others. This can be achieved by utilizing one of the two following methods.
+
+The first would be to utilize a clean deployment with a new cluster profile. The previous version could be deleted once
+the new cluster and cluster profile are deployed. The challenge, however, is when particular resources are in use.
+
+The second option is to use `kubectl` to scale the resource count to 0. While deleting the resource using something like
+K9s is possible, Palette will recreate it immediately.
+
+### Limitations
+
+:::warning
+
+Once you upgrade your cluster to a new Kubernetes version, you will not be able to downgrade. We recommend that, before
+upgrading, you review the information provided in the
+[Kubernetes Upgrades](../../integrations/kubernetes-support.md#kubernetes-upgrades) section.
+
+:::
+
+- You cannot update a cluster while its status is still **Provisioning**.
+
+- You cannot change the Container Network Interface (CNI) of an Edge cluster. You must delete and re-create the cluster
+  instead. For more information about creating an Edge cluster, refer to
+  [Create Cluster Definition](../edge/site-deployment/cluster-deployment.md).
+
+- Avoid skipping minor versions when upgrading the Kubernetes version of a cluster. Refer to the documentation of your
+  Kubernetes distribution for upgrade guidance and follow the recommended upgrade paths.
+
+  - For PXK and PXK-E, refer to
+    [Upgrade Kubeadm Clusters](https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-upgrade/).
+  - For K3s, refer to [K3s Upgrades](https://docs.k3s.io/upgrades#version-specific-caveats)
+  - For RKE2, refer to [RKE2 Manual Upgrades](https://docs.rke2.io/upgrades/manual_upgrade)
+
+### Prerequisites
+
+- An active Kubernetes cluster in Palette.
+- A terminal client
+
+### Enablement
+
+The steps below show how we can use the second option while deploying the Hello Universe application pack and updating
+the cluster profile. In this example, we create an AWS cluster called cluster-update-deletion. We will use Palette and a
+terminal application.
+
+1. Log into Palette and create a cluster profile with two versions. The base layers should be ubuntu-aws, Kubernetes,
+   cni-calico, and csi-aws-ebs. The App Services layer will use the Hello Universe from the Palette Community Registry
+   (OCI).
+
+   The first profile version (1.0.0) should be the Hello Universe 1.2.0 pack with the API disabled.
+
+   The second version (1.1.0) should be the Hello Universe 1.2.0 pack with the API enabled.
+
+2. Build a cluster using the profile version 1.0.0 (takes about 15-20 min)
path: docs/docs-content/clusters/cluster-management/cluster-updates.md
user: login: benradstone
body: ```suggestion
1. Log in to Palette and create a cluster profile with two versions for an AWS IaaS cluster that includes the Hello Universe pack. For example:

   **Version 1.0.0**.  
   * OS = **ubuntu-aws**
   * Kubernetes = **kubernetes**
   * Network = **cni-calico**
   * Storage = **csi-aws-ebs**
   * App services = **hellouniverse** with the API preset option disabled.

   **Version 1.1.0**.  
   * OS = **ubuntu-aws**
   * Kubernetes = **kubernetes**
   * Network = **cni-calico**
   * Storage = **csi-aws-ebs**
   * App services = **hellouniverse** with the API preset option enabled.

2. Build a cluster using cluster profile version 1.0.0. This will take 15-20 minutes.

```
created_at: 2025-04-14T13:03:33Z
author_association: CONTRIBUTOR
diff_hunk: @@ -140,3 +142,109 @@ You can follow these steps to validate all cluster update approaches.
 3. Select the cluster you updated, and navigate to the **Profile** tab of the cluster.
 
 4. Confirm that the cluster is now using an updated profile.
+
+## Palette Reconciliation Behavior
+
+When cluster profile updates are applied, Palette will apply the changes to the cluster but will not delete any
+resources that are no longer in use. This may be appropriate in some instances, but removing those resources will be
+necessary in others. This can be achieved by utilizing one of the two following methods.
+
+The first would be to utilize a clean deployment with a new cluster profile. The previous version could be deleted once
+the new cluster and cluster profile are deployed. The challenge, however, is when particular resources are in use.
+
+The second option is to use `kubectl` to scale the resource count to 0. While deleting the resource using something like
+K9s is possible, Palette will recreate it immediately.
+
+### Limitations
+
+:::warning
+
+Once you upgrade your cluster to a new Kubernetes version, you will not be able to downgrade. We recommend that, before
+upgrading, you review the information provided in the
+[Kubernetes Upgrades](../../integrations/kubernetes-support.md#kubernetes-upgrades) section.
+
+:::
+
+- You cannot update a cluster while its status is still **Provisioning**.
+
+- You cannot change the Container Network Interface (CNI) of an Edge cluster. You must delete and re-create the cluster
+  instead. For more information about creating an Edge cluster, refer to
+  [Create Cluster Definition](../edge/site-deployment/cluster-deployment.md).
+
+- Avoid skipping minor versions when upgrading the Kubernetes version of a cluster. Refer to the documentation of your
+  Kubernetes distribution for upgrade guidance and follow the recommended upgrade paths.
+
+  - For PXK and PXK-E, refer to
+    [Upgrade Kubeadm Clusters](https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-upgrade/).
+  - For K3s, refer to [K3s Upgrades](https://docs.k3s.io/upgrades#version-specific-caveats)
+  - For RKE2, refer to [RKE2 Manual Upgrades](https://docs.rke2.io/upgrades/manual_upgrade)
+
+### Prerequisites
+
+- An active Kubernetes cluster in Palette.
+- A terminal client
+
+### Enablement
+
+The steps below show how we can use the second option while deploying the Hello Universe application pack and updating
+the cluster profile. In this example, we create an AWS cluster called cluster-update-deletion. We will use Palette and a
+terminal application.
+
+1. Log into Palette and create a cluster profile with two versions. The base layers should be ubuntu-aws, Kubernetes,
+   cni-calico, and csi-aws-ebs. The App Services layer will use the Hello Universe from the Palette Community Registry
+   (OCI).
+
+   The first profile version (1.0.0) should be the Hello Universe 1.2.0 pack with the API disabled.
+
+   The second version (1.1.0) should be the Hello Universe 1.2.0 pack with the API enabled.
+
+2. Build a cluster using the profile version 1.0.0 (takes about 15-20 min)
+3. Download the Admin kubeconfig file from the cluster Overview.
+
+   Sample output
+
+![How to download Admin kubeconfig file from Palette](/clusters_management_updates_kubeconfig-download.webp)
path: docs/docs-content/clusters/cluster-management/cluster-updates.md
user: login: benradstone
body: Instead of providing a screenshot, it would be better to direct the users to the right page or reference an existing documentation article that guides users about it.

For example:
https://docs.spectrocloud.com/clusters/cluster-management/kubeconfig/

```
3. Download the Admin [kubeconfig](./kubeconfig.md) file from the cluster **Overview** tab.
```
created_at: 2025-04-14T13:07:20Z
author_association: CONTRIBUTOR
diff_hunk: @@ -140,3 +142,109 @@ You can follow these steps to validate all cluster update approaches.
 3. Select the cluster you updated, and navigate to the **Profile** tab of the cluster.
 
 4. Confirm that the cluster is now using an updated profile.
+
+## Palette Reconciliation Behavior
+
+When cluster profile updates are applied, Palette will apply the changes to the cluster but will not delete any
+resources that are no longer in use. This may be appropriate in some instances, but removing those resources will be
+necessary in others. This can be achieved by utilizing one of the two following methods.
+
+The first would be to utilize a clean deployment with a new cluster profile. The previous version could be deleted once
+the new cluster and cluster profile are deployed. The challenge, however, is when particular resources are in use.
+
+The second option is to use `kubectl` to scale the resource count to 0. While deleting the resource using something like
+K9s is possible, Palette will recreate it immediately.
+
+### Limitations
+
+:::warning
+
+Once you upgrade your cluster to a new Kubernetes version, you will not be able to downgrade. We recommend that, before
+upgrading, you review the information provided in the
+[Kubernetes Upgrades](../../integrations/kubernetes-support.md#kubernetes-upgrades) section.
+
+:::
+
+- You cannot update a cluster while its status is still **Provisioning**.
+
+- You cannot change the Container Network Interface (CNI) of an Edge cluster. You must delete and re-create the cluster
+  instead. For more information about creating an Edge cluster, refer to
+  [Create Cluster Definition](../edge/site-deployment/cluster-deployment.md).
+
+- Avoid skipping minor versions when upgrading the Kubernetes version of a cluster. Refer to the documentation of your
+  Kubernetes distribution for upgrade guidance and follow the recommended upgrade paths.
+
+  - For PXK and PXK-E, refer to
+    [Upgrade Kubeadm Clusters](https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-upgrade/).
+  - For K3s, refer to [K3s Upgrades](https://docs.k3s.io/upgrades#version-specific-caveats)
+  - For RKE2, refer to [RKE2 Manual Upgrades](https://docs.rke2.io/upgrades/manual_upgrade)
+
+### Prerequisites
+
+- An active Kubernetes cluster in Palette.
+- A terminal client
+
+### Enablement
+
+The steps below show how we can use the second option while deploying the Hello Universe application pack and updating
+the cluster profile. In this example, we create an AWS cluster called cluster-update-deletion. We will use Palette and a
+terminal application.
+
+1. Log into Palette and create a cluster profile with two versions. The base layers should be ubuntu-aws, Kubernetes,
+   cni-calico, and csi-aws-ebs. The App Services layer will use the Hello Universe from the Palette Community Registry
+   (OCI).
+
+   The first profile version (1.0.0) should be the Hello Universe 1.2.0 pack with the API disabled.
+
+   The second version (1.1.0) should be the Hello Universe 1.2.0 pack with the API enabled.
+
+2. Build a cluster using the profile version 1.0.0 (takes about 15-20 min)
+3. Download the Admin kubeconfig file from the cluster Overview.
+
+   Sample output
+
+![How to download Admin kubeconfig file from Palette](/clusters_management_updates_kubeconfig-download.webp)
+
+4. Go your terminal application and run the following command
+
+`kubectl get pods --kubeconfig=admin.cluster-update-deletion.kubeconfig --namespace=hello-universe -o=custom-columns="POD_NAME:.metadata.name,CONTAINER_NAME:.status.containerStatuses[].name,CONTAINER_ID:.status.containerStatuses[].containerID"`
path: docs/docs-content/clusters/cluster-management/cluster-updates.md
user: login: benradstone
body: ````suggestion
4. Go to your terminal application and run the following command.

   ```shell
   kubectl get pods --kubeconfig=admin.cluster-update-deletion.kubeconfig --namespace=hello-universe -o=custom-columns="POD_NAME:.metadata.name,CONTAINER_NAME:.status.containerStatuses[].name,CONTAINER_ID:.status.containerStatuses[].containerID"
   ```
````
created_at: 2025-04-14T13:16:04Z
author_association: CONTRIBUTOR
diff_hunk: @@ -140,3 +142,109 @@ You can follow these steps to validate all cluster update approaches.
 3. Select the cluster you updated, and navigate to the **Profile** tab of the cluster.
 
 4. Confirm that the cluster is now using an updated profile.
+
+## Palette Reconciliation Behavior
+
+When cluster profile updates are applied, Palette will apply the changes to the cluster but will not delete any
+resources that are no longer in use. This may be appropriate in some instances, but removing those resources will be
+necessary in others. This can be achieved by utilizing one of the two following methods.
+
+The first would be to utilize a clean deployment with a new cluster profile. The previous version could be deleted once
+the new cluster and cluster profile are deployed. The challenge, however, is when particular resources are in use.
+
+The second option is to use `kubectl` to scale the resource count to 0. While deleting the resource using something like
+K9s is possible, Palette will recreate it immediately.
+
+### Limitations
+
+:::warning
+
+Once you upgrade your cluster to a new Kubernetes version, you will not be able to downgrade. We recommend that, before
+upgrading, you review the information provided in the
+[Kubernetes Upgrades](../../integrations/kubernetes-support.md#kubernetes-upgrades) section.
+
+:::
+
+- You cannot update a cluster while its status is still **Provisioning**.
+
+- You cannot change the Container Network Interface (CNI) of an Edge cluster. You must delete and re-create the cluster
+  instead. For more information about creating an Edge cluster, refer to
+  [Create Cluster Definition](../edge/site-deployment/cluster-deployment.md).
+
+- Avoid skipping minor versions when upgrading the Kubernetes version of a cluster. Refer to the documentation of your
+  Kubernetes distribution for upgrade guidance and follow the recommended upgrade paths.
+
+  - For PXK and PXK-E, refer to
+    [Upgrade Kubeadm Clusters](https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-upgrade/).
+  - For K3s, refer to [K3s Upgrades](https://docs.k3s.io/upgrades#version-specific-caveats)
+  - For RKE2, refer to [RKE2 Manual Upgrades](https://docs.rke2.io/upgrades/manual_upgrade)
+
+### Prerequisites
+
+- An active Kubernetes cluster in Palette.
+- A terminal client
+
+### Enablement
+
+The steps below show how we can use the second option while deploying the Hello Universe application pack and updating
+the cluster profile. In this example, we create an AWS cluster called cluster-update-deletion. We will use Palette and a
+terminal application.
+
+1. Log into Palette and create a cluster profile with two versions. The base layers should be ubuntu-aws, Kubernetes,
+   cni-calico, and csi-aws-ebs. The App Services layer will use the Hello Universe from the Palette Community Registry
+   (OCI).
+
+   The first profile version (1.0.0) should be the Hello Universe 1.2.0 pack with the API disabled.
+
+   The second version (1.1.0) should be the Hello Universe 1.2.0 pack with the API enabled.
+
+2. Build a cluster using the profile version 1.0.0 (takes about 15-20 min)
+3. Download the Admin kubeconfig file from the cluster Overview.
+
+   Sample output
+
+![How to download Admin kubeconfig file from Palette](/clusters_management_updates_kubeconfig-download.webp)
+
+4. Go your terminal application and run the following command
+
+`kubectl get pods --kubeconfig=admin.cluster-update-deletion.kubeconfig --namespace=hello-universe -o=custom-columns="POD_NAME:.metadata.name,CONTAINER_NAME:.status.containerStatuses[].name,CONTAINER_ID:.status.containerStatuses[].containerID"`
path: docs/docs-content/clusters/cluster-management/cluster-updates.md
user: login: benradstone
body: Identation and moving to a code block for the command so that users can copy it to their clipboard from our docs.
created_at: 2025-04-14T13:17:14Z
author_association: CONTRIBUTOR
diff_hunk: @@ -140,3 +142,109 @@ You can follow these steps to validate all cluster update approaches.
 3. Select the cluster you updated, and navigate to the **Profile** tab of the cluster.
 
 4. Confirm that the cluster is now using an updated profile.
+
+## Palette Reconciliation Behavior
+
+When cluster profile updates are applied, Palette will apply the changes to the cluster but will not delete any
+resources that are no longer in use. This may be appropriate in some instances, but removing those resources will be
+necessary in others. This can be achieved by utilizing one of the two following methods.
+
+The first would be to utilize a clean deployment with a new cluster profile. The previous version could be deleted once
+the new cluster and cluster profile are deployed. The challenge, however, is when particular resources are in use.
+
+The second option is to use `kubectl` to scale the resource count to 0. While deleting the resource using something like
+K9s is possible, Palette will recreate it immediately.
+
+### Limitations
+
+:::warning
+
+Once you upgrade your cluster to a new Kubernetes version, you will not be able to downgrade. We recommend that, before
+upgrading, you review the information provided in the
+[Kubernetes Upgrades](../../integrations/kubernetes-support.md#kubernetes-upgrades) section.
+
+:::
+
+- You cannot update a cluster while its status is still **Provisioning**.
+
+- You cannot change the Container Network Interface (CNI) of an Edge cluster. You must delete and re-create the cluster
+  instead. For more information about creating an Edge cluster, refer to
+  [Create Cluster Definition](../edge/site-deployment/cluster-deployment.md).
+
+- Avoid skipping minor versions when upgrading the Kubernetes version of a cluster. Refer to the documentation of your
+  Kubernetes distribution for upgrade guidance and follow the recommended upgrade paths.
+
+  - For PXK and PXK-E, refer to
+    [Upgrade Kubeadm Clusters](https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-upgrade/).
+  - For K3s, refer to [K3s Upgrades](https://docs.k3s.io/upgrades#version-specific-caveats)
+  - For RKE2, refer to [RKE2 Manual Upgrades](https://docs.rke2.io/upgrades/manual_upgrade)
+
+### Prerequisites
+
+- An active Kubernetes cluster in Palette.
+- A terminal client
+
+### Enablement
+
+The steps below show how we can use the second option while deploying the Hello Universe application pack and updating
+the cluster profile. In this example, we create an AWS cluster called cluster-update-deletion. We will use Palette and a
+terminal application.
+
+1. Log into Palette and create a cluster profile with two versions. The base layers should be ubuntu-aws, Kubernetes,
+   cni-calico, and csi-aws-ebs. The App Services layer will use the Hello Universe from the Palette Community Registry
+   (OCI).
+
+   The first profile version (1.0.0) should be the Hello Universe 1.2.0 pack with the API disabled.
+
+   The second version (1.1.0) should be the Hello Universe 1.2.0 pack with the API enabled.
+
+2. Build a cluster using the profile version 1.0.0 (takes about 15-20 min)
+3. Download the Admin kubeconfig file from the cluster Overview.
+
+   Sample output
+
+![How to download Admin kubeconfig file from Palette](/clusters_management_updates_kubeconfig-download.webp)
+
+4. Go your terminal application and run the following command
+
+`kubectl get pods --kubeconfig=admin.cluster-update-deletion.kubeconfig --namespace=hello-universe -o=custom-columns="POD_NAME:.metadata.name,CONTAINER_NAME:.status.containerStatuses[].name,CONTAINER_ID:.status.containerStatuses[].containerID"`
+
+5. This command will display the containers in the cluster that are in the hello universe namespace. It will include the
+   pod name, container name, and container ID. You can use these identifiers with various `kubectl` options.
+
+Sample output
+
+![Using kubectl to see what containers are running](/clusters_management_updates_kubectl-noapi-hellouniverse.webp)
path: docs/docs-content/clusters/cluster-management/cluster-updates.md
user: login: benradstone
body: We always copy code sample outputs directly from our terminal and put them into code blocks within our docs, rather than screenshots of terminals.

For example:

````
```shell hideClipboard title="Sample output"
Terminal output goes here.
```
````
created_at: 2025-04-14T13:18:36Z
author_association: CONTRIBUTOR
diff_hunk: @@ -140,3 +142,109 @@ You can follow these steps to validate all cluster update approaches.
 3. Select the cluster you updated, and navigate to the **Profile** tab of the cluster.
 
 4. Confirm that the cluster is now using an updated profile.
+
+## Palette Reconciliation Behavior
+
+When cluster profile updates are applied, Palette will apply the changes to the cluster but will not delete any
+resources that are no longer in use. This may be appropriate in some instances, but removing those resources will be
+necessary in others. This can be achieved by utilizing one of the two following methods.
+
+The first would be to utilize a clean deployment with a new cluster profile. The previous version could be deleted once
+the new cluster and cluster profile are deployed. The challenge, however, is when particular resources are in use.
+
+The second option is to use `kubectl` to scale the resource count to 0. While deleting the resource using something like
+K9s is possible, Palette will recreate it immediately.
+
+### Limitations
+
+:::warning
+
+Once you upgrade your cluster to a new Kubernetes version, you will not be able to downgrade. We recommend that, before
+upgrading, you review the information provided in the
+[Kubernetes Upgrades](../../integrations/kubernetes-support.md#kubernetes-upgrades) section.
+
+:::
+
+- You cannot update a cluster while its status is still **Provisioning**.
+
+- You cannot change the Container Network Interface (CNI) of an Edge cluster. You must delete and re-create the cluster
+  instead. For more information about creating an Edge cluster, refer to
+  [Create Cluster Definition](../edge/site-deployment/cluster-deployment.md).
+
+- Avoid skipping minor versions when upgrading the Kubernetes version of a cluster. Refer to the documentation of your
+  Kubernetes distribution for upgrade guidance and follow the recommended upgrade paths.
+
+  - For PXK and PXK-E, refer to
+    [Upgrade Kubeadm Clusters](https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-upgrade/).
+  - For K3s, refer to [K3s Upgrades](https://docs.k3s.io/upgrades#version-specific-caveats)
+  - For RKE2, refer to [RKE2 Manual Upgrades](https://docs.rke2.io/upgrades/manual_upgrade)
+
+### Prerequisites
+
+- An active Kubernetes cluster in Palette.
+- A terminal client
+
+### Enablement
+
+The steps below show how we can use the second option while deploying the Hello Universe application pack and updating
+the cluster profile. In this example, we create an AWS cluster called cluster-update-deletion. We will use Palette and a
+terminal application.
+
+1. Log into Palette and create a cluster profile with two versions. The base layers should be ubuntu-aws, Kubernetes,
+   cni-calico, and csi-aws-ebs. The App Services layer will use the Hello Universe from the Palette Community Registry
+   (OCI).
+
+   The first profile version (1.0.0) should be the Hello Universe 1.2.0 pack with the API disabled.
+
+   The second version (1.1.0) should be the Hello Universe 1.2.0 pack with the API enabled.
+
+2. Build a cluster using the profile version 1.0.0 (takes about 15-20 min)
+3. Download the Admin kubeconfig file from the cluster Overview.
+
+   Sample output
+
+![How to download Admin kubeconfig file from Palette](/clusters_management_updates_kubeconfig-download.webp)
+
+4. Go your terminal application and run the following command
+
+`kubectl get pods --kubeconfig=admin.cluster-update-deletion.kubeconfig --namespace=hello-universe -o=custom-columns="POD_NAME:.metadata.name,CONTAINER_NAME:.status.containerStatuses[].name,CONTAINER_ID:.status.containerStatuses[].containerID"`
+
+5. This command will display the containers in the cluster that are in the hello universe namespace. It will include the
+   pod name, container name, and container ID. You can use these identifiers with various `kubectl` options.
+
+Sample output
+
+![Using kubectl to see what containers are running](/clusters_management_updates_kubectl-noapi-hellouniverse.webp)
path: docs/docs-content/clusters/cluster-management/cluster-updates.md
user: login: benradstone
body: By also using the `title="Sample output"` bit, it includes a title for the code block, so that you don't have to write "Sample output" in a separate line above.
created_at: 2025-04-14T13:20:11Z
author_association: CONTRIBUTOR
diff_hunk: @@ -140,3 +142,109 @@ You can follow these steps to validate all cluster update approaches.
 3. Select the cluster you updated, and navigate to the **Profile** tab of the cluster.
 
 4. Confirm that the cluster is now using an updated profile.
+
+## Palette Reconciliation Behavior
+
+When cluster profile updates are applied, Palette will apply the changes to the cluster but will not delete any
+resources that are no longer in use. This may be appropriate in some instances, but removing those resources will be
+necessary in others. This can be achieved by utilizing one of the two following methods.
+
+The first would be to utilize a clean deployment with a new cluster profile. The previous version could be deleted once
+the new cluster and cluster profile are deployed. The challenge, however, is when particular resources are in use.
+
+The second option is to use `kubectl` to scale the resource count to 0. While deleting the resource using something like
+K9s is possible, Palette will recreate it immediately.
+
+### Limitations
+
+:::warning
+
+Once you upgrade your cluster to a new Kubernetes version, you will not be able to downgrade. We recommend that, before
+upgrading, you review the information provided in the
+[Kubernetes Upgrades](../../integrations/kubernetes-support.md#kubernetes-upgrades) section.
+
+:::
+
+- You cannot update a cluster while its status is still **Provisioning**.
+
+- You cannot change the Container Network Interface (CNI) of an Edge cluster. You must delete and re-create the cluster
+  instead. For more information about creating an Edge cluster, refer to
+  [Create Cluster Definition](../edge/site-deployment/cluster-deployment.md).
+
+- Avoid skipping minor versions when upgrading the Kubernetes version of a cluster. Refer to the documentation of your
+  Kubernetes distribution for upgrade guidance and follow the recommended upgrade paths.
+
+  - For PXK and PXK-E, refer to
+    [Upgrade Kubeadm Clusters](https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-upgrade/).
+  - For K3s, refer to [K3s Upgrades](https://docs.k3s.io/upgrades#version-specific-caveats)
+  - For RKE2, refer to [RKE2 Manual Upgrades](https://docs.rke2.io/upgrades/manual_upgrade)
+
+### Prerequisites
+
+- An active Kubernetes cluster in Palette.
+- A terminal client
+
+### Enablement
+
+The steps below show how we can use the second option while deploying the Hello Universe application pack and updating
+the cluster profile. In this example, we create an AWS cluster called cluster-update-deletion. We will use Palette and a
+terminal application.
+
+1. Log into Palette and create a cluster profile with two versions. The base layers should be ubuntu-aws, Kubernetes,
+   cni-calico, and csi-aws-ebs. The App Services layer will use the Hello Universe from the Palette Community Registry
+   (OCI).
+
+   The first profile version (1.0.0) should be the Hello Universe 1.2.0 pack with the API disabled.
+
+   The second version (1.1.0) should be the Hello Universe 1.2.0 pack with the API enabled.
+
+2. Build a cluster using the profile version 1.0.0 (takes about 15-20 min)
+3. Download the Admin kubeconfig file from the cluster Overview.
+
+   Sample output
+
+![How to download Admin kubeconfig file from Palette](/clusters_management_updates_kubeconfig-download.webp)
+
+4. Go your terminal application and run the following command
+
+`kubectl get pods --kubeconfig=admin.cluster-update-deletion.kubeconfig --namespace=hello-universe -o=custom-columns="POD_NAME:.metadata.name,CONTAINER_NAME:.status.containerStatuses[].name,CONTAINER_ID:.status.containerStatuses[].containerID"`
+
+5. This command will display the containers in the cluster that are in the hello universe namespace. It will include the
+   pod name, container name, and container ID. You can use these identifiers with various `kubectl` options.
+
+Sample output
+
+![Using kubectl to see what containers are running](/clusters_management_updates_kubectl-noapi-hellouniverse.webp)
+
+6. Return to Palette and update the cluster using the profile version 1.1.0 (takes about 1-2 min).
path: docs/docs-content/clusters/cluster-management/cluster-updates.md
user: login: benradstone
body: ```suggestion
6. Return to Palette and update the cluster using the profile version 1.1.0. This takes around 1-2 minutes.

```
created_at: 2025-04-14T13:20:48Z
author_association: CONTRIBUTOR
diff_hunk: @@ -140,3 +142,109 @@ You can follow these steps to validate all cluster update approaches.
 3. Select the cluster you updated, and navigate to the **Profile** tab of the cluster.
 
 4. Confirm that the cluster is now using an updated profile.
+
+## Palette Reconciliation Behavior
+
+When cluster profile updates are applied, Palette will apply the changes to the cluster but will not delete any
+resources that are no longer in use. This may be appropriate in some instances, but removing those resources will be
+necessary in others. This can be achieved by utilizing one of the two following methods.
+
+The first would be to utilize a clean deployment with a new cluster profile. The previous version could be deleted once
+the new cluster and cluster profile are deployed. The challenge, however, is when particular resources are in use.
+
+The second option is to use `kubectl` to scale the resource count to 0. While deleting the resource using something like
+K9s is possible, Palette will recreate it immediately.
+
+### Limitations
+
+:::warning
+
+Once you upgrade your cluster to a new Kubernetes version, you will not be able to downgrade. We recommend that, before
+upgrading, you review the information provided in the
+[Kubernetes Upgrades](../../integrations/kubernetes-support.md#kubernetes-upgrades) section.
+
+:::
+
+- You cannot update a cluster while its status is still **Provisioning**.
+
+- You cannot change the Container Network Interface (CNI) of an Edge cluster. You must delete and re-create the cluster
+  instead. For more information about creating an Edge cluster, refer to
+  [Create Cluster Definition](../edge/site-deployment/cluster-deployment.md).
+
+- Avoid skipping minor versions when upgrading the Kubernetes version of a cluster. Refer to the documentation of your
+  Kubernetes distribution for upgrade guidance and follow the recommended upgrade paths.
+
+  - For PXK and PXK-E, refer to
+    [Upgrade Kubeadm Clusters](https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-upgrade/).
+  - For K3s, refer to [K3s Upgrades](https://docs.k3s.io/upgrades#version-specific-caveats)
+  - For RKE2, refer to [RKE2 Manual Upgrades](https://docs.rke2.io/upgrades/manual_upgrade)
+
+### Prerequisites
+
+- An active Kubernetes cluster in Palette.
+- A terminal client
+
+### Enablement
+
+The steps below show how we can use the second option while deploying the Hello Universe application pack and updating
+the cluster profile. In this example, we create an AWS cluster called cluster-update-deletion. We will use Palette and a
+terminal application.
+
+1. Log into Palette and create a cluster profile with two versions. The base layers should be ubuntu-aws, Kubernetes,
+   cni-calico, and csi-aws-ebs. The App Services layer will use the Hello Universe from the Palette Community Registry
+   (OCI).
+
+   The first profile version (1.0.0) should be the Hello Universe 1.2.0 pack with the API disabled.
+
+   The second version (1.1.0) should be the Hello Universe 1.2.0 pack with the API enabled.
+
+2. Build a cluster using the profile version 1.0.0 (takes about 15-20 min)
+3. Download the Admin kubeconfig file from the cluster Overview.
+
+   Sample output
+
+![How to download Admin kubeconfig file from Palette](/clusters_management_updates_kubeconfig-download.webp)
+
+4. Go your terminal application and run the following command
+
+`kubectl get pods --kubeconfig=admin.cluster-update-deletion.kubeconfig --namespace=hello-universe -o=custom-columns="POD_NAME:.metadata.name,CONTAINER_NAME:.status.containerStatuses[].name,CONTAINER_ID:.status.containerStatuses[].containerID"`
+
+5. This command will display the containers in the cluster that are in the hello universe namespace. It will include the
+   pod name, container name, and container ID. You can use these identifiers with various `kubectl` options.
+
+Sample output
+
+![Using kubectl to see what containers are running](/clusters_management_updates_kubectl-noapi-hellouniverse.webp)
+
+6. Return to Palette and update the cluster using the profile version 1.1.0 (takes about 1-2 min).
+7. Return to the terminal and run the following command
+
+`kubectl get pods --kubeconfig=admin.cluster-update-deletion.kubeconfig --namespace=hello-universe -o=custom-columns="POD_NAME:.metadata.name,CONTAINER_NAME:.status.containerStatuses[].name,CONTAINER_ID:.status.containerStatuses[].containerID"`
path: docs/docs-content/clusters/cluster-management/cluster-updates.md
user: login: benradstone
body: ````suggestion
7. Return to the terminal and run the following command.

   ```shell
   kubectl get pods --kubeconfig=admin.cluster-update-deletion.kubeconfig --namespace=hello-universe -o=custom-columns="POD_NAME:.metadata.name,CONTAINER_NAME:.status.containerStatuses[].name,CONTAINER_ID:.status.containerStatuses[].containerID"
   ```
````
created_at: 2025-04-14T13:21:29Z
author_association: CONTRIBUTOR
diff_hunk: @@ -140,3 +142,109 @@ You can follow these steps to validate all cluster update approaches.
 3. Select the cluster you updated, and navigate to the **Profile** tab of the cluster.
 
 4. Confirm that the cluster is now using an updated profile.
+
+## Palette Reconciliation Behavior
+
+When cluster profile updates are applied, Palette will apply the changes to the cluster but will not delete any
+resources that are no longer in use. This may be appropriate in some instances, but removing those resources will be
+necessary in others. This can be achieved by utilizing one of the two following methods.
+
+The first would be to utilize a clean deployment with a new cluster profile. The previous version could be deleted once
+the new cluster and cluster profile are deployed. The challenge, however, is when particular resources are in use.
+
+The second option is to use `kubectl` to scale the resource count to 0. While deleting the resource using something like
+K9s is possible, Palette will recreate it immediately.
+
+### Limitations
+
+:::warning
+
+Once you upgrade your cluster to a new Kubernetes version, you will not be able to downgrade. We recommend that, before
+upgrading, you review the information provided in the
+[Kubernetes Upgrades](../../integrations/kubernetes-support.md#kubernetes-upgrades) section.
+
+:::
+
+- You cannot update a cluster while its status is still **Provisioning**.
+
+- You cannot change the Container Network Interface (CNI) of an Edge cluster. You must delete and re-create the cluster
+  instead. For more information about creating an Edge cluster, refer to
+  [Create Cluster Definition](../edge/site-deployment/cluster-deployment.md).
+
+- Avoid skipping minor versions when upgrading the Kubernetes version of a cluster. Refer to the documentation of your
+  Kubernetes distribution for upgrade guidance and follow the recommended upgrade paths.
+
+  - For PXK and PXK-E, refer to
+    [Upgrade Kubeadm Clusters](https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-upgrade/).
+  - For K3s, refer to [K3s Upgrades](https://docs.k3s.io/upgrades#version-specific-caveats)
+  - For RKE2, refer to [RKE2 Manual Upgrades](https://docs.rke2.io/upgrades/manual_upgrade)
+
+### Prerequisites
+
+- An active Kubernetes cluster in Palette.
+- A terminal client
+
+### Enablement
+
+The steps below show how we can use the second option while deploying the Hello Universe application pack and updating
+the cluster profile. In this example, we create an AWS cluster called cluster-update-deletion. We will use Palette and a
+terminal application.
+
+1. Log into Palette and create a cluster profile with two versions. The base layers should be ubuntu-aws, Kubernetes,
+   cni-calico, and csi-aws-ebs. The App Services layer will use the Hello Universe from the Palette Community Registry
+   (OCI).
+
+   The first profile version (1.0.0) should be the Hello Universe 1.2.0 pack with the API disabled.
+
+   The second version (1.1.0) should be the Hello Universe 1.2.0 pack with the API enabled.
+
+2. Build a cluster using the profile version 1.0.0 (takes about 15-20 min)
+3. Download the Admin kubeconfig file from the cluster Overview.
+
+   Sample output
+
+![How to download Admin kubeconfig file from Palette](/clusters_management_updates_kubeconfig-download.webp)
+
+4. Go your terminal application and run the following command
+
+`kubectl get pods --kubeconfig=admin.cluster-update-deletion.kubeconfig --namespace=hello-universe -o=custom-columns="POD_NAME:.metadata.name,CONTAINER_NAME:.status.containerStatuses[].name,CONTAINER_ID:.status.containerStatuses[].containerID"`
+
+5. This command will display the containers in the cluster that are in the hello universe namespace. It will include the
+   pod name, container name, and container ID. You can use these identifiers with various `kubectl` options.
+
+Sample output
+
+![Using kubectl to see what containers are running](/clusters_management_updates_kubectl-noapi-hellouniverse.webp)
+
+6. Return to Palette and update the cluster using the profile version 1.1.0 (takes about 1-2 min).
+7. Return to the terminal and run the following command
+
+`kubectl get pods --kubeconfig=admin.cluster-update-deletion.kubeconfig --namespace=hello-universe -o=custom-columns="POD_NAME:.metadata.name,CONTAINER_NAME:.status.containerStatuses[].name,CONTAINER_ID:.status.containerStatuses[].containerID"`
+
+Sample output
+
+![Using kubectl to see what containers are running in the updated cluster](/clusters_management_updates_kubectl-api-hellouniverse.webp)
path: docs/docs-content/clusters/cluster-management/cluster-updates.md
user: login: benradstone
body: As mentioned in the previous comment above, you should copy the sample output to a code block rather than a screenshot.
created_at: 2025-04-14T13:22:33Z
author_association: CONTRIBUTOR
diff_hunk: @@ -140,3 +142,109 @@ You can follow these steps to validate all cluster update approaches.
 3. Select the cluster you updated, and navigate to the **Profile** tab of the cluster.
 
 4. Confirm that the cluster is now using an updated profile.
+
+## Palette Reconciliation Behavior
+
+When cluster profile updates are applied, Palette will apply the changes to the cluster but will not delete any
+resources that are no longer in use. This may be appropriate in some instances, but removing those resources will be
+necessary in others. This can be achieved by utilizing one of the two following methods.
+
+The first would be to utilize a clean deployment with a new cluster profile. The previous version could be deleted once
+the new cluster and cluster profile are deployed. The challenge, however, is when particular resources are in use.
+
+The second option is to use `kubectl` to scale the resource count to 0. While deleting the resource using something like
+K9s is possible, Palette will recreate it immediately.
+
+### Limitations
+
+:::warning
+
+Once you upgrade your cluster to a new Kubernetes version, you will not be able to downgrade. We recommend that, before
+upgrading, you review the information provided in the
+[Kubernetes Upgrades](../../integrations/kubernetes-support.md#kubernetes-upgrades) section.
+
+:::
+
+- You cannot update a cluster while its status is still **Provisioning**.
+
+- You cannot change the Container Network Interface (CNI) of an Edge cluster. You must delete and re-create the cluster
+  instead. For more information about creating an Edge cluster, refer to
+  [Create Cluster Definition](../edge/site-deployment/cluster-deployment.md).
+
+- Avoid skipping minor versions when upgrading the Kubernetes version of a cluster. Refer to the documentation of your
+  Kubernetes distribution for upgrade guidance and follow the recommended upgrade paths.
+
+  - For PXK and PXK-E, refer to
+    [Upgrade Kubeadm Clusters](https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-upgrade/).
+  - For K3s, refer to [K3s Upgrades](https://docs.k3s.io/upgrades#version-specific-caveats)
+  - For RKE2, refer to [RKE2 Manual Upgrades](https://docs.rke2.io/upgrades/manual_upgrade)
+
+### Prerequisites
+
+- An active Kubernetes cluster in Palette.
+- A terminal client
+
+### Enablement
+
+The steps below show how we can use the second option while deploying the Hello Universe application pack and updating
+the cluster profile. In this example, we create an AWS cluster called cluster-update-deletion. We will use Palette and a
+terminal application.
+
+1. Log into Palette and create a cluster profile with two versions. The base layers should be ubuntu-aws, Kubernetes,
+   cni-calico, and csi-aws-ebs. The App Services layer will use the Hello Universe from the Palette Community Registry
+   (OCI).
+
+   The first profile version (1.0.0) should be the Hello Universe 1.2.0 pack with the API disabled.
+
+   The second version (1.1.0) should be the Hello Universe 1.2.0 pack with the API enabled.
+
+2. Build a cluster using the profile version 1.0.0 (takes about 15-20 min)
+3. Download the Admin kubeconfig file from the cluster Overview.
+
+   Sample output
+
+![How to download Admin kubeconfig file from Palette](/clusters_management_updates_kubeconfig-download.webp)
+
+4. Go your terminal application and run the following command
+
+`kubectl get pods --kubeconfig=admin.cluster-update-deletion.kubeconfig --namespace=hello-universe -o=custom-columns="POD_NAME:.metadata.name,CONTAINER_NAME:.status.containerStatuses[].name,CONTAINER_ID:.status.containerStatuses[].containerID"`
+
+5. This command will display the containers in the cluster that are in the hello universe namespace. It will include the
+   pod name, container name, and container ID. You can use these identifiers with various `kubectl` options.
+
+Sample output
+
+![Using kubectl to see what containers are running](/clusters_management_updates_kubectl-noapi-hellouniverse.webp)
+
+6. Return to Palette and update the cluster using the profile version 1.1.0 (takes about 1-2 min).
+7. Return to the terminal and run the following command
+
+`kubectl get pods --kubeconfig=admin.cluster-update-deletion.kubeconfig --namespace=hello-universe -o=custom-columns="POD_NAME:.metadata.name,CONTAINER_NAME:.status.containerStatuses[].name,CONTAINER_ID:.status.containerStatuses[].containerID"`
+
+Sample output
+
+![Using kubectl to see what containers are running in the updated cluster](/clusters_management_updates_kubectl-api-hellouniverse.webp)
+
+With the cluster updated, we can see that the previous version of the Hello Universe app remains. This container,
+however, is not used with the API version and is no longer needed.
path: docs/docs-content/clusters/cluster-management/cluster-updates.md
user: login: benradstone
body: ```suggestion
   With the cluster updated, we can see that the previous version of the Hello Universe app remains. This container,
   however, is not used with the API version and is no longer needed.
```
created_at: 2025-04-14T13:22:58Z
author_association: CONTRIBUTOR
diff_hunk: @@ -140,3 +142,109 @@ You can follow these steps to validate all cluster update approaches.
 3. Select the cluster you updated, and navigate to the **Profile** tab of the cluster.
 
 4. Confirm that the cluster is now using an updated profile.
+
+## Palette Reconciliation Behavior
+
+When cluster profile updates are applied, Palette will apply the changes to the cluster but will not delete any
+resources that are no longer in use. This may be appropriate in some instances, but removing those resources will be
+necessary in others. This can be achieved by utilizing one of the two following methods.
+
+The first would be to utilize a clean deployment with a new cluster profile. The previous version could be deleted once
+the new cluster and cluster profile are deployed. The challenge, however, is when particular resources are in use.
+
+The second option is to use `kubectl` to scale the resource count to 0. While deleting the resource using something like
+K9s is possible, Palette will recreate it immediately.
+
+### Limitations
+
+:::warning
+
+Once you upgrade your cluster to a new Kubernetes version, you will not be able to downgrade. We recommend that, before
+upgrading, you review the information provided in the
+[Kubernetes Upgrades](../../integrations/kubernetes-support.md#kubernetes-upgrades) section.
+
+:::
+
+- You cannot update a cluster while its status is still **Provisioning**.
+
+- You cannot change the Container Network Interface (CNI) of an Edge cluster. You must delete and re-create the cluster
+  instead. For more information about creating an Edge cluster, refer to
+  [Create Cluster Definition](../edge/site-deployment/cluster-deployment.md).
+
+- Avoid skipping minor versions when upgrading the Kubernetes version of a cluster. Refer to the documentation of your
+  Kubernetes distribution for upgrade guidance and follow the recommended upgrade paths.
+
+  - For PXK and PXK-E, refer to
+    [Upgrade Kubeadm Clusters](https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-upgrade/).
+  - For K3s, refer to [K3s Upgrades](https://docs.k3s.io/upgrades#version-specific-caveats)
+  - For RKE2, refer to [RKE2 Manual Upgrades](https://docs.rke2.io/upgrades/manual_upgrade)
+
+### Prerequisites
+
+- An active Kubernetes cluster in Palette.
+- A terminal client
+
+### Enablement
+
+The steps below show how we can use the second option while deploying the Hello Universe application pack and updating
+the cluster profile. In this example, we create an AWS cluster called cluster-update-deletion. We will use Palette and a
+terminal application.
+
+1. Log into Palette and create a cluster profile with two versions. The base layers should be ubuntu-aws, Kubernetes,
+   cni-calico, and csi-aws-ebs. The App Services layer will use the Hello Universe from the Palette Community Registry
+   (OCI).
+
+   The first profile version (1.0.0) should be the Hello Universe 1.2.0 pack with the API disabled.
+
+   The second version (1.1.0) should be the Hello Universe 1.2.0 pack with the API enabled.
+
+2. Build a cluster using the profile version 1.0.0 (takes about 15-20 min)
+3. Download the Admin kubeconfig file from the cluster Overview.
+
+   Sample output
+
+![How to download Admin kubeconfig file from Palette](/clusters_management_updates_kubeconfig-download.webp)
+
+4. Go your terminal application and run the following command
+
+`kubectl get pods --kubeconfig=admin.cluster-update-deletion.kubeconfig --namespace=hello-universe -o=custom-columns="POD_NAME:.metadata.name,CONTAINER_NAME:.status.containerStatuses[].name,CONTAINER_ID:.status.containerStatuses[].containerID"`
+
+5. This command will display the containers in the cluster that are in the hello universe namespace. It will include the
+   pod name, container name, and container ID. You can use these identifiers with various `kubectl` options.
+
+Sample output
+
+![Using kubectl to see what containers are running](/clusters_management_updates_kubectl-noapi-hellouniverse.webp)
+
+6. Return to Palette and update the cluster using the profile version 1.1.0 (takes about 1-2 min).
+7. Return to the terminal and run the following command
+
+`kubectl get pods --kubeconfig=admin.cluster-update-deletion.kubeconfig --namespace=hello-universe -o=custom-columns="POD_NAME:.metadata.name,CONTAINER_NAME:.status.containerStatuses[].name,CONTAINER_ID:.status.containerStatuses[].containerID"`
+
+Sample output
+
+![Using kubectl to see what containers are running in the updated cluster](/clusters_management_updates_kubectl-api-hellouniverse.webp)
+
+With the cluster updated, we can see that the previous version of the Hello Universe app remains. This container,
+however, is not used with the API version and is no longer needed.
path: docs/docs-content/clusters/cluster-management/cluster-updates.md
user: login: benradstone
body: The content within a numbered step must be indented otherwise it will be rendered outside of the numbered step.
created_at: 2025-04-14T13:24:04Z
author_association: CONTRIBUTOR
diff_hunk: @@ -140,3 +142,109 @@ You can follow these steps to validate all cluster update approaches.
 3. Select the cluster you updated, and navigate to the **Profile** tab of the cluster.
 
 4. Confirm that the cluster is now using an updated profile.
+
+## Palette Reconciliation Behavior
+
+When cluster profile updates are applied, Palette will apply the changes to the cluster but will not delete any
+resources that are no longer in use. This may be appropriate in some instances, but removing those resources will be
+necessary in others. This can be achieved by utilizing one of the two following methods.
+
+The first would be to utilize a clean deployment with a new cluster profile. The previous version could be deleted once
+the new cluster and cluster profile are deployed. The challenge, however, is when particular resources are in use.
+
+The second option is to use `kubectl` to scale the resource count to 0. While deleting the resource using something like
+K9s is possible, Palette will recreate it immediately.
+
+### Limitations
+
+:::warning
+
+Once you upgrade your cluster to a new Kubernetes version, you will not be able to downgrade. We recommend that, before
+upgrading, you review the information provided in the
+[Kubernetes Upgrades](../../integrations/kubernetes-support.md#kubernetes-upgrades) section.
+
+:::
+
+- You cannot update a cluster while its status is still **Provisioning**.
+
+- You cannot change the Container Network Interface (CNI) of an Edge cluster. You must delete and re-create the cluster
+  instead. For more information about creating an Edge cluster, refer to
+  [Create Cluster Definition](../edge/site-deployment/cluster-deployment.md).
+
+- Avoid skipping minor versions when upgrading the Kubernetes version of a cluster. Refer to the documentation of your
+  Kubernetes distribution for upgrade guidance and follow the recommended upgrade paths.
+
+  - For PXK and PXK-E, refer to
+    [Upgrade Kubeadm Clusters](https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-upgrade/).
+  - For K3s, refer to [K3s Upgrades](https://docs.k3s.io/upgrades#version-specific-caveats)
+  - For RKE2, refer to [RKE2 Manual Upgrades](https://docs.rke2.io/upgrades/manual_upgrade)
+
+### Prerequisites
+
+- An active Kubernetes cluster in Palette.
+- A terminal client
+
+### Enablement
+
+The steps below show how we can use the second option while deploying the Hello Universe application pack and updating
+the cluster profile. In this example, we create an AWS cluster called cluster-update-deletion. We will use Palette and a
+terminal application.
+
+1. Log into Palette and create a cluster profile with two versions. The base layers should be ubuntu-aws, Kubernetes,
+   cni-calico, and csi-aws-ebs. The App Services layer will use the Hello Universe from the Palette Community Registry
+   (OCI).
+
+   The first profile version (1.0.0) should be the Hello Universe 1.2.0 pack with the API disabled.
+
+   The second version (1.1.0) should be the Hello Universe 1.2.0 pack with the API enabled.
+
+2. Build a cluster using the profile version 1.0.0 (takes about 15-20 min)
+3. Download the Admin kubeconfig file from the cluster Overview.
+
+   Sample output
+
+![How to download Admin kubeconfig file from Palette](/clusters_management_updates_kubeconfig-download.webp)
+
+4. Go your terminal application and run the following command
+
+`kubectl get pods --kubeconfig=admin.cluster-update-deletion.kubeconfig --namespace=hello-universe -o=custom-columns="POD_NAME:.metadata.name,CONTAINER_NAME:.status.containerStatuses[].name,CONTAINER_ID:.status.containerStatuses[].containerID"`
+
+5. This command will display the containers in the cluster that are in the hello universe namespace. It will include the
+   pod name, container name, and container ID. You can use these identifiers with various `kubectl` options.
+
+Sample output
+
+![Using kubectl to see what containers are running](/clusters_management_updates_kubectl-noapi-hellouniverse.webp)
+
+6. Return to Palette and update the cluster using the profile version 1.1.0 (takes about 1-2 min).
+7. Return to the terminal and run the following command
+
+`kubectl get pods --kubeconfig=admin.cluster-update-deletion.kubeconfig --namespace=hello-universe -o=custom-columns="POD_NAME:.metadata.name,CONTAINER_NAME:.status.containerStatuses[].name,CONTAINER_ID:.status.containerStatuses[].containerID"`
+
+Sample output
+
+![Using kubectl to see what containers are running in the updated cluster](/clusters_management_updates_kubectl-api-hellouniverse.webp)
+
+With the cluster updated, we can see that the previous version of the Hello Universe app remains. This container,
+however, is not used with the API version and is no longer needed.
+
+8. Locate the pod name of the container you want to remove and run the following command.
+
+`kubectl scale deployment hello-universe-deployment --replicas=0 hello-universe-deployment-6854947c67-jtlp7 --kubeconfig=cluster-update-deletion.kubeconfig --namespace hello-universe`
+
+Sample output
+
+![Using kubectl to remove resources no longer in use](/clusters_management_updates_kubectl-api-hellouniverse-removed.webp)
path: docs/docs-content/clusters/cluster-management/cluster-updates.md
user: login: benradstone
body: See the above comments to provide a better experience for the user here.
created_at: 2025-04-14T13:24:54Z
author_association: CONTRIBUTOR
diff_hunk: @@ -140,3 +142,112 @@ You can follow these steps to validate all cluster update approaches.
 3. Select the cluster you updated, and navigate to the **Profile** tab of the cluster.
 
 4. Confirm that the cluster is now using an updated profile.
+
+## Palette Reconciliation Behavior
+
+When cluster profile updates are applied, Palette will apply the changes to the cluster but will not delete any
+resources that are no longer in use. Depending on the situation, you can choose to keep or remove these resources. To
+remove the resources, utilize one of the following two methods.
+
+The first method would be a clean deployment with a new cluster profile. Once the new cluster and cluster profile are
+deployed, the previous version could be deleted. The challenge, however, is when particular resources are in use.
+
+The second method is to use `kubectl` to scale the resource count to 0. While deleting the resource using something like
+K9s is possible, Palette will recreate it immediately. Scaling replicas to zero via `kubectl` ensures the resource is
+effectively removed.
+
+This section provides guidance on removing resources using the second method.
+
+This section provides guidance on removing the resources using the second method.
+
+### Prerequisites
+
+- An active Kubernetes cluster in Palette.
+- A terminal client.
+
+### Enablement
+
+The following steps provide an example of how to clean up unneeded resources using `kubectl`. In this example, an AWS
+cluster called **cluster-update-deletion** is created using a cluster profile with the
+
+<VersionedLink text="Hello Universe" url="/integrations/packs/?pack=hello-universe" /> included. The Hello Universe pack
+has the API preset option disabled.
+
+1. Log in to Palette and create a cluster profile with two versions for an AWS IaaS cluster that includes the Hello
+   Universe pack. For example:
+
+   **Version 1.0.0**.
+
+   - OS = **ubuntu-aws**
+   - Kubernetes = **kubernetes**
+   - Network = **cni-calico**
+   - Storage = **csi-aws-ebs**
+   - App services = **hellouniverse** with the API preset option disabled.
+
+   **Version 1.1.0**.
+
+   - OS = **ubuntu-aws**
+   - Kubernetes = **kubernetes**
+   - Network = **cni-calico**
+   - Storage = **csi-aws-ebs**
+   - App services = **hellouniverse** with the API preset option enabled.
+
+2. Build a cluster using cluster profile version 1.0.0. This will take 15-20 minutes.
+
+3. Download the Admin kubeconfig file from the cluster Overview.
+
+   Sample output
+
+![How to download Admin kubeconfig file from Palette](/clusters_management_updates_kubeconfig-download.webp)
+
+4. Go your terminal application and run the following command
+
+```shell
+kubectl get pods --kubeconfig=admin.cluster-update-deletion.kubeconfig --namespace=hello-universe -o=custom-columns="POD_NAME:.metadata.name,CONTAINER_NAME:.status.containerStatuses[].name,CONTAINER_ID:.status.containerStatuses[].containerID"
path: docs/docs-content/clusters/cluster-management/cluster-updates.md
user: login: github-actions[bot]
body: 🚫 **[vale]** <sub>reported by [reviewdog](https://github.com/reviewdog/reviewdog) :dog:</sub><br>[spectrocloud-docs-internal.longform] Avoid using the short form of commands. Replace the short form flag in 'universe -o' with the corresponding long form flag.
created_at: 2025-04-14T14:34:27Z
author_association: CONTRIBUTOR
diff_hunk: @@ -140,3 +142,112 @@ You can follow these steps to validate all cluster update approaches.
 3. Select the cluster you updated, and navigate to the **Profile** tab of the cluster.
 
 4. Confirm that the cluster is now using an updated profile.
+
+## Palette Reconciliation Behavior
+
+When cluster profile updates are applied, Palette will apply the changes to the cluster but will not delete any
+resources that are no longer in use. Depending on the situation, you can choose to keep or remove these resources. To
+remove the resources, utilize one of the following two methods.
+
+The first method would be a clean deployment with a new cluster profile. Once the new cluster and cluster profile are
+deployed, the previous version could be deleted. The challenge, however, is when particular resources are in use.
+
+The second method is to use `kubectl` to scale the resource count to 0. While deleting the resource using something like
+K9s is possible, Palette will recreate it immediately. Scaling replicas to zero via `kubectl` ensures the resource is
+effectively removed.
+
+This section provides guidance on removing resources using the second method.
+
+This section provides guidance on removing the resources using the second method.
+
+### Prerequisites
+
+- An active Kubernetes cluster in Palette.
+- A terminal client.
+
+### Enablement
+
+The following steps provide an example of how to clean up unneeded resources using `kubectl`. In this example, an AWS
+cluster called **cluster-update-deletion** is created using a cluster profile with the
+
+<VersionedLink text="Hello Universe" url="/integrations/packs/?pack=hello-universe" /> included. The Hello Universe pack
+has the API preset option disabled.
+
+1. Log in to Palette and create a cluster profile with two versions for an AWS IaaS cluster that includes the Hello
+   Universe pack. For example:
+
+   **Version 1.0.0**.
+
+   - OS = **ubuntu-aws**
+   - Kubernetes = **kubernetes**
+   - Network = **cni-calico**
+   - Storage = **csi-aws-ebs**
+   - App services = **hellouniverse** with the API preset option disabled.
+
+   **Version 1.1.0**.
+
+   - OS = **ubuntu-aws**
+   - Kubernetes = **kubernetes**
+   - Network = **cni-calico**
+   - Storage = **csi-aws-ebs**
+   - App services = **hellouniverse** with the API preset option enabled.
+
+2. Build a cluster using cluster profile version 1.0.0. This will take 15-20 minutes.
+
+3. Download the Admin kubeconfig file from the cluster Overview.
+
+   Sample output
+
+![How to download Admin kubeconfig file from Palette](/clusters_management_updates_kubeconfig-download.webp)
+
+4. Go your terminal application and run the following command
+
+```shell
+kubectl get pods --kubeconfig=admin.cluster-update-deletion.kubeconfig --namespace=hello-universe -o=custom-columns="POD_NAME:.metadata.name,CONTAINER_NAME:.status.containerStatuses[].name,CONTAINER_ID:.status.containerStatuses[].containerID"
+```
+
+5. This command will display the containers in the cluster that are in the hello universe namespace. It will include the
+   pod name, container name, and container ID. You can use these identifiers with various `kubectl` options.
+
+Sample output
+
+![Using kubectl to see what containers are running](/clusters_management_updates_kubectl-noapi-hellouniverse.webp)
+
+6. Return to Palette and update the cluster using the profile version 1.1.0 (takes about 1-2 min).
+7. Return to the terminal and run the following command
+
+```shell 
+kubectl get pods --kubeconfig=admin.cluster-update-deletion.kubeconfig --namespace=hello-universe -o=custom-columns="POD_NAME:.metadata.name,CONTAINER_NAME:.status.containerStatuses[].name,CONTAINER_ID:.status.containerStatuses[].containerID"
path: docs/docs-content/clusters/cluster-management/cluster-updates.md
user: login: github-actions[bot]
body: 🚫 **[vale]** <sub>reported by [reviewdog](https://github.com/reviewdog/reviewdog) :dog:</sub><br>[spectrocloud-docs-internal.longform] Avoid using the short form of commands. Replace the short form flag in 'universe -o' with the corresponding long form flag.
created_at: 2025-04-14T14:34:27Z
author_association: CONTRIBUTOR
diff_hunk: @@ -140,3 +142,112 @@ You can follow these steps to validate all cluster update approaches.
 3. Select the cluster you updated, and navigate to the **Profile** tab of the cluster.
 
 4. Confirm that the cluster is now using an updated profile.
+
+## Palette Reconciliation Behavior
+
+When cluster profile updates are applied, Palette will apply the changes to the cluster but will not delete any
+resources that are no longer in use. Depending on the situation, you can choose to keep or remove these resources. To
+remove the resources, utilize one of the following two methods.
+
+The first method would be a clean deployment with a new cluster profile. Once the new cluster and cluster profile are
+deployed, the previous version could be deleted. The challenge, however, is when particular resources are in use.
+
+The second method is to use `kubectl` to scale the resource count to 0. While deleting the resource using something like
+K9s is possible, Palette will recreate it immediately. Scaling replicas to zero via `kubectl` ensures the resource is
+effectively removed.
+
+This section provides guidance on removing resources using the second method.
+
+This section provides guidance on removing the resources using the second method.
+
+### Prerequisites
+
+- An active Kubernetes cluster in Palette.
+- A terminal client.
+
+### Enablement
+
+The following steps provide an example of how to clean up unneeded resources using `kubectl`. In this example, an AWS
+cluster called **cluster-update-deletion** is created using a cluster profile with the
+
+<VersionedLink text="Hello Universe" url="/integrations/packs/?pack=hello-universe" /> included. The Hello Universe pack
+has the API preset option disabled.
+
+1. Log in to Palette and create a cluster profile with two versions for an AWS IaaS cluster that includes the Hello
+   Universe pack. For example:
+
+   **Version 1.0.0**.
+
+   - OS = **ubuntu-aws**
+   - Kubernetes = **kubernetes**
+   - Network = **cni-calico**
+   - Storage = **csi-aws-ebs**
+   - App services = **hellouniverse** with the API preset option disabled.
+
+   **Version 1.1.0**.
+
+   - OS = **ubuntu-aws**
+   - Kubernetes = **kubernetes**
+   - Network = **cni-calico**
+   - Storage = **csi-aws-ebs**
+   - App services = **hellouniverse** with the API preset option enabled.
+
+2. Build a cluster using cluster profile version 1.0.0. This will take 15-20 minutes.
+
+3. Download the Admin kubeconfig file from the cluster Overview.
+
+   Sample output
+
+![How to download Admin kubeconfig file from Palette](/clusters_management_updates_kubeconfig-download.webp)
+
+4. Go your terminal application and run the following command
+
+```shell
+kubectl get pods --kubeconfig=admin.cluster-update-deletion.kubeconfig --namespace=hello-universe -o=custom-columns="POD_NAME:.metadata.name,CONTAINER_NAME:.status.containerStatuses[].name,CONTAINER_ID:.status.containerStatuses[].containerID"
+```
+
+5. This command will display the containers in the cluster that are in the hello universe namespace. It will include the
+   pod name, container name, and container ID. You can use these identifiers with various `kubectl` options.
+
+Sample output
+
+![Using kubectl to see what containers are running](/clusters_management_updates_kubectl-noapi-hellouniverse.webp)
+
+6. Return to Palette and update the cluster using the profile version 1.1.0 (takes about 1-2 min).
+7. Return to the terminal and run the following command
+
+```shell 
+kubectl get pods --kubeconfig=admin.cluster-update-deletion.kubeconfig --namespace=hello-universe -o=custom-columns="POD_NAME:.metadata.name,CONTAINER_NAME:.status.containerStatuses[].name,CONTAINER_ID:.status.containerStatuses[].containerID"
+```
+
+Sample output
+
+![Using kubectl to see what containers are running in the updated cluster](/clusters_management_updates_kubectl-api-hellouniverse.webp)
+
+  With the cluster updated, we can see that the previous version of the Hello Universe app remains. This container,
path: docs/docs-content/clusters/cluster-management/cluster-updates.md
user: login: github-actions[bot]
body: 🚫 **[vale]** <sub>reported by [reviewdog](https://github.com/reviewdog/reviewdog) :dog:</sub><br>[spectrocloud-docs-internal.ableism] Avoid using ableism terms. Use 'display' instead of 'see'.
created_at: 2025-04-14T14:34:27Z
author_association: CONTRIBUTOR
diff_hunk: @@ -140,3 +142,132 @@ You can follow these steps to validate all cluster update approaches.
 3. Select the cluster you updated, and navigate to the **Profile** tab of the cluster.
 
 4. Confirm that the cluster is now using an updated profile.
+
+## Palette Reconciliation Behavior
+
+When cluster profile updates are applied, Palette will apply the changes to the cluster but will not delete any
+resources that are no longer in use. Depending on the situation, you can choose to keep or remove these resources. To
+remove the resources, utilize one of the following two methods.
+
+The first method would be a clean deployment with a new cluster profile. Once the new cluster and cluster profile are
+deployed, the previous version could be deleted. The challenge, however, is when particular resources are in use.
+
+The second method is to use `kubectl` to scale the resource count to 0. While deleting the resource using something like
+K9s is possible, Palette will recreate it immediately. Scaling replicas to zero via `kubectl` ensures the resource is
+effectively removed.
+
+This section provides guidance on removing resources using the second method.
+
+This section provides guidance on removing the resources using the second method.
+
+### Prerequisites
+
+- An active Kubernetes cluster in Palette.
+- A terminal client.
+
+### Enablement
+
+The following steps provide an example of how to clean up unneeded resources using `kubectl`. In this example, an AWS
+cluster called **cluster-update-deletion** is created using a cluster profile with the [Hello Universe](/integrations/packs/?pack=hello-universe) included. The Hello Universe pack
+has the API preset option disabled.
+
+1. Log in to Palette and create a cluster profile with two versions for an AWS IaaS cluster that includes the Hello
+   Universe pack. For example:
+
+   **Version 1.0.0**.
+
+   - OS = **ubuntu-aws**
+   - Kubernetes = **kubernetes**
+   - Network = **cni-calico**
+   - Storage = **csi-aws-ebs**
+   - App services = **hellouniverse** with the API preset option disabled.
+
+   **Version 1.1.0**.
+
+   - OS = **ubuntu-aws**
+   - Kubernetes = **kubernetes**
+   - Network = **cni-calico**
+   - Storage = **csi-aws-ebs**
+   - App services = **hellouniverse** with the API preset option enabled.
+
+2. Build a cluster using cluster profile version 1.0.0. This will take 15-20 minutes.
+
+3. Download the [Admin kubeconfig](https://docs.spectrocloud.com/clusters/cluster-management/kubeconfig/) file from the cluster **Overview** tab.
+
+4. Go your terminal application and run the following command
+
+  ```shell
+  kubectl get pods --kubeconfig=admin.cluster-update-deletion.kubeconfig --namespace=hello-universe -o=custom-columns="POD_NAME:.metadata.name,CONTAINER_NAME:.status.containerStatuses[].name,CONTAINER_ID:.status.containerStatuses[].containerID"
path: docs/docs-content/clusters/cluster-management/cluster-updates.md
user: login: github-actions[bot]
body: 🚫 **[vale]** <sub>reported by [reviewdog](https://github.com/reviewdog/reviewdog) :dog:</sub><br>[spectrocloud-docs-internal.longform] Avoid using the short form of commands. Replace the short form flag in 'universe -o' with the corresponding long form flag.
created_at: 2025-04-14T15:49:50Z
author_association: CONTRIBUTOR
diff_hunk: @@ -140,3 +142,132 @@ You can follow these steps to validate all cluster update approaches.
 3. Select the cluster you updated, and navigate to the **Profile** tab of the cluster.
 
 4. Confirm that the cluster is now using an updated profile.
+
+## Palette Reconciliation Behavior
+
+When cluster profile updates are applied, Palette will apply the changes to the cluster but will not delete any
+resources that are no longer in use. Depending on the situation, you can choose to keep or remove these resources. To
+remove the resources, utilize one of the following two methods.
+
+The first method would be a clean deployment with a new cluster profile. Once the new cluster and cluster profile are
+deployed, the previous version could be deleted. The challenge, however, is when particular resources are in use.
+
+The second method is to use `kubectl` to scale the resource count to 0. While deleting the resource using something like
+K9s is possible, Palette will recreate it immediately. Scaling replicas to zero via `kubectl` ensures the resource is
+effectively removed.
+
+This section provides guidance on removing resources using the second method.
+
+This section provides guidance on removing the resources using the second method.
+
+### Prerequisites
+
+- An active Kubernetes cluster in Palette.
+- A terminal client.
+
+### Enablement
+
+The following steps provide an example of how to clean up unneeded resources using `kubectl`. In this example, an AWS
+cluster called **cluster-update-deletion** is created using a cluster profile with the [Hello Universe](/integrations/packs/?pack=hello-universe) included. The Hello Universe pack
+has the API preset option disabled.
+
+1. Log in to Palette and create a cluster profile with two versions for an AWS IaaS cluster that includes the Hello
+   Universe pack. For example:
+
+   **Version 1.0.0**.
+
+   - OS = **ubuntu-aws**
+   - Kubernetes = **kubernetes**
+   - Network = **cni-calico**
+   - Storage = **csi-aws-ebs**
+   - App services = **hellouniverse** with the API preset option disabled.
+
+   **Version 1.1.0**.
+
+   - OS = **ubuntu-aws**
+   - Kubernetes = **kubernetes**
+   - Network = **cni-calico**
+   - Storage = **csi-aws-ebs**
+   - App services = **hellouniverse** with the API preset option enabled.
+
+2. Build a cluster using cluster profile version 1.0.0. This will take 15-20 minutes.
+
+3. Download the [Admin kubeconfig](https://docs.spectrocloud.com/clusters/cluster-management/kubeconfig/) file from the cluster **Overview** tab.
+
+4. Go your terminal application and run the following command
+
+  ```shell
+  kubectl get pods --kubeconfig=admin.cluster-update-deletion.kubeconfig --namespace=hello-universe -o=custom-columns="POD_NAME:.metadata.name,CONTAINER_NAME:.status.containerStatuses[].name,CONTAINER_ID:.status.containerStatuses[].containerID"
+  ```
+
+5. This command will display the containers in the cluster that are in the hello universe namespace. It will include the
+   pod name, container name, and container ID. You can use these identifiers with various `kubectl` options.
+
+  Sample output
+
+  ```shell
+  POD_NAME                                     CONTAINER_NAME   CONTAINER_ID
+  hello-universe-deployment-6854947c67-ltdmq   hello-universe   containerd://584f07c2cf2dbb24f62e63be4322d16314d86e496eeb185c5a5944e884744239
+  ```
+
+6. Return to Palette and update the cluster using the profile version 1.1.0. This takes around 1-2 minutes.
+
+7. Return to the terminal and run the following command
path: docs/docs-content/clusters/cluster-management/cluster-updates.md
user: login: github-actions[bot]
body: 🚫 **[vale]** <sub>reported by [reviewdog](https://github.com/reviewdog/reviewdog) :dog:</sub><br>[spectrocloud-docs-internal.ableism] Avoid using ableism terms. Use 'issue' instead of 'run'.
created_at: 2025-04-14T15:49:50Z
author_association: CONTRIBUTOR
diff_hunk: @@ -140,3 +142,132 @@ You can follow these steps to validate all cluster update approaches.
 3. Select the cluster you updated, and navigate to the **Profile** tab of the cluster.
 
 4. Confirm that the cluster is now using an updated profile.
+
+## Palette Reconciliation Behavior
+
+When cluster profile updates are applied, Palette will apply the changes to the cluster but will not delete any
+resources that are no longer in use. Depending on the situation, you can choose to keep or remove these resources. To
+remove the resources, utilize one of the following two methods.
+
+The first method would be a clean deployment with a new cluster profile. Once the new cluster and cluster profile are
+deployed, the previous version could be deleted. The challenge, however, is when particular resources are in use.
+
+The second method is to use `kubectl` to scale the resource count to 0. While deleting the resource using something like
+K9s is possible, Palette will recreate it immediately. Scaling replicas to zero via `kubectl` ensures the resource is
+effectively removed.
+
+This section provides guidance on removing resources using the second method.
+
+This section provides guidance on removing the resources using the second method.
+
+### Prerequisites
+
+- An active Kubernetes cluster in Palette.
+- A terminal client.
+
+### Enablement
+
+The following steps provide an example of how to clean up unneeded resources using `kubectl`. In this example, an AWS
+cluster called **cluster-update-deletion** is created using a cluster profile with the [Hello Universe](/integrations/packs/?pack=hello-universe) included. The Hello Universe pack
+has the API preset option disabled.
+
+1. Log in to Palette and create a cluster profile with two versions for an AWS IaaS cluster that includes the Hello
+   Universe pack. For example:
+
+   **Version 1.0.0**.
+
+   - OS = **ubuntu-aws**
+   - Kubernetes = **kubernetes**
+   - Network = **cni-calico**
+   - Storage = **csi-aws-ebs**
+   - App services = **hellouniverse** with the API preset option disabled.
+
+   **Version 1.1.0**.
+
+   - OS = **ubuntu-aws**
+   - Kubernetes = **kubernetes**
+   - Network = **cni-calico**
+   - Storage = **csi-aws-ebs**
+   - App services = **hellouniverse** with the API preset option enabled.
+
+2. Build a cluster using cluster profile version 1.0.0. This will take 15-20 minutes.
+
+3. Download the [Admin kubeconfig](https://docs.spectrocloud.com/clusters/cluster-management/kubeconfig/) file from the cluster **Overview** tab.
+
+4. Go your terminal application and run the following command
+
+  ```shell
+  kubectl get pods --kubeconfig=admin.cluster-update-deletion.kubeconfig --namespace=hello-universe -o=custom-columns="POD_NAME:.metadata.name,CONTAINER_NAME:.status.containerStatuses[].name,CONTAINER_ID:.status.containerStatuses[].containerID"
+  ```
+
+5. This command will display the containers in the cluster that are in the hello universe namespace. It will include the
+   pod name, container name, and container ID. You can use these identifiers with various `kubectl` options.
+
+  Sample output
+
+  ```shell
+  POD_NAME                                     CONTAINER_NAME   CONTAINER_ID
+  hello-universe-deployment-6854947c67-ltdmq   hello-universe   containerd://584f07c2cf2dbb24f62e63be4322d16314d86e496eeb185c5a5944e884744239
+  ```
+
+6. Return to Palette and update the cluster using the profile version 1.1.0. This takes around 1-2 minutes.
+
+7. Return to the terminal and run the following command
+
+<<<<<<< HEAD
+  ```shell 
+  kubectl get pods --kubeconfig=admin.cluster-update-deletion.kubeconfig --namespace=hello-universe -o=custom-columns="POD_NAME:.metadata.name,CONTAINER_NAME:.status.containerStatuses[].name,CONTAINER_ID:.status.containerStatuses[].containerID"
path: docs/docs-content/clusters/cluster-management/cluster-updates.md
user: login: github-actions[bot]
body: 🚫 **[vale]** <sub>reported by [reviewdog](https://github.com/reviewdog/reviewdog) :dog:</sub><br>[spectrocloud-docs-internal.longform] Avoid using the short form of commands. Replace the short form flag in 'universe -o' with the corresponding long form flag.
created_at: 2025-04-14T15:49:50Z
author_association: CONTRIBUTOR
diff_hunk: @@ -140,3 +142,137 @@ You can follow these steps to validate all cluster update approaches.
 3. Select the cluster you updated, and navigate to the **Profile** tab of the cluster.
 
 4. Confirm that the cluster is now using an updated profile.
+
+## Palette Reconciliation Behavior
+
+When cluster profile updates are applied, Palette will apply the changes to the cluster but will not delete any
+resources that are no longer in use. Depending on the situation, you can choose to keep or remove these resources. To
+remove the resources, utilize one of the following two methods.
+
+The first method would be a clean deployment with a new cluster profile. Once the new cluster and cluster profile are
+deployed, the previous version could be deleted. The challenge, however, is when particular resources are in use.
+
+The second method is to use `kubectl` to scale the resource count to 0. While deleting the resource using something like
+K9s is possible, Palette will recreate it immediately. Scaling replicas to zero via `kubectl` ensures the resource is
+effectively removed.
+
+This section provides guidance on removing resources using the second method.
+
+This section provides guidance on removing the resources using the second method.
+
+### Prerequisites
+
+- An active Kubernetes cluster in Palette.
+- A terminal client.
+
+### Enablement
+
+The following steps provide an example of how to clean up unneeded resources using `kubectl`. In this example, an AWS
+cluster called **cluster-update-deletion** is created using a cluster profile with the
+[Hello Universe](/integrations/packs/?pack=hello-universe) included. The Hello Universe pack has the API preset option
+disabled.
+
+1. Log in to Palette and create a cluster profile with two versions for an AWS IaaS cluster that includes the Hello
+   Universe pack. For example:
+
+   **Version 1.0.0**.
+
+   - OS = **ubuntu-aws**
+   - Kubernetes = **kubernetes**
+   - Network = **cni-calico**
+   - Storage = **csi-aws-ebs**
+   - App services = **hellouniverse** with the API preset option disabled.
+
+   **Version 1.1.0**.
+
+   - OS = **ubuntu-aws**
+   - Kubernetes = **kubernetes**
+   - Network = **cni-calico**
+   - Storage = **csi-aws-ebs**
+   - App services = **hellouniverse** with the API preset option enabled.
+
+2. Build a cluster using cluster profile version 1.0.0. This will take 15-20 minutes.
+
+3. Download the [Admin kubeconfig](https://docs.spectrocloud.com/clusters/cluster-management/kubeconfig/) file from the
+   cluster **Overview** tab.
+
+4. Go your terminal application and run the following command
path: docs/docs-content/clusters/cluster-management/cluster-updates.md
user: login: github-actions[bot]
body: 🚫 **[vale]** <sub>reported by [reviewdog](https://github.com/reviewdog/reviewdog) :dog:</sub><br>[spectrocloud-docs-internal.ableism] Avoid using ableism terms. Use 'issue' instead of 'run'.
created_at: 2025-04-14T15:58:32Z
author_association: CONTRIBUTOR
diff_hunk: @@ -140,3 +142,137 @@ You can follow these steps to validate all cluster update approaches.
 3. Select the cluster you updated, and navigate to the **Profile** tab of the cluster.
 
 4. Confirm that the cluster is now using an updated profile.
+
+## Palette Reconciliation Behavior
+
+When cluster profile updates are applied, Palette will apply the changes to the cluster but will not delete any
+resources that are no longer in use. Depending on the situation, you can choose to keep or remove these resources. To
+remove the resources, utilize one of the following two methods.
+
+The first method would be a clean deployment with a new cluster profile. Once the new cluster and cluster profile are
+deployed, the previous version could be deleted. The challenge, however, is when particular resources are in use.
+
+The second method is to use `kubectl` to scale the resource count to 0. While deleting the resource using something like
+K9s is possible, Palette will recreate it immediately. Scaling replicas to zero via `kubectl` ensures the resource is
+effectively removed.
+
+This section provides guidance on removing resources using the second method.
+
+This section provides guidance on removing the resources using the second method.
+
+### Prerequisites
+
+- An active Kubernetes cluster in Palette.
+- A terminal client.
+
+### Enablement
+
+The following steps provide an example of how to clean up unneeded resources using `kubectl`. In this example, an AWS
+cluster called **cluster-update-deletion** is created using a cluster profile with the
+[Hello Universe](/integrations/packs/?pack=hello-universe) included. The Hello Universe pack has the API preset option
+disabled.
+
+1. Log in to Palette and create a cluster profile with two versions for an AWS IaaS cluster that includes the Hello
+   Universe pack. For example:
+
+   **Version 1.0.0**.
+
+   - OS = **ubuntu-aws**
+   - Kubernetes = **kubernetes**
+   - Network = **cni-calico**
+   - Storage = **csi-aws-ebs**
+   - App services = **hellouniverse** with the API preset option disabled.
+
+   **Version 1.1.0**.
+
+   - OS = **ubuntu-aws**
+   - Kubernetes = **kubernetes**
+   - Network = **cni-calico**
+   - Storage = **csi-aws-ebs**
+   - App services = **hellouniverse** with the API preset option enabled.
+
+2. Build a cluster using cluster profile version 1.0.0. This will take 15-20 minutes.
+
+3. Download the [Admin kubeconfig](https://docs.spectrocloud.com/clusters/cluster-management/kubeconfig/) file from the
+   cluster **Overview** tab.
+
+4. Go your terminal application and run the following command
+
+```shell
+kubectl get pods --kubeconfig=admin.cluster-update-deletion.kubeconfig --namespace=hello-universe -o=custom-columns="POD_NAME:.metadata.name,CONTAINER_NAME:.status.containerStatuses[].name,CONTAINER_ID:.status.containerStatuses[].containerID"
+```
+
+5. This command will display the containers in the cluster that are in the hello universe namespace. It will include the
+   pod name, container name, and container ID. You can use these identifiers with various `kubectl` options.
+
+Sample output
+
+```shell
+POD_NAME                                     CONTAINER_NAME   CONTAINER_ID
+hello-universe-deployment-6854947c67-ltdmq   hello-universe   containerd://584f07c2cf2dbb24f62e63be4322d16314d86e496eeb185c5a5944e884744239
+```
+
+6. Return to Palette and update the cluster using the profile version 1.1.0. This takes around 1-2 minutes.
+
+7. Return to the terminal and run the following command
+
+<<<<<<< HEAD
+
+```shell
+kubectl get pods --kubeconfig=admin.cluster-update-deletion.kubeconfig --namespace=hello-universe -o=custom-columns="POD_NAME:.metadata.name,CONTAINER_NAME:.status.containerStatuses[].name,CONTAINER_ID:.status.containerStatuses[].containerID"
+```
+
+=======
+
+```shell
+kubectl get pods --kubeconfig=admin.cluster-update-deletion.kubeconfig --namespace=hello-universe -o=custom-columns="POD_NAME:.metadata.name,CONTAINER_NAME:.status.containerStatuses[].name,CONTAINER_ID:.status.containerStatuses[].containerID"
path: docs/docs-content/clusters/cluster-management/cluster-updates.md
user: login: github-actions[bot]
body: 🚫 **[vale]** <sub>reported by [reviewdog](https://github.com/reviewdog/reviewdog) :dog:</sub><br>[spectrocloud-docs-internal.longform] Avoid using the short form of commands. Replace the short form flag in 'universe -o' with the corresponding long form flag.
created_at: 2025-04-14T15:58:32Z
author_association: CONTRIBUTOR
diff_hunk: @@ -140,3 +142,137 @@ You can follow these steps to validate all cluster update approaches.
 3. Select the cluster you updated, and navigate to the **Profile** tab of the cluster.
 
 4. Confirm that the cluster is now using an updated profile.
+
+## Palette Reconciliation Behavior
+
+When cluster profile updates are applied, Palette will apply the changes to the cluster but will not delete any
+resources that are no longer in use. Depending on the situation, you can choose to keep or remove these resources. To
+remove the resources, utilize one of the following two methods.
+
+The first method would be a clean deployment with a new cluster profile. Once the new cluster and cluster profile are
+deployed, the previous version could be deleted. The challenge, however, is when particular resources are in use.
+
+The second method is to use `kubectl` to scale the resource count to 0. While deleting the resource using something like
+K9s is possible, Palette will recreate it immediately. Scaling replicas to zero via `kubectl` ensures the resource is
+effectively removed.
+
+This section provides guidance on removing resources using the second method.
+
+This section provides guidance on removing the resources using the second method.
+
+### Prerequisites
+
+- An active Kubernetes cluster in Palette.
+- A terminal client.
+
+### Enablement
+
+The following steps provide an example of how to clean up unneeded resources using `kubectl`. In this example, an AWS
+cluster called **cluster-update-deletion** is created using a cluster profile with the
+[Hello Universe](/integrations/packs/?pack=hello-universe) included. The Hello Universe pack has the API preset option
+disabled.
+
+1. Log in to Palette and create a cluster profile with two versions for an AWS IaaS cluster that includes the Hello
+   Universe pack. For example:
+
+   **Version 1.0.0**.
+
+   - OS = **ubuntu-aws**
+   - Kubernetes = **kubernetes**
+   - Network = **cni-calico**
+   - Storage = **csi-aws-ebs**
+   - App services = **hellouniverse** with the API preset option disabled.
+
+   **Version 1.1.0**.
+
+   - OS = **ubuntu-aws**
+   - Kubernetes = **kubernetes**
+   - Network = **cni-calico**
+   - Storage = **csi-aws-ebs**
+   - App services = **hellouniverse** with the API preset option enabled.
+
+2. Build a cluster using cluster profile version 1.0.0. This will take 15-20 minutes.
+
+3. Download the [Admin kubeconfig](https://docs.spectrocloud.com/clusters/cluster-management/kubeconfig/) file from the
+   cluster **Overview** tab.
+
+4. Go your terminal application and run the following command
+
+```shell
+kubectl get pods --kubeconfig=admin.cluster-update-deletion.kubeconfig --namespace=hello-universe -o=custom-columns="POD_NAME:.metadata.name,CONTAINER_NAME:.status.containerStatuses[].name,CONTAINER_ID:.status.containerStatuses[].containerID"
+```
+
+5. This command will display the containers in the cluster that are in the hello universe namespace. It will include the
+   pod name, container name, and container ID. You can use these identifiers with various `kubectl` options.
+
+Sample output
+
+```shell
+POD_NAME                                     CONTAINER_NAME   CONTAINER_ID
+hello-universe-deployment-6854947c67-ltdmq   hello-universe   containerd://584f07c2cf2dbb24f62e63be4322d16314d86e496eeb185c5a5944e884744239
+```
+
+6. Return to Palette and update the cluster using the profile version 1.1.0. This takes around 1-2 minutes.
+
+7. Return to the terminal and run the following command
+
+<<<<<<< HEAD
+
+```shell
+kubectl get pods --kubeconfig=admin.cluster-update-deletion.kubeconfig --namespace=hello-universe -o=custom-columns="POD_NAME:.metadata.name,CONTAINER_NAME:.status.containerStatuses[].name,CONTAINER_ID:.status.containerStatuses[].containerID"
+```
+
+=======
+
+```shell
+kubectl get pods --kubeconfig=admin.cluster-update-deletion.kubeconfig --namespace=hello-universe -o=custom-columns="POD_NAME:.metadata.name,CONTAINER_NAME:.status.containerStatuses[].name,CONTAINER_ID:.status.containerStatuses[].containerID"
+```
+
+> > > > > > > 59c6efa3ee2c4fc336a8e436a1671d8cc5ef9baf
+
+Sample output
+
+```shell
+POD_NAME                                     CONTAINER_NAME   CONTAINER_ID
+api-86f745b67c-gk4lx                         api              containerd://21c7c18e42350efc25ea300e43c3471c64fba6953ae14bb2b46387c8e5d9c06d
+hello-universe-deployment-6854947c67-ltdmq   hello-universe   containerd://584f07c2cf2dbb24f62e63be4322d16314d86e496eeb185c5a5944e884744239
+postgres-567dc9cb4c-cd7fn                    postgres         containerd://b704c87e77ea468156d7f8033b7ad8d9a8ce6048e640b84c529572ac1fb41cd5
+ui-f7ff4ddc5-hcv72                           ui               containerd://40f78fb4aef00445dc9cf051ca57d61f935594cbe1e426d1f193624769ac132d
+```
+
+<<<<<<< HEAD With the cluster updated, we notice that the previous version of the Hello Universe app remains. This
+container, however, is not used with the API version and is no longer needed. ======= With the cluster updated, we can
+see that the previous version of the Hello Universe app remains. This container, however, is not used with the API
path: docs/docs-content/clusters/cluster-management/cluster-updates.md
user: login: github-actions[bot]
body: 🚫 **[vale]** <sub>reported by [reviewdog](https://github.com/reviewdog/reviewdog) :dog:</sub><br>[spectrocloud-docs-internal.ableism] Avoid using ableism terms. Use 'display' instead of 'see'.
created_at: 2025-04-14T15:58:32Z
author_association: CONTRIBUTOR
diff_hunk: @@ -140,3 +142,123 @@ You can follow these steps to validate all cluster update approaches.
 3. Select the cluster you updated, and navigate to the **Profile** tab of the cluster.
 
 4. Confirm that the cluster is now using an updated profile.
+
+## Palette Reconciliation Behavior
+
+When cluster profile updates are applied, Palette will apply the changes to the cluster but will not delete any
+resources that are no longer in use. Depending on the situation, you can choose to keep or remove these resources. To
+remove the resources, utilize one of the following two methods.
+
+The first method would be a clean deployment with a new cluster profile. Once the new cluster and cluster profile are
+deployed, the previous version could be deleted. The challenge, however, is when particular resources are in use.
+
+The second method is to use `kubectl` to scale the resource count to 0. While deleting the resource using something like
+K9s is possible, Palette will recreate it immediately. Scaling replicas to zero via `kubectl` ensures the resource is
+effectively removed.
+
+This section provides guidance on removing resources using the second method.
+
+This section provides guidance on removing the resources using the second method.
path: docs/docs-content/clusters/cluster-management/cluster-updates.md
user: login: lennessyy
body: Duplicate sentence here
created_at: 2025-04-14T22:31:59Z
author_association: CONTRIBUTOR
diff_hunk: @@ -140,3 +142,123 @@ You can follow these steps to validate all cluster update approaches.
 3. Select the cluster you updated, and navigate to the **Profile** tab of the cluster.
 
 4. Confirm that the cluster is now using an updated profile.
+
+## Palette Reconciliation Behavior
+
+When cluster profile updates are applied, Palette will apply the changes to the cluster but will not delete any
+resources that are no longer in use. Depending on the situation, you can choose to keep or remove these resources. To
+remove the resources, utilize one of the following two methods.
+
+The first method would be a clean deployment with a new cluster profile. Once the new cluster and cluster profile are
path: docs/docs-content/clusters/cluster-management/cluster-updates.md
user: login: lennessyy
body: In my opinion, this first method can be omitted entirely. This section is about cluster updates, not deleting and recreating a cluster. I would feel a little misled if I am trying to update the cluster but the first thing I'm told to do is to delete and recreate it. Removing this method allows you to be more focused on describing the actual procedure.

At least I would not call this the first method, since this is the first thing that the audience will read but is not what your procedure is describing. 
created_at: 2025-04-14T22:34:47Z
author_association: CONTRIBUTOR
diff_hunk: @@ -140,3 +142,123 @@ You can follow these steps to validate all cluster update approaches.
 3. Select the cluster you updated, and navigate to the **Profile** tab of the cluster.
 
 4. Confirm that the cluster is now using an updated profile.
+
+## Palette Reconciliation Behavior
path: docs/docs-content/clusters/cluster-management/cluster-updates.md
user: login: lennessyy
body: Is this heading appropriate? It sounds like you are providing a how-to on "Remove redundant cluster resources after update" instead of explaining the behavior. I would maybe use that as the heading.  
created_at: 2025-04-14T22:36:22Z
author_association: CONTRIBUTOR
diff_hunk: @@ -140,3 +142,123 @@ You can follow these steps to validate all cluster update approaches.
 3. Select the cluster you updated, and navigate to the **Profile** tab of the cluster.
 
 4. Confirm that the cluster is now using an updated profile.
+
+## Palette Reconciliation Behavior
+
+When cluster profile updates are applied, Palette will apply the changes to the cluster but will not delete any
+resources that are no longer in use. Depending on the situation, you can choose to keep or remove these resources. To
path: docs/docs-content/clusters/cluster-management/cluster-updates.md
user: login: lennessyy
body: ```suggestion
resources that are no longer in use. You can choose to keep or remove these resources. To
```
"Depending on the situation" is kind of a filler phrase that you can do without here. 
created_at: 2025-04-14T22:36:36Z
author_association: CONTRIBUTOR
diff_hunk: @@ -140,3 +142,123 @@ You can follow these steps to validate all cluster update approaches.
 3. Select the cluster you updated, and navigate to the **Profile** tab of the cluster.
 
 4. Confirm that the cluster is now using an updated profile.
+
+## Palette Reconciliation Behavior
+
+When cluster profile updates are applied, Palette will apply the changes to the cluster but will not delete any
+resources that are no longer in use. Depending on the situation, you can choose to keep or remove these resources. To
+remove the resources, utilize one of the following two methods.
+
+The first method would be a clean deployment with a new cluster profile. Once the new cluster and cluster profile are
+deployed, the previous version could be deleted. The challenge, however, is when particular resources are in use.
path: docs/docs-content/clusters/cluster-management/cluster-updates.md
user: login: lennessyy
body: ```suggestion
deployed, the previous version could be deleted. However, this may have unintended downstream effects because it does not preserve any resource that is currently in use.
```
The last sentence seems a bit vague to me. I rewrote it to be a little more explicit what the risks are (if these are what you meant when you say 'when particular resource is in-use'. 
created_at: 2025-04-14T22:42:32Z
author_association: CONTRIBUTOR
diff_hunk: @@ -140,3 +142,123 @@ You can follow these steps to validate all cluster update approaches.
 3. Select the cluster you updated, and navigate to the **Profile** tab of the cluster.
 
 4. Confirm that the cluster is now using an updated profile.
+
+## Palette Reconciliation Behavior
+
+When cluster profile updates are applied, Palette will apply the changes to the cluster but will not delete any
+resources that are no longer in use. Depending on the situation, you can choose to keep or remove these resources. To
+remove the resources, utilize one of the following two methods.
+
+The first method would be a clean deployment with a new cluster profile. Once the new cluster and cluster profile are
+deployed, the previous version could be deleted. The challenge, however, is when particular resources are in use.
+
+The second method is to use `kubectl` to scale the resource count to 0. While deleting the resource using something like
+K9s is possible, Palette will recreate it immediately. Scaling replicas to zero via `kubectl` ensures the resource is
+effectively removed.
+
+This section provides guidance on removing resources using the second method.
+
+This section provides guidance on removing the resources using the second method.
+
+### Prerequisites
+
+- An active Kubernetes cluster in Palette.
+- A terminal client.
+
+### Enablement
+
+The following steps provide an example of how to clean up unneeded resources using `kubectl`. In this example, an AWS
+cluster called **cluster-update-deletion** is created using a cluster profile with the
+[Hello Universe](/integrations/packs/?pack=hello-universe) included. The Hello Universe pack has the API preset option
+disabled.
+
+1. Log in to Palette and create a cluster profile with two versions for an AWS IaaS cluster that includes the Hello
+   Universe pack. For example:
+
+   **Version 1.0.0**.
+
+   - OS = **ubuntu-aws**
+   - Kubernetes = **kubernetes**
+   - Network = **cni-calico**
+   - Storage = **csi-aws-ebs**
+   - App services = **hellouniverse** with the API preset option disabled.
+
+   **Version 1.1.0**.
+
+   - OS = **ubuntu-aws**
+   - Kubernetes = **kubernetes**
+   - Network = **cni-calico**
+   - Storage = **csi-aws-ebs**
+   - App services = **hellouniverse** with the API preset option enabled.
+
+2. Build a cluster using cluster profile version 1.0.0. This will take 15-20 minutes.
+
+3. Download the [Admin kubeconfig](https://docs.spectrocloud.com/clusters/cluster-management/kubeconfig/) file from the
+   cluster **Overview** tab.
+
+4. Go your terminal application and run the following command
+
+```shell
+kubectl get pods --kubeconfig=admin.cluster-update-deletion.kubeconfig --namespace=hello-universe -o=custom-columns="POD_NAME:.metadata.name,CONTAINER_NAME:.status.containerStatuses[].name,CONTAINER_ID:.status.containerStatuses[].containerID"
+```
+
+5. This command will display the containers in the cluster that are in the hello universe namespace. It will include the
path: docs/docs-content/clusters/cluster-management/cluster-updates.md
user: login: lennessyy
body: ```suggestion
5. This command will display the containers in the cluster that are in the `hello-universe` namespace. It will include the
```
created_at: 2025-04-14T22:44:38Z
author_association: CONTRIBUTOR
diff_hunk: @@ -140,3 +142,123 @@ You can follow these steps to validate all cluster update approaches.
 3. Select the cluster you updated, and navigate to the **Profile** tab of the cluster.
 
 4. Confirm that the cluster is now using an updated profile.
+
+## Palette Reconciliation Behavior
+
+When cluster profile updates are applied, Palette will apply the changes to the cluster but will not delete any
+resources that are no longer in use. Depending on the situation, you can choose to keep or remove these resources. To
+remove the resources, utilize one of the following two methods.
+
+The first method would be a clean deployment with a new cluster profile. Once the new cluster and cluster profile are
+deployed, the previous version could be deleted. The challenge, however, is when particular resources are in use.
+
+The second method is to use `kubectl` to scale the resource count to 0. While deleting the resource using something like
+K9s is possible, Palette will recreate it immediately. Scaling replicas to zero via `kubectl` ensures the resource is
+effectively removed.
+
+This section provides guidance on removing resources using the second method.
+
+This section provides guidance on removing the resources using the second method.
+
+### Prerequisites
+
+- An active Kubernetes cluster in Palette.
+- A terminal client.
+
+### Enablement
+
+The following steps provide an example of how to clean up unneeded resources using `kubectl`. In this example, an AWS
+cluster called **cluster-update-deletion** is created using a cluster profile with the
+[Hello Universe](/integrations/packs/?pack=hello-universe) included. The Hello Universe pack has the API preset option
+disabled.
+
+1. Log in to Palette and create a cluster profile with two versions for an AWS IaaS cluster that includes the Hello
+   Universe pack. For example:
+
+   **Version 1.0.0**.
+
+   - OS = **ubuntu-aws**
+   - Kubernetes = **kubernetes**
+   - Network = **cni-calico**
+   - Storage = **csi-aws-ebs**
+   - App services = **hellouniverse** with the API preset option disabled.
+
+   **Version 1.1.0**.
+
+   - OS = **ubuntu-aws**
+   - Kubernetes = **kubernetes**
+   - Network = **cni-calico**
+   - Storage = **csi-aws-ebs**
+   - App services = **hellouniverse** with the API preset option enabled.
+
+2. Build a cluster using cluster profile version 1.0.0. This will take 15-20 minutes.
+
+3. Download the [Admin kubeconfig](https://docs.spectrocloud.com/clusters/cluster-management/kubeconfig/) file from the
+   cluster **Overview** tab.
+
+4. Go your terminal application and run the following command
+
+```shell
+kubectl get pods --kubeconfig=admin.cluster-update-deletion.kubeconfig --namespace=hello-universe -o=custom-columns="POD_NAME:.metadata.name,CONTAINER_NAME:.status.containerStatuses[].name,CONTAINER_ID:.status.containerStatuses[].containerID"
+```
+
+5. This command will display the containers in the cluster that are in the hello universe namespace. It will include the
+   pod name, container name, and container ID. You can use these identifiers with various `kubectl` options.
+
+Sample output
+
+```shell
+POD_NAME                                     CONTAINER_NAME   CONTAINER_ID
+hello-universe-deployment-6854947c67-ltdmq   hello-universe   containerd://584f07c2cf2dbb24f62e63be4322d16314d86e496eeb185c5a5944e884744239
+```
+
+6. Return to Palette and update the cluster using the profile version 1.1.0. This takes around 1-2 minutes.
+
+7. Return to the terminal and run the following command
+
+```shell
+kubectl get pods --kubeconfig=admin.cluster-update-deletion.kubeconfig --namespace=hello-universe -o=custom-columns="POD_NAME:.metadata.name,CONTAINER_NAME:.status.containerStatuses[].name,CONTAINER_ID:.status.containerStatuses[].containerID"
+```
+
+Sample output
+
+```shell
+POD_NAME                                     CONTAINER_NAME   CONTAINER_ID
+api-86f745b67c-gk4lx                         api              containerd://21c7c18e42350efc25ea300e43c3471c64fba6953ae14bb2b46387c8e5d9c06d
+hello-universe-deployment-6854947c67-ltdmq   hello-universe   containerd://584f07c2cf2dbb24f62e63be4322d16314d86e496eeb185c5a5944e884744239
+postgres-567dc9cb4c-cd7fn                    postgres         containerd://b704c87e77ea468156d7f8033b7ad8d9a8ce6048e640b84c529572ac1fb41cd5
+ui-f7ff4ddc5-hcv72                           ui               containerd://40f78fb4aef00445dc9cf051ca57d61f935594cbe1e426d1f193624769ac132d
+```
+
+With the cluster updated, we notice that the previous version of the Hello Universe app remains. This container,
+however, is not used with the API version and is no longer needed.
+
+8. Locate the pod name of the container you want to remove and run the following command.
+
+```shell
+kubectl scale deployment hello-universe-deployment --replicas=0 hello-universe-deployment-6854947c67-ltdmq --kubeconfig=admin.cluster-update-deletion.kubeconfig --namespace hello-universe
+```
+
+Sample output
+
+```
+deployment.apps/hello-universe-deployment scaled
+Error from server (NotFound): deployments.apps "hello-universe-deployment-6854947c67-ltdmq" not found
+```
+
+This command will reduce the container count to 0, effectively stopping the container. If you have multiple clusters
+with resources no longer in use, you could put the command into a script to help remove those additional resources.
path: docs/docs-content/clusters/cluster-management/cluster-updates.md
user: login: benradstone
body: ````suggestion
   ```shell
   kubectl scale deployment hello-universe-deployment --replicas=0 hello-universe-deployment-6854947c67-ltdmq --kubeconfig=admin.cluster-update-deletion.kubeconfig --namespace hello-universe
   ```

   Sample output

   ```
   deployment.apps/hello-universe-deployment scaled
   Error from server (NotFound): deployments.apps "hello-universe-deployment-6854947c67-ltdmq" not found
   ```

   This command will reduce the container count to 0, effectively stopping the container. If you have multiple clusters
   with resources no longer in use, you could put the command into a script to help remove those additional resources.
````
created_at: 2025-04-15T08:26:33Z
author_association: CONTRIBUTOR
diff_hunk: @@ -140,3 +142,123 @@ You can follow these steps to validate all cluster update approaches.
 3. Select the cluster you updated, and navigate to the **Profile** tab of the cluster.
 
 4. Confirm that the cluster is now using an updated profile.
+
+## Palette Reconciliation Behavior
+
+When cluster profile updates are applied, Palette will apply the changes to the cluster but will not delete any
+resources that are no longer in use. Depending on the situation, you can choose to keep or remove these resources. To
+remove the resources, utilize one of the following two methods.
+
+The first method would be a clean deployment with a new cluster profile. Once the new cluster and cluster profile are
+deployed, the previous version could be deleted. The challenge, however, is when particular resources are in use.
+
+The second method is to use `kubectl` to scale the resource count to 0. While deleting the resource using something like
+K9s is possible, Palette will recreate it immediately. Scaling replicas to zero via `kubectl` ensures the resource is
+effectively removed.
+
+This section provides guidance on removing resources using the second method.
+
+This section provides guidance on removing the resources using the second method.
+
+### Prerequisites
+
+- An active Kubernetes cluster in Palette.
+- A terminal client.
+
+### Enablement
+
+The following steps provide an example of how to clean up unneeded resources using `kubectl`. In this example, an AWS
+cluster called **cluster-update-deletion** is created using a cluster profile with the
+[Hello Universe](/integrations/packs/?pack=hello-universe) included. The Hello Universe pack has the API preset option
+disabled.
+
+1. Log in to Palette and create a cluster profile with two versions for an AWS IaaS cluster that includes the Hello
+   Universe pack. For example:
+
+   **Version 1.0.0**.
+
+   - OS = **ubuntu-aws**
+   - Kubernetes = **kubernetes**
+   - Network = **cni-calico**
+   - Storage = **csi-aws-ebs**
+   - App services = **hellouniverse** with the API preset option disabled.
+
+   **Version 1.1.0**.
+
+   - OS = **ubuntu-aws**
+   - Kubernetes = **kubernetes**
+   - Network = **cni-calico**
+   - Storage = **csi-aws-ebs**
+   - App services = **hellouniverse** with the API preset option enabled.
+
+2. Build a cluster using cluster profile version 1.0.0. This will take 15-20 minutes.
+
+3. Download the [Admin kubeconfig](https://docs.spectrocloud.com/clusters/cluster-management/kubeconfig/) file from the
+   cluster **Overview** tab.
+
+4. Go your terminal application and run the following command
+
+```shell
+kubectl get pods --kubeconfig=admin.cluster-update-deletion.kubeconfig --namespace=hello-universe -o=custom-columns="POD_NAME:.metadata.name,CONTAINER_NAME:.status.containerStatuses[].name,CONTAINER_ID:.status.containerStatuses[].containerID"
+```
+
+5. This command will display the containers in the cluster that are in the hello universe namespace. It will include the
+   pod name, container name, and container ID. You can use these identifiers with various `kubectl` options.
+
+Sample output
+
+```shell
+POD_NAME                                     CONTAINER_NAME   CONTAINER_ID
+hello-universe-deployment-6854947c67-ltdmq   hello-universe   containerd://584f07c2cf2dbb24f62e63be4322d16314d86e496eeb185c5a5944e884744239
+```
+
+6. Return to Palette and update the cluster using the profile version 1.1.0. This takes around 1-2 minutes.
+
+7. Return to the terminal and run the following command
+
+```shell
+kubectl get pods --kubeconfig=admin.cluster-update-deletion.kubeconfig --namespace=hello-universe -o=custom-columns="POD_NAME:.metadata.name,CONTAINER_NAME:.status.containerStatuses[].name,CONTAINER_ID:.status.containerStatuses[].containerID"
+```
+
+Sample output
+
+```shell
+POD_NAME                                     CONTAINER_NAME   CONTAINER_ID
+api-86f745b67c-gk4lx                         api              containerd://21c7c18e42350efc25ea300e43c3471c64fba6953ae14bb2b46387c8e5d9c06d
+hello-universe-deployment-6854947c67-ltdmq   hello-universe   containerd://584f07c2cf2dbb24f62e63be4322d16314d86e496eeb185c5a5944e884744239
+postgres-567dc9cb4c-cd7fn                    postgres         containerd://b704c87e77ea468156d7f8033b7ad8d9a8ce6048e640b84c529572ac1fb41cd5
+ui-f7ff4ddc5-hcv72                           ui               containerd://40f78fb4aef00445dc9cf051ca57d61f935594cbe1e426d1f193624769ac132d
+```
+
+With the cluster updated, we notice that the previous version of the Hello Universe app remains. This container,
+however, is not used with the API version and is no longer needed.
+
+8. Locate the pod name of the container you want to remove and run the following command.
+
+```shell
+kubectl scale deployment hello-universe-deployment --replicas=0 hello-universe-deployment-6854947c67-ltdmq --kubeconfig=admin.cluster-update-deletion.kubeconfig --namespace hello-universe
+```
+
+Sample output
+
+```
+deployment.apps/hello-universe-deployment scaled
+Error from server (NotFound): deployments.apps "hello-universe-deployment-6854947c67-ltdmq" not found
+```
+
+This command will reduce the container count to 0, effectively stopping the container. If you have multiple clusters
+with resources no longer in use, you could put the command into a script to help remove those additional resources.
path: docs/docs-content/clusters/cluster-management/cluster-updates.md
user: login: benradstone
body: Indentation needs to match the first letter after the numbered step.
created_at: 2025-04-15T08:26:59Z
author_association: CONTRIBUTOR
diff_hunk: @@ -140,3 +142,123 @@ You can follow these steps to validate all cluster update approaches.
 3. Select the cluster you updated, and navigate to the **Profile** tab of the cluster.
 
 4. Confirm that the cluster is now using an updated profile.
+
+## Palette Reconciliation Behavior
+
+When cluster profile updates are applied, Palette will apply the changes to the cluster but will not delete any
+resources that are no longer in use. Depending on the situation, you can choose to keep or remove these resources. To
+remove the resources, utilize one of the following two methods.
+
+The first method would be a clean deployment with a new cluster profile. Once the new cluster and cluster profile are
+deployed, the previous version could be deleted. The challenge, however, is when particular resources are in use.
+
+The second method is to use `kubectl` to scale the resource count to 0. While deleting the resource using something like
+K9s is possible, Palette will recreate it immediately. Scaling replicas to zero via `kubectl` ensures the resource is
+effectively removed.
+
+This section provides guidance on removing resources using the second method.
+
+This section provides guidance on removing the resources using the second method.
+
+### Prerequisites
+
+- An active Kubernetes cluster in Palette.
+- A terminal client.
+
+### Enablement
+
+The following steps provide an example of how to clean up unneeded resources using `kubectl`. In this example, an AWS
+cluster called **cluster-update-deletion** is created using a cluster profile with the
+[Hello Universe](/integrations/packs/?pack=hello-universe) included. The Hello Universe pack has the API preset option
+disabled.
+
+1. Log in to Palette and create a cluster profile with two versions for an AWS IaaS cluster that includes the Hello
+   Universe pack. For example:
+
+   **Version 1.0.0**.
+
+   - OS = **ubuntu-aws**
+   - Kubernetes = **kubernetes**
+   - Network = **cni-calico**
+   - Storage = **csi-aws-ebs**
+   - App services = **hellouniverse** with the API preset option disabled.
+
+   **Version 1.1.0**.
+
+   - OS = **ubuntu-aws**
+   - Kubernetes = **kubernetes**
+   - Network = **cni-calico**
+   - Storage = **csi-aws-ebs**
+   - App services = **hellouniverse** with the API preset option enabled.
+
+2. Build a cluster using cluster profile version 1.0.0. This will take 15-20 minutes.
+
+3. Download the [Admin kubeconfig](https://docs.spectrocloud.com/clusters/cluster-management/kubeconfig/) file from the
+   cluster **Overview** tab.
+
+4. Go your terminal application and run the following command
+
+```shell
+kubectl get pods --kubeconfig=admin.cluster-update-deletion.kubeconfig --namespace=hello-universe -o=custom-columns="POD_NAME:.metadata.name,CONTAINER_NAME:.status.containerStatuses[].name,CONTAINER_ID:.status.containerStatuses[].containerID"
+```
+
+5. This command will display the containers in the cluster that are in the hello universe namespace. It will include the
+   pod name, container name, and container ID. You can use these identifiers with various `kubectl` options.
+
+Sample output
+
+```shell
+POD_NAME                                     CONTAINER_NAME   CONTAINER_ID
+hello-universe-deployment-6854947c67-ltdmq   hello-universe   containerd://584f07c2cf2dbb24f62e63be4322d16314d86e496eeb185c5a5944e884744239
+```
+
+6. Return to Palette and update the cluster using the profile version 1.1.0. This takes around 1-2 minutes.
+
+7. Return to the terminal and run the following command
+
+```shell
+kubectl get pods --kubeconfig=admin.cluster-update-deletion.kubeconfig --namespace=hello-universe -o=custom-columns="POD_NAME:.metadata.name,CONTAINER_NAME:.status.containerStatuses[].name,CONTAINER_ID:.status.containerStatuses[].containerID"
+```
+
+Sample output
+
+```shell
+POD_NAME                                     CONTAINER_NAME   CONTAINER_ID
+api-86f745b67c-gk4lx                         api              containerd://21c7c18e42350efc25ea300e43c3471c64fba6953ae14bb2b46387c8e5d9c06d
+hello-universe-deployment-6854947c67-ltdmq   hello-universe   containerd://584f07c2cf2dbb24f62e63be4322d16314d86e496eeb185c5a5944e884744239
+postgres-567dc9cb4c-cd7fn                    postgres         containerd://b704c87e77ea468156d7f8033b7ad8d9a8ce6048e640b84c529572ac1fb41cd5
+ui-f7ff4ddc5-hcv72                           ui               containerd://40f78fb4aef00445dc9cf051ca57d61f935594cbe1e426d1f193624769ac132d
+```
+
+With the cluster updated, we notice that the previous version of the Hello Universe app remains. This container,
+however, is not used with the API version and is no longer needed.
path: docs/docs-content/clusters/cluster-management/cluster-updates.md
user: login: benradstone
body: ````suggestion
   ```shell
   kubectl get pods --kubeconfig=admin.cluster-update-deletion.kubeconfig --namespace=hello-universe -o=custom-columns="POD_NAME:.metadata.name,CONTAINER_NAME:.status.containerStatuses[].name,CONTAINER_ID:.status.containerStatuses[].containerID"
   ```

   Sample output

   ```shell
   POD_NAME                                     CONTAINER_NAME   CONTAINER_ID
   api-86f745b67c-gk4lx                         api              containerd://21c7c18e42350efc25ea300e43c3471c64fba6953ae14bb2b46387c8e5d9c06d
   hello-universe-deployment-6854947c67-ltdmq   hello-universe   containerd://584f07c2cf2dbb24f62e63be4322d16314d86e496eeb185c5a5944e884744239
   postgres-567dc9cb4c-cd7fn                    postgres         containerd://b704c87e77ea468156d7f8033b7ad8d9a8ce6048e640b84c529572ac1fb41cd5
   ui-f7ff4ddc5-hcv72                           ui               containerd://40f78fb4aef00445dc9cf051ca57d61f935594cbe1e426d1f193624769ac132d
   ```

   With the cluster updated, we notice that the previous version of the Hello Universe app remains. This container,
   however, is not used with the API version and is no longer needed.
````
created_at: 2025-04-15T08:28:27Z
author_association: CONTRIBUTOR
diff_hunk: @@ -140,3 +142,123 @@ You can follow these steps to validate all cluster update approaches.
 3. Select the cluster you updated, and navigate to the **Profile** tab of the cluster.
 
 4. Confirm that the cluster is now using an updated profile.
+
+## Palette Reconciliation Behavior
+
+When cluster profile updates are applied, Palette will apply the changes to the cluster but will not delete any
+resources that are no longer in use. Depending on the situation, you can choose to keep or remove these resources. To
+remove the resources, utilize one of the following two methods.
+
+The first method would be a clean deployment with a new cluster profile. Once the new cluster and cluster profile are
+deployed, the previous version could be deleted. The challenge, however, is when particular resources are in use.
+
+The second method is to use `kubectl` to scale the resource count to 0. While deleting the resource using something like
+K9s is possible, Palette will recreate it immediately. Scaling replicas to zero via `kubectl` ensures the resource is
+effectively removed.
+
+This section provides guidance on removing resources using the second method.
+
+This section provides guidance on removing the resources using the second method.
+
+### Prerequisites
+
+- An active Kubernetes cluster in Palette.
+- A terminal client.
+
+### Enablement
+
+The following steps provide an example of how to clean up unneeded resources using `kubectl`. In this example, an AWS
+cluster called **cluster-update-deletion** is created using a cluster profile with the
+[Hello Universe](/integrations/packs/?pack=hello-universe) included. The Hello Universe pack has the API preset option
+disabled.
+
+1. Log in to Palette and create a cluster profile with two versions for an AWS IaaS cluster that includes the Hello
+   Universe pack. For example:
+
+   **Version 1.0.0**.
+
+   - OS = **ubuntu-aws**
+   - Kubernetes = **kubernetes**
+   - Network = **cni-calico**
+   - Storage = **csi-aws-ebs**
+   - App services = **hellouniverse** with the API preset option disabled.
+
+   **Version 1.1.0**.
+
+   - OS = **ubuntu-aws**
+   - Kubernetes = **kubernetes**
+   - Network = **cni-calico**
+   - Storage = **csi-aws-ebs**
+   - App services = **hellouniverse** with the API preset option enabled.
+
+2. Build a cluster using cluster profile version 1.0.0. This will take 15-20 minutes.
+
+3. Download the [Admin kubeconfig](https://docs.spectrocloud.com/clusters/cluster-management/kubeconfig/) file from the
+   cluster **Overview** tab.
+
+4. Go your terminal application and run the following command
+
+```shell
+kubectl get pods --kubeconfig=admin.cluster-update-deletion.kubeconfig --namespace=hello-universe -o=custom-columns="POD_NAME:.metadata.name,CONTAINER_NAME:.status.containerStatuses[].name,CONTAINER_ID:.status.containerStatuses[].containerID"
+```
+
+5. This command will display the containers in the cluster that are in the hello universe namespace. It will include the
+   pod name, container name, and container ID. You can use these identifiers with various `kubectl` options.
+
+Sample output
+
+```shell
+POD_NAME                                     CONTAINER_NAME   CONTAINER_ID
+hello-universe-deployment-6854947c67-ltdmq   hello-universe   containerd://584f07c2cf2dbb24f62e63be4322d16314d86e496eeb185c5a5944e884744239
+```
path: docs/docs-content/clusters/cluster-management/cluster-updates.md
user: login: benradstone
body: ````suggestion
   Sample output

   ```shell
   POD_NAME                                     CONTAINER_NAME   CONTAINER_ID
   hello-universe-deployment-6854947c67-ltdmq   hello-universe   containerd://584f07c2cf2dbb24f62e63be4322d16314d86e496eeb185c5a5944e884744239
   ```
````
created_at: 2025-04-15T08:28:58Z
author_association: CONTRIBUTOR
diff_hunk: @@ -140,3 +142,123 @@ You can follow these steps to validate all cluster update approaches.
 3. Select the cluster you updated, and navigate to the **Profile** tab of the cluster.
 
 4. Confirm that the cluster is now using an updated profile.
+
+## Palette Reconciliation Behavior
+
+When cluster profile updates are applied, Palette will apply the changes to the cluster but will not delete any
+resources that are no longer in use. Depending on the situation, you can choose to keep or remove these resources. To
+remove the resources, utilize one of the following two methods.
+
+The first method would be a clean deployment with a new cluster profile. Once the new cluster and cluster profile are
+deployed, the previous version could be deleted. The challenge, however, is when particular resources are in use.
+
+The second method is to use `kubectl` to scale the resource count to 0. While deleting the resource using something like
+K9s is possible, Palette will recreate it immediately. Scaling replicas to zero via `kubectl` ensures the resource is
+effectively removed.
+
+This section provides guidance on removing resources using the second method.
+
+This section provides guidance on removing the resources using the second method.
+
+### Prerequisites
+
+- An active Kubernetes cluster in Palette.
+- A terminal client.
+
+### Enablement
+
+The following steps provide an example of how to clean up unneeded resources using `kubectl`. In this example, an AWS
+cluster called **cluster-update-deletion** is created using a cluster profile with the
+[Hello Universe](/integrations/packs/?pack=hello-universe) included. The Hello Universe pack has the API preset option
+disabled.
+
+1. Log in to Palette and create a cluster profile with two versions for an AWS IaaS cluster that includes the Hello
+   Universe pack. For example:
+
+   **Version 1.0.0**.
+
+   - OS = **ubuntu-aws**
+   - Kubernetes = **kubernetes**
+   - Network = **cni-calico**
+   - Storage = **csi-aws-ebs**
+   - App services = **hellouniverse** with the API preset option disabled.
+
+   **Version 1.1.0**.
+
+   - OS = **ubuntu-aws**
+   - Kubernetes = **kubernetes**
+   - Network = **cni-calico**
+   - Storage = **csi-aws-ebs**
+   - App services = **hellouniverse** with the API preset option enabled.
+
+2. Build a cluster using cluster profile version 1.0.0. This will take 15-20 minutes.
+
+3. Download the [Admin kubeconfig](https://docs.spectrocloud.com/clusters/cluster-management/kubeconfig/) file from the
+   cluster **Overview** tab.
+
+4. Go your terminal application and run the following command
+
+```shell
+kubectl get pods --kubeconfig=admin.cluster-update-deletion.kubeconfig --namespace=hello-universe -o=custom-columns="POD_NAME:.metadata.name,CONTAINER_NAME:.status.containerStatuses[].name,CONTAINER_ID:.status.containerStatuses[].containerID"
+```
path: docs/docs-content/clusters/cluster-management/cluster-updates.md
user: login: benradstone
body: ````suggestion
   ```shell
   kubectl get pods --kubeconfig=admin.cluster-update-deletion.kubeconfig --namespace=hello-universe -o=custom-columns="POD_NAME:.metadata.name,CONTAINER_NAME:.status.containerStatuses[].name,CONTAINER_ID:.status.containerStatuses[].containerID"
   ```
````
created_at: 2025-04-15T08:29:22Z
author_association: CONTRIBUTOR
diff_hunk: @@ -21,7 +21,9 @@ repave schedule and methodology. Refer to
 
 :::
 
-## Limitations
+## Update a Cluster
+
+### Limitations
path: docs/docs-content/clusters/cluster-management/cluster-updates.md
user: login: benradstone
body: This Limitations section needs to be moved above **Update a Cluster** and changed to a header 2. This is because it's relevant to both How-tos in this article.
created_at: 2025-04-15T08:31:18Z
author_association: CONTRIBUTOR
diff_hunk: @@ -140,3 +142,123 @@ You can follow these steps to validate all cluster update approaches.
 3. Select the cluster you updated, and navigate to the **Profile** tab of the cluster.
 
 4. Confirm that the cluster is now using an updated profile.
+
+## Palette Reconciliation Behavior
+
+When cluster profile updates are applied, Palette will apply the changes to the cluster but will not delete any
+resources that are no longer in use. Depending on the situation, you can choose to keep or remove these resources. To
+remove the resources, utilize one of the following two methods.
+
+The first method would be a clean deployment with a new cluster profile. Once the new cluster and cluster profile are
+deployed, the previous version could be deleted. The challenge, however, is when particular resources are in use.
+
+The second method is to use `kubectl` to scale the resource count to 0. While deleting the resource using something like
+K9s is possible, Palette will recreate it immediately. Scaling replicas to zero via `kubectl` ensures the resource is
+effectively removed.
+
+This section provides guidance on removing resources using the second method.
+
+This section provides guidance on removing the resources using the second method.
+
+### Prerequisites
+
+- An active Kubernetes cluster in Palette.
+- A terminal client.
+
+### Enablement
+
+The following steps provide an example of how to clean up unneeded resources using `kubectl`. In this example, an AWS
+cluster called **cluster-update-deletion** is created using a cluster profile with the
+[Hello Universe](/integrations/packs/?pack=hello-universe) included. The Hello Universe pack has the API preset option
path: docs/docs-content/clusters/cluster-management/cluster-updates.md
user: login: benradstone
body: ```suggestion
<VersionedLink text="Hello Universe" url="/integrations/packs/?pack=hello-universe"/> included. The Hello Universe pack has the API preset option
```
created_at: 2025-04-15T09:28:21Z
author_association: CONTRIBUTOR
diff_hunk: @@ -140,3 +142,123 @@ You can follow these steps to validate all cluster update approaches.
 3. Select the cluster you updated, and navigate to the **Profile** tab of the cluster.
 
 4. Confirm that the cluster is now using an updated profile.
+
+## Palette Reconciliation Behavior
+
+When cluster profile updates are applied, Palette will apply the changes to the cluster but will not delete any
+resources that are no longer in use. Depending on the situation, you can choose to keep or remove these resources. To
+remove the resources, utilize one of the following two methods.
+
+The first method would be a clean deployment with a new cluster profile. Once the new cluster and cluster profile are
+deployed, the previous version could be deleted. The challenge, however, is when particular resources are in use.
+
+The second method is to use `kubectl` to scale the resource count to 0. While deleting the resource using something like
+K9s is possible, Palette will recreate it immediately. Scaling replicas to zero via `kubectl` ensures the resource is
+effectively removed.
+
+This section provides guidance on removing resources using the second method.
+
+This section provides guidance on removing the resources using the second method.
+
+### Prerequisites
+
+- An active Kubernetes cluster in Palette.
+- A terminal client.
+
+### Enablement
+
+The following steps provide an example of how to clean up unneeded resources using `kubectl`. In this example, an AWS
+cluster called **cluster-update-deletion** is created using a cluster profile with the
+[Hello Universe](/integrations/packs/?pack=hello-universe) included. The Hello Universe pack has the API preset option
path: docs/docs-content/clusters/cluster-management/cluster-updates.md
user: login: benradstone
body: Any links to packs need to be VersionedLinks as per this suggestion.

https://github.com/spectrocloud/librarium?tab=readme-ov-file#link-to-a-pack
created_at: 2025-04-15T09:29:44Z
author_association: CONTRIBUTOR
diff_hunk: @@ -140,3 +142,123 @@ You can follow these steps to validate all cluster update approaches.
 3. Select the cluster you updated, and navigate to the **Profile** tab of the cluster.
 
 4. Confirm that the cluster is now using an updated profile.
+
+## Palette Reconciliation Behavior
+
+When cluster profile updates are applied, Palette will apply the changes to the cluster but will not delete any
+resources that are no longer in use. Depending on the situation, you can choose to keep or remove these resources. To
+remove the resources, utilize one of the following two methods.
+
+The first method would be a clean deployment with a new cluster profile. Once the new cluster and cluster profile are
+deployed, the previous version could be deleted. The challenge, however, is when particular resources are in use.
+
+The second method is to use `kubectl` to scale the resource count to 0. While deleting the resource using something like
+K9s is possible, Palette will recreate it immediately. Scaling replicas to zero via `kubectl` ensures the resource is
+effectively removed.
+
+This section provides guidance on removing resources using the second method.
+
+This section provides guidance on removing the resources using the second method.
+
+### Prerequisites
+
+- An active Kubernetes cluster in Palette.
+- A terminal client.
+
+### Enablement
+
+The following steps provide an example of how to clean up unneeded resources using `kubectl`. In this example, an AWS
+cluster called **cluster-update-deletion** is created using a cluster profile with the
+[Hello Universe](/integrations/packs/?pack=hello-universe) included. The Hello Universe pack has the API preset option
+disabled.
+
+1. Log in to Palette and create a cluster profile with two versions for an AWS IaaS cluster that includes the Hello
+   Universe pack. For example:
+
+   **Version 1.0.0**.
+
+   - OS = **ubuntu-aws**
+   - Kubernetes = **kubernetes**
+   - Network = **cni-calico**
+   - Storage = **csi-aws-ebs**
+   - App services = **hellouniverse** with the API preset option disabled.
+
+   **Version 1.1.0**.
+
+   - OS = **ubuntu-aws**
+   - Kubernetes = **kubernetes**
+   - Network = **cni-calico**
+   - Storage = **csi-aws-ebs**
+   - App services = **hellouniverse** with the API preset option enabled.
+
+2. Build a cluster using cluster profile version 1.0.0. This will take 15-20 minutes.
+
+3. Download the [Admin kubeconfig](https://docs.spectrocloud.com/clusters/cluster-management/kubeconfig/) file from the
path: docs/docs-content/clusters/cluster-management/cluster-updates.md
user: login: benradstone
body: ```suggestion
3. Download the [Admin kubeconfig](./kubeconfig.md) file from the
```
created_at: 2025-04-15T09:31:08Z
author_association: CONTRIBUTOR
diff_hunk: @@ -140,3 +142,123 @@ You can follow these steps to validate all cluster update approaches.
 3. Select the cluster you updated, and navigate to the **Profile** tab of the cluster.
 
 4. Confirm that the cluster is now using an updated profile.
+
+## Palette Reconciliation Behavior
+
+When cluster profile updates are applied, Palette will apply the changes to the cluster but will not delete any
+resources that are no longer in use. Depending on the situation, you can choose to keep or remove these resources. To
+remove the resources, utilize one of the following two methods.
+
+The first method would be a clean deployment with a new cluster profile. Once the new cluster and cluster profile are
+deployed, the previous version could be deleted. The challenge, however, is when particular resources are in use.
+
+The second method is to use `kubectl` to scale the resource count to 0. While deleting the resource using something like
+K9s is possible, Palette will recreate it immediately. Scaling replicas to zero via `kubectl` ensures the resource is
+effectively removed.
+
+This section provides guidance on removing resources using the second method.
+
+This section provides guidance on removing the resources using the second method.
+
+### Prerequisites
+
+- An active Kubernetes cluster in Palette.
+- A terminal client.
+
+### Enablement
+
+The following steps provide an example of how to clean up unneeded resources using `kubectl`. In this example, an AWS
+cluster called **cluster-update-deletion** is created using a cluster profile with the
+[Hello Universe](/integrations/packs/?pack=hello-universe) included. The Hello Universe pack has the API preset option
+disabled.
+
+1. Log in to Palette and create a cluster profile with two versions for an AWS IaaS cluster that includes the Hello
+   Universe pack. For example:
+
+   **Version 1.0.0**.
+
+   - OS = **ubuntu-aws**
+   - Kubernetes = **kubernetes**
+   - Network = **cni-calico**
+   - Storage = **csi-aws-ebs**
+   - App services = **hellouniverse** with the API preset option disabled.
+
+   **Version 1.1.0**.
+
+   - OS = **ubuntu-aws**
+   - Kubernetes = **kubernetes**
+   - Network = **cni-calico**
+   - Storage = **csi-aws-ebs**
+   - App services = **hellouniverse** with the API preset option enabled.
+
+2. Build a cluster using cluster profile version 1.0.0. This will take 15-20 minutes.
+
+3. Download the [Admin kubeconfig](https://docs.spectrocloud.com/clusters/cluster-management/kubeconfig/) file from the
path: docs/docs-content/clusters/cluster-management/cluster-updates.md
user: login: benradstone
body: As this is a link to another page in our documentation, we use relative links here: https://github.com/spectrocloud/librarium?tab=readme-ov-file#markdown-links-and-urls
created_at: 2025-04-15T09:32:11Z
author_association: CONTRIBUTOR
diff_hunk: @@ -140,3 +142,123 @@ You can follow these steps to validate all cluster update approaches.
 3. Select the cluster you updated, and navigate to the **Profile** tab of the cluster.
 
 4. Confirm that the cluster is now using an updated profile.
+
+## Palette Reconciliation Behavior
+
+When cluster profile updates are applied, Palette will apply the changes to the cluster but will not delete any
+resources that are no longer in use. Depending on the situation, you can choose to keep or remove these resources. To
+remove the resources, utilize one of the following two methods.
+
+The first method would be a clean deployment with a new cluster profile. Once the new cluster and cluster profile are
+deployed, the previous version could be deleted. The challenge, however, is when particular resources are in use.
+
+The second method is to use `kubectl` to scale the resource count to 0. While deleting the resource using something like
+K9s is possible, Palette will recreate it immediately. Scaling replicas to zero via `kubectl` ensures the resource is
+effectively removed.
+
+This section provides guidance on removing resources using the second method.
+
+This section provides guidance on removing the resources using the second method.
+
+### Prerequisites
+
+- An active Kubernetes cluster in Palette.
+- A terminal client.
+
+### Enablement
+
+The following steps provide an example of how to clean up unneeded resources using `kubectl`. In this example, an AWS
+cluster called **cluster-update-deletion** is created using a cluster profile with the
+[Hello Universe](/integrations/packs/?pack=hello-universe) included. The Hello Universe pack has the API preset option
+disabled.
+
+1. Log in to Palette and create a cluster profile with two versions for an AWS IaaS cluster that includes the Hello
+   Universe pack. For example:
+
+   **Version 1.0.0**.
+
+   - OS = **ubuntu-aws**
+   - Kubernetes = **kubernetes**
+   - Network = **cni-calico**
+   - Storage = **csi-aws-ebs**
+   - App services = **hellouniverse** with the API preset option disabled.
+
+   **Version 1.1.0**.
+
+   - OS = **ubuntu-aws**
+   - Kubernetes = **kubernetes**
+   - Network = **cni-calico**
+   - Storage = **csi-aws-ebs**
+   - App services = **hellouniverse** with the API preset option enabled.
+
+2. Build a cluster using cluster profile version 1.0.0. This will take 15-20 minutes.
+
+3. Download the [Admin kubeconfig](https://docs.spectrocloud.com/clusters/cluster-management/kubeconfig/) file from the
path: docs/docs-content/clusters/cluster-management/cluster-updates.md
user: login: addetz
body: Yes, this ensures that versioned pages are linked in any older version docs. 
created_at: 2025-04-15T11:16:09Z
author_association: CONTRIBUTOR
diff_hunk: @@ -140,3 +142,123 @@ You can follow these steps to validate all cluster update approaches.
 3. Select the cluster you updated, and navigate to the **Profile** tab of the cluster.
 
 4. Confirm that the cluster is now using an updated profile.
+
+## Palette Reconciliation Behavior
+
+When cluster profile updates are applied, Palette will apply the changes to the cluster but will not delete any
+resources that are no longer in use. Depending on the situation, you can choose to keep or remove these resources. To
+remove the resources, utilize one of the following two methods.
+
+The first method would be a clean deployment with a new cluster profile. Once the new cluster and cluster profile are
+deployed, the previous version could be deleted. The challenge, however, is when particular resources are in use.
+
+The second method is to use `kubectl` to scale the resource count to 0. While deleting the resource using something like
path: docs/docs-content/clusters/cluster-management/cluster-updates.md
user: login: addetz
body: ```suggestion
The second method is to use `kubectl` to scale the resource count to 0. While deleting the resource manually
```
created_at: 2025-04-15T11:19:51Z
author_association: CONTRIBUTOR
diff_hunk: @@ -140,3 +142,123 @@ You can follow these steps to validate all cluster update approaches.
 3. Select the cluster you updated, and navigate to the **Profile** tab of the cluster.
 
 4. Confirm that the cluster is now using an updated profile.
+
+## Palette Reconciliation Behavior
+
+When cluster profile updates are applied, Palette will apply the changes to the cluster but will not delete any
+resources that are no longer in use. Depending on the situation, you can choose to keep or remove these resources. To
+remove the resources, utilize one of the following two methods.
+
+The first method would be a clean deployment with a new cluster profile. Once the new cluster and cluster profile are
+deployed, the previous version could be deleted. The challenge, however, is when particular resources are in use.
+
+The second method is to use `kubectl` to scale the resource count to 0. While deleting the resource using something like
+K9s is possible, Palette will recreate it immediately. Scaling replicas to zero via `kubectl` ensures the resource is
path: docs/docs-content/clusters/cluster-management/cluster-updates.md
user: login: addetz
body: ```suggestion
 is possible, Palette will recreate it immediately through its reconciliation flow. Scaling replicas to zero ensures the resource is
```
created_at: 2025-04-15T11:20:31Z
author_association: CONTRIBUTOR
diff_hunk: @@ -140,3 +142,123 @@ You can follow these steps to validate all cluster update approaches.
 3. Select the cluster you updated, and navigate to the **Profile** tab of the cluster.
 
 4. Confirm that the cluster is now using an updated profile.
+
+## Palette Reconciliation Behavior
+
+When cluster profile updates are applied, Palette will apply the changes to the cluster but will not delete any
+resources that are no longer in use. Depending on the situation, you can choose to keep or remove these resources. To
+remove the resources, utilize one of the following two methods.
+
+The first method would be a clean deployment with a new cluster profile. Once the new cluster and cluster profile are
+deployed, the previous version could be deleted. The challenge, however, is when particular resources are in use.
+
+The second method is to use `kubectl` to scale the resource count to 0. While deleting the resource using something like
+K9s is possible, Palette will recreate it immediately. Scaling replicas to zero via `kubectl` ensures the resource is
path: docs/docs-content/clusters/cluster-management/cluster-updates.md
user: login: addetz
body: I don't think we should be overly focused on tools in this introduction.
created_at: 2025-04-15T11:20:56Z
author_association: CONTRIBUTOR
diff_hunk: @@ -140,3 +142,123 @@ You can follow these steps to validate all cluster update approaches.
 3. Select the cluster you updated, and navigate to the **Profile** tab of the cluster.
 
 4. Confirm that the cluster is now using an updated profile.
+
+## Palette Reconciliation Behavior
+
+When cluster profile updates are applied, Palette will apply the changes to the cluster but will not delete any
+resources that are no longer in use. Depending on the situation, you can choose to keep or remove these resources. To
+remove the resources, utilize one of the following two methods.
+
+The first method would be a clean deployment with a new cluster profile. Once the new cluster and cluster profile are
+deployed, the previous version could be deleted. The challenge, however, is when particular resources are in use.
+
+The second method is to use `kubectl` to scale the resource count to 0. While deleting the resource using something like
+K9s is possible, Palette will recreate it immediately. Scaling replicas to zero via `kubectl` ensures the resource is
+effectively removed.
+
+This section provides guidance on removing resources using the second method.
+
+This section provides guidance on removing the resources using the second method.
+
+### Prerequisites
+
+- An active Kubernetes cluster in Palette.
+- A terminal client.
+
+### Enablement
+
+The following steps provide an example of how to clean up unneeded resources using `kubectl`. In this example, an AWS
+cluster called **cluster-update-deletion** is created using a cluster profile with the
path: docs/docs-content/clusters/cluster-management/cluster-updates.md
user: login: addetz
body: ```suggestion
cluster is created using a cluster profile with the
```
created_at: 2025-04-15T11:21:30Z
author_association: CONTRIBUTOR
diff_hunk: @@ -140,3 +142,123 @@ You can follow these steps to validate all cluster update approaches.
 3. Select the cluster you updated, and navigate to the **Profile** tab of the cluster.
 
 4. Confirm that the cluster is now using an updated profile.
+
+## Palette Reconciliation Behavior
+
+When cluster profile updates are applied, Palette will apply the changes to the cluster but will not delete any
+resources that are no longer in use. Depending on the situation, you can choose to keep or remove these resources. To
+remove the resources, utilize one of the following two methods.
+
+The first method would be a clean deployment with a new cluster profile. Once the new cluster and cluster profile are
+deployed, the previous version could be deleted. The challenge, however, is when particular resources are in use.
+
+The second method is to use `kubectl` to scale the resource count to 0. While deleting the resource using something like
+K9s is possible, Palette will recreate it immediately. Scaling replicas to zero via `kubectl` ensures the resource is
+effectively removed.
+
+This section provides guidance on removing resources using the second method.
+
+This section provides guidance on removing the resources using the second method.
+
+### Prerequisites
+
+- An active Kubernetes cluster in Palette.
+- A terminal client.
+
+### Enablement
+
+The following steps provide an example of how to clean up unneeded resources using `kubectl`. In this example, an AWS
+cluster called **cluster-update-deletion** is created using a cluster profile with the
path: docs/docs-content/clusters/cluster-management/cluster-updates.md
user: login: addetz
body: No need to call out the name of the cluster.
created_at: 2025-04-15T11:21:42Z
author_association: CONTRIBUTOR
diff_hunk: @@ -140,3 +142,123 @@ You can follow these steps to validate all cluster update approaches.
 3. Select the cluster you updated, and navigate to the **Profile** tab of the cluster.
 
 4. Confirm that the cluster is now using an updated profile.
+
+## Palette Reconciliation Behavior
+
+When cluster profile updates are applied, Palette will apply the changes to the cluster but will not delete any
+resources that are no longer in use. Depending on the situation, you can choose to keep or remove these resources. To
+remove the resources, utilize one of the following two methods.
+
+The first method would be a clean deployment with a new cluster profile. Once the new cluster and cluster profile are
+deployed, the previous version could be deleted. The challenge, however, is when particular resources are in use.
+
+The second method is to use `kubectl` to scale the resource count to 0. While deleting the resource using something like
+K9s is possible, Palette will recreate it immediately. Scaling replicas to zero via `kubectl` ensures the resource is
+effectively removed.
+
+This section provides guidance on removing resources using the second method.
+
+This section provides guidance on removing the resources using the second method.
+
+### Prerequisites
+
+- An active Kubernetes cluster in Palette.
+- A terminal client.
+
+### Enablement
+
+The following steps provide an example of how to clean up unneeded resources using `kubectl`. In this example, an AWS
+cluster called **cluster-update-deletion** is created using a cluster profile with the
+[Hello Universe](/integrations/packs/?pack=hello-universe) included. The Hello Universe pack has the API preset option
+disabled.
+
+1. Log in to Palette and create a cluster profile with two versions for an AWS IaaS cluster that includes the Hello
path: docs/docs-content/clusters/cluster-management/cluster-updates.md
user: login: addetz
body: ```suggestion
1. Log in to [Palette](https://console.spectrocloud.com/). Create a cluster profile with two versions for an AWS IaaS cluster that includes the Hello
```
created_at: 2025-04-15T11:23:06Z
author_association: CONTRIBUTOR
diff_hunk: @@ -140,3 +142,123 @@ You can follow these steps to validate all cluster update approaches.
 3. Select the cluster you updated, and navigate to the **Profile** tab of the cluster.
 
 4. Confirm that the cluster is now using an updated profile.
+
+## Palette Reconciliation Behavior
+
+When cluster profile updates are applied, Palette will apply the changes to the cluster but will not delete any
+resources that are no longer in use. Depending on the situation, you can choose to keep or remove these resources. To
+remove the resources, utilize one of the following two methods.
+
+The first method would be a clean deployment with a new cluster profile. Once the new cluster and cluster profile are
+deployed, the previous version could be deleted. The challenge, however, is when particular resources are in use.
+
+The second method is to use `kubectl` to scale the resource count to 0. While deleting the resource using something like
+K9s is possible, Palette will recreate it immediately. Scaling replicas to zero via `kubectl` ensures the resource is
+effectively removed.
+
+This section provides guidance on removing resources using the second method.
+
+This section provides guidance on removing the resources using the second method.
+
+### Prerequisites
+
+- An active Kubernetes cluster in Palette.
+- A terminal client.
+
+### Enablement
+
+The following steps provide an example of how to clean up unneeded resources using `kubectl`. In this example, an AWS
+cluster called **cluster-update-deletion** is created using a cluster profile with the
+[Hello Universe](/integrations/packs/?pack=hello-universe) included. The Hello Universe pack has the API preset option
+disabled.
+
+1. Log in to Palette and create a cluster profile with two versions for an AWS IaaS cluster that includes the Hello
path: docs/docs-content/clusters/cluster-management/cluster-updates.md
user: login: addetz
body: We always provide a link to SaaS when talking about Palette.
created_at: 2025-04-15T11:23:27Z
author_association: CONTRIBUTOR
diff_hunk: @@ -140,3 +142,123 @@ You can follow these steps to validate all cluster update approaches.
 3. Select the cluster you updated, and navigate to the **Profile** tab of the cluster.
 
 4. Confirm that the cluster is now using an updated profile.
+
+## Palette Reconciliation Behavior
+
+When cluster profile updates are applied, Palette will apply the changes to the cluster but will not delete any
+resources that are no longer in use. Depending on the situation, you can choose to keep or remove these resources. To
+remove the resources, utilize one of the following two methods.
+
+The first method would be a clean deployment with a new cluster profile. Once the new cluster and cluster profile are
+deployed, the previous version could be deleted. The challenge, however, is when particular resources are in use.
+
+The second method is to use `kubectl` to scale the resource count to 0. While deleting the resource using something like
+K9s is possible, Palette will recreate it immediately. Scaling replicas to zero via `kubectl` ensures the resource is
+effectively removed.
+
+This section provides guidance on removing resources using the second method.
+
+This section provides guidance on removing the resources using the second method.
+
+### Prerequisites
+
+- An active Kubernetes cluster in Palette.
+- A terminal client.
+
+### Enablement
+
+The following steps provide an example of how to clean up unneeded resources using `kubectl`. In this example, an AWS
+cluster called **cluster-update-deletion** is created using a cluster profile with the
+[Hello Universe](/integrations/packs/?pack=hello-universe) included. The Hello Universe pack has the API preset option
+disabled.
+
+1. Log in to Palette and create a cluster profile with two versions for an AWS IaaS cluster that includes the Hello
+   Universe pack. For example:
+
+   **Version 1.0.0**.
+
+   - OS = **ubuntu-aws**
+   - Kubernetes = **kubernetes**
path: docs/docs-content/clusters/cluster-management/cluster-updates.md
user: login: addetz
body: This doesn't tell me which pack you mean. I would suggest providing links to all the packs in these lists.
created_at: 2025-04-15T11:24:31Z
author_association: CONTRIBUTOR
diff_hunk: @@ -140,3 +142,123 @@ You can follow these steps to validate all cluster update approaches.
 3. Select the cluster you updated, and navigate to the **Profile** tab of the cluster.
 
 4. Confirm that the cluster is now using an updated profile.
+
+## Palette Reconciliation Behavior
+
+When cluster profile updates are applied, Palette will apply the changes to the cluster but will not delete any
+resources that are no longer in use. Depending on the situation, you can choose to keep or remove these resources. To
+remove the resources, utilize one of the following two methods.
+
+The first method would be a clean deployment with a new cluster profile. Once the new cluster and cluster profile are
+deployed, the previous version could be deleted. The challenge, however, is when particular resources are in use.
+
+The second method is to use `kubectl` to scale the resource count to 0. While deleting the resource using something like
+K9s is possible, Palette will recreate it immediately. Scaling replicas to zero via `kubectl` ensures the resource is
+effectively removed.
+
+This section provides guidance on removing resources using the second method.
+
+This section provides guidance on removing the resources using the second method.
+
+### Prerequisites
+
+- An active Kubernetes cluster in Palette.
+- A terminal client.
+
+### Enablement
+
+The following steps provide an example of how to clean up unneeded resources using `kubectl`. In this example, an AWS
+cluster called **cluster-update-deletion** is created using a cluster profile with the
+[Hello Universe](/integrations/packs/?pack=hello-universe) included. The Hello Universe pack has the API preset option
+disabled.
+
+1. Log in to Palette and create a cluster profile with two versions for an AWS IaaS cluster that includes the Hello
+   Universe pack. For example:
+
+   **Version 1.0.0**.
+
+   - OS = **ubuntu-aws**
+   - Kubernetes = **kubernetes**
+   - Network = **cni-calico**
+   - Storage = **csi-aws-ebs**
+   - App services = **hellouniverse** with the API preset option disabled.
+
+   **Version 1.1.0**.
+
+   - OS = **ubuntu-aws**
+   - Kubernetes = **kubernetes**
+   - Network = **cni-calico**
+   - Storage = **csi-aws-ebs**
+   - App services = **hellouniverse** with the API preset option enabled.
+
+2. Build a cluster using cluster profile version 1.0.0. This will take 15-20 minutes.
path: docs/docs-content/clusters/cluster-management/cluster-updates.md
user: login: addetz
body: ```suggestion
2. Build a cluster using cluster profile version 1.0.0.
```
created_at: 2025-04-15T11:25:00Z
author_association: CONTRIBUTOR
diff_hunk: @@ -140,3 +142,123 @@ You can follow these steps to validate all cluster update approaches.
 3. Select the cluster you updated, and navigate to the **Profile** tab of the cluster.
 
 4. Confirm that the cluster is now using an updated profile.
+
+## Palette Reconciliation Behavior
+
+When cluster profile updates are applied, Palette will apply the changes to the cluster but will not delete any
+resources that are no longer in use. Depending on the situation, you can choose to keep or remove these resources. To
+remove the resources, utilize one of the following two methods.
+
+The first method would be a clean deployment with a new cluster profile. Once the new cluster and cluster profile are
+deployed, the previous version could be deleted. The challenge, however, is when particular resources are in use.
+
+The second method is to use `kubectl` to scale the resource count to 0. While deleting the resource using something like
+K9s is possible, Palette will recreate it immediately. Scaling replicas to zero via `kubectl` ensures the resource is
+effectively removed.
+
+This section provides guidance on removing resources using the second method.
+
+This section provides guidance on removing the resources using the second method.
+
+### Prerequisites
+
+- An active Kubernetes cluster in Palette.
+- A terminal client.
+
+### Enablement
+
+The following steps provide an example of how to clean up unneeded resources using `kubectl`. In this example, an AWS
+cluster called **cluster-update-deletion** is created using a cluster profile with the
+[Hello Universe](/integrations/packs/?pack=hello-universe) included. The Hello Universe pack has the API preset option
+disabled.
+
+1. Log in to Palette and create a cluster profile with two versions for an AWS IaaS cluster that includes the Hello
+   Universe pack. For example:
+
+   **Version 1.0.0**.
+
+   - OS = **ubuntu-aws**
+   - Kubernetes = **kubernetes**
+   - Network = **cni-calico**
+   - Storage = **csi-aws-ebs**
+   - App services = **hellouniverse** with the API preset option disabled.
+
+   **Version 1.1.0**.
+
+   - OS = **ubuntu-aws**
+   - Kubernetes = **kubernetes**
+   - Network = **cni-calico**
+   - Storage = **csi-aws-ebs**
+   - App services = **hellouniverse** with the API preset option enabled.
+
+2. Build a cluster using cluster profile version 1.0.0. This will take 15-20 minutes.
path: docs/docs-content/clusters/cluster-management/cluster-updates.md
user: login: addetz
body: I think we should generally shy away from duration statements. It take 15-20 min for us on AWS, but if they go for another cloud it could be a different duration. 
created_at: 2025-04-15T11:25:54Z
author_association: CONTRIBUTOR
diff_hunk: @@ -140,3 +142,123 @@ You can follow these steps to validate all cluster update approaches.
 3. Select the cluster you updated, and navigate to the **Profile** tab of the cluster.
 
 4. Confirm that the cluster is now using an updated profile.
+
+## Palette Reconciliation Behavior
+
+When cluster profile updates are applied, Palette will apply the changes to the cluster but will not delete any
+resources that are no longer in use. Depending on the situation, you can choose to keep or remove these resources. To
+remove the resources, utilize one of the following two methods.
+
+The first method would be a clean deployment with a new cluster profile. Once the new cluster and cluster profile are
+deployed, the previous version could be deleted. The challenge, however, is when particular resources are in use.
+
+The second method is to use `kubectl` to scale the resource count to 0. While deleting the resource using something like
+K9s is possible, Palette will recreate it immediately. Scaling replicas to zero via `kubectl` ensures the resource is
+effectively removed.
+
+This section provides guidance on removing resources using the second method.
+
+This section provides guidance on removing the resources using the second method.
+
+### Prerequisites
+
+- An active Kubernetes cluster in Palette.
+- A terminal client.
+
+### Enablement
+
+The following steps provide an example of how to clean up unneeded resources using `kubectl`. In this example, an AWS
+cluster called **cluster-update-deletion** is created using a cluster profile with the
+[Hello Universe](/integrations/packs/?pack=hello-universe) included. The Hello Universe pack has the API preset option
+disabled.
+
+1. Log in to Palette and create a cluster profile with two versions for an AWS IaaS cluster that includes the Hello
+   Universe pack. For example:
+
+   **Version 1.0.0**.
+
+   - OS = **ubuntu-aws**
+   - Kubernetes = **kubernetes**
+   - Network = **cni-calico**
+   - Storage = **csi-aws-ebs**
+   - App services = **hellouniverse** with the API preset option disabled.
+
+   **Version 1.1.0**.
+
+   - OS = **ubuntu-aws**
+   - Kubernetes = **kubernetes**
+   - Network = **cni-calico**
+   - Storage = **csi-aws-ebs**
+   - App services = **hellouniverse** with the API preset option enabled.
+
+2. Build a cluster using cluster profile version 1.0.0. This will take 15-20 minutes.
+
+3. Download the [Admin kubeconfig](https://docs.spectrocloud.com/clusters/cluster-management/kubeconfig/) file from the
+   cluster **Overview** tab.
+
+4. Go your terminal application and run the following command
+
+```shell
+kubectl get pods --kubeconfig=admin.cluster-update-deletion.kubeconfig --namespace=hello-universe -o=custom-columns="POD_NAME:.metadata.name,CONTAINER_NAME:.status.containerStatuses[].name,CONTAINER_ID:.status.containerStatuses[].containerID"
+```
+
+5. This command will display the containers in the cluster that are in the hello universe namespace. It will include the
path: docs/docs-content/clusters/cluster-management/cluster-updates.md
user: login: addetz
body: This step talks about the output of step 4 and should therefore be combined with it. 
created_at: 2025-04-15T11:27:14Z
author_association: CONTRIBUTOR
diff_hunk: @@ -140,3 +142,123 @@ You can follow these steps to validate all cluster update approaches.
 3. Select the cluster you updated, and navigate to the **Profile** tab of the cluster.
 
 4. Confirm that the cluster is now using an updated profile.
+
+## Palette Reconciliation Behavior
+
+When cluster profile updates are applied, Palette will apply the changes to the cluster but will not delete any
+resources that are no longer in use. Depending on the situation, you can choose to keep or remove these resources. To
+remove the resources, utilize one of the following two methods.
+
+The first method would be a clean deployment with a new cluster profile. Once the new cluster and cluster profile are
+deployed, the previous version could be deleted. The challenge, however, is when particular resources are in use.
+
+The second method is to use `kubectl` to scale the resource count to 0. While deleting the resource using something like
+K9s is possible, Palette will recreate it immediately. Scaling replicas to zero via `kubectl` ensures the resource is
+effectively removed.
+
+This section provides guidance on removing resources using the second method.
+
+This section provides guidance on removing the resources using the second method.
+
+### Prerequisites
+
+- An active Kubernetes cluster in Palette.
+- A terminal client.
+
+### Enablement
+
+The following steps provide an example of how to clean up unneeded resources using `kubectl`. In this example, an AWS
+cluster called **cluster-update-deletion** is created using a cluster profile with the
+[Hello Universe](/integrations/packs/?pack=hello-universe) included. The Hello Universe pack has the API preset option
+disabled.
+
+1. Log in to Palette and create a cluster profile with two versions for an AWS IaaS cluster that includes the Hello
+   Universe pack. For example:
+
+   **Version 1.0.0**.
+
+   - OS = **ubuntu-aws**
+   - Kubernetes = **kubernetes**
+   - Network = **cni-calico**
+   - Storage = **csi-aws-ebs**
+   - App services = **hellouniverse** with the API preset option disabled.
+
+   **Version 1.1.0**.
+
+   - OS = **ubuntu-aws**
+   - Kubernetes = **kubernetes**
+   - Network = **cni-calico**
+   - Storage = **csi-aws-ebs**
+   - App services = **hellouniverse** with the API preset option enabled.
+
+2. Build a cluster using cluster profile version 1.0.0. This will take 15-20 minutes.
+
+3. Download the [Admin kubeconfig](https://docs.spectrocloud.com/clusters/cluster-management/kubeconfig/) file from the
+   cluster **Overview** tab.
+
+4. Go your terminal application and run the following command
+
+```shell
+kubectl get pods --kubeconfig=admin.cluster-update-deletion.kubeconfig --namespace=hello-universe -o=custom-columns="POD_NAME:.metadata.name,CONTAINER_NAME:.status.containerStatuses[].name,CONTAINER_ID:.status.containerStatuses[].containerID"
+```
+
+5. This command will display the containers in the cluster that are in the hello universe namespace. It will include the
+   pod name, container name, and container ID. You can use these identifiers with various `kubectl` options.
+
+Sample output
+
+```shell
+POD_NAME                                     CONTAINER_NAME   CONTAINER_ID
+hello-universe-deployment-6854947c67-ltdmq   hello-universe   containerd://584f07c2cf2dbb24f62e63be4322d16314d86e496eeb185c5a5944e884744239
+```
+
+6. Return to Palette and update the cluster using the profile version 1.1.0. This takes around 1-2 minutes.
path: docs/docs-content/clusters/cluster-management/cluster-updates.md
user: login: addetz
body: ```suggestion
6. Return to Palette and update the cluster using the profile version 1.1.0.
```
created_at: 2025-04-15T11:27:32Z
author_association: CONTRIBUTOR
diff_hunk: @@ -140,3 +142,123 @@ You can follow these steps to validate all cluster update approaches.
 3. Select the cluster you updated, and navigate to the **Profile** tab of the cluster.
 
 4. Confirm that the cluster is now using an updated profile.
+
+## Palette Reconciliation Behavior
+
+When cluster profile updates are applied, Palette will apply the changes to the cluster but will not delete any
+resources that are no longer in use. Depending on the situation, you can choose to keep or remove these resources. To
+remove the resources, utilize one of the following two methods.
+
+The first method would be a clean deployment with a new cluster profile. Once the new cluster and cluster profile are
+deployed, the previous version could be deleted. The challenge, however, is when particular resources are in use.
+
+The second method is to use `kubectl` to scale the resource count to 0. While deleting the resource using something like
+K9s is possible, Palette will recreate it immediately. Scaling replicas to zero via `kubectl` ensures the resource is
+effectively removed.
+
+This section provides guidance on removing resources using the second method.
+
+This section provides guidance on removing the resources using the second method.
+
+### Prerequisites
+
+- An active Kubernetes cluster in Palette.
+- A terminal client.
+
+### Enablement
+
+The following steps provide an example of how to clean up unneeded resources using `kubectl`. In this example, an AWS
+cluster called **cluster-update-deletion** is created using a cluster profile with the
+[Hello Universe](/integrations/packs/?pack=hello-universe) included. The Hello Universe pack has the API preset option
+disabled.
+
+1. Log in to Palette and create a cluster profile with two versions for an AWS IaaS cluster that includes the Hello
+   Universe pack. For example:
+
+   **Version 1.0.0**.
+
+   - OS = **ubuntu-aws**
+   - Kubernetes = **kubernetes**
+   - Network = **cni-calico**
+   - Storage = **csi-aws-ebs**
+   - App services = **hellouniverse** with the API preset option disabled.
+
+   **Version 1.1.0**.
+
+   - OS = **ubuntu-aws**
+   - Kubernetes = **kubernetes**
+   - Network = **cni-calico**
+   - Storage = **csi-aws-ebs**
+   - App services = **hellouniverse** with the API preset option enabled.
+
+2. Build a cluster using cluster profile version 1.0.0. This will take 15-20 minutes.
+
+3. Download the [Admin kubeconfig](https://docs.spectrocloud.com/clusters/cluster-management/kubeconfig/) file from the
+   cluster **Overview** tab.
+
+4. Go your terminal application and run the following command
+
+```shell
+kubectl get pods --kubeconfig=admin.cluster-update-deletion.kubeconfig --namespace=hello-universe -o=custom-columns="POD_NAME:.metadata.name,CONTAINER_NAME:.status.containerStatuses[].name,CONTAINER_ID:.status.containerStatuses[].containerID"
+```
+
+5. This command will display the containers in the cluster that are in the hello universe namespace. It will include the
+   pod name, container name, and container ID. You can use these identifiers with various `kubectl` options.
+
+Sample output
+
+```shell
+POD_NAME                                     CONTAINER_NAME   CONTAINER_ID
+hello-universe-deployment-6854947c67-ltdmq   hello-universe   containerd://584f07c2cf2dbb24f62e63be4322d16314d86e496eeb185c5a5944e884744239
+```
+
+6. Return to Palette and update the cluster using the profile version 1.1.0. This takes around 1-2 minutes.
+
+7. Return to the terminal and run the following command
+
+```shell
+kubectl get pods --kubeconfig=admin.cluster-update-deletion.kubeconfig --namespace=hello-universe -o=custom-columns="POD_NAME:.metadata.name,CONTAINER_NAME:.status.containerStatuses[].name,CONTAINER_ID:.status.containerStatuses[].containerID"
+```
+
+Sample output
+
+```shell
+POD_NAME                                     CONTAINER_NAME   CONTAINER_ID
+api-86f745b67c-gk4lx                         api              containerd://21c7c18e42350efc25ea300e43c3471c64fba6953ae14bb2b46387c8e5d9c06d
+hello-universe-deployment-6854947c67-ltdmq   hello-universe   containerd://584f07c2cf2dbb24f62e63be4322d16314d86e496eeb185c5a5944e884744239
+postgres-567dc9cb4c-cd7fn                    postgres         containerd://b704c87e77ea468156d7f8033b7ad8d9a8ce6048e640b84c529572ac1fb41cd5
+ui-f7ff4ddc5-hcv72                           ui               containerd://40f78fb4aef00445dc9cf051ca57d61f935594cbe1e426d1f193624769ac132d
+```
+
+With the cluster updated, we notice that the previous version of the Hello Universe app remains. This container,
+however, is not used with the API version and is no longer needed.
+
+8. Locate the pod name of the container you want to remove and run the following command.
+
+```shell
+kubectl scale deployment hello-universe-deployment --replicas=0 hello-universe-deployment-6854947c67-ltdmq --kubeconfig=admin.cluster-update-deletion.kubeconfig --namespace hello-universe
+```
+
+Sample output
+
+```
+deployment.apps/hello-universe-deployment scaled
+Error from server (NotFound): deployments.apps "hello-universe-deployment-6854947c67-ltdmq" not found
+```
+
+This command will reduce the container count to 0, effectively stopping the container. If you have multiple clusters
path: docs/docs-content/clusters/cluster-management/cluster-updates.md
user: login: addetz
body: The added benefit of this approach is that nothing is destroyed yes, so readers can ensure that they don't cause an outage during the deletion process. I think we should mention this.
created_at: 2025-04-15T11:29:44Z
author_association: CONTRIBUTOR
diff_hunk: @@ -140,3 +142,123 @@ You can follow these steps to validate all cluster update approaches.
 3. Select the cluster you updated, and navigate to the **Profile** tab of the cluster.
 
 4. Confirm that the cluster is now using an updated profile.
+
+## Palette Reconciliation Behavior
+
+When cluster profile updates are applied, Palette will apply the changes to the cluster but will not delete any
+resources that are no longer in use. Depending on the situation, you can choose to keep or remove these resources. To
+remove the resources, utilize one of the following two methods.
+
+The first method would be a clean deployment with a new cluster profile. Once the new cluster and cluster profile are
+deployed, the previous version could be deleted. The challenge, however, is when particular resources are in use.
+
+The second method is to use `kubectl` to scale the resource count to 0. While deleting the resource using something like
+K9s is possible, Palette will recreate it immediately. Scaling replicas to zero via `kubectl` ensures the resource is
+effectively removed.
+
+This section provides guidance on removing resources using the second method.
+
+This section provides guidance on removing the resources using the second method.
+
+### Prerequisites
+
+- An active Kubernetes cluster in Palette.
+- A terminal client.
+
+### Enablement
+
+The following steps provide an example of how to clean up unneeded resources using `kubectl`. In this example, an AWS
+cluster called **cluster-update-deletion** is created using a cluster profile with the
+[Hello Universe](/integrations/packs/?pack=hello-universe) included. The Hello Universe pack has the API preset option
+disabled.
+
+1. Log in to Palette and create a cluster profile with two versions for an AWS IaaS cluster that includes the Hello
+   Universe pack. For example:
+
+   **Version 1.0.0**.
+
+   - OS = **ubuntu-aws**
+   - Kubernetes = **kubernetes**
+   - Network = **cni-calico**
+   - Storage = **csi-aws-ebs**
+   - App services = **hellouniverse** with the API preset option disabled.
+
+   **Version 1.1.0**.
+
+   - OS = **ubuntu-aws**
+   - Kubernetes = **kubernetes**
+   - Network = **cni-calico**
+   - Storage = **csi-aws-ebs**
+   - App services = **hellouniverse** with the API preset option enabled.
+
+2. Build a cluster using cluster profile version 1.0.0. This will take 15-20 minutes.
+
+3. Download the [Admin kubeconfig](https://docs.spectrocloud.com/clusters/cluster-management/kubeconfig/) file from the
+   cluster **Overview** tab.
+
+4. Go your terminal application and run the following command
+
+```shell
+kubectl get pods --kubeconfig=admin.cluster-update-deletion.kubeconfig --namespace=hello-universe -o=custom-columns="POD_NAME:.metadata.name,CONTAINER_NAME:.status.containerStatuses[].name,CONTAINER_ID:.status.containerStatuses[].containerID"
+```
+
+5. This command will display the containers in the cluster that are in the hello universe namespace. It will include the
+   pod name, container name, and container ID. You can use these identifiers with various `kubectl` options.
+
+Sample output
+
+```shell
+POD_NAME                                     CONTAINER_NAME   CONTAINER_ID
+hello-universe-deployment-6854947c67-ltdmq   hello-universe   containerd://584f07c2cf2dbb24f62e63be4322d16314d86e496eeb185c5a5944e884744239
+```
+
+6. Return to Palette and update the cluster using the profile version 1.1.0. This takes around 1-2 minutes.
+
+7. Return to the terminal and run the following command
+
+```shell
+kubectl get pods --kubeconfig=admin.cluster-update-deletion.kubeconfig --namespace=hello-universe -o=custom-columns="POD_NAME:.metadata.name,CONTAINER_NAME:.status.containerStatuses[].name,CONTAINER_ID:.status.containerStatuses[].containerID"
+```
+
+Sample output
+
+```shell
+POD_NAME                                     CONTAINER_NAME   CONTAINER_ID
+api-86f745b67c-gk4lx                         api              containerd://21c7c18e42350efc25ea300e43c3471c64fba6953ae14bb2b46387c8e5d9c06d
+hello-universe-deployment-6854947c67-ltdmq   hello-universe   containerd://584f07c2cf2dbb24f62e63be4322d16314d86e496eeb185c5a5944e884744239
+postgres-567dc9cb4c-cd7fn                    postgres         containerd://b704c87e77ea468156d7f8033b7ad8d9a8ce6048e640b84c529572ac1fb41cd5
+ui-f7ff4ddc5-hcv72                           ui               containerd://40f78fb4aef00445dc9cf051ca57d61f935594cbe1e426d1f193624769ac132d
+```
+
+With the cluster updated, we notice that the previous version of the Hello Universe app remains. This container,
+however, is not used with the API version and is no longer needed.
+
+8. Locate the pod name of the container you want to remove and run the following command.
+
+```shell
+kubectl scale deployment hello-universe-deployment --replicas=0 hello-universe-deployment-6854947c67-ltdmq --kubeconfig=admin.cluster-update-deletion.kubeconfig --namespace hello-universe
+```
+
+Sample output
+
+```
+deployment.apps/hello-universe-deployment scaled
+Error from server (NotFound): deployments.apps "hello-universe-deployment-6854947c67-ltdmq" not found
+```
+
+This command will reduce the container count to 0, effectively stopping the container. If you have multiple clusters
+with resources no longer in use, you could put the command into a script to help remove those additional resources.
+
+### Validation
+
+You can follow these steps to validate all cluster update approaches.
path: docs/docs-content/clusters/cluster-management/cluster-updates.md
user: login: addetz
body: Remove this as I agree with Lenny that only the second method from the intro should remain.
created_at: 2025-04-15T11:30:30Z
author_association: CONTRIBUTOR
diff_hunk: @@ -140,3 +142,123 @@ You can follow these steps to validate all cluster update approaches.
 3. Select the cluster you updated, and navigate to the **Profile** tab of the cluster.
 
 4. Confirm that the cluster is now using an updated profile.
+
+## Palette Reconciliation Behavior
+
+When cluster profile updates are applied, Palette will apply the changes to the cluster but will not delete any
+resources that are no longer in use. Depending on the situation, you can choose to keep or remove these resources. To
+remove the resources, utilize one of the following two methods.
+
+The first method would be a clean deployment with a new cluster profile. Once the new cluster and cluster profile are
path: docs/docs-content/clusters/cluster-management/cluster-updates.md
user: login: addetz
body: Agree with this point. Tearing down the entire cluster isn't really a thing we would ever recommend.
created_at: 2025-04-15T11:31:06Z
author_association: CONTRIBUTOR
diff_hunk: @@ -140,3 +142,123 @@ You can follow these steps to validate all cluster update approaches.
 3. Select the cluster you updated, and navigate to the **Profile** tab of the cluster.
 
 4. Confirm that the cluster is now using an updated profile.
+
+## Palette Reconciliation Behavior
+
+When cluster profile updates are applied, Palette will apply the changes to the cluster but will not delete any
+resources that are no longer in use. Depending on the situation, you can choose to keep or remove these resources. To
path: docs/docs-content/clusters/cluster-management/cluster-updates.md
user: login: benradstone
body: That was part of my suggested change in all honesty ✋ .
created_at: 2025-04-15T11:45:40Z
author_association: CONTRIBUTOR
diff_hunk: @@ -140,3 +142,123 @@ You can follow these steps to validate all cluster update approaches.
 3. Select the cluster you updated, and navigate to the **Profile** tab of the cluster.
 
 4. Confirm that the cluster is now using an updated profile.
+
+## Palette Reconciliation Behavior
+
+When cluster profile updates are applied, Palette will apply the changes to the cluster but will not delete any
+resources that are no longer in use. Depending on the situation, you can choose to keep or remove these resources. To
+remove the resources, utilize one of the following two methods.
+
+The first method would be a clean deployment with a new cluster profile. Once the new cluster and cluster profile are
+deployed, the previous version could be deleted. However, this may have unintended downstream effects because it does not preserve any resource that is currently in use.
+
+The second method is to use `kubectl` to scale the resource count to 0. While deleting the resource manually
+K9s is possible, Palette will recreate it immediately. Scaling replicas to zero via `kubectl` ensures the resource is
+effectively removed.
+
+This section provides guidance on removing resources using the second method.
+
+This section provides guidance on removing the resources using the second method.
+
+### Prerequisites
+
+- An active Kubernetes cluster in Palette.
+- A terminal client.
+
+### Enablement
+
+The following steps provide an example of how to clean up unneeded resources using `kubectl`. In this example, an AWS
+cluster called **cluster-update-deletion** is created using a cluster profile with the
+<VersionedLink text="Hello Universe" url="/integrations/packs/?pack=hello-universe"/> included. The Hello Universe pack has the API preset option
+disabled.
+
+1. Log in to Palette and create a cluster profile with two versions for an AWS IaaS cluster that includes the Hello
+   Universe pack. For example:
+
+   **Version 1.0.0**.
+
+   - OS = **ubuntu-aws**
+   - Kubernetes = **kubernetes**
+   - Network = **cni-calico**
+   - Storage = **csi-aws-ebs**
+   - App services = **hellouniverse** with the API preset option disabled.
+
+   **Version 1.1.0**.
+
+   - OS = **ubuntu-aws**
+   - Kubernetes = **kubernetes**
+   - Network = **cni-calico**
+   - Storage = **csi-aws-ebs**
+   - App services = **hellouniverse** with the API preset option enabled.
+
+2. Build a cluster using cluster profile version 1.0.0. This will take 15-20 minutes.
+
+3. Download the [Admin kubeconfig](https://docs.spectrocloud.com/clusters/cluster-management/kubeconfig/) file from the
+   cluster **Overview** tab.
+
+4. Go your terminal application and run the following command
+
+   ```shell
+   kubectl get pods --kubeconfig=admin.cluster-update-deletion.kubeconfig --namespace=hello-universe -o=custom-columns="POD_NAME:.metadata.name,CONTAINER_NAME:.status.containerStatuses[].name,CONTAINER_ID:.status.containerStatuses[].containerID"
path: docs/docs-content/clusters/cluster-management/cluster-updates.md
user: login: github-actions[bot]
body: 🚫 **[vale]** <sub>reported by [reviewdog](https://github.com/reviewdog/reviewdog) :dog:</sub><br>[spectrocloud-docs-internal.longform] Avoid using the short form of commands. Replace the short form flag in 'universe -o' with the corresponding long form flag.
created_at: 2025-04-15T11:49:38Z
author_association: CONTRIBUTOR
diff_hunk: @@ -140,3 +141,100 @@ You can follow these steps to validate all cluster update approaches.
 3. Select the cluster you updated, and navigate to the **Profile** tab of the cluster.
 
 4. Confirm that the cluster is now using an updated profile.
+
+## Palette Reconciliation After Updating
+
+When cluster profile updates are applied, Palette will apply the changes to the cluster but will not delete any
+resources that are no longer in use. You can choose to keep or remove these resources. 
+
+You can use `kubectl` to scale the resource count to 0. While deleting the resource using something like
+K9s is possible, Palette will recreate it immediately. Scaling replicas to zero via `kubectl` ensures the resource is
+effectively removed.
+
+### Prerequisites
+
+- An active Kubernetes cluster in Palette.
+- A terminal client.
+
+### Enablement
+
+The following steps provide an example of how to clean up unneeded resources using `kubectl`. In this example, an AWS
+cluster is created using a cluster profile with the
+
+<VersionedLink text="Hello Universe" url="/integrations/packs/?pack=hello-universe" /> included. The Hello Universe pack
+has the API preset option disabled.
+
+1. Log in to [Palette](https://console.spectrocloud.com/). Create a cluster profile with two versions for an AWS IaaS
+   cluster that includes the Hello Universe pack. For example:
+
+   **Version 1.0.0**.
+
+   - OS = <VersionedLink text="Ubuntu" url="/integrations/packs/?pack=ubuntu-aws" />
+   - Kubernetes = <VersionedLink text="Kubernetes" url="/integrations/packs/?pack=kubernetes" />
+   - Network = <VersionedLink text="Calico CNI" url="/integrations/packs/?pack=cni-calico" />
+   - Storage = <VersionedLink text="cAWS EBS CSI Driver" url="/integrations/packs/?pack=csi-aws-ebs" />
+   - App services = <VersionedLink text="Hello Universe" url="/integrations/packs/?pack=hello-universe" /> with the API preset option disabled.
+
+   **Version 1.1.0**.
+
+   - OS = <VersionedLink text="Ubuntu" url="/integrations/packs/?pack=ubuntu-aws" />
+   - Kubernetes = <VersionedLink text="Kubernetes" url="/integrations/packs/?pack=kubernetes" />
+   - Network = <VersionedLink text="Calico CNI" url="/integrations/packs/?pack=cni-calico" />
+   - Storage = <VersionedLink text="cAWS EBS CSI Driver" url="/integrations/packs/?pack=csi-aws-ebs" />
+   - App services = <VersionedLink text="Hello Universe" url="/integrations/packs/?pack=hello-universe" /> with the API preset option enabled.
+
+2. Build a cluster using cluster profile version 1.0.0. This will take 15-20 minutes.
+
+3. Download the [Admin kubeconfig](./kubeconfig.md) file from the cluster **Overview** tab.
+
+4. Go your terminal application and run the following command
+
+   ```shell
+   kubectl get pods --kubeconfig=admin.cluster-update-deletion.kubeconfig --namespace=hello-universe -o=custom-columns="POD_NAME:.metadata.name,CONTAINER_NAME:.status.containerStatuses[].name,CONTAINER_ID:.status.containerStatuses[].containerID"
+   ```
+
+5. This command will display the containers in the cluster that are in the `hello-universe` namespace. It will include
+   the pod name, container name, and container ID. You can use these identifiers with various `kubectl` options.
+
+   Sample output
+
+   ```shell
+   POD_NAME                                     CONTAINER_NAME   CONTAINER_ID
+   hello-universe-deployment-6854947c67-ltdmq   hello-universe   containerd://584f07c2cf2dbb24f62e63be4322d16314d86e496eeb185c5a5944e884744239
+   ```
+
+6. Return to Palette and update the cluster using the profile version 1.1.0.
+
+7. Return to the terminal and run the following command
+
+```shell
+kubectl get pods --kubeconfig=admin.cluster-update-deletion.kubeconfig --namespace=hello-universe -o=custom-columns="POD_NAME:.metadata.name,CONTAINER_NAME:.status.containerStatuses[].name,CONTAINER_ID:.status.containerStatuses[].containerID"
+```
+
+Sample output
+
+```shell
+POD_NAME                                     CONTAINER_NAME   CONTAINER_ID
+api-86f745b67c-gk4lx                         api              containerd://21c7c18e42350efc25ea300e43c3471c64fba6953ae14bb2b46387c8e5d9c06d
+hello-universe-deployment-6854947c67-ltdmq   hello-universe   containerd://584f07c2cf2dbb24f62e63be4322d16314d86e496eeb185c5a5944e884744239
+postgres-567dc9cb4c-cd7fn                    postgres         containerd://b704c87e77ea468156d7f8033b7ad8d9a8ce6048e640b84c529572ac1fb41cd5
+ui-f7ff4ddc5-hcv72                           ui               containerd://40f78fb4aef00445dc9cf051ca57d61f935594cbe1e426d1f193624769ac132d
+```
+
+With the cluster updated, we notice that the previous version of the Hello Universe app remains. This container,
+however, is not used with the API version and is no longer needed.
+
+7. Locate the pod name of the container you want to remove and run the following command.
path: docs/docs-content/clusters/cluster-management/cluster-updates.md
user: login: github-actions[bot]
body: 🚫 **[vale]** <sub>reported by [reviewdog](https://github.com/reviewdog/reviewdog) :dog:</sub><br>[spectrocloud-docs-internal.ableism] Avoid using ableism terms. Use 'issue' instead of 'run'.
created_at: 2025-04-15T13:27:45Z
author_association: CONTRIBUTOR
diff_hunk: @@ -140,3 +140,105 @@ You can follow these steps to validate all cluster update approaches.
 3. Select the cluster you updated, and navigate to the **Profile** tab of the cluster.
 
 4. Confirm that the cluster is now using an updated profile.
+
+## Palette Reconciliation After Updating
+
+When cluster profile updates are applied, Palette will apply the changes to the cluster but will not delete any
+resources that are no longer in use. You can choose to keep or remove these resources.
+
+You can use `kubectl` to scale the resource count to 0. While deleting the resource using something like K9s is
+possible, Palette will recreate it immediately. Scaling replicas to zero via `kubectl` ensures the resource is
+effectively removed.
+
+### Prerequisites
+
+- An active Kubernetes cluster in Palette.
+- A terminal client.
+
+### Enablement
+
+The following steps provide an example of how to clean up unneeded resources using `kubectl`. In this example, an AWS
+cluster is created using a cluster profile with the
+
+<VersionedLink text="Hello Universe" url="/integrations/packs/?pack=hello-universe" /> included. The Hello Universe pack
+has the API preset option disabled.
+
+1. Log in to [Palette](https://console.spectrocloud.com/). Create a cluster profile with two versions for an AWS IaaS
+   cluster that includes the Hello Universe pack. For example:
+
+   **Version 1.0.0**.
+
+   - OS = <VersionedLink text="Ubuntu" url="/integrations/packs/?pack=ubuntu-aws" />
+   - Kubernetes = <VersionedLink text="Kubernetes" url="/integrations/packs/?pack=kubernetes" />
+   - Network = <VersionedLink text="Calico CNI" url="/integrations/packs/?pack=cni-calico" />
+   - Storage = <VersionedLink text="AWS EBS CSI Driver" url="/integrations/packs/?pack=csi-aws-ebs" />
+   - App services = <VersionedLink text="Hello Universe" url="/integrations/packs/?pack=hello-universe" /> with the API
+     preset option disabled.
+
+   **Version 1.1.0**.
+
+   - OS = <VersionedLink text="Ubuntu" url="/integrations/packs/?pack=ubuntu-aws" />
+   - Kubernetes = <VersionedLink text="Kubernetes" url="/integrations/packs/?pack=kubernetes" />
+   - Network = <VersionedLink text="Calico CNI" url="/integrations/packs/?pack=cni-calico" />
+   - Storage = <VersionedLink text="AWS EBS CSI Driver" url="/integrations/packs/?pack=csi-aws-ebs" />
+   - App services = <VersionedLink text="Hello Universe" url="/integrations/packs/?pack=hello-universe" /> with the API
+     preset option enabled.
+
+2. Build a cluster using cluster profile version 1.0.0. This will take 15-20 minutes.
+
+3. Download the [Admin kubeconfig](./kubeconfig.md) file from the cluster **Overview** tab.
+
+4. Go your terminal application and run the following command
+
+   ```shell
+   kubectl get pods --kubeconfig=admin.cluster-update-deletion.kubeconfig --namespace=hello-universe -o=custom-columns="POD_NAME:.metadata.name,CONTAINER_NAME:.status.containerStatuses[].name,CONTAINER_ID:.status.containerStatuses[].containerID"
+   ```
+
+5. This command will display the containers in the cluster that are in the `hello-universe` namespace. It will include
+   the pod name, container name, and container ID. You can use these identifiers with various `kubectl` options.
+
+   Sample output
+
+   ```shell
+   POD_NAME                                     CONTAINER_NAME   CONTAINER_ID
+   hello-universe-deployment-6854947c67-ltdmq   hello-universe   containerd://584f07c2cf2dbb24f62e63be4322d16314d86e496eeb185c5a5944e884744239
+   ```
+
+6. Return to Palette and update the cluster using the profile version 1.1.0.
+
+7. Return to the terminal and run the following command
+
+   ```shell
+   kubectl get pods --kubeconfig=admin.cluster-update-deletion.kubeconfig --namespace=hello-universe -o=custom-columns="POD_NAME:.metadata.name,CONTAINER_NAME:.status.containerStatuses[].name,CONTAINER_ID:.status.containerStatuses[].containerID"
path: docs/docs-content/clusters/cluster-management/cluster-updates.md
user: login: github-actions[bot]
body: 🚫 **[vale]** <sub>reported by [reviewdog](https://github.com/reviewdog/reviewdog) :dog:</sub><br>[spectrocloud-docs-internal.longform] Avoid using the short form of commands. Replace the short form flag in 'universe -o' with the corresponding long form flag.
created_at: 2025-04-15T14:07:12Z
author_association: CONTRIBUTOR
diff_hunk: @@ -140,3 +140,105 @@ You can follow these steps to validate all cluster update approaches.
 3. Select the cluster you updated, and navigate to the **Profile** tab of the cluster.
 
 4. Confirm that the cluster is now using an updated profile.
+
+## Palette Reconciliation After Updating
+
+When cluster profile updates are applied, Palette will apply the changes to the cluster but will not delete any
+resources that are no longer in use. You can choose to keep or remove these resources.
+
+You can use `kubectl` to scale the resource count to 0. While deleting the resource using something like K9s is
+possible, Palette will recreate it immediately. Scaling replicas to zero via `kubectl` ensures the resource is
+effectively removed.
+
+### Prerequisites
+
+- An active Kubernetes cluster in Palette.
+- A terminal client.
+
+### Enablement
+
+The following steps provide an example of how to clean up unneeded resources using `kubectl`. In this example, an AWS
+cluster is created using a cluster profile with the
+
+<VersionedLink text="Hello Universe" url="/integrations/packs/?pack=hello-universe" /> included. The Hello Universe pack
+has the API preset option disabled.
+
+1. Log in to [Palette](https://console.spectrocloud.com/). Create a cluster profile with two versions for an AWS IaaS
+   cluster that includes the Hello Universe pack. For example:
+
+   **Version 1.0.0**.
+
+   - OS = <VersionedLink text="Ubuntu" url="/integrations/packs/?pack=ubuntu-aws" />
+   - Kubernetes = <VersionedLink text="Kubernetes" url="/integrations/packs/?pack=kubernetes" />
+   - Network = <VersionedLink text="Calico CNI" url="/integrations/packs/?pack=cni-calico" />
+   - Storage = <VersionedLink text="AWS EBS CSI Driver" url="/integrations/packs/?pack=csi-aws-ebs" />
+   - App services = <VersionedLink text="Hello Universe" url="/integrations/packs/?pack=hello-universe" /> with the API
+     preset option disabled.
+
+   **Version 1.1.0**.
+
+   - OS = <VersionedLink text="Ubuntu" url="/integrations/packs/?pack=ubuntu-aws" />
+   - Kubernetes = <VersionedLink text="Kubernetes" url="/integrations/packs/?pack=kubernetes" />
+   - Network = <VersionedLink text="Calico CNI" url="/integrations/packs/?pack=cni-calico" />
+   - Storage = <VersionedLink text="AWS EBS CSI Driver" url="/integrations/packs/?pack=csi-aws-ebs" />
+   - App services = <VersionedLink text="Hello Universe" url="/integrations/packs/?pack=hello-universe" /> with the API
+     preset option enabled.
+
+2. Build a cluster using cluster profile version 1.0.0. This will take 15-20 minutes.
+
+3. Download the [Admin kubeconfig](./kubeconfig.md) file from the cluster **Overview** tab.
+
+4. Go your terminal application and run the following command
+
+   ```shell
+   kubectl get pods --kubeconfig=admin.cluster-update-deletion.kubeconfig --namespace=hello-universe -o=custom-columns="POD_NAME:.metadata.name,CONTAINER_NAME:.status.containerStatuses[].name,CONTAINER_ID:.status.containerStatuses[].containerID"
+   ```
+
+5. This command will display the containers in the cluster that are in the `hello-universe` namespace. It will include
+   the pod name, container name, and container ID. You can use these identifiers with various `kubectl` options.
+
+   Sample output
+
+   ```shell
+   POD_NAME                                     CONTAINER_NAME   CONTAINER_ID
+   hello-universe-deployment-6854947c67-ltdmq   hello-universe   containerd://584f07c2cf2dbb24f62e63be4322d16314d86e496eeb185c5a5944e884744239
+   ```
+
+6. Return to Palette and update the cluster using the profile version 1.1.0.
+
+7. Return to the terminal and run the following command
+
+   ```shell
+   kubectl get pods --kubeconfig=admin.cluster-update-deletion.kubeconfig --namespace=hello-universe -o=custom-columns="POD_NAME:.metadata.name,CONTAINER_NAME:.status.containerStatuses[].name,CONTAINER_ID:.status.containerStatuses[].containerID"
+   ```
+
+   Sample output
+
+   ```shell
+   POD_NAME                                     CONTAINER_NAME   CONTAINER_ID
+   api-86f745b67c-gk4lx                         api              containerd://21c7c18e42350efc25ea300e43c3471c64fba6953ae14bb2b46387c8e5d9c06d
+   hello-universe-deployment-6854947c67-ltdmq   hello-universe   containerd://584f07c2cf2dbb24f62e63be4322d16314d86e496eeb185c5a5944e884744239
+   postgres-567dc9cb4c-cd7fn                    postgres         containerd://b704c87e77ea468156d7f8033b7ad8d9a8ce6048e640b84c529572ac1fb41cd5
+   ui-f7ff4ddc5-hcv72                           ui               containerd://40f78fb4aef00445dc9cf051ca57d61f935594cbe1e426d1f193624769ac132d
+   ```
+
+   With the cluster updated, we notice that the previous version of the Hello Universe app remains. This container,
+   however, is not used with the API version and is no longer needed.
+
+8. Locate the pod name of the container you want to remove and run the following command.
path: docs/docs-content/clusters/cluster-management/cluster-updates.md
user: login: github-actions[bot]
body: 🚫 **[vale]** <sub>reported by [reviewdog](https://github.com/reviewdog/reviewdog) :dog:</sub><br>[spectrocloud-docs-internal.ableism] Avoid using ableism terms. Use 'issue' instead of 'run'.
created_at: 2025-04-15T14:07:12Z
author_association: CONTRIBUTOR
diff_hunk: @@ -140,3 +140,106 @@ You can follow these steps to validate all cluster update approaches.
 3. Select the cluster you updated, and navigate to the **Profile** tab of the cluster.
 
 4. Confirm that the cluster is now using an updated profile.
+
+## Palette Reconciliation After Updating
+
+When cluster profile updates are applied, Palette will apply the changes to the cluster but will not delete any
+resources that are no longer in use. You can choose to keep or remove these resources.
+
+You can use `kubectl` to scale the resource count to 0. While deleting the resource using something like K9s is
+possible, Palette will recreate it immediately. Scaling replicas to zero via `kubectl` ensures the resource is
+effectively removed.
+
+### Prerequisites
+
+- An active Kubernetes cluster in Palette.
+- A terminal client.
+
+### Enablement
+
+The following steps provide an example of how to clean up unneeded resources using `kubectl`. In this example, an AWS
+cluster is created using a cluster profile with the
+
+<VersionedLink text="Hello Universe" url="/integrations/packs/?pack=hello-universe" /> included. The Hello Universe pack
+has the API preset option disabled.
path: docs/docs-content/clusters/cluster-management/cluster-updates.md
user: login: caroldelwing
body: ```suggestion
<!-- prettier-ignore -->
The following steps provide an example of how to scale the count of unneeded resources to 0 using `kubectl`. In this example, an AWS cluster is created using a cluster profile with the <VersionedLink text="Hello Universe" url="/integrations/packs/?pack=hello-universe" /> included. The Hello Universe pack has the API preset option disabled.
```
prettier adds new lines after versioned links, so we need to ignore it. I also changed this paragraph a little bit
created_at: 2025-04-15T14:53:32Z
author_association: CONTRIBUTOR
diff_hunk: @@ -140,3 +140,106 @@ You can follow these steps to validate all cluster update approaches.
 3. Select the cluster you updated, and navigate to the **Profile** tab of the cluster.
 
 4. Confirm that the cluster is now using an updated profile.
+
+## Palette Reconciliation After Updating
+
+When cluster profile updates are applied, Palette will apply the changes to the cluster but will not delete any
+resources that are no longer in use. You can choose to keep or remove these resources.
path: docs/docs-content/clusters/cluster-management/cluster-updates.md
user: login: caroldelwing
body: ```suggestion
resources that are no longer in use. You can choose to keep or manually remove these resources.
```
created_at: 2025-04-15T14:54:48Z
author_association: CONTRIBUTOR
diff_hunk: @@ -140,3 +140,106 @@ You can follow these steps to validate all cluster update approaches.
 3. Select the cluster you updated, and navigate to the **Profile** tab of the cluster.
 
 4. Confirm that the cluster is now using an updated profile.
+
+## Palette Reconciliation After Updating
+
+When cluster profile updates are applied, Palette will apply the changes to the cluster but will not delete any
+resources that are no longer in use. You can choose to keep or remove these resources.
+
+You can use `kubectl` to scale the resource count to 0. While deleting the resource using something like K9s is
+possible, Palette will recreate it immediately. Scaling replicas to zero via `kubectl` ensures the resource is
+effectively removed.
path: docs/docs-content/clusters/cluster-management/cluster-updates.md
user: login: caroldelwing
body: ```suggestion
To remove unused resources created by a pack from a cluster, you need to manually delete the pack from the cluster profile and apply the changes to the cluster. This will effectively remove all resources associated with the pack. However, this approach may not always be desirable, and there are alternative solutions.

For example, you can use `kubectl` to scale the resource replicas to zero. While manually deleting the resource is an option, Palette will automatically recreate it if the pack remains in the cluster profile. Scaling the replicas to zero using `kubectl` ensures that no active instances of the resource are running, without triggering Palette to restore them.
```
1. I think the deletion of the pack from the cluster profile alternative is important and needs to be mentioned.
2. The resource is not effectively removed, it will continue there, but idle, and waiting to be re-scaled.
3. Removed the k9s mention because you can achieve the same result using kubectl.
created_at: 2025-04-15T14:58:16Z
author_association: CONTRIBUTOR
diff_hunk: @@ -140,3 +140,106 @@ You can follow these steps to validate all cluster update approaches.
 3. Select the cluster you updated, and navigate to the **Profile** tab of the cluster.
 
 4. Confirm that the cluster is now using an updated profile.
+
+## Palette Reconciliation After Updating
+
+When cluster profile updates are applied, Palette will apply the changes to the cluster but will not delete any
+resources that are no longer in use. You can choose to keep or remove these resources.
+
+You can use `kubectl` to scale the resource count to 0. While deleting the resource using something like K9s is
+possible, Palette will recreate it immediately. Scaling replicas to zero via `kubectl` ensures the resource is
+effectively removed.
+
+### Prerequisites
+
+- An active Kubernetes cluster in Palette.
+- A terminal client.
+
+### Enablement
+
+The following steps provide an example of how to clean up unneeded resources using `kubectl`. In this example, an AWS
+cluster is created using a cluster profile with the
+
+<VersionedLink text="Hello Universe" url="/integrations/packs/?pack=hello-universe" /> included. The Hello Universe pack
+has the API preset option disabled.
+
+1. Log in to [Palette](https://console.spectrocloud.com/). Create a cluster profile with two versions for an AWS IaaS
+   cluster that includes the Hello Universe pack. For example:
path: docs/docs-content/clusters/cluster-management/cluster-updates.md
user: login: caroldelwing
body: ```suggestion
1. Log in to [Palette](https://console.spectrocloud.com/). 

2. Create a cluster profile with two versions for an AWS IaaS
   cluster that includes the Hello Universe pack. For example:
```
we usually separate these steps, we just need to fix the other numbers. Let's also add a relative link to the cluster profile creation guide
created_at: 2025-04-15T15:05:29Z
author_association: CONTRIBUTOR
diff_hunk: @@ -140,3 +140,106 @@ You can follow these steps to validate all cluster update approaches.
 3. Select the cluster you updated, and navigate to the **Profile** tab of the cluster.
 
 4. Confirm that the cluster is now using an updated profile.
+
+## Palette Reconciliation After Updating
+
+When cluster profile updates are applied, Palette will apply the changes to the cluster but will not delete any
+resources that are no longer in use. You can choose to keep or remove these resources.
+
+You can use `kubectl` to scale the resource count to 0. While deleting the resource using something like K9s is
+possible, Palette will recreate it immediately. Scaling replicas to zero via `kubectl` ensures the resource is
+effectively removed.
+
+### Prerequisites
+
+- An active Kubernetes cluster in Palette.
+- A terminal client.
+
+### Enablement
+
+The following steps provide an example of how to clean up unneeded resources using `kubectl`. In this example, an AWS
+cluster is created using a cluster profile with the
+
+<VersionedLink text="Hello Universe" url="/integrations/packs/?pack=hello-universe" /> included. The Hello Universe pack
+has the API preset option disabled.
+
+1. Log in to [Palette](https://console.spectrocloud.com/). Create a cluster profile with two versions for an AWS IaaS
+   cluster that includes the Hello Universe pack. For example:
+
+   **Version 1.0.0**.
+
+   - OS = <VersionedLink text="Ubuntu" url="/integrations/packs/?pack=ubuntu-aws" />
+   - Kubernetes = <VersionedLink text="Kubernetes" url="/integrations/packs/?pack=kubernetes" />
+   - Network = <VersionedLink text="Calico CNI" url="/integrations/packs/?pack=cni-calico" />
+   - Storage = <VersionedLink text="AWS EBS CSI Driver" url="/integrations/packs/?pack=csi-aws-ebs" />
+   - App services = <VersionedLink text="Hello Universe" url="/integrations/packs/?pack=hello-universe" /> with the API
+     preset option disabled.
+
+   **Version 1.1.0**.
+
+   - OS = <VersionedLink text="Ubuntu" url="/integrations/packs/?pack=ubuntu-aws" />
+   - Kubernetes = <VersionedLink text="Kubernetes" url="/integrations/packs/?pack=kubernetes" />
+   - Network = <VersionedLink text="Calico CNI" url="/integrations/packs/?pack=cni-calico" />
+   - Storage = <VersionedLink text="AWS EBS CSI Driver" url="/integrations/packs/?pack=csi-aws-ebs" />
+   - App services = <VersionedLink text="Hello Universe" url="/integrations/packs/?pack=hello-universe" /> with the API
+     preset option enabled.
+
+2. Build a cluster using cluster profile version 1.0.0. This will take 15-20 minutes.
+
+3. Download the [Admin kubeconfig](./kubeconfig.md) file from the cluster **Overview** tab.
+
+4. Go your terminal application and run the following command
path: docs/docs-content/clusters/cluster-management/cluster-updates.md
user: login: caroldelwing
body: ```suggestion
4. Open a terminal window and run the following command.
```
created_at: 2025-04-15T15:07:50Z
author_association: CONTRIBUTOR
diff_hunk: @@ -140,3 +140,106 @@ You can follow these steps to validate all cluster update approaches.
 3. Select the cluster you updated, and navigate to the **Profile** tab of the cluster.
 
 4. Confirm that the cluster is now using an updated profile.
+
+## Palette Reconciliation After Updating
+
+When cluster profile updates are applied, Palette will apply the changes to the cluster but will not delete any
+resources that are no longer in use. You can choose to keep or remove these resources.
+
+You can use `kubectl` to scale the resource count to 0. While deleting the resource using something like K9s is
+possible, Palette will recreate it immediately. Scaling replicas to zero via `kubectl` ensures the resource is
+effectively removed.
+
+### Prerequisites
+
+- An active Kubernetes cluster in Palette.
+- A terminal client.
+
+### Enablement
+
+The following steps provide an example of how to clean up unneeded resources using `kubectl`. In this example, an AWS
+cluster is created using a cluster profile with the
+
+<VersionedLink text="Hello Universe" url="/integrations/packs/?pack=hello-universe" /> included. The Hello Universe pack
+has the API preset option disabled.
+
+1. Log in to [Palette](https://console.spectrocloud.com/). Create a cluster profile with two versions for an AWS IaaS
+   cluster that includes the Hello Universe pack. For example:
+
+   **Version 1.0.0**.
+
+   - OS = <VersionedLink text="Ubuntu" url="/integrations/packs/?pack=ubuntu-aws" />
+   - Kubernetes = <VersionedLink text="Kubernetes" url="/integrations/packs/?pack=kubernetes" />
+   - Network = <VersionedLink text="Calico CNI" url="/integrations/packs/?pack=cni-calico" />
+   - Storage = <VersionedLink text="AWS EBS CSI Driver" url="/integrations/packs/?pack=csi-aws-ebs" />
+   - App services = <VersionedLink text="Hello Universe" url="/integrations/packs/?pack=hello-universe" /> with the API
+     preset option disabled.
+
+   **Version 1.1.0**.
+
+   - OS = <VersionedLink text="Ubuntu" url="/integrations/packs/?pack=ubuntu-aws" />
+   - Kubernetes = <VersionedLink text="Kubernetes" url="/integrations/packs/?pack=kubernetes" />
+   - Network = <VersionedLink text="Calico CNI" url="/integrations/packs/?pack=cni-calico" />
+   - Storage = <VersionedLink text="AWS EBS CSI Driver" url="/integrations/packs/?pack=csi-aws-ebs" />
+   - App services = <VersionedLink text="Hello Universe" url="/integrations/packs/?pack=hello-universe" /> with the API
+     preset option enabled.
+
+2. Build a cluster using cluster profile version 1.0.0. This will take 15-20 minutes.
+
+3. Download the [Admin kubeconfig](./kubeconfig.md) file from the cluster **Overview** tab.
+
+4. Go your terminal application and run the following command
+
+   ```shell
+   kubectl get pods --kubeconfig=admin.cluster-update-deletion.kubeconfig --namespace=hello-universe -o=custom-columns="POD_NAME:.metadata.name,CONTAINER_NAME:.status.containerStatuses[].name,CONTAINER_ID:.status.containerStatuses[].containerID"
+   ```
+
+5. This command will display the containers in the cluster that are in the `hello-universe` namespace. It will include
path: docs/docs-content/clusters/cluster-management/cluster-updates.md
user: login: caroldelwing
body: ```suggestion
  This command will display the containers in the cluster that are in the `hello-universe` namespace. It will include
```
I think this doesnt need to be an extra step
created_at: 2025-04-15T15:08:38Z
author_association: CONTRIBUTOR
diff_hunk: @@ -140,3 +140,106 @@ You can follow these steps to validate all cluster update approaches.
 3. Select the cluster you updated, and navigate to the **Profile** tab of the cluster.
 
 4. Confirm that the cluster is now using an updated profile.
+
+## Palette Reconciliation After Updating
+
+When cluster profile updates are applied, Palette will apply the changes to the cluster but will not delete any
+resources that are no longer in use. You can choose to keep or remove these resources.
+
+You can use `kubectl` to scale the resource count to 0. While deleting the resource using something like K9s is
+possible, Palette will recreate it immediately. Scaling replicas to zero via `kubectl` ensures the resource is
+effectively removed.
+
+### Prerequisites
+
+- An active Kubernetes cluster in Palette.
+- A terminal client.
+
+### Enablement
+
+The following steps provide an example of how to clean up unneeded resources using `kubectl`. In this example, an AWS
+cluster is created using a cluster profile with the
+
+<VersionedLink text="Hello Universe" url="/integrations/packs/?pack=hello-universe" /> included. The Hello Universe pack
+has the API preset option disabled.
+
+1. Log in to [Palette](https://console.spectrocloud.com/). Create a cluster profile with two versions for an AWS IaaS
+   cluster that includes the Hello Universe pack. For example:
+
+   **Version 1.0.0**.
+
+   - OS = <VersionedLink text="Ubuntu" url="/integrations/packs/?pack=ubuntu-aws" />
+   - Kubernetes = <VersionedLink text="Kubernetes" url="/integrations/packs/?pack=kubernetes" />
+   - Network = <VersionedLink text="Calico CNI" url="/integrations/packs/?pack=cni-calico" />
+   - Storage = <VersionedLink text="AWS EBS CSI Driver" url="/integrations/packs/?pack=csi-aws-ebs" />
+   - App services = <VersionedLink text="Hello Universe" url="/integrations/packs/?pack=hello-universe" /> with the API
+     preset option disabled.
+
+   **Version 1.1.0**.
+
+   - OS = <VersionedLink text="Ubuntu" url="/integrations/packs/?pack=ubuntu-aws" />
+   - Kubernetes = <VersionedLink text="Kubernetes" url="/integrations/packs/?pack=kubernetes" />
+   - Network = <VersionedLink text="Calico CNI" url="/integrations/packs/?pack=cni-calico" />
+   - Storage = <VersionedLink text="AWS EBS CSI Driver" url="/integrations/packs/?pack=csi-aws-ebs" />
+   - App services = <VersionedLink text="Hello Universe" url="/integrations/packs/?pack=hello-universe" /> with the API
+     preset option enabled.
+
+2. Build a cluster using cluster profile version 1.0.0. This will take 15-20 minutes.
+
+3. Download the [Admin kubeconfig](./kubeconfig.md) file from the cluster **Overview** tab.
path: docs/docs-content/clusters/cluster-management/cluster-updates.md
user: login: caroldelwing
body: ```suggestion
3. Download the [Admin kubeconfig](./kubeconfig.md) file from the cluster **Overview** tab and export the `KUBECONFIG` environment variable to the file path of the kubeconfig file.
```
lets add a relative link to this guide instead: https://docs.spectrocloud.com/clusters/cluster-management/palette-webctl/
This guide teaches the user how to download the kubeconfig file and export it locally.
created_at: 2025-04-15T15:13:49Z
author_association: CONTRIBUTOR
diff_hunk: @@ -140,3 +140,106 @@ You can follow these steps to validate all cluster update approaches.
 3. Select the cluster you updated, and navigate to the **Profile** tab of the cluster.
 
 4. Confirm that the cluster is now using an updated profile.
+
+## Palette Reconciliation After Updating
+
+When cluster profile updates are applied, Palette will apply the changes to the cluster but will not delete any
+resources that are no longer in use. You can choose to keep or remove these resources.
+
+You can use `kubectl` to scale the resource count to 0. While deleting the resource using something like K9s is
+possible, Palette will recreate it immediately. Scaling replicas to zero via `kubectl` ensures the resource is
+effectively removed.
+
+### Prerequisites
+
+- An active Kubernetes cluster in Palette.
+- A terminal client.
+
+### Enablement
+
+The following steps provide an example of how to clean up unneeded resources using `kubectl`. In this example, an AWS
+cluster is created using a cluster profile with the
+
+<VersionedLink text="Hello Universe" url="/integrations/packs/?pack=hello-universe" /> included. The Hello Universe pack
+has the API preset option disabled.
+
+1. Log in to [Palette](https://console.spectrocloud.com/). Create a cluster profile with two versions for an AWS IaaS
+   cluster that includes the Hello Universe pack. For example:
+
+   **Version 1.0.0**.
+
+   - OS = <VersionedLink text="Ubuntu" url="/integrations/packs/?pack=ubuntu-aws" />
+   - Kubernetes = <VersionedLink text="Kubernetes" url="/integrations/packs/?pack=kubernetes" />
+   - Network = <VersionedLink text="Calico CNI" url="/integrations/packs/?pack=cni-calico" />
+   - Storage = <VersionedLink text="AWS EBS CSI Driver" url="/integrations/packs/?pack=csi-aws-ebs" />
+   - App services = <VersionedLink text="Hello Universe" url="/integrations/packs/?pack=hello-universe" /> with the API
+     preset option disabled.
+
+   **Version 1.1.0**.
+
+   - OS = <VersionedLink text="Ubuntu" url="/integrations/packs/?pack=ubuntu-aws" />
+   - Kubernetes = <VersionedLink text="Kubernetes" url="/integrations/packs/?pack=kubernetes" />
+   - Network = <VersionedLink text="Calico CNI" url="/integrations/packs/?pack=cni-calico" />
+   - Storage = <VersionedLink text="AWS EBS CSI Driver" url="/integrations/packs/?pack=csi-aws-ebs" />
+   - App services = <VersionedLink text="Hello Universe" url="/integrations/packs/?pack=hello-universe" /> with the API
+     preset option enabled.
+
+2. Build a cluster using cluster profile version 1.0.0. This will take 15-20 minutes.
+
+3. Download the [Admin kubeconfig](./kubeconfig.md) file from the cluster **Overview** tab.
+
+4. Go your terminal application and run the following command
+
+   ```shell
+   kubectl get pods --kubeconfig=admin.cluster-update-deletion.kubeconfig --namespace=hello-universe -o=custom-columns="POD_NAME:.metadata.name,CONTAINER_NAME:.status.containerStatuses[].name,CONTAINER_ID:.status.containerStatuses[].containerID"
path: docs/docs-content/clusters/cluster-management/cluster-updates.md
user: login: caroldelwing
body: ```suggestion
   kubectl get pods --namespace=hello-universe -o=custom-columns="POD_NAME:.metadata.name,CONTAINER_NAME:.status.containerStatuses[].name,CONTAINER_ID:.status.containerStatuses[].containerID"
```
we dont need to add the kubeconfig if we have exported it previously
created_at: 2025-04-15T15:14:24Z
author_association: CONTRIBUTOR
diff_hunk: @@ -140,3 +140,106 @@ You can follow these steps to validate all cluster update approaches.
 3. Select the cluster you updated, and navigate to the **Profile** tab of the cluster.
 
 4. Confirm that the cluster is now using an updated profile.
+
+## Palette Reconciliation After Updating
+
+When cluster profile updates are applied, Palette will apply the changes to the cluster but will not delete any
+resources that are no longer in use. You can choose to keep or remove these resources.
+
+You can use `kubectl` to scale the resource count to 0. While deleting the resource using something like K9s is
+possible, Palette will recreate it immediately. Scaling replicas to zero via `kubectl` ensures the resource is
+effectively removed.
+
+### Prerequisites
+
+- An active Kubernetes cluster in Palette.
+- A terminal client.
+
+### Enablement
+
+The following steps provide an example of how to clean up unneeded resources using `kubectl`. In this example, an AWS
+cluster is created using a cluster profile with the
+
+<VersionedLink text="Hello Universe" url="/integrations/packs/?pack=hello-universe" /> included. The Hello Universe pack
+has the API preset option disabled.
+
+1. Log in to [Palette](https://console.spectrocloud.com/). Create a cluster profile with two versions for an AWS IaaS
+   cluster that includes the Hello Universe pack. For example:
+
+   **Version 1.0.0**.
+
+   - OS = <VersionedLink text="Ubuntu" url="/integrations/packs/?pack=ubuntu-aws" />
+   - Kubernetes = <VersionedLink text="Kubernetes" url="/integrations/packs/?pack=kubernetes" />
+   - Network = <VersionedLink text="Calico CNI" url="/integrations/packs/?pack=cni-calico" />
+   - Storage = <VersionedLink text="AWS EBS CSI Driver" url="/integrations/packs/?pack=csi-aws-ebs" />
+   - App services = <VersionedLink text="Hello Universe" url="/integrations/packs/?pack=hello-universe" /> with the API
+     preset option disabled.
+
+   **Version 1.1.0**.
+
+   - OS = <VersionedLink text="Ubuntu" url="/integrations/packs/?pack=ubuntu-aws" />
+   - Kubernetes = <VersionedLink text="Kubernetes" url="/integrations/packs/?pack=kubernetes" />
+   - Network = <VersionedLink text="Calico CNI" url="/integrations/packs/?pack=cni-calico" />
+   - Storage = <VersionedLink text="AWS EBS CSI Driver" url="/integrations/packs/?pack=csi-aws-ebs" />
+   - App services = <VersionedLink text="Hello Universe" url="/integrations/packs/?pack=hello-universe" /> with the API
+     preset option enabled.
+
+2. Build a cluster using cluster profile version 1.0.0. This will take 15-20 minutes.
+
+3. Download the [Admin kubeconfig](./kubeconfig.md) file from the cluster **Overview** tab.
+
+4. Go your terminal application and run the following command
+
+   ```shell
+   kubectl get pods --kubeconfig=admin.cluster-update-deletion.kubeconfig --namespace=hello-universe -o=custom-columns="POD_NAME:.metadata.name,CONTAINER_NAME:.status.containerStatuses[].name,CONTAINER_ID:.status.containerStatuses[].containerID"
+   ```
+
+5. This command will display the containers in the cluster that are in the `hello-universe` namespace. It will include
+   the pod name, container name, and container ID. You can use these identifiers with various `kubectl` options.
+
+   Sample output
+
+   ```shell
+   POD_NAME                                     CONTAINER_NAME   CONTAINER_ID
+   hello-universe-deployment-6854947c67-ltdmq   hello-universe   containerd://584f07c2cf2dbb24f62e63be4322d16314d86e496eeb185c5a5944e884744239
+   ```
+
+6. Return to Palette and update the cluster using the profile version 1.1.0.
+
+7. Return to the terminal and run the following command
path: docs/docs-content/clusters/cluster-management/cluster-updates.md
user: login: caroldelwing
body: ```suggestion
7. Return to the terminal and run the following command.
```
created_at: 2025-04-15T15:18:53Z
author_association: CONTRIBUTOR
diff_hunk: @@ -140,3 +140,106 @@ You can follow these steps to validate all cluster update approaches.
 3. Select the cluster you updated, and navigate to the **Profile** tab of the cluster.
 
 4. Confirm that the cluster is now using an updated profile.
+
+## Palette Reconciliation After Updating
+
+When cluster profile updates are applied, Palette will apply the changes to the cluster but will not delete any
+resources that are no longer in use. You can choose to keep or remove these resources.
+
+You can use `kubectl` to scale the resource count to 0. While deleting the resource using something like K9s is
+possible, Palette will recreate it immediately. Scaling replicas to zero via `kubectl` ensures the resource is
+effectively removed.
+
+### Prerequisites
+
+- An active Kubernetes cluster in Palette.
+- A terminal client.
+
+### Enablement
+
+The following steps provide an example of how to clean up unneeded resources using `kubectl`. In this example, an AWS
+cluster is created using a cluster profile with the
+
+<VersionedLink text="Hello Universe" url="/integrations/packs/?pack=hello-universe" /> included. The Hello Universe pack
+has the API preset option disabled.
+
+1. Log in to [Palette](https://console.spectrocloud.com/). Create a cluster profile with two versions for an AWS IaaS
+   cluster that includes the Hello Universe pack. For example:
+
+   **Version 1.0.0**.
+
+   - OS = <VersionedLink text="Ubuntu" url="/integrations/packs/?pack=ubuntu-aws" />
+   - Kubernetes = <VersionedLink text="Kubernetes" url="/integrations/packs/?pack=kubernetes" />
+   - Network = <VersionedLink text="Calico CNI" url="/integrations/packs/?pack=cni-calico" />
+   - Storage = <VersionedLink text="AWS EBS CSI Driver" url="/integrations/packs/?pack=csi-aws-ebs" />
+   - App services = <VersionedLink text="Hello Universe" url="/integrations/packs/?pack=hello-universe" /> with the API
+     preset option disabled.
+
+   **Version 1.1.0**.
+
+   - OS = <VersionedLink text="Ubuntu" url="/integrations/packs/?pack=ubuntu-aws" />
+   - Kubernetes = <VersionedLink text="Kubernetes" url="/integrations/packs/?pack=kubernetes" />
+   - Network = <VersionedLink text="Calico CNI" url="/integrations/packs/?pack=cni-calico" />
+   - Storage = <VersionedLink text="AWS EBS CSI Driver" url="/integrations/packs/?pack=csi-aws-ebs" />
+   - App services = <VersionedLink text="Hello Universe" url="/integrations/packs/?pack=hello-universe" /> with the API
+     preset option enabled.
+
+2. Build a cluster using cluster profile version 1.0.0. This will take 15-20 minutes.
+
+3. Download the [Admin kubeconfig](./kubeconfig.md) file from the cluster **Overview** tab.
+
+4. Go your terminal application and run the following command
+
+   ```shell
+   kubectl get pods --kubeconfig=admin.cluster-update-deletion.kubeconfig --namespace=hello-universe -o=custom-columns="POD_NAME:.metadata.name,CONTAINER_NAME:.status.containerStatuses[].name,CONTAINER_ID:.status.containerStatuses[].containerID"
+   ```
+
+5. This command will display the containers in the cluster that are in the `hello-universe` namespace. It will include
+   the pod name, container name, and container ID. You can use these identifiers with various `kubectl` options.
+
+   Sample output
+
+   ```shell
+   POD_NAME                                     CONTAINER_NAME   CONTAINER_ID
+   hello-universe-deployment-6854947c67-ltdmq   hello-universe   containerd://584f07c2cf2dbb24f62e63be4322d16314d86e496eeb185c5a5944e884744239
+   ```
+
+6. Return to Palette and update the cluster using the profile version 1.1.0.
+
+7. Return to the terminal and run the following command
+
+   ```shell
+   kubectl get pods --kubeconfig=admin.cluster-update-deletion.kubeconfig --namespace=hello-universe -o=custom-columns="POD_NAME:.metadata.name,CONTAINER_NAME:.status.containerStatuses[].name,CONTAINER_ID:.status.containerStatuses[].containerID"
+   ```
path: docs/docs-content/clusters/cluster-management/cluster-updates.md
user: login: caroldelwing
body: ```suggestion
   ```shell
   kubectl get pods --namespace=hello-universe -o=custom-columns="POD_NAME:.metadata.name,CONTAINER_NAME:.status.containerStatuses[].name,CONTAINER_ID:.status.containerStatuses[].containerID"
   ```
```
created_at: 2025-04-15T15:19:06Z
author_association: CONTRIBUTOR
diff_hunk: @@ -140,3 +140,106 @@ You can follow these steps to validate all cluster update approaches.
 3. Select the cluster you updated, and navigate to the **Profile** tab of the cluster.
 
 4. Confirm that the cluster is now using an updated profile.
+
+## Palette Reconciliation After Updating
+
+When cluster profile updates are applied, Palette will apply the changes to the cluster but will not delete any
+resources that are no longer in use. You can choose to keep or remove these resources.
+
+You can use `kubectl` to scale the resource count to 0. While deleting the resource using something like K9s is
+possible, Palette will recreate it immediately. Scaling replicas to zero via `kubectl` ensures the resource is
+effectively removed.
+
+### Prerequisites
+
+- An active Kubernetes cluster in Palette.
+- A terminal client.
+
+### Enablement
+
+The following steps provide an example of how to clean up unneeded resources using `kubectl`. In this example, an AWS
+cluster is created using a cluster profile with the
+
+<VersionedLink text="Hello Universe" url="/integrations/packs/?pack=hello-universe" /> included. The Hello Universe pack
+has the API preset option disabled.
+
+1. Log in to [Palette](https://console.spectrocloud.com/). Create a cluster profile with two versions for an AWS IaaS
+   cluster that includes the Hello Universe pack. For example:
+
+   **Version 1.0.0**.
+
+   - OS = <VersionedLink text="Ubuntu" url="/integrations/packs/?pack=ubuntu-aws" />
+   - Kubernetes = <VersionedLink text="Kubernetes" url="/integrations/packs/?pack=kubernetes" />
+   - Network = <VersionedLink text="Calico CNI" url="/integrations/packs/?pack=cni-calico" />
+   - Storage = <VersionedLink text="AWS EBS CSI Driver" url="/integrations/packs/?pack=csi-aws-ebs" />
+   - App services = <VersionedLink text="Hello Universe" url="/integrations/packs/?pack=hello-universe" /> with the API
+     preset option disabled.
+
+   **Version 1.1.0**.
+
+   - OS = <VersionedLink text="Ubuntu" url="/integrations/packs/?pack=ubuntu-aws" />
+   - Kubernetes = <VersionedLink text="Kubernetes" url="/integrations/packs/?pack=kubernetes" />
+   - Network = <VersionedLink text="Calico CNI" url="/integrations/packs/?pack=cni-calico" />
+   - Storage = <VersionedLink text="AWS EBS CSI Driver" url="/integrations/packs/?pack=csi-aws-ebs" />
+   - App services = <VersionedLink text="Hello Universe" url="/integrations/packs/?pack=hello-universe" /> with the API
+     preset option enabled.
+
+2. Build a cluster using cluster profile version 1.0.0. This will take 15-20 minutes.
+
+3. Download the [Admin kubeconfig](./kubeconfig.md) file from the cluster **Overview** tab.
+
+4. Go your terminal application and run the following command
+
+   ```shell
+   kubectl get pods --kubeconfig=admin.cluster-update-deletion.kubeconfig --namespace=hello-universe -o=custom-columns="POD_NAME:.metadata.name,CONTAINER_NAME:.status.containerStatuses[].name,CONTAINER_ID:.status.containerStatuses[].containerID"
+   ```
+
+5. This command will display the containers in the cluster that are in the `hello-universe` namespace. It will include
+   the pod name, container name, and container ID. You can use these identifiers with various `kubectl` options.
+
+   Sample output
+
+   ```shell
+   POD_NAME                                     CONTAINER_NAME   CONTAINER_ID
+   hello-universe-deployment-6854947c67-ltdmq   hello-universe   containerd://584f07c2cf2dbb24f62e63be4322d16314d86e496eeb185c5a5944e884744239
+   ```
+
+6. Return to Palette and update the cluster using the profile version 1.1.0.
+
+7. Return to the terminal and run the following command
+
+   ```shell
+   kubectl get pods --kubeconfig=admin.cluster-update-deletion.kubeconfig --namespace=hello-universe -o=custom-columns="POD_NAME:.metadata.name,CONTAINER_NAME:.status.containerStatuses[].name,CONTAINER_ID:.status.containerStatuses[].containerID"
+   ```
+
+   Sample output
+
+   ```shell
+   POD_NAME                                     CONTAINER_NAME   CONTAINER_ID
+   api-86f745b67c-gk4lx                         api              containerd://21c7c18e42350efc25ea300e43c3471c64fba6953ae14bb2b46387c8e5d9c06d
+   hello-universe-deployment-6854947c67-ltdmq   hello-universe   containerd://584f07c2cf2dbb24f62e63be4322d16314d86e496eeb185c5a5944e884744239
+   postgres-567dc9cb4c-cd7fn                    postgres         containerd://b704c87e77ea468156d7f8033b7ad8d9a8ce6048e640b84c529572ac1fb41cd5
+   ui-f7ff4ddc5-hcv72                           ui               containerd://40f78fb4aef00445dc9cf051ca57d61f935594cbe1e426d1f193624769ac132d
+   ```
+
+   With the cluster updated, we notice that the previous version of the Hello Universe app remains. This container,
path: docs/docs-content/clusters/cluster-management/cluster-updates.md
user: login: caroldelwing
body: ```suggestion
   With the cluster updated, note that the previous version of the Hello Universe app remains. This container,
```
created_at: 2025-04-15T15:19:52Z
author_association: CONTRIBUTOR
diff_hunk: @@ -140,3 +140,106 @@ You can follow these steps to validate all cluster update approaches.
 3. Select the cluster you updated, and navigate to the **Profile** tab of the cluster.
 
 4. Confirm that the cluster is now using an updated profile.
+
+## Palette Reconciliation After Updating
+
+When cluster profile updates are applied, Palette will apply the changes to the cluster but will not delete any
+resources that are no longer in use. You can choose to keep or remove these resources.
+
+You can use `kubectl` to scale the resource count to 0. While deleting the resource using something like K9s is
+possible, Palette will recreate it immediately. Scaling replicas to zero via `kubectl` ensures the resource is
+effectively removed.
+
+### Prerequisites
+
+- An active Kubernetes cluster in Palette.
+- A terminal client.
+
+### Enablement
+
+The following steps provide an example of how to clean up unneeded resources using `kubectl`. In this example, an AWS
+cluster is created using a cluster profile with the
+
+<VersionedLink text="Hello Universe" url="/integrations/packs/?pack=hello-universe" /> included. The Hello Universe pack
+has the API preset option disabled.
+
+1. Log in to [Palette](https://console.spectrocloud.com/). Create a cluster profile with two versions for an AWS IaaS
+   cluster that includes the Hello Universe pack. For example:
+
+   **Version 1.0.0**.
+
+   - OS = <VersionedLink text="Ubuntu" url="/integrations/packs/?pack=ubuntu-aws" />
+   - Kubernetes = <VersionedLink text="Kubernetes" url="/integrations/packs/?pack=kubernetes" />
+   - Network = <VersionedLink text="Calico CNI" url="/integrations/packs/?pack=cni-calico" />
+   - Storage = <VersionedLink text="AWS EBS CSI Driver" url="/integrations/packs/?pack=csi-aws-ebs" />
+   - App services = <VersionedLink text="Hello Universe" url="/integrations/packs/?pack=hello-universe" /> with the API
+     preset option disabled.
+
+   **Version 1.1.0**.
+
+   - OS = <VersionedLink text="Ubuntu" url="/integrations/packs/?pack=ubuntu-aws" />
+   - Kubernetes = <VersionedLink text="Kubernetes" url="/integrations/packs/?pack=kubernetes" />
+   - Network = <VersionedLink text="Calico CNI" url="/integrations/packs/?pack=cni-calico" />
+   - Storage = <VersionedLink text="AWS EBS CSI Driver" url="/integrations/packs/?pack=csi-aws-ebs" />
+   - App services = <VersionedLink text="Hello Universe" url="/integrations/packs/?pack=hello-universe" /> with the API
+     preset option enabled.
+
+2. Build a cluster using cluster profile version 1.0.0. This will take 15-20 minutes.
+
+3. Download the [Admin kubeconfig](./kubeconfig.md) file from the cluster **Overview** tab.
+
+4. Go your terminal application and run the following command
+
+   ```shell
+   kubectl get pods --kubeconfig=admin.cluster-update-deletion.kubeconfig --namespace=hello-universe -o=custom-columns="POD_NAME:.metadata.name,CONTAINER_NAME:.status.containerStatuses[].name,CONTAINER_ID:.status.containerStatuses[].containerID"
+   ```
+
+5. This command will display the containers in the cluster that are in the `hello-universe` namespace. It will include
+   the pod name, container name, and container ID. You can use these identifiers with various `kubectl` options.
+
+   Sample output
+
+   ```shell
+   POD_NAME                                     CONTAINER_NAME   CONTAINER_ID
+   hello-universe-deployment-6854947c67-ltdmq   hello-universe   containerd://584f07c2cf2dbb24f62e63be4322d16314d86e496eeb185c5a5944e884744239
+   ```
+
+6. Return to Palette and update the cluster using the profile version 1.1.0.
+
+7. Return to the terminal and run the following command
+
+   ```shell
+   kubectl get pods --kubeconfig=admin.cluster-update-deletion.kubeconfig --namespace=hello-universe -o=custom-columns="POD_NAME:.metadata.name,CONTAINER_NAME:.status.containerStatuses[].name,CONTAINER_ID:.status.containerStatuses[].containerID"
+   ```
+
+   Sample output
+
+   ```shell
+   POD_NAME                                     CONTAINER_NAME   CONTAINER_ID
+   api-86f745b67c-gk4lx                         api              containerd://21c7c18e42350efc25ea300e43c3471c64fba6953ae14bb2b46387c8e5d9c06d
+   hello-universe-deployment-6854947c67-ltdmq   hello-universe   containerd://584f07c2cf2dbb24f62e63be4322d16314d86e496eeb185c5a5944e884744239
+   postgres-567dc9cb4c-cd7fn                    postgres         containerd://b704c87e77ea468156d7f8033b7ad8d9a8ce6048e640b84c529572ac1fb41cd5
+   ui-f7ff4ddc5-hcv72                           ui               containerd://40f78fb4aef00445dc9cf051ca57d61f935594cbe1e426d1f193624769ac132d
+   ```
+
+   With the cluster updated, we notice that the previous version of the Hello Universe app remains. This container,
+   however, is not used with the API version and is no longer needed.
+
+8. Locate the pod name of the container you want to remove and run the following command.
+
+   ```shell
+   kubectl scale deployment hello-universe-deployment --replicas=0 hello-universe-deployment-6854947c67-ltdmq --kubeconfig=admin.cluster-update-deletion.kubeconfig --namespace hello-universe
+   ```
path: docs/docs-content/clusters/cluster-management/cluster-updates.md
user: login: caroldelwing
body: ```suggestion
   ```shell
   kubectl scale deployment hello-universe-deployment --replicas=0 hello-universe-deployment-6854947c67-ltdmq --namespace hello-universe
   ```
```
created_at: 2025-04-15T15:20:42Z
author_association: CONTRIBUTOR
diff_hunk: @@ -140,3 +140,106 @@ You can follow these steps to validate all cluster update approaches.
 3. Select the cluster you updated, and navigate to the **Profile** tab of the cluster.
 
 4. Confirm that the cluster is now using an updated profile.
+
+## Palette Reconciliation After Updating
+
+When cluster profile updates are applied, Palette will apply the changes to the cluster but will not delete any
+resources that are no longer in use. You can choose to keep or remove these resources.
+
+You can use `kubectl` to scale the resource count to 0. While deleting the resource using something like K9s is
+possible, Palette will recreate it immediately. Scaling replicas to zero via `kubectl` ensures the resource is
+effectively removed.
+
+### Prerequisites
+
+- An active Kubernetes cluster in Palette.
+- A terminal client.
+
+### Enablement
+
+The following steps provide an example of how to clean up unneeded resources using `kubectl`. In this example, an AWS
+cluster is created using a cluster profile with the
+
+<VersionedLink text="Hello Universe" url="/integrations/packs/?pack=hello-universe" /> included. The Hello Universe pack
+has the API preset option disabled.
+
+1. Log in to [Palette](https://console.spectrocloud.com/). Create a cluster profile with two versions for an AWS IaaS
+   cluster that includes the Hello Universe pack. For example:
+
+   **Version 1.0.0**.
+
+   - OS = <VersionedLink text="Ubuntu" url="/integrations/packs/?pack=ubuntu-aws" />
+   - Kubernetes = <VersionedLink text="Kubernetes" url="/integrations/packs/?pack=kubernetes" />
+   - Network = <VersionedLink text="Calico CNI" url="/integrations/packs/?pack=cni-calico" />
+   - Storage = <VersionedLink text="AWS EBS CSI Driver" url="/integrations/packs/?pack=csi-aws-ebs" />
+   - App services = <VersionedLink text="Hello Universe" url="/integrations/packs/?pack=hello-universe" /> with the API
+     preset option disabled.
+
+   **Version 1.1.0**.
+
+   - OS = <VersionedLink text="Ubuntu" url="/integrations/packs/?pack=ubuntu-aws" />
+   - Kubernetes = <VersionedLink text="Kubernetes" url="/integrations/packs/?pack=kubernetes" />
+   - Network = <VersionedLink text="Calico CNI" url="/integrations/packs/?pack=cni-calico" />
+   - Storage = <VersionedLink text="AWS EBS CSI Driver" url="/integrations/packs/?pack=csi-aws-ebs" />
+   - App services = <VersionedLink text="Hello Universe" url="/integrations/packs/?pack=hello-universe" /> with the API
+     preset option enabled.
+
+2. Build a cluster using cluster profile version 1.0.0. This will take 15-20 minutes.
+
+3. Download the [Admin kubeconfig](./kubeconfig.md) file from the cluster **Overview** tab.
+
+4. Go your terminal application and run the following command
+
+   ```shell
+   kubectl get pods --kubeconfig=admin.cluster-update-deletion.kubeconfig --namespace=hello-universe -o=custom-columns="POD_NAME:.metadata.name,CONTAINER_NAME:.status.containerStatuses[].name,CONTAINER_ID:.status.containerStatuses[].containerID"
+   ```
+
+5. This command will display the containers in the cluster that are in the `hello-universe` namespace. It will include
+   the pod name, container name, and container ID. You can use these identifiers with various `kubectl` options.
+
+   Sample output
+
+   ```shell
+   POD_NAME                                     CONTAINER_NAME   CONTAINER_ID
+   hello-universe-deployment-6854947c67-ltdmq   hello-universe   containerd://584f07c2cf2dbb24f62e63be4322d16314d86e496eeb185c5a5944e884744239
+   ```
+
+6. Return to Palette and update the cluster using the profile version 1.1.0.
+
+7. Return to the terminal and run the following command
+
+   ```shell
+   kubectl get pods --kubeconfig=admin.cluster-update-deletion.kubeconfig --namespace=hello-universe -o=custom-columns="POD_NAME:.metadata.name,CONTAINER_NAME:.status.containerStatuses[].name,CONTAINER_ID:.status.containerStatuses[].containerID"
+   ```
+
+   Sample output
+
+   ```shell
+   POD_NAME                                     CONTAINER_NAME   CONTAINER_ID
+   api-86f745b67c-gk4lx                         api              containerd://21c7c18e42350efc25ea300e43c3471c64fba6953ae14bb2b46387c8e5d9c06d
+   hello-universe-deployment-6854947c67-ltdmq   hello-universe   containerd://584f07c2cf2dbb24f62e63be4322d16314d86e496eeb185c5a5944e884744239
+   postgres-567dc9cb4c-cd7fn                    postgres         containerd://b704c87e77ea468156d7f8033b7ad8d9a8ce6048e640b84c529572ac1fb41cd5
+   ui-f7ff4ddc5-hcv72                           ui               containerd://40f78fb4aef00445dc9cf051ca57d61f935594cbe1e426d1f193624769ac132d
+   ```
+
+   With the cluster updated, we notice that the previous version of the Hello Universe app remains. This container,
+   however, is not used with the API version and is no longer needed.
+
+8. Locate the pod name of the container you want to remove and run the following command.
+
+   ```shell
+   kubectl scale deployment hello-universe-deployment --replicas=0 hello-universe-deployment-6854947c67-ltdmq --kubeconfig=admin.cluster-update-deletion.kubeconfig --namespace hello-universe
+   ```
+
+   Sample output
+
+   ```
+   deployment.apps/hello-universe-deployment scaled
+   Error from server (NotFound): deployments.apps "hello-universe-deployment-6854947c67-ltdmq" not found
+   ```
+
+   This command will reduce the container count to 0, effectively stopping the container without destroying the
+   container.
path: docs/docs-content/clusters/cluster-management/cluster-updates.md
user: login: caroldelwing
body: ```suggestion
   This command will reduce the container count to 0, effectively stopping the container without destroying it.
```
created_at: 2025-04-15T15:21:05Z
author_association: CONTRIBUTOR
diff_hunk: @@ -140,3 +140,106 @@ You can follow these steps to validate all cluster update approaches.
 3. Select the cluster you updated, and navigate to the **Profile** tab of the cluster.
 
 4. Confirm that the cluster is now using an updated profile.
+
+## Palette Reconciliation After Updating
+
+When cluster profile updates are applied, Palette will apply the changes to the cluster but will not delete any
+resources that are no longer in use. You can choose to keep or remove these resources.
+
+You can use `kubectl` to scale the resource count to 0. While deleting the resource using something like K9s is
+possible, Palette will recreate it immediately. Scaling replicas to zero via `kubectl` ensures the resource is
+effectively removed.
+
+### Prerequisites
+
+- An active Kubernetes cluster in Palette.
+- A terminal client.
+
+### Enablement
+
+The following steps provide an example of how to clean up unneeded resources using `kubectl`. In this example, an AWS
+cluster is created using a cluster profile with the
+
+<VersionedLink text="Hello Universe" url="/integrations/packs/?pack=hello-universe" /> included. The Hello Universe pack
+has the API preset option disabled.
+
+1. Log in to [Palette](https://console.spectrocloud.com/). Create a cluster profile with two versions for an AWS IaaS
+   cluster that includes the Hello Universe pack. For example:
+
+   **Version 1.0.0**.
+
+   - OS = <VersionedLink text="Ubuntu" url="/integrations/packs/?pack=ubuntu-aws" />
+   - Kubernetes = <VersionedLink text="Kubernetes" url="/integrations/packs/?pack=kubernetes" />
+   - Network = <VersionedLink text="Calico CNI" url="/integrations/packs/?pack=cni-calico" />
+   - Storage = <VersionedLink text="AWS EBS CSI Driver" url="/integrations/packs/?pack=csi-aws-ebs" />
+   - App services = <VersionedLink text="Hello Universe" url="/integrations/packs/?pack=hello-universe" /> with the API
+     preset option disabled.
+
+   **Version 1.1.0**.
+
+   - OS = <VersionedLink text="Ubuntu" url="/integrations/packs/?pack=ubuntu-aws" />
+   - Kubernetes = <VersionedLink text="Kubernetes" url="/integrations/packs/?pack=kubernetes" />
+   - Network = <VersionedLink text="Calico CNI" url="/integrations/packs/?pack=cni-calico" />
+   - Storage = <VersionedLink text="AWS EBS CSI Driver" url="/integrations/packs/?pack=csi-aws-ebs" />
+   - App services = <VersionedLink text="Hello Universe" url="/integrations/packs/?pack=hello-universe" /> with the API
+     preset option enabled.
+
+2. Build a cluster using cluster profile version 1.0.0. This will take 15-20 minutes.
+
+3. Download the [Admin kubeconfig](./kubeconfig.md) file from the cluster **Overview** tab.
+
+4. Go your terminal application and run the following command
+
+   ```shell
+   kubectl get pods --kubeconfig=admin.cluster-update-deletion.kubeconfig --namespace=hello-universe -o=custom-columns="POD_NAME:.metadata.name,CONTAINER_NAME:.status.containerStatuses[].name,CONTAINER_ID:.status.containerStatuses[].containerID"
+   ```
+
+5. This command will display the containers in the cluster that are in the `hello-universe` namespace. It will include
+   the pod name, container name, and container ID. You can use these identifiers with various `kubectl` options.
+
+   Sample output
+
+   ```shell
+   POD_NAME                                     CONTAINER_NAME   CONTAINER_ID
+   hello-universe-deployment-6854947c67-ltdmq   hello-universe   containerd://584f07c2cf2dbb24f62e63be4322d16314d86e496eeb185c5a5944e884744239
+   ```
+
+6. Return to Palette and update the cluster using the profile version 1.1.0.
+
+7. Return to the terminal and run the following command
+
+   ```shell
+   kubectl get pods --kubeconfig=admin.cluster-update-deletion.kubeconfig --namespace=hello-universe -o=custom-columns="POD_NAME:.metadata.name,CONTAINER_NAME:.status.containerStatuses[].name,CONTAINER_ID:.status.containerStatuses[].containerID"
+   ```
+
+   Sample output
+
+   ```shell
+   POD_NAME                                     CONTAINER_NAME   CONTAINER_ID
+   api-86f745b67c-gk4lx                         api              containerd://21c7c18e42350efc25ea300e43c3471c64fba6953ae14bb2b46387c8e5d9c06d
+   hello-universe-deployment-6854947c67-ltdmq   hello-universe   containerd://584f07c2cf2dbb24f62e63be4322d16314d86e496eeb185c5a5944e884744239
+   postgres-567dc9cb4c-cd7fn                    postgres         containerd://b704c87e77ea468156d7f8033b7ad8d9a8ce6048e640b84c529572ac1fb41cd5
+   ui-f7ff4ddc5-hcv72                           ui               containerd://40f78fb4aef00445dc9cf051ca57d61f935594cbe1e426d1f193624769ac132d
+   ```
+
+   With the cluster updated, we notice that the previous version of the Hello Universe app remains. This container,
+   however, is not used with the API version and is no longer needed.
+
+8. Locate the pod name of the container you want to remove and run the following command.
+
+   ```shell
+   kubectl scale deployment hello-universe-deployment --replicas=0 hello-universe-deployment-6854947c67-ltdmq --kubeconfig=admin.cluster-update-deletion.kubeconfig --namespace hello-universe
+   ```
+
+   Sample output
+
+   ```
+   deployment.apps/hello-universe-deployment scaled
+   Error from server (NotFound): deployments.apps "hello-universe-deployment-6854947c67-ltdmq" not found
+   ```
+
+   This command will reduce the container count to 0, effectively stopping the container without destroying the
+   container.
+
+   If you have multiple clusters with resources no longer in use, you could put the command into a script to help remove
+   those additional resources.
path: docs/docs-content/clusters/cluster-management/cluster-updates.md
user: login: caroldelwing
body: ```suggestion
   If you have multiple clusters with resources no longer in use, you could put the command into a script to help scale down
   those additional resources.
```
created_at: 2025-04-15T15:21:37Z
author_association: CONTRIBUTOR
diff_hunk: @@ -140,3 +142,119 @@ You can follow these steps to validate all cluster update approaches.
 3. Select the cluster you updated, and navigate to the **Profile** tab of the cluster.
 
 4. Confirm that the cluster is now using an updated profile.
+
+## Palette Reconciliation After Updating
+
+When cluster profile updates are applied, Palette will apply the changes to the cluster but will not delete any
+resources that are no longer in use. You can choose to keep or remove these resources.
+
+You can use `kubectl` to scale the resource count to 0. While deleting the resource using something like K9s is
+possible, Palette will recreate it immediately. Scaling replicas to zero via `kubectl` ensures the resource is
+effectively removed.
+
+### Prerequisites
+
+- An active Kubernetes cluster in Palette.
+- A terminal client.
+
+### Enablement
+
+<!-- prettier-ignore-start -->
+
+The following steps provide an example of how to clean up unneeded resources using `kubectl`. In this example, an AWS cluster is created using a cluster profile with the <VersionedLink text="Hello Universe" url="/integrations/packs/?pack=hello-universe" /> included. The Hello Universe pack
+has the API preset option disabled.
+
+<!-- prettier-ignore-end -->
+
+1. Log in to [Palette](https://console.spectrocloud.com/). Create a cluster profile with two versions for an AWS IaaS
+   cluster that includes the Hello Universe pack. For example:
+
+   **Version 1.0.0**.
+
+   - OS = <VersionedLink text="Ubuntu" url="/integrations/packs/?pack=ubuntu-aws" />
+   - Kubernetes = <VersionedLink text="Kubernetes" url="/integrations/packs/?pack=kubernetes" />
+   - Network = <VersionedLink text="Calico CNI" url="/integrations/packs/?pack=cni-calico" />
+   - Storage = <VersionedLink text="AWS EBS CSI Driver" url="/integrations/packs/?pack=csi-aws-ebs" />
+   - App services = <VersionedLink text="Hello Universe" url="/integrations/packs/?pack=hello-universe" /> with the API
+     preset option disabled.
+
+   **Version 1.1.0**.
+
+   - OS = <VersionedLink text="Ubuntu" url="/integrations/packs/?pack=ubuntu-aws" />
+   - Kubernetes = <VersionedLink text="Kubernetes" url="/integrations/packs/?pack=kubernetes" />
+   - Network = <VersionedLink text="Calico CNI" url="/integrations/packs/?pack=cni-calico" />
+   - Storage = <VersionedLink text="AWS EBS CSI Driver" url="/integrations/packs/?pack=csi-aws-ebs" />
+   - App services = <VersionedLink text="Hello Universe" url="/integrations/packs/?pack=hello-universe" /> with the API
+     preset option enabled.
+
+2. Build a cluster using cluster profile version 1.0.0. This will take 15-20 minutes.
+
+3. Download the [Admin kubeconfig](./kubeconfig.md) file from the cluster **Overview** tab.
+
+4. Go your terminal application and run the following command
+
+   ```shell
+   kubectl get pods --kubeconfig=admin.cluster-update-deletion.kubeconfig --namespace=hello-universe -o=custom-columns="POD_NAME:.metadata.name,CONTAINER_NAME:.status.containerStatuses[].name,CONTAINER_ID:.status.containerStatuses[].containerID"
+   ```
+
+5. This command will display the containers in the cluster that are in the `hello-universe` namespace. It will include
+   the pod name, container name, and container ID. You can use these identifiers with various `kubectl` options.
+
+   Sample output
+
+   ```shell
+   POD_NAME                                     CONTAINER_NAME   CONTAINER_ID
+   hello-universe-deployment-6854947c67-ltdmq   hello-universe   containerd://584f07c2cf2dbb24f62e63be4322d16314d86e496eeb185c5a5944e884744239
+   ```
+
+6. Return to Palette and update the cluster using the profile version 1.1.0.
path: docs/docs-content/clusters/cluster-management/cluster-updates.md
user: login: caroldelwing
body: ```suggestion
6. Return to Palette and update the cluster using the profile version 1.1.0. Refer to the [Update a Cluster](#update-a-cluster) section for instructions on updating your cluster.
```
lets add a relative link to guide the user how to make this update. You can link to the previous section of this guide (please confirm that the suggested link i added is working xD).
created_at: 2025-04-15T15:28:20Z
author_association: CONTRIBUTOR
diff_hunk: @@ -140,3 +142,118 @@ You can follow these steps to validate all cluster update approaches.
 3. Select the cluster you updated, and navigate to the **Profile** tab of the cluster.
 
 4. Confirm that the cluster is now using an updated profile.
+
+## Palette Reconciliation After Updating
+
+When cluster profile updates are applied, Palette will apply the changes to the cluster but will not delete any
+resources that are no longer in use. You can choose to keep or manually remove these resources.
+
+To remove unused resources created by a pack from a cluster, you need to manually delete the pack from the cluster profile and apply the changes to the cluster. This will effectively remove all resources associated with the pack. However, this approach may not always be desirable, and there are alternative solutions.
+
+For example, you can use `kubectl` to scale the resource replicas to zero. While manually deleting the resource is an option, Palette will automatically recreate it if the pack remains in the cluster profile. Scaling the replicas to zero using `kubectl` ensures that no active instances of the resource are running, without triggering Palette to restore them.
path: docs/docs-content/clusters/cluster-management/cluster-updates.md
user: login: github-actions[bot]
body: 🚫 **[vale]** <sub>reported by [reviewdog](https://github.com/reviewdog/reviewdog) :dog:</sub><br>[spectrocloud-docs-internal.ableism] Avoid using ableism terms. Use 'operating' instead of 'running'.
created_at: 2025-04-15T15:57:54Z
author_association: CONTRIBUTOR
diff_hunk: @@ -140,3 +142,118 @@ You can follow these steps to validate all cluster update approaches.
 3. Select the cluster you updated, and navigate to the **Profile** tab of the cluster.
 
 4. Confirm that the cluster is now using an updated profile.
+
+## Palette Reconciliation After Updating
+
+When cluster profile updates are applied, Palette will apply the changes to the cluster but will not delete any
+resources that are no longer in use. You can choose to keep or manually remove these resources.
+
+To remove unused resources created by a pack from a cluster, you need to manually delete the pack from the cluster profile and apply the changes to the cluster. This will effectively remove all resources associated with the pack. However, this approach may not always be desirable, and there are alternative solutions.
+
+For example, you can use `kubectl` to scale the resource replicas to zero. While manually deleting the resource is an option, Palette will automatically recreate it if the pack remains in the cluster profile. Scaling the replicas to zero using `kubectl` ensures that no active instances of the resource are running, without triggering Palette to restore them.
+
+### Prerequisites
+
+- An active Kubernetes cluster in Palette.
+- A terminal client.
+
+### Enablement
+
+<!-- prettier-ignore-start -->
+
+The following steps provide an example of how to clean up unneeded resources using `kubectl`. In this example, an AWS cluster is created using a cluster profile with the <VersionedLink text="Hello Universe" url="/integrations/packs/?pack=hello-universe" /> included. The Hello Universe pack
+has the API preset option disabled.
+
+<!-- prettier-ignore-end -->
+
+1. Log in to [Palette](https://console.spectrocloud.com/). 
+
+2. Create a cluster profile with two versions for an AWS IaaS
+   cluster that includes the Hello Universe pack. For example:
+
+   **Version 1.0.0**.
+
+   - OS = <VersionedLink text="Ubuntu" url="/integrations/packs/?pack=ubuntu-aws" />
+   - Kubernetes = <VersionedLink text="Kubernetes" url="/integrations/packs/?pack=kubernetes" />
+   - Network = <VersionedLink text="Calico CNI" url="/integrations/packs/?pack=cni-calico" />
+   - Storage = <VersionedLink text="AWS EBS CSI Driver" url="/integrations/packs/?pack=csi-aws-ebs" />
+   - App services = <VersionedLink text="Hello Universe" url="/integrations/packs/?pack=hello-universe" /> with the API
+     preset option disabled.
+
+   **Version 1.1.0**.
+
+   - OS = <VersionedLink text="Ubuntu" url="/integrations/packs/?pack=ubuntu-aws" />
+   - Kubernetes = <VersionedLink text="Kubernetes" url="/integrations/packs/?pack=kubernetes" />
+   - Network = <VersionedLink text="Calico CNI" url="/integrations/packs/?pack=cni-calico" />
+   - Storage = <VersionedLink text="AWS EBS CSI Driver" url="/integrations/packs/?pack=csi-aws-ebs" />
+   - App services = <VersionedLink text="Hello Universe" url="/integrations/packs/?pack=hello-universe" /> with the API
+     preset option enabled.
+
+2. Build a cluster using cluster profile version 1.0.0. This will take 15-20 minutes.
+
+3. Download the [Admin kubeconfig](./kubeconfig.md) file from the cluster **Overview** tab and export the `KUBECONFIG` environment variable to the file path of the kubeconfig file.
+
+4. Open a terminal window and run the following command.
path: docs/docs-content/clusters/cluster-management/cluster-updates.md
user: login: github-actions[bot]
body: 🚫 **[vale]** <sub>reported by [reviewdog](https://github.com/reviewdog/reviewdog) :dog:</sub><br>[spectrocloud-docs-internal.ableism] Avoid using ableism terms. Use 'issue' instead of 'run'.
created_at: 2025-04-15T15:57:54Z
author_association: CONTRIBUTOR
diff_hunk: @@ -140,3 +142,118 @@ You can follow these steps to validate all cluster update approaches.
 3. Select the cluster you updated, and navigate to the **Profile** tab of the cluster.
 
 4. Confirm that the cluster is now using an updated profile.
+
+## Palette Reconciliation After Updating
+
+When cluster profile updates are applied, Palette will apply the changes to the cluster but will not delete any
+resources that are no longer in use. You can choose to keep or manually remove these resources.
+
+To remove unused resources created by a pack from a cluster, you need to manually delete the pack from the cluster profile and apply the changes to the cluster. This will effectively remove all resources associated with the pack. However, this approach may not always be desirable, and there are alternative solutions.
+
+For example, you can use `kubectl` to scale the resource replicas to zero. While manually deleting the resource is an option, Palette will automatically recreate it if the pack remains in the cluster profile. Scaling the replicas to zero using `kubectl` ensures that no active instances of the resource are running, without triggering Palette to restore them.
+
+### Prerequisites
+
+- An active Kubernetes cluster in Palette.
+- A terminal client.
+
+### Enablement
+
+<!-- prettier-ignore-start -->
+
+The following steps provide an example of how to clean up unneeded resources using `kubectl`. In this example, an AWS cluster is created using a cluster profile with the <VersionedLink text="Hello Universe" url="/integrations/packs/?pack=hello-universe" /> included. The Hello Universe pack
+has the API preset option disabled.
+
+<!-- prettier-ignore-end -->
+
+1. Log in to [Palette](https://console.spectrocloud.com/). 
+
+2. Create a cluster profile with two versions for an AWS IaaS
+   cluster that includes the Hello Universe pack. For example:
+
+   **Version 1.0.0**.
+
+   - OS = <VersionedLink text="Ubuntu" url="/integrations/packs/?pack=ubuntu-aws" />
+   - Kubernetes = <VersionedLink text="Kubernetes" url="/integrations/packs/?pack=kubernetes" />
+   - Network = <VersionedLink text="Calico CNI" url="/integrations/packs/?pack=cni-calico" />
+   - Storage = <VersionedLink text="AWS EBS CSI Driver" url="/integrations/packs/?pack=csi-aws-ebs" />
+   - App services = <VersionedLink text="Hello Universe" url="/integrations/packs/?pack=hello-universe" /> with the API
+     preset option disabled.
+
+   **Version 1.1.0**.
+
+   - OS = <VersionedLink text="Ubuntu" url="/integrations/packs/?pack=ubuntu-aws" />
+   - Kubernetes = <VersionedLink text="Kubernetes" url="/integrations/packs/?pack=kubernetes" />
+   - Network = <VersionedLink text="Calico CNI" url="/integrations/packs/?pack=cni-calico" />
+   - Storage = <VersionedLink text="AWS EBS CSI Driver" url="/integrations/packs/?pack=csi-aws-ebs" />
+   - App services = <VersionedLink text="Hello Universe" url="/integrations/packs/?pack=hello-universe" /> with the API
+     preset option enabled.
+
+2. Build a cluster using cluster profile version 1.0.0. This will take 15-20 minutes.
+
+3. Download the [Admin kubeconfig](./kubeconfig.md) file from the cluster **Overview** tab and export the `KUBECONFIG` environment variable to the file path of the kubeconfig file.
+
+4. Open a terminal window and run the following command.
+
+   ```shell
+   kubectl get pods --namespace=hello-universe -o=custom-columns="POD_NAME:.metadata.name,CONTAINER_NAME:.status.containerStatuses[].name,CONTAINER_ID:.status.containerStatuses[].containerID"
path: docs/docs-content/clusters/cluster-management/cluster-updates.md
user: login: github-actions[bot]
body: 🚫 **[vale]** <sub>reported by [reviewdog](https://github.com/reviewdog/reviewdog) :dog:</sub><br>[spectrocloud-docs-internal.longform] Avoid using the short form of commands. Replace the short form flag in 'universe -o' with the corresponding long form flag.
created_at: 2025-04-15T15:57:54Z
author_association: CONTRIBUTOR
diff_hunk: @@ -140,3 +142,118 @@ You can follow these steps to validate all cluster update approaches.
 3. Select the cluster you updated, and navigate to the **Profile** tab of the cluster.
 
 4. Confirm that the cluster is now using an updated profile.
+
+## Palette Reconciliation After Updating
+
+When cluster profile updates are applied, Palette will apply the changes to the cluster but will not delete any
+resources that are no longer in use. You can choose to keep or manually remove these resources.
+
+To remove unused resources created by a pack from a cluster, you need to manually delete the pack from the cluster profile and apply the changes to the cluster. This will effectively remove all resources associated with the pack. However, this approach may not always be desirable, and there are alternative solutions.
+
+For example, you can use `kubectl` to scale the resource replicas to zero. While manually deleting the resource is an option, Palette will automatically recreate it if the pack remains in the cluster profile. Scaling the replicas to zero using `kubectl` ensures that no active instances of the resource are running, without triggering Palette to restore them.
+
+### Prerequisites
+
+- An active Kubernetes cluster in Palette.
+- A terminal client.
+
+### Enablement
+
+<!-- prettier-ignore-start -->
+
+The following steps provide an example of how to clean up unneeded resources using `kubectl`. In this example, an AWS cluster is created using a cluster profile with the <VersionedLink text="Hello Universe" url="/integrations/packs/?pack=hello-universe" /> included. The Hello Universe pack
+has the API preset option disabled.
+
+<!-- prettier-ignore-end -->
+
+1. Log in to [Palette](https://console.spectrocloud.com/). 
+
+2. Create a cluster profile with two versions for an AWS IaaS
+   cluster that includes the Hello Universe pack. For example:
+
+   **Version 1.0.0**.
+
+   - OS = <VersionedLink text="Ubuntu" url="/integrations/packs/?pack=ubuntu-aws" />
+   - Kubernetes = <VersionedLink text="Kubernetes" url="/integrations/packs/?pack=kubernetes" />
+   - Network = <VersionedLink text="Calico CNI" url="/integrations/packs/?pack=cni-calico" />
+   - Storage = <VersionedLink text="AWS EBS CSI Driver" url="/integrations/packs/?pack=csi-aws-ebs" />
+   - App services = <VersionedLink text="Hello Universe" url="/integrations/packs/?pack=hello-universe" /> with the API
+     preset option disabled.
+
+   **Version 1.1.0**.
+
+   - OS = <VersionedLink text="Ubuntu" url="/integrations/packs/?pack=ubuntu-aws" />
+   - Kubernetes = <VersionedLink text="Kubernetes" url="/integrations/packs/?pack=kubernetes" />
+   - Network = <VersionedLink text="Calico CNI" url="/integrations/packs/?pack=cni-calico" />
+   - Storage = <VersionedLink text="AWS EBS CSI Driver" url="/integrations/packs/?pack=csi-aws-ebs" />
+   - App services = <VersionedLink text="Hello Universe" url="/integrations/packs/?pack=hello-universe" /> with the API
+     preset option enabled.
+
+2. Build a cluster using cluster profile version 1.0.0. This will take 15-20 minutes.
+
+3. Download the [Admin kubeconfig](./kubeconfig.md) file from the cluster **Overview** tab and export the `KUBECONFIG` environment variable to the file path of the kubeconfig file.
+
+4. Open a terminal window and run the following command.
+
+   ```shell
+   kubectl get pods --namespace=hello-universe -o=custom-columns="POD_NAME:.metadata.name,CONTAINER_NAME:.status.containerStatuses[].name,CONTAINER_ID:.status.containerStatuses[].containerID"
+   ```
+
+  This command will display the containers in the cluster that are in the `hello-universe` namespace. It will include
+   the pod name, container name, and container ID. You can use these identifiers with various `kubectl` options.
+
+   Sample output
+
+   ```shell
+   POD_NAME                                     CONTAINER_NAME   CONTAINER_ID
+   hello-universe-deployment-6854947c67-ltdmq   hello-universe   containerd://584f07c2cf2dbb24f62e63be4322d16314d86e496eeb185c5a5944e884744239
+   ```
+
+6. Return to Palette and update the cluster using the profile version 1.1.0. Refer to the [Update a Cluster](#update-a-cluster) section for instructions on updating your cluster.
+
+7. Return to the terminal and run the following command.
path: docs/docs-content/clusters/cluster-management/cluster-updates.md
user: login: github-actions[bot]
body: 🚫 **[vale]** <sub>reported by [reviewdog](https://github.com/reviewdog/reviewdog) :dog:</sub><br>[spectrocloud-docs-internal.ableism] Avoid using ableism terms. Use 'issue' instead of 'run'.
created_at: 2025-04-15T15:57:54Z
author_association: CONTRIBUTOR
diff_hunk: @@ -140,3 +142,118 @@ You can follow these steps to validate all cluster update approaches.
 3. Select the cluster you updated, and navigate to the **Profile** tab of the cluster.
 
 4. Confirm that the cluster is now using an updated profile.
+
+## Palette Reconciliation After Updating
+
+When cluster profile updates are applied, Palette will apply the changes to the cluster but will not delete any
+resources that are no longer in use. You can choose to keep or manually remove these resources.
+
+To remove unused resources created by a pack from a cluster, you need to manually delete the pack from the cluster profile and apply the changes to the cluster. This will effectively remove all resources associated with the pack. However, this approach may not always be desirable, and there are alternative solutions.
+
+For example, you can use `kubectl` to scale the resource replicas to zero. While manually deleting the resource is an option, Palette will automatically recreate it if the pack remains in the cluster profile. Scaling the replicas to zero using `kubectl` ensures that no active instances of the resource are running, without triggering Palette to restore them.
+
+### Prerequisites
+
+- An active Kubernetes cluster in Palette.
+- A terminal client.
+
+### Enablement
+
+<!-- prettier-ignore-start -->
+
+The following steps provide an example of how to clean up unneeded resources using `kubectl`. In this example, an AWS cluster is created using a cluster profile with the <VersionedLink text="Hello Universe" url="/integrations/packs/?pack=hello-universe" /> included. The Hello Universe pack
+has the API preset option disabled.
+
+<!-- prettier-ignore-end -->
+
+1. Log in to [Palette](https://console.spectrocloud.com/). 
+
+2. Create a cluster profile with two versions for an AWS IaaS
+   cluster that includes the Hello Universe pack. For example:
+
+   **Version 1.0.0**.
+
+   - OS = <VersionedLink text="Ubuntu" url="/integrations/packs/?pack=ubuntu-aws" />
+   - Kubernetes = <VersionedLink text="Kubernetes" url="/integrations/packs/?pack=kubernetes" />
+   - Network = <VersionedLink text="Calico CNI" url="/integrations/packs/?pack=cni-calico" />
+   - Storage = <VersionedLink text="AWS EBS CSI Driver" url="/integrations/packs/?pack=csi-aws-ebs" />
+   - App services = <VersionedLink text="Hello Universe" url="/integrations/packs/?pack=hello-universe" /> with the API
+     preset option disabled.
+
+   **Version 1.1.0**.
+
+   - OS = <VersionedLink text="Ubuntu" url="/integrations/packs/?pack=ubuntu-aws" />
+   - Kubernetes = <VersionedLink text="Kubernetes" url="/integrations/packs/?pack=kubernetes" />
+   - Network = <VersionedLink text="Calico CNI" url="/integrations/packs/?pack=cni-calico" />
+   - Storage = <VersionedLink text="AWS EBS CSI Driver" url="/integrations/packs/?pack=csi-aws-ebs" />
+   - App services = <VersionedLink text="Hello Universe" url="/integrations/packs/?pack=hello-universe" /> with the API
+     preset option enabled.
+
+2. Build a cluster using cluster profile version 1.0.0. This will take 15-20 minutes.
+
+3. Download the [Admin kubeconfig](./kubeconfig.md) file from the cluster **Overview** tab and export the `KUBECONFIG` environment variable to the file path of the kubeconfig file.
+
+4. Open a terminal window and run the following command.
+
+   ```shell
+   kubectl get pods --namespace=hello-universe -o=custom-columns="POD_NAME:.metadata.name,CONTAINER_NAME:.status.containerStatuses[].name,CONTAINER_ID:.status.containerStatuses[].containerID"
+   ```
+
+  This command will display the containers in the cluster that are in the `hello-universe` namespace. It will include
+   the pod name, container name, and container ID. You can use these identifiers with various `kubectl` options.
+
+   Sample output
+
+   ```shell
+   POD_NAME                                     CONTAINER_NAME   CONTAINER_ID
+   hello-universe-deployment-6854947c67-ltdmq   hello-universe   containerd://584f07c2cf2dbb24f62e63be4322d16314d86e496eeb185c5a5944e884744239
+   ```
+
+6. Return to Palette and update the cluster using the profile version 1.1.0. Refer to the [Update a Cluster](#update-a-cluster) section for instructions on updating your cluster.
+
+7. Return to the terminal and run the following command.
+
+   ```shell
+   kubectl get pods --namespace=hello-universe -o=custom-columns="POD_NAME:.metadata.name,CONTAINER_NAME:.status.containerStatuses[].name,CONTAINER_ID:.status.containerStatuses[].containerID"
path: docs/docs-content/clusters/cluster-management/cluster-updates.md
user: login: github-actions[bot]
body: 🚫 **[vale]** <sub>reported by [reviewdog](https://github.com/reviewdog/reviewdog) :dog:</sub><br>[spectrocloud-docs-internal.longform] Avoid using the short form of commands. Replace the short form flag in 'universe -o' with the corresponding long form flag.
created_at: 2025-04-15T15:57:54Z
author_association: CONTRIBUTOR
diff_hunk: @@ -140,3 +142,128 @@ You can follow these steps to validate all cluster update approaches.
 3. Select the cluster you updated, and navigate to the **Profile** tab of the cluster.
 
 4. Confirm that the cluster is now using an updated profile.
+
+## Palette Reconciliation After Updating
+
+When cluster profile updates are applied, Palette will apply the changes to the cluster but will not delete any
+resources that are no longer in use. You can choose to keep or manually remove these resources.
+
+To remove unused resources created by a pack from a cluster, you need to manually delete the pack from the cluster
+profile and apply the changes to the cluster. This will effectively remove all resources associated with the pack.
+However, this approach may not always be desirable, and there are alternative solutions.
+
+For example, you can use `kubectl` to scale the resource replicas to zero. While manually deleting the resource is an
+option, Palette will automatically recreate it if the pack remains in the cluster profile. Scaling the replicas to zero
+using `kubectl` ensures that no active instances of the resource are running, without triggering Palette to restore
path: docs/docs-content/clusters/cluster-management/cluster-updates.md
user: login: github-actions[bot]
body: 🚫 **[vale]** <sub>reported by [reviewdog](https://github.com/reviewdog/reviewdog) :dog:</sub><br>[spectrocloud-docs-internal.ableism] Avoid using ableism terms. Use 'operating' instead of 'running'.
created_at: 2025-04-15T16:01:40Z
author_association: CONTRIBUTOR
diff_hunk: @@ -140,3 +142,128 @@ You can follow these steps to validate all cluster update approaches.
 3. Select the cluster you updated, and navigate to the **Profile** tab of the cluster.
 
 4. Confirm that the cluster is now using an updated profile.
+
+## Palette Reconciliation After Updating
+
+When cluster profile updates are applied, Palette will apply the changes to the cluster but will not delete any
+resources that are no longer in use. You can choose to keep or manually remove these resources.
+
+To remove unused resources created by a pack from a cluster, you need to manually delete the pack from the cluster
+profile and apply the changes to the cluster. This will effectively remove all resources associated with the pack.
+However, this approach may not always be desirable, and there are alternative solutions.
+
+For example, you can use `kubectl` to scale the resource replicas to zero. While manually deleting the resource is an
+option, Palette will automatically recreate it if the pack remains in the cluster profile. Scaling the replicas to zero
+using `kubectl` ensures that no active instances of the resource are running, without triggering Palette to restore
+them.
+
+### Prerequisites
+
+- An active Kubernetes cluster in Palette.
+- A terminal client.
+
+### Enablement
+
+<!-- prettier-ignore-start -->
+
+The following steps provide an example of how to clean up unneeded resources using `kubectl`. In this example, an AWS cluster is created using a cluster profile with the <VersionedLink text="Hello Universe" url="/integrations/packs/?pack=hello-universe" /> included. The Hello Universe pack
+has the API preset option disabled.
+
+<!-- prettier-ignore-end -->
+
+1. Log in to [Palette](https://console.spectrocloud.com/).
+
+2. Create a cluster profile with two versions for an AWS IaaS cluster that includes the Hello Universe pack. For
+   example:
+
+   **Version 1.0.0**.
+
+   - OS = <VersionedLink text="Ubuntu" url="/integrations/packs/?pack=ubuntu-aws" />
+   - Kubernetes = <VersionedLink text="Kubernetes" url="/integrations/packs/?pack=kubernetes" />
+   - Network = <VersionedLink text="Calico CNI" url="/integrations/packs/?pack=cni-calico" />
+   - Storage = <VersionedLink text="AWS EBS CSI Driver" url="/integrations/packs/?pack=csi-aws-ebs" />
+   - App services = <VersionedLink text="Hello Universe" url="/integrations/packs/?pack=hello-universe" /> with the API
+     preset option disabled.
+
+   **Version 1.1.0**.
+
+   - OS = <VersionedLink text="Ubuntu" url="/integrations/packs/?pack=ubuntu-aws" />
+   - Kubernetes = <VersionedLink text="Kubernetes" url="/integrations/packs/?pack=kubernetes" />
+   - Network = <VersionedLink text="Calico CNI" url="/integrations/packs/?pack=cni-calico" />
+   - Storage = <VersionedLink text="AWS EBS CSI Driver" url="/integrations/packs/?pack=csi-aws-ebs" />
+   - App services = <VersionedLink text="Hello Universe" url="/integrations/packs/?pack=hello-universe" /> with the API
+     preset option enabled.
+
+3. Build a cluster using cluster profile version 1.0.0. This will take 15-20 minutes.
+
+4. Download the [Admin kubeconfig](./kubeconfig.md) file from the cluster **Overview** tab and export the `KUBECONFIG`
+   environment variable to the file path of the kubeconfig file.
+
+5. Open a terminal window and run the following command.
path: docs/docs-content/clusters/cluster-management/cluster-updates.md
user: login: github-actions[bot]
body: 🚫 **[vale]** <sub>reported by [reviewdog](https://github.com/reviewdog/reviewdog) :dog:</sub><br>[spectrocloud-docs-internal.ableism] Avoid using ableism terms. Use 'issue' instead of 'run'.
created_at: 2025-04-15T16:01:40Z
author_association: CONTRIBUTOR

PR comments:
user: login: netlify[bot]
created_at: 2025-04-09T21:23:00Z
body: ### <span aria-hidden="true">✅</span> Deploy Preview for *docs-spectrocloud* ready!


|  Name | Link |
|:-:|------------------------|
|<span aria-hidden="true">🔨</span> Latest commit | df49c8e5b5b73df9aa9608be3ddfc2a26242e714 |
|<span aria-hidden="true">🔍</span> Latest deploy log | https://app.netlify.com/sites/docs-spectrocloud/deploys/67fe980fc841480008d480bf |
|<span aria-hidden="true">😎</span> Deploy Preview | [https://deploy-preview-6391--docs-spectrocloud.netlify.app](https://deploy-preview-6391--docs-spectrocloud.netlify.app) |
|<span aria-hidden="true">📱</span> Preview on mobile | <details><summary> Toggle QR Code... </summary><br /><br />![QR Code](https://app.netlify.com/qr-code/eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ1cmwiOiJodHRwczovL2RlcGxveS1wcmV2aWV3LTYzOTEtLWRvY3Mtc3BlY3Ryb2Nsb3VkLm5ldGxpZnkuYXBwIn0.dCLEHebCil6j8FgZbUNqpXon-mRRpAQWTfjHFs45MFs)<br /><br />_Use your smartphone camera to open QR code link._</details> |
---
<!-- [docs-spectrocloud Preview](https://deploy-preview-6391--docs-spectrocloud.netlify.app) -->
_To edit notification comments on pull requests, go to your [Netlify site configuration](https://app.netlify.com/sites/docs-spectrocloud/configuration/notifications#deploy-webhooks)._
author_association: NONE
user: login: vault-token-factory-spectrocloud[bot]
created_at: 2025-04-11T19:52:50Z
body: Images automagically compressed by [Calibre](https://calibreapp.com)'s [image-actions](https://github.com/marketplace/actions/image-actions) ✨

Compression reduced images by <strong>51.2%</strong>, saving <strong>109.40 KB</strong>.

| Filename | Before | After | Improvement | Visual comparison |
| -------- | ------ | ----- | ----------- | ----------------- |
| <code>static/assets/docs/images/clusters_management_updates_kubeconfig-download.webp</code> | 23.65 KB | 23.07 KB | -2.4% | [View diff](/spectrocloud/librarium/pull/6391/commits/9b661c3b91c04cf34507980b7cb73e84497b31e3?short_path=ae63236#diff-ae63236299b51bd27c506e53b91f1df4) |
| <code>static/assets/docs/images/clusters_management_updates_kubectl-api-hellouniverse-removed.webp</code> | 45.74 KB | 44.87 KB | -1.9% | [View diff](/spectrocloud/librarium/pull/6391/commits/9b661c3b91c04cf34507980b7cb73e84497b31e3?short_path=eba44eb#diff-eba44eb896cac3a70e0b82026acc519c) |
| <code>static/assets/docs/images/clusters_management_updates_palette-api-hellouniverse.webp</code> | 144.39 KB | 36.45 KB | -74.8% | [View diff](/spectrocloud/librarium/pull/6391/commits/9b661c3b91c04cf34507980b7cb73e84497b31e3?short_path=30b85a4#diff-30b85a4113ba6fbcf101e518637b5281) |


812 images did not require optimisation.

author_association: CONTRIBUTOR
user: login: addetz
created_at: 2025-04-15T11:44:55Z
body: @Linus-SpectroCloud Can you please change the title of your PR to something representative of the work you are doing, as well as your ticket number? For example, `docs: expand update a cluster DOC-1780`. This makes it easier for the team to know what your PR is about when looking at the PR list. 
author_association: CONTRIBUTOR
user: login: vault-token-factory-spectrocloud[bot]
created_at: 2025-04-15T17:45:58Z
body: ## 💔 Some backports could not be created

| Status | Branch | Result |
|:------:|:------:|:------|
|❌|version-4-0|Backport failed because of merge conflicts|
|❌|version-4-1|Backport failed because of merge conflicts|
|✅|version-4-2|[<img src="https://img.shields.io/github/pulls/detail/state/spectrocloud/librarium/6439">](https://github.com/spectrocloud/librarium/pull/6439)|
|✅|version-4-3|[<img src="https://img.shields.io/github/pulls/detail/state/spectrocloud/librarium/6440">](https://github.com/spectrocloud/librarium/pull/6440)|
|✅|version-4-4|[<img src="https://img.shields.io/github/pulls/detail/state/spectrocloud/librarium/6441">](https://github.com/spectrocloud/librarium/pull/6441)|
|✅|version-4-5|[<img src="https://img.shields.io/github/pulls/detail/state/spectrocloud/librarium/6442">](https://github.com/spectrocloud/librarium/pull/6442)|
|✅|version-4-6|[<img src="https://img.shields.io/github/pulls/detail/state/spectrocloud/librarium/6443">](https://github.com/spectrocloud/librarium/pull/6443)|

Note: Successful backport PRs will be merged automatically after passing CI.

### Manual backport
To create the backport manually run:
```
backport --pr 6391
```

### Questions ?
Please refer to the [Backport tool documentation](https://github.com/sorenlouv/backport) and see the [Github Action logs](https://github.com/spectrocloud/librarium/actions/runs/14475931823) for details

<!--- Backport version: 9.5.1 -->
author_association: CONTRIBUTOR
user: login: vault-token-factory-spectrocloud[bot]
created_at: 2025-05-20T21:05:53Z
body: :tada: This PR is included in version 4.7.4 :tada:

The release is available on [GitHub release](https://github.com/spectrocloud/librarium/releases/tag/v4.7.4)

Your **[semantic-release](https://github.com/semantic-release/semantic-release)** bot :package::rocket:
author_association: CONTRIBUTOR