Editing Demo scripts
Warning: You are not logged in. Your IP address will be publicly visible if you make any edits. If you log in or create an account, your edits will be attributed to your username, along with other benefits.
The edit can be undone.
Please check the comparison below to verify that this is what you want to do, and then save the changes below to finish undoing the edit.
Latest revision | Your text | ||
Line 1: | Line 1: | ||
The following demo scripts (scenarios) can be used to show advantages of OpenVZ. | The following demo scripts (scenarios) can be used to show advantages of OpenVZ. | ||
− | == Full | + | == Full VE lifecycle == |
− | Create | + | Create VE, set IP, start, add user, enter, exec, show ps -axf output inside VE, stop, and destroy. It should take two minutes ("compare that to a time you need to deploy a new (non-virtual) server!"). During the demonstration, describe what's happening and why. |
− | |||
− | It should take | ||
− | to deploy a new (non-virtual) server!" | ||
− | describe what's happening and why. | ||
Here are the example commands needed: | Here are the example commands needed: | ||
− | # | + | # VE=123 |
# IP=10.1.1.123 | # IP=10.1.1.123 | ||
# sed -i "/$IP /d" ~/.ssh/ | # sed -i "/$IP /d" ~/.ssh/ | ||
− | # time vzctl create $ | + | # time vzctl create $VE --ostemplate fedora-core-5-i386-default |
− | # vzctl set $ | + | # vzctl set $VE --ipadd $IP --hostname newVE --save |
− | # vzctl start $ | + | # vzctl start $VE |
− | # vzctl exec $ | + | # vzctl exec $VE ps axf |
− | # vzctl set $ | + | # vzctl set $VE --userpasswd guest:secret --save |
# ssh guest@$IP | # ssh guest@$IP | ||
− | [ | + | [newVE]# ps axf |
− | [ | + | [newVE]# logout |
− | # vzctl stop $ | + | # vzctl stop $VE |
− | # vzctl destroy $ | + | # vzctl destroy $VE |
− | == Massive | + | == Massive VE creation == |
− | Create/start 50 or 100 | + | Create/start 50 or 100 VEs in a shell loop. Shows fast deployment and high density. |
− | and high density. | ||
Here are the example commands needed: | Here are the example commands needed: | ||
− | + | # VE=200 | |
− | # time | + | # time while [ $VE -lt 250 ]; do \ |
− | > time vzctl create $ | + | > time vzctl create $VE --ostemplate fedora-core-5-i386-default; \ |
− | > vzctl start $ | + | > vzctl start $VE; \ |
− | > | + | > let VE++; \ |
− | + | > done | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | + | == Massive VE load == | |
− | |||
− | |||
− | |||
− | |||
− | + | Use VEs from previous item — load those by <code>ab</code> or <code>http_load</code>. This demo shows that multiple VEs are working just fine, with low response time etc. | |
− | + | FIXME: commands, ab/http_load setup. | |
− | |||
− | |||
− | |||
− | FIXME: http_load | ||
== Live migration == | == Live migration == | ||
− | If you have two boxes, do <code>vzmigrate --online</code> from one box | + | If you have two boxes, do "<code>vzmigrate --online</code>" from one box to another. You can use, say, <code>xvnc</code> in a VE and <code>vncclient</code> to connect to it, then run <code>xscreensaver-demo</code> and while the picture is moving do a live migration. You'll show <code>xscreensaver</code> stalls for a few seconds but then keeps running — on another machine! That looks amazing, to say at least. |
− | to another. You can use, say, <code>xvnc</code> in a | ||
− | <code>vncclient</code> to connect to it, then run | ||
− | <code>xscreensaver-demo</code> | ||
− | |||
− | migration. You'll | ||
− | seconds but then | ||
− | to say at least. | ||
− | FIXME: commands, setup, | + | FIXME: commands, setup, vnc template. |
== Resource management == | == Resource management == | ||
Line 85: | Line 59: | ||
> done | > done | ||
</pre> | </pre> | ||
− | |||
− | |||
− | |||
− | |||
==== dentry cache eat up ==== | ==== dentry cache eat up ==== | ||
Line 94: | Line 64: | ||
=== CPU scheduler === | === CPU scheduler === | ||
− | + | FIXME | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
=== Disk quota === | === Disk quota === | ||
<pre> | <pre> | ||
− | # vzctl set | + | # vzctl set VEID --diskspace 1048576:1153434 --save |
− | # vzctl start | + | # vzctl start VEID |
− | # vzctl enter | + | # vzctl enter VEID |
[ve]# dd if=/dev/zero of=/tmp/tmp.file bs=1048576 count=1000 | [ve]# dd if=/dev/zero of=/tmp/tmp.file bs=1048576 count=1000 | ||
dd: writing `/tmp/tmp.file': Disk quota exceeded | dd: writing `/tmp/tmp.file': Disk quota exceeded | ||
</pre> | </pre> | ||
− | |||
− |