Skip to main content

Object Storage Configuration

Object storage is used for storing large binary files such as debugging symbols and other artifacts. zymtrace supports S3-compatible storage solutions including MinIO, AWS S3, and Google Cloud Storage.

Configuration Modes​

Connect to existing S3-compatible storage​

This mode connects to your existing MinIO, AWS S3, or Google Cloud Storage.

MinIO Configuration​

MinIO Configuration

MinIO is a high-performance, S3-compatible object storage solution that can be deployed on-premises or in the cloud. Configure your existing MinIO instance with the following settings:

storage:
mode: "use_existing"
use_existing:
type: "minio"
minio:
endpoint: "" # must be a url, http/s
user: ""
password: ""
buckets:
symbols: "zymtrace-symdb"

Required fields:

  • endpoint: Complete URL to your MinIO server (e.g., https://minio.example.com or http://192.168.1.100:9000)
  • user: MinIO access key
  • password: MinIO secret key
Bucket Creation​
mc mb minio/zymtrace-symdb
Testing Connectivity​
mc config host add minio http://minio.company.com:9000 ACCESS_KEY SECRET_KEY
mc ls minio/zymtrace-symdb
Configuration Example​
Development Environment​
storage:
mode: "use_existing"
use_existing:
type: "minio"
minio:
endpoint: "http://minio.dev.company.com:9000"
user: "dev-access-key"
password: "dev-secret-key"
buckets:
symbols: "zymtrace-symdb-dev"

Bucket Configuration​

Bucket Names​

zymtrace uses the following bucket for storing symbols:

  • symbols: Stores debugging symbols and related metadata (default: zymtrace-symdb)

Bucket Creation​

Automatic Creation: If you have appropriate permissions, zymtrace can automatically create the required bucket during initialization.

Manual Creation: For production environments, create the bucket manually using your cloud provider's console or CLI tools. See the specific instructions in each storage provider tab above.

Security Considerations​

Access Control​

  • Principle of Least Privilege: Grant only the minimum required permissions
  • Network Security: Use HTTPS/TLS for connections to object storage
  • Access Keys: Use dedicated service accounts with limited scope

Data Encryption​

  • Encryption in Transit: Always use HTTPS for object storage connections
  • Encryption at Rest: Enable server-side encryption on your buckets
  • Key Management: Use managed encryption keys when possible

Troubleshooting​

Common Issues​

  1. Connection Timeout: Check network connectivity and firewall rules
  2. Access Denied: Verify credentials and permissions
  3. Bucket Not Found: Ensure the bucket exists and is accessible
  4. SSL/TLS Errors: Verify certificate configuration for HTTPS endpoints

Next Steps​

After configuring object storage, proceed to configure the other storage components:

Configure ClickHouse | Configure Postgres