60 lines
1.3 KiB
Markdown
60 lines
1.3 KiB
Markdown
# etcd
|
|
|
|
- [etcd](#etcd)
|
|
- [Setup etcd Project](#setup-etcd-project)
|
|
- [Service Variables](#service-variables)
|
|
- [Install etcd](#install-etcd)
|
|
- [Fedora](#fedora)
|
|
- [Upgrade etcd](#upgrade-etcd)
|
|
- [Backup etcd](#backup-etcd)
|
|
- [Restore etcd](#restore-etcd)
|
|
- [Uninstall etcd](#uninstall-etcd)
|
|
|
|
## Setup etcd Project
|
|
|
|
1. Copy and rename this folder to active/software_etcd
|
|
2. Find and replace etcd with the name of the service
|
|
3. Write the etcd.service spec
|
|
4. (OPTIONAL) Write the etcd.timer spec
|
|
5. (OPTIONAL) Write the etcd.sh.j2 template
|
|
6. Write the install_etcd.yaml ansible template
|
|
7. Install the service via ansible
|
|
8. Expose the service
|
|
9. Install a backup service and timer
|
|
|
|
## Service Variables
|
|
|
|
1. For most vars,populate `vars.yaml`
|
|
2. For secret vars, create a new folder called `secrets/` and put a `vars.yaml` there.
|
|
|
|
## Install etcd
|
|
|
|
<https://etcd.io/docs/v3.6/install/>
|
|
|
|
### Fedora
|
|
|
|
```bash
|
|
sudo dnf install etcd
|
|
|
|
```
|
|
|
|
```bash
|
|
# Run the playbook
|
|
ansible-playbook \
|
|
-i ansible/inventory.yaml \
|
|
-l podman \
|
|
active/software_etcd/install_etcd.yaml \
|
|
-e "@active/software_etcd/vars.yaml" \
|
|
-e "@active/software_etcd/secrets/vars.yaml"
|
|
```
|
|
|
|
## Upgrade etcd
|
|
|
|
## Backup etcd
|
|
|
|
Follow the [Borg Backup instructions](/active/software_borg/borg.md#set-up-a-client-for-backup)
|
|
|
|
## Restore etcd
|
|
|
|
## Uninstall etcd
|