wtorek luty 10, 2009
- All
- Linki
- OpenSolaris
- SUN Solaris
- virtualization - EN
- Wirtualizacja - PL
privsnz
Jeżeli chcemy utworzyć ZONE, która nie będzie zone native (instalowanie pakietów z ZONE GLOBAL, późniejsza "opieka" pakietami) ale będzie bardziej niezależną strefą, można posłużyć się poniższą instrukcją:
w wersji angielskiej można opis znaleźć tutaj
1. Utworzenie nowego Brandu.
# mkdir /usr/lib/brand/privsnz
# cp -r /usr/lib/brand/native/* /usr/lib/brand/privsnz
2. Utworzenie template SUNWprivsnz
#cp /etc/zones/SUNWblank.xml to /etc/zones/SUNWprivsnz
i zmień:
<zone name="blank" zonepath="" autoboot="false">
na
<zone name="blank" zonepath="" autoboot="false" brand="privsnz">
3. Zmiana w plikach brand
Wyedutuj plik/usr/lib/brand/privsnz/config.xml
Zmień
<brand name="native">
(install>/usr/lib/lu/lucreatezone -z %z(/install>
na
<brand name="privsnz">
<install>/usr/lib/brand/privsnz/priv_install %z %R %*</install>
<boot>/usr/lib/brand/privsnz/priv_boot %z %R</boot>
<halt>/usr/lib/brand/privsnz/priv_halt %z %R</halt>
4. Utwórz teraz 3 pliki
cat <<EOF > /usr/lib/brand/privsnz/priv_install
#!/bin/bash
# %z zonename %R zone root %* rest of params
exit 0
EOF
# chmod 0755 /usr/lib/brand/privsnz/priv_install
# cat <<EOF > /usr/lib/brand/privsnz/priv_boot
#!/bin/sh
# %z zonename %R zone root
exit 0
EOF
chmod 0755 /usr/lib/brand/privsnz/priv_boot
cat <<EOF > /usr/lib/brand/privsnz/priv_halt
#!/bin/sh
# %z zonename %R zone root
exit 0
EOF
chmod 0755 /usr/lib/brand/privsnz/priv_halt
5. Skonfiguruj nowa ZONE
#zonecfg -z new
new> create -t SUNWprivsnz
new> set zonepath=/zone/chroot/bash
6. Zainstaluj ją (nie spowoduje to przegrania plików z zony globalnej, jedynie zmieni status z configure na install):
zoneadm -z new install
7. Wgraj do niej pliki instalacyjne:
#!/bin/sh
CHROOT=/zone/chroot/bash/root
CDROM=/zone/iso/cdrom/Solaris_10/Product
pkgadd -R $CHROOT -d $CDROM SUNWkvm.i SUNWcsr SUNWcsu SUNWcar.i SUNWckr SUNWcnetr SUNWcakr.i SUNWcsl SUNWcsd SUNWcslr SUNWbash
I w ten sposób mamy zone z Solarisem 10, który ma tylko zainstalowanego basha.
Posted at 02:40PM lut 10, 2009 by Maciej Browarski in Wirtualizacja - PL | Comments[0]
link warty zapamietania
http://blogs.sun.com/narayan/resource/docs/vio_failover_steps.html
Posted at 03:42PM cze 23, 2008 by Maciej Browarski in Wirtualizacja - PL | Comments[0]
xen linux dom0 opensolaris domU
Mając już zainstalowanego Linuksa na serwerze, czemu nie pokusić się o doinstalowanie tam następnego systemu, równolegle działającego ?
Przecież taką możliwość daje Nam wirtualizacja!!!
A jak nie mamy procesora x64 z możliwością sprzętowej wirtualizacji, a chcielibyśmy aby system był wydajny ?
Użyjmy Parawirtualizacji :)
Jak zacząć? Oto krótki przepis:
Serwer posiadający procesor Intel 64bitowy dual Core, 2 Gb RAMu oraz trochę wolnego miejsca na dysku twardym i OpenSolarisa,którego można ściągnąć z tej strony.
Mountujemy obraz i przegrywamy z niego dwa pliki (jądro i plik startowy) na dysk twardy:
bash# cp /cdrom/boot/platform/i86xpv/kernel/amd64/unix /usr/src/xen/
bash# cp /cdrom/boot/amd64/x86.miniroot /usr/src/xen/
Następnie trzeba stworzyć plik, który będzie robił za cały dysk dla naszego systemu (np. 5GB):
bash# dd if=/dev/zero of=/usr/src/xen/disk.raw bs=1024k seek=5k count=1
Potem tworzymy plik konfiguracyjny config.py:
name = 'solaris-pv'
memory = '1024'
vcpus = 1
# for installation
disk = [ 'file:/iso/sol-nv-b75a-x86-dvd.iso,6:cdrom,r' , 'file:/usr/src/xen/disk.raw,0,w' ]
vif = [ '' ]
on_shutdown = 'destroy'
on_reboot = 'destroy'
on_crash = 'destroy'
kernel = '/usr/src/xen/unix'
ramdisk = '/usr/src/xen/x86.miniroot'
extra = '/platform/i86xpv/kernel/amd64/unix -B - nowin -B install_media=cdrom'
I już możemy uruchamiać proces instalacji:
bash# xm create -c config.py
SunOS Release 5.11 Version snv_75 64-bit
Copyright 1983-2007 Sun Microsystems, Inc. All rights reserved.
Use is subject to license terms.
WARNING: Found xen v3.1.0 but need xen v3.0.4-1-xvm
WARNING: The kernel may not function correctly
Ten błąd można zignorować, bo wszystko działa poprawnie. :)
I dalsza instalacja przebiega standardowo.
Także, życzę miłej zabawy z OpenSolarisem, Linuksem i XENem.
Posted at 04:47PM lis 06, 2007 by Maciej Browarski in Wirtualizacja - PL | Comments[0]
SUN Fire T2000 solaris ldoms test
Jak miałem na testach maszynę X4100 wykonałem na niej testy.
Aktualnie mam SunFire T2000 i pozwoliłem sobie wykonać podobne testy, których krótki opis to:
1. Uruchomienie zadania zabierającego 100% procesora,
2. Uruchomienie równolegle 16 zadań zabierających 100% procesora,
3. Pobranie 40MB pliku i zapisanie go na dysk,
4. Pobranie równolegle 16 plików o wielkości 40MB i zapisanie na dysk.
Przyznam się szczerze, że wyniki testów mnie zaskoczyły!! Oczywiście są one orientacyjne, bardziej chodzi o wykrycie odpowiednich zachowań, tendencji.
Oto wyniki z domeny kontrolnej (4 wątki - 1 core, 1GB RAM):
1. 2 minuty 30 sekund
2. 31 minut 13 sekund
3. 4 sekundy
4. 1 minuta 1 sekunda
Oto wyniki z domeny logicznej (16 wątków - 4 core, 1 GB RAM):
1. 2 minuty 30 sekund
2. 7 minut 48 sekund
3. 4 sekundy
4. 1 minuta 3 sekundy
Jak widać z wyników T2000 nie jest demonem obliczeń (jeden fizyczny procesor, 6 core'owy 24 wątki, zegar 1,2GHz), ale pazurki wyciąga w przesyłaniu danych :) (średnio 10MBajtów/s = 80megabitów/s,a więcej pewnie sieć nie chciała dać).
Więc jeżeli mamy aplikację korzystającą mocno z sieci i dysków to ten serwer jest pod to przeznaczony. :)
Podział na logiczne domeny też nie sprawił, że operacje I/O spadły, także wirtualizacja jako Logical Domains (LDOMS) firmy SUN też jest udanym pomysłem.
Posted at 03:45PM paź 17, 2007 by Maciej Browarski in Wirtualizacja - PL | Comments[0]
Sieć w domenach logicznych (LDOMS)
Ostatnio pisałem o instalacji logicznej domeny kontrolanej przez Sun Solaris 10 na Sun Fire T2000.
Teraz chciałbym opisać, w jaki sposób jest rozwiązana sprawa kart sieciowych.
Jak wiemy z tego dokumentu karta sieciowa fizycznie jest widoczna tylko w domenie kontrolującej, a dalej jest udostępniana jako wirtualna karta.
Jak to się robi ?
W domenie kontrolującej wydaliśmy polecenie:
bash# ldm add-vsw net-dev=e1000g0 primary-vsw0 primary
Mówiące o tym, że tworzymy _virtualny_ switch o nazwie primary-vsw0 przypięty do fizycznej karty e1000g0. Tym samym wirtualne karty sieciowe są na zewnątrz widoczne tak jak nasza karta fizyczna.
Tworząc logiczną domenę, wydaliśmy taką komendę:
bash# ldm add-vnet vnet1 primary-vsw0 tdomena
Spowodowała ona, że w domenie logicznej pojawi się wirtualna karta logiczna, która jest przypięta do wirtualnego switcha primary-vsw0. MAC address karty logicznej zostanie automatycznie dobrany (będzie to nowy MAC address, a nie wspólny z fizyczna kartą e1000g0).
W domenie logicznej możemy zacząć manipulować kartą używając urządzenie vlan0, tj.:
-bash-3.00# ifconfig -a
lo0: flags=2001000849
inet 127.0.0.1 netmask ff000000
vnet0: flags=1004843
inet x.x.x.x netmask ffffff00 broadcast x.x.x.255
ether 0:14:4f:f9:92:b4
Natomiast w domenie kontrolującej sytuacja wygląda tak:
-bash-3.00# ifconfig -a
lo0: flags=2001000849
inet 127.0.0.1 netmask ff000000
e1000g0: flags=1004843
inet x.x.x.x netmask ffffff00 broadcast x.x.x.255
ether 0:14:4f:1d:e1:0
vsw0: flags=1000843
inet x.x.x.x netmask ffffff00 broadcast x.x.x.255
ether 0:14:4f:fa:c6:5c
Aby był możliwy kontakt domeny kotrolującej z logiczną domeną, należy przydzielić interfejsowi vsw0 adres IP należący do tej samej sieci co adres w domenie logicznej
Bardzo pomocny jest ten artykuł.
Posted at 01:49PM paź 16, 2007 by Maciej Browarski in Wirtualizacja - PL | Comments[0]
OpenSolaris Zone - test
Mając dalej do dyspozycji serwer X4100 wykonałem podobne testy jak poprzednio, ale na zone'ach solarisowych.
Oto wyniki:
1 zona
1. 44 sekund
2. 2 minuty 56 sekund
3. 11 sekund
4. 1 minuta 50 sekund
2 równoległe zony
1. 44 sekund
2. 5 minut 45 sekund
3. 24 sekundy
4. 2 minuty 15 sekund
Jak widać z wyników i porównania z poprzednimi wynikami z XEN, OpenSolaris + Zone mają lepszą wydajność w operacjach I/O ponieważ nie są one emulowane.
Oczywiście można dużo pisać o różnicach między Zone i XEN, i czy można je porównywać, ale chyba najważniejszymi rzeczami są wydajność i bezpieczeństwo dla uruchamianych programów, a to obydwa produkty zapewniają.
Ktoś może zarzucić, że w Zone'ach można uruchomić tylko programy pod Solarisa, nic bardziej mylnego, bo ostatnio pojawiło się BrandZ. Zwiększa on możliwość o, bez rekompilacji, uruchamianie aplikacji Linuksowych w Zone'ach. Ale o tym następnym razem.
Posted at 03:00PM wrz 12, 2007 by Maciej Browarski in Wirtualizacja - PL | Comments[0]
Czym jest vmkernel ESX
Aktualnie w Internecie toczy się debata nt. czym jest vmkernel (główny składnik VmWare ESX).
Jeden głos mówi, że jest to moduł jądra linuksa, a zatem powinien być udostępniony kod źródłowy.
Drugi głos mówi, że jest to oddzielny system operacyjny.
Wydaje się, że Zachary (komentarz nr. 41 z linku powyżej) ma rację, że jest to oddzielny system, który zarządza procesorami i pamięcią
Patrząc w ESX widzimy, że linux uruchamia się z ograniczeniami do jednego procesora i do 200MB pamięci RAM, później jest ładowany moduł vmmon, który uruchamia vmkernel, a ten aktywuje kolejne procesory i zarządza resztą pamięci RAM.
Chociaż dalej bez odpowiedzi zostają pytania:
- Czy w ESX można uruchomić inny system kontrolujący niż linux ?
- Czy jednak vmkernel jest bezpośrednio zależny od jądra linuksa i może być traktowany jako moduł, a przez to powinien być dostępny jego kod źródłowy ?
Posted at 01:58PM wrz 06, 2007 by Maciej Browarski in Wirtualizacja - PL | Comments[0]