1.0 KiB
Ansible SeaweedFS
This playbook configures a server with a SeaweedFS Master, Volume, Filer, and S3.
In the future, this will support groups or targeting of servers, allowing for multiple masters, volumes, filers, etc on different hosts.
Usage
- Update
inventory.yaml
to add your hosts under theseaweed
group. - Configure
ansible.cfg
with your access credentials (recommended: ansible user with ssh key) ansible-playbook ./playbook.yaml
Design decisions
The built-in/community openssl modules weren't sufficient to properly create a CA without a ton of version limitations.
The decision was made to use openssl
commands directly to avoid this, and avoid installing another binary (like certstrap
)
systemd was used to manage the cluster, with each service having a seaweed-
service prefix.
Local sockets had to be updated, as in the testing scenario with a Debian 12 container it did not like using /tmp
for sockets.
They are instead placed in /var/lib/seaweedfs/<filer/s3>/seaweed-<filer/s3>-<port>.sock
.