Plesk in VE
Below is an example transcript of installing Plesk into an OpenVZ container (container#11):
# vzctl create 11 --ostemplate centos-4-i386-default Creating container private area: /vz/private/11 Performing postcreate actions container private area was created # vzctl set 11 --quotaugidlimit 150 \ --numproc 400:400 \ --kmemsize 16384000:18022400 \ --privvmpages 262144:292912 \ --hostname=plesk.example.com \ --diskspace 2000000:2000000 \ --shmpages 16384:16384 \ --ipadd 127.1.2.3 \ --save Saved parameters for container 11 # vzctl set 11 --userpasswd root:pass Changing password for user root. passwd: all authentication tokens updated successfully. # vzctl set 11 --iptables "iptable_filter iptable_mangle ipt_limit ipt_multiport ipt_tos ipt_TOS ipt_REJECT ipt_TCPMSS ipt_tcpmss ipt_ttl ipt_LOG ipt_length ip_conntrack ip_conntrack_ftp ip_conntrack_irc ipt_conntrack ipt_state ipt_helper iptable_nat ip_nat_ftp ip_nat_irc" --save Saved parameters for container 11 # vzctl start 11 Starting container ... container is mounted Adding IP address(es): 192.168.51.55 Setting CPU units: 1000 Set hostname: plesk.local Setting quota ugidlimit: 150 container start in progress...
If you want to run a VPN server inside the container you need to TUN/TAP module. The following commands consolidate what needs to be done:
# modprobe tun # lsmod | grep tun tun 6624 0 # vzctl set 11 --devices c:10:200:rw --save Setting devices Saved parameters for container 11 # vzctl exec 11 mkdir -p /dev/net # vzctl exec 11 mknod /dev/net/tun c 10 200 # vzctl exec 11 chmod 600 /dev/net/tun
Make sure that the container's hostname (plesk.example.com) is resolving correctly to the container's IP address (127.1.2.3). You can also add the corresponding record to /etc/hosts as a workaround.
Due to how the Plesk VPN package install script works, it uses a regex on the output of "uname -r" to determine the kernel release to assure you have a minimum version of Virtuozzo (version 021stab025). So what you can do is get your version with "uname -r", and set the VE release name to fit the regex. For example:
# uname -r 2.6.18-194.26.1.el5.028stab079.2 # echo "2.6.18-194stab079.2" > /proc/sys/kernel/virt_osrelease # vzctl restart 11
Then, go to http://www.parallels.com/download/plesk8/ and download the appropriate autoinstaller or the appropriate RPM. In this case, CentOS 4.3.
If you want to download the autoinstaller all you need to do is:
# cp -f /etc/resolv.conf /vz/private/11/etc/resolv.conf # vzctl enter 11 entered into container 11 # cd # wget http://download1.parallels.com/Plesk/Plesk8.1/CentOS4.3/psa_installer_v3.1.0_build061201.02_os_CentOS_4.3_i386 # chmod a+x psa* # ./psa_installer_v3.1.0_build061201.02_os_CentOS_4.3_i386
Proceed as you would if you were installing Plesk without OpenVZ.
When the installation over you will see something along the lines of:
Congratulations! Plesk has been successfully installed on your server. To complete the system configuration, please proceed to URL: https://plesk.local:8443/ or https://127.0.0.1:8443/ Use the login name 'admin' and password 'setup'. Further, use the following commands to start and stop Plesk: "/etc/init.d/psa start" and "/etc/init.d/psa stop" respectively.
Plesk "about" webpage:
Done. You can create a prepackaged template from this container for future installations.