beginnings of README
parent
edad5184a1
commit
afa7c4880a
@ -0,0 +1,83 @@
|
|||||||
|
# automonty
|
||||||
|
|
||||||
|
The `automonty` tool performs network automation. It is your [network moose](https://twitter.com/NetworkMoose) in mecha form.
|
||||||
|
|
||||||
|
## Requirements
|
||||||
|
|
||||||
|
At [FAELIX](https://faelix.net/) we run AS41495 which comprises VyOS-based BGP-edge routers and MikroTik RouterOS-based internal routers. We automate our VyOS edge with [hphr](https://gitea.faelix.net/FAELIX/hphr) and our MikroTik interior with `automonty`. You too will need RouterOS-based devices to make use of `automonty`.
|
||||||
|
|
||||||
|
Ensure that you have access to the RouterOS API.
|
||||||
|
|
||||||
|
## Installation
|
||||||
|
|
||||||
|
```shell
|
||||||
|
git clone https://gitea.faelix.net/FAELIX/automonty
|
||||||
|
cd automonty
|
||||||
|
mkdir .venv
|
||||||
|
pipenv install
|
||||||
|
pipenv run ./python automonty --help
|
||||||
|
```
|
||||||
|
|
||||||
|
## Usage
|
||||||
|
|
||||||
|
### Configuration File
|
||||||
|
|
||||||
|
Create `~/.automonty.yaml` as follows:
|
||||||
|
|
||||||
|
```yaml
|
||||||
|
router:
|
||||||
|
gama.m.faelix.net:
|
||||||
|
group:
|
||||||
|
- x4
|
||||||
|
- x5
|
||||||
|
soto.m.faelix.net:
|
||||||
|
group:
|
||||||
|
- x4
|
||||||
|
- x5
|
||||||
|
janszoon.d.faelix.net:
|
||||||
|
group:
|
||||||
|
- x5
|
||||||
|
- x7
|
||||||
|
kotzebue.n.faelix.net:
|
||||||
|
group:
|
||||||
|
- x5
|
||||||
|
- x7
|
||||||
|
teixeira.x.faelix.net:
|
||||||
|
group:
|
||||||
|
- x5
|
||||||
|
- x7
|
||||||
|
|
||||||
|
loopbacks:
|
||||||
|
- 46.227.200.1/32
|
||||||
|
- 46.227.200.2/32
|
||||||
|
- 46.227.204.1/32
|
||||||
|
- 46.227.205.1/32
|
||||||
|
- 46.227.207.1/32
|
||||||
|
- 46.227.207.255/32
|
||||||
|
|
||||||
|
default_ipv4_loopback: 46.227.207.255/32
|
||||||
|
```
|
||||||
|
|
||||||
|
We have specified:
|
||||||
|
|
||||||
|
* a set of routers and to which groups they belong
|
||||||
|
* a set of loopback addresses which should be treated specially
|
||||||
|
* a default loopback address which is used as the anycast IPv4 default gateway for guests (VPSs, layer-2 circuits, etc)
|
||||||
|
|
||||||
|
### Credentials
|
||||||
|
|
||||||
|
You can set credentials via environment variables:
|
||||||
|
|
||||||
|
```shell
|
||||||
|
export AUTOMONTY_USERNAME=monty
|
||||||
|
export AUTOMONTY_PASSWORD="m00se<3p0t4t0"
|
||||||
|
pipenv run ./python automonty check
|
||||||
|
```
|
||||||
|
|
||||||
|
### Invoking Commands
|
||||||
|
|
||||||
|
#### Provisioning
|
||||||
|
|
||||||
|
#### Tearing Down
|
||||||
|
|
||||||
|
#### Migration
|
Loading…
Reference in New Issue