maas-autobuilder/user-data.yaml

74 lines
1.8 KiB
YAML

#cloud-config
ssh_import_id:
- lp:arif-ali
# Allow ssh passwords
ssh_pwauth: True
## Update apt database and upgrade packages on first boot
package_update: true
package_upgrade: true
users:
- default
- name: virsh
lock_passwd: false
passwd: $6$SVOxUrhz9mNyscUJ$hKF0RMY1nkGC3BpiozpaznE3AWerd8Ac8AlV9YEpLx50bLw5zweFCuTEEdS04McJNlaIqA.E4HiPuaIYGMzlH/
shell: "/bin/bash"
## Install additional packages on first boot
packages:
- virtinst
- bc
- jq
- qemu-kvm
- libvirt-bin
- qemu-efi
- ksmtuned
## Write arbitrary files to the file-system (including binaries!)
write_files:
- path: /root/initial_setup.sh
content: |
#!/bin/bash
git clone https://github.com/arif-ali/maas-autobuilder.git /root/maas-autobuilder
cd /root/maas-autobuilder/configs
ln -sf ${HOSTNAME}.config hypervisor.config
cd ../
chmod +x manage-maas-nodes.sh
./manage-maas-nodes.sh -c
permissions: '0755'
owner: root:root
- path: /root/linux_kvm.sh
content: |
#!/bin/bash
mkdir -p /home/virsh/bin
ln -s /usr/bin/virsh /home/virsh/bin/virsh
sh -c echo "PATH=/home/virsh/bin" >> /home/virsh/.bashrc
cat >> /etc/ssh/sshd_config << EOF
Match user virsh
X11Forwarding no
AllowTcpForwarding no
PermitTTY no
ForceCommand nc -q 0 -U /var/run/libvirt/libvirt-sock
EOF
systemctl restart sshd
permissions: '0755'
owner: root:root
# Runs any command that we need to run post install
runcmd:
- [ "/root/linux_kvm.sh" ]
- [ "rm", "/root/linux_kvm.sh" ]
- [ "usermod", "-a", "-G", "libvirt", "virsh" ]
- [ "usermod", "-a", "-G", "libvirt-qemu", "virsh" ]
- [ "efibootmgr", "-n", "0001"]
- [ "systemctl", "enable", "ksmtuned"]
- [ "systemctl", "restart", "ksmtuned"]
- [ "/root/initial_setup.sh" ]