diff --git a/.prettierignore b/.prettierignore index c4f6caeef6..854d0d8631 100644 --- a/.prettierignore +++ b/.prettierignore @@ -11,4 +11,5 @@ docs/api-content/**/*.json # Troublesome files tsconfig.json -src/components/IconMapper/dynamicFontAwesomeImports.js \ No newline at end of file +src/components/IconMapper/dynamicFontAwesomeImports.js +_partials/ \ No newline at end of file diff --git a/_partials/_authenticate-palette-cli.mdx b/_partials/_authenticate-palette-cli.mdx new file mode 100644 index 0000000000..2abfac4829 --- /dev/null +++ b/_partials/_authenticate-palette-cli.mdx @@ -0,0 +1,40 @@ +--- +partial_category: pcg-vmware +partial_name: authenticate-palette-cli +--- + +The initial step to deploy a PCG using Palette CLI involves authenticating with your Palette environment using the + command. +In your terminal, execute the following command. + +```bash +palette login +``` + +Once issued, you will be prompted for several parameters to complete the authentication. The table below outlines the +required parameters along with the values that will be utilized in this tutorial. If a parameter is specific to your +environment and Palette account, such as your Palette API key, ensure to input the value according to your environment. +Check out the guide for +more information. option. + +| **Parameter** | **Value** | **Environment-Specific** | +| ------------------------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------ | +| **Spectro Cloud Console** | `https://console.spectrocloud.com`. If using a self-hosted instance of Palette, enter the URL for that instance. | No | +| **Allow Insecure Connection** | `Y`. Enabling this option bypasses x509 CA verification. In production environments, enter `Y` if you are using a self-hosted Palette or VerteX instance with self-signed TLS certificates and need to provide a file path to the instance CA. Otherwise, enter `N`. | No | +| **Spectro Cloud API Key** | Enter your Palette API Key. | Yes | +| **Spectro Cloud Organization** | Select your Palette Organization name. | Yes | +| **Spectro Cloud Project** | `None (TenantAdmin)` | No | +| **Acknowledge** | Accept the login banner message. messages are only displayed if the tenant admin enabled a login banner. | Yes | + +After accepting the login banner message, you will receive the following output confirming you have successfully +authenticated with Palette. + +```text hideClipboard +Welcome to Spectro Cloud Palette +``` + +The video below demonstrates Palette's authentication process. Ensure you utilize values specific to your environment, +such as the correct Palette URL. Contact your Palette administrator for the correct URL if you use a self-hosted Palette +or VerteX instance. + + diff --git a/_partials/_cluster_observability.mdx b/_partials/_cluster_observability.mdx new file mode 100644 index 0000000000..43ba13bede --- /dev/null +++ b/_partials/_cluster_observability.mdx @@ -0,0 +1,17 @@ +--- +partial_category: getting-started +partial_name: cluster-observability +--- + +As we have seen throughout this tutorial, Palette exposes a set of workload metrics out-of-the-box to help cluster +administrators better understand the resource utilization of the cluster. The in Palette are a snapshot in +time and do not provide alerting capabilities. + +We recommend using a dedicated monitoring system in order to gain a better picture of resource utilization in your +environments. Several are available in the monitoring category that +you can use to add additional monitoring capabilities to your cluster. + +Refer to the +guide to learn how to deploy a monitoring stack using the open-source tool +[Prometheus](https://prometheus.io/docs/introduction/overview/) and how to configure a host cluster to forward metrics +to the monitoring stack. \ No newline at end of file diff --git a/_partials/_create-tenant-api-key.mdx b/_partials/_create-tenant-api-key.mdx new file mode 100644 index 0000000000..42b66330cd --- /dev/null +++ b/_partials/_create-tenant-api-key.mdx @@ -0,0 +1,34 @@ +--- +partial_category: palette-setup +partial_name: create-tenant-api-key +--- + +1. Log in to [Palette](https://console.spectrocloud.com) as a tenant admin. + +2. Switch to the **Tenant Admin** scope + +3. Navigate to the left **Main Menu** and select **Tenant Settings**. + +4. From the **Tenant Settings Menu**, select **API Keys**. + +5. Click on **Add New API key**. + +6. Fill out the following input fields: + +| **Input Field** | **Description** | +| ------------------- | ----------------------------------------------------------------------------------------------------------------- | +| **API Key Name** | Assign a name to the API key. | +| **Description** | Provide a description for the API key. | +| **User Name** | Select the user to assign the API key. | +| **Expiration Date** | Select an expiration date from the available options. You can also specify a custom date by selecting **Custom**. | + +5. Click the **Generate** button. + +6. Copy the API key and save it in a secure location, such as a password manager. Share the API key with the user you + created the API key for. + +:::warning + +Ensure you save the API key in a secure location. You will not be able to view the API key again. + +::: diff --git a/_partials/_delete-pcg-vmware.mdx b/_partials/_delete-pcg-vmware.mdx new file mode 100644 index 0000000000..d01166f6ac --- /dev/null +++ b/_partials/_delete-pcg-vmware.mdx @@ -0,0 +1,21 @@ +--- +partial_category: pcg-vmware +partial_name: delete-pcg-ui +--- + +After deleting your VMware cluster and cluster profile, proceed with the PCG deletion. Log in to Palette as a tenant +admin, navigate to the left **Main Menu** and select **Tenant Settings**. Next, from the **Tenant Settings Menu**, click +on **Private Cloud Gateways**. Identify the PCG you want to delete, click on the **Three-Dot Menu** at the end of the +PCG row, and select **Delete**. Click **OK** to confirm the PCG deletion. + +![Delete PCG image](/clusters_pcg_deploy-app-pcg_pcg-delete.webp) + +Palette will delete the PCG and the Palette services deployed on the PCG node. However, the underlying infrastructure +resources, such as the virtual machine, must be removed manually from VMware vSphere. + +Log in to your VMware vSphere server and select the VM representing the PCG node named `gateway-tutorial-cp`. Click on +the **Three-Dot Actions** button, select **Power**, and **Power Off** to power off the machine. Once the machine is +powered off, click on the **Three-Dot Actions** button again and select **Delete from Disk** to remove the machine from +your VMware vSphere environment. + +![Delete VMware VM](/clusters_pcg_deploy-app-pcg_vmware-delete.webp) diff --git a/_partials/_deploy-pcg-palette-vmware.mdx b/_partials/_deploy-pcg-palette-vmware.mdx new file mode 100644 index 0000000000..f12e7fb25c --- /dev/null +++ b/_partials/_deploy-pcg-palette-vmware.mdx @@ -0,0 +1,157 @@ +--- +partial_category: pcg-vmware +partial_name: deploy-pcg-palette-cli +--- + +After authenticating with Palette, you can proceed with the PCG creation process. Issue the command below to start the +PCG installation. + +```bash +palette pcg install +``` + +The `palette pcg install` command will prompt you for information regarding your PCG cluster, vSphere environment, and +resource configurations. The following tables display the required parameters along with the values that will be used in +this tutorial. Enter the provided values when prompted. If a parameter is specific to your environment, such as your +vSphere endpoint, enter the corresponding value according to your environment. For detailed information about each +parameter, refer to the +guide. + +:::info + +The PCG to be deployed in this tutorial is intended for educational purposes only and is not recommended for production +environments. + +::: + +1. **PCG General Information** + + Configure the PCG general information, including the **Cloud Type** and **Private Cloud Gateway Name**, as shown in + the table below. + + | **Parameter** | **Value** | **Environment-Specific** | + | :--------------------------------------------------- | ------------------ | ------------------------ | + | **Management Plane Type** | `Palette` | No | + | **Enable Ubuntu Pro (required for production)** | `N` | No | + | **Select an image registry type** | `Default` | No | + | **Cloud Type** | `VMware vSphere` | No | + | **Private Cloud Gateway Name** | `gateway-tutorial` | No | + | **Share PCG Cloud Account across platform Projects** | `Y` | No | + +2. **Environment Configuration** + + Enter the environment configuration information, such as the **Pod CIDR** and **Service IP Range** according to the + table below. + + | **Parameter** | **Value** | **Environment-Specific** | + | :------------------- | ------------------------------------------------------------------------------------------------------------------- | ------------------------ | + | **HTTPS Proxy** | Skip. | No | + | **HTTP Proxy** | Skip. | No | + | **Pod CIDR** | `172.16.0.0/20`. The pod IP addresses should be unique and not overlap with any machine IPs in the environment. | No | + | **Service IP Range** | `10.155.0.0/24`. The service IP addresses should be unique and not overlap with any machine IPs in the environment. | No | + +3. **vSphere Account Information** + + Enter the information specific to your vSphere account. + + | **Parameter** | **Value** | **Environment-Specific** | + | -------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------ | + | **vSphere Endpoint** | Your vSphere endpoint. You can specify a Full Qualified Domain Name (FQDN) or an IP address. Make sure you specify the endpoint without the HTTP scheme `https://` or `http://`. Example: `vcenter.mycompany.com`. | Yes | + | **vSphere Username** | Your vSphere account username. | Yes | + | **vSphere Password** | Your vSphere account password. | Yes | + | **Allow Insecure Connection (Bypass x509 Verification)** | `Y`. Enabling this option bypasses x509 CA verification. In production environments, enter `N` if using a custom registry with self-signed SSL certificates. Otherwise, enter `Y`. | No | + +4. **vSphere Cluster Configuration** + + Enter the PCG cluster configuration information. For example, specify the vSphere **Resource Pool** to be targeted by + the PCG cluster. + + | **Parameter** | **Value** | **Environment-Specific** | + | -------------------------------------------------------- | ---------------------------------------------------------------------- | ------------------------ | + | **Datacenter** | The vSphere data center to target when deploying the PCG cluster. | Yes | + | **Folder** | The vSphere folder to target when deploying the PCG cluster. | Yes | + | **Network** | The port group to which the PCG cluster will be connected. | Yes | + | **Resource Pool** | The vSphere resource pool to target when deploying the PCG cluster. | Yes | + | **Cluster** | The vSphere compute cluster to use for the PCG deployment. | Yes | + | **Select specific Datastore or use a VM Storage Policy** | `Datastore` | No | + | **Datastore** | The vSphere datastore to use for the PCG deployment. | Yes | + | **Add another Fault Domain** | `N` | No | + | **NTP Servers** | Skip. | No | + | **SSH Public Keys** | Provide a public OpenSSH key to be used to connect to the PCG cluster. | Yes | + +5. **PCG Cluster Size** + + This tutorial will deploy a one-node PCG with dynamic IP placement (DDNS). If needed, you can convert a single-node + PCG to a multi-node PCG to provide additional capacity. Refer to the + guide for more + information. + + | **Parameter** | **Value** | **Environment-Specific** | + | ------------------- | ---------------------------------------------------------------------------- | ------------------------ | + | **Number of Nodes** | `1` | No | + | **Placement Type** | `DDNS` | No | + | **Search domains** | Comma-separated list of DNS search domains. For example, `spectrocloud.dev`. | Yes | + +6. **Cluster Settings** + + Set the parameter **Patch OS on boot** to `N`, meaning the OS of the PCG hosts will not be patched on the first boot. + + | **Parameter** | **Value** | **Environment-Specific** | + | -------------------- | --------- | ------------------------ | + | **Patch OS on boot** | `N` | No | + +7. **vSphere Machine Configuration** + + Set the size of the PCG as small (**S**) as this PCG will not be used in production environments. + + | **Parameter** | **Value** | **Environment-Specific** | + | ------------- | --------------------------------------------- | ------------------------ | + | **S** | `4 CPU, 4 GB of Memory, and 60 GB of Storage` | No | + +8. **Node Affinity Configuration Information** + + Set **Node Affinity** to `N`, indicating no affinity between Palette pods and control plane nodes. + + | **Parameter** | **Value** | **Environment-Specific** | + | ----------------- | --------- | ------------------------ | + | **Node Affinity** | `N` | No | + +After answering the prompts of the `pcg install` command, a new PCG configuration file is generated, and its location is +displayed on the console. + +```text hideClipboard +==== PCG config saved ==== Location: /home/ubuntu/.palette/pcg/pcg-20240313152521/pcg.yaml +``` + +Next, Palette CLI will create a local [kind](https://kind.sigs.k8s.io/) cluster that will be used to bootstrap the PCG +cluster deployment in your VMware environment. Once installed, the PCG registers itself with Palette and creates a +VMware cloud account with the same name as the PCG. + +The following recording demonstrates the `pcg install` command with the `--config-only` flag. When using this flag, a +reusable configuration file named **pcg.yaml** is created under the path **.palette/pcg**. You can then utilize this +file to install a PCG with predefined values using the command `pcg install` with the `--config-file` flag. Refer to the + page for further information +about the command. + + + +
+
+ +You can monitor the PCG cluster creation by logging into Palette and switching to the **Tenant Admin** scope. Next, +click on **Tenant Settings** from the left **Main Menu** and select **Private Cloud Gateways**. Then, click on the PCG +cluster you just created and check the deployment progress under the **Events** tab. + +![PCG Events page.](/clusters_pcg_deploy-app-pcg_pcg-events.webp) + +You can also track the PCG deployment progress from your terminal. Depending on the PCG size and infrastructure +environment, the deployment might take up to 30 minutes. Upon completion, the local kind cluster is automatically +deleted from your machine. + +![Palette CLI PCG deployment](/clusters_pcg_deploy-app-pcg_pcg-cli.webp) + +Next, log in to Palette as a tenant admin. Navigate to the left **Main Menu** and select **Tenant Settings**. Click on +**Private Cloud Gateways** from the **Tenant Settings Menu** and select the PCG you just created. Ensure that the PCG +cluster status is **Running** and **Healthy** before proceeding. + +![PCG Overview page.](/clusters_pcg_deploy-app-pcg_pcg-health.webp) diff --git a/docs/docs-content/clusters/pcg/deploy-app-pcg.md b/docs/docs-content/clusters/pcg/deploy-app-pcg.md index de42649f6d..3a1d2cbb80 100644 --- a/docs/docs-content/clusters/pcg/deploy-app-pcg.md +++ b/docs/docs-content/clusters/pcg/deploy-app-pcg.md @@ -77,193 +77,11 @@ To complete this tutorial, you will need the following prerequisites in place. ## Authenticate with Palette -The initial step to deploy a PCG using Palette CLI involves authenticating with your Palette environment using the -[`palette login`](../../automation/palette-cli/commands/login.md) command. - -In your terminal, execute the following command. - -```bash -palette login -``` - -Once issued, you will be prompted for several parameters to complete the authentication. The table below outlines the -required parameters along with the values that will be utilized in this tutorial. If a parameter is specific to your -environment and Palette account, such as your Palette API key, ensure to input the value according to your environment. -Check out the [Deploy a PCG to VMware vSphere](../pcg/deploy-pcg/vmware.md) guide for more information. option. - -| **Parameter** | **Value** | **Environment-Specific** | -| ------------------------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------ | -| **Spectro Cloud Console** | `https://console.spectrocloud.com`. If using a self-hosted instance of Palette, enter the URL for that instance. | No | -| **Allow Insecure Connection** | `Y`. Enabling this option bypasses x509 CA verification. In production environments, enter `Y` if you are using a self-hosted Palette or VerteX instance with self-signed TLS certificates and need to provide a file path to the instance CA. Otherwise, enter `N`. | No | -| **Spectro Cloud API Key** | Enter your Palette API Key. | Yes | -| **Spectro Cloud Organization** | Select your Palette Organization name. | Yes | -| **Spectro Cloud Project** | `None (TenantAdmin)` | No | -| **Acknowledge** | Accept the login banner message. [Login banner](../../tenant-settings/login-banner.md) messages are only displayed if the tenant admin enabled a login banner. | Yes | - -After accepting the login banner message, you will receive the following output confirming you have successfully -authenticated with Palette. - -```text hideClipboard -Welcome to Spectro Cloud Palette -``` - -The video below demonstrates Palette's authentication process. Ensure you utilize values specific to your environment, -such as the correct Palette URL. Contact your Palette administrator for the correct URL if you use a self-hosted Palette -or VerteX instance. - - + ## Deploy a PCG with Palette CLI -After authenticating with Palette, you can proceed with the PCG creation process. Issue the command below to start the -PCG installation. - -```bash -palette pcg install -``` - -The `palette pcg install` command will prompt you for information regarding your PCG cluster, vSphere environment, and -resource configurations. The following tables display the required parameters along with the values that will be used in -this tutorial. Enter the provided values when prompted. If a parameter is specific to your environment, such as your -vSphere endpoint, enter the corresponding value according to your environment. For detailed information about each -parameter, refer to the [Deploy a PCG to VMware vSphere](../pcg/deploy-pcg/vmware.md) guide. - -:::info - -The PCG to be deployed in this tutorial is intended for educational purposes only and is not recommended for production -environments. - -::: - -1. **PCG General Information** - - Configure the PCG general information, including the **Cloud Type** and **Private Cloud Gateway Name**, as shown in - the table below. - - | **Parameter** | **Value** | **Environment-Specific** | - | :--------------------------------------------------- | ------------------ | ------------------------ | - | **Management Plane Type** | `Palette` | No | - | **Enable Ubuntu Pro (required for production)** | `N` | No | - | **Select an image registry type** | `Default` | No | - | **Cloud Type** | `VMware vSphere` | No | - | **Private Cloud Gateway Name** | `gateway-tutorial` | No | - | **Share PCG Cloud Account across platform Projects** | `Y` | No | - -2. **Environment Configuration** - - Enter the environment configuration information, such as the **Pod CIDR** and **Service IP Range** according to the - table below. - - | **Parameter** | **Value** | **Environment-Specific** | - | :------------------- | ------------------------------------------------------------------------------------------------------------------- | ------------------------ | - | **HTTPS Proxy** | Skip. | No | - | **HTTP Proxy** | Skip. | No | - | **Pod CIDR** | `172.16.0.0/20`. The pod IP addresses should be unique and not overlap with any machine IPs in the environment. | No | - | **Service IP Range** | `10.155.0.0/24`. The service IP addresses should be unique and not overlap with any machine IPs in the environment. | No | - -3. **vSphere Account Information** - - Enter the information specific to your vSphere account. - - | **Parameter** | **Value** | **Environment-Specific** | - | -------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------ | - | **vSphere Endpoint** | Your vSphere endpoint. You can specify a Full Qualified Domain Name (FQDN) or an IP address. Make sure you specify the endpoint without the HTTP scheme `https://` or `http://`. Example: `vcenter.mycompany.com`. | Yes | - | **vSphere Username** | Your vSphere account username. | Yes | - | **vSphere Password** | Your vSphere account password. | Yes | - | **Allow Insecure Connection (Bypass x509 Verification)** | `Y`. Enabling this option bypasses x509 CA verification. In production environments, enter `N` if using a custom registry with self-signed SSL certificates. Otherwise, enter `Y`. | No | - -4. **vSphere Cluster Configuration** - - Enter the PCG cluster configuration information. For example, specify the vSphere **Resource Pool** to be targeted by - the PCG cluster. - - | **Parameter** | **Value** | **Environment-Specific** | - | -------------------------------------------------------- | ---------------------------------------------------------------------- | ------------------------ | - | **Datacenter** | The vSphere data center to target when deploying the PCG cluster. | Yes | - | **Folder** | The vSphere folder to target when deploying the PCG cluster. | Yes | - | **Network** | The port group to which the PCG cluster will be connected. | Yes | - | **Resource Pool** | The vSphere resource pool to target when deploying the PCG cluster. | Yes | - | **Cluster** | The vSphere compute cluster to use for the PCG deployment. | Yes | - | **Select specific Datastore or use a VM Storage Policy** | `Datastore` | No | - | **Datastore** | The vSphere datastore to use for the PCG deployment. | Yes | - | **Add another Fault Domain** | `N` | No | - | **NTP Servers** | Skip. | No | - | **SSH Public Keys** | Provide a public OpenSSH key to be used to connect to the PCG cluster. | Yes | - -5. **PCG Cluster Size** - - This tutorial will deploy a one-node PCG with dynamic IP placement (DDNS). If needed, you can convert a single-node - PCG to a multi-node PCG to provide additional capacity. Refer to the - [Increase PCG Node Count](./manage-pcg/scale-pcg-nodes.md) guide for more information. - - | **Parameter** | **Value** | **Environment-Specific** | - | ------------------- | ---------------------------------------------------------------------------- | ------------------------ | - | **Number of Nodes** | `1` | No | - | **Placement Type** | `DDNS` | No | - | **Search domains** | Comma-separated list of DNS search domains. For example, `spectrocloud.dev`. | Yes | - -6. **Cluster Settings** - - Set the parameter **Patch OS on boot** to `N`, meaning the OS of the PCG hosts will not be patched on the first boot. - - | **Parameter** | **Value** | **Environment-Specific** | - | -------------------- | --------- | ------------------------ | - | **Patch OS on boot** | `N` | No | - -7. **vSphere Machine Configuration** - - Set the size of the PCG as small (**S**) as this PCG will not be used in production environments. - - | **Parameter** | **Value** | **Environment-Specific** | - | ------------- | --------------------------------------------- | ------------------------ | - | **S** | `4 CPU, 4 GB of Memory, and 60 GB of Storage` | No | - -8. **Node Affinity Configuration Information** - - Set **Node Affinity** to `N`, indicating no affinity between Palette pods and control plane nodes. - - | **Parameter** | **Value** | **Environment-Specific** | - | ----------------- | --------- | ------------------------ | - | **Node Affinity** | `N` | No | - -After answering the prompts of the `pcg install` command, a new PCG configuration file is generated, and its location is -displayed on the console. - -```text hideClipboard -==== PCG config saved ==== Location: /home/ubuntu/.palette/pcg/pcg-20240313152521/pcg.yaml -``` - -Next, Palette CLI will create a local [kind](https://kind.sigs.k8s.io/) cluster that will be used to bootstrap the PCG -cluster deployment in your VMware environment. Once installed, the PCG registers itself with Palette and creates a -VMware cloud account with the same name as the PCG. - -The following recording demonstrates the `pcg install` command with the `--config-only` flag. When using this flag, a -reusable configuration file named **pcg.yaml** is created under the path **.palette/pcg**. You can then utilize this -file to install a PCG with predefined values using the command `pcg install` with the `--config-file` flag. Refer to the -[Palette CLI PCG Command](../../automation/palette-cli/commands/pcg.md) page for further information about the command. - - - -
-
- -You can monitor the PCG cluster creation by logging into Palette and switching to the **Tenant Admin** scope. Next, -click on **Tenant Settings** from the left **Main Menu** and select **Private Cloud Gateways**. Then, click on the PCG -cluster you just created and check the deployment progress under the **Events** tab. - -![PCG Events page.](/clusters_pcg_deploy-app-pcg_pcg-events.webp) - -You can also track the PCG deployment progress from your terminal. Depending on the PCG size and infrastructure -environment, the deployment might take up to 30 minutes. Upon completion, the local kind cluster is automatically -deleted from your machine. - -![Palette CLI PCG deployment](/clusters_pcg_deploy-app-pcg_pcg-cli.webp) - -Next, log in to Palette as a tenant admin. Navigate to the left **Main Menu** and select **Tenant Settings**. Click on -**Private Cloud Gateways** from the **Tenant Settings Menu** and select the PCG you just created. Ensure that the PCG -cluster status is **Running** and **Healthy** before proceeding. - -![PCG Overview page.](/clusters_pcg_deploy-app-pcg_pcg-health.webp) + ## Create a Cluster Profile and Deploy a Cluster @@ -608,22 +426,7 @@ Destroy complete! Resources: 5 destroyed. ### Delete the PCG -After deleting your VMware cluster and cluster profile, proceed with the PCG deletion. Log in to Palette as a tenant -admin, navigate to the left **Main Menu** and select **Tenant Settings**. Next, from the **Tenant Settings Menu**, click -on **Private Cloud Gateways**. Identify the PCG you want to delete, click on the **Three-Dot Menu** at the end of the -PCG row, and select **Delete**. Click **OK** to confirm the PCG deletion. - -![Delete PCG image](/clusters_pcg_deploy-app-pcg_pcg-delete.webp) - -Palette will delete the PCG and the Palette services deployed on the PCG node. However, the underlying infrastructure -resources, such as the virtual machine, must be removed manually from VMware vSphere. - -Log in to your VMware vSphere server and select the VM representing the PCG node named `gateway-tutorial-cp`. Click on -the **Three-Dot Actions** button, select **Power**, and **Power Off** to power off the machine. Once the machine is -powered off, click on the **Three-Dot Actions** button again and select **Delete from Disk** to remove the machine from -your VMware vSphere environment. - -![Delete VMware VM](/clusters_pcg_deploy-app-pcg_vmware-delete.webp) + ## Wrap-Up diff --git a/docs/docs-content/getting-started/aws/create-cluster-profile.md b/docs/docs-content/getting-started/aws/create-cluster-profile.md index 13e738e829..bd479d0f92 100644 --- a/docs/docs-content/getting-started/aws/create-cluster-profile.md +++ b/docs/docs-content/getting-started/aws/create-cluster-profile.md @@ -82,8 +82,28 @@ and configuration options. The pack you added will deploy the ![Screenshot of pack readme](/getting-started/aws/getting-started_create-cluster-profile_pack-readme.webp) -Click on **Confirm & Create** to save the manifest. Click on **Save Changes** to save this new layer to the cluster -profile. +Click on **Values** to edit the pack manifest. Click on **Presets** on the right-hand side. + +This pack has two configured presets: + +1. **Disable Hello Universe API** configures the [_hello-universe_](https://github.com/spectrocloud/hello-universe) + application as a standalone frontend application. This is the default preset selection. +2. **Enable Hello Universe API** configures the [_hello-universe_](https://github.com/spectrocloud/hello-universe) + application as a three-tier application with a frontend, API server, and Postgres database. + +Select the **Enable Hello Universe API** preset. The pack manifest changes according to this preset. + +![Screenshot of pack presets](/getting-started/aws/getting-started_create-cluster-profile_pack-presets.webp) + +The pack requires two values to be replaced for the authorization token and for the database password when using this +preset. Replace these values with your own base64 encoded values. The +[_hello-universe_](https://github.com/spectrocloud/hello-universe?tab=readme-ov-file#single-load-balancer) repository +provides a token that you can use. + +Click on **Confirm Updates**. The manifest editor closes. + +Click on **Confirm & Create** to save the manifest. Then, click on **Save Changes** to save this new layer to the +cluster profile. ## Wrap-Up diff --git a/docs/docs-content/getting-started/aws/deploy-k8s-cluster.md b/docs/docs-content/getting-started/aws/deploy-k8s-cluster.md index 7ccd5bb10c..54af6899fa 100644 --- a/docs/docs-content/getting-started/aws/deploy-k8s-cluster.md +++ b/docs/docs-content/getting-started/aws/deploy-k8s-cluster.md @@ -32,34 +32,34 @@ To complete this tutorial, you will need the following. The following steps will guide you through deploying the cluster infrastructure. -Navigate to the left **Main Menu** and select **Cluster**. From the clusters page, click on **Add New Cluster**. +Navigate to the left **Main Menu** and select **Clusters**. Click on **Create Cluster**. ![Palette clusters overview page](/getting-started/getting-started_deploy-k8s-cluster_new_cluster.webp) -Palette will prompt you to either deploy a new cluster or import an existing one. Click on **Deploy New Cluster** to -access the cluster deployment wizard. Select **AWS** and click the **Start AWS Configuration** button. Use the following -steps to create a host cluster in AWS. +Palette will prompt you to select the type of cluster. Select **AWS IaaS** and click the **Start AWS IaaS +Configuration** button. Use the following steps to create a host cluster in AWS. In the **Basic information** section, insert the general information about the cluster, such as the Cluster name, Description, Tags, and Cloud account. Click on **Next**. ![Palette clusters basic information](/getting-started/aws/getting-started_deploy-k8s-cluster_clusters_basic_info.webp) -A list is displayed of available profiles you can choose to deploy to AWS. Select the cluster profile you created in the -[Create a Cluster Profile](./create-cluster-profile.md) tutorial, named **aws-profile**, and click on **Next**. +Click on **Add Cluster Profile**. A list is displayed of available profiles you can choose to deploy to AWS. Select the +cluster profile you created in the [Create a Cluster Profile](./create-cluster-profile.md) tutorial, named +**aws-profile**, and click on **Confirm**. -The **Parameters** section displays all the layers in the cluster profile. +The **Cluster Profile** section displays all the layers in the cluster profile. ![Palette clusters parameters](/getting-started/aws/getting-started_deploy-k8s-cluster_clusters_creation_parameters.webp) Each layer has a pack manifest file with the deploy configurations. The pack manifest file is in a YAML format. Each pack contains a set of default values. You can change the manifest values if needed. Click on **Next** to proceed. -The **Cluster config** section allows you to select the **Region** in which to deploy the host cluster and specify other +The **Cluster Config** section allows you to select the **Region** in which to deploy the host cluster and specify other options such as the **SSH Key Pair** to assign to the cluster. All clusters require you to select an SSH key. After you have selected the **Region** and your **SSH Key Pair Name**, click on **Next**. -The **Nodes config** section allows you to configure the nodes that make up the control plane and worker nodes of the +The **Nodes Config** section allows you to configure the nodes that make up the control plane and worker nodes of the host cluster. Before you proceed to next section, review the following parameters. @@ -86,8 +86,8 @@ Before you proceed to next section, review the following parameters. Select **Next** to proceed with the cluster deployment. -In the **Settings** section, you can configure advanced options such as when to patch the OS, enable security scans, -manage backups, add role-based access control (RBAC) bindings, and more. +In the **Cluster Settings** section, you can configure advanced options such as when to patch the OS, enable security +scans, manage backups, add role-based access control (RBAC) bindings, and more. For this tutorial, you can use the default settings. Click on **Validate** to continue. @@ -127,13 +127,13 @@ moments before clicking on the service URL to prevent the browser from caching a
-![Image that shows the cluster overview of the Hello Universe Frontend Cluster](/getting-started/getting-started_deploy-k8s-cluster_hello-universe-without-api.webp) +![Image that shows the cluster overview of the Hello Universe Frontend Cluster](/getting-started/getting-started_deploy-k8s-cluster_hello-universe-with-api.webp) Welcome to Hello Universe, a demo application to help you learn more about Palette and its features. Feel free to click on the logo to increase the counter and for a fun image change. -You have deployed your first application to a cluster managed by Palette. Your first application is a single container -application with no upstream dependencies. +You have deployed your first application to a cluster managed by Palette. Your first application is a three-tier +application with a frontend, API server, and Postgres database. ## Cleanup diff --git a/docs/docs-content/getting-started/aws/update-k8s-cluster.md b/docs/docs-content/getting-started/aws/update-k8s-cluster.md index 6e14bc2428..a41a4ef06b 100644 --- a/docs/docs-content/getting-started/aws/update-k8s-cluster.md +++ b/docs/docs-content/getting-started/aws/update-k8s-cluster.md @@ -29,6 +29,9 @@ explore each cluster update method and learn how to apply these changes using Pa To complete this tutorial, follow the steps described in the [Set up Palette with AWS](./setup.md) guide to authenticate Palette for use with your AWS cloud account. +Additionally, you should install Kubectl locally. Use the Kubernetes +[Install Tools](https://kubernetes.io/docs/tasks/tools/) page for further guidance. + Follow the instructions of the [Deploy a Cluster](./deploy-k8s-cluster.md) tutorial to deploy a cluster with the [_hello-universe_](https://github.com/spectrocloud/hello-universe) application. Your cluster should be successfully provisioned and in a healthy state. @@ -96,24 +99,16 @@ profile. This profile version is not deployed to any host clusters. ![Image that shows cluster profile version 1.1.0](/getting-started/aws/getting-started_update-k8s-cluster_new-version-overview.webp) -The version **1.1.0** has the same layers as the version **1.0.0** it was created from. Click on the **hello-universe** -pack layer. The pack manifest appears. - -Click on **Presets** on the right-hand side. This pack has two configured presets: +The version **1.1.0** has the same layers as the version **1.0.0** it was created from. -1. **Disable Hello Universe API** configures the [_hello-universe_](https://github.com/spectrocloud/hello-universe) - application as a standalone frontend application. This is the default preset selection. -2. **Enable Hello Universe API** configures the [_hello-universe_](https://github.com/spectrocloud/hello-universe) - application as a three-tier application with a frontend, API server, and Postgres database. +Click on **Add New Pack**. Select the **Public Repo** registry and scroll down to the **Monitoring** section. Find the +**Kubecost** pack and select it. Alternatively, you can use the search function with the pack name **Kubecost**. -Select the **Enable Hello Universe API** preset. The pack manifest changes according to this preset. +![Image that shows how to select the Kubecost pack](/getting-started/aws/getting-started_update-k8s-cluster_select-kubecost-pack.webp) -The pack manifest has requires two values to be replaced for the authorization token and for the database password. -Replace these values with your own base64 encoded values. The -[_hello-universe_](https://github.com/spectrocloud/hello-universe?tab=readme-ov-file#single-load-balancer) repository -provides a token that you can use. +Once selected, the pack manifest is displayed in the manifest editor. -Click on **Confirm Updates**. The manifest editor closes. +Click on **Confirm & Create**. The manifest editor closes. Click on **Save Changes** to finish the configuration of this cluster profile version. @@ -127,12 +122,7 @@ Select the **1.1.0** version. ![Image that shows how to select a new profile version for the cluster](/getting-started/aws/getting-started_update-k8s-cluster_profile-version-selection.webp) -Click on **Review & Save** to confirm your profile version selection. - -The **Changes Summary** dialog appears to show your cluster changes. Click on **Review changes in Editor**. The pack -manifest changes appear in the editor. Click on **Apply Changes** to deploy the new profile version. - -![Image that shows the profile 1.1.0 differences](/getting-started/getting-started_update-k8s-cluster_profile-version-changes.webp) +Click on **Save** to confirm your profile version selection. :::warning @@ -143,15 +133,39 @@ backups before you make any cluster profile version changes in your production e ::: Palette now makes the required changes to your cluster according to the specifications of the configured cluster profile -version. Once your changes have completed, Palette marks your layers with the green status indicator. The Hello Universe -three-tier application will be successfully deployed. +version. Once your changes have completed, Palette marks your layers with the green status indicator. The Kubecost pack +will be successfully deployed. ![Image that shows completed cluster profile updates](/getting-started/aws/getting-started_update-k8s-cluster_completed-cluster-updates.webp) -Click on the URL for port **:8080** on the **ui** service to access the Hello Universe application. The landing page of -the application indicates that it is connected to the API server. +Download the [kubeconfig](../../clusters/cluster-management/kubeconfig.md) file for your cluster from the Palette UI. +This file enables you and other users to issue kubectl commands against the host cluster. + +![Image that the kubeconfig file](/getting-started/aws/getting-started_update-k8s-cluster_download-kubeconfig.webp) + +Open a terminal window and set the environment variable `KUBECONFIG` to point to the kubeconfig file you downloaded. + +```shell +export KUBECONFIG=~/Downloads/admin.aws-cluster.kubeconfig +``` + +Forward the Kubecost UI to your local network. The Kubecost dashboard is not exposed externally by default, so the +command below will allow you to access it locally on port **9090**. If port 9090 is already taken, you can choose a +different one. -![Image that shows hello-universe with API server](/getting-started/getting-started_update-k8s-cluster_hello-universe-with-api.webp) +```shell +kubectl port-forward --namespace kubecost deployment/cost-analyzer-cost-analyzer 9090 +``` + +Open your browser window and navigate to `http://localhost:9090`. The Kubecost UI provides you with a variety of cost +visualization tools. Read more about +[Navigating the Kubecost UI](https://docs.kubecost.com/using-kubecost/navigating-the-kubecost-ui) to make the most of +the cost analyzer. + +![Image that shows the Kubecost UI](/getting-started/getting-started_update-k8s-cluster_kubecost-ui.webp) + +Once you are done exploring locally, you can stop the `kubectl port-forward` command by closing the terminal window it +is executing from. ## Roll Back Cluster Profiles @@ -168,18 +182,12 @@ Select the **Profile** tab. This cluster is currently deployed using cluster pro option **1.0.0** in the version dropdown. This process is the reverse of what you have done in the previous section, [Version Cluster Profiles](#version-cluster-profiles). -Click on **Review & Save** to confirm your changes. The **Changes Summary** dialog appears again. - -Click on **Review changes in Editor**. The editor shows that the incoming version no longer contains the three-tier -application configuration. - -Click on **Apply Changes**. Select the **Overview** tab. +Click on **Save** to confirm your changes. Palette now makes the changes required for the cluster to return to the state specified in version **1.0.0** of your cluster profile. Once your changes have completed, Palette marks your layers with the green status indicator. -Click on the URL for port **:8080** on **hello-universe-service** to access the Hello Universe application. The landing -page indicates that the application is deployed as a standalone frontend. +![Cluster details page with service URL highlighted](/getting-started/aws/getting-started_deploy-k8s-cluster_service_url.webp) ## Pending Updates @@ -192,7 +200,7 @@ The previous state of the cluster profile will not be saved once it is overwritt Navigate to the left **Main Menu** and select **Clusters**. Filter for the cluster with the tag **service:hello-universe-frontend**. Select it to view its **Overview** tab. -Select the **Profile** tab. Then, select the **hello-universe** pack. Change the `replicas` field to `2` on line `14`. +Select the **Profile** tab. Then, select the **hello-universe** pack. Change the `replicas` field to `2` on line `15`. Click on **Save**. The editor closes. This cluster now contains an override over its cluster profile. Palette uses the configuration you have just provided @@ -200,15 +208,15 @@ for the single cluster over its cluster profile and begins making the appropriat Once these changes are complete, select the **Workloads** tab. Then, select the **hello-universe** namespace. -Two replicas of the **hello-universe-deployment** are available, instead of the one specified by your cluster profile. -Your override has been successfully applied. +Two **ui** pods are available, instead of the one specified by your cluster profile. Your override has been successfully +applied. Navigate to the left **Main Menu** and select **Profiles** to view the cluster profile page. Find the cluster profile corresponding to your _hello-universe-frontend_ cluster. It is named `aws-profile`. Click on it to view its details. Select **1.0.0** in the version dropdown. -Select the **hello-universe** pack. The editor appears. Change the `replicas` field to `3` on line `14`. Click on +Select the **hello-universe** pack. The editor appears. Change the `replicas` field to `3` on line `15`. Click on **Confirm Updates**. The editor closes. Click on **Save Changes** to confirm the changes you have made to your profile. @@ -220,7 +228,7 @@ tag. Palette indicates that the cluster associated with the cluster profile you Select this cluster to open its **Overview** tab. Click on **Updates** to begin the cluster update. -![Image that shows the Updates Available button](/getting-started/aws/getting-started_update-k8s-cluster_updates-available-button-cluster-overview.webp) +![Image that shows the Updates button](/getting-started/aws/getting-started_update-k8s-cluster_updates-available-button-cluster-overview.webp) A dialog appears which shows the changes made in this update. Review the changes and ensure the only change is the `replicas` field value. The pending update removes your cluster override and sets the `replicas` field to `3`. At this @@ -228,13 +236,16 @@ point, you can choose to apply the pending changes or keep it by modifying the r ![Image that shows the available updates dialog ](/getting-started/aws/getting-started_update-k8s-cluster_available-updates-dialog.webp) -Click on **Confirm updates** once you have finished reviewing your changes. +Click on **Apply Changes** once you have finished reviewing your changes. Palette updates your cluster according to cluster profile specifications. Once these changes are complete, select the **Workloads** tab. Then, select the **hello-universe** namespace. -Three replicas of the **hello-universe-deployment** are available. The cluster profile update is now reflected by your -cluster. +Three **ui** pods are available. The cluster profile update is now reflected by your cluster. + +## Cluster Observability + + ## Cleanup diff --git a/docs/docs-content/getting-started/azure/azure.md b/docs/docs-content/getting-started/azure/azure.md index 931bd5fd20..a67fef3766 100644 --- a/docs/docs-content/getting-started/azure/azure.md +++ b/docs/docs-content/getting-started/azure/azure.md @@ -13,7 +13,7 @@ Palette supports integration with [Microsoft Azure](https://azure.microsoft.com/ ## Get Started -In this section, you learn how to create a cluster profile. Then, you deploy a cluster to AWS by using Palette. Once +In this section, you learn how to create a cluster profile. Then, you deploy a cluster to Azure by using Palette. Once your cluster is deployed, you can update it using cluster profile updates. -![Image that shows the cluster overview of the Hello Universe Frontend Cluster](/getting-started/getting-started_deploy-k8s-cluster_hello-universe-without-api.webp) +![Image that shows the cluster overview of the Hello Universe Frontend Cluster](/getting-started/getting-started_deploy-k8s-cluster_hello-universe-with-api.webp) Welcome to Hello Universe, a demo application to help you learn more about Palette and its features. Feel free to click on the logo to increase the counter and for a fun image change. -You have deployed your first application to a cluster managed by Palette. Your first application is a single container -application with no upstream dependencies. +You have deployed your first application to a cluster managed by Palette. Your first application is a three-tier +application with a frontend, API server, and Postgres database. ## Cleanup diff --git a/docs/docs-content/getting-started/azure/setup.md b/docs/docs-content/getting-started/azure/setup.md index e8cf3a4ff7..17c9b8bf9d 100644 --- a/docs/docs-content/getting-started/azure/setup.md +++ b/docs/docs-content/getting-started/azure/setup.md @@ -8,7 +8,7 @@ sidebar_position: 10 tags: ["getting-started", "azure"] --- -In this guide, you will learn how to set up Palette for use with your AWS cloud account. These steps are required in +In this guide, you will learn how to set up Palette for use with your Azure cloud account. These steps are required in order to authenticate Palette and allow it to deploy host clusters. ## Prerequisites @@ -55,6 +55,5 @@ You can verify your account is added. ## Next Steps Now that you set up Palette for use with Azure, you can start deploying Kubernetes clusters to your Azure account. To -learn how to get started with deploying Kubernetes clusters to AWS, we recommend that you continue to the -[Create a Cluster Profile](./create-cluster-profile.md) tutorial to create a full cluster profile for your s host -cluster. +learn how to get started with deploying Kubernetes clusters to Azure, we recommend that you continue to the +[Create a Cluster Profile](./create-cluster-profile.md) tutorial to create a full cluster profile for your host cluster. diff --git a/docs/docs-content/getting-started/azure/update-k8s-cluster.md b/docs/docs-content/getting-started/azure/update-k8s-cluster.md index 12d5e3f299..ccf3fd5b10 100644 --- a/docs/docs-content/getting-started/azure/update-k8s-cluster.md +++ b/docs/docs-content/getting-started/azure/update-k8s-cluster.md @@ -26,8 +26,11 @@ cluster update method and learn how to apply these changes using Palette. ## Prerequisites -To complete this tutorial, follow the steps described in the [Set up Palette with AWS](./setup.md) guide to authenticate -Palette for use with your AWS cloud account. +To complete this tutorial, follow the steps described in the [Set up Palette with Azure](./setup.md) guide to +authenticate Palette for use with your Azure cloud account. + +Additionally, you should install Kubectl locally. Use the Kubernetes +[Install Tools](https://kubernetes.io/docs/tasks/tools/) page for further guidance. Follow the instructions of the [Deploy a Cluster](./deploy-k8s-cluster.md) tutorial to deploy a cluster with the [_hello-universe_](https://github.com/spectrocloud/hello-universe) application. Your cluster should be successfully @@ -96,27 +99,16 @@ profile. This profile version is not deployed to any host clusters. ![Image that shows cluster profile version 1.1.0](/getting-started/azure/getting-started_update-k8s-cluster_new-version-overview.webp) -The version **1.1.0** has the same layers as the version **1.0.0** it was created from. Click on the **hello-universe** -manifest layer. The manifest editor appears. - -The version **1.1.0** has the same layers as the version **1.0.0** it was created from. Click on the **hello-universe** -pack layer. The pack manifest appears. - -Click on **Presets** on the right-hand side. This pack has two configured presets: +The version **1.1.0** has the same layers as the version **1.0.0** it was created from. -1. **Disable Hello Universe API** configures the [_hello-universe_](https://github.com/spectrocloud/hello-universe) - application as a standalone frontend application. This is the default preset selection. -2. **Enable Hello Universe API** configures the [_hello-universe_](https://github.com/spectrocloud/hello-universe) - application as a three-tier application with a frontend, API server, and Postgres database. +Click on **Add New Pack**. Select the **Public Repo** registry and scroll down to the **Monitoring** section. Find the +**Kubecost** pack and select it. Alternatively, you can use the search function with the pack name **Kubecost**. -Select the **Enable Hello Universe API** preset. The pack manifest changes according to this preset. +![Image that shows how to select the Kubecost pack](/getting-started/azure/getting-started_update-k8s-cluster_select-kubecost-pack.webp) -The pack manifest has requires two values to be replaced for the authorization token and for the database password. -Replace these values with your own base64 encoded values. The -[_hello-universe_](https://github.com/spectrocloud/hello-universe?tab=readme-ov-file#single-load-balancer) repository -provides a token that you can use. +Once selected, the pack manifest is displayed in the manifest editor. -Click on **Confirm Updates**. The manifest editor closes. +Click on **Confirm & Create**. The manifest editor closes. Click on **Save Changes** to finish the configuration of this cluster profile version. @@ -130,14 +122,7 @@ Select the **1.1.0** version. ![Image that shows how to select a new profile version for the cluster](/getting-started/azure/getting-started_update-k8s-cluster_profile-version-selection.webp) -Click **Review & Save**. Palette prompts you to preview the change summary. - -Click **Review changes in Editor**. Palette displays the changes, with the current configuration on the left and the -incoming configuration on the right. - -Click **Apply Changes**. - -![Image that shows the profile 1.1.0 differences](/getting-started/getting-started_update-k8s-cluster_profile-version-changes.webp) +Click on **Save** to confirm your profile version selection. :::warning @@ -148,15 +133,39 @@ backups before you make any cluster profile version changes in your production e ::: Palette now makes the required changes to your cluster according to the specifications of the configured cluster profile -version. Once your changes have completed, Palette marks your layers with the green status indicator. The Hello Universe -three-tier application will be successfully deployed. +version. Once your changes have completed, Palette marks your layers with the green status indicator. The Kubecost pack +will be successfully deployed. ![Image that shows completed cluster profile updates](/getting-started/azure/getting-started_update-k8s-cluster_completed-cluster-updates.webp) -Click on the URL for port **:8080** on the **ui** service to access the Hello Universe application. The landing page of -the application indicates that it is connected to the API server. +Download the [kubeconfig](../../clusters/cluster-management/kubeconfig.md) file for your cluster from the Palette UI. +This file enables you and other users to issue kubectl commands against the host cluster. + +![Image that the kubeconfig file](/getting-started/azure/getting-started_update-k8s-cluster_download-kubeconfig.webp) + +Open a terminal window and set the environment variable `KUBECONFIG` to point to the kubeconfig file you downloaded. + +```shell +export KUBECONFIG=~/Downloads/admin.azure-cluster.kubeconfig +``` -![Image that shows hello-universe with API server](/getting-started/getting-started_update-k8s-cluster_hello-universe-with-api.webp) +Forward the Kubecost UI to your local network. The Kubecost dashboard is not exposed externally by default, so the +command below will allow you to access it locally on port **9090**. If port 9090 is already taken, you can choose a +different one. + +```shell +kubectl port-forward --namespace kubecost deployment/cost-analyzer-cost-analyzer 9090 +``` + +Open your browser window and navigate to `http://localhost:9090`. The Kubecost UI provides you with a variety of cost +visualization tools. Read more about +[Navigating the Kubecost UI](https://docs.kubecost.com/using-kubecost/navigating-the-kubecost-ui) to make the most of +the cost analyzer. + +![Image that shows the Kubecost UI](/getting-started/getting-started_update-k8s-cluster_kubecost-ui.webp) + +Once you are done exploring locally, you can stop the `kubectl port-forward` command by closing the terminal window it +is executing from. ## Roll Back Cluster Profiles @@ -173,18 +182,12 @@ Select the **Profile** tab. This cluster is currently deployed using cluster pro option **1.0.0** in the version dropdown. This process is the reverse of what you have done in the previous section, [Version Cluster Profiles](#version-cluster-profiles). -Click on **Review & Save** to confirm your changes. The **Changes Summary** dialog appears again. - -Click on **Review changes in Editor**. The editor shows that the incoming version no longer contains the three-tier -application configuration. - -Click on **Apply Changes**. Select the **Overview** tab. +Click on **Save** to confirm your changes. Palette now makes the changes required for the cluster to return to the state specified in version **1.0.0** of your cluster profile. Once your changes have completed, Palette marks your layers with the green status indicator. -Click on the URL for port **:8080** on **hello-universe-service** to access the Hello Universe application. The landing -page indicates that the application is deployed as a standalone frontend. +![Cluster details page with service URL highlighted](/getting-started/azure/getting-started_deploy-k8s-cluster_service_url.webp) ## Pending Updates @@ -197,7 +200,7 @@ The previous state of the cluster profile will not be saved once it is overwritt Navigate to the left **Main Menu** and select **Clusters**. Filter for the cluster with the tag **service:hello-universe-frontend**. Select it to view its **Overview** tab. -Select the **Profile** tab. Then, select the **hello-universe** pack. Change the `replicas` field to `2` on line `14`. +Select the **Profile** tab. Then, select the **hello-universe** pack. Change the `replicas` field to `2` on line `15`. Click on **Save**. The editor closes. This cluster now contains an override over its cluster profile. Palette uses the configuration you have just provided @@ -205,15 +208,15 @@ for the single cluster over its cluster profile and begins making the appropriat Once these changes are complete, select the **Workloads** tab. Then, select the **hello-universe** namespace. -Two replicas of the **hello-universe-deployment** are available, instead of the one specified by your cluster profile. -Your override has been successfully applied. +Two **ui** pods are available, instead of the one specified by your cluster profile. Your override has been successfully +applied. Navigate to the left **Main Menu** and select **Profiles** to view the cluster profile page. Find the cluster profile corresponding to your _hello-universe-frontend_ cluster, named `azure-profile`. Click on it to view its details. Select **1.0.0** in the version dropdown. -Select the **hello-universe** pack. The editor appears. Change the `replicas` field to `3` on line `14`. Click on +Select the **hello-universe** pack. The editor appears. Change the `replicas` field to `3` on line `15`. Click on **Confirm Updates**. The editor closes. Click on **Save Changes** to confirm the changes you have made to your profile. @@ -240,8 +243,11 @@ Click on **Apply Changes** once you have finished reviewing your changes. This r Palette updates your cluster according to cluster profile specifications. Once these changes are complete, select the **Workloads** tab. Then, select the **hello-universe** namespace. -Three replicas of the **hello-universe-deployment** are available. The cluster profile update is now reflected by your -cluster. +Three **ui** pods are available. The cluster profile update is now reflected by your cluster. + +## Cluster Observability + + ## Cleanup diff --git a/docs/docs-content/getting-started/gcp/create-cluster-profile.md b/docs/docs-content/getting-started/gcp/create-cluster-profile.md index 5b0c8975a1..b21e6204a6 100644 --- a/docs/docs-content/getting-started/gcp/create-cluster-profile.md +++ b/docs/docs-content/getting-started/gcp/create-cluster-profile.md @@ -82,14 +82,33 @@ and configuration options. The pack you added will deploy the ![Screenshot of pack readme](/getting-started/gcp/getting-started_create-cluster-profile_pack-readme.webp) -Click on **Confirm & Create** to save the manifest. Click on **Save Changes** to save this new layer to the cluster -profile. +Click on **Values** to edit the pack manifest. Click on **Presets** on the right-hand side. + +This pack has two configured presets: + +1. **Disable Hello Universe API** configures the [_hello-universe_](https://github.com/spectrocloud/hello-universe) + application as a standalone frontend application. This is the default preset selection. +2. **Enable Hello Universe API** configures the [_hello-universe_](https://github.com/spectrocloud/hello-universe) + application as a three-tier application with a frontend, API server, and Postgres database. + +Select the **Enable Hello Universe API** preset. The pack manifest changes according to this preset. + +![Screenshot of pack presets](/getting-started/gcp/getting-started_create-cluster-profile_pack-presets.webp) + +The pack requires two values to be replaced for the authorization token and for the database password when using this +preset. Replace these values with your own base64 encoded values. The +[_hello-universe_](https://github.com/spectrocloud/hello-universe?tab=readme-ov-file#single-load-balancer) repository +provides a token that you can use. + +Click on **Confirm Updates**. The manifest editor closes. + +Click on **Confirm & Create** to save the manifest. Then, click on **Save Changes** to save this new layer to the +cluster profile. ## Wrap-Up In this tutorial, you created a cluster profile, which is a template that contains the core layers required to deploy a -host cluster using Amazon Web Services (AWS), Microsoft Azure, or Google Cloud Platform (GCP) cloud providers. You added -a community pack to your profile to deploy a custom workload. +host cluster using GCP. You added a community pack to your profile to deploy a custom workload. We recommend that you continue to the [Deploy a Cluster](./deploy-k8s-cluster.md) tutorial to deploy this cluster -profile to a host cluster onto your preferred cloud service provider. +profile to a host cluster onto GCP. diff --git a/docs/docs-content/getting-started/gcp/deploy-k8s-cluster.md b/docs/docs-content/getting-started/gcp/deploy-k8s-cluster.md index 8fcd5543ba..cb5930c49c 100644 --- a/docs/docs-content/getting-started/gcp/deploy-k8s-cluster.md +++ b/docs/docs-content/getting-started/gcp/deploy-k8s-cluster.md @@ -32,35 +32,36 @@ To complete this tutorial, you will need the following. The following steps will guide you through deploying the cluster infrastructure. -Navigate to the left **Main Menu** and select **Cluster**. Click on **Add New Cluster**. +Navigate to the left **Main Menu** and select **Clusters**. Click on **Create Cluster**. ![Palette clusters overview page](/getting-started/getting-started_deploy-k8s-cluster_new_cluster.webp) -Click on **Deploy New Cluster** to access the cluster deployment wizard. Select **Google Cloud** and click the **Start -Google Cloud Configuration** button. Use the following steps to create a host cluster in Google Cloud. +Palette will prompt you to select the type of cluster. Select **GCP IaaS** and click the **Start GCP IaaS +Configuration** button. Use the following steps to create a host cluster in Google Cloud. In the **Basic information** section, insert the general information about the cluster, such as the **Cluster name**, **Description**, **Tags**, and **Cloud account**. Click on **Next**. ![Palette clusters basic information](/getting-started/gcp/getting-started_deploy-k8s-cluster_basic_info.webp) -A list is displayed of available profiles you can choose to deploy to GCP. Select the cluster profile you created in the -[Create a Cluster Profile](./create-cluster-profile.md) tutorial, named **gcp-profile**, and click on **Next**. +Click on **Add Cluster Profile**. A list is displayed of available profiles you can choose to deploy to GCP. Select the +cluster profile you created in the [Create a Cluster Profile](./create-cluster-profile.md) tutorial, named +**gcp-profile**, and click on **Confirm**. -The **Parameters** section displays all the layers in the cluster profile. +The **Cluster Profile** section displays all the layers in the cluster profile. -![Palette clusters basic information](/getting-started/gcp/getting-started_deploy-k8s-cluster_clusters_parameters.webp) +![Palette clusters profile](/getting-started/gcp/getting-started_deploy-k8s-cluster_clusters_parameters.webp) Each layer has a pack manifest file with the deploy configurations. The pack manifest file is in a YAML format. Each pack contains a set of default values. You can change the manifest values if needed. Click on **Next** to proceed. -The **Cluster config** section allows you to select the **Project**, **Region**, and **SSH Key** to apply to the host +The **Cluster Config** section allows you to select the **Project**, **Region**, and **SSH Key** to apply to the host cluster. All clusters require you to assign an SSH key. Refer to the [SSH Keys](/clusters/cluster-management/ssh-keys) guide for information about uploading an SSH key. After selecting a **Project**, **Region**, and **SSH Key**, click on **Next**. -The **Nodes config** section allows you to configure the nodes that make up the control plane and worker nodes of the +The **Nodes Config** section allows you to configure the nodes that make up the control plane and worker nodes of the host cluster. Before you proceed to the next section, review the following parameters. @@ -87,8 +88,8 @@ Before you proceed to next section, review the following parameters. Select **Next** to proceed with the cluster deployment. -In the **Settings** section, you can configure advanced options such as when to patch the OS, enable security scans, -manage backups, add Role-Based Access Control (RBAC) bindings, and more. +In the **Cluster Settings** section, you can configure advanced options such as when to patch the OS, enable security +scans, manage backups, add Role-Based Access Control (RBAC) bindings, and more. For this tutorial, you can use the default settings. Click on **Validate** to continue. @@ -128,13 +129,13 @@ moments before clicking on the service URL to prevent the browser from caching a
-![Image that shows the cluster overview of the Hello Universe Frontend Cluster](/getting-started/getting-started_deploy-k8s-cluster_hello-universe-without-api.webp) +![Image that shows the cluster overview of the Hello Universe Frontend Cluster](/getting-started/getting-started_deploy-k8s-cluster_hello-universe-with-api.webp) Welcome to Hello Universe, a demo application to help you learn more about Palette and its features. Feel free to click on the logo to increase the counter and for a fun image change. -You have deployed your first application to a cluster managed by Palette. Your first application is a single container -application with no upstream dependencies. +You have deployed your first application to a cluster managed by Palette. Your first application is a three-tier +application with a frontend, API server, and Postgres database. ## Cleanup diff --git a/docs/docs-content/getting-started/gcp/gcp.md b/docs/docs-content/getting-started/gcp/gcp.md index b77bbd6592..1313eb8fc4 100644 --- a/docs/docs-content/getting-started/gcp/gcp.md +++ b/docs/docs-content/getting-started/gcp/gcp.md @@ -13,7 +13,7 @@ Palette supports integration with [Google Cloud Platform](https://cloud.google.c ## Get Started -In this section, you learn how to create a cluster profile. Then, you deploy a cluster to AWS by using Palette. Once +In this section, you learn how to create a cluster profile. Then, you deploy a cluster to GCP by using Palette. Once your cluster is deployed, you can update it using cluster profile updates. ## Cleanup diff --git a/docs/docs-content/getting-started/getting-started.md b/docs/docs-content/getting-started/getting-started.md index 65dbf7b452..b35ccbbd1d 100644 --- a/docs/docs-content/getting-started/getting-started.md +++ b/docs/docs-content/getting-started/getting-started.md @@ -81,6 +81,12 @@ Explore more through the following pages. buttonText: "Learn more", relativeURL: "./gcp", }, + { + title: "Deploy a Cluster to VMware", + description: "Deploy and update a Palette host cluster to VMware vSphere.", + buttonText: "Learn more", + relativeURL: "./vmware", + }, { title: "Additional Capabilities", description: "Learn about Palette's additional capabilities.", diff --git a/docs/docs-content/getting-started/vmware/_category_.json b/docs/docs-content/getting-started/vmware/_category_.json new file mode 100644 index 0000000000..0b49ba8465 --- /dev/null +++ b/docs/docs-content/getting-started/vmware/_category_.json @@ -0,0 +1,3 @@ +{ + "position": 70 +} diff --git a/docs/docs-content/getting-started/vmware/create-cluster-profile.md b/docs/docs-content/getting-started/vmware/create-cluster-profile.md new file mode 100644 index 0000000000..f0a5e2d0f6 --- /dev/null +++ b/docs/docs-content/getting-started/vmware/create-cluster-profile.md @@ -0,0 +1,136 @@ +--- +sidebar_label: "Create a Cluster Profile" +title: "Create a Cluster Profile" +description: "Learn to create a full cluster profile in Palette." +icon: "" +hide_table_of_contents: false +sidebar_position: 30 +tags: ["getting-started", "vmware"] +--- + +Palette offers profile-based management for Kubernetes, enabling consistency, repeatability, and operational efficiency +across multiple clusters. A cluster profile allows you to customize the cluster infrastructure stack, allowing you to +choose the desired Operating System (OS), Kubernetes, Container Network Interfaces (CNI), Container Storage Interfaces +(CSI). You can further customize the stack with add-on application layers. For more information about cluster profile +types, refer to [Cluster Profiles](../cluster-profiles.md). + +In this tutorial, you create a full profile directly from the Palette dashboard. Then, you add a layer to your cluster +profile by using a [community pack](../../integrations/community_packs.md) to deploy a web application. + +## Prerequisites + +- Follow the steps described in the [Set up Palette with VMware](./setup.md) guide to authenticate Palette for use with + your VMware user account. +- Refer to the [Deploy a PCG with Palette CLI](./deploy-pcg.md) guide to create the required infrastructure that enables + communication with your cluster. +- Ensure that the [Palette Community Registry](../../registries-and-packs/registries/registries.md#default-registries) + is available in your Palette environment. Refer to the + [Add OCI Packs Registry](../../registries-and-packs/registries/oci-registry/add-oci-packs.md) guide for additional + guidance. + +## Create a Full Cluster Profile + +Log in to [Palette](https://console.spectrocloud.com) and navigate to the left **Main Menu**. Select **Profiles** to +view the cluster profile page. You can view the list of available cluster profiles. To create a cluster profile, click +on **Add Cluster Profile**. + +![View of the cluster Profiles page](/getting-started/getting-started_create-cluster-profile_profile_list_view.webp) + +Follow the wizard to create a new profile. + +In the **Basic Information** section, assign the name **vmware-profile**, provide a profile description, select the type +as **Full**, and assign the tag **env:vmware**. You can leave the version empty if you want to. Just be aware that the +version defaults to **1.0.0**. Click on **Next**. + +Cloud Type allows you to choose the infrastructure provider with which this cluster profile is associated. Select +**VMware** and click on **Next**. + +The **Profile Layers** step is where you specify the packs that compose the profile. There are four required +infrastructure packs and several optional add-on packs you can choose from. Every pack requires you to select the **Pack +Type**, **Registry**, and **Pack Name**. + +For this tutorial, use the following packs: + +| Pack Name | Version | Layer | +| ------------------ | ------- | ---------------- | +| ubuntu-vsphere LTS | 22.4.x | Operating System | +| kubernetes | 1.28.x | Kubernetes | +| cni-calico | 3.27.x | Network | +| csi-vsphere-csi | 3.1.x | Storage | + +As you fill out the information for each layer, click on **Next** to proceed to the next layer. + +Click on **Confirm** after you have completed filling out all the core layers. + +![VMware core layers](/getting-started/vmware/getting-started_create-cluster-profile_cluster-profile-core-stack.webp) + +The review section gives an overview of the cluster profile configuration you selected. Click on **Finish +Configuration** to create the cluster profile. + +## Add Packs + +Navigate to the left **Main Menu** and select **Profiles**. Select the cluster profile you created earlier. + +Click on **Add New Pack** at the top of the page. + +Add the **MetalLB (Helm)** pack to your profile. The [MetalLB](../../integrations/metallb.md) pack provides a +load-balancer implementation for your Kubernetes cluster, as VMware does not offer a load balancer solution natively. +The load balancer is required to help the _LoadBalancer_ service specified in the Hello Universe application manifest +obtain an IP address, so that you can access the application from your browser. + +| Pack Name | Version | Layer | +| --------------- | ------- | ------------- | +| lb-metallb-helm | 0.14.x | Load Balancer | + +Now, under **Pack Details**, click on **Values** and replace the predefined `192.168.10.0/24` IP CIDR listed below the +**addresses** line with a valid IP address or IP range from your VMware environment to be assigned to your load +balancer. Next, click **Confirm & Create** to add the MetalLB pack. + +![Metallb Helm-based pack.](/getting-started/vmware/getting-started_create-cluster-profile_metallb-pack.webp) + +Click on **Confirm & Create** to save the pack. + +Click on **Add New Pack** at the top of the page. + +Select the **Palette Community Registry** from the **Registry** dropdown. Then, click on the latest **Hello Universe** +pack with version **v1.1.2**. + +![Screenshot of hello universe pack](/getting-started/vmware/getting-started_create-cluster-profile_add-pack.webp) + +Once you have selected the pack, Palette will display its README, which provides you with additional guidance for usage +and configuration options. The pack you added will deploy the +[_hello-universe_](https://github.com/spectrocloud/hello-universe) application. + +![Screenshot of pack readme](/getting-started/vmware/getting-started_create-cluster-profile_pack-readme.webp) + +Click on **Values** to edit the pack manifest. Click on **Presets** on the right-hand side. + +This pack has two configured presets: + +1. **Disable Hello Universe API** configures the [_hello-universe_](https://github.com/spectrocloud/hello-universe) + application as a standalone frontend application. This is the default preset selection. +2. **Enable Hello Universe API** configures the [_hello-universe_](https://github.com/spectrocloud/hello-universe) + application as a three-tier application with a frontend, API server, and Postgres database. + +Select the **Enable Hello Universe API** preset. The pack manifest changes according to this preset. + +![Screenshot of pack presets](/getting-started/vmware/getting-started_create-cluster-profile_pack-presets.webp) + +The pack requires two values to be replaced for the authorization token and for the database password when using this +preset. Replace these values with your own base64 encoded values. The +[_hello-universe_](https://github.com/spectrocloud/hello-universe?tab=readme-ov-file#single-load-balancer) repository +provides a token that you can use. + +Click on **Confirm Updates**. The manifest editor closes. + +Click on **Confirm & Create** to save the manifest. Then, click on **Save Changes** to save this new layer to the +cluster profile. + +## Wrap-Up + +In this tutorial, you created a cluster profile, which is a template that contains the core layers required to deploy a +host cluster using VMware vSphere. Then, you added a load balancer and a community pack to your profile to deploy a +custom workload. + +We recommend that you continue to the [Deploy a Cluster](./deploy-k8s-cluster.md) tutorial to deploy this cluster +profile to a host cluster onto VMware. diff --git a/docs/docs-content/getting-started/vmware/deploy-k8s-cluster.md b/docs/docs-content/getting-started/vmware/deploy-k8s-cluster.md new file mode 100644 index 0000000000..3da9ee8d6f --- /dev/null +++ b/docs/docs-content/getting-started/vmware/deploy-k8s-cluster.md @@ -0,0 +1,177 @@ +--- +sidebar_label: "Deploy a Cluster" +title: "Deploy a Cluster" +description: "Learn to deploy a Palette host cluster." +icon: "" +hide_table_of_contents: false +sidebar_position: 30 +tags: ["getting-started", "gcp"] +--- + +This tutorial will teach you how to deploy a host cluster with Palette using VMware vSphere and a Private Cloud Gateway +(PCG). You will learn about _Cluster Mode_ and _Cluster Profiles_ and how these components enable you to deploy +customized applications to Kubernetes with minimal effort. + +As you navigate the tutorial, refer to this diagram to help you understand how Palette uses a cluster profile as a +blueprint for the host cluster you deploy. Palette clusters have the same node pools you may be familiar with: _control +plane nodes_ and _worker nodes_ where you will deploy applications. The result is a host cluster that Palette manages. + +![A view of Palette managing the Kubernetes lifecycle](/getting-started/getting-started_deploy-k8s-cluster_application.webp) + +## Prerequisites + +To complete this tutorial, you will need the following. + +- Follow the steps described in the [Set up Palette with VMware](./setup.md) guide to authenticate Palette for use with + your VMware user account. + +- A successfully deployed PCG. Follow the steps described in the [Deploy a PCG with Palette CLI](./deploy-pcg.md) + tutorial to deploy a PCG using the Palette CLI. + +- A Palette cluster profile. Follow the [Create a Cluster Profile](./create-cluster-profile.md) tutorial to create the + required VMware cluster profile. + +## Deploy a Cluster + +The following steps will guide you through deploying the cluster infrastructure. + +Navigate to the left **Main Menu** and select **Clusters**. Click on **Create Cluster**. + +![Palette clusters overview page](/getting-started/getting-started_deploy-k8s-cluster_new_cluster.webp) + +Palette will prompt you to select the type of cluster. Select **VMware** and click the **Start VMware Configuration** +button. Use the following steps to create a host cluster in VMware. + +In the **Basic Information** section, insert the general information about the cluster, such as the **Cluster name**, +**Description** and **Tags**. + +Select the VMware cloud account that was registered with Palette during the PCG creation. The cloud account has the same +name as the PCG. In this tutorial, the cloud account is called `gateway-tutorial`. + +Click on **Next**. + +![Palette clusters basic information](/getting-started/vmware/getting-started_deploy-k8s-cluster_basic_info.webp) + +Click on **Add Cluster Profile**. A list is displayed of available profiles you can choose to deploy to VMware. Select +the cluster profile you created in the [Create a Cluster Profile](./create-cluster-profile.md) tutorial, named +**vmware-profile**, and click on **Confirm**. + +The **Cluster Profile** section displays all the layers in the cluster profile. + +![Palette clusters basic information](/getting-started/vmware/getting-started_deploy-k8s-cluster_clusters_parameters.webp) + +Each layer has a pack manifest file with the deploy configurations. The pack manifest file is in a YAML format. Each +pack contains a set of default values. You can change the manifest values if needed. Click on **Next** to proceed. + +The **Cluster Config** section allows you to provide specific information about your VMware vSphere environment. First, +select the **Datacenter** and **Deployment Folder** where the cluster nodes will be launched. Next, select the **Image +Template Folder** to which the Spectro templates are imported, and choose **DHCP** as the **Network Type**. Finally, +provide the **SSH key** for accessing the cluster nodes. Proceed by clicking **Next** to advance to the **Nodes +Configuration** section. + +The **Nodes Config** section allows you to configure the nodes that make up the control plane and worker nodes of the +host cluster. + +Provide the details for the nodes of the control plane and worker pools. + +| **Field** | **Control Plane Pool** | **Worker Pool** | +| --------------------------- | ---------------------- | --------------- | +| Node pool name | control-plane-pool | worker-pool | +| Number of nodes in the pool | `1` | `1` | +| Allow worker capability | No | Not applicable | +| Enable Autoscaler | Not applicable | No | +| Rolling update | Not applicable | Expand First | + +Keep the **Cloud Configuration** settings the same for both pools, with **CPU** set to 4 cores, **memory** allocated at +8 GB, and **disk** space at 60 GB. Next, populate the **Compute cluster**, **Resource Pool**, **Datastore**, and +**Network** fields according to your VMware vSphere environment. Click **Next** to proceed. + +Select **Next** to proceed with the cluster deployment. + +The **Cluster Settings** section offers advanced options for OS patching, scheduled scans, scheduled backups, and +cluster role binding. For this tutorial, you can use the default settings. Click on **Validate** to continue. + +The **Review** section allows you to review the cluster configuration before deploying the cluster. Review all the +settings and click on **Finish Configuration** to deploy the cluster. + +![Newly created cluster](/getting-started/vmware/getting-started_deploy-k8s-cluster_profile_review.webp) + +Navigate to the left **Main Menu** and select **Clusters**. + +![Update the cluster](/getting-started/vmware/getting-started_deploy-k8s-cluster_new_cluster.webp) + +The cluster deployment process can take 15 to 30 min. The deployment time varies depending on the cloud provider, +cluster profile, cluster size, and the node pool configurations provided. You can learn more about the deployment +progress by reviewing the event log. Click on the **Events** tab to view the log. + +![Update the cluster](/getting-started/vmware/getting-started_deploy-k8s-cluster_event_log.webp) + +## Verify the Application + +Navigate to the left **Main Menu** and select **Clusters**. + +Select your cluster to view its **Overview** tab. When the application is deployed and ready for network traffic, +indicated in the **Services** field, Palette exposes the service URL. Click on the URL for port **:8080** to access the +Hello Universe application. + +![Cluster details page with service URL highlighted](/getting-started/vmware/getting-started_deploy-k8s-cluster_service_url.webp) + +
+ +:::warning + +It can take up to three minutes for DNS to properly resolve the public load balancer URL. We recommend waiting a few +moments before clicking on the service URL to prevent the browser from caching an unresolved DNS request. + +::: + +
+ +![Image that shows the cluster overview of the Hello Universe Frontend Cluster](/getting-started/getting-started_deploy-k8s-cluster_hello-universe-with-api.webp) + +Welcome to Hello Universe, a demo application to help you learn more about Palette and its features. Feel free to click +on the logo to increase the counter and for a fun image change. + +You have deployed your first application to a cluster managed by Palette. Your first application is a three-tier +application with a frontend, API server, and Postgres database. + +## Cleanup + +Use the following steps to remove all the resources you created for the tutorial. + +To remove the cluster, navigate to the left **Main Menu** and click on **Clusters**. Select the cluster you want to +delete to access its details page. + +Click on **Settings** to expand the menu, and select **Delete Cluster**. + +![Delete cluster](/getting-started/vmware/getting-started_deploy-k8s-cluster_delete-cluster-button.webp) + +You will be prompted to type in the cluster name to confirm the delete action. Type in the cluster name to proceed with +the delete step. The deletion process takes several minutes to complete. + +
+ +:::info + +If a cluster remains in the delete phase for over 15 minutes, it becomes eligible for a force delete. To trigger a force +delete, navigate to the cluster’s details page, click on **Settings**, then select **Force Delete Cluster**. Palette +automatically removes clusters stuck in the cluster deletion phase for over 24 hours. + +::: + +
+ +Once the cluster is deleted, navigate to the left **Main Menu** and click on **Profiles**. Find the cluster profile you +created and click on the **three-dot Menu** to display the **Delete** button. Select **Delete** and confirm the +selection to remove the cluster profile. + + + +## Wrap-Up + +In this tutorial, you used the cluster profile you created in the previous +[Create a Cluster Profile](./create-cluster-profile.md) tutorial to deploy a host cluster onto VMware vSphere. After the +cluster deployed, you verified the Hello Universe application was successfully deployed. + +We recommend that you continue to the [Deploy Cluster Profile Updates](./update-k8s-cluster.md) tutorial to learn how to +update your host cluster. diff --git a/docs/docs-content/getting-started/vmware/deploy-pcg.md b/docs/docs-content/getting-started/vmware/deploy-pcg.md new file mode 100644 index 0000000000..9dcd5aeb25 --- /dev/null +++ b/docs/docs-content/getting-started/vmware/deploy-pcg.md @@ -0,0 +1,73 @@ +--- +sidebar_label: "Deploy a PCG" +title: "Deploy a PCG with Palette CLI" +description: "Learn to deploy a PCG with Palette CLI." +icon: "" +hide_table_of_contents: false +sidebar_position: 20 +tags: ["getting-started", "vmware"] +--- + +Palette Private Cloud Gateway (PCG) is a crucial infrastructure support component that acts as a bridge between your +private cloud environment or data center and Palette. + +A PCG is required in environments lacking direct network access to Palette. For example, many infrastructure +environments reside within private networks that restrict external connections, preventing internal devices and +resources from reaching Palette directly. + +Upon installation, the PCG initiates a connection from inside the private network to Palette, serving as an endpoint for +Palette to communicate with the infrastructure environment. The PCG continuously polls Palette for instructions to +either deploy or delete Kubernetes clusters within the environment. This connection uses a secure communication channel +that is encrypted using the Transport Layer Security (TLS) protocol. Once a cluster is deployed, the PCG is no longer +involved in the communication between Palette and the deployed cluster. The cluster then communicates directly with +Palette through the Palette agent available within each cluster, which originates all network requests outbound toward +Palette. Refer to the [PCG Architecture](../../clusters/pcg/architecture.md) section for more information. + +In this tutorial, you will deploy a VMware PCG using Palette CLI. + +### Prerequisites + +Follow the steps described in the [Set up Palette with VMware](./setup.md) guide to authenticate Palette for use with +your VMware user account. + +You will need a Linux x86-64 machine with access to a terminal and Internet, as well as connection to both Palette and +VMware vSphere. + + - The following IP address requirements must be met in your VMware vSphere environment: + - One IP address available for the single-node PCG deployment. Refer to the [PCG Sizing](../../clusters/pcg/manage-pcg/scale-pcg-nodes.md) section for more information on sizing. + - One IP address reserved for cluster repave operations. + - One IP address for the Virtual IP (VIP). + - DNS must be able to resolve the domain `api.spectrocloud.com`. + - NTP server must be reachable from the PCG. + - The following minimum resources must be available in your VMware vSphere environment: + - CPU: 4 cores. + - Memory: 4 GiB. + - Storage: 60 GiB. + +
+ + :::info + + In production environments, we recommend deploying a three-node PCG, each node with 8 cores of CPU, 8 GiB of memory, and 100 GiB of storage. + + ::: + + - Ensure the following software is installed and available on your Linux machine. + - [Palette CLI](../../automation/palette-cli/install-palette-cli.md). + - [Docker](https://docs.docker.com/desktop). + - [Kind](https://kind.sigs.k8s.io/docs/user/quick-start/#installation). + - [Git](https://git-scm.com/book/en/v2/Getting-Started-Installing-Git). + +## Authenticate with Palette + + + +## Deploy a PCG + + + +## Next Steps + +In this tutorial, you deployed a PCG to connect Palette to your VMware vSphere environment. To learn how to get started +with deploying Kubernetes clusters to VMware, we recommend that you continue to the +[Create a Cluster Profile](./create-cluster-profile.md) tutorial to create a full cluster profile for your host cluster. diff --git a/docs/docs-content/getting-started/vmware/setup.md b/docs/docs-content/getting-started/vmware/setup.md new file mode 100644 index 0000000000..15ab5687ac --- /dev/null +++ b/docs/docs-content/getting-started/vmware/setup.md @@ -0,0 +1,54 @@ +--- +sidebar_label: "Set up Palette" +title: "Set up Palette with VMware" +description: "Learn how to set up Palette with VMware." +icon: "" +hide_table_of_contents: false +sidebar_position: 10 +tags: ["getting-started", "vmware"] +--- + +In this guide, you will learn how to set up Palette for use with your VMware user account. These steps are required in +order to authenticate Palette and allow it to deploy host clusters. + +## Prerequisites + +The prerequisite steps to getting started with Palette on VMware are as follows. + +- A Palette account with [tenant admin](../../tenant-settings/tenant-settings.md) access. +- A [VMware vSphere](https://docs.vmware.com/en/VMware-vSphere/index.html) user account with the + [required permissions](../../clusters/data-center/vmware/permissions.md). + +## Enablement + +Palette needs access to your VMware user account in order to create and manage VMware resources. + +### Create a Palette API Key + + + +### Create and Upload an SSH Key + + + +## Validate + +You can verify your Palette API key is added. + +1. Log in to [Palette](https://console.spectrocloud.com). + +2. Switch to the **Tenant Admin** scope. + +3. Navigate to the left **Main Menu** and select **Tenant Settings**. + +4. From the **Tenant Settings Menu**, select **API Keys**. + +5. Verify the API key is listed in the table with the correct user name and expiration date. + +## Next Steps + +Now that you set up Palette for use with VMware vSphere, you can start deploying a Private Cloud Gateway (PCG), which is +the bridge between Palette and you private cloud environment. + +To learn how to get started with deploying Kubernetes clusters to VMware virtual machines, we recommend that you +continue to the [Deploy a PCG with Palette CLI](./deploy-pcg.md) tutorial. diff --git a/docs/docs-content/getting-started/vmware/update-k8s-cluster.md b/docs/docs-content/getting-started/vmware/update-k8s-cluster.md new file mode 100644 index 0000000000..8aea51c677 --- /dev/null +++ b/docs/docs-content/getting-started/vmware/update-k8s-cluster.md @@ -0,0 +1,293 @@ +--- +sidebar_label: "Deploy Cluster Profile Updates" +title: "Deploy Cluster Profile Updates" +description: "Learn how to update your deployed clusters using Palette Cluster Profiles." +icon: "" +hide_table_of_contents: false +sidebar_position: 40 +tags: ["getting-started", "gcp"] +--- + +Palette provides cluster profiles, which allow you to specify layers for your workloads using packs, Helm charts, Zarf +packages, or cluster manifests. Packs serve as blueprints to the provisioning and deployment process, as they contain +the versions of the container images that Palette will install for you. Cluster profiles provide consistency across +environments during the cluster creation process, as well as when maintaining your clusters. Check out the +[cluster profiles](../cluster-profiles.md) page to learn more. Once provisioned, there are three main ways to update +your Palette deployments. + +| Method | Description | Cluster application process | +| ------------------------ | ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| Cluster profile versions | Create a new version of the cluster profile with your updates. | Select the new version of the cluster profile. Apply this new profile version to the clusters you want to update. | +| Cluster profile updates | Change the cluster profile in place. | Palette detects the difference between the provisioned resources and this profile. A pending update is available to clusters using this profile. Apply pending updates to the clusters you want to update. | +| Cluster overrides | Change the configuration of a single deployed cluster outside its cluster profile. | Save and apply the changes you've made to your cluster. | + +This tutorial will teach you how to update a cluster deployed with Palette to VMware vSphere. You will explore each +cluster update method and learn how to apply these changes using Palette. + +## Prerequisites + +To complete this tutorial, follow the steps described in the [Set up Palette with VMware](./setup.md) guide to +authenticate Palette for use with your VMware user account. + +Additionally, you should install Kubectl locally. Use the Kubernetes +[Install Tools](https://kubernetes.io/docs/tasks/tools/) page for further guidance. + +Follow the instructions of the [Deploy a Cluster](./deploy-k8s-cluster.md) tutorial to deploy a cluster with the +[_hello-universe_](https://github.com/spectrocloud/hello-universe) application. Your cluster should be successfully +provisioned and in a healthy state. + +The cluster profile name is `vmware-profile` and the cluster name is `vmware-cluster`. + +![Cluster details page with service URL highlighted](/getting-started/vmware/getting-started_deploy-k8s-cluster_service_url.webp) + +## Tag and Filter Clusters + +Palette provides the ability to add tags to your cluster profiles and clusters. This helps you organize and categorize +your clusters based on your custom criteria. You can add tags during the creation process or by editing the resource +after it has been created. + +Adding tags to your clusters helps you find and identify your clusters, without having to rely on cluster naming. This +is especially important when operating with many clusters or multiple cloud deployments. + +Navigate to the left **Main Menu** and select **Clusters** to view your deployed clusters. Find the `vmware-cluster` you +deployed with the _hello-universe_ application. Click on it to view its **Overview** tab. + +Click on the **Settings** drop-down Menu in the upper right corner and select **Cluster Settings**. + +Fill **service:hello-universe-frontend** in the **Tags (Optional)** input box. Click on **Save Changes**. Close the +panel. + +![Image that shows how to add a cluster tag](/getting-started/vmware/getting-started_update-k8s-cluster_add-service-tag.webp) + +Navigate to the left **Main Menu** and select **Clusters** to view your deployed clusters. Click on **Add Filter**, then +select the **Add custom filter** option. + +Use the drop-down boxes to fill in the values of the filter. Select **Tags** in the left-hand **drop-down Menu**. Select +**is** in the middle **drop-down Menu**. Fill in **service:hello-universe-frontend** in the right-hand input box. + +Click on **Apply Filter**. + +![Image that shows how to add a frontend service filter](/getting-started/vmware/getting-started_update-k8s-cluster_apply-frontend-filter.webp) + +Once you apply the filter, only the `vmware-cluster` with this tag is displayed. + +## Version Cluster Profiles + +Palette supports the creation of multiple cluster profile versions using the same profile name. This provides you with +better change visibility and control over the layers in your host clusters. Profile versions are commonly used for +adding or removing layers and pack configuration updates. + +The version number of a given profile must be unique and use the semantic versioning format `major.minor.patch`. If you +do not specify a version for your cluster profile, it defaults to **1.0.0**. + +Navigate to the left **Main Menu** and select **Profiles** to view the cluster profile page. Find the cluster profile +corresponding to your _hello-universe-frontend_ cluster. It should be named `vmware-profile`. Select it to view its +details. + +![Image that shows the frontend cluster profile with cluster linked to it](/getting-started/vmware/getting-started_update-k8s-cluster_profile-with-cluster.webp) + +The current version is displayed in the **drop-down Menu** next to the profile name. This profile has the default value +of **1.0.0**, as you did not specify another value when you created it. The cluster profile also shows the host clusters +that are currently deployed with this cluster profile version. + +Click on the version **drop-down Menu**. Select the **Create new version** option. + +A dialog box appears. Fill in the **Version** input with **1.1.0**. Click on **Confirm**. + +Palette creates a new cluster profile version and opens it. The version dropdown displays the newly created **1.1.0** +profile. This profile version is not deployed to any host clusters. + +![Image that shows cluster profile version 1.1.0](/getting-started/vmware/getting-started_update-k8s-cluster_new-version-overview.webp) + +The version **1.1.0** has the same layers as the version **1.0.0** it was created from. + +Click on **Add New Pack**. Select the **Public Repo** registry and scroll down to the **Monitoring** section. Find the +**Kubecost** pack and select it. Alternatively, you can use the search function with the pack name **Kubecost**. + +![Image that shows how to select the Kubecost pack](/getting-started/vmware/getting-started_update-k8s-cluster_select-kubecost-pack.webp) + +Once selected, the pack manifest is displayed in the manifest editor. + +Click on **Confirm & Create**. The manifest editor closes. + +Click on **Save Changes** to finish the configuration of this cluster profile version. + +Navigate to the left **Main Menu** and select **Clusters**. Filter for the cluster with the +**service:hello-universe-frontend** tag. Select it to view its **Overview** tab. + +Select the **Profile** tab of this cluster. You can select a new version of your cluster profile by using the version +dropdown. + +Select the **1.1.0** version. + +![Image that shows how to select a new profile version for the cluster](/getting-started/vmware/getting-started_update-k8s-cluster_profile-version-selection.webp) + +Click on **Save** to confirm your profile version selection. + +:::warning + +Palette has backup and restore capabilities available for your mission critical workloads. Ensure that you have adequate +backups before you make any cluster profile version changes in your production environments. You can learn more in the +[Backup and Restore](../../clusters/cluster-management/backup-restore/backup-restore.md) section. + +::: + +Palette now makes the required changes to your cluster according to the specifications of the configured cluster profile +version. Once your changes have completed, Palette marks your layers with the green status indicator. The Kubecost pack +will be successfully deployed. + +![Image that shows completed cluster profile updates](/getting-started/vmware/getting-started_update-k8s-cluster_completed-cluster-updates.webp) + +Download the [kubeconfig](../../clusters/cluster-management/kubeconfig.md) file for your cluster from the Palette UI. +This file enables you and other users to issue kubectl commands against the host cluster. + +![Image that the kubeconfig file](/getting-started/vmware/getting-started_update-k8s-cluster_download-kubeconfig.webp) + +Open a terminal window and set the environment variable `KUBECONFIG` to point to the kubeconfig file you downloaded. + +```shell +export KUBECONFIG=~/Downloads/admin.vmware-cluster.kubeconfig +``` + +Forward the Kubecost UI to your local network. The Kubecost dashboard is not exposed externally by default, so the +command below will allow you to access it locally on port **9090**. If port 9090 is already taken, you can choose a +different one. + +```shell +kubectl port-forward --namespace kubecost deployment/cost-analyzer-cost-analyzer 9090 +``` + +Open your browser window and navigate to `http://localhost:9090`. The Kubecost UI provides you with a variety of cost +visualization tools. Read more about +[Navigating the Kubecost UI](https://docs.kubecost.com/using-kubecost/navigating-the-kubecost-ui) to make the most of +the cost analyzer. + +![Image that shows the Kubecost UI](/getting-started/getting-started_update-k8s-cluster_kubecost-ui.webp) + +Once you are done exploring locally, you can stop the `kubectl port-forward` command by closing the terminal window it +is executing from. + +## Roll Back Cluster Profiles + +One of the key advantages of using cluster profile versions is that they make it possible to maintain a copy of +previously known working states. The ability to roll back to a previously working cluster profile in one action shortens +the time to recovery in the event of an incident. + +The process to roll back to a previous version is identical to the process for applying a new version. + +Navigate to the left **Main Menu** and select **Clusters**. Filter for the cluster with the +**service:hello-universe-frontend** tag. Select it to view its **Overview** tab. + +Select the **Profile** tab. This cluster is currently deployed using cluster profile version **1.1.0**. Select the +option **1.0.0** in the version dropdown. This process is the reverse of what you have done in the previous section, +[Version Cluster Profiles](#version-cluster-profiles). + +Click on **Review & Save** to confirm your changes. The **Changes Summary** dialog appears again. + +Click on **Review changes in Editor**. The editor shows that the incoming version no longer contains the three-tier +application configuration. + +Click on **Apply Changes**. Select the **Overview** tab. + +Palette now makes the changes required for the cluster to return to the state specified in version **1.0.0** of your +cluster profile. Once your changes have completed, Palette marks your layers with the green status indicator. + +![Cluster details page with service URL highlighted](/getting-started/vmware/getting-started_deploy-k8s-cluster_service_url.webp) + +## Pending Updates + +Cluster profiles can also be updated in place, without the need to create a new cluster profile version. Palette +monitors the state of your clusters and notifies you when updates are available for your host clusters. You may then +choose to apply your changes at a convenient time. + +The previous state of the cluster profile will not be saved once it is overwritten. + +Navigate to the left **Main Menu** and select **Clusters**. Filter for the cluster with the tag +**service:hello-universe-frontend**. Select it to view its **Overview** tab. + +Select the **Profiles** tab. Then, select the **hello-universe** pack. Change the `replicas` field to `2` on line `15`. +Click on **Save**. The editor closes. + +This cluster now contains an override over its cluster profile. Palette uses the configuration you have just provided +for the single cluster over its cluster profile and begins making the appropriate changes. + +Once these changes are complete, select the **Workloads** tab. Then, select the **hello-universe** namespace. + +Two **ui** pods are available, instead of the one specified by your cluster profile. Your override has been successfully +applied. + +Navigate to the left **Main Menu** and select **Profiles** to view the cluster profile page. Find the cluster profile +corresponding to your _hello-universe-frontend_ cluster, named `vmware-profile`. + +Click on it to view its details. Select **1.0.0** in the version dropdown. + +Select the **hello-universe** pack. The editor appears. Change the `replicas` field to `3` on line `15`. Click on +**Confirm Updates**. The editor closes. + +Click on **Save Changes** to confirm the changes you have made to your profile. + +Navigate to the left **Main Menu** and select **Clusters**. Filter for the clusters with the **service** tag. Both of +your clusters match this filter. Palette indicates that the cluster associated with the cluster profile you updated has +updates available. + +![Image that shows the pending updates ](/getting-started/vmware/getting-started_update-k8s-cluster_pending-update-clusters-view.webp) + +Select this cluster to open its **Overview** tab. Click on **Updates** to begin the cluster update. + +![Image that shows the Updates button](/getting-started/vmware/getting-started_update-k8s-cluster_updates-available-button-cluster-overview.webp) + +A dialog appears which shows the changes made in this update. Review the changes and ensure the only change is the +`replicas` field value. The pending update removes your cluster override and sets the `replicas` field to `3`. At this +point, you can choose to apply the pending changes or keep it by modifying the right-hand side of the dialog. + +![Image that shows the available updates dialog ](/getting-started/vmware/getting-started_update-k8s-cluster_available-updates-dialog.webp) + +Click on **Confirm updates** once you have finished reviewing your changes. + +Palette updates your cluster according to cluster profile specifications. Once these changes are complete, select the +**Workloads** tab. Then, select the **hello-universe** namespace. + +Three **ui** pods are available. The cluster profile update is now reflected by your cluster. + +## Cluster Observability + + + +## Cleanup + +Use the following steps to remove all the resources you created for the tutorial. + +To remove the cluster, navigate to the left **Main Menu** and click on **Clusters**. Select the cluster you want to +delete to access its details page. + +Click on **Settings** to expand the menu, and select **Delete Cluster**. + +![Delete cluster](/getting-started/vmware/getting-started_deploy-k8s-cluster_delete-cluster-button.webp) + +You will be prompted to type in the cluster name to confirm the delete action. Type in the cluster name to proceed with +the delete step. The deletion process takes several minutes to complete. + +:::info + +If a cluster remains in the delete phase for over 15 minutes, it becomes eligible for a force delete. To trigger a force +delete, navigate to the cluster’s details page, click on **Settings**, then select **Force Delete Cluster**. Palette +automatically removes clusters stuck in the cluster deletion phase for over 24 hours. + +::: + +Once the cluster is deleted, navigate to the left **Main Menu** and click on **Profiles**. Find the cluster profile you +created and click on the **three-dot Menu** to display the **Delete** button. Select **Delete** and confirm the +selection to remove the cluster profile. + + + +## Wrap-Up + +In this tutorial, you created deployed cluster profile updates. After the cluster was deployed to VMware, you updated +the cluster profile through three different methods: create a new cluster profile version, update a cluster profile in +place, and cluster profile overrides. After you made your changes, the Hello Universe application functioned as a +three-tier application with a REST API backend server. + +Cluster profiles provide consistency during the cluster creation process, as well as when maintaining your clusters. +They can be versioned to keep a record of previously working cluster states, giving you visibility when updating or +rolling back workloads across your environments. diff --git a/docs/docs-content/getting-started/vmware/vmware.md b/docs/docs-content/getting-started/vmware/vmware.md new file mode 100644 index 0000000000..5a716edbe3 --- /dev/null +++ b/docs/docs-content/getting-started/vmware/vmware.md @@ -0,0 +1,52 @@ +--- +sidebar_label: "Deploy a Cluster to VMware" +title: "Deploy a Cluster to VMware" +description: "Spectro Cloud Getting Started with VMware" +hide_table_of_contents: false +sidebar_custom_props: + icon: "" +tags: ["getting-started", "vmware"] +--- + +Palette supports integration with [VMware](https://www.vmware.com). You can deploy and manage +[Host Clusters](../../glossary-all.md#host-cluster) on VMware. + +## Get Started + +In this section, you learn how to create a cluster profile. Then, you deploy a cluster to VMware vSphere using Palette. +Once your cluster is deployed, you can update it using cluster profile updates. + + diff --git a/docs/docs-content/user-management/authentication/api-key/create-api-key.md b/docs/docs-content/user-management/authentication/api-key/create-api-key.md index 86390bec9a..1263496443 100644 --- a/docs/docs-content/user-management/authentication/api-key/create-api-key.md +++ b/docs/docs-content/user-management/authentication/api-key/create-api-key.md @@ -70,35 +70,7 @@ Ensure you save the API key in a secure location. You will not be able to view t -1. Log in to [Palette](https://console.spectrocloud.com) as a tenant admin. - -2. Switch to the **Tenant Admin** scope - -3. Navigate to the left **Main Menu** and select **Tenant Settings**. - -4. From the **Tenant Settings Menu**, select **API Keys**. - -5. Click on **Add New API key**. - -6. Fill out the following input fields: - -| **Input Field** | **Description** | -| ------------------- | ----------------------------------------------------------------------------------------------------------------- | -| **API Key Name** | Assign a name to the API key. | -| **Description** | Provide a description for the API key. | -| **User Name** | Select the user to assign the API key. | -| **Expiration Date** | Select an expiration date from the available options. You can also specify a custom date by selecting **Custom**. | - -5. Click the **Generate** button. - -6. Copy the API key and save it in a secure location, such as a password manager. Share the API key with the user you - created the API key for. - -:::warning - -Ensure you save the API key in a secure location. You will not be able to view the API key again. - -::: + diff --git a/static/assets/docs/images/getting-started/aws/getting-started_create-cluster-profile_pack-presets.webp b/static/assets/docs/images/getting-started/aws/getting-started_create-cluster-profile_pack-presets.webp new file mode 100644 index 0000000000..f54def7139 Binary files /dev/null and b/static/assets/docs/images/getting-started/aws/getting-started_create-cluster-profile_pack-presets.webp differ diff --git a/static/assets/docs/images/getting-started/aws/getting-started_deploy-k8s-cluster_cluster_nodes_config.webp b/static/assets/docs/images/getting-started/aws/getting-started_deploy-k8s-cluster_cluster_nodes_config.webp index 0f9e681485..903ff3c581 100644 Binary files a/static/assets/docs/images/getting-started/aws/getting-started_deploy-k8s-cluster_cluster_nodes_config.webp and b/static/assets/docs/images/getting-started/aws/getting-started_deploy-k8s-cluster_cluster_nodes_config.webp differ diff --git a/static/assets/docs/images/getting-started/aws/getting-started_deploy-k8s-cluster_clusters_basic_info.webp b/static/assets/docs/images/getting-started/aws/getting-started_deploy-k8s-cluster_clusters_basic_info.webp index 2a67c52733..1a5205cac0 100644 Binary files a/static/assets/docs/images/getting-started/aws/getting-started_deploy-k8s-cluster_clusters_basic_info.webp and b/static/assets/docs/images/getting-started/aws/getting-started_deploy-k8s-cluster_clusters_basic_info.webp differ diff --git a/static/assets/docs/images/getting-started/aws/getting-started_deploy-k8s-cluster_clusters_creation_parameters.webp b/static/assets/docs/images/getting-started/aws/getting-started_deploy-k8s-cluster_clusters_creation_parameters.webp index 942b665213..2866a1d1a5 100644 Binary files a/static/assets/docs/images/getting-started/aws/getting-started_deploy-k8s-cluster_clusters_creation_parameters.webp and b/static/assets/docs/images/getting-started/aws/getting-started_deploy-k8s-cluster_clusters_creation_parameters.webp differ diff --git a/static/assets/docs/images/getting-started/aws/getting-started_deploy-k8s-cluster_delete-cluster-button.webp b/static/assets/docs/images/getting-started/aws/getting-started_deploy-k8s-cluster_delete-cluster-button.webp index 2af6ce4569..47b876b044 100644 Binary files a/static/assets/docs/images/getting-started/aws/getting-started_deploy-k8s-cluster_delete-cluster-button.webp and b/static/assets/docs/images/getting-started/aws/getting-started_deploy-k8s-cluster_delete-cluster-button.webp differ diff --git a/static/assets/docs/images/getting-started/aws/getting-started_deploy-k8s-cluster_profile_cluster_profile_review.webp b/static/assets/docs/images/getting-started/aws/getting-started_deploy-k8s-cluster_profile_cluster_profile_review.webp index 76ad325c74..183eab1cf5 100644 Binary files a/static/assets/docs/images/getting-started/aws/getting-started_deploy-k8s-cluster_profile_cluster_profile_review.webp and b/static/assets/docs/images/getting-started/aws/getting-started_deploy-k8s-cluster_profile_cluster_profile_review.webp differ diff --git a/static/assets/docs/images/getting-started/aws/getting-started_deploy-k8s-cluster_service_url.webp b/static/assets/docs/images/getting-started/aws/getting-started_deploy-k8s-cluster_service_url.webp index 61995c9481..c9b8461f52 100644 Binary files a/static/assets/docs/images/getting-started/aws/getting-started_deploy-k8s-cluster_service_url.webp and b/static/assets/docs/images/getting-started/aws/getting-started_deploy-k8s-cluster_service_url.webp differ diff --git a/static/assets/docs/images/getting-started/aws/getting-started_update-k8s-cluster_available-updates-dialog.webp b/static/assets/docs/images/getting-started/aws/getting-started_update-k8s-cluster_available-updates-dialog.webp index 0ab863df31..8e3eb2063e 100644 Binary files a/static/assets/docs/images/getting-started/aws/getting-started_update-k8s-cluster_available-updates-dialog.webp and b/static/assets/docs/images/getting-started/aws/getting-started_update-k8s-cluster_available-updates-dialog.webp differ diff --git a/static/assets/docs/images/getting-started/aws/getting-started_update-k8s-cluster_completed-cluster-updates.webp b/static/assets/docs/images/getting-started/aws/getting-started_update-k8s-cluster_completed-cluster-updates.webp index dc5dee8cd5..8b5f27f541 100644 Binary files a/static/assets/docs/images/getting-started/aws/getting-started_update-k8s-cluster_completed-cluster-updates.webp and b/static/assets/docs/images/getting-started/aws/getting-started_update-k8s-cluster_completed-cluster-updates.webp differ diff --git a/static/assets/docs/images/getting-started/aws/getting-started_update-k8s-cluster_download-kubeconfig.webp b/static/assets/docs/images/getting-started/aws/getting-started_update-k8s-cluster_download-kubeconfig.webp new file mode 100644 index 0000000000..4092ea6220 Binary files /dev/null and b/static/assets/docs/images/getting-started/aws/getting-started_update-k8s-cluster_download-kubeconfig.webp differ diff --git a/static/assets/docs/images/getting-started/aws/getting-started_update-k8s-cluster_profile-version-selection.webp b/static/assets/docs/images/getting-started/aws/getting-started_update-k8s-cluster_profile-version-selection.webp index 4668e63f73..deaf36c996 100644 Binary files a/static/assets/docs/images/getting-started/aws/getting-started_update-k8s-cluster_profile-version-selection.webp and b/static/assets/docs/images/getting-started/aws/getting-started_update-k8s-cluster_profile-version-selection.webp differ diff --git a/static/assets/docs/images/getting-started/aws/getting-started_update-k8s-cluster_select-kubecost-pack.webp b/static/assets/docs/images/getting-started/aws/getting-started_update-k8s-cluster_select-kubecost-pack.webp new file mode 100644 index 0000000000..3b5bca4a3f Binary files /dev/null and b/static/assets/docs/images/getting-started/aws/getting-started_update-k8s-cluster_select-kubecost-pack.webp differ diff --git a/static/assets/docs/images/getting-started/aws/getting-started_update-k8s-cluster_updates-available-button-cluster-overview.webp b/static/assets/docs/images/getting-started/aws/getting-started_update-k8s-cluster_updates-available-button-cluster-overview.webp index 1363e484bd..974a1e345e 100644 Binary files a/static/assets/docs/images/getting-started/aws/getting-started_update-k8s-cluster_updates-available-button-cluster-overview.webp and b/static/assets/docs/images/getting-started/aws/getting-started_update-k8s-cluster_updates-available-button-cluster-overview.webp differ diff --git a/static/assets/docs/images/getting-started/azure/getting-started_create-cluster-profile_pack-presets.webp b/static/assets/docs/images/getting-started/azure/getting-started_create-cluster-profile_pack-presets.webp new file mode 100644 index 0000000000..a1a60b7578 Binary files /dev/null and b/static/assets/docs/images/getting-started/azure/getting-started_create-cluster-profile_pack-presets.webp differ diff --git a/static/assets/docs/images/getting-started/azure/getting-started_deploy-k8s-cluster_cluster_nodes_config.webp b/static/assets/docs/images/getting-started/azure/getting-started_deploy-k8s-cluster_cluster_nodes_config.webp index 16cfe0d72e..41d3e493fd 100644 Binary files a/static/assets/docs/images/getting-started/azure/getting-started_deploy-k8s-cluster_cluster_nodes_config.webp and b/static/assets/docs/images/getting-started/azure/getting-started_deploy-k8s-cluster_cluster_nodes_config.webp differ diff --git a/static/assets/docs/images/getting-started/azure/getting-started_deploy-k8s-cluster_clusters_basic_info.webp b/static/assets/docs/images/getting-started/azure/getting-started_deploy-k8s-cluster_clusters_basic_info.webp index ca20544a25..00defa5a6d 100644 Binary files a/static/assets/docs/images/getting-started/azure/getting-started_deploy-k8s-cluster_clusters_basic_info.webp and b/static/assets/docs/images/getting-started/azure/getting-started_deploy-k8s-cluster_clusters_basic_info.webp differ diff --git a/static/assets/docs/images/getting-started/azure/getting-started_deploy-k8s-cluster_delete-cluster-button.webp b/static/assets/docs/images/getting-started/azure/getting-started_deploy-k8s-cluster_delete-cluster-button.webp index f46678d6bb..8cd4b0217c 100644 Binary files a/static/assets/docs/images/getting-started/azure/getting-started_deploy-k8s-cluster_delete-cluster-button.webp and b/static/assets/docs/images/getting-started/azure/getting-started_deploy-k8s-cluster_delete-cluster-button.webp differ diff --git a/static/assets/docs/images/getting-started/azure/getting-started_deploy-k8s-cluster_parameters.webp b/static/assets/docs/images/getting-started/azure/getting-started_deploy-k8s-cluster_parameters.webp index 1b2f17e9d1..986f67171c 100644 Binary files a/static/assets/docs/images/getting-started/azure/getting-started_deploy-k8s-cluster_parameters.webp and b/static/assets/docs/images/getting-started/azure/getting-started_deploy-k8s-cluster_parameters.webp differ diff --git a/static/assets/docs/images/getting-started/azure/getting-started_deploy-k8s-cluster_service_url.webp b/static/assets/docs/images/getting-started/azure/getting-started_deploy-k8s-cluster_service_url.webp index de8d2ab438..e72210359a 100644 Binary files a/static/assets/docs/images/getting-started/azure/getting-started_deploy-k8s-cluster_service_url.webp and b/static/assets/docs/images/getting-started/azure/getting-started_deploy-k8s-cluster_service_url.webp differ diff --git a/static/assets/docs/images/getting-started/azure/getting-started_update-k8s-cluster_available-updates-dialog.webp b/static/assets/docs/images/getting-started/azure/getting-started_update-k8s-cluster_available-updates-dialog.webp index 5491daeabe..f3c42e23c5 100644 Binary files a/static/assets/docs/images/getting-started/azure/getting-started_update-k8s-cluster_available-updates-dialog.webp and b/static/assets/docs/images/getting-started/azure/getting-started_update-k8s-cluster_available-updates-dialog.webp differ diff --git a/static/assets/docs/images/getting-started/azure/getting-started_update-k8s-cluster_completed-cluster-updates.webp b/static/assets/docs/images/getting-started/azure/getting-started_update-k8s-cluster_completed-cluster-updates.webp index d86889a0dd..484e91e60b 100644 Binary files a/static/assets/docs/images/getting-started/azure/getting-started_update-k8s-cluster_completed-cluster-updates.webp and b/static/assets/docs/images/getting-started/azure/getting-started_update-k8s-cluster_completed-cluster-updates.webp differ diff --git a/static/assets/docs/images/getting-started/azure/getting-started_update-k8s-cluster_download-kubeconfig.webp b/static/assets/docs/images/getting-started/azure/getting-started_update-k8s-cluster_download-kubeconfig.webp new file mode 100644 index 0000000000..42ac3702dd Binary files /dev/null and b/static/assets/docs/images/getting-started/azure/getting-started_update-k8s-cluster_download-kubeconfig.webp differ diff --git a/static/assets/docs/images/getting-started/azure/getting-started_update-k8s-cluster_profile-version-selection.webp b/static/assets/docs/images/getting-started/azure/getting-started_update-k8s-cluster_profile-version-selection.webp index d2b079844f..d6aec0a095 100644 Binary files a/static/assets/docs/images/getting-started/azure/getting-started_update-k8s-cluster_profile-version-selection.webp and b/static/assets/docs/images/getting-started/azure/getting-started_update-k8s-cluster_profile-version-selection.webp differ diff --git a/static/assets/docs/images/getting-started/azure/getting-started_update-k8s-cluster_select-kubecost-pack.webp b/static/assets/docs/images/getting-started/azure/getting-started_update-k8s-cluster_select-kubecost-pack.webp new file mode 100644 index 0000000000..dbfff93d22 Binary files /dev/null and b/static/assets/docs/images/getting-started/azure/getting-started_update-k8s-cluster_select-kubecost-pack.webp differ diff --git a/static/assets/docs/images/getting-started/azure/getting-started_update-k8s-cluster_updates-available-button-cluster-overview.webp b/static/assets/docs/images/getting-started/azure/getting-started_update-k8s-cluster_updates-available-button-cluster-overview.webp index bf5f86fe4a..93e5ad5949 100644 Binary files a/static/assets/docs/images/getting-started/azure/getting-started_update-k8s-cluster_updates-available-button-cluster-overview.webp and b/static/assets/docs/images/getting-started/azure/getting-started_update-k8s-cluster_updates-available-button-cluster-overview.webp differ diff --git a/static/assets/docs/images/getting-started/gcp/getting-started_create-cluster-profile_pack-presets.webp b/static/assets/docs/images/getting-started/gcp/getting-started_create-cluster-profile_pack-presets.webp new file mode 100644 index 0000000000..b289007782 Binary files /dev/null and b/static/assets/docs/images/getting-started/gcp/getting-started_create-cluster-profile_pack-presets.webp differ diff --git a/static/assets/docs/images/getting-started/gcp/getting-started_deploy-k8s-cluster_basic_info.webp b/static/assets/docs/images/getting-started/gcp/getting-started_deploy-k8s-cluster_basic_info.webp index 0858719fb7..a3bfb2b94d 100644 Binary files a/static/assets/docs/images/getting-started/gcp/getting-started_deploy-k8s-cluster_basic_info.webp and b/static/assets/docs/images/getting-started/gcp/getting-started_deploy-k8s-cluster_basic_info.webp differ diff --git a/static/assets/docs/images/getting-started/gcp/getting-started_deploy-k8s-cluster_cluster_nodes_config.webp b/static/assets/docs/images/getting-started/gcp/getting-started_deploy-k8s-cluster_cluster_nodes_config.webp index 91823489bc..2a57e47301 100644 Binary files a/static/assets/docs/images/getting-started/gcp/getting-started_deploy-k8s-cluster_cluster_nodes_config.webp and b/static/assets/docs/images/getting-started/gcp/getting-started_deploy-k8s-cluster_cluster_nodes_config.webp differ diff --git a/static/assets/docs/images/getting-started/gcp/getting-started_deploy-k8s-cluster_clusters_parameters.webp b/static/assets/docs/images/getting-started/gcp/getting-started_deploy-k8s-cluster_clusters_parameters.webp index 3a5300130b..13a46b9791 100644 Binary files a/static/assets/docs/images/getting-started/gcp/getting-started_deploy-k8s-cluster_clusters_parameters.webp and b/static/assets/docs/images/getting-started/gcp/getting-started_deploy-k8s-cluster_clusters_parameters.webp differ diff --git a/static/assets/docs/images/getting-started/gcp/getting-started_deploy-k8s-cluster_delete-cluster-button.webp b/static/assets/docs/images/getting-started/gcp/getting-started_deploy-k8s-cluster_delete-cluster-button.webp index 804d7121f1..0b7781cfc7 100644 Binary files a/static/assets/docs/images/getting-started/gcp/getting-started_deploy-k8s-cluster_delete-cluster-button.webp and b/static/assets/docs/images/getting-started/gcp/getting-started_deploy-k8s-cluster_delete-cluster-button.webp differ diff --git a/static/assets/docs/images/getting-started/gcp/getting-started_deploy-k8s-cluster_service_url.webp b/static/assets/docs/images/getting-started/gcp/getting-started_deploy-k8s-cluster_service_url.webp index 8c772c7600..b2a0d61bf4 100644 Binary files a/static/assets/docs/images/getting-started/gcp/getting-started_deploy-k8s-cluster_service_url.webp and b/static/assets/docs/images/getting-started/gcp/getting-started_deploy-k8s-cluster_service_url.webp differ diff --git a/static/assets/docs/images/getting-started/gcp/getting-started_update-k8s-cluster_available-updates-dialog.webp b/static/assets/docs/images/getting-started/gcp/getting-started_update-k8s-cluster_available-updates-dialog.webp index 3edf9806a9..52ca569396 100644 Binary files a/static/assets/docs/images/getting-started/gcp/getting-started_update-k8s-cluster_available-updates-dialog.webp and b/static/assets/docs/images/getting-started/gcp/getting-started_update-k8s-cluster_available-updates-dialog.webp differ diff --git a/static/assets/docs/images/getting-started/gcp/getting-started_update-k8s-cluster_completed-cluster-updates.webp b/static/assets/docs/images/getting-started/gcp/getting-started_update-k8s-cluster_completed-cluster-updates.webp index 9950fe95bc..b4c9f8f86f 100644 Binary files a/static/assets/docs/images/getting-started/gcp/getting-started_update-k8s-cluster_completed-cluster-updates.webp and b/static/assets/docs/images/getting-started/gcp/getting-started_update-k8s-cluster_completed-cluster-updates.webp differ diff --git a/static/assets/docs/images/getting-started/gcp/getting-started_update-k8s-cluster_download-kubeconfig.webp b/static/assets/docs/images/getting-started/gcp/getting-started_update-k8s-cluster_download-kubeconfig.webp new file mode 100644 index 0000000000..4718a75c75 Binary files /dev/null and b/static/assets/docs/images/getting-started/gcp/getting-started_update-k8s-cluster_download-kubeconfig.webp differ diff --git a/static/assets/docs/images/getting-started/gcp/getting-started_update-k8s-cluster_select-kubecost-pack.webp b/static/assets/docs/images/getting-started/gcp/getting-started_update-k8s-cluster_select-kubecost-pack.webp new file mode 100644 index 0000000000..586f6140a5 Binary files /dev/null and b/static/assets/docs/images/getting-started/gcp/getting-started_update-k8s-cluster_select-kubecost-pack.webp differ diff --git a/static/assets/docs/images/getting-started/gcp/getting-started_update-k8s-cluster_updates-available-button-cluster-overview.webp b/static/assets/docs/images/getting-started/gcp/getting-started_update-k8s-cluster_updates-available-button-cluster-overview.webp index 5cb93e229a..8b344e7608 100644 Binary files a/static/assets/docs/images/getting-started/gcp/getting-started_update-k8s-cluster_updates-available-button-cluster-overview.webp and b/static/assets/docs/images/getting-started/gcp/getting-started_update-k8s-cluster_updates-available-button-cluster-overview.webp differ diff --git a/static/assets/docs/images/getting-started/getting-started_update-k8s-cluster_hello-universe-with-api.webp b/static/assets/docs/images/getting-started/getting-started_deploy-k8s-cluster_hello-universe-with-api.webp similarity index 100% rename from static/assets/docs/images/getting-started/getting-started_update-k8s-cluster_hello-universe-with-api.webp rename to static/assets/docs/images/getting-started/getting-started_deploy-k8s-cluster_hello-universe-with-api.webp diff --git a/static/assets/docs/images/getting-started/getting-started_deploy-k8s-cluster_new_cluster.webp b/static/assets/docs/images/getting-started/getting-started_deploy-k8s-cluster_new_cluster.webp index 299fd2f09c..2f0b109f1a 100644 Binary files a/static/assets/docs/images/getting-started/getting-started_deploy-k8s-cluster_new_cluster.webp and b/static/assets/docs/images/getting-started/getting-started_deploy-k8s-cluster_new_cluster.webp differ diff --git a/static/assets/docs/images/getting-started/getting-started_update-k8s-cluster_kubecost-ui.webp b/static/assets/docs/images/getting-started/getting-started_update-k8s-cluster_kubecost-ui.webp new file mode 100644 index 0000000000..04bbaa721d Binary files /dev/null and b/static/assets/docs/images/getting-started/getting-started_update-k8s-cluster_kubecost-ui.webp differ diff --git a/static/assets/docs/images/getting-started/vmware/getting-started_create-cluster-profile_add-pack.webp b/static/assets/docs/images/getting-started/vmware/getting-started_create-cluster-profile_add-pack.webp new file mode 100644 index 0000000000..2133f99c12 Binary files /dev/null and b/static/assets/docs/images/getting-started/vmware/getting-started_create-cluster-profile_add-pack.webp differ diff --git a/static/assets/docs/images/getting-started/vmware/getting-started_create-cluster-profile_cluster-profile-core-stack.webp b/static/assets/docs/images/getting-started/vmware/getting-started_create-cluster-profile_cluster-profile-core-stack.webp new file mode 100644 index 0000000000..9ed8b96e09 Binary files /dev/null and b/static/assets/docs/images/getting-started/vmware/getting-started_create-cluster-profile_cluster-profile-core-stack.webp differ diff --git a/static/assets/docs/images/getting-started/vmware/getting-started_create-cluster-profile_metallb-pack.webp b/static/assets/docs/images/getting-started/vmware/getting-started_create-cluster-profile_metallb-pack.webp new file mode 100644 index 0000000000..a6d4f6f7e8 Binary files /dev/null and b/static/assets/docs/images/getting-started/vmware/getting-started_create-cluster-profile_metallb-pack.webp differ diff --git a/static/assets/docs/images/getting-started/vmware/getting-started_create-cluster-profile_pack-presets.webp b/static/assets/docs/images/getting-started/vmware/getting-started_create-cluster-profile_pack-presets.webp new file mode 100644 index 0000000000..3017cb7728 Binary files /dev/null and b/static/assets/docs/images/getting-started/vmware/getting-started_create-cluster-profile_pack-presets.webp differ diff --git a/static/assets/docs/images/getting-started/vmware/getting-started_create-cluster-profile_pack-readme.webp b/static/assets/docs/images/getting-started/vmware/getting-started_create-cluster-profile_pack-readme.webp new file mode 100644 index 0000000000..eb360dc65e Binary files /dev/null and b/static/assets/docs/images/getting-started/vmware/getting-started_create-cluster-profile_pack-readme.webp differ diff --git a/static/assets/docs/images/getting-started/vmware/getting-started_deploy-k8s-cluster_basic_info.webp b/static/assets/docs/images/getting-started/vmware/getting-started_deploy-k8s-cluster_basic_info.webp new file mode 100644 index 0000000000..0d7dbac3a9 Binary files /dev/null and b/static/assets/docs/images/getting-started/vmware/getting-started_deploy-k8s-cluster_basic_info.webp differ diff --git a/static/assets/docs/images/getting-started/vmware/getting-started_deploy-k8s-cluster_clusters_parameters.webp b/static/assets/docs/images/getting-started/vmware/getting-started_deploy-k8s-cluster_clusters_parameters.webp new file mode 100644 index 0000000000..407d4d6345 Binary files /dev/null and b/static/assets/docs/images/getting-started/vmware/getting-started_deploy-k8s-cluster_clusters_parameters.webp differ diff --git a/static/assets/docs/images/getting-started/vmware/getting-started_deploy-k8s-cluster_delete-cluster-button.webp b/static/assets/docs/images/getting-started/vmware/getting-started_deploy-k8s-cluster_delete-cluster-button.webp new file mode 100644 index 0000000000..e6351e1450 Binary files /dev/null and b/static/assets/docs/images/getting-started/vmware/getting-started_deploy-k8s-cluster_delete-cluster-button.webp differ diff --git a/static/assets/docs/images/getting-started/vmware/getting-started_deploy-k8s-cluster_event_log.webp b/static/assets/docs/images/getting-started/vmware/getting-started_deploy-k8s-cluster_event_log.webp new file mode 100644 index 0000000000..df5c2686cd Binary files /dev/null and b/static/assets/docs/images/getting-started/vmware/getting-started_deploy-k8s-cluster_event_log.webp differ diff --git a/static/assets/docs/images/getting-started/vmware/getting-started_deploy-k8s-cluster_new_cluster.webp b/static/assets/docs/images/getting-started/vmware/getting-started_deploy-k8s-cluster_new_cluster.webp new file mode 100644 index 0000000000..de3b3d7d5e Binary files /dev/null and b/static/assets/docs/images/getting-started/vmware/getting-started_deploy-k8s-cluster_new_cluster.webp differ diff --git a/static/assets/docs/images/getting-started/vmware/getting-started_deploy-k8s-cluster_profile_review.webp b/static/assets/docs/images/getting-started/vmware/getting-started_deploy-k8s-cluster_profile_review.webp new file mode 100644 index 0000000000..c272c6823f Binary files /dev/null and b/static/assets/docs/images/getting-started/vmware/getting-started_deploy-k8s-cluster_profile_review.webp differ diff --git a/static/assets/docs/images/getting-started/vmware/getting-started_deploy-k8s-cluster_service_url.webp b/static/assets/docs/images/getting-started/vmware/getting-started_deploy-k8s-cluster_service_url.webp new file mode 100644 index 0000000000..95d0647ce1 Binary files /dev/null and b/static/assets/docs/images/getting-started/vmware/getting-started_deploy-k8s-cluster_service_url.webp differ diff --git a/static/assets/docs/images/getting-started/vmware/getting-started_update-k8s-cluster_add-service-tag.webp b/static/assets/docs/images/getting-started/vmware/getting-started_update-k8s-cluster_add-service-tag.webp new file mode 100644 index 0000000000..f66305fbe0 Binary files /dev/null and b/static/assets/docs/images/getting-started/vmware/getting-started_update-k8s-cluster_add-service-tag.webp differ diff --git a/static/assets/docs/images/getting-started/vmware/getting-started_update-k8s-cluster_apply-frontend-filter.webp b/static/assets/docs/images/getting-started/vmware/getting-started_update-k8s-cluster_apply-frontend-filter.webp new file mode 100644 index 0000000000..9a5190a49e Binary files /dev/null and b/static/assets/docs/images/getting-started/vmware/getting-started_update-k8s-cluster_apply-frontend-filter.webp differ diff --git a/static/assets/docs/images/getting-started/vmware/getting-started_update-k8s-cluster_available-updates-dialog.webp b/static/assets/docs/images/getting-started/vmware/getting-started_update-k8s-cluster_available-updates-dialog.webp new file mode 100644 index 0000000000..d63501227d Binary files /dev/null and b/static/assets/docs/images/getting-started/vmware/getting-started_update-k8s-cluster_available-updates-dialog.webp differ diff --git a/static/assets/docs/images/getting-started/vmware/getting-started_update-k8s-cluster_completed-cluster-updates.webp b/static/assets/docs/images/getting-started/vmware/getting-started_update-k8s-cluster_completed-cluster-updates.webp new file mode 100644 index 0000000000..43e0223403 Binary files /dev/null and b/static/assets/docs/images/getting-started/vmware/getting-started_update-k8s-cluster_completed-cluster-updates.webp differ diff --git a/static/assets/docs/images/getting-started/vmware/getting-started_update-k8s-cluster_download-kubeconfig.webp b/static/assets/docs/images/getting-started/vmware/getting-started_update-k8s-cluster_download-kubeconfig.webp new file mode 100644 index 0000000000..4f56dd1fea Binary files /dev/null and b/static/assets/docs/images/getting-started/vmware/getting-started_update-k8s-cluster_download-kubeconfig.webp differ diff --git a/static/assets/docs/images/getting-started/vmware/getting-started_update-k8s-cluster_new-version-overview.webp b/static/assets/docs/images/getting-started/vmware/getting-started_update-k8s-cluster_new-version-overview.webp new file mode 100644 index 0000000000..11ce7255fe Binary files /dev/null and b/static/assets/docs/images/getting-started/vmware/getting-started_update-k8s-cluster_new-version-overview.webp differ diff --git a/static/assets/docs/images/getting-started/vmware/getting-started_update-k8s-cluster_pending-update-clusters-view.webp b/static/assets/docs/images/getting-started/vmware/getting-started_update-k8s-cluster_pending-update-clusters-view.webp new file mode 100644 index 0000000000..37f838c32d Binary files /dev/null and b/static/assets/docs/images/getting-started/vmware/getting-started_update-k8s-cluster_pending-update-clusters-view.webp differ diff --git a/static/assets/docs/images/getting-started/vmware/getting-started_update-k8s-cluster_profile-version-changes.webp b/static/assets/docs/images/getting-started/vmware/getting-started_update-k8s-cluster_profile-version-changes.webp new file mode 100644 index 0000000000..e03416e22e Binary files /dev/null and b/static/assets/docs/images/getting-started/vmware/getting-started_update-k8s-cluster_profile-version-changes.webp differ diff --git a/static/assets/docs/images/getting-started/vmware/getting-started_update-k8s-cluster_profile-version-selection.webp b/static/assets/docs/images/getting-started/vmware/getting-started_update-k8s-cluster_profile-version-selection.webp new file mode 100644 index 0000000000..d01595d080 Binary files /dev/null and b/static/assets/docs/images/getting-started/vmware/getting-started_update-k8s-cluster_profile-version-selection.webp differ diff --git a/static/assets/docs/images/getting-started/vmware/getting-started_update-k8s-cluster_profile-with-cluster.webp b/static/assets/docs/images/getting-started/vmware/getting-started_update-k8s-cluster_profile-with-cluster.webp new file mode 100644 index 0000000000..eae14de0b4 Binary files /dev/null and b/static/assets/docs/images/getting-started/vmware/getting-started_update-k8s-cluster_profile-with-cluster.webp differ diff --git a/static/assets/docs/images/getting-started/vmware/getting-started_update-k8s-cluster_select-kubecost-pack.webp b/static/assets/docs/images/getting-started/vmware/getting-started_update-k8s-cluster_select-kubecost-pack.webp new file mode 100644 index 0000000000..a0530e7e20 Binary files /dev/null and b/static/assets/docs/images/getting-started/vmware/getting-started_update-k8s-cluster_select-kubecost-pack.webp differ diff --git a/static/assets/docs/images/getting-started/vmware/getting-started_update-k8s-cluster_updates-available-button-cluster-overview.webp b/static/assets/docs/images/getting-started/vmware/getting-started_update-k8s-cluster_updates-available-button-cluster-overview.webp new file mode 100644 index 0000000000..aed3c7046a Binary files /dev/null and b/static/assets/docs/images/getting-started/vmware/getting-started_update-k8s-cluster_updates-available-button-cluster-overview.webp differ diff --git a/vale/styles/config/vocabularies/Internal/accept.txt b/vale/styles/config/vocabularies/Internal/accept.txt new file mode 100644 index 0000000000..5fe0d6fd3c --- /dev/null +++ b/vale/styles/config/vocabularies/Internal/accept.txt @@ -0,0 +1,212 @@ +Xeon +Spectro +Spectro Cloud +SOC 2 +IPs +VMware +kCh +data center +CVEs +hotfixes +kubectl +is +Cloud +cloud +simple +execute +CLI +reject +disable +modify +subnet +subnets +VMs +VNet +Kubelet +We +we +vSphere +kubeadm +upsize +Alertmanager +alertmanager +grafana +Grafana +etcd +SRE +SREs +EKS +AKS +GKE +admin +Autoscaler +autoscaler +Fargate +VPC +VPCs +subnets +subnet +AZs +VMs +IaaS +autoscaling +Tencent +serverless +vCenter +Palette Dev Engine +Dev +dev +Postgres +hostname +Hostname +enablement +Enablement +Namespace +namespace +Lua +Konvoy +Kairos +virtualized +Ceph +Traefik +serverless +Serverless +k3s +bootable +balenaEtcher +ovftool +cdrtools +readme +Netlify +http +https +Vercel +preboot +operationalize +passthrough +htpasswd +config +kubeconfig +addon +Thanos +HTTPS +HTTP +ClusterRole +ClusterRoleBindings +RoleBindings +RoleBinding +kubeconfig +Nginx +Repo +datastore +uxp +wodim +Letsencrypt +Bitnami +GCP +Ansible +Nvidia +Portworx +Topolvm +Palette Upgrader +imageSwap +subcommand +subcommands +MAAS +nameserver +uncomment +OAuth +unsecure +vMotion +repavement +Repavement +repave +Repave +K3s +boolean +Velero +MinIO +vCluster +Fluentbit +Dex +Falco +Kibana +Fluentd +Libvirt +kubenet +Metadata Syncer +Kubernetes NFS Subdir External Provisioner +Splunk +Kubevious +Citrix +Disable +Hotfixes +Hotfix +Layer 2 +L2 +HashiCorp +airgap +Airgap +jq +Caddy +jumpbox +Oras +oras +Netplan +Astra Trident +Astra +FSx +liveness +Autosupport +Validator +bool +OVA +Okta +Keycloak +Simple Mail Transfer Protocol +NIC +Nutanix +autoscale +initContainer +ethernet +hostname +Entra +README +Tailscale +Tailnet +Sanitization +sanitization +Filepath +untrusted +goroutines +renegotiation +renegotiations +wpa_supplicant +Earthfile +ubuntu +tgz +Podman +filepath +Datagram +swapfile +Unassign +vApp +PCGs +vCPU +vCPUs +ORAS +preload +preloaded +eXtented +Palette eXtented Kubernetes +Palette eXtented Kubernetes - Edge +timeframe +Luet +rhel +Ubuntu +RHEL +repave +airgap +Crossplane +traceroute +Kubecost