Created prepare playbook

This commit is contained in:
Pünkösd Marcell 2021-11-08 03:32:56 +01:00
parent 04fbb0c3e3
commit 2d8ae4e8da
8 changed files with 197 additions and 0 deletions

74
ansible/inventory.yaml Normal file
View File

@ -0,0 +1,74 @@
# ip addresses could be acquired from the vms after they're created
cloud-1:
vars:
magic_router_ip: 192.168.100.10
magic_routes:
- 192.168.101.0/24
- 192.168.102.0/24
- 192.168.103.0/24
ansible_become: true
ansible_user: ubuntu
hosts:
cloud-cluster-1-master-1:
ansible_host: 192.168.100.131
cloud-cluster-1-worker-1:
ansible_host: 192.168.100.244
cloud-cluster-1-worker-2:
ansible_host: 192.168.100.244
edge-1:
vars:
magic_router_ip: 192.168.101.10
magic_routes:
- 192.168.100.0/24
- 192.168.102.0/24
- 192.168.103.0/24
ansible_become: true
ansible_user: ubuntu
hosts:
edge-cluster-1-master-1:
ansible_host: 192.168.101.244
edge-cluster-1-worker-1:
ansible_host: 192.168.101.244
edge-cluster-1-worker-2:
ansible_host: 192.168.101.244
edge-2:
become: true
user: ubuntu
vars:
magic_router_ip: 192.168.102.10
magic_routes:
- 192.168.100.0/24
- 192.168.101.0/24
- 192.168.103.0/24
ansible_become: true
ansible_user: ubuntu
hosts:
edge-cluster-2-master-1:
ansible_host: 192.168.102.244
edge-cluster-2-worker-1:
ansible_host: 192.168.102.244
edge-cluster-2-worker-2:
ansible_host: 192.168.102.244
site-1:
vars:
magic_router_ip: 192.168.103.10
magic_routes:
- 192.168.100.0/24
- 192.168.101.0/24
- 192.168.102.0/24
ansible_become: true
ansible_user: ubuntu
hosts:
site-emulator-1:
ansible_host: 192.168.103.244
all:
children:
cloud-1:
edge-1:
edge-2:
site-1:

28
ansible/prepare.yaml Normal file
View File

@ -0,0 +1,28 @@
- name: "prepare vms for ultrabirb-cluster"
hosts: all
handlers:
- name: "netplan apply"
block:
- name: "run netplan apply"
command: netplan apply
async: 45
poll: 0
- name: "reset connections"
meta: reset_connection
- name: clear errors
meta: clear_host_errors
tasks:
- name: "disable cloudinit"
import_tasks: tasks/disable-cloudinit.yaml
- name: "remove snap"
import_tasks: tasks/remove-snap.yaml
- name: "clean motd"
import_tasks: tasks/clean-motd.yaml
- name: "setup static route"
import_tasks: tasks/setup-static-route.yaml

28
ansible/tasks/apt.yaml Normal file
View File

@ -0,0 +1,28 @@
- name: "Remove ubuntu stuff"
apt:
state: absent
name: ubutu-server
autoremove: yes
- name: "Install my favourite applications"
apt:
state: present
name:
- tmux
- htop
- dnsutils
- needrestart
- curl
- wget
- netcat-openbsd
- tree
- net-tools
- nano
- psmisc
- python3
- python3-venv
- strace
- ifstat
- tcpdump
- xxd
- git

View File

@ -0,0 +1,13 @@
# This changes permissions so update motd can not read it
- name: clean motd
file:
state: file
path: /etc/update-motd.d/{{ item }}
owner: root
group: root
mode: "0000"
with_items:
- 10-help-text
- 50-landscape-sysinfo
- 50-motd-news
- 91-release-upgrade

View File

@ -0,0 +1,12 @@
- name: disable cloudinit
copy:
content: ""
dest: /etc/cloud/cloud-init.disabled
force: no
- name: disable network autoconfig
copy:
content: "network: {config: disabled}"
dest: /etc/cloud/cloud.cfg.d/99-disable-network-config.cfg
force: no

View File

@ -0,0 +1,17 @@
- name: Remove snapd from Ubuntu
apt:
name: snapd
state: absent
purge: yes
when: ansible_distribution == "Ubuntu"
- name: Remove snapd-related directories
file:
path: "{{ item }}"
state: absent
with_items:
- /snap
- /var/snap
- /var/lib/snapd
- "/home/{{ ansible_user }}/snap"
when: ansible_distribution == "Ubuntu"

View File

@ -0,0 +1,10 @@
- name: "remove cloudinit config"
file:
path: /etc/netplan/50-cloud-init.yaml
state: absent
- name: "install static config"
template:
src: templates/netplan.yaml
dest: /etc/netplan/00-static.yaml
notify: "netplan apply"

View File

@ -0,0 +1,15 @@
# {{ansible_managed}}
version: 2
network:
ethernets:
{{ansible_default_ipv4.interface}}:
dhcp4: false
dhcp6: false
gateway4: {{ ansible_default_ipv4.gateway }}
addresses:
- "{{ ansible_host }}/24"
routes:
{% for item in magic_routes %}
- to: {{ item }}
via: {{ magic_router_ip }}
{% endfor %}