add podman etc notes

This commit is contained in:
2026-02-06 20:21:33 -05:00
parent 27180d92b1
commit fdc0f0f2c5
6 changed files with 125 additions and 0 deletions

View File

@@ -0,0 +1,59 @@
# 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

View File

@@ -0,0 +1,12 @@
[Unit]
Description=Runs foobar
After=network.target
Wants=network-online.target
[Service]
Restart=no
Type=oneshot
ExecStart=/usr/local/script/foobar.sh
[Install]
WantedBy=multi-user.target

View File

@@ -0,0 +1,3 @@
#!/bin/sh
echo "hello foobar!"

View File

@@ -0,0 +1,11 @@
[Unit]
Description=Run Foobar every day
[Timer]
OnCalendar=*-*-* 2:00:00
AccuracySec=10min
Persistent=true
Unit=foobar.service
[Install]
WantedBy=timers.target

View File

@@ -0,0 +1,39 @@
- name: Create Backup Service
hosts: all
vars_files:
- secrets/vars.yaml
tasks:
- name: Create /usr/local/script dir
ansible.builtin.file:
path: /usr/local/script
state: directory
mode: '0755'
- name: Copy foobar.service
template:
src: backup.service
dest: /etc/systemd/system/foobar.service
owner: root
group: root
mode: '0644'
- name: Copy foobar.timer
template:
src: backup.timer
dest: /etc/systemd/system/foobar.timer
owner: root
group: root
mode: '0644'
- name: Template foobar.sh
template:
src: backup.sh.j2
dest: /usr/local/script/foobar.sh
owner: root
group: root
mode: '0744'
- name: Something foobar related that might fail
script: echo 'hello foobar!'
ignore_errors: yes
- name: Reload foobar.timer
ansible.builtin.systemd_service:
name: foobar.timer
enabled: true
daemon_reload: true

View File

@@ -0,0 +1 @@
name: foobar