From 415ce76bd15e29f3fdb0ed5a45e6af759078c718 Mon Sep 17 00:00:00 2001 From: Karl Cardenas Date: Mon, 24 Jun 2024 12:57:51 -0700 Subject: [PATCH 1/8] docs: PLT-1264 --- .../release-notes/known-issues.md | 1 + .../troubleshooting/enterprise-install.md | 32 ++++++ .../troubleshooting/palette-upgrade.md | 102 ++++++++++++++++++ .../vertex/upgrade/upgrade-notes.md | 22 ++++ docs/docs-content/vertex/upgrade/upgrade.md | 1 + ...nterprise_install_system-profile-pack.webp | Bin 0 -> 304662 bytes 6 files changed, 158 insertions(+) create mode 100644 docs/docs-content/vertex/upgrade/upgrade-notes.md create mode 100644 static/assets/docs/images/troubleshooting_enterprise_install_system-profile-pack.webp diff --git a/docs/docs-content/release-notes/known-issues.md b/docs/docs-content/release-notes/known-issues.md index b48636d932..d1e04e3c61 100644 --- a/docs/docs-content/release-notes/known-issues.md +++ b/docs/docs-content/release-notes/known-issues.md @@ -16,6 +16,7 @@ The following table lists all known issues that are currently active and affecti | Description | Workaround | Publish Date | Product Component | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------- | ----------------- | +| When you upgrade VerteX from version 4.3.x to 4.4.x, a few system pods may remain unhealthy and experience _CrashLoopBackOff_ errors. This issue only impacts VMware vSphere based installations and occur because the internal Mongo DNS is incorrectly configured in the configserver ConfigMap. | Refer to the [Mongo DNS Configmap Value is Incorrect](../troubleshooting/palette-upgrade.md#mongo-dns-configmap-value-is-incorrect) troubleshooting guide for detailed workaround steps. This issue may also impact Enterprise Cluster backup operations. | June 21, 2024 | VerteX | | Clusters configured with OpenID Connect (OIDC) at the Kubernetes layer encounter issues when authenticating with the [non-admin Kubeconfig file](../clusters/cluster-management/kubeconfig.md#cluster-admin). Kubeconfig files using OIDC to authenticate will not work if the SSL certificate is set at the OIDC provider level. | Use the admin Kubeconfig file to authenticate with the cluster, as it does not use OIDC to authenticate. | June 21, 2024 | Clusters | | During the platform upgrade from Palette 4.3 to 4.4, Virtual Clusters may encounter a scenario where the pod `palette-controller-manager` is not upgraded to the newer version of Palette. The virtual cluster will continue to be operational, and this does not impact its functionality. | Refer to the [Controller Manager Pod Not Upgraded](../troubleshooting/palette-dev-engine.md#scenario---controller-manager-pod-not-upgraded) troubleshooting guide. | June 15, 2024 | Virtual Clusters | | The VerteX enterprise cluster is unable to complete backup operations. | No workaround is available. | June 15, 2024 | VerteX | diff --git a/docs/docs-content/troubleshooting/enterprise-install.md b/docs/docs-content/troubleshooting/enterprise-install.md index 2e4ce86b95..e77b5b73fe 100644 --- a/docs/docs-content/troubleshooting/enterprise-install.md +++ b/docs/docs-content/troubleshooting/enterprise-install.md @@ -45,3 +45,35 @@ This error may occur if the self-hosted pack registry specified in the installat After a few moments, a system profile will be created and Palette or VerteX will be able to self-link successfully. If you continue to encounter issues, contact our support team by emailing [support@spectrocloud.com](mailto:support@spectrocloud.com) so that we can provide you with further guidance. + +## Scenario - Enterprise Backup Stuck + +In the scenario where an enterprise backup is stuck, a restart of the mangement pod may resolve the issue. Use the +following steps to restart the management pod. + +### Debug Steps + +1. Open up a terminal session in an environment that has network access to the Kubernetes cluster. Refer to the + [Access Cluster with CLI](../clusters/cluster-management/palette-webctl.md) for additional guidance. + +2. Identify the `mgmt` pod in the `hubble-system` namespace. Use the following command to list all pods in the + `hubble-system` namespace and filter for the `mgmt` pod. + + ```shell + kubectl get pods --namespace hubble-system|grep mgmt + ``` + + ```shell hideClipboard + mgmt-f7f97f4fd-lds69 1/1 Running 0 45m + ``` + +3. Restart the `mgmt` pod by deleting it. Use the following command to delete the `mgmt` pod. Replace `` + with the actual name of the `mgmt` pod that you identified in step 2. + + ```shell + kubectl delete pod --namespace hubble-system + ``` + + ```shell hideClipboard + pod "mgmt-f7f97f4fd-lds69" deleted + ``` diff --git a/docs/docs-content/troubleshooting/palette-upgrade.md b/docs/docs-content/troubleshooting/palette-upgrade.md index d2e8aea78f..0793556beb 100644 --- a/docs/docs-content/troubleshooting/palette-upgrade.md +++ b/docs/docs-content/troubleshooting/palette-upgrade.md @@ -169,3 +169,105 @@ cluster. If you continue to encounter issues, contact our support team by emailing [support@spectrocloud.com](mailto:support@spectrocloud.com) so that we can provide you with further guidance. + +## Mongo DNS Configmap Value is Incorrect + +In VMware vSphere VerteX installations, if you encounter an error during the upgrade process where the MongoDB DNS +ConfigMap value is incorrect, use the following steps to resolve the issue. + +### Debug Steps + +1. Open up a terminal session in an environment that has network access to the Kubernetes cluster. Refer to the + [Access Cluster with CLI](../clusters/cluster-management/palette-webctl.md) for additional guidance. + +2. Verify the MongoDB pods are not starting correctly by issuing the following command. + + ```shell + kubectl get pods --namespace=hubble-system + ``` + +3. Verify the configmap for the _configserver_ in the _hubble-system_ namespace contains the incorrect host value + `mongo-1.mongohubble-system.svc.cluster`. Use the following command to describe the configmap and search for the host + value. + + ```shell + kubectl describe configmap configserver --namespace hubble-system |grep host + ``` + + ```shell hideClipboard + host: mongo-0.mongo.hubble-system.svc.cluster.local,mongo-1.mongohubble-system.svc.cluster.local,mongo-2.mongo.hubble-system.svc.cluster.local + host: '0.0.0.0' + host: '0.0.0.0' + host: '0.0.0.0' + host: '0.0.0.0' + host: '0.0.0.0' + host: '0.0.0.0' + host: '0.0.0.0' + host: '0.0.0.0' + host: '0.0.0.0' + host: '0.0.0.0' + host: '0.0.0.0' + host: '0.0.0.0' + ``` + +4. If the host value is incorrect, log in to the System Console. You can find guidance on how to access the System + Console in the + [Access the System Console](../vertex/system-management/system-management.md#access-the-system-console) + documentation. + +5. Navigate to the **Main Menu** and select **Enterprise Cluster**. From the **System Profiles** page, select the + **Spectro** pack. + + ![A view of the Spectro pack in the System Profiles page](/troubleshooting_enterprise_install_system-profile-pack.webp) + +6. In the YAML editor, locate the parameter `databaseUrl` and update the value + `mongo-1.mongohubble-system.svc.cluster.local` to `mongo-1.mongo.hubble-system.svc.cluster.local`. + + Below is what the updated `databaseUrl` value should look like. + + ```yaml + databaseUrl: "mongo-0.mongo.hubble-system.svc.cluster.local,mongo-1.mongo.hubble-system.svc.cluster.local,mongo-2.mongo.hubble-system.svc.cluster.local" + ``` + +7. Click **Save** to apply the changes. + +8. Verify the system pods are starting correctly by issuing the following command. + + ```shell + kubectl get pods --namespace=hubble-system + ``` + + ```hideClipboard text + NAME READY STATUS RESTARTS AGE + auth-64b88d97dd-5z7ph 1/1 Running 0 31m + auth-64b88d97dd-bchr7 1/1 Running 0 31m + cloud-b8796c57d-5r7d9 1/1 Running 0 31m + cloud-b8796c57d-xpbx7 1/1 Running 0 31m + configserver-778bd7c4c9-mrtc6 1/1 Running 0 31m + event-5869c6bd75-2n7jl 1/1 Running 0 31m + event-5869c6bd75-xnvmj 1/1 Running 0 31m + foreq-679c7b7f6b-2ts2v 1/1 Running 0 31m + hashboard-9f865b6c8-c52bb 1/1 Running 0 31m + hashboard-9f865b6c8-rw6p4 1/1 Running 0 31m + hutil-54995bfd6b-sh4dt 1/1 Running 0 31m + hutil-54995bfd6b-tlqbj 1/1 Running 0 31m + memstore-7584fdd94f-479pj 1/1 Running 0 31m + mgmt-68c8dbfd58-8gxsx 1/1 Running 0 31m + mongo-0 2/2 Running 0 29m + mongo-1 2/2 Running 0 30m + mongo-2 2/2 Running 0 30m + msgbroker-7d7655559b-zxxfq 1/1 Running 0 31m + oci-proxy-6fdf95885f-qw58g 1/1 Running 0 31m + reloader-reloader-845cfd7fdf-2rq5t 1/1 Running 0 31m + spectrocluster-5c4cb4ff58-658w9 1/1 Running 0 31m + spectrocluster-5c4cb4ff58-fn8g5 1/1 Running 0 31m + spectrocluster-5c4cb4ff58-zvwfp 1/1 Running 0 31m + spectrocluster-jobs-5b54bf6bcf-mtgh8 1/1 Running 0 31m + system-6678d47874-464n6 1/1 Running 0 31m + system-6678d47874-rgn55 1/1 Running 0 31m + timeseries-6564699c7d-b6fnr 1/1 Running 0 31m + timeseries-6564699c7d-hvv94 1/1 Running 0 31m + timeseries-6564699c7d-jzmnl 1/1 Running 0 31m + user-866c7f779d-drf9w 1/1 Running 0 31m + user-866c7f779d-rm4hw 1/1 Running 0 31m + ``` diff --git a/docs/docs-content/vertex/upgrade/upgrade-notes.md b/docs/docs-content/vertex/upgrade/upgrade-notes.md new file mode 100644 index 0000000000..7316f5f967 --- /dev/null +++ b/docs/docs-content/vertex/upgrade/upgrade-notes.md @@ -0,0 +1,22 @@ +--- +sidebar_label: "Upgrade Notes" +title: "Upgrade Notes" +description: "Learn how to upgrade self-hosted Palette instances." +icon: "" +sidebar_position: 0 +tags: ["vertex", "self-hosted", "airgap", "kubernetes", "upgrade"] +keywords: ["vertex", "enterprise", "airgap", "kubernetes"] +--- + +This page offers version-specific reference to help you prepare for upgrading self-hosted Vertex instances. + +## Upgrade VerteX 4.3.x to 4.4.x + +Prior to upgrading VMware vSphere VerteX installations from version 4.3.x to 4.4.x, complete the steps outlined in +[Mongo DNS Configmap Value is Incorrect](../../troubleshooting/palette-upgrade.md#mongo-dns-configmap-value-is-incorrect). +Addressing the [known issue](./../../release-notes/known-issues.md#active-known-issues) will prevent system pods from +experiencing _CrashLoopBackOff_ errors after the upgrade. + +After the upgrade, if Enterprise Cluster backups are stuck, refer to the +[Enterprise Backup Stuck](../../troubleshooting/enterprise-install.md#scenario-enterprise-backup-stuck) troubleshooting +guide for resolution steps. diff --git a/docs/docs-content/vertex/upgrade/upgrade.md b/docs/docs-content/vertex/upgrade/upgrade.md index ebce0f230c..90a92921b8 100644 --- a/docs/docs-content/vertex/upgrade/upgrade.md +++ b/docs/docs-content/vertex/upgrade/upgrade.md @@ -43,6 +43,7 @@ Before upgrading Palette VerteX to a new major version, you must first update it Refer to the respective guide for guidance on upgrading your self-hosted Palette VerteX instance. +- [Upgrade Notes](upgrade-notes.md) - [Non-Airgap VMware](upgrade-vmware/non-airgap.md) - [Airgap VMware](upgrade-vmware/airgap.md) - [Non-Airgap Kubernetes](upgrade-k8s/non-airgap.md) diff --git a/static/assets/docs/images/troubleshooting_enterprise_install_system-profile-pack.webp b/static/assets/docs/images/troubleshooting_enterprise_install_system-profile-pack.webp new file mode 100644 index 0000000000000000000000000000000000000000..c5acf22d1457f11a39e50b9113574c01894fb905 GIT binary patch literal 304662 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