Erinevus lehekülje "OpenVZ" redaktsioonide vahel

Allikas: Kuutõrvaja
(Sissejuhatus)
7. rida: 7. rida:
  
 
Operating system-level virtualization
 
Operating system-level virtualization
    virtualizing a physical server at the operating system level, enabling multiple isolated and secure virtualized servers to run on a single physical server. The "guest" OS environments share the same OS as the host system – i.e. the same OS kernel is used to implement the "guest" environments. Applications running in a given "guest" environment view it as a stand-alone system. Examples are Linux-VServer, Virtuozzo (for Windows or Linux), OpenVZ, Solaris Containers, and FreeBSD Jails.  
+
virtualizing a physical server at the operating system level, enabling multiple isolated and secure virtualized servers to run on a single physical server. The "guest" OS environments share the same OS as the host system – i.e. the same OS kernel is used to implement the "guest" environments. Applications running in a given "guest" environment view it as a stand-alone system. Examples are Linux-VServer, Virtuozzo (for Windows or Linux), OpenVZ, Solaris Containers, and FreeBSD Jails.
 
 
  
 
===Install===
 
===Install===

Redaktsioon: 5. jaanuar 2008, kell 01:58

Sissejuhatus

XEN tehnoloogia pole alati sobiv eriti kui pole soovi kasutada erinevaid operatsoonisüstemee vaid sama os põhiseid eraldatud masinaid. OpenVZ ideaalne lahendus.


Operating system-level virtualization virtualizing a physical server at the operating system level, enabling multiple isolated and secure virtualized servers to run on a single physical server. The "guest" OS environments share the same OS as the host system – i.e. the same OS kernel is used to implement the "guest" environments. Applications running in a given "guest" environment view it as a stand-alone system. Examples are Linux-VServer, Virtuozzo (for Windows or Linux), OpenVZ, Solaris Containers, and FreeBSD Jails.

Install

Süsteemi aluseks on valitud gentoo ning antud õpetus sobib vaid sellele operatsioonisüsteemile

Esimesena tuleb teha openvz toega kernel selleleks emergeda openvz patchiga kerneli kood

emerge openvz-sources

edasi siis järgnevad käsud ei hakka peatuma pikemalt linuxi kerneli tegemisel kuna pikem pala

cd /usr/src/linux
make menuconfig
make && make modules_install
make install

Seejärel paigaldame openvz utiliidid

emerge vzctl
rc-update add vz default
/etc/init.d/vz start

kaks moodulit. failisüsteemiks ja interneti kasutamiseks

modprobe simfs
modprobe vzethdev

Tõmbame gentoo stage alla näiteks saame selle aadressilt

ftp://ftp.eenet.ee/pub/gentoo/releases/x86/2007.0/stages/

mv stage3-x86-2007.0.tar.bz2 /vz/template/cache
bunzip2 stage3-x86-2007.0.tar.bz2
mv stage3-x86-2007.0.tar stage3.tar
gzip stage3.tar

Loome openvz masina mille id'ks 800 id alusel käib kogu virtuaalse masinaga töö. Allapoole 100 on id'd reserveeritud

vzctl create 800 --ostemplate stage3

Masina suuruseks tuleb umbes 400Mb

stardime masina

vzctl start 800

ja siseneme sellesse

vzctl enter 800

protsessitabel, nagu näha on pilt väga minimaalne

# ps aux
USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root         1  0.0  0.2   1564   544 ?        Ss   18:47   0:00 init [3]
root     29955  0.0  0.2   1928   452 ?        Ss   19:16   0:00 vzctl: pts/0
root     29956  0.0  0.7   2664  1544 pts/0    Ss   19:16   0:00 -bash
root     24172  0.0  0.4   2192   888 pts/0    R+   19:37   0:00 ps -aux

Võrgu seadistus

Võrgu seadistamine peaks töötama ka lihtsamalt kohe vz masinat luues kuid millegipärast tõrkus see süsteem

vzctl set 900 --veth_add veth900.0,00:12:34:56:78:9A,eth0,00:12:34:56:78:9B --save
ifconfig veth900.0 0
Warning: --veth_add option is outdated use --netif_add instead
Configure meminfo: 49152
Configure veth devices: veth101.0
Saved parameters for VE 800
echo 1 > /proc/sys/net/ipv4/conf/veth900.0/forwarding
echo 1 > /proc/sys/net/ipv4/conf/veth900.0/proxy_arp
echo 1 > /proc/sys/net/ipv4/conf/eth0/forwarding
echo 1 > /proc/sys/net/ipv4/conf/eth0/proxy_arp
vzctl exec 900 ifconfig eth0 0
vzctl exec 900 ifconfig eth0 193.40.0.193 netmask 255.255.255.128
vzctl exec 900 route add default dev eth0
route add 193.40.0.193 dev veth900.0

serveripoolt peaksime nägema

# ifconfig veth900.0
veth900.0 Link encap:Ethernet  HWaddr 00:12:34:56:78:9A
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:6569 errors:0 dropped:0 overruns:0 frame:0
          TX packets:7785 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:1011288 (987.5 Kb)  TX bytes:7733410 (7.3 Mb)


Edasine häälestus

Portide ühendamine vz masina külge

mkdir /vz/root/800/usr/portage
mount -o bind /usr/portage /vz/root/800/usr/portage

In order for VE to work, some nodes should be present in VE's /dev. For modern distributions, udev is taking care of it. For a variety of reasons udev doesn't make much sense in a VE, so the best thing to do is to disable udev and create needed device nodes manually.

Note that in some distributions /dev is mounted on tmpfs — this will not work in case of static /dev. So what you need to do is find out where /dev is being mounted on tmpfs and remove this. This is highly distribution-dependent; please add info for your distro here.

nano /etc/conf.d/rc
RC_DEVICES="static"


Lingid

http://www.gentoo.org/proj/en/vps/openvz-howto.xml

http://wiki.openvz.org/Virtual_Ethernet_device

http://wiki.openvz.org/Gentoo_template_creation