proxmaster/README.md

1.4 KiB

#Proxmaster Python RESTful API for managing a grid of vm slaves

##Installation instructions:

1. virtualenv -p python3 appserver
2. source appserver/bin/activate
3. cd appserver
4. git clone https://deflax@bitbucket.org/deflax/proxmaster.git
5. cd proxmaster
6. pip3 install -r requirements.txt
7. create nginx vhost and configuration file via the provided template files:
- config.ini.dist
- nginx_example_vhost.txt

8. make sure this iptables rule is included:
  iptables -A tcp_inbound -p TCP --match multiport --dports 7000:9999 -j ACCEPT #vnc range
9. apt install letsencrypt
10. generate letsencrypt cert using letsencrypt tool and add
00 00   1 * *   root    /etc/init.d/nginx stop && letsencrypt renew && /etc/init.d/nginx start
to /etc/crontab
11. chmod 705 /etc/letsencrypt/archive ; chmod 705 /etc/letsencrypt/live

start:
1. crontab -e
2. @ reboot /usr/bin/screen -dmS proxmaster /home/master/proxmaster/start.sh

##Proxmox slave install instructions:

  1. Datacenter -> Permissions -> Add -> User Permission
  2. Path: / User: masteradmin@pve / Role: Administrator
  3. $IPT -A tcp_inbound -p TCP -s $PROXIP -j ACCEPT #enable proxmaster
  4. Datacenter -> Storage -> Add -> LVM
  5. ID: lvm / Volume Group: vm / Content: Disk image, Container
  6. Datacenter -> Storage -> Add -> NFS
  7. ID: skyblue / Server: 1.2.3.5 / Export: /srv/proxmox/slavename / Content: ISO Image, VZDump backup site
  8. echo 1 > /proc/sys/kernel/dmesg_restrict