proxmaster/README.md

35 lines
1.4 KiB
Markdown

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