arvandor/ansible/templates/garage.toml.j2
2026-01-26 00:44:31 -05:00

49 lines
1.3 KiB
Django/Jinja

# Garage S3 Configuration
# Generated by Ansible - do not edit manually
# Metadata directory (LMDB database)
metadata_dir = "/var/lib/garage/meta"
# Data directory (actual S3 objects)
data_dir = "/var/lib/garage/data"
# Database engine (LMDB recommended for clusters with replication)
db_engine = "lmdb"
# Replication factor (3 = all nodes have all data)
replication_factor = 3
# Compression level (1-19, higher = more CPU, smaller files)
compression_level = 2
# Automatic metadata snapshots (protects against LMDB corruption)
metadata_auto_snapshot_interval = "6h"
# RPC configuration (inter-node communication)
rpc_bind_addr = "{{ nebula_ip }}:3901"
rpc_public_addr = "{{ nebula_ip }}:3901"
rpc_secret = "{{ garage_rpc_secret }}"
# Bootstrap peers (connect to other nodes)
bootstrap_peers = [
{% for host in groups['garage'] if host != inventory_hostname %}
"{{ hostvars[host]['nebula_ip'] }}:3901",
{% endfor %}
]
# S3 API endpoint
[s3_api]
api_bind_addr = "{{ nebula_ip }}:3900"
s3_region = "garage"
root_domain = ".s3.garage.nebula"
# S3 Web endpoint (for static website hosting)
[s3_web]
bind_addr = "{{ nebula_ip }}:3902"
root_domain = ".web.garage.nebula"
# Admin API (for bucket management)
[admin]
api_bind_addr = "{{ nebula_ip }}:3903"
admin_token = "{{ garage_admin_token }}"