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
  1. cp proxmaster.service /etc/systemd/system/proxmaster.service ; systemctl enable proxmaster.service

##Security

  1. make sure this iptables rule is included: iptables -A tcp_inbound -p TCP --match multiport --dports 7000:9999 -j ACCEPT #vnc range
  2. apt install letsencrypt
  3. 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
  4. chmod 705 /etc/letsencrypt/archive ; chmod 705 /etc/letsencrypt/live

##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