-
Notifications
You must be signed in to change notification settings - Fork 2
Install
How to install the server (where everything gets installed to) on bare metal.
- build base Debian box ready for Ansible.
- Ansible part 1: Everything needed to netboot a pi, and the public facing server bits.
- Put server into maintenance mode (pi has RW access to the NFS files.)
- Boot a pi, do more Ansible.
- Put server into production mode.
https://github.com/CarlFK/veyepar/wiki/System-Stack#what-to-do-first
When the setup process asks for hostname: voctotest (default) replace voctotest with base.
(we don't want a video mixer, we want a simple base Debian box.)
Once the base install is done: setup ssh keys, ip address, hostname.
ssh in:
sudo apt-get update --allow-releaseinfo-change; sudo apt upgrade
sudo apt install ssh-import-id
sudo ssh-import-id carlfk # give root your own public key
sudo vim /etc/hostname /etc/hosts
Use your inventory parameters and the DC Video Team playbook to setup a pxe server:
Clone this repo and the dc-video team ansible next to each other:
git clone https://github.com/CarlFK/pici
git clone https://salsa.debian.org/debconf-video-team/ansible dc_a
(in the following examples, replace negk with your hostname)
- put your machine's hostname in ansible/inventory/hosts under [pxe] and [xyz]
- put your machine's 2 MACs into ansible/inventory/host_vars/negk.yml
- your admin user in ansible/inventory/group_vars/all/all.yml
- maybe put your box's IP to ansible/inventory/hosts
ansible-playbook dc_a/site.yml --inventory-file pici/ansible/inventory/hosts --user root --limit negk
ansible-playbook pici/ansible/site.yml --inventory-file pici/ansible/inventory/hosts --user root --limit negk
Now you should have a dhcp/dns/tftp server on the local nic.
- Put the system into maintenance mode so the pi can update the server.
sudo maintenance.sh
End of maintenance.sh boots the maintenance Pi.
- Log into pi as root to verify ssh keys are set and populate known_hosts.
ssh root@${mpi_ip}
This repo has been checked out on the server. tmux and use it to update the pi. (It takes over an hour.)
tmux
ansible-playbook ansible/site.yml -vv --inventory-file ansible/inventory/hosts --user root --limit pi
Put the system into production mode (nfs is ro, enable overlayroot on pi) and turn on every pi:
sudo production.sh
The system is ready for public consumption.