Skip to content

Commit

Permalink
📖 Improve documentation pages metadata
Browse files Browse the repository at this point in the history
  • Loading branch information
lucasrattz authored Oct 31, 2024
1 parent ca3504a commit ae836a6
Show file tree
Hide file tree
Showing 30 changed files with 58 additions and 59 deletions.
4 changes: 2 additions & 2 deletions docs/caph/01-getting-started/01-introduction.md
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
---
title: Introduction
metatitle: "Cluster API for Hetzner: Compatibility and Quickstart Guide"
metatitle: "What is the Cluster API Provider Hetzner and Compatible Versions"
sidebar: Introduction
description: Hetzner's Cluster API makes setting up Kubernetes clusters easy on cloud or bare-metal. Compatible with CAPI v1.7.x, v1.8.x, and various Kubernetes versions.
description: Cluster API Provider Hetzner automates the lifecycle and provisioning of Kubernetes clusters on cloud or bare metal.
---

Welcome to the official documentation for the Cluster API Provider Hetzner (CAPH). If you are new to it, you can keep reading the Getting Started section, the Quickstart guide will walk you through your first cluster setup.
Expand Down
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
---
title: Prerequisites
metatitle: Understanding the Cluster API for Hetzner Cluster Creation
metatitle: Tools Needed to Work With Cluster API Provider Hetzner
sidebar: Prerequisites
description: Simplify provisioning, upgrading, and operating Kubernetes clusters on Hetzner infrastructure with Cluster API for a production-ready setup.
description: Automate provisioning, upgrading, and operating Kubernetes clusters on Hetzner infrastructure with Cluster API for a production-ready setup.
---

This guide goes through all the necessary steps to create a cluster on Hetzner infrastructure (on HCloud).
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
title: Management cluster setup
metatitle: Cluster API Management Cluster Setup for Hetzner
sidebar: Management cluster setup
description: Set up a management cluster with HCloud or Hetzner servers, including projects, credentials, SSH keys, and Kubernetes cluster API components for deployment.
description: Bootstrap a cluster, install and configure all the necessary components to make it function as a Cluster API management cluster.
---

You have two options: either create a pure HCloud cluster or a hybrid cluster with Hetzner dedicated (bare metal) servers. For a full list of flavors, please check out the [release page](https://github.com/syself/cluster-api-provider-hetzner/releases). In the quickstart guide, we will go with the cluster creation on a pure Hetzner Cloud server.
Expand Down
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
---
title: Creating the workload cluster
metatitle: Configuring Kubernetes Workload Clusters with CAPH Management
metatitle: Creating Workload Clusters on Hetzner
sidebar: Creating the workload cluster
description: Generate a Kubernetes workload cluster with essential components for a secure deployment, including CNI, CCM, and optional CSI integration.
description: Provision a Kubernetes workload cluster with essential components for a secure deployment, including CNI, CCM, and optional CSI integration.
---

## Generating the cluster.yaml
Expand Down
4 changes: 2 additions & 2 deletions docs/caph/01-getting-started/02-quickstart/04-next-steps.md
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
---
title: Next steps
metatitle: "Managing CAPH Cluster Components: Installation Steps"
metatitle: "Move Your Management Cluster to the Cloud"
sidebar: Next steps
description: Install components with the latest version using clusterctl command, then switch back to the management cluster and move objects into the new cluster easily.
description: How to move the Cluster API components out of your bootstrap cluster, and into the newly created cluster on Hetzner.
---

## Switching to the workload cluster
Expand Down
4 changes: 2 additions & 2 deletions docs/caph/01-getting-started/03-preparation.md
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
---
title: Hetzner project preparation
metatitle: Prepare Hetzner Cloud Project for Cluster API Provider Hetzner
metatitle: Preparing Your Hetzner Cloud Project for Working With CAPH
sidebar: Hetzner project preparation
description: Learn how to enhance your security by generating SSH keys, setting up HCloud, and creating secrets for Hetzner and HCloud + Robot API integration.
description: Learn how to do the necessary steps for creating your first workload cluster on Hetzner with Cluster API.
---

There are several tasks that have to be completed before a workload cluster can be created.
Expand Down
2 changes: 1 addition & 1 deletion docs/caph/02-topics/01-managing-ssh-keys.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
title: SSH key management
metatitle: Secure SSH Key Management for Remote Access in Hetzner with Cluster API
sidebar: SSH key management
description: Securely access Kubernetes nodes on Hetzner cloud by managing SSH keys in CAPH. Create keys, troubleshoot, and ensure remote communication with ease.
description: Details about SSH keys and its importance with regards to clusters managed by CAPH.
---

This section provides details about SSH keys and its importance with regards to CAPH.
Expand Down
4 changes: 2 additions & 2 deletions docs/caph/02-topics/02-HA-setup.md
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
---
title: High availability setup
metatitle: Setting Up High Availability Cluster Configuration with Cluster API for Hetzner
metatitle: Setting Up High Availability Cluster Configuration with Cluster API Provider Hetzner
sidebar: High availability setup
description: Implement high availability setup for HA Cluster API Components with clusterctl CLI for enhanced reliability and scalability in Kubernetes.
description: How to achieve high availability in clusters managed by CAPH.
---

## HA Cluster API Components
Expand Down
2 changes: 1 addition & 1 deletion docs/caph/02-topics/03-node-image.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
---
title: Node Images
metatitle: Custom Node Images for Kubernetes with Cluster API for Hetzner
metatitle: Custom Node Images for Nodes in Clusters Managed by CAPH
sidebar: Node Images
description: Build custom Node Images for CAPH using Packer on Hetzner Cloud. Create, configure, and snapshot servers with all necessary components for Kubernetes.
---
Expand Down
4 changes: 2 additions & 2 deletions docs/caph/02-topics/04-upgrading-caph.md
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
---
title: Upgrading the Kubernetes Cluster API Provider Hetzner
metatitle: Upgrade Process for Kubernetes in Hetzner with CAPH
metatitle: Upgrade Process for Kubernetes Clusters with CAPH
sidebar: Upgrading the Kubernetes Cluster API Provider Hetzner
description: Upgrade CAPH smoothly with clusterctl. Check, apply upgrade, monitor pods post-upgrade for seamless operati
description: How to upgrade Cluster API and Cluster API Provider Hetzner.
---

This guide explains how to upgrade Cluster API and Cluster API Provider Hetzner (aka CAPH). Additionally, it also references [upgrading your kubernetes version](#external-cluster-api-reference) as part of this guide.
Expand Down
8 changes: 4 additions & 4 deletions docs/caph/02-topics/05-baremetal/01-introduction.md
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
---
title: Hetzner baremetal
metatitle: "Using Bare Metal Servers with Hetzner: Cluster API Configuration"
sidebar: Hetzner baremetal
description: Explore creating a Hetzner bare metal cluster with custom remediation options for control planes and worker nodes.
metatitle: "Introduction to Using Hetzner Bare Metal Servers as Nodes with CAPH"
sidebar: Hetzner bare metal
description: Explanation of the Hetzner offerings, and the available cluster flavors with bare metal servers.
---

Hetzner have two offerings primarily:
Expand All @@ -12,7 +12,7 @@ Hetzner have two offerings primarily:

In this guide, we will focus on creating a cluster from baremetal servers.

## Flavors of Hetzner Baremetal
## Flavors of Hetzner Bare Metal

Now, there are different ways you can use baremetal servers, you can use them as controlplanes or as worker nodes or both. Based on that we have created some templates and those templates are released as flavors in GitHub releases.

Expand Down
6 changes: 3 additions & 3 deletions docs/caph/02-topics/05-baremetal/02-management-cluster.md
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
---
title: Management cluster setup for baremetal
metatitle: Baremetal Cluster Setup Using Cluster API Management Infrastructure for Hetzner
title: Management cluster setup for bare metal
metatitle: Configure Your Management Cluster for Handling Hetzner Bare Metal Servers
sidebar: Management cluster setup for baremetal
description: Learn how to manage a Hetzner BareMetal server in your Kubernetes cluster efficiently without compromising control over the physical infrastructure.
description: Learn how to provision a management cluster ready to manage bare metal servers.
---

## Creating a bootstrap cluster
Expand Down
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
---
title: Creating a workload cluster with baremetal servers
metatitle: Building Kubernetes Workload Cluster with Bare Metal Servers
sidebar: Creating a workload cluster with baremetal servers
description: Effortlessly generate and apply Kubernetes clusters on Hetzner cloud and verify the setup for an efficient workload cluster deployment.
title: Creating a workload cluster with bare metal servers
metatitle: Provisioning a Kubernetes Workload Cluster with Bare Metal Servers
sidebar: Creating a workload cluster with bare metal servers
description: Create workload clusters on Hetzner using bare metal servers as nodes in an automated way, using CAPI custom resources.
---

## Creating Workload Cluster
Expand Down
2 changes: 1 addition & 1 deletion docs/caph/02-topics/05-baremetal/04-constant-hostnames.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
title: Using constant hostnames
metatitle: Enable Fixed Hostnames for Bare Metal Servers in Hetzner Clusters
sidebar: Using constant hostnames
description: Utilize fixed node names for bare metal servers with storage integrations in your cloud server cluster configuration for seamless operations.
description: Utilize fixed node names for bare metal servers, useful for local storage persistence across reprovisionings.
---

## Constant hostnames for baremetal servers
Expand Down
4 changes: 2 additions & 2 deletions docs/caph/02-topics/06-advanced/01-csr-controller.md
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
---
title: CSR controller
metatitle: Managing CSR Controller in Kubernetes Clusters
metatitle: Managing CSR Controller in Clusters Managed by CAPH
sidebar: CSR controller
description: Explore advanced Certificate Signing Request (CSR) controller topics for efficient management insights.
description: Explore advanced Certificate Signing Request options like using a custom CSR controller in Kubernetes clusters managed by CAPH.
---

For the secure operation of Kubernetes, it is necessary to sign the kubelet serving certificates. By default, these are self-signed by kubeadm. By using the kubelet flag `rotate-server-certificates: "true"`, which can be found in initConfiguration/joinConfiguration.nodeRegistration.kubeletExtraArgs, the kubelet will do a certificate signing request (CSR) to the certificates API of Kubernetes.
Expand Down
2 changes: 1 addition & 1 deletion docs/caph/02-topics/06-advanced/02-rate-limits.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
title: Rate limits
metatitle: Rate Limits for HCloudMachine Reconciliation Controller
sidebar: Rate limits
description: Prevent reconciliation of a specific object for a set time after hitting rate limits during reconciliation to ensure seamless operations for other objects.
description: Information about Hetzner Cloud rate limits, and what to expect when you are affected.
---

Hetzner Cloud and Hetzner Robot both implement rate limits. As a brute-force method, we implemented some logic that prevents the controller from reconciling a specific object for some defined time period if a rate limit was hit during reconcilement of that object. We set the condition on true, that a rate limit was hit. Of course, this only affects one object so that another `HCloudMachine` still reconciles normally, even though one hits the rate limit. There is a chance that it will also hit the rate limit (which is defined per function so that it does not necessarily need to happen). In that case, the controller also stops reconciling this object for some time.
4 changes: 2 additions & 2 deletions docs/caph/02-topics/06-advanced/03-multi-tenancy.md
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
---
title: Multi tenancy
metatitle: Supporting Multi-Tenancy with Cluster-Based Labeling
metatitle: Multi tenancy, Running Multiple Clusters in The Same Hetzner Project
sidebar: Multi tenancy
description: Supporting multi-tenancy is made easy with our resource labeling system, ensuring efficient handling of resources for each cluster in your environment.
description: Information about multi tenancy, i.e. running multiple Kubernetes clusters in the same Hetzner cloud project.
---

We support multi-tenancy. You can start multiple clusters in one Hetzner project at the same time. As the resources all have a label with the cluster name, the controller is able to handle them perfectly.
2 changes: 1 addition & 1 deletion docs/caph/02-topics/06-advanced/04-custom-templates-mhc.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
title: Machine Health Checks with Custom Remediation Template
metatitle: Custom Remediation Template for Machine Health Checks
sidebar: Machine Health Checks with Custom Remediation Template
description: Learn how to configure Machine Health Checks and Bare Metal Server Remediation Templates for optimal server performance in your Kubernetes cluster.
description: Learn about the default Machine Health Checks and Bare Metal Server Remediation Templates, and how to configure them.
---

Cluster API allows to [configure Machine Health Checks](https://cluster-api.sigs.k8s.io/tasks/automated-machine-management/healthchecking.html) with custom remediation strategies. This is helpful for our bare metal servers. If the health checks give an outcome that one server cannot be reached, the default strategy would be to delete it. In that case, it would need to be provisioned again. This takes, of course, longer for bare metal servers than for virtual cloud servers. Therefore, we want to try to avoid this with the help of our `HetznerBareMetalRemediationController` and `HCloudRemediationController`. Instead of deleting the object and deprovisioning it, we first try to reboot it and see whether this helps. If it solves the problem, we save a lot of time that is required for re-provisioning it.
Expand Down
4 changes: 2 additions & 2 deletions docs/caph/03-reference/01-introduction.md
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
---
title: Object Reference
metatitle: Naming Conventions for Servers and Machines
metatitle: Naming Conventions for Custom Resources
sidebar: Object Reference
description: "Automated server controllers: HCloudMachineController creates HCloud servers; HetznerBareMetalMachineController uses Hetzner bare metal hosts for deployments."
description: "Overview of the naming conventions of objects specific to the CAPH integration."
---

In this object reference, we introduce all objects that are specific for this provider integration. The naming of objects, servers, machines, etc. can be confusing. Without claiming to be consistent throughout these docs, we would like to give an overview of how we name things here.
Expand Down
5 changes: 2 additions & 3 deletions docs/caph/03-reference/02-hetzner-cluster.md
Original file line number Diff line number Diff line change
@@ -1,8 +1,7 @@
---
title: HetznerCluster
metatitle: "HetznerCluster: Cloud-init & CCM Configurations"
sidebar: HetznerCluster
description: Efficiently provision bare metal machines with HetznerCluster using cloud-init, SSH keys, and custom control plane endpoints for seamless cluster management.
metatitle: HetznerCluster Object Reference
description: In HetznerCluster you can define everything related to the general components of the cluster as well as those properties, which are valid cluster-wide.
---

In HetznerCluster you can define everything related to the general components of the cluster as well as those properties, which are valid cluster-wide.
Expand Down
4 changes: 2 additions & 2 deletions docs/caph/03-reference/03-hcloud-machine-template.md
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
---
title: HCloudMachineTemplate
metatitle: HCloudMachineController for Hetzner Cloud Servers Setup
metatitle: HCloudMachineController Object Reference
sidebar: HCloudMachineTemplate
description: Effortlessly manage HCloudMachines with HCloudMachineController. Set SSH keys, specify placement group, and configure IPv4/IPv6 settings seamlessly.
description: In HCloudMachineTemplate you can define all important properties for HCloudMachines, which are reconciled by the `HCloudMachineController`, responsible for creating and deleting servers in Hetzner Cloud.
---

In `HCloudMachineTemplate` you can define all important properties for `HCloudMachines`. `HCloudMachines` are reconciled by the `HCloudMachineController`, which creates and deletes servers in Hetzner Cloud.
Expand Down
4 changes: 2 additions & 2 deletions docs/caph/03-reference/04-hcloud-remediation-template.md
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
---
title: HCloudRemediationTemplate
metatitle: "Remediation Strategy Types: Specification and Categories"
metatitle: "RemediationStrategyTypes Object Reference"
sidebar: HCloudRemediationTemplate
description: Discover various remediation strategies and learn about different types to enhance your security posture. Explore how to handle security incidents effectively.
description: RemediationStrategyTypes define remediation strategy, timeouts and retries.
---

### Overview of HCloudMachineTemplate.Spec
Expand Down
4 changes: 2 additions & 2 deletions docs/caph/03-reference/05-hetzner-bare-metal-host.md
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
---
title: HetznerBareMetalHost
metatitle: Managing Hetzner Servers Across Multiple Clusters
metatitle: HetznerBareMetalHost Object Reference
sidebar: HetznerBareMetalHost
description: Explore the versatility of HetznerBareMetalHost object for managing multiple clusters efficiently with unique storage identifiers and maintenance mode options.
description: The HetznerBareMetalHost has a one-to-one relationship to a Hetzner dedicated server. It's used to make bare metal servers available to your clusters.
---

The `HetznerBareMetalHost` object has a one-to-one relationship to a Hetzner dedicated server. Its ID is specified in the specs. The host object does not belong to a certain `HetznerCluster`, but can be used by multiple clusters. This is useful, as one host object per server is enough and you can easily see whether a host is used by one of your clusters or not.
Expand Down
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
---
title: HetznerBareMetalMachineTemplate
metatitle: Hetzner Bare Metal Machine Configuration Template for Cluster API
metatitle: HetznerBareMetalMachineTemplate Object Reference
sidebar: HetznerBareMetalMachineTemplate
description: Effortlessly define SSH specs, select hosts, and customize images with HetznerBareMetalMachineController to create custom Hetzner Bare Metal machine templates.
description: In HetznerBareMetalMachineTemplate you can define all important properties for the HetznerBareMetalMachines.
---

In `HetznerBareMetalMachineTemplate` you can define all important properties for the `HetznerBareMetalMachines`. `HetznerBareMetalMachines` are reconciled by the `HetznerBareMetalMachineController`, which DOES NOT create or delete Hetzner dedicated machines. Instead, it uses the inventory of `HetznerBareMetalHosts`. These hosts correspond to already existing bare metal servers, which get provisioned when selected by a `HetznerBareMetalMachine`.
Expand Down
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
---
title: HetznerBareMetalRemediationTemplate
metatitle: Custom Remediation Methods for Hetzner Bare Metal Machines
metatitle: HetznerBareMetalRemediationTemplate Object Reference
sidebar: HetznerBareMetalRemediationTemplate
description: Customize the way Hetzner Bare Metal Machines are handled with the remediation template. Define method, retry limit, and more. No URLs in meta description.
description: With this remediation, you can define a custom method for how Machine Health Checks treats unhealthy HetznerBareMetalMachine objects.
---

In `HetznerBareMetalRemediationTemplate` you can define all important properties for `HetznerBareMetalRemediations`. With this remediation, you can define a custom method for the manner of how Machine Health Checks treat the unhealthy `object`s - `HetznerBareMetalMachines` in this case. For more information about how to use remediations, see [Advanced CAPH](/docs/caph/02-topics/06-advanced/04-custom-templates-mhc.md). `HetznerBareMetalRemediations` are reconciled by the `HetznerBareMetalRemediationController`, which reconciles the remediatons and triggers the requested type of remediation on the relevant `HetznerBareMetalMachine`.
Expand Down
4 changes: 2 additions & 2 deletions docs/caph/03-reference/08-annotations.md
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
---
title: Annotations
metatitle: Constant Hostname Configuration in Cluster API Provider Hetzner
metatitle: Available Annotations For CAPH objects
sidebar: Annotations
description: Optimize resource cluster management with constant bare-metal hostname annotations in Cluster-API and HetznerBareMetalMachine. Elevate configuration efficiency!
description: Full list of annotation you can set to instruct the Syself CAPH Controller to modify its behavior.
---

You can set [Kubernetes Annotations](https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations/) to instruct the Syself CAPH Controller to modify its behavior.
Expand Down
2 changes: 1 addition & 1 deletion docs/caph/04-developers/01-development-guide.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
title: Developing Cluster API Provider Hetzner
metatitle: Developing Cluster API Provider Hetzner with Tilt
sidebar: Developing Cluster API Provider Hetzner
description: Learn how to streamline Hetzner project development with clusterctl, helm, and kind. Use Tilt for a faster workflow and manage resources efficiently.
description: Learn how to set up an environment to develop the Cluster API Provider Hetzner, using Tilt and kind.
---

Developing our provider is quite easy. Please follow the steps mentioned below:
Expand Down
4 changes: 2 additions & 2 deletions docs/caph/04-developers/02-tilt.md
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
---
title: Reference of Tilt
metatitle: "CAPH Integration: Tilt Configurations and Setup Reference"
metatitle: "Reference For Available Tilt Configuration Options"
sidebar: Reference of Tilt
description: Manage CAPI clusters efficiently with Tilt. Boost productivity with Hetzner integration. Develop seamlessly.
description: Full list of available Tilt configuration values and their description.
---

```
Expand Down
Loading

0 comments on commit ae836a6

Please sign in to comment.