|
Este documento ha sido traducido utilizando tecnología de traducción automática. Si bien nos esforzamos por proporcionar traducciones precisas, no ofrecemos garantías sobre la integridad, precisión o confiabilidad del contenido traducido. En caso de discrepancia, la versión original en inglés prevalecerá y constituirá el texto autorizado. |
Habilitar copias de seguridad
|
Esta página se aplica a SUSE® Observability v2.7.0 o superior. |
Descripción general
SUSE® Observability tiene un mecanismo de copia de seguridad integrado que se puede configurar para almacenar copias de seguridad en AWS S3, Azure Blob Storage o un Volumen Persistente de Kubernetes.
La mayoría de las copias de seguridad se habilitan con un único valor de Helm global.backup.enabled. Las copias de seguridad de la configuración siempre están habilitadas, pero se comportan de manera diferente según los siguientes valores:
Ámbito de la copia de seguridad
Los siguientes datos se pueden respaldar automáticamente:
-
Configuración (StackPacks, monitores, vistas, tokens) - siempre habilitado:
-
Cuando
global.backup.enabledestátrue: las copias de seguridad se almacenan a través de MinIO en su backend de almacenamiento configurado -
Cuando
global.backup.enabledestáfalse: las copias de seguridad se almacenan en un Volumen Persistente de Kubernetes dedicado, eludiendo MinIO
-
-
Datos de topología y Configuración almacenados en StackGraph - habilitado cuando
global.backup.enabledestátrue -
Métricas almacenadas en la(s) instancia(s) de Victoria Metrics de SUSE® Observability - habilitado cuando
global.backup.enabledestátrue -
Datos de telemetría almacenados en la instancia de Elasticsearch de SUSE® Observability - habilitado cuando
global.backup.enabledestátrue -
Datos de OpenTelemetry almacenados en la instancia de ClickHouse de SUSE® Observability - habilitado cuando
global.backup.enabledestátrue
Opciones de almacenamiento
Las copias de seguridad utilizan MinIO (min.io) como un gateway compatible con S3 para su backend de almacenamiento. MinIO se despliega automáticamente mediante el chart de Helm cuando se habilitan las copias de seguridad.
La instancia de MinIO integrada se puede configurar para almacenar las copias de seguridad en tres ubicaciones:
Habilitar copias de seguridad
AWS S3
|
Cifrado Las claves gestionadas por Amazon S3 (SSE-S3) deben utilizarse al cifrar los buckets de S3 que almacenan las copias de seguridad. ⚠️ El cifrado con claves de AWS KMS almacenadas en el Servicio de Gestión de Claves de AWS (SSE-KMS) no es compatible. Esto resultará en errores como este en los registros de Elasticsearch:
|
Usando buckets de S3 separados
Para habilitar copias de seguridad programadas en buckets de AWS S3 separados (uno por almacén de datos), añade el siguiente fragmento YAML al archivo Helm values.yaml utilizado para instalar SUSE® Observability:
global:
backup:
enabled: true
backup:
stackGraph:
bucketName: AWS_STACKGRAPH_BUCKET
elasticsearch:
bucketName: AWS_ELASTICSEARCH_BUCKET
configuration:
bucketName: AWS_CONFIGURATION_BUCKET
victoria-metrics-0:
backup:
bucketName: AWS_VICTORIA_METRICS_BUCKET
victoria-metrics-1:
backup:
bucketName: AWS_VICTORIA_METRICS_BUCKET
clickhouse:
backup:
bucketName: AWS_CLICKHOUSE_BUCKET
minio:
accessKey: YOUR_ACCESS_KEY
secretKey: YOUR_SECRET_KEY
s3gateway:
enabled: true
accessKey: AWS_ACCESS_KEY
secretKey: AWS_SECRET_KEY
Reemplaza los siguientes valores:
-
YOUR_ACCESS_KEYyYOUR_SECRET_KEYson las credenciales que se utilizarán para asegurar el sistema MinIO. Estas credenciales se establecen en el sistema MinIO y son utilizadas por los trabajos de copia de seguridad automáticos y los trabajos de restauración. También son necesarias si deseas acceder manualmente al sistema MinIO.-
TU_CLAVE_DE_ACCESO debe contener de 5 a 20 caracteres alfanuméricos.
-
TU_CLAVE_SECRETA debe contener de 8 a 40 caracteres alfanuméricos.
-
-
AWS_ACCESS_KEYyAWS_SECRET_KEYson las credenciales de AWS para el usuario IAM que tiene acceso a los buckets de S3 donde se almacenarán las copias de seguridad. Consulta a continuación la directiva de permisos que debe adjuntarse a ese usuario. -
AWS_*_BUCKETson los nombres de los buckets de S3 donde se deben almacenar las copias de seguridad.Los nombres de los buckets de AWS S3 son globales en toda AWS. Por lo tanto, los buckets de S3, con el nombre predeterminado (
sts-elasticsearch-backup,sts-configuration-backup,sts-stackgraph-backup,sts-victoria-metrics-backupysts-clickhouse-backup), probablemente no estarán disponibles.
Usando un único bucket S3 con prefijos
En lugar de usar buckets separados para cada almacén de datos, puedes usar un único bucket S3 con diferentes prefijos:
global:
backup:
enabled: true
backup:
elasticsearch:
bucketName: BUCKET
s3Prefix: elasticsearch
stackGraph:
bucketName: BUCKET
s3Prefix: stackgraph
configuration:
bucketName: BUCKET
s3Prefix: configuration
victoria-metrics-0:
backup:
bucketName: BUCKET
s3Prefix: victoria-metrics-0
victoria-metrics-1:
backup:
bucketName: BUCKET
s3Prefix: victoria-metrics-1
clickhouse:
backup:
bucketName: BUCKET
s3Prefix: clickhouse
minio:
accessKey: YOUR_ACCESS_KEY
secretKey: YOUR_SECRET_KEY
s3gateway:
enabled: true
accessKey: AWS_ACCESS_KEY
secretKey: AWS_SECRET_KEY
Reemplaza BUCKET con el nombre de tu bucket S3. Las copias de seguridad para diferentes almacenes de datos están organizadas utilizando los valores configurados de s3Prefix. Los mismos valores de YOUR_ACCESS_KEY, YOUR_SECRET_KEY, AWS_ACCESS_KEY y AWS_SECRET_KEY de la sección anterior se aplican aquí.
Permisos de AWS S3
El usuario IAM identificado por AWS_ACCESS_KEY y AWS_SECRET_KEY debe ser configurado con la siguiente directiva de permisos para acceder a los buckets S3:
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "AllowListMinioBackupBuckets",
"Effect": "Allow",
"Action": [
"s3:ListBucket",
"s3:GetBucketLocation"
],
"Resource": [
"arn:aws:s3:::AWS_STACKGRAPH_BUCKET",
"arn:aws:s3:::AWS_ELASTICSEARCH_BUCKET",
"arn:aws:s3:::AWS_VICTORIA_METRICS_BUCKET",
"arn:aws:s3:::AWS_CLICKHOUSE_BUCKET",
"arn:aws:s3:::AWS_CONFIGURATION_BUCKET"
]
},
{
"Sid": "AllowWriteMinioBackupBuckets",
"Effect": "Allow",
"Action": [
"s3:PutObject",
"s3:GetObject",
"s3:DeleteObject"
],
"Resource": [
"arn:aws:s3:::AWS_STACKGRAPH_BUCKET/*",
"arn:aws:s3:::AWS_ELASTICSEARCH_BUCKET/*",
"arn:aws:s3:::AWS_VICTORIA_METRICS_BUCKET/*",
"arn:aws:s3:::AWS_CLICKHOUSE_BUCKET/*",
"arn:aws:s3:::AWS_CONFIGURATION_BUCKET"
]
}
]
}
Azure Blob Storage
Usando contenedores separados
Para habilitar copias de seguridad en contenedores separados de Azure Blob Storage (uno por almacén de datos), añade el siguiente fragmento YAML al archivo Helm values.yaml utilizado para instalar SUSE® Observability:
global:
backup:
enabled: true
minio:
accessKey: AZURE_STORAGE_ACCOUNT_NAME
secretKey: AZURE_STORAGE_ACCOUNT_KEY
azuregateway:
enabled: true
Reemplaza los siguientes valores:
-
AZURE_STORAGE_ACCOUNT_NAME- el nombre de la cuenta de almacenamiento de Azure (learn.microsoft.com) -
AZURE_STORAGE_ACCOUNT_KEY- el clave de la cuenta de almacenamiento de Azure (learn.microsoft.com) donde se deben almacenar las copias de seguridad.
Las copias de seguridad de StackGraph, Elasticsearch, Victoria Metrics y ClickHouse se almacenan en contenedores BLOB llamados sts-stackgraph-backup, sts-configuration-backup, sts-elasticsearch-backup, sts-victoria-metrics-backup, sts-clickhouse-backup respectivamente. Estos nombres se pueden cambiar configurando los valores de Helm backup.stackGraph.bucketName, backup.elasticsearch.bucketName, victoria-metrics-0.backup.bucketName, victoria-metrics-1.backup.bucketName y clickhouse.backup.bucketName respectivamente.
Usando un único contenedor con prefijos
En lugar de usar contenedores separados para cada almacén de datos, puedes usar un único contenedor de Azure Blob Storage con diferentes prefijos:
global:
backup:
enabled: true
backup:
elasticsearch:
bucketName: CONTAINER
s3Prefix: elasticsearch
stackGraph:
bucketName: CONTAINER
s3Prefix: stackgraph
configuration:
bucketName: CONTAINER
s3Prefix: configuration
victoria-metrics-0:
backup:
bucketName: CONTAINER
s3Prefix: victoria-metrics-0
victoria-metrics-1:
backup:
bucketName: CONTAINER
s3Prefix: victoria-metrics-1
clickhouse:
backup:
bucketName: CONTAINER
s3Prefix: clickhouse
minio:
accessKey: AZURE_STORAGE_ACCOUNT_NAME
secretKey: AZURE_STORAGE_ACCOUNT_KEY
azuregateway:
enabled: true
Reemplaza CONTAINER con el nombre de tu contenedor de Azure Blob Storage. Las copias de seguridad para diferentes almacenes de datos se organizarán utilizando los valores configurados de s3Prefix. Los mismos valores de AZURE_STORAGE_ACCOUNT_NAME y AZURE_STORAGE_ACCOUNT_KEY de la sección anterior se aplican aquí.
Volumen Persistente de Kubernetes
|
El uso de volúmenes persistentes de Kubernetes para copias de seguridad tiene limitaciones significativas:
Recomendación: Utiliza AWS S3 o Azure Blob Storage en su lugar para entornos de producción. |
Configuración básica
Para habilitar copias de seguridad en el almacenamiento local del clúster, habilita MinIO añadiendo el siguiente fragmento YAML al archivo Helm values.yaml utilizado para instalar SUSE® Observability:
global:
backup:
enabled: true
minio:
accessKey: YOUR_ACCESS_KEY
secretKey: YOUR_SECRET_KEY
persistence:
enabled: true
Reemplaza los siguientes valores:
-
YOUR_ACCESS_KEYyYOUR_SECRET_KEY- las credenciales que se utilizarán para asegurar el sistema MinIO. Los trabajos de copia de seguridad automáticos y los trabajos de restauración los utilizarán. También son necesarios para acceder manualmente al almacenamiento de MinIO.YOUR_ACCESS_KEYdebe contener de 5 a 20 caracteres alfanuméricos yYOUR_SECRET_KEYdebe contener de 8 a 40 caracteres alfanuméricos.
Datos de configuración y topología (StackGraph)
Las copias de seguridad de datos de configuración y topología (StackGraph) son copias de seguridad completas, almacenadas en un solo archivo con la extensión .graph. Cada archivo contiene una copia de seguridad completa y puede ser movido, copiado o eliminado según sea necesario.
Programa de copias de seguridad
Por defecto, las copias de seguridad de StackGraph se crean diariamente a las 03:00 AM hora del servidor.
El programa de copias de seguridad se puede configurar utilizando el valor de Helm backup.stackGraph.scheduled.schedule, especificado en la sintaxis de programación cron de Kubernetes (kubernetes.io).
Retención de copias de seguridad
Por defecto, las copias de seguridad de StackGraph se mantienen durante 30 días. Como las copias de seguridad de StackGraph son copias de seguridad completas, esto puede requerir mucho almacenamiento.
El delta de retención de copias de seguridad se puede configurar utilizando el valor de Helm backup.stackGraph.scheduled.backupRetentionTimeDelta, especificado en el formato del argumento de fecha de GNU --date. El valor por defecto es 30 days ago. Consulta Elementos relativos en cadenas de fecha para más ejemplos.
Desactivar copias de seguridad programadas
Para desactivar las copias de seguridad programadas de StackGraph, establece el horario de copias de seguridad a una fecha lejana en el pasado utilizando el valor de Helm backup.stackGraph.scheduled.schedule:
backup:
stackGraph:
scheduled:
schedule: '0 0 1 1 1970' # January 1, 1970 (epoch start)
Settings (Configuración posterior al failback)
La configuración (anteriormente Configuración) incluye instancias instaladas de StackPacks con su configuración y otras personalizaciones creadas por el usuario, como monitores, vistas personalizadas y tokens de servicio.
Las copias de seguridad de la configuración son ligeras (típicamente solo varios megabytes) y rápidas de restaurar con un tiempo de inactividad mínimo. Después de que se restaure una copia de seguridad de la configuración, se procesarán nuevos datos, como antes, recreando la topología, los estados de salud y las alertas. Sin embargo, el historial de topología (incluida la salud) no se conserva en las copias de seguridad de la configuración; para ese propósito, utiliza la copia de seguridad de StackGraph descrita anteriormente.
|
Las copias de seguridad de la configuración están siempre habilitadas, independientemente del valor de
|
Programa de copias de seguridad
Por defecto, las copias de seguridad de la configuración se crean diariamente a las 04:00 AM hora del servidor.
El programa de copias de seguridad se puede configurar utilizando el valor de Helm backup.configuration.scheduled.schedule, especificado en la sintaxis de programación cron de Kubernetes (kubernetes.io).
Retención de copias de seguridad
La retención de copias de seguridad depende de la configuración global.backup.enabled:
Cuando global.backup.enabled es true (copias de seguridad almacenadas a través de MinIO):
-
Por defecto, las copias de seguridad de la configuración se mantienen durante 365 días
-
Configura la retención utilizando
backup.configuration.scheduled.backupRetentionTimeDelta- especificado en el formato del argumento de fecha de GNU--date. El valor por defecto es365 days ago
Cuando global.backup.enabled es false (copias de seguridad almacenadas en un PV dedicado):
-
Por defecto, se mantienen los últimos 10 archivos de copia de seguridad en el Volumen Persistente
-
Configura el número máximo de archivos utilizando
backup.configuration.maxLocalFiles(predeterminado:10) -
Configura el tamaño del PV utilizando
backup.configuration.scheduled.pvc.size(predeterminado:1Gi)
Ejemplo de configuración para almacenamiento de Volumen Persistente dedicado:
backup:
configuration:
maxLocalFiles: 10
scheduled:
pvc:
size: '1Gi'
Desactivar copias de seguridad programadas
Para deshabilitar las copias de seguridad programadas de la configuración, establece el programa de copias de seguridad a una fecha muy anterior utilizando el valor de Helm backup.configuration.scheduled.schedule:
backup:
configuration:
scheduled:
schedule: '0 0 1 1 1970' # January 1, 1970 (epoch start)
Métricas (Victoria Metrics)
Victoria Metrics crea copias de seguridad tomando una instantánea de los datos de métricas actuales y almacenando solo los cambios desde la última copia de seguridad (enfoque incremental).
|
Limitación de versionado de copias de seguridad Las copias de seguridad de Victoria Metrics reemplazan la copia de seguridad anterior cada vez que se ejecuta una nueva copia de seguridad. Esto significa que solo tienes acceso a la copia de seguridad más reciente, no a un historial de múltiples versiones de copias de seguridad. Importante: Si una copia de seguridad falla o los datos se corrompen, tus datos de copia de seguridad anteriores pueden perderse. Solo la última copia de seguridad exitosa está disponible para restaurar. Excepción: Si el volumen de almacenamiento de Victoria Metrics se vacía o se restablece (por ejemplo, si el directorio |
|
Despliegues de alta disponibilidad Los despliegues de alta disponibilidad utilizan dos instancias de Victoria Metrics ( |
Programa de copias de seguridad
Las copias de seguridad de Victoria Metrics se crean cada 1h:
-
victoria-metrics-0- 25 minutos después de la hora -
victoria-metrics-1- 35 minutos después de la hora
Desactivar copias de seguridad programadas
Para desactivar las copias de seguridad programadas de Victoria Metrics, establece el horario de copia de seguridad para ambas instancias a una fecha muy anterior:
victoria-metrics-0:
backup:
scheduled:
schedule: '0 0 1 1 1970' # January 1, 1970 (epoch start)
victoria-metrics-1:
backup:
scheduled:
schedule: '0 0 1 1 1970' # January 1, 1970 (epoch start)
OpenTelemetry (ClickHouse)
ClickHouse utiliza copias de seguridad tanto incrementales como completas. Las copias de seguridad antiguas se eliminan según la directiva de retención configurada.
Programa de copias de seguridad
Las copias de seguridad de ClickHouse se crean:
-
Copia de seguridad completa - a las 00:45 todos los días
-
Copia de seguridad incremental - 45 minutos después de la hora (de 3 a.m. a 12 a.m.)
Retención de copias de seguridad
Por defecto, la herramienta mantiene las últimas 308 copias de seguridad (completas e incrementales), lo que equivale a aproximadamente 14 días.
La retención de copias de seguridad se puede configurar utilizando el valor de Helm clickhouse.backup.config.keep_remote.
Desactivar copias de seguridad programadas
Para desactivar las copias de seguridad programadas de ClickHouse, establece los horarios de copia de seguridad completa e incremental a una fecha muy anterior:
clickhouse:
backup:
scheduled:
full_schedule: '0 0 1 1 1970' # January 1, 1970 (epoch start)
incremental_schedule: '0 0 1 1 1970' # January 1, 1970 (epoch start)
Datos de telemetría (Elasticsearch)
Las instantáneas de Elasticsearch son incrementales.
Horario de instantáneas
Las instantáneas de Elasticsearch se crean diariamente a las 03:00 AM, hora del servidor.
Retención de instantáneas
Por defecto, las instantáneas de Elasticsearch se mantienen durante 30 días, con un mínimo de 5 instantáneas y un máximo de 30 instantáneas.
El tiempo de retención y el número de instantáneas mantenidas se pueden configurar utilizando los siguientes valores de Helm:
-
backup.elasticsearch.scheduled.snapshotRetentionExpireAfter, especificado en unidades de tiempo de Elasticsearch (elastic.co). -
backup.elasticsearch.scheduled.snapshotRetentionMinCount -
backup.elasticsearch.scheduled.snapshotRetentionMaxCount
Desactivar instantáneas programadas
Para desactivar las instantáneas programadas de Elasticsearch, establece la programación de instantáneas a una fecha lejana en el pasado utilizando el valor de Helm backup.elasticsearch.scheduled.schedule:
backup:
elasticsearch:
scheduled:
schedule: '0 0 1 1 1970' # January 1, 1970 (epoch start)