Logs
CloudCasa server stores container logs and job logs in an S3-compatible object store. By default, a managed Minio deployment is installed for this purpose, but you can instead configure CloudCasa server to use your own S3 buckets.
Note
This page covers configuring where logs are stored and how long they are retained.
To collect server or job logs using casactl, see Collecting server logs and Collecting job logs.
Logs storage and retention
The following Helm parameters can be used to configure logs storage and retention:
logs:
pv:
size: 4Gi
retention:
server: 30
jobs: 30
minio:
enabled: true
s3:
endpoint: PLACEHOLDER
region: us-east-1
tls: true
skipTlsVerification: false
logsBucket: cloudcasa-pod-logs
jobsBucket: cloudcasa-job-logs
accessKey: cloudcasa-log-user
secretKey: cloudcasa-log-password
credentialSecretName:
logs.pv.sizeSize of the PVC used by the managed Minio deployment. Only applies when
logs.minio.enabledis “true”. Default: “4Gi”.logs.retention.serverNumber of days to retain cloudcasa-server container logs before they are automatically deleted. Default: 30. Only applies when
logs.minio.enabledis “true”. If using your own S3 storage, retention is managed by the S3 bucket lifecycle policy.logs.retention.jobsNumber of days to retain job logs before they are automatically deleted. Default: 30. Only applies when
logs.minio.enabledis “true”. If using your own S3 storage, retention is managed by the S3 bucket lifecycle policy.logs.minio.enabledSet to “true” (default) to use the managed Minio deployment for logs storage. Buckets and credentials are created automatically. Set to “false” to use your own external S3 storage instead, and configure the
logs.s3.*parameters below.
Using your own S3 storage for logs
To bring your own S3 buckets for logs storage instead of using the managed Minio deployment, set
logs.minio.enabled to “false” and configure the following parameters:
logs.s3.endpointS3 endpoint host[:port], e.g. “s3.amazonaws.com” or “minio.example.com:9000”. Required.
logs.s3.regionRegion of the S3 bucket. Default: “us-east-1”.
logs.s3.tlsSet to “true” (default) if the S3 endpoint should be accessed over HTTPS.
logs.s3.skipTlsVerificationSet to “true” to skip TLS verification when connecting to the storage location. Default: “false”.
logs.s3.logsBucketName of the bucket used to store cloudcasa-server container logs. Default: “cloudcasa-pod-logs”. This bucket must already exist.
logs.s3.jobsBucketName of the bucket used to store CloudCasa job logs. Default: “cloudcasa-job-logs”. This bucket must already exist.
logs.s3.accessKeyAccess key for the S3 storage. Ignored if
logs.s3.credentialSecretNameis set.logs.s3.secretKeySecret key for the S3 storage. Ignored if
logs.s3.credentialSecretNameis set.logs.s3.credentialSecretNameOptional. Name of an existing Kubernetes secret in the cloudcasa-server namespace containing
AWS_ACCESS_KEY_IDandAWS_SECRET_ACCESS_KEYkeys. When set, this overrideslogs.s3.accessKeyandlogs.s3.secretKey.
Here is a sample command to create such a secret:
kubectl -n cloudcasa-server create secret generic logs-s3-creds \
--from-literal=AWS_ACCESS_KEY_ID='<S3-ACCESS-KEY>' \
--from-literal=AWS_SECRET_ACCESS_KEY='<S3-SECRET-KEY>'
Note
Switching logs.minio.enabled after installation does not migrate existing log data between the managed Minio
deployment and external S3 storage. Plan this configuration before installing CloudCasa server if possible.