Skip to content

Commit

Permalink
[version-4-0] backport document Crossplane PR 2713 (#2791)
Browse files Browse the repository at this point in the history
* docs: document Crossplane PAD-82 (#2713)

* docs: create new automation section, crossplane page, crossplane aws guide

* docs: add crossplane azure guide

* docs: add gcp crossplane guide, fix indentation

* docs: move palette cli under automation, fix broken links

* docs: fix more palette cli broken links

* docs: fix more broken links

* docs: add redirects, add crossplane to vale, apply vale and Tyler suggestions

* docs: address suggestions

* Apply suggestions from code review

Co-authored-by: Yuliia Horbenko <[email protected]>

* docs: apply more suggestions from review

* docs: more review suggestions

* docs: fix palette cli link

---------

Co-authored-by: Yuliia Horbenko <[email protected]>

* docs: fix broken links

---------

Co-authored-by: Yuliia Horbenko <[email protected]>
  • Loading branch information
caroldelwing and yuliiiah authored May 8, 2024
1 parent 180724f commit 61737be
Show file tree
Hide file tree
Showing 30 changed files with 1,944 additions and 132 deletions.
3 changes: 3 additions & 0 deletions docs/docs-content/automation/_category_.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
{
"position": 210
}
29 changes: 29 additions & 0 deletions docs/docs-content/automation/automation.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
---
sidebar_label: "Automation"
title: "Automation"
description: "Learn how to use automation tools with Palette and Palette VerteX."
hide_table_of_contents: false
sidebar_position: 0
sidebar_custom_props:
icon: "terminal"
tags: ["automation"]
---

This section contains documentation and guides for tools essential in automating tasks with Palette:

- Palette CLI - Enables users to interact with Palette and create and manage resources, such as projects, virtual
clusters, and more. The Palette CLI is the primary method for installing a
[self-hosted Palette](../enterprise-version/enterprise-version.md) instance and deploying a
[Private Cloud Gateway](../clusters/pcg/pcg.md).

- Palette Terraform Provider - Allows users to use [Terraform](https://www.terraform.io) for automating the deployment
and management of Palette resources such as cluster profiles, cloud accounts, clusters, and more.

- Palette Crossplane Provider - It allows users to use [Crossplane](https://docs.crossplane.io/v1.15/) to provision and
manage Palette resources through standard Kubernetes APIs.

## Resources

- [Palette CLI](./palette-cli/palette-cli.md)
- [Palette Terraform Provider](./terraform/terraform.md)
- [Palette Crossplane Provider](./crossplane/crossplane.md)
3 changes: 3 additions & 0 deletions docs/docs-content/automation/crossplane/_category_.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
{
"position": 30
}
39 changes: 39 additions & 0 deletions docs/docs-content/automation/crossplane/crossplane.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
---
sidebar_label: "Crossplane"
title: "Crossplane"
description: "Learn how to use Crossplane with Palette and Palette VerteX."
hide_table_of_contents: false
sidebar_position: 0
tags: ["crossplane", "iac", "automation", "infrastructure as code"]
---

Palette supports the open-source Cloud Native Computing Foundation (CNCF) project
[Crossplane](https://www.crossplane.io/). Crossplane transforms Kubernetes clusters into universal control planes,
extending the Kubernetes API and enabling infrastructure resource provisioning and management across major
infrastructure providers.

These resources, called
[Managed Resources (MR)](https://docs.crossplane.io/latest/concepts/managed-resources/#managed-resource-fields) within
the Crossplane environment, are essentially Kubernetes Custom Resource Definitions (CRDs) that represent infrastructure
resources as native Kubernetes objects. Because they are Kubernetes objects, you can interact with them using standard
commands like `kubectl describe`. When users create a managed resource, Crossplane interacts with the infrastructure
provider API to request the creation of the resource within the provider's environment.

## Palette Provider

You can use the Palette Crossplane Provider to interact with the Palette API and create resources declaratively.

Refer to the [Palette Provider](https://marketplace.upbound.io/providers/crossplane-contrib/provider-palette/v0.12.0)
page for a complete list of managed resources and examples.

## Get Started

For examples of end-to-end cluster provisioning with Crossplane, review the following guides:

- [Deploy an AWS IaaS Cluster with Crossplane](./deploy-cluster-aws-crossplane.md)
- [Deploy an Azure IaaS Cluster with Crossplane](./deploy-cluster-azure-crossplane.md)
- [Deploy a GCP IaaS Cluster with Crossplane](./deploy-cluster-gcp-crossplane.md)

## Resources

- [Crossplane Documentation](https://docs.crossplane.io/latest/)

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Original file line number Diff line number Diff line change
Expand Up @@ -46,8 +46,8 @@ The `ec` subcommand installs a self-hosted Palette Enterprise Cluster (EC) in yo
is conducted through an interactive wizard that guides you through the various install configurations available. A local
kind cluster is created to facilitate creating the Enterprise cluster in the target environment. You do not need to
install kind or any other dependencies. The CLI includes all the required dependencies to stand up the kind cluster. You
can use the `ec` command to install a [self-hosted Palette](../enterprise-version/install-palette/install-palette.md)
instance or a self-hosted [VerteX](../vertex/install-palette-vertex/install-palette-vertex.md) instance.
can use the `ec` command to install a [self-hosted Palette](../../enterprise-version/install-palette/install-palette.md)
instance or a self-hosted [VerteX](../../vertex/install-palette-vertex/install-palette-vertex.md) instance.

The `ec` subcommand exposes the following subcommand.

Expand Down Expand Up @@ -115,7 +115,7 @@ palette ec install --config-file ~/.palette/ec/ec-20230807143205/ec.yaml --updat

### Custom Value File

You can customize the [Cluster Profile](../glossary-all.md#cluster-profile) that makes up the Enterprise Cluster by
You can customize the [Cluster Profile](../../glossary-all.md#cluster-profile) that makes up the Enterprise Cluster by
providing a custom **values.yaml** file that contains values for the various Cluster Profile layers that make up the
Enterprise Cluster. The custom **values.yaml** file is used to customize the Enterprise Cluster to your specific needs.
This is an advanced feature and should only be used by advanced users or when explicitly instructed by our support team.
Expand Down Expand Up @@ -279,7 +279,7 @@ dependencies to stand up the kind cluster.
:::warning

Use the latest version of the Palette CLI that matches the version of your Palette or Palette VerteX instance. You can
find the newest version of the Palette CLI on the [Downloads](../spectro-downloads.md#palette-cli) page.
find the newest version of the Palette CLI on the [Downloads](../../spectro-downloads.md#palette-cli) page.

:::

Expand Down Expand Up @@ -307,7 +307,7 @@ by the `install` subcommand.
:::warning

Use the latest version of the Palette CLI that matches the version of your Palette or Palette VerteX instance. You can
find the newest version of the Palette CLI on the [Downloads](../spectro-downloads.md#palette-cli) page.
find the newest version of the Palette CLI on the [Downloads](../../spectro-downloads.md#palette-cli) page.

:::

Expand Down Expand Up @@ -351,11 +351,11 @@ palette pcg install --config-file <path-to-config-file> --update-passwords

### Supported Environments

| Platform | Install Guide |
| --------- | ----------------------------------------------- |
| MAAS | [Link](../clusters/pcg/deploy-pcg/maas.md) |
| OpenStack | [Link](../clusters/pcg/deploy-pcg/openstack.md) |
| VMware | [Link](../clusters/pcg/deploy-pcg/vmware.md) |
| Platform | Install Guide |
| --------- | -------------------------------------------------- |
| MAAS | [Link](../../clusters/pcg/deploy-pcg/maas.md) |
| OpenStack | [Link](../../clusters/pcg/deploy-pcg/openstack.md) |
| VMware | [Link](../../clusters/pcg/deploy-pcg/vmware.md) |

## PDE

Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
{
"position": 10
}
Original file line number Diff line number Diff line change
Expand Up @@ -15,13 +15,13 @@ Use the following steps to install and set up the Palette CLI.

- A Palette account. Click [here](https://console.spectrocloud.com/) to create a Palette account.

- A Palette API key. Refer to the [Create API Key](../user-management/authentication/api-key/create-api-key.md)
- A Palette API key. Refer to the [Create API Key](../../user-management/authentication/api-key/create-api-key.md)
reference page to learn how to create an API key.

## Download and Setup

1. Visit the [Downloads](../spectro-downloads.md#palette-cli) page and download the Palette CLI by using the URL
provided.
1. Visit the [Downloads](../../spectro-downloads.md#palette-cli) page and download the Palette CLI by using the URL
provided for your operating system.

2. Open up a terminal session on your local system.

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,6 @@ sidebar_label: "Palette CLI"
title: "Palette CLI"
description: "Learn how to use the Palette CLI."
hide_table_of_contents: false
sidebar_custom_props:
icon: "terminal"
tags: ["palette-cli"]
---

Expand Down
3 changes: 3 additions & 0 deletions docs/docs-content/automation/terraform/_category_.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
{
"position": 20
}
53 changes: 53 additions & 0 deletions docs/docs-content/automation/terraform/terraform.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,53 @@
---
sidebar_label: "Terraform"
title: "Terraform"
description: "Learn how to use Terraform with Palette and Palette VerteX."
hide_table_of_contents: false
sidebar_position: 0
tags: ["terraform"]
---

Palette supports the Infrastructure as Code (IaC) software tool, [Terraform](https://www.terraform.io/), to provide
consistent CLI workflow support to multiple cloud providers.

Terraform organizes cloud APIs into declarative configuration files, allowing users to define their infrastructure as
code. Terraform validates configuration files and checks whether the execution plan for a configuration matches
expectations before deployment, and applies the changes to managed resources accordingly.

## Spectro Cloud Provider

Palette and Palette VerteX API can be used with the Spectro Cloud Terraform provider. The provider is available in the
HashiCorp Terraform registry as the
[Spectro Cloud Provider](https://registry.terraform.io/providers/spectrocloud/spectrocloud/latest/docs).

### Release Notes

Information about the latest changes in the Spectro Cloud provider can be found in the
[release notes](https://github.com/spectrocloud/terraform-provider-spectrocloud/releases).

### Provider Documentation

Detailed documentation on supported data sources and resources are available in the Terraform Spectro Cloud Provider
[documentation](https://registry.terraform.io/providers/spectrocloud/spectrocloud/latest/docs) page.

### Modules

Two modules are available to help you provision Spectro Cloud infrastructure resources.

- [Palette Edge Native Terraform Module](https://registry.terraform.io/modules/spectrocloud/edge/spectrocloud/latest)
- [Spectro Cloud Terraform Modules](https://registry.terraform.io/modules/spectrocloud/modules/spectrocloud/latest)

Refer to the
[Spectro Cloud Modules](https://github.com/spectrocloud/terraform-spectrocloud-modules#module-resources--requirements)
README file to learn more about supported provider versions and other essential requirements.

## Get Started

For an end-to-end cluster provisioning example, refer to the
[Deploy a Cluster](../../clusters/public-cloud/deploy-k8s-cluster.md) tutorial and the
[end-to-end examples](https://github.com/spectrocloud/terraform-provider-spectrocloud/tree/main/examples/e2e) available
in the Spectro Cloud Terraform Provider GitHub repository.

## Resources

- [Terraform Documentation](https://developer.hashicorp.com/terraform/docs)
6 changes: 3 additions & 3 deletions docs/docs-content/clusters/pcg/deploy-app-pcg.md
Original file line number Diff line number Diff line change
Expand Up @@ -69,7 +69,7 @@ To complete this tutorial, you will need the following prerequisites in place.
:::

- Ensure the following software is installed and available on your Linux machine.
- [Palette CLI](../../palette-cli/install-palette-cli.md).
- [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).
Expand All @@ -78,7 +78,7 @@ 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`](../../palette-cli/commands.md#login) command.
[`palette login`](../../automation/palette-cli/commands.md#login) command.

In your terminal, execute the following command.

Expand Down Expand Up @@ -240,7 +240,7 @@ 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](../../palette-cli/commands.md#pcg) page for further information about the command.
[Palette CLI PCG Command](../../automation/palette-cli/commands.md#pcg) page for further information about the command.

<Video title="palette-pcg-config-only" src="/videos/palette-pcg.mp4"></Video>

Expand Down
9 changes: 5 additions & 4 deletions docs/docs-content/clusters/pcg/deploy-pcg/maas.md
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ carefully review the [Prerequisites](#prerequisites) section.
:::

- Download and install the Palette CLI from the [Downloads](../../../spectro-downloads.md#palette-cli) page. Refer to
the [Palette CLI Install](../../../palette-cli/install-palette-cli.md) guide to learn more.
the [Palette CLI Install](../../../automation/palette-cli/install-palette-cli.md) guide to learn more.

The following system requirements must be met to install a PCG in MAAS:

Expand Down Expand Up @@ -121,7 +121,7 @@ is not required for the DNS records to be accessible from the internet.

The `CloudAccount.apiKey` and `Mgmt.apiKey` values in the **pcg.yaml** file are encrypted and cannot be manually
updated. To change these values, use the `palette pcg install --update-passwords` command. Refer to the
[PCG command](../../../palette-cli/commands.md#pcg) reference page for more information.
[PCG command](../../../automation/palette-cli/commands.md#pcg) reference page for more information.

:::

Expand Down Expand Up @@ -215,8 +215,9 @@ is not required for the DNS records to be accessible from the internet.
You cannot modify a deployed PCG cluster. If you need to make changes to the PCG cluster, you must first delete the
cluster and redeploy it. We recommend you save your PCG configuration file for future use. Use the `--config-only`
flag to save the configuration file without deploying the PCG cluster. Refer to the
[Generate a Configuration File](../../../palette-cli/commands.md#pcg) section to learn more. For additional
assistance, visit our [Customer Support](https://spectrocloud.atlassian.net/servicedesk/customer/portals) portal.
[Generate a Configuration File](../../../automation/palette-cli/commands.md#pcg) section to learn more. For
additional assistance, visit our [Customer Support](https://spectrocloud.atlassian.net/servicedesk/customer/portals)
portal.

:::

Expand Down
9 changes: 5 additions & 4 deletions docs/docs-content/clusters/pcg/deploy-pcg/openstack.md
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ installation, carefully review the [Prerequisites](#prerequisites) section.
:::

- Download and install the Palette CLI from the [Downloads](../../../spectro-downloads.md#palette-cli) page. Refer to
the [Palette CLI Install](../../../palette-cli/install-palette-cli.md) guide to learn more.
the [Palette CLI Install](../../../automation/palette-cli/install-palette-cli.md) guide to learn more.

The following system requirements must be met to install a PCG in OpenStack:

Expand Down Expand Up @@ -340,7 +340,7 @@ The following permissions are required to deploy a PCG to OpenStack and for Pale

The `CloudAccount.apiKey` and `Mgmt.apiKey` values in the **pcg.yaml** file are encrypted and cannot be manually
updated. To change these values, use the `palette pcg install --update-passwords` command. Refer to the
[PCG command](../../../palette-cli/commands.md#pcg) reference page for more information.
[PCG command](../../../automation/palette-cli/commands.md#pcg) reference page for more information.

:::

Expand Down Expand Up @@ -448,8 +448,9 @@ The following permissions are required to deploy a PCG to OpenStack and for Pale
You cannot modify a deployed PCG cluster. If you need to make changes to the PCG cluster, you must first delete the
cluster and redeploy it. We recommend you save your PCG configuration file for future use. Use the `--config-only`
flag to save the configuration file without deploying the PCG cluster. Refer to the
[Generate a Configuration File](../../../palette-cli/commands.md#pcg) section to learn more. For additional
assistance, visit our [Customer Support](https://spectrocloud.atlassian.net/servicedesk/customer/portals) portal.
[Generate a Configuration File](../../../automation/palette-cli/commands.md#pcg) section to learn more. For
additional assistance, visit our [Customer Support](https://spectrocloud.atlassian.net/servicedesk/customer/portals)
portal.

:::

Expand Down
9 changes: 5 additions & 4 deletions docs/docs-content/clusters/pcg/deploy-pcg/vmware.md
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@ environment, then you already have all the required permissions and roles. Proce
:::

- Download and install the Palette CLI from the [Downloads](../../../spectro-downloads.md#palette-cli) page. Refer to
the [Palette CLI Install](../../../palette-cli/install-palette-cli.md) guide to learn more.
the [Palette CLI Install](../../../automation/palette-cli/install-palette-cli.md) guide to learn more.

The following system requirements must be met to install a PCG in VMware vSphere:

Expand Down Expand Up @@ -374,7 +374,7 @@ The following requirements apply to tags:

The `CloudAccount.apiKey` and `Mgmt.apiKey` values in the **pcg.yaml** file are encrypted and cannot be manually
updated. To change these values, use the `palette pcg install --update-passwords` command. Refer to the
[PCG command](../../../palette-cli/commands.md#pcg) reference page for more information.
[PCG command](../../../automation/palette-cli/commands.md#pcg) reference page for more information.

:::

Expand Down Expand Up @@ -530,8 +530,9 @@ The following requirements apply to tags:
You cannot modify a deployed PCG cluster. If you need to make changes to the PCG cluster, you must first delete the
cluster and redeploy it. We recommend you save your PCG configuration file for future use. Use the `--config-only`
flag to save the configuration file without deploying the PCG cluster. Refer to the
[Generate a Configuration File](../../../palette-cli/commands.md#pcg) section to learn more. For additional
assistance, visit our [Customer Support](https://spectrocloud.atlassian.net/servicedesk/customer/portals) portal.
[Generate a Configuration File](../../../automation/palette-cli/commands.md#pcg) section to learn more. For
additional assistance, visit our [Customer Support](https://spectrocloud.atlassian.net/servicedesk/customer/portals)
portal.

:::

Expand Down
2 changes: 1 addition & 1 deletion docs/docs-content/clusters/pcg/pcg.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ tags: ["pcg"]

A Private Cloud Gateway (PCG) is a Palette infrastructure support component that enables the communication between
Palette and a private cloud or private data center environment. The PCG is typically deployed into the private cloud
environments through the [Palette CLI](../../palette-cli/install-palette-cli.md).
environments through the [Palette CLI](../../automation/palette-cli/install-palette-cli.md).

A PCG is necessary in private cloud environments where Palette does not have direct network access to the environment
where workload clusters are deployed to. When the PCG is installed, it registers itself with a Palette instance and
Expand Down
4 changes: 2 additions & 2 deletions docs/docs-content/devx/devx.md
Original file line number Diff line number Diff line change
Expand Up @@ -73,8 +73,8 @@ programmatically using PDE.

:::tip

Check out the Palette CLI [install guide](../palette-cli/install-palette-cli.md) for more information on how to install
and configure the CLI.
Check out the Palette CLI [install guide](../automation/palette-cli/install-palette-cli.md) for more information on how
to install and configure the CLI.

:::

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ Complete the [Environment Setup](./vmware-vsphere-airgap-instructions.md) steps
host.

- Palette CLI installed and available. Refer to the Palette CLI
[Install](../../../../palette-cli/install-palette-cli.md#download-and-setup) page for guidance.
[Install](../../../../automation/palette-cli/install-palette-cli.md#download-and-setup) page for guidance.

- Review the required VMware vSphere [permissions](../vmware-system-requirements.md). Ensure you have created the proper
custom roles and zone tags.
Expand Down Expand Up @@ -117,7 +117,7 @@ Use the following steps to install Palette.

5. Open a terminal window and invoke the Palette CLI by using the `ec` command to install the enterprise cluster. The
interactive CLI prompts you for configuration details and then initiates the installation. For more information
about the `ec` subcommand, refer to [Palette Commands](../../../../palette-cli/commands.md).
about the `ec` subcommand, refer to [Palette Commands](../../../../automation/palette-cli/commands.md).

```bash
palette ec install
Expand Down Expand Up @@ -386,7 +386,7 @@ teams.

## Resources

- [Palette CLI](../../../../palette-cli/install-palette-cli.md#download-and-setup)
- [Palette CLI](../../../../automation/palette-cli/install-palette-cli.md#download-and-setup)

- [VMware System Requirements](../vmware-system-requirements.md)

Expand Down
Loading

0 comments on commit 61737be

Please sign in to comment.