Ero sivun ”Virtuaalisen järjestelmän verkkosiltaus” versioiden välillä

Siirry navigaatioon Siirry hakuun
vähän kh:ta ja wikitysät, enemmänkin pitäisi
(vähän kh:ta ja wikitysät, enemmänkin pitäisi)
Rivi 1: Rivi 1:
Muistiinpanoja verkkosillan rakentamisesta virtualisoituun asiakkaaseen.
Tässä artikkelissa käsitellään verkkosillan luomista virtuaalikoneessa pyörivään järjestelmään.
== Isäntäkone A ==


 
Isäntäkoneen käyttöjärjestelmä on tässä esimerkissä [[Sabayon]] linux 4.0, joka on [[Gentoo]]-pohjainen ja sopii erinomaisesti mm. testailuun.
== Host A ==
 
Isäntäkoneen käyttöjärjestelmä on Sabayon linux 4.0. Tämä on gentoo-pohjainen ja sopii erinomaisesti mm. testailuun.


  Linux ariloulaleelay 2.6.27-sabayon #1 SMP Sat Dec 20 16:15:56 UTC 2008 x86_64 Intel(R) Core(TM)2 CPU 4300 @ 1.80GHz GenuineIntel GNU/Linux
  Linux ariloulaleelay 2.6.27-sabayon #1 SMP Sat Dec 20 16:15:56 UTC 2008 x86_64 Intel(R) Core(TM)2 CPU 4300 @ 1.80GHz GenuineIntel GNU/Linux
Rivi 12: Rivi 10:


=== libvirt + KVM Gentoossa ===
=== libvirt + KVM Gentoossa ===
Tästä eteenpäin seuraa gentoo-kohtaista testausjärjestelmän pystytystä. Asennetaan qemu, kvm ja libvirt.
Tästä eteenpäin seuraa Gentoo-kohtaista testausjärjestelmän pystytystä. Asennetaan [[qemu]], [[kvm]] ja [[libvirt]].
 
Sabayonin System.map pitää linkittää jotta voi kääntää kernel-moduleja (bugi distrossa):


Sabayonin <tt>[[System.map]]</tt> pitää linkittää oikeaan paikkaan jotta [[ydin|ytimen]] [[moduuli|moduuleja]] voidaan kääntää:
  ariloulaleelay ~ # ln -s /boot/System.map-genkernel-x86_64-2.6.27-sabayon /lib/modules/2.6.27-sabayon/build/System.map
  ariloulaleelay ~ # ln -s /boot/System.map-genkernel-x86_64-2.6.27-sabayon /lib/modules/2.6.27-sabayon/build/System.map


Qemu täytyy kääntää gcc-3:lla!
Qemu täytyy kääntää [[gcc]]-3:lla!
   >>> Emerging (1 of 1) app-emulation/qemu-softmmu-0.9.1-r3
   >>> [[Emerge|Emerging]] (1 of 1) app-emulation/qemu-softmmu-0.9.1-r3
   * qemu-0.9.1.tar.gz RMD160 SHA1 SHA256 size ;-) ...                                                                                                [ ok ]
   * qemu-0.9.1.tar.gz RMD160 SHA1 SHA256 size ;-) ...                                                                                                [ ok ]
   * checking ebuild checksums ;-) ...                                                                                                                [ ok ]
   * checking ebuild checksums ;-) ...                                                                                                                [ ok ]
Rivi 29: Rivi 26:
   * could be harmful.
   * could be harmful.


Qemu käännetään versiolla 3.4.6, muilla kääntäjä on järjestelmän oletus: gcc-4.3.2. Tässä asennetut paketit:
Qemu käännetään versiolla 3.4.6, muilla kääntäjä on järjestelmän oletus: <tt>gcc-4.3.2</tt>. Tässä asennetut paketit:


   Wed Feb 25 16:46:08 2009 >>> sys-devel/gcc-3.4.6-r2
   Wed Feb 25 16:46:08 2009 >>> sys-devel/gcc-3.4.6-r2
Rivi 41: Rivi 38:
   Wed Feb 25 17:23:21 2009 >>> app-emulation/virt-manager-0.6.0-r1
   Wed Feb 25 17:23:21 2009 >>> app-emulation/virt-manager-0.6.0-r1


Käynnistys:
Lopuksi käynnistetään <tt>libvirtd<tt>  ja asetetaan se käynnistymään automaattisesti:
  # /etc/init.d/libvirtd start
  # /etc/init.d/libvirtd start
  # rc-update add libvirtd default
  # [[rc-update]] add libvirtd default


== Verkko ==
== Verkko ==
 
<tt>eth0</tt> on kytketty reitittimeen NAT1 (192.168.1.0/24), joka on kytketty palomuurin kautta internetiin. Tämä simuloi dmz-aluetta, joka sillataan virtuaalikoneelle. Tällä liitännällä ei tule olla omaa ip-osoitetta isäntäjärjestelmässä.
eth0 on kytketty reitittimeen NAT1 192.168.1.0/24, joka on kytketty palomuurin kautta internetiin. Tämä simuloi dmz-aluetta, joka sillataan virtuaalikoneelle. Tällä liitännällä ei tule olla omaa ip-osoitetta isäntäjärjestelmässä.


  eth0      Link encap:Ethernet  HWaddr 00:18:f3:16:aa:7f
  eth0      Link encap:Ethernet  HWaddr 00:18:f3:16:aa:7f




eth1 on toinen verkkokortti, joka on kytketty reittimeen NAT2 192.168.0.0/24. Tämä simuloi sisäverkkoa, mutta sen kautta ei ole pääsyä internetiin. Fyysisesti tämä on täysin erillinen verkosta NAT1.
<tt>eth1</tt> on toinen verkkokortti, joka on kytketty reitittimeen NAT2 192.168.0.0/24. Tämä simuloi sisäverkkoa, mutta sen kautta ei ole pääsyä internetiin. Fyysisesti tämä on täysin erillinen verkosta NAT1.


  eth1      Link encap:Ethernet  HWaddr 00:20:18:8e:43:32
  eth1      Link encap:Ethernet  HWaddr 00:20:18:8e:43:32
  inet addr:192.168.0.100  Bcast:192.168.0.255  Mask:255.255.255.0
  inet addr:192.168.0.100  Bcast:192.168.0.255  Mask:255.255.255.0


Routet ovat vielä asetettu siten, että host on kytketty eth0:n kautta verkkoon NAT1, johon tullaan kytkemään bridge.
Reititykset ovat vielä asetettu siten, että isäntäkone on kytketty <tt>eth0</tt>:n kautta verkkoon NAT1, johon tullaan kytkemään verkkosilta:
 
   $ [[route]]
   $ route
   Kernel IP routing table
   Kernel IP routing table
   Destination    Gateway        Genmask        Flags Metric Ref    Use Iface
   Destination    Gateway        Genmask        Flags Metric Ref    Use Iface
Rivi 70: Rivi 65:


=== Luodaan uusi verkkoyhteys ”Bridge to LAN” ===
=== Luodaan uusi verkkoyhteys ”Bridge to LAN” ===
Lainaukset brctl-manuaalista. Ks. myös [http://libvirt.org/formatdomain.html#elementsNICSBridge]
Lainaukset <tt>brctl</tt>-manuaalista. Ks. myös [http://libvirt.org/formatdomain.html#elementsNICSBridge]


”This is the recommended config for general guest connectivity on hosts with static wired networking configs. Provides a bridge from the VM directly onto the LAN. This assumes there is a bridge device on the host which has one or more of the hosts physical NICs enslaved.”
”This is the recommended config for general guest connectivity on hosts with static wired networking configs. Provides a bridge from the VM directly onto the LAN. This assumes there is a bridge device on the host which has one or more of the hosts physical NICs enslaved.”
Rivi 168: Rivi 163:
  except-interfaces=br0
  except-interfaces=br0


==Guest A==
== Virtuaalikone A==
Gentoo 2008.0 x86 livecd, ei käynnistä X:ää ja on kevyt testaukseen. Livecd sisältää ssh-palvelimen.
Gentoo 2008.0 x86 [[live-cd]], ei käynnistä X:ää ja on kevyt testaukseen. Live-cd sisältää ssh-palvelimen.


Jotta guest voi kytkeytyä siltaan, tarvitaan 'tun'-moduli. Ladataan myös virtualisointimodulit.
Jotta guest voi kytkeytyä siltaan, tarvitaan 'tun'-moduli. Ladataan myös virtualisointimodulit.

Navigointivalikko