mirror of
https://github.com/outbackdingo/homelab-v.git
synced 2026-08-25 14:53:19 +00:00
79 lines
2.0 KiB
YAML
79 lines
2.0 KiB
YAML
#cloud-config
|
|
users:
|
|
- name: ${username}
|
|
groups:
|
|
- sudo
|
|
shell: /bin/bash
|
|
ssh_authorized_keys:
|
|
- ${pub-key}
|
|
sudo: ALL=(ALL) NOPASSWD:ALL
|
|
|
|
network:
|
|
version: 1
|
|
config:
|
|
- type: nameserver
|
|
address:
|
|
- 1.1.1.1
|
|
- 8.8.8.8
|
|
|
|
hostname: ${hostname}
|
|
create_hostname_file: true
|
|
package_update: true
|
|
package_upgrade: true
|
|
locale: en_US.UTF-8
|
|
timezone: Europe/Oslo
|
|
|
|
write_files:
|
|
- path: /etc/modules-load.d/k8s.conf
|
|
content: |
|
|
overlay
|
|
br_netfilter
|
|
|
|
- path: /etc/sysctl.d/k8s.conf
|
|
content: |
|
|
net.bridge.bridge-nf-call-ip6tables = 1
|
|
net.bridge.bridge-nf-call-iptables = 1
|
|
net.ipv4.ip_forward = 1
|
|
# https://serverfault.com/questions/1148659/overwriting-provider-dns-via-cloud-init
|
|
- path: /etc/systemd/resolved.conf.d/dns_servers.conf
|
|
content: |
|
|
[Resolve]
|
|
DNS=1.1.1.1 8.8.8.8
|
|
Domains=~.
|
|
permissions: '0644'
|
|
|
|
packages:
|
|
- qemu-guest-agent
|
|
- net-tools
|
|
- vim
|
|
- apt-transport-https
|
|
- ca-certificates
|
|
- curl
|
|
- gpg
|
|
- open-iscsi
|
|
- jq
|
|
|
|
runcmd:
|
|
- systemctl enable qemu-guest-agent
|
|
- systemctl start qemu-guest-agent
|
|
- localectl set-locale LANG=en_US.UTF-8
|
|
- curl -fsSL https://pkgs.k8s.io/core:/stable:/v${k8s-version}/deb/Release.key | gpg --dearmor -o /etc/apt/keyrings/kubernetes-apt-keyring.gpg
|
|
- echo 'deb [signed-by=/etc/apt/keyrings/kubernetes-apt-keyring.gpg] https://pkgs.k8s.io/core:/stable:/v${k8s-version}/deb/ /' | tee /etc/apt/sources.list.d/kubernetes.list
|
|
- apt update
|
|
- apt install -y kubelet kubeadm kubectl
|
|
- apt-mark hold kubelet kubeadm kubectl
|
|
- apt install -y runc containerd
|
|
- containerd config default | tee /etc/containerd/config.toml
|
|
- sed -i 's/SystemdCgroup = false/SystemdCgroup = true/' /etc/containerd/config.toml
|
|
- modprobe overlay
|
|
- modprobe br_netfilter
|
|
- sysctl --system
|
|
- systemctl restart containerd
|
|
- systemctl restart systemd-resolved
|
|
- ${kubeadm-cmd}
|
|
|
|
power_state:
|
|
delay: now
|
|
mode: reboot
|
|
message: Rebooting after cloud-init completion
|
|
condition: true |