No description
db | ||
log | ||
tools | ||
.gitignore | ||
config.ini.dist | ||
grid.py | ||
ioconfig.py | ||
nginx-vhost-ssl.txt | ||
nginx-vhost.txt | ||
novnc.py | ||
plugin.py | ||
proxmaster.py | ||
proxmaster.service | ||
README.md | ||
requirements.txt | ||
runwebsockify.py | ||
utils.py |
#Proxmaster Python RESTful API for managing a grid of vm slaves
##Installation instructions:
- virtualenv -p python3 appserver
- source appserver/bin/activate
- cd appserver
- git clone https://deflax@bitbucket.org/deflax/proxmaster.git
- cd proxmaster
- pip3 install -r requirements.txt
- create nginx vhost and configuration file via the provided template files:
- config.ini.dist
- nginx_example_vhost.txt
- cp proxmaster.service /etc/systemd/system/proxmaster.service ; systemctl enable proxmaster.service
##Security
- make sure this iptables rule is included: iptables -A tcp_inbound -p TCP --match multiport --dports 7000:9999 -j ACCEPT #vnc range
- apt install letsencrypt
- 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
- chmod 705 /etc/letsencrypt/archive ; chmod 705 /etc/letsencrypt/live
##Proxmox slave install instructions:
- Datacenter -> Permissions -> Add -> User Permission
- Path: / User: masteradmin@pve / Role: Administrator
- $IPT -A tcp_inbound -p TCP -s $PROXIP -j ACCEPT #enable proxmaster
- Datacenter -> Storage -> Add -> LVM
- ID: lvm / Volume Group: vm / Content: Disk image, Container
- Datacenter -> Storage -> Add -> NFS
- ID: skyblue / Server: 1.2.3.5 / Export: /srv/proxmox/slavename / Content: ISO Image, VZDump backup site
- echo 1 > /proc/sys/kernel/dmesg_restrict