Folks,
responding to an
article on virtualization.info:
KVM is a type-2 hypervisor, Xen is a type-1 hypervisor. So, there is NO apples-to-apples comparison here, you're comparing apples-to-peaches.
Where's the difference?
With KVM ALL your "guests" run in the SAME user-space (there is only one kernel, namely Linux!), and therefore attacking one "guest" from a different "guest" seems way easier then with Xen, where they do get completely separate environments. You would need to HACK into the Xen microkernel to have access, whereas with KVM you have all access directly from your Linux-login.
Is that, what you want? One single unpriviliged user (or any other user!) being able to influence your "guest"? I bet, you don't like that!
If you want to compare KVM with VMware Workstation, Fusion, Parallels, VirtualBox, ok, that would be the right comparison. But nobody does do this comparison. Why?
Because Linux after all still doesn't seem to be "ready for the DataCenter"... OK; I'm making it easy (oversimplifying), but that thinking, expressed in KVM vs. Xen totally ignores many important points that are relevant in datacenters. These do not apply to Laptops, and that's still seemingly the domain of Linux...
Please, start thinking... (I do not want to discredit Linux, but the comparing of apples-and-peaches in this case really is sadening...)
Matthias
After having had some bad experiences with my digital storage of my recordings
from digital TV movies and my digital photos using USB disks connected to
Windows XP (you simply never know, if something, that is written is written
correctly, or if it can be read back, or over time, if things change
(bit-errors) you still can read it), I now decided to rely on a filesystem,
that checks what it writes and reads and is capable of correcting
errors. Guess what, that filesystem is called
ZFS and is part of
Solaris.
So, I started looking around in order to build my first home-made computer
ever, and wanted to have a thing, that's quiet, runs Solaris, has enough USB
ports to connect external storage, and uses not that much power. Besides, as a
home NAS server, I also wanted GB networking, and a small form factor. That
made me look at mini-itx boards, and the one I ultimately choose (four weeks
ago) was the new Intel
D945GCLF2
board. It has a dual core hyperthreading Atom 330 CPU running at 1.6 GHz, 8
USB ports, Gbit network and only costs around 75 EUR.
As this was a
pre-announced board, and as I was planning on vacation, I was looking for a
store that was already selling it. The first to sell it here in Germany was:
http://www.cartft.com/
So, if you want to buy a board, where the specs are still unclear, and if you
even want to run some OS on that, that's a bit uncommon (although Solaris
really takes up!), I needed some more information. As the people from CarTFT
also were very forthcoming in answering a couple of questions w.r.t. the NIC
on that board (they even connected a board (before official selling by Intel
had begun), while I was on the phone, and read the info to me from the screen,
marvelous!) which for me was essential, as no public info had been available
three weeks ago and I needed to know, if the NIC will be supported by Solaris
(it is!), I did order with them on September 17th.
I found them because they also did publish a
benchmark/review
way before others, so I decided to order:
Case: M200 case: http://www.cartft.com/catalog/il/722
MotherBoard: Intel D945GCLF2: http://www.cartft.com/catalog/il/980
Exchange heatsink: http://www.cartft.com/catalog/il/952
DC/DC converter: picoPSU-60WI: http://www.cartft.com/catalog/il/338
External PSU: Standard Laptop: http://www.cartft.com/catalog/il/426
Powercord: Standard German: http://www.cartft.com/catalog/il/907
RAM: Standard 2GB: http://www.cartft.com/catalog/il/772
After now having build the system, I know, what I should have changed from
that bill of material, but the changes would have been small. In detail:
Instead of the 60W pico powersupply I should have bought the
picoPS-90W
version, as that already has the P4 connector. The Intel Board really requires
one, so now I had to add a y-cable and an additional P4 cable to my bill of
materials.
Also, the proposed exchange heatsink is not needed, as I now did
replace that by a fully passive
Zalman
ZM-NBF47 heatsink:
There is one small caveat with this heatsink. It
only has TWO clips, and the Intel motherboard does have the exactly two
opposite loops. So I needed to mount the heatsink rotated by 90 degree (which
fits better on this motherboard, so that's a good thing), and needed to crimp
the clips so that they do fit THROUGH the loops on the motherboard. Together
with the provided thermo paste, it's mounted securely to the motherboard. You
can see that on the image, if you look closely, sadly the image isn't all that
good. For additional discussion see also:
http://www.quietpc.com/forums/viewtopic.php?p=104291&sid=b0f2ad2dbb67cc37490d6a66fbe1632f
So, once I had the PSU in place, I bought a standard 8 GB CF card, as I do not
want to run many complex things on this system. It sahll only be a CIFS- and
NFS- server for my homesystems, and therefore the OS itself is mainly static,
allowing for a small and slow "disk", that doesn't have "rotating rust", and
therefore uses less power. I did choose an
A-Data Speedy one, as that was, what
my electronics shop around the corner had
in stock.
With that card in the CF-IDE converter, that's already
mounted in the M200 case (mounted is the
iTuner CF200 card), I
sadly got nowhere. The "disk" simply was not recognized by Solaris. Some more
tests revealed, that the CF-200 works with smaller and faster cards. Before
buying a faster CF card (which would have been more expensive) I decided to
replace the CF-200 card by a
different
one. Others also found, that the CF-200 does not work that well, see for
example
here.
So, while I was ordering additional hardware, I decided to also add an
USB
connector, as the case only uses two of the four, that are not yet
connected. Let's conclude the hardware section with the fact, that this IDE-CF
converter does work.
During the "composition", you might find, that mounting mini-itx boards and
all the stuff surrounding it into such a small case a bit
difficult. Especially, if you would like to also use the SATA connectors, you
might get into trouble, as they are so close to the IDE connector, that in my
case, the IDE cable does block the SATA connectors. But as I didn't want to
have any internal „real disks“, that isn't a problem for me.
So now for the software part: Because I want to use this as a small server, I
disabled audio, parallel and serial ports directly in the BIOS. At the time of
the composition, Solaris Express Community Edition was at build 98, and the
rge driver in that build still has a small problem with the RealTek card on
this board. In order to enable it, you need to add the following line to
/etc/system:
set ip:dohwcksum=0
As I needed to install Solaris via network I also needed to add that to the
installserver miniroot files. Miniroot is a gzip file, so:
mv miniroot miniroot.gz
gunzip miniroot
lofiadm -a `pwd`/miniroot
mkdir /a
mount /dev/lofi/1 /a
cd /a/etc/
vi system
and adding the line above to that file, does the trick, if you continue with:
cd
umount /a
gzip miniroot
mv miniroot.gz miniroot
lofiadm -d /dev/lofi/1
rmdir /a
You can see a discussion on the rge problem
here.
It shall be fixed in newer versions of Solaris/OpenSolaris.
My next problem was, that I wanted to install Solaris using ZFS as the root
filesystem. So from the PXE boot image I then selected option 4
(console-text), because that's the version of the installer, that allows ZFS
to be selected. The next problem was, that the installer has a large
difference in his thinking of needed diskspace and the real diskspace. Simply
put, I could not install "Entire distribution + OEM support", so I deselected
StarOffice.
Once all this things were done and set, the install went smoothless, although
it needed 15,5 hours. The CF disk is real slow!
So, once the system was up again, again edit /etc/system to add the "ip" line
to it, so that the network is working. Then configuring all other network
settings as usual, and Bob's your uncle.
There still was one small surprise, because Solaris only booted in 32bit,
although the Atom is a 64 bit CPU.
James C. Liu states in his Blog at
http://blogs.sun.com/PotstickerGuru/entry/solaris_running_on_intel_atom
that for running in 64 bits, you need to change the menu.lst file, because the
GRUB as used in Solaris would not accept this Atom CPU as a 64 bit capable
CPU. This shall be changed in Build99 onwards, but as you know, I was not able
to install Build99, so changing the "$ISAINFO" to "amd64" made the trick.
After that, I added two
Western Digital
WD Elements 1TB USB disks, created a mirrored ZPOOL, set compression=on
and have a long-lasting big NAS home server.
In order to save even more power, I switch off the graphics login and sendmail
by "svcadm disable cde-login;svcadm disable sendmail".
I did not yet sample power usage, but will do later, so stay tuned.
I hope to have given you some ideas, on how to set up such a small
power-efficient, eco-friendly server for home-usage.
And here, some images of the "building" process:
Matthias
P.S.: Added a new entry w.r.t. this server at:
http://blogs.sun.com/pfuetz/entry/eco_responsible_power_friendly_small
It's been a long time, but now we've made it (and even 6 months in advance to our original planning!) (and it's worth a new blog entry, long overdue!):
The complete Solaris Cluster is now OpenSource! This is the FIRST commercial HA solution to go OpenSource, and as it is also the leader in this market-space, it's a well-known product, and not some "Toolkit" for creating semi-reliable-HA solutions. It's the whole thing, all in total, all OpenSource.
It's "new" name is "Open High Availability Cluster". Open HA Cluster is part of OpenSolaris, available in the HA Clusters Community Group on
OpenSolaris.org.
I'll copy some links, that Nicolas Solter did send out to us internally (so this is attributed to Nick):
Visit
http://www.opensolaris.org/os/community/ha-clusters/ohac/
for the source code and more information.
Listen to a podcast with Meenakshi Kaul-Basu, Director of Availability
Products:
http://blogs.sun.com/barton808/entry/open_ha_cluster_whole_enchilada
Read the official press release:
http://www.sun.com/aboutsun/pr/2008-05/sunflash.20080529.2.xml
Details:
Solaris Cluster is Sun's High Availability Cluster offering.
http://www.sun.com/software/solaris/cluster/index.xml
http://blogs.sun.com/SC/
http://wikis.sun.com/display/SunCluster/
The open source code does not include some encumbered Solaris Cluster
source code. Nonetheless, users can build a completely usable HA Cluster
from this source with Sun Studio 11.
Also available is source for parts of the Solaris Cluster Automated Test
Environment (SCATE), source for the Solaris Cluster man pages, and source
for Solaris Cluster Globalization (G11N).
So far my copy and paste from Nick's Email...
Matthias