1
0
Fork 0
mirror of https://github.com/arangodb/kube-arangodb.git synced 2024-12-14 11:57:37 +00:00

Improve documentation rendering for GitHub Pages (#1558)

This commit is contained in:
Nikita Vaniasin 2024-01-08 12:28:31 +01:00 committed by GitHub
parent 833d890ea5
commit 2815e7186d
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
94 changed files with 571 additions and 142 deletions

View file

@ -1,6 +1,7 @@
# Change Log # Change Log
## [master](https://github.com/arangodb/kube-arangodb/tree/master) (N/A) ## [master](https://github.com/arangodb/kube-arangodb/tree/master) (N/A)
- (Documentation) Improve documentation rendering for GitHub Pages
## [1.2.36](https://github.com/arangodb/kube-arangodb/tree/1.2.36) (2024-01-08) ## [1.2.36](https://github.com/arangodb/kube-arangodb/tree/1.2.36) (2024-01-08)
- (Documentation) Improvements and fixes for rendered documentation (GH pages) - (Documentation) Improvements and fixes for rendered documentation (GH pages)

View file

@ -2,17 +2,29 @@
[![Docker Pulls](https://img.shields.io/docker/pulls/arangodb/kube-arangodb.svg)](https://hub.docker.com/r/arangodb/kube-arangodb/) [![Docker Pulls](https://img.shields.io/docker/pulls/arangodb/kube-arangodb.svg)](https://hub.docker.com/r/arangodb/kube-arangodb/)
ArangoDB Kubernetes Operator helps to run ArangoDB deployments The ArangoDB Kubernetes Operator (`kube-arangodb`) is a set of operators
on Kubernetes clusters. that you deploy in your Kubernetes cluster to:
- Manage deployments of the [ArangoDB database](https://arangodb.com/)
- Manage backups
- Provide `PersistentVolumes` on local storage of your nodes for optimal storage performance.
- Configure ArangoDB Datacenter-to-Datacenter Replication
Each of these uses involves a different custom resource:
- Use an [ArangoDeployment resource](docs/deployment-resource-reference.md) to create an ArangoDB database deployment.
- Use an [ArangoMember resource](docs/api/ArangoMember.V1.md) to observe and adjust individual deployment members.
- Use an [ArangoBackup](docs/backup-resource.md) and [ArangoBackupPolicy](docs/backuppolicy-resource.md) resources to create ArangoDB backups.
- Use an [ArangoLocalStorage resource](docs/storage-resource.md) to provide local `PersistentVolumes` for optimal I/O performance.
- Use an [ArangoDeploymentReplication resource](docs/deployment-replication-resource-reference.md) to configure ArangoDB Datacenter-to-Datacenter Replication.
Continue with [Using the ArangoDB Kubernetes Operator](docs/using-the-operator.md)
to learn how to install the ArangoDB Kubernetes operator and create your first deployment.
To get started, follow the Installation instructions below and/or
read the [tutorial](docs/using-the-operator.md).
## State ## State
The ArangoDB Kubernetes Operator is Production ready. The ArangoDB Kubernetes Operator is Production ready.
[Documentation](docs/README.md) [Documentation](https://arangodb.github.io/kube-arangodb/)
### Limits ### Limits

View file

@ -1,56 +0,0 @@
# ArangoDB Kubernetes Operator
- [Intro](#intro)
- [Using the ArangoDB Kubernetes Operator](using-the-operator.md)
- [Architecture overview](design/README.md)
- [Features description and usage](features/README.md)
- [Custom Resources API Reference](api/README.md)
- [Operator Metrics & Alerts](generated/metrics/README.md)
- [Operator Actions](generated/actions.md)
- [Authentication](authentication.md)
- [Custom resources overview](crds.md):
- [ArangoDeployment](deployment-resource-reference.md)
- [ArangoDeploymentReplication](deployment-replication-resource-reference.md)
- [ArangoLocalStorage](storage-resource.md)
- [Backup](backup-resource.md)
- [BackupPolicy](backuppolicy-resource.md)
- [ArangoMLExtension](mlextension-resource.md)
- [Configuration and secrets](configuration-and-secrets.md)
- [Configuring your driver for ArangoDB access](driver-configuration.md)
- [Using Helm](helm.md)
- [Collecting metrics](metrics.md)
- [Services & Load balancer](services-and-load-balancer.md)
- [Storage configuration](storage.md)
- [Secure connections (TLS)](tls.md)
- [Upgrading ArangoDB version](upgrading.md)
- [Scaling your ArangoDB deployment](scaling.md)
- [Draining the Kubernetes nodes](draining-nodes.md)
- Known issues (TBD)
- [Troubleshooting](troubleshooting.md)
- [How-to ...](how-to/README.md)
## Intro
The ArangoDB Kubernetes Operator (`kube-arangodb`) is a set of operators
that you deploy in your Kubernetes cluster to:
- Manage deployments of the ArangoDB database
- Manage backups
- Provide `PersistentVolumes` on local storage of your nodes for optimal storage performance.
- Configure ArangoDB Datacenter-to-Datacenter Replication
Each of these uses involves a different custom resource.
- Use an [ArangoDeployment resource](deployment-resource-reference.md) to create an ArangoDB database deployment.
- Use an [ArangoMember resource](api/ArangoMember.V1.md) to observe and adjust individual deployment members.
- Use an [ArangoBackup](backup-resource.md) and [ArangoBackupPolicy](backuppolicy-resource.md) resources to create ArangoDB backups.
- Use an [ArangoLocalStorage resource](storage-resource.md) to provide local `PersistentVolumes` for optimal I/O performance.
- Use an [ArangoDeploymentReplication resource](deployment-replication-resource-reference.md) to configure ArangoDB Datacenter-to-Datacenter Replication.
- Use an [ArangoMLExtension resource](mlextension-resource.md) to configure [ArangoML](https://github.com/arangoml) for your deployment.
Continue with [Using the ArangoDB Kubernetes Operator](using-the-operator.md)
to learn how to install the ArangoDB Kubernetes operator and create
your first deployment.
For more information about the production readiness state, please refer to the
[main README file](https://github.com/arangodb/kube-arangodb#production-readiness-state).

View file

@ -1,3 +1,9 @@
---
layout: page
parent: CRD reference
title: ArangoBackup V1
---
# API Reference for ArangoBackup V1 # API Reference for ArangoBackup V1
## Spec ## Spec

View file

@ -1,3 +1,9 @@
---
layout: page
parent: CRD reference
title: ArangoBackupPolicy V1
---
# API Reference for ArangoBackupPolicy V1 # API Reference for ArangoBackupPolicy V1
## Spec ## Spec

View file

@ -1,3 +1,9 @@
---
layout: page
parent: CRD reference
title: ArangoDeployment V1
---
# API Reference for ArangoDeployment V1 # API Reference for ArangoDeployment V1
## Spec ## Spec

View file

@ -1,3 +1,9 @@
---
layout: page
parent: CRD reference
title: ArangoDeploymentReplication V1
---
# API Reference for ArangoDeploymentReplication V1 # API Reference for ArangoDeploymentReplication V1
## Spec ## Spec

View file

@ -1,3 +1,9 @@
---
layout: page
parent: CRD reference
title: ArangoLocalStorage V1Alpha
---
# API Reference for ArangoLocalStorage V1Alpha # API Reference for ArangoLocalStorage V1Alpha
## Spec ## Spec

View file

@ -1,3 +1,9 @@
---
layout: page
parent: CRD reference
title: ArangoMLBatchJob V1Alpha1
---
# API Reference for ArangoMLBatchJob V1Alpha1 # API Reference for ArangoMLBatchJob V1Alpha1
## Spec ## Spec

View file

@ -1,3 +1,9 @@
---
layout: page
parent: CRD reference
title: ArangoMLCronJob V1Alpha1
---
# API Reference for ArangoMLCronJob V1Alpha1 # API Reference for ArangoMLCronJob V1Alpha1
## Spec ## Spec

View file

@ -1,3 +1,9 @@
---
layout: page
parent: CRD reference
title: ArangoMLExtension V1Alpha1
---
# API Reference for ArangoMLExtension V1Alpha1 # API Reference for ArangoMLExtension V1Alpha1
## Spec ## Spec

View file

@ -1,3 +1,9 @@
---
layout: page
parent: CRD reference
title: ArangoMLStorage V1Alpha1
---
# API Reference for ArangoMLStorage V1Alpha1 # API Reference for ArangoMLStorage V1Alpha1
## Spec ## Spec

View file

@ -1,3 +1,9 @@
---
layout: page
parent: CRD reference
title: ArangoMember V1
---
# API Reference for ArangoMember V1 # API Reference for ArangoMember V1
## Spec ## Spec

View file

@ -1,13 +1,6 @@
# Custom Resources API Reference ---
layout: page
- [ArangoBackup.V1](./ArangoBackup.V1.md) title: CRD reference
- [ArangoBackupPolicy.V1](./ArangoBackupPolicy.V1.md) has_children: true
- [ArangoDeployment.V1](./ArangoDeployment.V1.md) nav_order: 3
- [ArangoDeploymentReplication.V1](./ArangoDeploymentReplication.V1.md) ---
- [ArangoLocalStorage.V1Alpha](./ArangoLocalStorage.V1Alpha.md)
- [ArangoMLBatchJob.V1Alpha1](./ArangoMLBatchJob.V1Alpha1.md)
- [ArangoMLCronJob.V1Alpha1](./ArangoMLCronJob.V1Alpha1.md)
- [ArangoMLExtension.V1Alpha1](./ArangoMLExtension.V1Alpha1.md)
- [ArangoMLStorage.V1Alpha1](./ArangoMLStorage.V1Alpha1.md)
- [ArangoMember.V1](./ArangoMember.V1.md)

View file

@ -1,3 +1,9 @@
---
layout: page
parent: Custom resources overview
title: ArangoBackup
---
# ArangoBackup Custom Resource # ArangoBackup Custom Resource
[Full CustomResourceDefinition reference ->](./api/ArangoBackup.V1.md) [Full CustomResourceDefinition reference ->](./api/ArangoBackup.V1.md)

View file

@ -1,3 +1,9 @@
---
layout: page
parent: Custom resources overview
title: ArangoBackupPolicy
---
# ArangoBackupPolicy Custom Resource # ArangoBackupPolicy Custom Resource
[Full CustomResourceDefinition reference ->](./api/ArangoBackupPolicy.V1.md) [Full CustomResourceDefinition reference ->](./api/ArangoBackupPolicy.V1.md)

View file

@ -1,3 +1,11 @@
---
layout: page
has_children: true
title: Custom resources overview
nav_order: 4
has_toc: false
---
# Custom resources overview # Custom resources overview
Main CRDs: Main CRDs:

View file

@ -1,3 +1,9 @@
---
layout: page
nav_order: 20
title: Operator dashboard
---
# Deployment Operator Dashboards # Deployment Operator Dashboards
### Dashboard UI now is deprecated and will be removed in next minor version ### Dashboard UI now is deprecated and will be removed in next minor version

View file

@ -1,3 +1,9 @@
---
layout: page
parent: Custom resources overview
title: ArangoDeploymentReplication
---
# ArangoDeploymentReplication Custom Resource # ArangoDeploymentReplication Custom Resource
#### Enterprise Edition only #### Enterprise Edition only
@ -90,10 +96,12 @@ running in Kubernetes:
2. Extract the access package from the source ArangoDB cluster. 2. Extract the access package from the source ArangoDB cluster.
<!-- {% raw %} -->
```bash ```bash
kubectl get secret src-accesspackage --template='{{index .data "accessPackage.yaml"}}' | \ kubectl get secret src-accesspackage --template='{{index .data "accessPackage.yaml"}}' | \
base64 -D > accessPackage.yaml base64 -D > accessPackage.yaml
``` ```
<!-- {% endraw %} -->
3. Configure the source DNS names. 3. Configure the source DNS names.
@ -232,9 +240,12 @@ The process for creating and using an access package for authentication at the s
- Wait for the `ArangoDeployment` operator to create a `Secret` named `my-access-package`. - Wait for the `ArangoDeployment` operator to create a `Secret` named `my-access-package`.
- Extract the access package from the Kubernetes source cluster using: - Extract the access package from the Kubernetes source cluster using:
<!-- {% raw %} -->
```bash ```bash
kubectl get secret my-access-package --template='{{index .data "accessPackage.yaml"}}' | base64 -D > accessPackage.yaml kubectl get secret my-access-package --template='{{index .data "accessPackage.yaml"}}' | base64 -D > accessPackage.yaml
``` ```
<!-- {% endraw %} -->
- Insert the secrets found in the access package in the Kubernetes destination cluster using: - Insert the secrets found in the access package in the Kubernetes destination cluster using:

View file

@ -1,3 +1,9 @@
---
layout: page
parent: Custom resources overview
title: ArangoDeployment
---
# ArangoDeployment Custom Resource Overview # ArangoDeployment Custom Resource Overview
[Full CustomResourceDefinition reference ->](./api/ArangoDeployment.V1.md) [Full CustomResourceDefinition reference ->](./api/ArangoDeployment.V1.md)

View file

@ -1,12 +1,7 @@
# ArangoDB operator architecture overview ---
layout: page
title: Design overview
has_children: true
nav_order: 5
---
- [Operator API](./api.md)
- [Backups](./backup.md)
- [Constraints for high-availability](./constraints.md)
- [ArangoDB Exporter](./exporter.md)
- [Health](./health.md)
- [Lifecycle hooks and Finalizers](./lifecycle_hooks_and_finalizers.md)
- [Pod eviction and replacement](./pod_eviction_and_replacement.md)
- [Kubernetes Pod name versus cluster ID](./pod_name_versus_cluster_id.md)
- [Resources & labels](./resources_and_labels.md)
- [Topology awareness](./topology_awareness.md)

View file

@ -1,3 +1,9 @@
---
layout: page
title: Operator API
parent: Design overview
---
# Operator API # Operator API
A running operator exposes HTTP and gRPC API listeners to allow retrieving and setting some configuration values programmatically. A running operator exposes HTTP and gRPC API listeners to allow retrieving and setting some configuration values programmatically.

View file

@ -1,3 +1,9 @@
---
layout: page
title: Backups
parent: Design overview
---
# ArangoBackup # ArangoBackup
## Lifetime ## Lifetime

View file

@ -1,3 +1,9 @@
---
layout: page
title: Constraints
parent: Design overview
---
# Constraints # Constraints
The ArangoDB operator tries to honor various constraints to support high availability of The ArangoDB operator tries to honor various constraints to support high availability of

View file

@ -1,3 +1,9 @@
---
layout: page
title: ArangoDB Metrics
parent: Design overview
---
# ArangoDB Exporter for Prometheus # ArangoDB Exporter for Prometheus
This exporter exposes the statistics provided by a specific ArangoDB instance This exporter exposes the statistics provided by a specific ArangoDB instance

View file

@ -1,3 +1,9 @@
---
layout: page
title: Health checks
parent: Design overview
---
# Health checks # Health checks
## Liveness Probe ## Liveness Probe

View file

@ -1,3 +1,9 @@
---
layout: page
title: Lifecycle hooks and Finalizers
parent: Design overview
---
# Lifecycle hooks & Finalizers # Lifecycle hooks & Finalizers
The ArangoDB operator expects full control of the `Pods` and `PersistentVolumeClaims` it creates. The ArangoDB operator expects full control of the `Pods` and `PersistentVolumeClaims` it creates.

View file

@ -1,3 +1,9 @@
---
layout: page
title: Pod eviction and replacement
parent: Design overview
---
# Pod Eviction & Replacement # Pod Eviction & Replacement
This chapter specifies the rules around evicting pods from nodes and This chapter specifies the rules around evicting pods from nodes and

View file

@ -1,3 +1,9 @@
---
layout: page
title: Resource names
parent: Design overview
---
# Kubernetes Pod name versus cluster ID # Kubernetes Pod name versus cluster ID
All resources being created will get a name that contains All resources being created will get a name that contains

View file

@ -1,3 +1,9 @@
---
layout: page
title: Kubernetes resources
parent: Design overview
---
# Resources and labels # Resources and labels
The ArangoDB operator will create the following Kubernetes resources for specified The ArangoDB operator will create the following Kubernetes resources for specified

View file

@ -1,3 +1,9 @@
---
layout: page
title: Topology awareness
parent: Design overview
---
# Topology awareness # Topology awareness
## Table of contents ## Table of contents

View file

@ -85,9 +85,11 @@ set automatically.
Then fetch the CA secret using the following command (or use a Kubernetes client library to fetch it): Then fetch the CA secret using the following command (or use a Kubernetes client library to fetch it):
<!-- {% raw %} -->
```bash ```bash
kubectl get secret -n <namespace> <secret-name> --template='{{index .data "ca.crt"}}' | base64 -D > ca.crt kubectl get secret -n <namespace> <secret-name> --template='{{index .data "ca.crt"}}' | base64 -D > ca.crt
``` ```
<!-- {% endraw %} -->
This results in a file called `ca.crt` containing a PEM encoded, x509 CA certificate. This results in a file called `ca.crt` containing a PEM encoded, x509 CA certificate.

View file

@ -1,3 +1,9 @@
---
layout: page
nav_order: 10
title: List of all features
---
## List of Community Edition features ## List of Community Edition features
| Feature | Operator Version | Introduced | ArangoDB Version | ArangoDB Edition | State | Enabled | Flag | Remarks | | Feature | Operator Version | Introduced | ArangoDB Version | ArangoDB Edition | State | Enabled | Flag | Remarks |

View file

@ -1,3 +1,9 @@
---
layout: page
title: Restore defaults from last accepted state of deployment
parent: List of all features
---
# Restore defaults from last accepted state of deployment # Restore defaults from last accepted state of deployment
## Overview ## Overview

View file

@ -1,3 +1,9 @@
---
layout: page
title: Operator Ephemeral Volumes
parent: List of all features
---
# Operator Ephemeral Volumes # Operator Ephemeral Volumes
## Overview ## Overview

View file

@ -1,3 +1,9 @@
---
layout: page
title: Failover Leader service
parent: List of all features
---
# Failover Leader service # Failover Leader service
## Overview ## Overview

View file

@ -1,3 +1,9 @@
---
layout: page
title: Rebalancer
parent: List of all features
---
# ArangoDB Rebalancer Support # ArangoDB Rebalancer Support
## How to use ## How to use

View file

@ -1,3 +1,9 @@
---
layout: page
title: Rebalancer v2
parent: List of all features
---
# ArangoDB Rebalancer V2 Support # ArangoDB Rebalancer V2 Support
## Overview ## Overview

View file

@ -1,3 +1,9 @@
---
layout: page
title: Force rebuild out-synced Shards with broken Merkle Tree
parent: List of all features
---
# Force rebuild out-synced Shards with broken Merkle Tree # Force rebuild out-synced Shards with broken Merkle Tree
## Overview ## Overview

View file

@ -1,3 +1,9 @@
---
layout: page
title: Secured containers
parent: List of all features
---
# Secured Containers # Secured Containers
## Overview ## Overview

View file

@ -1,3 +1,9 @@
---
layout: page
title: List of Plan Actions
nav_order: 11
---
# ArangoDB Operator Actions # ArangoDB Operator Actions
## List ## List

View file

@ -1,3 +1,11 @@
---
layout: page
title: List of available metrics
nav_order: 9
has_children: true
has_toc: false
---
# ArangoDB Operator Metrics # ArangoDB Operator Metrics
## List of the Operator metrics ## List of the Operator metrics

View file

@ -1,3 +1,9 @@
---
layout: page
title: arangodb_operator_agency_cache_health_present
parent: List of available metrics
---
# arangodb_operator_agency_cache_health_present (Gauge) # arangodb_operator_agency_cache_health_present (Gauge)
## Description ## Description

View file

@ -1,3 +1,9 @@
---
layout: page
title: arangodb_operator_agency_cache_healthy
parent: List of available metrics
---
# arangodb_operator_agency_cache_healthy (Gauge) # arangodb_operator_agency_cache_healthy (Gauge)
## Description ## Description

View file

@ -1,3 +1,9 @@
---
layout: page
title: arangodb_operator_agency_cache_leaders
parent: List of available metrics
---
# arangodb_operator_agency_cache_leaders (Gauge) # arangodb_operator_agency_cache_leaders (Gauge)
## Description ## Description

View file

@ -1,3 +1,9 @@
---
layout: page
title: arangodb_operator_agency_cache_member_commit_offset
parent: List of available metrics
---
# arangodb_operator_agency_cache_member_commit_offset (Gauge) # arangodb_operator_agency_cache_member_commit_offset (Gauge)
## Description ## Description

View file

@ -1,3 +1,9 @@
---
layout: page
title: arangodb_operator_agency_cache_member_serving
parent: List of available metrics
---
# arangodb_operator_agency_cache_member_serving (Gauge) # arangodb_operator_agency_cache_member_serving (Gauge)
## Description ## Description

View file

@ -1,3 +1,9 @@
---
layout: page
title: arangodb_operator_agency_cache_present
parent: List of available metrics
---
# arangodb_operator_agency_cache_present (Gauge) # arangodb_operator_agency_cache_present (Gauge)
## Description ## Description

View file

@ -1,3 +1,9 @@
---
layout: page
title: arangodb_operator_agency_cache_serving
parent: List of available metrics
---
# arangodb_operator_agency_cache_serving (Gauge) # arangodb_operator_agency_cache_serving (Gauge)
## Description ## Description

View file

@ -1,3 +1,9 @@
---
layout: page
title: arangodb_operator_agency_errors
parent: List of available metrics
---
# arangodb_operator_agency_errors (Counter) # arangodb_operator_agency_errors (Counter)
## Description ## Description

View file

@ -1,3 +1,9 @@
---
layout: page
title: arangodb_operator_agency_fetches
parent: List of available metrics
---
# arangodb_operator_agency_fetches (Counter) # arangodb_operator_agency_fetches (Counter)
## Description ## Description

View file

@ -1,3 +1,9 @@
---
layout: page
title: arangodb_operator_agency_index
parent: List of available metrics
---
# arangodb_operator_agency_index (Gauge) # arangodb_operator_agency_index (Gauge)
## Description ## Description

View file

@ -1,3 +1,9 @@
---
layout: page
title: arangodb_operator_engine_assertions
parent: List of available metrics
---
# arangodb_operator_engine_assertions (Counter) # arangodb_operator_engine_assertions (Counter)
## Description ## Description

View file

@ -1,3 +1,9 @@
---
layout: page
title: arangodb_operator_engine_ops_alerts
parent: List of available metrics
---
# arangodb_operator_engine_ops_alerts (Counter) # arangodb_operator_engine_ops_alerts (Counter)
## Description ## Description

View file

@ -1,3 +1,9 @@
---
layout: page
title: arangodb_operator_engine_panics_recovered
parent: List of available metrics
---
# arangodb_operator_engine_panics_recovered (Counter) # arangodb_operator_engine_panics_recovered (Counter)
## Description ## Description

View file

@ -1,3 +1,9 @@
---
layout: page
title: arangodb_operator_kubernetes_client_request_errors
parent: List of available metrics
---
# arangodb_operator_kubernetes_client_request_errors (Counter) # arangodb_operator_kubernetes_client_request_errors (Counter)
## Description ## Description

View file

@ -1,3 +1,9 @@
---
layout: page
title: arangodb_operator_kubernetes_client_requests
parent: List of available metrics
---
# arangodb_operator_kubernetes_client_requests (Counter) # arangodb_operator_kubernetes_client_requests (Counter)
## Description ## Description

View file

@ -1,13 +0,0 @@
# arangodb_operator_kubernetes_events_created (Counter)
## Description
Counter for created events
## Labels
| Label | Description |
|:---------:|:---------------------|
| namespace | Deployment Namespace |
| name | Deployment Name |
| eventType | Event Type |

View file

@ -1,3 +1,9 @@
---
layout: page
title: arangodb_operator_members_unexpected_container_exit_codes
parent: List of available metrics
---
# arangodb_operator_members_unexpected_container_exit_codes (Counter) # arangodb_operator_members_unexpected_container_exit_codes (Counter)
## Description ## Description

View file

@ -1,3 +1,9 @@
---
layout: page
title: arangodb_operator_rebalancer_enabled
parent: List of available metrics
---
# arangodb_operator_rebalancer_enabled (Gauge) # arangodb_operator_rebalancer_enabled (Gauge)
## Description ## Description

View file

@ -1,3 +1,9 @@
---
layout: page
title: arangodb_operator_rebalancer_moves_current
parent: List of available metrics
---
# arangodb_operator_rebalancer_moves_current (Gauge) # arangodb_operator_rebalancer_moves_current (Gauge)
## Description ## Description

View file

@ -1,3 +1,9 @@
---
layout: page
title: arangodb_operator_rebalancer_moves_failed
parent: List of available metrics
---
# arangodb_operator_rebalancer_moves_failed (Counter) # arangodb_operator_rebalancer_moves_failed (Counter)
## Description ## Description

View file

@ -1,3 +1,9 @@
---
layout: page
title: arangodb_operator_rebalancer_moves_generated
parent: List of available metrics
---
# arangodb_operator_rebalancer_moves_generated (Counter) # arangodb_operator_rebalancer_moves_generated (Counter)
## Description ## Description

View file

@ -1,3 +1,9 @@
---
layout: page
title: arangodb_operator_rebalancer_moves_succeeded
parent: List of available metrics
---
# arangodb_operator_rebalancer_moves_succeeded (Counter) # arangodb_operator_rebalancer_moves_succeeded (Counter)
## Description ## Description

View file

@ -1,3 +1,9 @@
---
layout: page
title: arangodb_operator_resources_arangodeployment_accepted
parent: List of available metrics
---
# arangodb_operator_resources_arangodeployment_accepted (Gauge) # arangodb_operator_resources_arangodeployment_accepted (Gauge)
## Description ## Description

View file

@ -1,3 +1,9 @@
---
layout: page
title: arangodb_operator_resources_arangodeployment_immutable_errors
parent: List of available metrics
---
# arangodb_operator_resources_arangodeployment_immutable_errors (Counter) # arangodb_operator_resources_arangodeployment_immutable_errors (Counter)
## Description ## Description

View file

@ -1,3 +1,9 @@
---
layout: page
title: arangodb_operator_resources_arangodeployment_propagated
parent: List of available metrics
---
# arangodb_operator_resources_arangodeployment_propagated (Gauge) # arangodb_operator_resources_arangodeployment_propagated (Gauge)
## Description ## Description

View file

@ -1,3 +1,9 @@
---
layout: page
title: arangodb_operator_resources_arangodeployment_status_restores
parent: List of available metrics
---
# arangodb_operator_resources_arangodeployment_status_restores (Counter) # arangodb_operator_resources_arangodeployment_status_restores (Counter)
## Description ## Description

View file

@ -1,3 +1,9 @@
---
layout: page
title: arangodb_operator_resources_arangodeployment_uptodate
parent: List of available metrics
---
# arangodb_operator_resources_arangodeployment_uptodate (Gauge) # arangodb_operator_resources_arangodeployment_uptodate (Gauge)
## Description ## Description

View file

@ -1,3 +1,9 @@
---
layout: page
title: arangodb_operator_resources_arangodeployment_validation_errors
parent: List of available metrics
---
# arangodb_operator_resources_arangodeployment_validation_errors (Counter) # arangodb_operator_resources_arangodeployment_validation_errors (Counter)
## Description ## Description

View file

@ -1,3 +1,9 @@
---
layout: page
title: arangodb_operator_resources_arangodeploymentreplication_active
parent: List of available metrics
---
# arangodb_operator_resources_arangodeploymentreplication_active (Gauge) # arangodb_operator_resources_arangodeploymentreplication_active (Gauge)
## Description ## Description

View file

@ -1,3 +1,9 @@
---
layout: page
title: arangodb_operator_resources_arangodeploymentreplication_failed
parent: List of available metrics
---
# arangodb_operator_resources_arangodeploymentreplication_failed (Gauge) # arangodb_operator_resources_arangodeploymentreplication_failed (Gauge)
## Description ## Description

View file

@ -1,3 +1,9 @@
---
layout: page
title: Usage instructions (Helm)
nav_order: 2
---
# Using the ArangoDB Kubernetes Operator with Helm # Using the ArangoDB Kubernetes Operator with Helm
[`Helm`](https://www.helm.sh/) is a package manager for Kubernetes, which enables [`Helm`](https://www.helm.sh/) is a package manager for Kubernetes, which enables

View file

@ -1,13 +1,6 @@
## How-to... ---
layout: page
- [Set a license key](./set_license.md) title: How to ...
- [Pass additional params to operator](additional_configuration.md) nav_order: 6
- [Set a root user password](./set_root_user_password.md) has_children: true
- [Change architecture / enable ARM support](arch_change.md) ---
- [Configure timezone for cluster](configuring_tz.md)
- [Collect debug data for support case](debugging.md)
- [Configure logging](logging.md)
- [Enable maintenance mode](maintenance.md)
- [Override detected total memory](override_detected_memory.md)
- [Manually recover cluster if you still have volumes with data](recovery.md)
- [Rotate Pod](rotate-pod.md)

View file

@ -1,3 +1,9 @@
---
layout: page
title: How to pass additional params to operator
parent: How to ...
---
# How to pass additional params to operator # How to pass additional params to operator
It is possible to additionally fine-tune operator behavior by It is possible to additionally fine-tune operator behavior by

View file

@ -1,3 +1,9 @@
---
layout: page
title: How to change architecture
parent: How to ...
---
# How to change architecture / enable ARM support # How to change architecture / enable ARM support
Currently `AMD64` is a default architecture in the operator Currently `AMD64` is a default architecture in the operator

View file

@ -1,3 +1,9 @@
---
layout: page
title: How to configure timezone
parent: How to ...
---
# How to configure timezone # How to configure timezone
To set timezone for cluster components, mount the required timezone into container To set timezone for cluster components, mount the required timezone into container

View file

@ -1,3 +1,9 @@
---
layout: page
title: How to collect debug data
parent: How to ...
---
# How to collect debug data # How to collect debug data
## Agency dump ## Agency dump

View file

@ -1,3 +1,9 @@
---
layout: page
title: How to configure logging
parent: How to ...
---
# How to configure logging # How to configure logging
## Operator logging ## Operator logging

View file

@ -1,3 +1,9 @@
---
layout: page
title: How to use maintenance mode
parent: How to ...
---
# How to use maintenance mode # How to use maintenance mode
## ArangoDeployment maintenance ## ArangoDeployment maintenance

View file

@ -1,3 +1,9 @@
---
layout: page
title: How to override detected total memory
parent: How to ...
---
# How to override detected total memory # How to override detected total memory
## overrideDetectedTotalMemory ## overrideDetectedTotalMemory

View file

@ -1,3 +1,9 @@
---
layout: page
title: How to recover a destroyed deployment
parent: How to ...
---
# How to recover a destroyed deployment # How to recover a destroyed deployment
## Overview ## Overview

View file

@ -1,3 +1,9 @@
---
layout: page
title: How to rotate Pod
parent: How to ...
---
# How to rotate Pod # How to rotate Pod
Rotation of ArangoDeployment Pods can be triggered by Pod deletion or by annotation (safe way). Rotation of ArangoDeployment Pods can be triggered by Pod deletion or by annotation (safe way).

View file

@ -1,3 +1,9 @@
---
layout: page
title: How to set a license key
parent: How to ...
---
# How to set a license key # How to set a license key
After deploying the ArangoDB Kubernetes operator, use the command below to deploy your [license key](https://docs.arangodb.com/stable/operations/administration/license-management/) After deploying the ArangoDB Kubernetes operator, use the command below to deploy your [license key](https://docs.arangodb.com/stable/operations/administration/license-management/)

View file

@ -1,3 +1,9 @@
---
layout: page
title: How to set root user password
parent: How to ...
---
# How to set root user password # How to set root user password
1) Create a kubernetes [Secret](https://kubernetes.io/docs/tasks/configmap-secret/managing-secret-using-kubectl/) with root password: 1) Create a kubernetes [Secret](https://kubernetes.io/docs/tasks/configmap-secret/managing-secret-using-kubectl/) with root password:

4
docs/index.html Normal file
View file

@ -0,0 +1,4 @@
<!DOCTYPE html>
<meta charset="utf-8">
<title>Redirecting...</title>
<meta http-equiv="refresh" content="0; URL=/kube-arangodb/">

View file

@ -1,3 +1,8 @@
---
layout: page
nav_exclude: true
---
# Amazon AWS Remarks # Amazon AWS Remarks
## Elastic Block Storage ## Elastic Block Storage

View file

@ -1,3 +1,9 @@
---
layout: page
parent: Custom resources overview
title: ArangoLocalStorage
---
# ArangoLocalStorage Custom Resource # ArangoLocalStorage Custom Resource
[Full CustomResourceDefinition reference ->](./api/ArangoLocalStorage.V1Alpha.md) [Full CustomResourceDefinition reference ->](./api/ArangoLocalStorage.V1Alpha.md)

View file

@ -17,9 +17,11 @@ This process differs per operating system.
To do so, you first have to fetch the CA certificate from its Kubernetes To do so, you first have to fetch the CA certificate from its Kubernetes
secret. secret.
<!-- {% raw %} -->
```bash ```bash
kubectl get secret <deploy-name>-ca --template='{{index .data "ca.crt"}}' | base64 -D > ca.crt kubectl get secret <deploy-name>-ca --template='{{index .data "ca.crt"}}' | base64 -D > ca.crt
``` ```
<!-- {% endraw %} -->
### Windows ### Windows

View file

@ -1,3 +1,9 @@
---
layout: page
title: Usage instructions
nav_order: 1
---
# Using the ArangoDB Kubernetes Operator # Using the ArangoDB Kubernetes Operator
## Installation ## Installation

7
go.sum
View file

@ -196,7 +196,6 @@ github.com/go-kit/log v0.1.0/go.mod h1:zbhenjAZHb184qTLMA9ZjW7ThYL0H2mk7Q6pNt4vb
github.com/go-logfmt/logfmt v0.3.0/go.mod h1:Qt1PoO58o5twSAckw1HlFXLmHsOX5/0LbT9GBnD5lWE= github.com/go-logfmt/logfmt v0.3.0/go.mod h1:Qt1PoO58o5twSAckw1HlFXLmHsOX5/0LbT9GBnD5lWE=
github.com/go-logfmt/logfmt v0.4.0/go.mod h1:3RMwSq7FuexP4Kalkev3ejPJsZTpXXBr9+V4qmtdjCk= github.com/go-logfmt/logfmt v0.4.0/go.mod h1:3RMwSq7FuexP4Kalkev3ejPJsZTpXXBr9+V4qmtdjCk=
github.com/go-logfmt/logfmt v0.5.0/go.mod h1:wCYkCAKZfumFQihp8CzCvQ3paCTfi41vtzG1KdI/P7A= github.com/go-logfmt/logfmt v0.5.0/go.mod h1:wCYkCAKZfumFQihp8CzCvQ3paCTfi41vtzG1KdI/P7A=
github.com/go-logfmt/logfmt v0.5.1/go.mod h1:WYhtIu8zTZfxdn5+rREduYbwxfcBr/Vr6KEVveWlfTs=
github.com/go-logr/logr v0.1.0/go.mod h1:ixOQHD9gLJUVQQ2ZOR7zLEifBX6tGkNJF4QyIY7sIas= github.com/go-logr/logr v0.1.0/go.mod h1:ixOQHD9gLJUVQQ2ZOR7zLEifBX6tGkNJF4QyIY7sIas=
github.com/go-logr/logr v0.2.0/go.mod h1:z6/tIYblkpsD+a4lm/fGIIU9mZ+XfAiaFtq7xTgseGU= github.com/go-logr/logr v0.2.0/go.mod h1:z6/tIYblkpsD+a4lm/fGIIU9mZ+XfAiaFtq7xTgseGU=
github.com/go-logr/logr v1.2.0/go.mod h1:jdQByPbusPIv2/zmleS9BjJVeZ6kBagPoEUsqbVz/1A= github.com/go-logr/logr v1.2.0/go.mod h1:jdQByPbusPIv2/zmleS9BjJVeZ6kBagPoEUsqbVz/1A=
@ -624,8 +623,6 @@ golang.org/x/crypto v0.0.0-20210921155107-089bfa567519/go.mod h1:GvvjBRRGRdwPK5y
golang.org/x/crypto v0.0.0-20211215153901-e495a2d5b3d3/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4= golang.org/x/crypto v0.0.0-20211215153901-e495a2d5b3d3/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4=
golang.org/x/crypto v0.0.0-20220131195533-30dcbda58838/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4= golang.org/x/crypto v0.0.0-20220131195533-30dcbda58838/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4=
golang.org/x/crypto v0.0.0-20220315160706-3147a52a75dd/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4= golang.org/x/crypto v0.0.0-20220315160706-3147a52a75dd/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4=
golang.org/x/crypto v0.14.0 h1:wBqGXzWJW6m1XrIKlAH0Hs1JJ7+9KBwnIO8v66Q9cHc=
golang.org/x/crypto v0.14.0/go.mod h1:MVFd36DqK4CsrnJYDkBA3VC4m2GkXAM0PvzMCn4JQf4=
golang.org/x/crypto v0.17.0 h1:r8bRNjWL3GshPW3gkd+RpvzWrZAwPS49OmTGZ/uhM4k= golang.org/x/crypto v0.17.0 h1:r8bRNjWL3GshPW3gkd+RpvzWrZAwPS49OmTGZ/uhM4k=
golang.org/x/crypto v0.17.0/go.mod h1:gCAAfMLgwOJRpTjQ2zCCt2OcSfYMTeZVSRtQlPC7Nq4= golang.org/x/crypto v0.17.0/go.mod h1:gCAAfMLgwOJRpTjQ2zCCt2OcSfYMTeZVSRtQlPC7Nq4=
golang.org/x/exp v0.0.0-20190121172915-509febef88a4/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= golang.org/x/exp v0.0.0-20190121172915-509febef88a4/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA=
@ -836,8 +833,6 @@ golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9sn
golang.org/x/term v0.0.0-20210927222741-03fcf44c2211/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8= golang.org/x/term v0.0.0-20210927222741-03fcf44c2211/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8=
golang.org/x/term v0.5.0/go.mod h1:jMB1sMXY+tzblOD4FWmEbocvup2/aLOaQEp7JmGp78k= golang.org/x/term v0.5.0/go.mod h1:jMB1sMXY+tzblOD4FWmEbocvup2/aLOaQEp7JmGp78k=
golang.org/x/term v0.6.0/go.mod h1:m6U89DPEgQRMq3DNkDClhWw02AUbt2daBVO4cn4Hv9U= golang.org/x/term v0.6.0/go.mod h1:m6U89DPEgQRMq3DNkDClhWw02AUbt2daBVO4cn4Hv9U=
golang.org/x/term v0.13.0 h1:bb+I9cTfFazGW51MZqBVmZy7+JEJMouUHTUSKVQLBek=
golang.org/x/term v0.13.0/go.mod h1:LTmsnFJwVN6bCy1rVCoS+qHT1HhALEFxKncY3WNNh4U=
golang.org/x/term v0.15.0 h1:y/Oo/a/q3IXu26lQgl04j/gjuBDOBlx7X6Om1j2CPW4= golang.org/x/term v0.15.0 h1:y/Oo/a/q3IXu26lQgl04j/gjuBDOBlx7X6Om1j2CPW4=
golang.org/x/term v0.15.0/go.mod h1:BDl952bC7+uMoWR75FIrCDx79TPU9oHkTZ9yRbYOrX0= golang.org/x/term v0.15.0/go.mod h1:BDl952bC7+uMoWR75FIrCDx79TPU9oHkTZ9yRbYOrX0=
golang.org/x/text v0.0.0-20170915032832-14c0d48ead0c/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= golang.org/x/text v0.0.0-20170915032832-14c0d48ead0c/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
@ -851,8 +846,6 @@ golang.org/x/text v0.3.6/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=
golang.org/x/text v0.3.7/go.mod h1:u+2+/6zg+i71rQMx5EYifcz6MCKuco9NR6JIITiCfzQ= golang.org/x/text v0.3.7/go.mod h1:u+2+/6zg+i71rQMx5EYifcz6MCKuco9NR6JIITiCfzQ=
golang.org/x/text v0.7.0/go.mod h1:mrYo+phRRbMaCq/xk9113O4dZlRixOauAjOtrjsXDZ8= golang.org/x/text v0.7.0/go.mod h1:mrYo+phRRbMaCq/xk9113O4dZlRixOauAjOtrjsXDZ8=
golang.org/x/text v0.8.0/go.mod h1:e1OnstbJyHTd6l/uOt8jFFHp6TRDWZR/bV3emEE/zU8= golang.org/x/text v0.8.0/go.mod h1:e1OnstbJyHTd6l/uOt8jFFHp6TRDWZR/bV3emEE/zU8=
golang.org/x/text v0.13.0 h1:ablQoSUd0tRdKxZewP80B+BaqeKJuVhuRxj/dkrun3k=
golang.org/x/text v0.13.0/go.mod h1:TvPlkZtksWOMsz7fbANvkp4WM8x/WCo/om8BMLbz+aE=
golang.org/x/text v0.14.0 h1:ScX5w1eTa3QqT8oi6+ziP7dTV1S2+ALU0bI+0zXKWiQ= golang.org/x/text v0.14.0 h1:ScX5w1eTa3QqT8oi6+ziP7dTV1S2+ALU0bI+0zXKWiQ=
golang.org/x/text v0.14.0/go.mod h1:18ZOQIKpY8NJVqYksKHtTdi31H5itFRjB5/qKTNYzSU= golang.org/x/text v0.14.0/go.mod h1:18ZOQIKpY8NJVqYksKHtTdi31H5itFRjB5/qKTNYzSU=
golang.org/x/time v0.0.0-20181108054448-85acf8d2951c/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= golang.org/x/time v0.0.0-20181108054448-85acf8d2951c/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ=

View file

@ -44,6 +44,11 @@ import (
"github.com/arangodb/kube-arangodb/pkg/util" "github.com/arangodb/kube-arangodb/pkg/util"
) )
const (
// title of docs/api/README.md page
apiIndexPageTitle = "CRD reference"
)
func (d DocDefinitions) RenderMarkdown(t *testing.T, repositoryPath string) []byte { func (d DocDefinitions) RenderMarkdown(t *testing.T, repositoryPath string) []byte {
out := bytes.NewBuffer(nil) out := bytes.NewBuffer(nil)
@ -183,7 +188,6 @@ func Test_GenerateAPIDocs(t *testing.T) {
}, },
} }
resultPaths := make(map[string]string)
for apiDir, docs := range input { for apiDir, docs := range input {
fields := parseSourceFiles(t, root, fset, apiDir) fields := parseSourceFiles(t, root, fset, apiDir)
@ -192,9 +196,8 @@ func Test_GenerateAPIDocs(t *testing.T) {
fields[n] = f fields[n] = f
} }
util.CopyMap(resultPaths, generateDocs(t, docs, fields, fset)) generateDocs(t, docs, fields, fset)
} }
generateIndex(t, resultPaths)
} }
func prepareGitHubTreePath(t *testing.T, root string) string { func prepareGitHubTreePath(t *testing.T, root string) string {
@ -243,7 +246,13 @@ func generateDocs(t *testing.T, objects map[string]map[string]interface{}, field
require.NoError(t, out.Close()) require.NoError(t, out.Close())
}() }()
write(t, out, "# API Reference for %s\n\n", strings.ReplaceAll(objectName, ".", " ")) objName := strings.ReplaceAll(objectName, ".", " ")
writeFrontMatter(t, out, map[string]string{
"layout": "page",
"title": objName,
"parent": apiIndexPageTitle,
})
write(t, out, "# API Reference for %s\n\n", objName)
util.IterateSorted(renderSections, func(name string, section []byte) { util.IterateSorted(renderSections, func(name string, section []byte) {
write(t, out, "## %s\n\n", name) write(t, out, "## %s\n\n", name)
@ -256,26 +265,20 @@ func generateDocs(t *testing.T, objects map[string]map[string]interface{}, field
return outPaths return outPaths
} }
func generateIndex(t *testing.T, apiDocs map[string]string) {
root := os.Getenv("ROOT")
require.NotEmpty(t, root)
outPath := path.Join(root, "docs/api/README.md")
out, err := os.OpenFile(outPath, os.O_CREATE|os.O_TRUNC|os.O_WRONLY, 0644)
require.NoError(t, err)
defer func() {
require.NoError(t, out.Close())
}()
write(t, out, "# Custom Resources API Reference\n\n")
util.IterateSorted(apiDocs, func(name string, filePath string) {
write(t, out, " - [%s](./%s)\n", name, filePath)
})
write(t, out, "\n")
}
func write(t *testing.T, out io.Writer, format string, args ...interface{}) { func write(t *testing.T, out io.Writer, format string, args ...interface{}) {
_, err := out.Write([]byte(fmt.Sprintf(format, args...))) _, err := out.Write([]byte(fmt.Sprintf(format, args...)))
require.NoError(t, err) require.NoError(t, err)
} }
func writeFrontMatter(t *testing.T, out io.Writer, keyVals map[string]string) {
fm := ""
util.IterateSorted(keyVals, func(key, val string) {
fm += fmt.Sprintf("%s: %s\n", key, val)
})
if fm != "" {
fm = "---\n" + fm + "---\n\n"
}
write(t, out, fm)
}

View file

@ -1,7 +1,7 @@
// //
// DISCLAIMER // DISCLAIMER
// //
// Copyright 2016-2023 ArangoDB GmbH, Cologne, Germany // Copyright 2016-2024 ArangoDB GmbH, Cologne, Germany
// //
// Licensed under the Apache License, Version 2.0 (the "License"); // Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License. // you may not use this file except in compliance with the License.
@ -41,6 +41,12 @@ func Test_GenerateFeaturesIndex(t *testing.T) {
}() }()
const basePath = "docs/features" const basePath = "docs/features"
writeFrontMatter(t, out, map[string]string{
"layout": "page",
"title": "List of all features",
"nav_order": "10",
})
write(t, out, "## List of Community Edition features\n") write(t, out, "## List of Community Edition features\n")
section, err := GenerateReadmeFeatures(root, basePath, false) section, err := GenerateReadmeFeatures(root, basePath, false)
require.NoError(t, err) require.NoError(t, err)

View file

@ -1,3 +1,9 @@
---
layout: page
title: {{ .name }}
parent: List of available metrics
---
# {{ .name }} ({{ .type }}) # {{ .name }} ({{ .type }})
## Description ## Description