mirror of
https://github.com/outbackdingo/cozystack.git
synced 2026-02-05 08:17:59 +00:00
Compare commits
1 Commits
release-0.
...
new-openap
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
08eb95b6f1 |
1
.github/workflows/pre-commit.yml
vendored
1
.github/workflows/pre-commit.yml
vendored
@@ -29,6 +29,7 @@ jobs:
|
|||||||
- name: Install generate
|
- name: Install generate
|
||||||
run: |
|
run: |
|
||||||
curl -sSL https://github.com/cozystack/readme-generator-for-helm/releases/download/v1.0.0/readme-generator-for-helm-linux-amd64.tar.gz | tar -xzvf- -C /usr/local/bin/ readme-generator-for-helm
|
curl -sSL https://github.com/cozystack/readme-generator-for-helm/releases/download/v1.0.0/readme-generator-for-helm-linux-amd64.tar.gz | tar -xzvf- -C /usr/local/bin/ readme-generator-for-helm
|
||||||
|
curl -sSL https://github.com/cozystack/cozyvalues-gen/releases/download/v0.5.0/cozyvalues-gen-linux-amd64.tar.gz | tar -xzvf- -C /usr/local/bin/ cozyvalues-gen
|
||||||
|
|
||||||
- name: Run pre-commit hooks
|
- name: Run pre-commit hooks
|
||||||
run: |
|
run: |
|
||||||
|
|||||||
@@ -2,5 +2,5 @@ include ../../../scripts/package.mk
|
|||||||
PRESET_ENUM := ["nano","micro","small","medium","large","xlarge","2xlarge"]
|
PRESET_ENUM := ["nano","micro","small","medium","large","xlarge","2xlarge"]
|
||||||
|
|
||||||
generate:
|
generate:
|
||||||
readme-generator-for-helm -v values.yaml -s values.schema.json -r README.md
|
cozyvalues-gen -v values.yaml -s values.schema.json -r README.md
|
||||||
yq -i -o json --indent 4 '.properties.resourcesPreset.enum = $(PRESET_ENUM)' values.schema.json
|
yq -i -o json --indent 4 '.properties.resourcesPreset.enum = $(PRESET_ENUM)' values.schema.json
|
||||||
|
|||||||
@@ -66,44 +66,57 @@ See:
|
|||||||
|
|
||||||
### Common parameters
|
### Common parameters
|
||||||
|
|
||||||
| Name | Description | Value |
|
| Name | Description | Type | Value |
|
||||||
| ----------------- | --------------------------------------------------------------------------------------------------------------------------------------- | ------- |
|
| --------------------------------------- | ------------------------------------------------------------------------------------------------------------------------ | -------- | ------- |
|
||||||
| `replicas` | Number of Postgres replicas | `2` |
|
| `external` | Enable external access from outside the cluster | `bool` | `false` |
|
||||||
| `resources` | Explicit CPU and memory configuration for each PostgreSQL replica. When left empty, the preset defined in `resourcesPreset` is applied. | `{}` |
|
| `size` | Persistent Volume size | `string` | `10Gi` |
|
||||||
| `resourcesPreset` | Default sizing preset used when `resources` is omitted. Allowed values: nano, micro, small, medium, large, xlarge, 2xlarge. | `micro` |
|
| `replicas` | Number of Postgres replicas | `int` | `2` |
|
||||||
| `size` | Persistent Volume size | `10Gi` |
|
| `storageClass` | StorageClass used to store the data | `string` | `` |
|
||||||
| `storageClass` | StorageClass used to store the data | `""` |
|
| `postgresql` | PostgreSQL server configuration | `object` | `null` |
|
||||||
| `external` | Enable external access from outside the cluster | `false` |
|
| `postgresql.parameters` | PostgreSQL server parameters | `object` | |
|
||||||
|
| `postgresql.parameters.max_connections` | Determines the maximum number of concurrent connections to the database server. The default is typically 100 connections | `int` | |
|
||||||
|
| `quorum` | Quorum configuration for synchronous replication | `object` | `null` |
|
||||||
|
| `quorum.minSyncReplicas` | Minimum number of synchronous replicas that must acknowledge a transaction before it is considered committed. | `int` | |
|
||||||
|
| `quorum.maxSyncReplicas` | Maximum number of synchronous replicas that can acknowledge a transaction (must be lower than the number of instances). | `int` | |
|
||||||
|
|
||||||
### Application-specific parameters
|
### Configuration parameters
|
||||||
|
|
||||||
| Name | Description | Value |
|
| Name | Description | Type | Value |
|
||||||
| --------------------------------------- | ------------------------------------------------------------------------------------------------------------------------ | ----- |
|
| -------------------------------- | ------------------------------------------- | --------------------- | ----- |
|
||||||
| `postgresql.parameters.max_connections` | Determines the maximum number of concurrent connections to the database server. The default is typically 100 connections | `100` |
|
| `users` | Users configuration | `map[string]user` | `{}` |
|
||||||
| `quorum.minSyncReplicas` | Minimum number of synchronous replicas that must acknowledge a transaction before it is considered committed. | `0` |
|
| `users[name].password` | Password for the user | `*string` | |
|
||||||
| `quorum.maxSyncReplicas` | Maximum number of synchronous replicas that can acknowledge a transaction (must be lower than the number of instances). | `0` |
|
| `users[name].replication` | Whether the user has replication privileges | `*bool` | |
|
||||||
| `users` | Users configuration | `{}` |
|
| `databases` | Databases configuration | `map[string]database` | `{}` |
|
||||||
| `databases` | Databases configuration | `{}` |
|
| `databases[name].roles` | Roles for the database | `object` | |
|
||||||
|
| `databases[name].roles.admin` | List of users with admin privileges | `[]string` | |
|
||||||
|
| `databases[name].roles.readonly` | List of users with read-only privileges | `[]string` | |
|
||||||
|
| `databases[name].extensions` | Extensions enabled for the database | `[]string` | |
|
||||||
|
|
||||||
### Backup parameters
|
### Backup parameters
|
||||||
|
|
||||||
| Name | Description | Value |
|
| Name | Description | Type | Value |
|
||||||
| ------------------------ | ---------------------------------------------------------- | ----------------------------------- |
|
| ------------------------ | ---------------------------------------------------------- | -------- | ------ |
|
||||||
| `backup.enabled` | Enable regular backups | `false` |
|
| `backup` | Backup configuration | `object` | `null` |
|
||||||
| `backup.schedule` | Cron schedule for automated backups | `0 2 * * * *` |
|
| `backup.enabled` | Enable regular backups | `bool` | |
|
||||||
| `backup.retentionPolicy` | Retention policy | `30d` |
|
| `backup.schedule` | Cron schedule for automated backups | `string` | |
|
||||||
| `backup.destinationPath` | Path to store the backup (i.e. s3://bucket/path/to/folder) | `s3://bucket/path/to/folder/` |
|
| `backup.retentionPolicy` | Retention policy | `string` | |
|
||||||
| `backup.endpointURL` | S3 Endpoint used to upload data to the cloud | `http://minio-gateway-service:9000` |
|
| `backup.destinationPath` | Path to store the backup (i.e. s3://bucket/path/to/folder) | `string` | |
|
||||||
| `backup.s3AccessKey` | Access key for S3, used for authentication | `oobaiRus9pah8PhohL1ThaeTa4UVa7gu` |
|
| `backup.endpointURL` | S3 Endpoint used to upload data to the cloud | `string` | |
|
||||||
| `backup.s3SecretKey` | Secret key for S3, used for authentication | `ju3eum4dekeich9ahM1te8waeGai0oog` |
|
| `backup.s3AccessKey` | Access key for S3, used for authentication | `string` | |
|
||||||
|
| `backup.s3SecretKey` | Secret key for S3, used for authentication | `string` | |
|
||||||
|
|
||||||
### Bootstrap (recovery) parameters
|
### Bootstrap parameters
|
||||||
|
|
||||||
| Name | Description | Value |
|
| Name | Description | Type | Value |
|
||||||
| ------------------------ | -------------------------------------------------------------------------------------------------------------------- | ------- |
|
| ------------------------ | -------------------------------------------------------------------------------------------------------------------- | ----------- | ------- |
|
||||||
| `bootstrap.enabled` | Restore database cluster from a backup | `false` |
|
| `bootstrap` | Bootstrap configuration | `object` | `null` |
|
||||||
| `bootstrap.recoveryTime` | Timestamp (PITR) up to which recovery will proceed, expressed in RFC 3339 format. If left empty, will restore latest | `""` |
|
| `bootstrap.enabled` | Restore database cluster from a backup | `bool` | |
|
||||||
| `bootstrap.oldName` | Name of database cluster before deleting | `""` |
|
| `bootstrap.recoveryTime` | Timestamp (PITR) up to which recovery will proceed, expressed in RFC 3339 format. If left empty, will restore latest | `string` | |
|
||||||
|
| `bootstrap.oldName` | Name of database cluster before deleting | `string` | |
|
||||||
|
| `resources` | Resources | `object` | `{}` |
|
||||||
|
| `resources.cpu` | CPU | `*quantity` | |
|
||||||
|
| `resources.memory` | Memory | `*quantity` | |
|
||||||
|
| `resourcesPreset` | Default sizing preset used when `resources` is omitted. | `string` | `micro` |
|
||||||
|
|
||||||
## Parameter examples and reference
|
## Parameter examples and reference
|
||||||
|
|
||||||
|
|||||||
@@ -1,119 +1,192 @@
|
|||||||
{
|
{
|
||||||
|
"title": "Chart Values",
|
||||||
|
"type": "object",
|
||||||
"properties": {
|
"properties": {
|
||||||
"backup": {
|
"backup": {
|
||||||
|
"description": "Backup configuration",
|
||||||
|
"type": "object",
|
||||||
|
"required": [
|
||||||
|
"destinationPath",
|
||||||
|
"enabled",
|
||||||
|
"endpointURL",
|
||||||
|
"retentionPolicy",
|
||||||
|
"s3AccessKey",
|
||||||
|
"s3SecretKey",
|
||||||
|
"schedule"
|
||||||
|
],
|
||||||
"properties": {
|
"properties": {
|
||||||
"destinationPath": {
|
"destinationPath": {
|
||||||
"default": "s3://bucket/path/to/folder/",
|
|
||||||
"description": "Path to store the backup (i.e. s3://bucket/path/to/folder)",
|
"description": "Path to store the backup (i.e. s3://bucket/path/to/folder)",
|
||||||
"type": "string"
|
"type": "string",
|
||||||
|
"default": "s3://bucket/path/to/folder/"
|
||||||
},
|
},
|
||||||
"enabled": {
|
"enabled": {
|
||||||
"default": false,
|
|
||||||
"description": "Enable regular backups",
|
"description": "Enable regular backups",
|
||||||
"type": "boolean"
|
"type": "boolean",
|
||||||
|
"default": false
|
||||||
},
|
},
|
||||||
"endpointURL": {
|
"endpointURL": {
|
||||||
"default": "http://minio-gateway-service:9000",
|
|
||||||
"description": "S3 Endpoint used to upload data to the cloud",
|
"description": "S3 Endpoint used to upload data to the cloud",
|
||||||
"type": "string"
|
"type": "string",
|
||||||
|
"default": "http://minio-gateway-service:9000"
|
||||||
},
|
},
|
||||||
"retentionPolicy": {
|
"retentionPolicy": {
|
||||||
"default": "30d",
|
|
||||||
"description": "Retention policy",
|
"description": "Retention policy",
|
||||||
"type": "string"
|
"type": "string",
|
||||||
|
"default": "30d"
|
||||||
},
|
},
|
||||||
"s3AccessKey": {
|
"s3AccessKey": {
|
||||||
"default": "oobaiRus9pah8PhohL1ThaeTa4UVa7gu",
|
|
||||||
"description": "Access key for S3, used for authentication",
|
"description": "Access key for S3, used for authentication",
|
||||||
"type": "string"
|
"type": "string",
|
||||||
|
"default": "oobaiRus9pah8PhohL1ThaeTa4UVa7gu"
|
||||||
},
|
},
|
||||||
"s3SecretKey": {
|
"s3SecretKey": {
|
||||||
"default": "ju3eum4dekeich9ahM1te8waeGai0oog",
|
|
||||||
"description": "Secret key for S3, used for authentication",
|
"description": "Secret key for S3, used for authentication",
|
||||||
"type": "string"
|
"type": "string",
|
||||||
|
"default": "ju3eum4dekeich9ahM1te8waeGai0oog"
|
||||||
},
|
},
|
||||||
"schedule": {
|
"schedule": {
|
||||||
"default": "0 2 * * * *",
|
|
||||||
"description": "Cron schedule for automated backups",
|
"description": "Cron schedule for automated backups",
|
||||||
"type": "string"
|
"type": "string",
|
||||||
|
"default": "0 2 * * * *"
|
||||||
}
|
}
|
||||||
},
|
}
|
||||||
"type": "object"
|
|
||||||
},
|
},
|
||||||
"bootstrap": {
|
"bootstrap": {
|
||||||
|
"description": "Bootstrap configuration",
|
||||||
|
"type": "object",
|
||||||
|
"required": [
|
||||||
|
"enabled",
|
||||||
|
"oldName",
|
||||||
|
"recoveryTime"
|
||||||
|
],
|
||||||
"properties": {
|
"properties": {
|
||||||
"enabled": {
|
"enabled": {
|
||||||
"default": false,
|
|
||||||
"description": "Restore database cluster from a backup",
|
"description": "Restore database cluster from a backup",
|
||||||
"type": "boolean"
|
"type": "boolean",
|
||||||
|
"default": false
|
||||||
},
|
},
|
||||||
"oldName": {
|
"oldName": {
|
||||||
"default": "",
|
|
||||||
"description": "Name of database cluster before deleting",
|
"description": "Name of database cluster before deleting",
|
||||||
"type": "string"
|
"type": "string"
|
||||||
},
|
},
|
||||||
"recoveryTime": {
|
"recoveryTime": {
|
||||||
"default": "",
|
|
||||||
"description": "Timestamp (PITR) up to which recovery will proceed, expressed in RFC 3339 format. If left empty, will restore latest",
|
"description": "Timestamp (PITR) up to which recovery will proceed, expressed in RFC 3339 format. If left empty, will restore latest",
|
||||||
"type": "string"
|
"type": "string"
|
||||||
}
|
}
|
||||||
},
|
}
|
||||||
"type": "object"
|
|
||||||
},
|
},
|
||||||
"databases": {
|
"databases": {
|
||||||
"default": {},
|
|
||||||
"description": "Databases configuration",
|
"description": "Databases configuration",
|
||||||
"type": "object"
|
"type": "object",
|
||||||
},
|
"additionalProperties": {
|
||||||
"external": {
|
"type": "object",
|
||||||
"default": false,
|
"properties": {
|
||||||
"description": "Enable external access from outside the cluster",
|
"extensions": {
|
||||||
"type": "boolean"
|
"description": "Extensions enabled for the database",
|
||||||
},
|
"type": "array",
|
||||||
"postgresql": {
|
"items": {
|
||||||
"properties": {
|
"type": "string"
|
||||||
"parameters": {
|
|
||||||
"properties": {
|
|
||||||
"max_connections": {
|
|
||||||
"default": 100,
|
|
||||||
"description": "Determines the maximum number of concurrent connections to the database server. The default is typically 100 connections",
|
|
||||||
"type": "number"
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"type": "object"
|
"roles": {
|
||||||
|
"description": "Roles for the database",
|
||||||
|
"type": "object",
|
||||||
|
"properties": {
|
||||||
|
"admin": {
|
||||||
|
"description": "List of users with admin privileges",
|
||||||
|
"type": "array",
|
||||||
|
"items": {
|
||||||
|
"type": "string"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"readonly": {
|
||||||
|
"description": "List of users with read-only privileges",
|
||||||
|
"type": "array",
|
||||||
|
"items": {
|
||||||
|
"type": "string"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
},
|
}
|
||||||
"type": "object"
|
},
|
||||||
|
"external": {
|
||||||
|
"description": "Enable external access from outside the cluster",
|
||||||
|
"type": "boolean",
|
||||||
|
"default": false
|
||||||
|
},
|
||||||
|
"postgresql": {
|
||||||
|
"description": "PostgreSQL server configuration",
|
||||||
|
"type": "object",
|
||||||
|
"required": [
|
||||||
|
"parameters"
|
||||||
|
],
|
||||||
|
"properties": {
|
||||||
|
"parameters": {
|
||||||
|
"description": "PostgreSQL server parameters",
|
||||||
|
"type": "object",
|
||||||
|
"required": [
|
||||||
|
"max_connections"
|
||||||
|
],
|
||||||
|
"properties": {
|
||||||
|
"max_connections": {
|
||||||
|
"description": "Determines the maximum number of concurrent connections to the database server. The default is typically 100 connections",
|
||||||
|
"type": "integer",
|
||||||
|
"default": 100
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"quorum": {
|
"quorum": {
|
||||||
|
"description": "Quorum configuration for synchronous replication",
|
||||||
|
"type": "object",
|
||||||
|
"required": [
|
||||||
|
"maxSyncReplicas",
|
||||||
|
"minSyncReplicas"
|
||||||
|
],
|
||||||
"properties": {
|
"properties": {
|
||||||
"maxSyncReplicas": {
|
"maxSyncReplicas": {
|
||||||
"default": 0,
|
|
||||||
"description": "Maximum number of synchronous replicas that can acknowledge a transaction (must be lower than the number of instances).",
|
"description": "Maximum number of synchronous replicas that can acknowledge a transaction (must be lower than the number of instances).",
|
||||||
"type": "number"
|
"type": "integer",
|
||||||
|
"default": 0
|
||||||
},
|
},
|
||||||
"minSyncReplicas": {
|
"minSyncReplicas": {
|
||||||
"default": 0,
|
|
||||||
"description": "Minimum number of synchronous replicas that must acknowledge a transaction before it is considered committed.",
|
"description": "Minimum number of synchronous replicas that must acknowledge a transaction before it is considered committed.",
|
||||||
"type": "number"
|
"type": "integer",
|
||||||
|
"default": 0
|
||||||
}
|
}
|
||||||
},
|
}
|
||||||
"type": "object"
|
|
||||||
},
|
},
|
||||||
"replicas": {
|
"replicas": {
|
||||||
"default": 2,
|
|
||||||
"description": "Number of Postgres replicas",
|
"description": "Number of Postgres replicas",
|
||||||
"type": "number"
|
"type": "integer",
|
||||||
|
"default": 2
|
||||||
},
|
},
|
||||||
"resources": {
|
"resources": {
|
||||||
"default": {},
|
"description": "Resources",
|
||||||
"description": "Explicit CPU and memory configuration for each PostgreSQL replica. When left empty, the preset defined in `resourcesPreset` is applied.",
|
"type": "object",
|
||||||
"type": "object"
|
"properties": {
|
||||||
|
"cpu": {
|
||||||
|
"description": "CPU",
|
||||||
|
"type": "string",
|
||||||
|
"pattern": "^(\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?$",
|
||||||
|
"x-kubernetes-int-or-string": true
|
||||||
|
},
|
||||||
|
"memory": {
|
||||||
|
"description": "Memory",
|
||||||
|
"type": "string",
|
||||||
|
"pattern": "^(\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?$",
|
||||||
|
"x-kubernetes-int-or-string": true
|
||||||
|
}
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"resourcesPreset": {
|
"resourcesPreset": {
|
||||||
"default": "micro",
|
"description": "Default sizing preset used when `resources` is omitted.",
|
||||||
"description": "Default sizing preset used when `resources` is omitted. Allowed values: nano, micro, small, medium, large, xlarge, 2xlarge.",
|
|
||||||
"type": "string",
|
"type": "string",
|
||||||
|
"default": "micro",
|
||||||
"enum": [
|
"enum": [
|
||||||
"nano",
|
"nano",
|
||||||
"micro",
|
"micro",
|
||||||
@@ -125,16 +198,30 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"size": {
|
"size": {
|
||||||
"default": "10Gi",
|
|
||||||
"description": "Persistent Volume size",
|
"description": "Persistent Volume size",
|
||||||
"type": "string"
|
"type": "string",
|
||||||
|
"default": "10Gi"
|
||||||
},
|
},
|
||||||
"storageClass": {
|
"storageClass": {
|
||||||
"default": "",
|
|
||||||
"description": "StorageClass used to store the data",
|
"description": "StorageClass used to store the data",
|
||||||
"type": "string"
|
"type": "string"
|
||||||
|
},
|
||||||
|
"users": {
|
||||||
|
"description": "Users configuration",
|
||||||
|
"type": "object",
|
||||||
|
"additionalProperties": {
|
||||||
|
"type": "object",
|
||||||
|
"properties": {
|
||||||
|
"password": {
|
||||||
|
"description": "Password for the user",
|
||||||
|
"type": "string"
|
||||||
|
},
|
||||||
|
"replication": {
|
||||||
|
"description": "Whether the user has replication privileges",
|
||||||
|
"type": "boolean"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
},
|
}
|
||||||
"title": "Chart Values",
|
|
||||||
"type": "object"
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,36 +1,37 @@
|
|||||||
## @section Common parameters
|
## @section Common parameters
|
||||||
|
|
||||||
|
## @param external {bool} Enable external access from outside the cluster
|
||||||
|
## @param size {string} Persistent Volume size
|
||||||
|
## @param replicas {int} Number of Postgres replicas
|
||||||
|
## @param storageClass {string} StorageClass used to store the data
|
||||||
##
|
##
|
||||||
## @param replicas Number of Postgres replicas
|
|
||||||
replicas: 2
|
|
||||||
## @param resources Explicit CPU and memory configuration for each PostgreSQL replica. When left empty, the preset defined in `resourcesPreset` is applied.
|
|
||||||
resources: {}
|
|
||||||
# resources:
|
|
||||||
# cpu: 4000m
|
|
||||||
# memory: 4Gi
|
|
||||||
## @param resourcesPreset Default sizing preset used when `resources` is omitted. Allowed values: nano, micro, small, medium, large, xlarge, 2xlarge.
|
|
||||||
resourcesPreset: "micro"
|
|
||||||
## @param size Persistent Volume size
|
|
||||||
size: 10Gi
|
|
||||||
## @param storageClass StorageClass used to store the data
|
|
||||||
storageClass: ""
|
|
||||||
## @param external Enable external access from outside the cluster
|
|
||||||
external: false
|
external: false
|
||||||
|
size: 10Gi
|
||||||
|
replicas: 2
|
||||||
|
storageClass: ""
|
||||||
|
|
||||||
|
## @param postgresql {postgresql} PostgreSQL server configuration
|
||||||
## @section Application-specific parameters
|
## @field postgresql.parameters {postgresqlParameters} PostgreSQL server parameters
|
||||||
|
## @field postgresqlParameters.max_connections {int} Determines the maximum number of concurrent connections to the database server. The default is typically 100 connections
|
||||||
##
|
##
|
||||||
## @param postgresql.parameters.max_connections Determines the maximum number of concurrent connections to the database server. The default is typically 100 connections
|
|
||||||
postgresql:
|
postgresql:
|
||||||
parameters:
|
parameters:
|
||||||
max_connections: 100
|
max_connections: 100
|
||||||
|
|
||||||
## @param quorum.minSyncReplicas Minimum number of synchronous replicas that must acknowledge a transaction before it is considered committed.
|
## Configuration for the quorum-based synchronous replication
|
||||||
## @param quorum.maxSyncReplicas Maximum number of synchronous replicas that can acknowledge a transaction (must be lower than the number of instances).
|
## @param quorum {quorum} Quorum configuration for synchronous replication
|
||||||
|
## @field quorum.minSyncReplicas {int} Minimum number of synchronous replicas that must acknowledge a transaction before it is considered committed.
|
||||||
|
## @field quorum.maxSyncReplicas {int} Maximum number of synchronous replicas that can acknowledge a transaction (must be lower than the number of instances).
|
||||||
quorum:
|
quorum:
|
||||||
minSyncReplicas: 0
|
minSyncReplicas: 0
|
||||||
maxSyncReplicas: 0
|
maxSyncReplicas: 0
|
||||||
|
|
||||||
## @param users [object] Users configuration
|
## @section Configuration parameters
|
||||||
|
|
||||||
|
## @param users {map[string]user} Users configuration
|
||||||
|
## @field user.password {*string} Password for the user
|
||||||
|
## @field user.replication {*bool} Whether the user has replication privileges
|
||||||
|
##
|
||||||
## Example:
|
## Example:
|
||||||
## users:
|
## users:
|
||||||
## user1:
|
## user1:
|
||||||
@@ -44,7 +45,12 @@ quorum:
|
|||||||
##
|
##
|
||||||
users: {}
|
users: {}
|
||||||
|
|
||||||
## @param databases Databases configuration
|
## @param databases {map[string]database} Databases configuration
|
||||||
|
## @field database.roles {*databaseRoles} Roles for the database
|
||||||
|
## @field databaseRoles.admin {[]string} List of users with admin privileges
|
||||||
|
## @field databaseRoles.readonly {[]string} List of users with read-only privileges
|
||||||
|
## @field database.extensions {[]string} Extensions enabled for the database
|
||||||
|
##
|
||||||
## Example:
|
## Example:
|
||||||
## databases:
|
## databases:
|
||||||
## myapp:
|
## myapp:
|
||||||
@@ -64,13 +70,14 @@ databases: {}
|
|||||||
|
|
||||||
## @section Backup parameters
|
## @section Backup parameters
|
||||||
|
|
||||||
## @param backup.enabled Enable regular backups
|
## @param backup {backup} Backup configuration
|
||||||
## @param backup.schedule Cron schedule for automated backups
|
## @field backup.enabled {bool} Enable regular backups
|
||||||
## @param backup.retentionPolicy Retention policy
|
## @field backup.schedule {string} Cron schedule for automated backups
|
||||||
## @param backup.destinationPath Path to store the backup (i.e. s3://bucket/path/to/folder)
|
## @field backup.retentionPolicy {string} Retention policy
|
||||||
## @param backup.endpointURL S3 Endpoint used to upload data to the cloud
|
## @field backup.destinationPath {string} Path to store the backup (i.e. s3://bucket/path/to/folder)
|
||||||
## @param backup.s3AccessKey Access key for S3, used for authentication
|
## @field backup.endpointURL {string} S3 Endpoint used to upload data to the cloud
|
||||||
## @param backup.s3SecretKey Secret key for S3, used for authentication
|
## @field backup.s3AccessKey {string} Access key for S3, used for authentication
|
||||||
|
## @field backup.s3SecretKey {string} Secret key for S3, used for authentication
|
||||||
backup:
|
backup:
|
||||||
enabled: false
|
enabled: false
|
||||||
retentionPolicy: 30d
|
retentionPolicy: 30d
|
||||||
@@ -80,11 +87,12 @@ backup:
|
|||||||
s3AccessKey: oobaiRus9pah8PhohL1ThaeTa4UVa7gu
|
s3AccessKey: oobaiRus9pah8PhohL1ThaeTa4UVa7gu
|
||||||
s3SecretKey: ju3eum4dekeich9ahM1te8waeGai0oog
|
s3SecretKey: ju3eum4dekeich9ahM1te8waeGai0oog
|
||||||
|
|
||||||
## @section Bootstrap (recovery) parameters
|
## @section Bootstrap parameters
|
||||||
|
|
||||||
## @param bootstrap.enabled Restore database cluster from a backup
|
## @param bootstrap {bootstrap} Bootstrap configuration
|
||||||
## @param bootstrap.recoveryTime Timestamp (PITR) up to which recovery will proceed, expressed in RFC 3339 format. If left empty, will restore latest
|
## @field bootstrap.enabled {bool} Restore database cluster from a backup
|
||||||
## @param bootstrap.oldName Name of database cluster before deleting
|
## @field bootstrap.recoveryTime {string} Timestamp (PITR) up to which recovery will proceed, expressed in RFC 3339 format. If left empty, will restore latest
|
||||||
|
## @field bootstrap.oldName {string} Name of database cluster before deleting
|
||||||
##
|
##
|
||||||
bootstrap:
|
bootstrap:
|
||||||
enabled: false
|
enabled: false
|
||||||
@@ -92,3 +100,13 @@ bootstrap:
|
|||||||
recoveryTime: ""
|
recoveryTime: ""
|
||||||
oldName: ""
|
oldName: ""
|
||||||
|
|
||||||
|
## @param resources {resources} Resources
|
||||||
|
## @field resources.cpu {*quantity} CPU
|
||||||
|
## @field resources.memory {*quantity} Memory
|
||||||
|
resources: {}
|
||||||
|
# resources:
|
||||||
|
# cpu: 4000m
|
||||||
|
# memory: 4Gi
|
||||||
|
|
||||||
|
## @param resourcesPreset {string enum:"nano,micro,small,medium,large,xlarge,2xlarge"} Default sizing preset used when `resources` is omitted.
|
||||||
|
resourcesPreset: "micro"
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
include ../../../scripts/package.mk
|
include ../../../scripts/package.mk
|
||||||
|
|
||||||
generate:
|
generate:
|
||||||
readme-generator-for-helm -v values.yaml -s values.schema.json -r README.md
|
cozyvalues-gen -v values.yaml -s values.schema.json -r README.md
|
||||||
yq -o json -i '.properties.gpus.items.type = "object" | .properties.gpus.default = []' values.schema.json
|
yq -o json -i '.properties.gpus.items.type = "object" | .properties.gpus.default = []' values.schema.json
|
||||||
INSTANCE_TYPES=$$(yq e '.metadata.name' -o=json -r ../../system/kubevirt-instancetypes/templates/instancetypes.yaml | yq 'split(" ") | . + [""]' -o json) \
|
INSTANCE_TYPES=$$(yq e '.metadata.name' -o=json -r ../../system/kubevirt-instancetypes/templates/instancetypes.yaml | yq 'split(" ") | . + [""]' -o json) \
|
||||||
&& yq -i -o json ".properties.instanceType.optional=true | .properties.instanceType.enum = $${INSTANCE_TYPES}" values.schema.json
|
&& yq -i -o json ".properties.instanceType.optional=true | .properties.instanceType.enum = $${INSTANCE_TYPES}" values.schema.json
|
||||||
|
|||||||
@@ -36,24 +36,59 @@ virtctl ssh <user>@<vm>
|
|||||||
|
|
||||||
### Common parameters
|
### Common parameters
|
||||||
|
|
||||||
| Name | Description | Value |
|
| Name | Description | Type | Value |
|
||||||
| ------------------------- | ---------------------------------------------------------------------------------------------------------- | ------------ |
|
| --------------------------------------- | ------------------------------------------------------------------------------------------------------------------------ | -------- | ------- |
|
||||||
| `external` | Enable external access from outside the cluster | `false` |
|
| `external` | Enable external access from outside the cluster | `bool` | `false` |
|
||||||
| `externalMethod` | specify method to passthrough the traffic to the virtual machine. Allowed values: `WholeIP` and `PortList` | `PortList` |
|
| `size` | Persistent Volume size | `string` | `10Gi` |
|
||||||
| `externalPorts` | Specify ports to forward from outside the cluster | `[]` |
|
| `replicas` | Number of Postgres replicas | `int` | `2` |
|
||||||
| `running` | Determines if the virtual machine should be running | `true` |
|
| `storageClass` | StorageClass used to store the data | `string` | `` |
|
||||||
| `instanceType` | Virtual Machine instance type | `u1.medium` |
|
| `postgresql` | PostgreSQL server configuration | `object` | `null` |
|
||||||
| `instanceProfile` | Virtual Machine preferences profile | `ubuntu` |
|
| `postgresql.parameters` | PostgreSQL server parameters | `object` | |
|
||||||
| `systemDisk.image` | The base image for the virtual machine. Allowed values: `ubuntu`, `cirros`, `alpine`, `fedora` and `talos` | `ubuntu` |
|
| `postgresql.parameters.max_connections` | Determines the maximum number of concurrent connections to the database server. The default is typically 100 connections | `int` | |
|
||||||
| `systemDisk.storage` | The size of the disk allocated for the virtual machine | `5Gi` |
|
| `quorum` | Quorum configuration for synchronous replication | `object` | `null` |
|
||||||
| `systemDisk.storageClass` | StorageClass used to store the data | `replicated` |
|
| `quorum.minSyncReplicas` | Minimum number of synchronous replicas that must acknowledge a transaction before it is considered committed. | `int` | |
|
||||||
| `gpus` | List of GPUs to attach | `[]` |
|
| `quorum.maxSyncReplicas` | Maximum number of synchronous replicas that can acknowledge a transaction (must be lower than the number of instances). | `int` | |
|
||||||
| `resources.cpu` | The number of CPU cores allocated to the virtual machine | `""` |
|
|
||||||
| `resources.memory` | The amount of memory allocated to the virtual machine | `""` |
|
### Configuration parameters
|
||||||
| `resources.sockets` | The number of CPU sockets allocated to the virtual machine (used to define vCPU topology) | `""` |
|
|
||||||
| `sshKeys` | List of SSH public keys for authentication. Can be a single key or a list of keys. | `[]` |
|
| Name | Description | Type | Value |
|
||||||
| `cloudInit` | cloud-init user data config. See cloud-init documentation for more details. | `""` |
|
| -------------------------------- | ------------------------------------------- | --------------------- | ------ |
|
||||||
| `cloudInitSeed` | A seed string to generate an SMBIOS UUID for the VM. | `""` |
|
| `users` | Users configuration | `map[string]user` | `{}` |
|
||||||
|
| `users[name].password` | Password for the user | `string` | |
|
||||||
|
| `users[name].replication` | Whether the user has replication privileges | `bool` | |
|
||||||
|
| `databases` | Databases configuration | `map[string]database` | `null` |
|
||||||
|
| `databases[name].roles` | Roles for the database | `object` | |
|
||||||
|
| `databases[name].roles.admin` | List of users with admin privileges | `[]string` | |
|
||||||
|
| `databases[name].roles.readonly` | List of users with read-only privileges | `[]string` | |
|
||||||
|
| `databases[name].extensions` | Extensions enabled for the database | `[]string` | |
|
||||||
|
|
||||||
|
### Backup parameters
|
||||||
|
|
||||||
|
| Name | Description | Type | Value |
|
||||||
|
| ------------------------ | ---------------------------------------------------------- | -------- | ------ |
|
||||||
|
| `backup` | Backup configuration | `object` | `null` |
|
||||||
|
| `backup.enabled` | Enable regular backups | `bool` | |
|
||||||
|
| `backup.schedule` | Cron schedule for automated backups | `string` | |
|
||||||
|
| `backup.retentionPolicy` | Retention policy | `string` | |
|
||||||
|
| `backup.destinationPath` | Path to store the backup (i.e. s3://bucket/path/to/folder) | `string` | |
|
||||||
|
| `backup.endpointURL` | S3 Endpoint used to upload data to the cloud | `string` | |
|
||||||
|
| `backup.s3AccessKey` | Access key for S3, used for authentication | `string` | |
|
||||||
|
| `backup.s3SecretKey` | Secret key for S3, used for authentication | `string` | |
|
||||||
|
|
||||||
|
### Bootstrap parameters
|
||||||
|
|
||||||
|
| Name | Description | Type | Value |
|
||||||
|
| ------------------------ | -------------------------------------------------------------------------------------------------------------------- | ----------- | ------- |
|
||||||
|
| `bootstrap` | Bootstrap configuration | `object` | `null` |
|
||||||
|
| `bootstrap.enabled` | Restore database cluster from a backup | `bool` | |
|
||||||
|
| `bootstrap.recoveryTime` | Timestamp (PITR) up to which recovery will proceed, expressed in RFC 3339 format. If left empty, will restore latest | `string` | |
|
||||||
|
| `bootstrap.oldName` | Name of database cluster before deleting | `string` | |
|
||||||
|
| `resources` | Resources | `object` | `{}` |
|
||||||
|
| `resources.cpu` | CPU | `*quantity` | |
|
||||||
|
| `resources.memory` | Memory | `*quantity` | |
|
||||||
|
| `resourcesPreset` | Default sizing preset used when `resources` is omitted. | `string` | `micro` |
|
||||||
|
| `gpus` | List of GPUs to attach | `[]gpu` | `[]` |
|
||||||
|
| `gpus[].name` | The name of the GPU to attach. This should match the GPU resource name in the cluster. | `string` | |
|
||||||
|
|
||||||
## U Series
|
## U Series
|
||||||
|
|
||||||
|
|||||||
@@ -1,100 +1,253 @@
|
|||||||
{
|
{
|
||||||
|
"title": "Chart Values",
|
||||||
|
"type": "object",
|
||||||
"properties": {
|
"properties": {
|
||||||
"cloudInit": {
|
"backup": {
|
||||||
"default": "",
|
"description": "Backup configuration",
|
||||||
"description": "cloud-init user data config. See cloud-init documentation for more details.",
|
"type": "object",
|
||||||
"type": "string"
|
"required": [
|
||||||
|
"destinationPath",
|
||||||
|
"enabled",
|
||||||
|
"endpointURL",
|
||||||
|
"retentionPolicy",
|
||||||
|
"s3AccessKey",
|
||||||
|
"s3SecretKey",
|
||||||
|
"schedule"
|
||||||
|
],
|
||||||
|
"properties": {
|
||||||
|
"destinationPath": {
|
||||||
|
"description": "Path to store the backup (i.e. s3://bucket/path/to/folder)",
|
||||||
|
"type": "string",
|
||||||
|
"default": "s3://bucket/path/to/folder/"
|
||||||
|
},
|
||||||
|
"enabled": {
|
||||||
|
"description": "Enable regular backups",
|
||||||
|
"type": "boolean",
|
||||||
|
"default": false
|
||||||
|
},
|
||||||
|
"endpointURL": {
|
||||||
|
"description": "S3 Endpoint used to upload data to the cloud",
|
||||||
|
"type": "string",
|
||||||
|
"default": "http://minio-gateway-service:9000"
|
||||||
|
},
|
||||||
|
"retentionPolicy": {
|
||||||
|
"description": "Retention policy",
|
||||||
|
"type": "string",
|
||||||
|
"default": "30d"
|
||||||
|
},
|
||||||
|
"s3AccessKey": {
|
||||||
|
"description": "Access key for S3, used for authentication",
|
||||||
|
"type": "string",
|
||||||
|
"default": "oobaiRus9pah8PhohL1ThaeTa4UVa7gu"
|
||||||
|
},
|
||||||
|
"s3SecretKey": {
|
||||||
|
"description": "Secret key for S3, used for authentication",
|
||||||
|
"type": "string",
|
||||||
|
"default": "ju3eum4dekeich9ahM1te8waeGai0oog"
|
||||||
|
},
|
||||||
|
"schedule": {
|
||||||
|
"description": "Cron schedule for automated backups",
|
||||||
|
"type": "string",
|
||||||
|
"default": "0 2 * * * *"
|
||||||
|
}
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"cloudInitSeed": {
|
"bootstrap": {
|
||||||
"default": "",
|
"description": "Bootstrap configuration",
|
||||||
"description": "A seed string to generate an SMBIOS UUID for the VM.",
|
"type": "object",
|
||||||
"type": "string"
|
"required": [
|
||||||
|
"enabled",
|
||||||
|
"oldName",
|
||||||
|
"recoveryTime"
|
||||||
|
],
|
||||||
|
"properties": {
|
||||||
|
"enabled": {
|
||||||
|
"description": "Restore database cluster from a backup",
|
||||||
|
"type": "boolean",
|
||||||
|
"default": false
|
||||||
|
},
|
||||||
|
"oldName": {
|
||||||
|
"description": "Name of database cluster before deleting",
|
||||||
|
"type": "string"
|
||||||
|
},
|
||||||
|
"recoveryTime": {
|
||||||
|
"description": "Timestamp (PITR) up to which recovery will proceed, expressed in RFC 3339 format. If left empty, will restore latest",
|
||||||
|
"type": "string"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"databases": {
|
||||||
|
"description": "Databases configuration",
|
||||||
|
"type": "object",
|
||||||
|
"additionalProperties": {
|
||||||
|
"type": "object",
|
||||||
|
"required": [
|
||||||
|
"roles"
|
||||||
|
],
|
||||||
|
"properties": {
|
||||||
|
"extensions": {
|
||||||
|
"description": "Extensions enabled for the database",
|
||||||
|
"type": "array",
|
||||||
|
"items": {
|
||||||
|
"type": "string"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"roles": {
|
||||||
|
"description": "Roles for the database",
|
||||||
|
"type": "object",
|
||||||
|
"properties": {
|
||||||
|
"admin": {
|
||||||
|
"description": "List of users with admin privileges",
|
||||||
|
"type": "array",
|
||||||
|
"items": {
|
||||||
|
"type": "string"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"readonly": {
|
||||||
|
"description": "List of users with read-only privileges",
|
||||||
|
"type": "array",
|
||||||
|
"items": {
|
||||||
|
"type": "string"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"external": {
|
"external": {
|
||||||
"default": false,
|
|
||||||
"description": "Enable external access from outside the cluster",
|
"description": "Enable external access from outside the cluster",
|
||||||
"type": "boolean"
|
"type": "boolean",
|
||||||
},
|
"default": false
|
||||||
"externalMethod": {
|
|
||||||
"default": "PortList",
|
|
||||||
"description": "specify method to passthrough the traffic to the virtual machine. Allowed values: `WholeIP` and `PortList`",
|
|
||||||
"type": "string",
|
|
||||||
"enum": [
|
|
||||||
"PortList",
|
|
||||||
"WholeIP"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"externalPorts": {
|
|
||||||
"default": [],
|
|
||||||
"description": "Specify ports to forward from outside the cluster",
|
|
||||||
"items": {
|
|
||||||
"type": "integer"
|
|
||||||
},
|
|
||||||
"type": "array"
|
|
||||||
},
|
},
|
||||||
"gpus": {
|
"gpus": {
|
||||||
"default": [],
|
|
||||||
"description": "List of GPUs to attach",
|
"description": "List of GPUs to attach",
|
||||||
|
"type": "array",
|
||||||
"items": {
|
"items": {
|
||||||
"type": "object"
|
"type": "object",
|
||||||
|
"required": [
|
||||||
|
"name"
|
||||||
|
],
|
||||||
|
"properties": {
|
||||||
|
"name": {
|
||||||
|
"description": "The name of the GPU to attach. This should match the GPU resource name in the cluster.",
|
||||||
|
"type": "string"
|
||||||
|
}
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"type": "array"
|
"default": []
|
||||||
},
|
},
|
||||||
"instanceProfile": {
|
"postgresql": {
|
||||||
"default": "ubuntu",
|
"description": "PostgreSQL server configuration",
|
||||||
"description": "Virtual Machine preferences profile",
|
"type": "object",
|
||||||
|
"required": [
|
||||||
|
"parameters"
|
||||||
|
],
|
||||||
|
"properties": {
|
||||||
|
"parameters": {
|
||||||
|
"description": "PostgreSQL server parameters",
|
||||||
|
"type": "object",
|
||||||
|
"required": [
|
||||||
|
"max_connections"
|
||||||
|
],
|
||||||
|
"properties": {
|
||||||
|
"max_connections": {
|
||||||
|
"description": "Determines the maximum number of concurrent connections to the database server. The default is typically 100 connections",
|
||||||
|
"type": "integer",
|
||||||
|
"default": 100
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"quorum": {
|
||||||
|
"description": "Quorum configuration for synchronous replication",
|
||||||
|
"type": "object",
|
||||||
|
"required": [
|
||||||
|
"maxSyncReplicas",
|
||||||
|
"minSyncReplicas"
|
||||||
|
],
|
||||||
|
"properties": {
|
||||||
|
"maxSyncReplicas": {
|
||||||
|
"description": "Maximum number of synchronous replicas that can acknowledge a transaction (must be lower than the number of instances).",
|
||||||
|
"type": "integer",
|
||||||
|
"default": 0
|
||||||
|
},
|
||||||
|
"minSyncReplicas": {
|
||||||
|
"description": "Minimum number of synchronous replicas that must acknowledge a transaction before it is considered committed.",
|
||||||
|
"type": "integer",
|
||||||
|
"default": 0
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"replicas": {
|
||||||
|
"description": "Number of Postgres replicas",
|
||||||
|
"type": "integer",
|
||||||
|
"default": 2
|
||||||
|
},
|
||||||
|
"resources": {
|
||||||
|
"description": "Resources",
|
||||||
|
"type": "object",
|
||||||
|
"properties": {
|
||||||
|
"cpu": {
|
||||||
|
"description": "CPU",
|
||||||
|
"type": "string",
|
||||||
|
"pattern": "^(\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?$",
|
||||||
|
"x-kubernetes-int-or-string": true
|
||||||
|
},
|
||||||
|
"memory": {
|
||||||
|
"description": "Memory",
|
||||||
|
"type": "string",
|
||||||
|
"pattern": "^(\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?$",
|
||||||
|
"x-kubernetes-int-or-string": true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"resourcesPreset": {
|
||||||
|
"description": "Default sizing preset used when `resources` is omitted.",
|
||||||
"type": "string",
|
"type": "string",
|
||||||
"optional": true,
|
"default": "micro",
|
||||||
"enum": [
|
"enum": [
|
||||||
"alpine",
|
"nano",
|
||||||
"centos.7",
|
"micro",
|
||||||
"centos.7.desktop",
|
"small",
|
||||||
"centos.stream10",
|
"medium",
|
||||||
"centos.stream10.desktop",
|
"large",
|
||||||
"centos.stream8",
|
"xlarge",
|
||||||
"centos.stream8.desktop",
|
"2xlarge"
|
||||||
"centos.stream8.dpdk",
|
|
||||||
"centos.stream9",
|
|
||||||
"centos.stream9.desktop",
|
|
||||||
"centos.stream9.dpdk",
|
|
||||||
"cirros",
|
|
||||||
"fedora",
|
|
||||||
"fedora.arm64",
|
|
||||||
"opensuse.leap",
|
|
||||||
"opensuse.tumbleweed",
|
|
||||||
"rhel.10",
|
|
||||||
"rhel.10.arm64",
|
|
||||||
"rhel.7",
|
|
||||||
"rhel.7.desktop",
|
|
||||||
"rhel.8",
|
|
||||||
"rhel.8.desktop",
|
|
||||||
"rhel.8.dpdk",
|
|
||||||
"rhel.9",
|
|
||||||
"rhel.9.arm64",
|
|
||||||
"rhel.9.desktop",
|
|
||||||
"rhel.9.dpdk",
|
|
||||||
"rhel.9.realtime",
|
|
||||||
"sles",
|
|
||||||
"ubuntu",
|
|
||||||
"windows.10",
|
|
||||||
"windows.10.virtio",
|
|
||||||
"windows.11",
|
|
||||||
"windows.11.virtio",
|
|
||||||
"windows.2k16",
|
|
||||||
"windows.2k16.virtio",
|
|
||||||
"windows.2k19",
|
|
||||||
"windows.2k19.virtio",
|
|
||||||
"windows.2k22",
|
|
||||||
"windows.2k22.virtio",
|
|
||||||
"windows.2k25",
|
|
||||||
"windows.2k25.virtio",
|
|
||||||
""
|
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"instanceType": {
|
"size": {
|
||||||
"default": "u1.medium",
|
"description": "Persistent Volume size",
|
||||||
"description": "Virtual Machine instance type",
|
|
||||||
"type": "string",
|
"type": "string",
|
||||||
|
"default": "10Gi"
|
||||||
|
},
|
||||||
|
"storageClass": {
|
||||||
|
"description": "StorageClass used to store the data",
|
||||||
|
"type": "string"
|
||||||
|
},
|
||||||
|
"users": {
|
||||||
|
"description": "Users configuration",
|
||||||
|
"type": "object",
|
||||||
|
"additionalProperties": {
|
||||||
|
"type": "object",
|
||||||
|
"required": [
|
||||||
|
"password",
|
||||||
|
"replication"
|
||||||
|
],
|
||||||
|
"properties": {
|
||||||
|
"password": {
|
||||||
|
"description": "Password for the user",
|
||||||
|
"type": "string"
|
||||||
|
},
|
||||||
|
"replication": {
|
||||||
|
"description": "Whether the user has replication privileges",
|
||||||
|
"type": "boolean"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"instanceType": {
|
||||||
"optional": true,
|
"optional": true,
|
||||||
"enum": [
|
"enum": [
|
||||||
"cx1.2xlarge",
|
"cx1.2xlarge",
|
||||||
@@ -148,43 +301,62 @@
|
|||||||
""
|
""
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"resources": {
|
"instanceProfile": {
|
||||||
"properties": {
|
"optional": true,
|
||||||
"cpu": {
|
"enum": [
|
||||||
"default": "",
|
"alpine",
|
||||||
"description": "The number of CPU cores allocated to the virtual machine",
|
"centos.7",
|
||||||
"type": "string"
|
"centos.7.desktop",
|
||||||
},
|
"centos.stream10",
|
||||||
"memory": {
|
"centos.stream10.desktop",
|
||||||
"default": "",
|
"centos.stream8",
|
||||||
"description": "The amount of memory allocated to the virtual machine",
|
"centos.stream8.desktop",
|
||||||
"type": "string"
|
"centos.stream8.dpdk",
|
||||||
},
|
"centos.stream9",
|
||||||
"sockets": {
|
"centos.stream9.desktop",
|
||||||
"default": "",
|
"centos.stream9.dpdk",
|
||||||
"description": "The number of CPU sockets allocated to the virtual machine (used to define vCPU topology)",
|
"cirros",
|
||||||
"type": "string"
|
"fedora",
|
||||||
}
|
"fedora.arm64",
|
||||||
},
|
"opensuse.leap",
|
||||||
"type": "object"
|
"opensuse.tumbleweed",
|
||||||
|
"rhel.10",
|
||||||
|
"rhel.10.arm64",
|
||||||
|
"rhel.7",
|
||||||
|
"rhel.7.desktop",
|
||||||
|
"rhel.8",
|
||||||
|
"rhel.8.desktop",
|
||||||
|
"rhel.8.dpdk",
|
||||||
|
"rhel.9",
|
||||||
|
"rhel.9.arm64",
|
||||||
|
"rhel.9.desktop",
|
||||||
|
"rhel.9.dpdk",
|
||||||
|
"rhel.9.realtime",
|
||||||
|
"sles",
|
||||||
|
"ubuntu",
|
||||||
|
"windows.10",
|
||||||
|
"windows.10.virtio",
|
||||||
|
"windows.11",
|
||||||
|
"windows.11.virtio",
|
||||||
|
"windows.2k16",
|
||||||
|
"windows.2k16.virtio",
|
||||||
|
"windows.2k19",
|
||||||
|
"windows.2k19.virtio",
|
||||||
|
"windows.2k22",
|
||||||
|
"windows.2k22.virtio",
|
||||||
|
"windows.2k25",
|
||||||
|
"windows.2k25.virtio",
|
||||||
|
""
|
||||||
|
]
|
||||||
},
|
},
|
||||||
"running": {
|
"externalPorts": {
|
||||||
"default": true,
|
"items": {
|
||||||
"description": "Determines if the virtual machine should be running",
|
"type": "integer"
|
||||||
"type": "boolean"
|
}
|
||||||
},
|
|
||||||
"sshKeys": {
|
|
||||||
"default": [],
|
|
||||||
"description": "List of SSH public keys for authentication. Can be a single key or a list of keys.",
|
|
||||||
"items": {},
|
|
||||||
"type": "array"
|
|
||||||
},
|
},
|
||||||
"systemDisk": {
|
"systemDisk": {
|
||||||
"properties": {
|
"properties": {
|
||||||
"image": {
|
"image": {
|
||||||
"default": "ubuntu",
|
|
||||||
"description": "The base image for the virtual machine. Allowed values: `ubuntu`, `cirros`, `alpine`, `fedora` and `talos`",
|
|
||||||
"type": "string",
|
|
||||||
"enum": [
|
"enum": [
|
||||||
"ubuntu",
|
"ubuntu",
|
||||||
"cirros",
|
"cirros",
|
||||||
@@ -192,21 +364,14 @@
|
|||||||
"fedora",
|
"fedora",
|
||||||
"talos"
|
"talos"
|
||||||
]
|
]
|
||||||
},
|
|
||||||
"storage": {
|
|
||||||
"default": "5Gi",
|
|
||||||
"description": "The size of the disk allocated for the virtual machine",
|
|
||||||
"type": "string"
|
|
||||||
},
|
|
||||||
"storageClass": {
|
|
||||||
"default": "replicated",
|
|
||||||
"description": "StorageClass used to store the data",
|
|
||||||
"type": "string"
|
|
||||||
}
|
}
|
||||||
},
|
}
|
||||||
"type": "object"
|
},
|
||||||
|
"externalMethod": {
|
||||||
|
"enum": [
|
||||||
|
"PortList",
|
||||||
|
"WholeIP"
|
||||||
|
]
|
||||||
}
|
}
|
||||||
},
|
}
|
||||||
"title": "Chart Values",
|
|
||||||
"type": "object"
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,69 +1,124 @@
|
|||||||
|
|
||||||
## @section Common parameters
|
## @section Common parameters
|
||||||
|
|
||||||
## @param external Enable external access from outside the cluster
|
## @param external {bool} Enable external access from outside the cluster
|
||||||
## @param externalMethod specify method to passthrough the traffic to the virtual machine. Allowed values: `WholeIP` and `PortList`
|
## @param size {string} Persistent Volume size
|
||||||
## @param externalPorts [array] Specify ports to forward from outside the cluster
|
## @param replicas {int} Number of Postgres replicas
|
||||||
|
## @param storageClass {string} StorageClass used to store the data
|
||||||
|
##
|
||||||
external: false
|
external: false
|
||||||
externalMethod: PortList
|
size: 10Gi
|
||||||
externalPorts:
|
replicas: 2
|
||||||
- 22
|
storageClass: ""
|
||||||
|
|
||||||
## @param running Determines if the virtual machine should be running
|
## @param postgresql {postgresql} PostgreSQL server configuration
|
||||||
running: true
|
## @field postgresql.parameters {postgresqlParameters} PostgreSQL server parameters
|
||||||
|
## @field postgresqlParameters.max_connections {int} Determines the maximum number of concurrent connections to the database server. The default is typically 100 connections
|
||||||
## @param instanceType Virtual Machine instance type
|
|
||||||
## @param instanceProfile Virtual Machine preferences profile
|
|
||||||
##
|
##
|
||||||
instanceType: "u1.medium"
|
postgresql:
|
||||||
instanceProfile: ubuntu
|
parameters:
|
||||||
|
max_connections: 100
|
||||||
|
|
||||||
## @param systemDisk.image The base image for the virtual machine. Allowed values: `ubuntu`, `cirros`, `alpine`, `fedora` and `talos`
|
## Configuration for the quorum-based synchronous replication
|
||||||
## @param systemDisk.storage The size of the disk allocated for the virtual machine
|
## @param quorum {quorum} Quorum configuration for synchronous replication
|
||||||
## @param systemDisk.storageClass StorageClass used to store the data
|
## @field quorum.minSyncReplicas {int} Minimum number of synchronous replicas that must acknowledge a transaction before it is considered committed.
|
||||||
|
## @field quorum.maxSyncReplicas {int} Maximum number of synchronous replicas that can acknowledge a transaction (must be lower than the number of instances).
|
||||||
|
quorum:
|
||||||
|
minSyncReplicas: 0
|
||||||
|
maxSyncReplicas: 0
|
||||||
|
|
||||||
|
## @section Configuration parameters
|
||||||
|
|
||||||
|
## @param users {map[string]user} Users configuration
|
||||||
|
## @field user.password {string} Password for the user
|
||||||
|
## @field user.replication {bool} Whether the user has replication privileges
|
||||||
##
|
##
|
||||||
systemDisk:
|
## Example:
|
||||||
image: ubuntu
|
## users:
|
||||||
storage: 5Gi
|
## user1:
|
||||||
storageClass: replicated
|
## password: strongpassword
|
||||||
|
## user2:
|
||||||
|
## password: hackme
|
||||||
|
## airflow:
|
||||||
|
## password: qwerty123
|
||||||
|
## debezium:
|
||||||
|
## replication: true
|
||||||
|
##
|
||||||
|
users: {}
|
||||||
|
|
||||||
## @param gpus [array] List of GPUs to attach
|
## @param databases {map[string]database} Databases configuration
|
||||||
|
## @field database.roles {databaseRoles} Roles for the database
|
||||||
|
## @field databaseRoles.admin {[]string} List of users with admin privileges
|
||||||
|
## @field databaseRoles.readonly {[]string} List of users with read-only privileges
|
||||||
|
## @field database.extensions {[]string} Extensions enabled for the database
|
||||||
|
##
|
||||||
|
## Example:
|
||||||
|
## databases:
|
||||||
|
## myapp:
|
||||||
|
## roles:
|
||||||
|
## admin:
|
||||||
|
## - user1
|
||||||
|
## - debezium
|
||||||
|
## readonly:
|
||||||
|
## - user2
|
||||||
|
## airflow:
|
||||||
|
## roles:
|
||||||
|
## admin:
|
||||||
|
## - airflow
|
||||||
|
## extensions:
|
||||||
|
## - hstore
|
||||||
|
databases:
|
||||||
|
asd:
|
||||||
|
roles: {}
|
||||||
|
assg: {}
|
||||||
|
|
||||||
|
## @section Backup parameters
|
||||||
|
|
||||||
|
## @param backup {backup} Backup configuration
|
||||||
|
## @field backup.enabled {bool} Enable regular backups
|
||||||
|
## @field backup.schedule {string} Cron schedule for automated backups
|
||||||
|
## @field backup.retentionPolicy {string} Retention policy
|
||||||
|
## @field backup.destinationPath {string} Path to store the backup (i.e. s3://bucket/path/to/folder)
|
||||||
|
## @field backup.endpointURL {string} S3 Endpoint used to upload data to the cloud
|
||||||
|
## @field backup.s3AccessKey {string} Access key for S3, used for authentication
|
||||||
|
## @field backup.s3SecretKey {string} Secret key for S3, used for authentication
|
||||||
|
backup:
|
||||||
|
enabled: false
|
||||||
|
retentionPolicy: 30d
|
||||||
|
destinationPath: s3://bucket/path/to/folder/
|
||||||
|
endpointURL: http://minio-gateway-service:9000
|
||||||
|
schedule: "0 2 * * * *"
|
||||||
|
s3AccessKey: oobaiRus9pah8PhohL1ThaeTa4UVa7gu
|
||||||
|
s3SecretKey: ju3eum4dekeich9ahM1te8waeGai0oog
|
||||||
|
|
||||||
|
## @section Bootstrap parameters
|
||||||
|
|
||||||
|
## @param bootstrap {bootstrap} Bootstrap configuration
|
||||||
|
## @field bootstrap.enabled {bool} Restore database cluster from a backup
|
||||||
|
## @field bootstrap.recoveryTime {string} Timestamp (PITR) up to which recovery will proceed, expressed in RFC 3339 format. If left empty, will restore latest
|
||||||
|
## @field bootstrap.oldName {string} Name of database cluster before deleting
|
||||||
|
##
|
||||||
|
bootstrap:
|
||||||
|
enabled: false
|
||||||
|
# example: 2020-11-26 15:22:00.00000+00
|
||||||
|
recoveryTime: ""
|
||||||
|
oldName: ""
|
||||||
|
|
||||||
|
## @param resources {resources} Resources
|
||||||
|
## @field resources.cpu {*quantity} CPU
|
||||||
|
## @field resources.memory {*quantity} Memory
|
||||||
|
resources: {}
|
||||||
|
# resources:
|
||||||
|
# cpu: 4000m
|
||||||
|
# memory: 4Gi
|
||||||
|
|
||||||
|
## @param resourcesPreset {string enum:"nano,micro,small,medium,large,xlarge,2xlarge"} Default sizing preset used when `resources` is omitted.
|
||||||
|
resourcesPreset: "micro"
|
||||||
|
|
||||||
|
|
||||||
|
## @param gpus {[]gpu} List of GPUs to attach
|
||||||
|
## @field gpu.name {string} The name of the GPU to attach. This should match the GPU resource name in the cluster.
|
||||||
## Example:
|
## Example:
|
||||||
## gpus:
|
## gpus:
|
||||||
## - name: nvidia.com/GA102GL_A10
|
## - name: nvidia.com/GA102GL_A10
|
||||||
gpus: []
|
gpus: []
|
||||||
|
|
||||||
## @param resources.cpu The number of CPU cores allocated to the virtual machine
|
|
||||||
## @param resources.memory The amount of memory allocated to the virtual machine
|
|
||||||
## @param resources.sockets The number of CPU sockets allocated to the virtual machine (used to define vCPU topology)
|
|
||||||
resources:
|
|
||||||
cpu: ""
|
|
||||||
memory: ""
|
|
||||||
sockets: ""
|
|
||||||
|
|
||||||
## @param sshKeys [array] List of SSH public keys for authentication. Can be a single key or a list of keys.
|
|
||||||
## Example:
|
|
||||||
## sshKeys:
|
|
||||||
## - ssh-rsa ...
|
|
||||||
## - ssh-ed25519 ...
|
|
||||||
##
|
|
||||||
sshKeys: []
|
|
||||||
|
|
||||||
## @param cloudInit cloud-init user data config. See cloud-init documentation for more details.
|
|
||||||
## - https://cloudinit.readthedocs.io/en/latest/explanation/format.html
|
|
||||||
## - https://cloudinit.readthedocs.io/en/latest/reference/examples.html
|
|
||||||
## Example:
|
|
||||||
## cloudInit: |
|
|
||||||
## #cloud-config
|
|
||||||
## password: ubuntu
|
|
||||||
## chpasswd: { expire: False }
|
|
||||||
##
|
|
||||||
cloudInit: ""
|
|
||||||
|
|
||||||
## @param cloudInitSeed A seed string to generate an SMBIOS UUID for the VM.
|
|
||||||
cloudInitSeed: ""
|
|
||||||
## Change it to any new value to force a full cloud-init reconfiguration. Change it when you want to apply
|
|
||||||
## to an existing VM settings that are usually written only once, like new SSH keys or new network configuration.
|
|
||||||
## An empty value does nothing (and the existing UUID is not reverted). Please note that changing this value
|
|
||||||
## does not trigger a VM restart. You must perform the restart separately.
|
|
||||||
## Example:
|
|
||||||
## cloudInitSeed: "upd1"
|
|
||||||
|
|||||||
@@ -6,7 +6,7 @@ include ../../../scripts/common-envs.mk
|
|||||||
include ../../../scripts/package.mk
|
include ../../../scripts/package.mk
|
||||||
|
|
||||||
generate:
|
generate:
|
||||||
readme-generator-for-helm -v values.yaml -s values.schema.json.tmp -r README.md
|
cozyvalues-gen -v values.yaml -s values.schema.json.tmp -r README.md
|
||||||
cat values.schema.json.tmp | \
|
cat values.schema.json.tmp | \
|
||||||
jq '.properties.metricsStorages.items.type = "object" | .properties.logsStorages.items.type = "object"' \
|
jq '.properties.metricsStorages.items.type = "object" | .properties.logsStorages.items.type = "object"' \
|
||||||
> values.schema.json
|
> values.schema.json
|
||||||
|
|||||||
@@ -4,22 +4,45 @@
|
|||||||
|
|
||||||
### Common parameters
|
### Common parameters
|
||||||
|
|
||||||
| Name | Description | Value |
|
| Name | Description | Type | Value |
|
||||||
| ----------------------------------------- | --------------------------------------------------------------------------------------------------------- | ------- |
|
| ----------------------------------------- | --------------------------------------------------------------------------------------------------------- | ------------------ | ------ |
|
||||||
| `host` | The hostname used to access the grafana externally (defaults to 'grafana' subdomain for the tenant host). | `""` |
|
| `host` | The hostname used to access the grafana externally (defaults to 'grafana' subdomain for the tenant host). | `string` | `` |
|
||||||
| `metricsStorages` | Configuration of metrics storage instances | `[]` |
|
| `metricsStorages` | Configuration of metrics storage instances | `[]metricsStorage` | `null` |
|
||||||
| `logsStorages` | Configuration of logs storage instances | `[]` |
|
| `metricsStorages[].name` | Name of the storage instance | `string` | |
|
||||||
| `alerta.storage` | Persistent Volume size for alerta database | `10Gi` |
|
| `metricsStorages[].retentionPeriod` | Retention period for the metrics in the storage instance | `string` | |
|
||||||
| `alerta.storageClassName` | StorageClass used to store the data | `""` |
|
| `metricsStorages[].deduplicationInterval` | Deduplication interval for the metrics in the storage instance | `string` | |
|
||||||
| `alerta.resources.requests.cpu` | The minimum amount of CPU required for alerta | `100m` |
|
| `metricsStorages[].storage` | Persistent Volume size for the storage instance | `string` | |
|
||||||
| `alerta.resources.requests.memory` | The minimum amount of memory required for alerta | `256Mi` |
|
| `metricsStorages[].storageClassName` | StorageClass used to store the data | `*string` | |
|
||||||
| `alerta.resources.limits.cpu` | The maximum amount of CPU allowed for alerta | `1` |
|
| `metricsStorages[].vminsert` | Configuration for vminsert component of the storage instance | `object` | |
|
||||||
| `alerta.resources.limits.memory` | The maximum amount of memory allowed for alerta | `1Gi` |
|
| `metricsStorages[].vmselect` | Configuration for vmselect component of the storage instance | `object` | |
|
||||||
| `alerta.alerts.telegram.token` | telegram token for your bot | `""` |
|
| `metricsStorages[].vmstorage` | Configuration for vmstorage component of the storage instance | `object` | |
|
||||||
| `alerta.alerts.telegram.chatID` | specify multiple ID's separated by comma. Get yours in https://t.me/chatid_echo_bot | `""` |
|
| `metricsStorages[].vminsert.minAllowed` | Minimum allowed resources for vminsert component | `object` | |
|
||||||
| `alerta.alerts.telegram.disabledSeverity` | list of severity without alerts, separated comma like: "informational,warning" | `""` |
|
| `metricsStorages[].vminsert.maxAllowed` | Maximum allowed resources for vminsert component | `object` | |
|
||||||
| `grafana.db.size` | Persistent Volume size for grafana database | `10Gi` |
|
| `metricsStorages[].vmselect.minAllowed` | Minimum allowed resources for vminsert component | `object` | |
|
||||||
| `grafana.resources.requests.cpu` | The minimum amount of CPU required for grafana | `100m` |
|
| `metricsStorages[].vmselect.maxAllowed` | Maximum allowed resources for vminsert component | `object` | |
|
||||||
| `grafana.resources.requests.memory` | The minimum amount of memory required for grafana | `256Mi` |
|
| `metricsStorages[].vmstorage.minAllowed` | Minimum allowed resources for vminsert component | `object` | |
|
||||||
| `grafana.resources.limits.cpu` | The maximum amount of CPU allowed for grafana | `1` |
|
| `metricsStorages[].vmstorage.maxAllowed` | Maximum allowed resources for vminsert component | `object` | |
|
||||||
| `grafana.resources.limits.memory` | The maximum amount of memory allowed for grafana | `1Gi` |
|
| `grafana.resources.requests.cpu` | CPU resources | `*quantity` | |
|
||||||
|
| `grafana.resources.requests.memory` | Memory resources | `*quantity` | |
|
||||||
|
| `logsStorages` | Configuration of logs storage instances | `[]logsStorage` | `null` |
|
||||||
|
| `logsStorages[].name` | Name of the storage instance | `string` | |
|
||||||
|
| `logsStorages[].retentionPeriod` | Retention period for the logs in the storage instance | `string` | |
|
||||||
|
| `logsStorages[].storage` | Persistent Volume size for the storage instance | `string` | |
|
||||||
|
| `logsStorages[].storageClassName` | StorageClass used to store the data | `*string` | |
|
||||||
|
| `alerta` | Configuration for Alerta | `object` | `null` |
|
||||||
|
| `alerta.storage` | Persistent Volume size for alerta database | `string` | |
|
||||||
|
| `alerta.storageClassName` | StorageClass used to store the data | `string` | |
|
||||||
|
| `alerta.resources` | Resources configuration for alerta | `object` | |
|
||||||
|
| `alerta.resources.limits` | Resources limits for alerta | `object` | |
|
||||||
|
| `alerta.resources.requests` | Resources requests for alerta | `object` | |
|
||||||
|
| `alerta.alerts` | Configuration for alerts | `object` | |
|
||||||
|
| `alerta.alerts.telegram` | Configuration for Telegram alerts | `object` | |
|
||||||
|
| `alerta.alerts.telegram.token` | Telegram token for your bot | `string` | |
|
||||||
|
| `alerta.alerts.telegram.chatID` | Specify multiple ID's separated by comma. Get yours in https://t.me/chatid_echo_bot | `string` | |
|
||||||
|
| `alerta.alerts.telegram.disabledSeverity` | List of severity without alerts, separated by comma like: "informational,warning" | `string` | |
|
||||||
|
| `grafana` | Configuration for Grafana | `object` | `null` |
|
||||||
|
| `grafana.db` | | `object` | |
|
||||||
|
| `grafana.db.size` | Persistent Volume size for grafana database | `string` | |
|
||||||
|
| `grafana.resources` | Resources configuration for grafana | `object` | |
|
||||||
|
| `grafana.resources.limits` | Resources limits for grafana | `object` | |
|
||||||
|
| `grafana.resources.requests` | Resources requests for grafana | `object` | |
|
||||||
|
|||||||
@@ -1,152 +1,330 @@
|
|||||||
{
|
{
|
||||||
|
"title": "Chart Values",
|
||||||
|
"type": "object",
|
||||||
"properties": {
|
"properties": {
|
||||||
"alerta": {
|
"alerta": {
|
||||||
|
"description": "Configuration for Alerta",
|
||||||
|
"type": "object",
|
||||||
|
"required": [
|
||||||
|
"storage",
|
||||||
|
"storageClassName"
|
||||||
|
],
|
||||||
"properties": {
|
"properties": {
|
||||||
"alerts": {
|
|
||||||
"properties": {
|
|
||||||
"telegram": {
|
|
||||||
"properties": {
|
|
||||||
"chatID": {
|
|
||||||
"default": "",
|
|
||||||
"description": "specify multiple ID's separated by comma. Get yours in https://t.me/chatid_echo_bot",
|
|
||||||
"type": "string"
|
|
||||||
},
|
|
||||||
"disabledSeverity": {
|
|
||||||
"default": "",
|
|
||||||
"description": "list of severity without alerts, separated comma like: \"informational,warning\"",
|
|
||||||
"type": "string"
|
|
||||||
},
|
|
||||||
"token": {
|
|
||||||
"default": "",
|
|
||||||
"description": "telegram token for your bot",
|
|
||||||
"type": "string"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"type": "object"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"type": "object"
|
|
||||||
},
|
|
||||||
"resources": {
|
"resources": {
|
||||||
|
"description": "Resources configuration for alerta",
|
||||||
|
"type": "object",
|
||||||
"properties": {
|
"properties": {
|
||||||
"limits": {
|
"limits": {
|
||||||
|
"description": "Resources limits for alerta",
|
||||||
|
"type": "object",
|
||||||
"properties": {
|
"properties": {
|
||||||
"cpu": {
|
"cpu": {
|
||||||
"default": "1",
|
"description": "CPU resources",
|
||||||
"description": "The maximum amount of CPU allowed for alerta",
|
"type": "string",
|
||||||
"type": "string"
|
"default": "100m",
|
||||||
|
"pattern": "^(\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?$",
|
||||||
|
"x-kubernetes-int-or-string": true
|
||||||
},
|
},
|
||||||
"memory": {
|
"memory": {
|
||||||
"default": "1Gi",
|
"description": "Memory resources",
|
||||||
"description": "The maximum amount of memory allowed for alerta",
|
"type": "string",
|
||||||
"type": "string"
|
"default": "256Mi",
|
||||||
|
"pattern": "^(\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?$",
|
||||||
|
"x-kubernetes-int-or-string": true
|
||||||
}
|
}
|
||||||
},
|
}
|
||||||
"type": "object"
|
|
||||||
},
|
},
|
||||||
"requests": {
|
"requests": {
|
||||||
|
"description": "Resources requests for alerta",
|
||||||
|
"type": "object",
|
||||||
"properties": {
|
"properties": {
|
||||||
"cpu": {
|
"cpu": {
|
||||||
|
"description": "CPU resources",
|
||||||
|
"type": "string",
|
||||||
"default": "100m",
|
"default": "100m",
|
||||||
"description": "The minimum amount of CPU required for alerta",
|
"pattern": "^(\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?$",
|
||||||
"type": "string"
|
"x-kubernetes-int-or-string": true
|
||||||
},
|
},
|
||||||
"memory": {
|
"memory": {
|
||||||
|
"description": "Memory resources",
|
||||||
|
"type": "string",
|
||||||
"default": "256Mi",
|
"default": "256Mi",
|
||||||
"description": "The minimum amount of memory required for alerta",
|
"pattern": "^(\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?$",
|
||||||
"type": "string"
|
"x-kubernetes-int-or-string": true
|
||||||
}
|
}
|
||||||
},
|
}
|
||||||
"type": "object"
|
|
||||||
}
|
}
|
||||||
},
|
}
|
||||||
"type": "object"
|
|
||||||
},
|
},
|
||||||
"storage": {
|
"storage": {
|
||||||
"default": "10Gi",
|
|
||||||
"description": "Persistent Volume size for alerta database",
|
"description": "Persistent Volume size for alerta database",
|
||||||
"type": "string"
|
"type": "string",
|
||||||
|
"default": "10Gi"
|
||||||
},
|
},
|
||||||
"storageClassName": {
|
"storageClassName": {
|
||||||
"default": "",
|
|
||||||
"description": "StorageClass used to store the data",
|
"description": "StorageClass used to store the data",
|
||||||
"type": "string"
|
"type": "string"
|
||||||
}
|
}
|
||||||
},
|
}
|
||||||
"type": "object"
|
|
||||||
},
|
},
|
||||||
"grafana": {
|
"grafana": {
|
||||||
|
"description": "Configuration for Grafana",
|
||||||
|
"type": "object",
|
||||||
"properties": {
|
"properties": {
|
||||||
"db": {
|
|
||||||
"properties": {
|
|
||||||
"size": {
|
|
||||||
"default": "10Gi",
|
|
||||||
"description": "Persistent Volume size for grafana database",
|
|
||||||
"type": "string"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"type": "object"
|
|
||||||
},
|
|
||||||
"resources": {
|
"resources": {
|
||||||
|
"description": "Resources configuration for grafana",
|
||||||
|
"type": "object",
|
||||||
"properties": {
|
"properties": {
|
||||||
"limits": {
|
"limits": {
|
||||||
|
"description": "Resources limits for grafana",
|
||||||
|
"type": "object",
|
||||||
"properties": {
|
"properties": {
|
||||||
"cpu": {
|
"cpu": {
|
||||||
"default": "1",
|
"description": "CPU resources",
|
||||||
"description": "The maximum amount of CPU allowed for grafana",
|
"type": "string",
|
||||||
"type": "string"
|
"default": "100m",
|
||||||
|
"pattern": "^(\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?$",
|
||||||
|
"x-kubernetes-int-or-string": true
|
||||||
},
|
},
|
||||||
"memory": {
|
"memory": {
|
||||||
"default": "1Gi",
|
"description": "Memory resources",
|
||||||
"description": "The maximum amount of memory allowed for grafana",
|
"type": "string",
|
||||||
"type": "string"
|
"default": "256Mi",
|
||||||
|
"pattern": "^(\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?$",
|
||||||
|
"x-kubernetes-int-or-string": true
|
||||||
}
|
}
|
||||||
},
|
}
|
||||||
"type": "object"
|
|
||||||
},
|
},
|
||||||
"requests": {
|
"requests": {
|
||||||
|
"description": "Resources requests for grafana",
|
||||||
|
"type": "object",
|
||||||
"properties": {
|
"properties": {
|
||||||
"cpu": {
|
"cpu": {
|
||||||
|
"description": "CPU resources",
|
||||||
|
"type": "string",
|
||||||
"default": "100m",
|
"default": "100m",
|
||||||
"description": "The minimum amount of CPU required for grafana",
|
"pattern": "^(\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?$",
|
||||||
"type": "string"
|
"x-kubernetes-int-or-string": true
|
||||||
},
|
},
|
||||||
"memory": {
|
"memory": {
|
||||||
|
"description": "Memory resources",
|
||||||
|
"type": "string",
|
||||||
"default": "256Mi",
|
"default": "256Mi",
|
||||||
"description": "The minimum amount of memory required for grafana",
|
"pattern": "^(\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?$",
|
||||||
"type": "string"
|
"x-kubernetes-int-or-string": true
|
||||||
}
|
}
|
||||||
},
|
}
|
||||||
"type": "object"
|
|
||||||
}
|
}
|
||||||
},
|
}
|
||||||
"type": "object"
|
|
||||||
}
|
}
|
||||||
},
|
}
|
||||||
"type": "object"
|
|
||||||
},
|
},
|
||||||
"host": {
|
"host": {
|
||||||
"default": "",
|
|
||||||
"description": "The hostname used to access the grafana externally (defaults to 'grafana' subdomain for the tenant host).",
|
"description": "The hostname used to access the grafana externally (defaults to 'grafana' subdomain for the tenant host).",
|
||||||
"type": "string"
|
"type": "string"
|
||||||
},
|
},
|
||||||
"logsStorages": {
|
"logsStorages": {
|
||||||
"default": [],
|
|
||||||
"description": "Configuration of logs storage instances",
|
"description": "Configuration of logs storage instances",
|
||||||
|
"type": "array",
|
||||||
"items": {
|
"items": {
|
||||||
"type": "object"
|
"type": "object",
|
||||||
},
|
"required": [
|
||||||
"type": "array"
|
"name",
|
||||||
|
"retentionPeriod",
|
||||||
|
"storage"
|
||||||
|
],
|
||||||
|
"properties": {
|
||||||
|
"name": {
|
||||||
|
"description": "Name of the storage instance",
|
||||||
|
"type": "string"
|
||||||
|
},
|
||||||
|
"retentionPeriod": {
|
||||||
|
"description": "Retention period for the logs in the storage instance",
|
||||||
|
"type": "string"
|
||||||
|
},
|
||||||
|
"storage": {
|
||||||
|
"description": "Persistent Volume size for the storage instance",
|
||||||
|
"type": "string"
|
||||||
|
},
|
||||||
|
"storageClassName": {
|
||||||
|
"description": "StorageClass used to store the data",
|
||||||
|
"type": "string"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"metricsStorages": {
|
"metricsStorages": {
|
||||||
"default": [],
|
|
||||||
"description": "Configuration of metrics storage instances",
|
"description": "Configuration of metrics storage instances",
|
||||||
|
"type": "array",
|
||||||
"items": {
|
"items": {
|
||||||
"type": "object"
|
"type": "object",
|
||||||
},
|
"required": [
|
||||||
"type": "array"
|
"deduplicationInterval",
|
||||||
|
"name",
|
||||||
|
"retentionPeriod",
|
||||||
|
"storage"
|
||||||
|
],
|
||||||
|
"properties": {
|
||||||
|
"deduplicationInterval": {
|
||||||
|
"description": "Deduplication interval for the metrics in the storage instance",
|
||||||
|
"type": "string"
|
||||||
|
},
|
||||||
|
"name": {
|
||||||
|
"description": "Name of the storage instance",
|
||||||
|
"type": "string"
|
||||||
|
},
|
||||||
|
"retentionPeriod": {
|
||||||
|
"description": "Retention period for the metrics in the storage instance",
|
||||||
|
"type": "string"
|
||||||
|
},
|
||||||
|
"storage": {
|
||||||
|
"description": "Persistent Volume size for the storage instance",
|
||||||
|
"type": "string"
|
||||||
|
},
|
||||||
|
"storageClassName": {
|
||||||
|
"description": "StorageClass used to store the data",
|
||||||
|
"type": "string"
|
||||||
|
},
|
||||||
|
"vminsert": {
|
||||||
|
"description": "Configuration for vminsert component of the storage instance",
|
||||||
|
"type": "object",
|
||||||
|
"properties": {
|
||||||
|
"maxAllowed": {
|
||||||
|
"description": "Maximum allowed resources for vminsert component",
|
||||||
|
"type": "object",
|
||||||
|
"properties": {
|
||||||
|
"cpu": {
|
||||||
|
"description": "CPU resources",
|
||||||
|
"type": "string",
|
||||||
|
"default": "100m",
|
||||||
|
"pattern": "^(\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?$",
|
||||||
|
"x-kubernetes-int-or-string": true
|
||||||
|
},
|
||||||
|
"memory": {
|
||||||
|
"description": "Memory resources",
|
||||||
|
"type": "string",
|
||||||
|
"default": "256Mi",
|
||||||
|
"pattern": "^(\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?$",
|
||||||
|
"x-kubernetes-int-or-string": true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"minAllowed": {
|
||||||
|
"description": "Minimum allowed resources for vminsert component",
|
||||||
|
"type": "object",
|
||||||
|
"properties": {
|
||||||
|
"cpu": {
|
||||||
|
"description": "CPU resources",
|
||||||
|
"type": "string",
|
||||||
|
"default": "100m",
|
||||||
|
"pattern": "^(\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?$",
|
||||||
|
"x-kubernetes-int-or-string": true
|
||||||
|
},
|
||||||
|
"memory": {
|
||||||
|
"description": "Memory resources",
|
||||||
|
"type": "string",
|
||||||
|
"default": "256Mi",
|
||||||
|
"pattern": "^(\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?$",
|
||||||
|
"x-kubernetes-int-or-string": true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"vmselect": {
|
||||||
|
"description": "Configuration for vmselect component of the storage instance",
|
||||||
|
"type": "object",
|
||||||
|
"properties": {
|
||||||
|
"maxAllowed": {
|
||||||
|
"description": "Maximum allowed resources for vminsert component",
|
||||||
|
"type": "object",
|
||||||
|
"properties": {
|
||||||
|
"cpu": {
|
||||||
|
"description": "CPU resources",
|
||||||
|
"type": "string",
|
||||||
|
"default": "100m",
|
||||||
|
"pattern": "^(\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?$",
|
||||||
|
"x-kubernetes-int-or-string": true
|
||||||
|
},
|
||||||
|
"memory": {
|
||||||
|
"description": "Memory resources",
|
||||||
|
"type": "string",
|
||||||
|
"default": "256Mi",
|
||||||
|
"pattern": "^(\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?$",
|
||||||
|
"x-kubernetes-int-or-string": true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"minAllowed": {
|
||||||
|
"description": "Minimum allowed resources for vminsert component",
|
||||||
|
"type": "object",
|
||||||
|
"properties": {
|
||||||
|
"cpu": {
|
||||||
|
"description": "CPU resources",
|
||||||
|
"type": "string",
|
||||||
|
"default": "100m",
|
||||||
|
"pattern": "^(\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?$",
|
||||||
|
"x-kubernetes-int-or-string": true
|
||||||
|
},
|
||||||
|
"memory": {
|
||||||
|
"description": "Memory resources",
|
||||||
|
"type": "string",
|
||||||
|
"default": "256Mi",
|
||||||
|
"pattern": "^(\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?$",
|
||||||
|
"x-kubernetes-int-or-string": true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"vmstorage": {
|
||||||
|
"description": "Configuration for vmstorage component of the storage instance",
|
||||||
|
"type": "object",
|
||||||
|
"properties": {
|
||||||
|
"maxAllowed": {
|
||||||
|
"description": "Maximum allowed resources for vminsert component",
|
||||||
|
"type": "object",
|
||||||
|
"properties": {
|
||||||
|
"cpu": {
|
||||||
|
"description": "CPU resources",
|
||||||
|
"type": "string",
|
||||||
|
"default": "100m",
|
||||||
|
"pattern": "^(\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?$",
|
||||||
|
"x-kubernetes-int-or-string": true
|
||||||
|
},
|
||||||
|
"memory": {
|
||||||
|
"description": "Memory resources",
|
||||||
|
"type": "string",
|
||||||
|
"default": "256Mi",
|
||||||
|
"pattern": "^(\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?$",
|
||||||
|
"x-kubernetes-int-or-string": true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"minAllowed": {
|
||||||
|
"description": "Minimum allowed resources for vminsert component",
|
||||||
|
"type": "object",
|
||||||
|
"properties": {
|
||||||
|
"cpu": {
|
||||||
|
"description": "CPU resources",
|
||||||
|
"type": "string",
|
||||||
|
"default": "100m",
|
||||||
|
"pattern": "^(\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?$",
|
||||||
|
"x-kubernetes-int-or-string": true
|
||||||
|
},
|
||||||
|
"memory": {
|
||||||
|
"description": "Memory resources",
|
||||||
|
"type": "string",
|
||||||
|
"default": "256Mi",
|
||||||
|
"pattern": "^(\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?$",
|
||||||
|
"x-kubernetes-int-or-string": true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
},
|
}
|
||||||
"title": "Chart Values",
|
|
||||||
"type": "object"
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,9 +1,25 @@
|
|||||||
## @section Common parameters
|
## @section Common parameters
|
||||||
|
|
||||||
## @param host The hostname used to access the grafana externally (defaults to 'grafana' subdomain for the tenant host).
|
## @param host {string} The hostname used to access the grafana externally (defaults to 'grafana' subdomain for the tenant host).
|
||||||
host: ""
|
host: ""
|
||||||
|
|
||||||
## @param metricsStorages [array] Configuration of metrics storage instances
|
## @param metricsStorages {[]metricsStorage} Configuration of metrics storage instances
|
||||||
|
## @field metricsStorage.name {string} Name of the storage instance
|
||||||
|
## @field metricsStorage.retentionPeriod {string} Retention period for the metrics in the storage instance
|
||||||
|
## @field metricsStorage.deduplicationInterval {string} Deduplication interval for the metrics in the storage instance
|
||||||
|
## @field metricsStorage.storage {string} Persistent Volume size for the storage instance
|
||||||
|
## @field metricsStorage.storageClassName {*string} StorageClass used to store the data
|
||||||
|
## @field metricsStorage.vminsert {*vminsert} Configuration for vminsert component of the storage instance
|
||||||
|
## @field metricsStorage.vmselect {*vmselect} Configuration for vmselect component of the storage instance
|
||||||
|
## @field metricsStorage.vmstorage {*vmstorage} Configuration for vmstorage component of the storage instance
|
||||||
|
## @field vminsert.minAllowed {*resources} Minimum allowed resources for vminsert component
|
||||||
|
## @field vminsert.maxAllowed {*resources} Maximum allowed resources for vminsert component
|
||||||
|
## @field vmselect.minAllowed {*resources} Minimum allowed resources for vminsert component
|
||||||
|
## @field vmselect.maxAllowed {*resources} Maximum allowed resources for vminsert component
|
||||||
|
## @field vmstorage.minAllowed {*resources} Minimum allowed resources for vminsert component
|
||||||
|
## @field vmstorage.maxAllowed {*resources} Maximum allowed resources for vminsert component
|
||||||
|
## @field resources.cpu {*quantity} CPU resources
|
||||||
|
## @field resources.memory {*quantity} Memory resources
|
||||||
##
|
##
|
||||||
## Example:
|
## Example:
|
||||||
## metricsStorages:
|
## metricsStorages:
|
||||||
@@ -46,7 +62,11 @@ metricsStorages:
|
|||||||
storage: 10Gi
|
storage: 10Gi
|
||||||
storageClassName: ""
|
storageClassName: ""
|
||||||
|
|
||||||
## @param logsStorages [array] Configuration of logs storage instances
|
## @param logsStorages {[]logsStorage} Configuration of logs storage instances
|
||||||
|
## @field logsStorage.name {string} Name of the storage instance
|
||||||
|
## @field logsStorage.retentionPeriod {string} Retention period for the logs in the storage instance
|
||||||
|
## @field logsStorage.storage {string} Persistent Volume size for the storage instance
|
||||||
|
## @field logsStorage.storageClassName {*string} StorageClass used to store the data
|
||||||
##
|
##
|
||||||
logsStorages:
|
logsStorages:
|
||||||
- name: generic
|
- name: generic
|
||||||
@@ -55,12 +75,12 @@ logsStorages:
|
|||||||
storageClassName: replicated
|
storageClassName: replicated
|
||||||
|
|
||||||
## Configuration for Alerta
|
## Configuration for Alerta
|
||||||
## @param alerta.storage Persistent Volume size for alerta database
|
## @param alerta {alerta} Configuration for Alerta
|
||||||
## @param alerta.storageClassName StorageClass used to store the data
|
## @field alerta.storage {string} Persistent Volume size for alerta database
|
||||||
## @param alerta.resources.requests.cpu The minimum amount of CPU required for alerta
|
## @field alerta.storageClassName {string} StorageClass used to store the data
|
||||||
## @param alerta.resources.requests.memory The minimum amount of memory required for alerta
|
## @field alerta.resources {*alertaResources} Resources configuration for alerta
|
||||||
## @param alerta.resources.limits.cpu The maximum amount of CPU allowed for alerta
|
## @field alertaResources.limits {*resources} Resources limits for alerta
|
||||||
## @param alerta.resources.limits.memory The maximum amount of memory allowed for alerta
|
## @field alertaResources.requests {*resources} Resources requests for alerta
|
||||||
##
|
##
|
||||||
alerta:
|
alerta:
|
||||||
storage: 10Gi
|
storage: 10Gi
|
||||||
@@ -73,9 +93,11 @@ alerta:
|
|||||||
cpu: 100m
|
cpu: 100m
|
||||||
memory: 256Mi
|
memory: 256Mi
|
||||||
alerts:
|
alerts:
|
||||||
## @param alerta.alerts.telegram.token telegram token for your bot
|
## @field alerta.alerts {alerts} Configuration for alerts
|
||||||
## @param alerta.alerts.telegram.chatID specify multiple ID's separated by comma. Get yours in https://t.me/chatid_echo_bot
|
## @field alerts.telegram {telegramAlerts} Configuration for Telegram alerts
|
||||||
## @param alerta.alerts.telegram.disabledSeverity list of severity without alerts, separated comma like: "informational,warning"
|
## @field telegramAlerts.token {string} Telegram token for your bot
|
||||||
|
## @field telegramAlerts.chatID {string} Specify multiple ID's separated by comma. Get yours in https://t.me/chatid_echo_bot
|
||||||
|
## @field telegramAlerts.disabledSeverity {string} List of severity without alerts, separated by comma like: "informational,warning"
|
||||||
## example:
|
## example:
|
||||||
## telegram:
|
## telegram:
|
||||||
## token: "7262461387:AAGtwq16iwuVtWtzoN6TUEMpF00fpC9Xz34"
|
## token: "7262461387:AAGtwq16iwuVtWtzoN6TUEMpF00fpC9Xz34"
|
||||||
@@ -88,11 +110,12 @@ alerta:
|
|||||||
disabledSeverity: ""
|
disabledSeverity: ""
|
||||||
|
|
||||||
## Configuration for Grafana
|
## Configuration for Grafana
|
||||||
## @param grafana.db.size Persistent Volume size for grafana database
|
## @param grafana {grafana} Configuration for Grafana
|
||||||
## @param grafana.resources.requests.cpu The minimum amount of CPU required for grafana
|
## @field grafana.db {grafanaDB}
|
||||||
## @param grafana.resources.requests.memory The minimum amount of memory required for grafana
|
## @field grafanaDB.size {string} Persistent Volume size for grafana database
|
||||||
## @param grafana.resources.limits.cpu The maximum amount of CPU allowed for grafana
|
## @field grafana.resources {*grafanaResources} Resources configuration for grafana
|
||||||
## @param grafana.resources.limits.memory The maximum amount of memory allowed for grafana
|
## @field grafanaResources.limits {*resources} Resources limits for grafana
|
||||||
|
## @field grafanaResources.requests {*resources} Resources requests for grafana
|
||||||
grafana:
|
grafana:
|
||||||
db:
|
db:
|
||||||
size: 10Gi
|
size: 10Gi
|
||||||
|
|||||||
Reference in New Issue
Block a user