Files
@ 77b5fc2b0b41
Branch filter:
Location: freifunk/Ansible-Configuration/README.md - annotation
77b5fc2b0b41
2.2 KiB
text/markdown
fix: resolv.conf overwriting error because of default immutable attribute
3661ece211cd 3661ece211cd 3661ece211cd 3661ece211cd 3661ece211cd 3661ece211cd 3661ece211cd 3661ece211cd 68b7e691f0e5 3661ece211cd 3661ece211cd 3661ece211cd 3661ece211cd 3661ece211cd 3661ece211cd 3661ece211cd 3661ece211cd c148b8df5743 c148b8df5743 c148b8df5743 c148b8df5743 c148b8df5743 c148b8df5743 c148b8df5743 c148b8df5743 c148b8df5743 c148b8df5743 c148b8df5743 c148b8df5743 c148b8df5743 c148b8df5743 c148b8df5743 c148b8df5743 c148b8df5743 c148b8df5743 c148b8df5743 c148b8df5743 c148b8df5743 c148b8df5743 c148b8df5743 c148b8df5743 c148b8df5743 c148b8df5743 c148b8df5743 c148b8df5743 c148b8df5743 c148b8df5743 c148b8df5743 c148b8df5743 c148b8df5743 d27738cd7b8c d27738cd7b8c d27738cd7b8c d27738cd7b8c d27738cd7b8c d27738cd7b8c d27738cd7b8c d27738cd7b8c d27738cd7b8c d27738cd7b8c d27738cd7b8c d27738cd7b8c d27738cd7b8c 863d0c5a23f6 863d0c5a23f6 863d0c5a23f6 d27738cd7b8c d27738cd7b8c d27738cd7b8c d27738cd7b8c d27738cd7b8c d27738cd7b8c | # fflux Ansible Configuration
This repo contains Ansible configs for the Freifunk Lëtzebuerg infra.
## Files
- `hosts`: contains all of the machines.
- Careful: a wrongly defined machine can lead to major problems.
- `authorized_keys`: `fflux` user pubkey
## Directories
- `files`: templates for various playbooks
- `initial_server_setup`: initial server setup
- `gateway`: Set up a fflux gateway
- `api`: api.freifunk.lu
- `firmware`: firmware.freifunk.lu
## Guide
### Initial Server Setup
First, add the machine to `hosts` at the top of the file:
```yml
machine-name-here ansible_host=10.20.30.40
```
Note that `machine-name-here` will be the machine's hostname.
Then, put the machine under the `[initial]` group:
```yml
[initial]
machine-name-here ansible_user=root
```
Finally, change the default private SSH key under `[all:vars]` if necessary:
```yml
ansible_ssh_private_key_file=/home/myuser/.ssh/id_ed25519
```
You can now run the playbook:
```bash
fflux@fflux:~/repos/Ansible-Configuration$ ansible-playbook -i hosts initial_server_setup/initial_setup.yml
```
Note that the placement of the repositories might impact the playbook's behaviour, particularly for more advanced setups, incl. web server.
### Install Website (freifunk, www, api)
First, make sure the machine is still configured properly at the top of the `hosts` file. (see initial server setup)
Then, put the machine under the `[website-web]` group:
```yml
perso-test
```
Note that if you are not running this on the fflux management server as the `fflux` user, you might want to check the remote `authorized_keys` (that one of your keys is allowed) and append `ansible_user=fflux` to that line, similarly to the initial server setup.
Do not forget to set the DNS records properly, so that the machine is reachable via the domain names. (at the time of writing `freifunk.lu`, `www.freifunk.lu` and `api.freifunk.lu`, but you can simply check the playblook)
On top of that, make sure that the `fflux` user has a ssh keypair (for git) which is configured properly on projects.c3l.lu. That way, it can clone the website and api repositories.
Finally, run the playbook:
```bash
fflux@fflux:~/repos/Ansible-Configuration$ ansible-playbook -v -i hosts web/install_website.yml
```
|