VPS control panel update – Automated Xen+CentOS provisioning/configuring & Power User mode
0

VPS control panel update – Automated Xen+CentOS provisioning/configuring & Power User mode

Provisioning and configurations of Xen/CentOS domUs are now possible.

Also added by popular demand is the “Power User” flag which users can enable on VPS. This flag will prevent our control panel from mounting your file system and writing network configuration files at VPS boot time. For our less experienced users it is important that our control panel can automatically write these files to allow for provisioning, IP changes and various other updates/changes.

A toggle flag for power user will be available within our control panel shortly. In the mean time, customers may request a member of staff to enable the power user flag via our contact form.

Coming next by popular demand and in no particular order:

  • Automated additional IP allocations
  • Reverse DNS control
  • OS reloads
Posted in HyperVM, OpenVZ, Uncategorized, Virtualisation, Xen | Tagged , , , , | Leave a comment
VPS Control panel update – Automated account provisioning complete for Xen+Debian/Ubuntu
0

VPS Control panel update – Automated account provisioning complete for Xen+Debian/Ubuntu

Just a quick update to those following our developments on our VPS control panel:

We are currently working extensively on provisioning/configuration of Xen accounts. We can currently deploy Xen+Debian/Ubuntu VPS directly from our control panel. RAM/IP address additions are now also applied at reboots/power on via our control panel.

OpenVZ provisioning will be coming soon.

Ultimately this will lead to automated or quicker provision times for new customers and instant OS reloads/upgrades for new customers.

We will be changing how users can request more IP addresses. Customers will be able to apply for IP addresses via our control panel out of their existing quota (or purchase more if required) and enter justification for IP use directly into our database.

Posted in HyperVM, OpenVZ, Uncategorized, Virtualisation, Xen | Tagged , , , , | Leave a comment
HyperVM replacement progress update
0

HyperVM replacement progress update

Hello. Just a short post for an update on our development of our HyperVM replacement.

Updates/Additions:

  • Added complete traffic accounting for OpenVZ with history
  • Secure communication channels between control panel and host nodes via lightweight, security-tight python scripts. No daemon software installed on host nodes and no ability to run dangerous commands (i.e. “command whitelist with regexp”)
  • Various UI changes
  • Improvements to HyperVM migration script
  • Now fully integrated with our billing system. Purchased an add-on? Have it available instantly! Extra IP? No problem..
  • Pending Provision list for manual fraud checking
  • …and more!

No screenshot this time, sorry Folks! Check our older posts for previous screenshots.

Posted in HyperVM, OpenVZ, Uncategorized, Virtualisation, Xen | Tagged , , , , | Leave a comment
Our HyperVM replacement is coming along nicely
0

Our HyperVM replacement is coming along nicely

We are getting along nicely with our HyperVM control panel replacement.

So far we have implemented

  • IP Pool manager with Reverse DNS
  • VPS Server manager
  • OS Template manager
  • VPS Account manager
  • Product resources and quotas
  • Migration script from HyperVM

For those of you interested in a sneak preview, check out this censored screenshot.

Posted in HyperVM, OpenVZ, Uncategorized, Virtualisation, Xen | Tagged , , , , | Leave a comment
The fate of HyperVM and LxLabs
0

The fate of HyperVM and LxLabs

It is old news now, but sometime during the last week popular VPS provider VAServ experienced huge data loss.

Many believed this was the fault of their VPS control panel software of choice, HyperVM, though this might not have been the case. Possibly related to this incident was the unfortunate suicide of HyperVM creator/sole programmer, K T Ligesh.

This has had a huge knock on effect for many VPS providers as they are now using what may be a dead product. What the future holds for HyperVM nobody knows… many are chopping and changing to other VPS control panels or even going far as creating their own. Does this mean the end of the HyperVM legacy?

Posted in Uncategorized | Leave a comment
**HOW-TO** Half-Bridge for Public IP on firewall/router device behind Modem/Router with Netgear DG834GT
11

**HOW-TO** Half-Bridge for Public IP on firewall/router device behind Modem/Router with Netgear DG834GT

Want to use your own router/firewall device on an ADSL service with just 1 public IP? Can’t do this because you are forced to use PPPoA?

Here is the solution to this problem for Netgear DG834GT users though it should work fine with mostly any DG834 based router.

You can download our pre-made image here.

The credit for this cannot go entirely to myself – it is compiled from various sources and is based on the half-bridge script from RouterTech firmware. Thanks to both DGTeam and RouterTech for the nice firmwares they release.

As always, if you can add to or improve on this your comments are welcome!

Note: We have mirrored the sources in our downloads section for convenience but please download the latest copy from DGTeam!

First, download and untar DGTeam firmware:

wget http://modernadmin.com/downloads/firmware/netgear/DG834GT/DG834GT_V1.02.16_DGTeam_0848_sources.tar.bz2
tar xjf DG834GT_V1.02.16_DGTeam_0848_sources.tar.bz2
cd DG834GT_V1.02.16_DGTeam_0848_sources
tar xjf target_dgteam.tar.bz2

Add our half-bridge script:

mkdir target_dgteam/usr/etc/ppp

cat <<EOF > target_dgteam/usr/etc/ppp/ip-up
#!/bin/sh
/bin/cp /proc/uptime /tmp/wan_uptime
/usr/sbin/rc service restart
#/bin/cp /proc/uptime /tmp/wan_uptime
/bin/cp /usr/etc/ppp/ip-down /etc/ppp/
/bin/echo g5on > /proc/led
/usr/sbin/hbStart.sh
EOF

cat <<EOF > target_dgteam/usr/etc/ppp/ip-up-demand
#!/bin/sh
/bin/cp /proc/uptime /tmp/wan_uptime
/usr/sbin/rc service restart
/bin/cp /usr/etc/ppp/ip-down /etc/ppp/
/bin/echo “/usr/sbin/atm_monitor” >>/etc/ppp/ip-down
/bin/echo g5on > /proc/led
/usr/sbin/hbStart.sh
EOF

add to target_dgteam/usr/sbin/hbStart.sh:

cat <<EOF > target_dgteam/usr/sbin/hbStart.sh
#!/bin/sh

IFC=/sbin/ifconfig
IPT=/usr/sbin/iptables
RTE=/sbin/route

WIF=ppp0
LIF=br0

iKx=$($IFC $WIF|grep inet)
iKMK=${iKx#*k:}
iKx=${iKx#*r:};WIP=${iKx%% *}
iKx=${iKx#*P:};GW=${iKx%% *}

$IFC ${WIF:=ppp0} 0.0.0.0
$RTE add -host $WIP dev $LIF
$RTE add -host $GW dev $WIF
$RTE add default gw $GW

/bin/echo “1″ >/proc/sys/net/ipv4/conf/$WIF/proxy_arp
/bin/echo “1″ >/proc/sys/net/ipv4/conf/$LIF/proxy_arp
EOF

Set permissions:

chmod +x target_dgteam/usr/sbin/hbStart.sh

Lastly, Pack firmware image:

./create_target.sh 1.02.16 GT
./build_dgteam.sh 1.02.16 GT

You should now find the .img file in the current folder like follows: DG834GT_V1.02.16_DGTeam_0921.img

Enjoy!

Posted in ADSL, Networking | 11 Comments
Installing HyperVM for OpenVZ on an OpenVZ capable Xen domU
0

Installing HyperVM for OpenVZ on an OpenVZ capable Xen domU

Following on from the previous tutorial, Installing and Running OpenVZ VEs inside a Xen domU, lets demonstrate how to install HyperVM on this Xen domU.

The process is extremely simple so lets get to it!

First of all, Install iptables if not installed already. This is *apparently* used for bandwidth accounting on VPS created within HyperVM.

yum install iptables

Download the HyperVM master:

wget http://download.lxlabs.com/download/hypervm/production/hypervm-install-master.sh

Once downloaded, start installing HyperVM for OpenVZ. It is useful to add the skip-ostemplate option as it skips most (but not all) of HyperVMs outdated templates. You can download newer ones here.

sh ./hypervm-install-master.sh --virtualization-type=openvz --skip-ostemplate=true

Finally, run the following to force HyperVM again into setting the server to OpenVZ as it mistakingly sets it to Xen as the kernel is both Xen and OpenVZ capable:

cd /usr/local/lxlabs/hypervm/httpdocs/
lphp.exe ../bin/common/setdriver.php --server=localhost --class=vps --driver=openvz

All done! Enjoy creating OpenVZ VPS via HyperVM on your Xen DomU!

Posted in Uncategorized | Leave a comment
HyperVM Xen images updated
2

HyperVM Xen images updated

Our HyperVM Xen images have been updated to include newer kernel modules in /lib/modules

The following are now available in the image:

2.6.18-128.1.6.el5xen

2.6.18-92.1.18.el5.028stab060.8xen

2.6.18-92.1.18.el5.028stab060.2xen

2.6.18-92.1.22.el5xen

2.6.18-92.1.18.el5xen

This should give the images greater compatiblity with a wider range of Xen host nodes, both old and new.

Download our Xen VPS OS templates for HyperVM now!

Enjoy!

Posted in Uncategorized | 2 Comments
Creating HyperVM Xen templates for Ubuntu 9.04 Jaunty
4

Creating HyperVM Xen templates for Ubuntu 9.04 Jaunty

Before reading this post it may be useful to know you can download our own created Ubuntu 9.04 Jaunty image created using these instructions from our OpenVZ and Xen VPS OS templates for HyperVM page.

As always, instructions will be brief. If you feel I have missed out some important detail, feel free to comment and I *may* update the article.

First create and mount a 10GB ext3 filesystem for our image:

sudo lvcreate -L 10G -n template.modernadmin.com-disk VolGroup00
sudo mkfs.ext3 /dev/VolGroup00/template.modernadmin.com-disk
sudo mkdir /mnt/tmp
sudo mount /dev/VolGroup00/template.modernadmin.com-disk /mnt/tmp

Next, we install debootstrap. Since version 1.0.10-2.fc11+ has dependency problems on CentOS 5.3, we’ll use an older version I have mirrored here:

wget http://www.modernadmin.com/downloads/ostemplates/debootstrap-1.0.10-1.fc10.noarch.rpm
sudo rpm -Uvh debootstrap-1.0.10-1.fc10.noarch.rpm

Since jaunty specific scripts are not in this release of debootstrap, lets copy from gutsy:

sudo cp /usr/share/debootstrap/scripts/gutsy /usr/share/debootstrap/scripts/jaunty

Now install jaunty into /mnt/tmp using debootstrap:

sudo debootstrap --include=udev,ssh,quota --arch amd64 jaunty /mnt/tmp http://uk.archive.ubuntu.com/ubuntu/

We need to copy modules into the template – these will be specific to your Xen host node(s). In our case we have a few custom sets, but for now we only want the latest version:

sudo cp -dpR /lib/modules/2.6.18-128.1.6.el5xen /mnt/tmp/lib/modules/

Populate the sources.list file for apt-get:

sudo cat <<EOF > /mnt/tmp/etc/apt/sources.list
deb http://gb.archive.ubuntu.com/ubuntu/ jaunty main restricted universe multiverse
deb-src http://gb.archive.ubuntu.com/ubuntu/ jaunty main restricted universe
deb http://gb.archive.ubuntu.com/ubuntu/ jaunty-updates main restricted universe multiverse
deb-src http://gb.archive.ubuntu.com/ubuntu/ jaunty-updates main restricted universe
deb http://security.ubuntu.com/ubuntu jaunty-security main restricted universe
deb-src http://security.ubuntu.com/ubuntu jaunty-security main restricted universe
EOF

Create a temporary interface which will be removed later on. Also populate some other required files:

sudo cat <<EOF > /mnt/tmp/etc/network/interfaces
auto eth0 lo
iface eth0 inet static
address 95.154.208.250
netmask 255.255.255.0
up route add -net 95.154.208.0 netmask 255.255.255.0 dev eth0
up route add default gw 95.154.208.1
iface lo inet loopback
EOF
sudo cat <<EOF > /mnt/tmp/etc/hosts
127.0.0.1 localhost template.modernadmin.com
EOF
sudo cat <<EOF > /mnt/tmp/etc/hostname
template.modernadmin.com
EOF
sudo cat <<EOF > /mnt/tmp/etc/fstab
proc /proc proc defaults 0 0
devpts /dev/pts devpts defaults 0 1
/dev/sda2 none swap sw 0 1
/dev/sda1 / ext3 errors=remount-ro 0 1
EOF
sudo cat <<EOF > /mnt/tmp/etc/event.d/xvc0
start on stopped rc2
start on stopped rc3
start on stopped rc4
start on stopped rc5

stop on runlevel 0
stop on runlevel 1
stop on runlevel 6

respawn
exec /sbin/getty 38400 xvc0
EOF
sudo rm -rf /mnt/tmp/etc/event.d/tty1
sudo echo “alias eth0 xennet” > /mnt/tmp/etc/modprobe.d/xen
#echo “xvc0″ >> /mnt/tmp/etc/securetty
sudo cat /dev/null > /mnt/tmp/etc/udev/rules.d/70-persistent-net.rules

This next section is completely optional. We will install DenyHosts and any other custom packages to further secure the virtual machines by default.

First, chroot to the new template and set a root password:

sudo chroot /mnt/tmp

passwd root

Exit the chroot and unmount the template from the host node:

exit
sudo umount /mnt/tmp

Start the VM:

sudo xm create template.modernadmin.com.cfg -c

Inside the Xen domU you have just started, install denyhosts, configure as required and then shutdown:

apt-get -y update
apt-get -y upgrade
apt-get -y install denyhosts
apt-get -y clean
shutdown -h now

This step is also optional and only applies if you started the VPS as above and is simply a cleanup step:

sudo mount /dev/VolGroup00/template.modernadmin.com-disk /mnt/tmp
sudo rm -f /mnt/tmp/etc/ssh/ssh_host_*
sudo cat << EOF > /mnt/tmp/etc/rc2.d/S15ssh_gen_host_keys
#!/bin/bash
ssh-keygen -f /etc/ssh/ssh_host_rsa_key -t rsa -N ”
ssh-keygen -f /etc/ssh/ssh_host_dsa_key -t dsa -N ”
rm -f \$0
EOF
sudo chmod a+x /mnt/tmp/etc/rc2.d/S15ssh_gen_host_keys
sudo cat <<EOF > /mnt/tmp/etc/network/interfaces
# loopback interface
auto lo
iface lo inet loopback
EOF

sudo cat /dev/null > /mnt/tmp/var/log/apt/term.log
sudo cat /dev/null > /mnt/tmp/var/log/auth.log
sudo cat /dev/null > /mnt/tmp/var/log/boot
sudo cat /dev/null > /mnt/tmp/var/log/bootstrap.log
sudo cat /dev/null > /mnt/tmp/var/log/btmp
sudo cat /dev/null > /mnt/tmp/var/log/daemon.log
sudo cat /dev/null > /mnt/tmp/var/log/debug
sudo cat /dev/null > /mnt/tmp/var/log/denyhosts
sudo cat /dev/null > /mnt/tmp/var/log/dmesg
sudo rm -rf /mnt/tmp/var/log/dmesg.*
sudo cat /dev/null > /mnt/tmp/var/log/dpkg.log
sudo cat /dev/null > /mnt/tmp/var/log/faillog
sudo rm -rf /mnt/tmp/var/log/fsck/*
sudo cat /dev/null > /mnt/tmp/var/log/kern.log
sudo cat /dev/null > /mnt/tmp/var/log/lastlog
sudo cat /dev/null > /mnt/tmp/var/log/lpr.log
sudo cat /dev/null > /mnt/tmp/var/log/mail.err
sudo cat /dev/null > /mnt/tmp/var/log/mail.info
sudo cat /dev/null > /mnt/tmp/var/log/mail.log
sudo cat /dev/null > /mnt/tmp/var/log/mail.warn
sudo cat /dev/null > /mnt/tmp/var/log/messages
sudo cat /dev/null > /mnt/tmp/var/log/pycentral.log
sudo cat /dev/null > /mnt/tmp/var/log/syslog
sudo cat /dev/null > /mnt/tmp/var/log/udev
sudo cat /dev/null > /mnt/tmp/var/log/user.log
sudo cat /dev/null > /mnt/tmp/var/log/wtmp
sudo cat /dev/null > /mnt/tmp/root/.bash_history
sudo cat /dev/null > /mnt/tmp/etc/udev/rules.d/70-persistent-net.rules

Finally, package the system into a .tar.gz and you are good to go!

cd /mnt/tmp
sudo tar czf /home/hypervm/xen/template/ubuntu-9.04-x86_64-modernadmin.tar.gz .
sudo chmod 755 /home/hypervm/xen/template/ubuntu-9.04-x86_64-modernadmin.tar.gz

Feel free to reproduce this article elsewhere but please give ModernAdmin.com credit where possible. A link back to our site goes a long way and would be greatly appreciated!

Posted in HyperVM, Virtualisation, Xen | Tagged , , , , | 4 Comments
Using vif-route with multiple IPs for a Xen domU
1

Using vif-route with multiple IPs for a Xen domU

Just a little tip for those of you using vif-route for your networking in Xen. I needed to do this recently for a server at OVH as bridging cannot be used.

Set up multiple IPs by separating them with a space like follows in the domU config:

vif = [ 'ip=78.129.140.250 78.129.140.251' ]

You can also add more IPs to the domU without having to restart it using the following syntax replacing 78.129.140.1 with your gateway and vif101.0 with the interface name associated with the domU in your dom0:

ip route add 78.129.140.251 dev vif101.0 src 78.129.140.1

Your domU should now be able to use the extra IP!

In my case, I was trying to forward the IP to an OpenVZ VE within a domU -- this works perfectly fine with the above and no further configuration is required within the domU (other than obviously adding the IP to the OpenVZ container).

Posted in HyperVM, OpenVZ, Virtualisation, Xen | Tagged , , , | 1 Comment