Ubuntu Cloud - 9.10
Sisukord
Sissejuhatus
Ubuntu 9.10 operatsioonisüsteem sisaldab populaarset cloud computing tarkvara Eucalyptus http://open.eucalyptus.com/. Kuigi üldiselt pilvelahendused ei ole seotud virtualiseerimisplatvormidega kasutab nt konkreetselt Ubuntu 9.10 KVM lahendust virtuaalarvutite pidamiseks.
Tööpõhimõte
Ubuntu Cloud koosneb sellistest komponentidest
- Cloud Controller (CLC) - ...
- Cluster Controller (CC) - ...
- Storage Controller (SC) - ...
- Node Controller (NC) - ...
Eesmärk
internet ... ....... | _|_ | | tulemüür |___| | 10.0.13.1, vaikelüüs | -------|-------------|----------------|----------------------------|------ | | | _|_ _|_ _|_ | | CLC | | NC | | VM virutaalne arvuti (nö asub NC sees KVM guestina) |___| |___| |___| eth0 - 10.0.13.180/24 vlan513 - aadressi pole eth0 - 172.19.1.2/27 eth0:priv - 172.19.1.1/27 br513 - 10.0.13.190 eth0:pub - 10.0.13.183/24
kusjuures
- UEC genereerib sellised paketifiltri reeglid public aadressidelt private aadressidele, st liiklus käib läbi CLC arvuti
# iptables -L -n -v -t nat Chain PREROUTING (policy ACCEPT 51 packets, 7851 bytes) pkts bytes target prot opt in out source destination 32 1920 DNAT tcp -- * * 172.19.0.0/16 169.254.169.254 tcp dpt:80 to:169.254.169.254:8773 7 492 DNAT all -- * * 0.0.0.0/0 10.0.13.183 to:172.19.1.2 Chain POSTROUTING (policy ACCEPT 32 packets, 6328 bytes) pkts bytes target prot opt in out source destination 30 2035 SNAT all -- * * 172.19.1.2 !172.19.0.0/16 to:10.0.13.183 19903 1194K MASQUERADE all -- * * 0.0.0.0/0 !172.19.0.0/16 Chain OUTPUT (policy ACCEPT 19922 packets, 1200K bytes) pkts bytes target prot opt in out source destination 9 636 DNAT all -- * * 0.0.0.0/0 10.0.13.183 to:172.19.1.2
CLC ettevalmistamine
CLC (Cloud Controller) arvuti ei pea ise olema virtualiseerimise võimelisel riistvaral, arvutisse tarkvara paigaldamiseks tuleb öelda
# apt-get install eucalyptus-cloud eucalyptus-cc eucalyptus-walrus eucalyptus-sc
CLC tööd juhib /etc/eucalyptus/eucalyptus.conf debconf abil moodustatud seadistusfail, mis võiks olla nt sellise sisuga
# egrep -v "^#|^$" /etc/eucalyptus/eucalyptus.conf EUCALYPTUS="/" EUCA_USER="eucalyptus" DISABLE_DNS="Y" ENABLE_WS_SECURITY="Y" LOGLEVEL="DEBUG" CC_PORT="8774" SCHEDPOLICY="ROUNDROBIN" POWER_IDLETHRESH="300" POWER_WAKETHRESH="300" NODES=" 10.0.13.190" NC_SERVICE="axis2/services/EucalyptusNC" NC_PORT="8775" HYPERVISOR="not_configured" INSTANCE_PATH="not_configured" VNET_PUBINTERFACE="eth0" VNET_PRIVINTERFACE="eth0" VNET_BRIDGE="br0" VNET_DHCPDAEMON="/usr/sbin/dhcpd3" VNET_DHCPUSER="dhcpd" VNET_MODE="MANAGED-NOVLAN" VNET_SUBNET="172.19.0.0" VNET_NETMASK="255.255.0.0" VNET_DNS="10.0.13.1" VNET_ADDRSPERNET="32" VNET_PUBLICIPS="10.0.13.183-10.0.13.189"
kus
- VNET_MODE - peab langema kokku NC arvutite vastavate parameetrite väärtustega
- VNET_SUBNET, VNET_NETMASK - virtuaalsete arvutite privaatsed aadressid, mis seadistatakse VM arvutile endile
- VNET_PUBLICIPS - CLC paketifiltrisse seadistatud nö avalikud teenuste aadressid, mille CLC süsteem seadistab viitama virtuaalsetele arvutite privaatsetele aadressidele
CLC paigaldamisel tuleb debconf dialoogis näidata
- klustri nimi
- nn avalike aadresside vahemik (nt 10.0.13.183-10.0.13.189)
- tundub, et Ubuntu 9.10 Postfixi seadistamisel on midagi katki, seepärast võiks paigaldamisel valida No configuration ja hiljem seadistada
NC ettevalmistamine
NC (Node Controller) arvutis peab olema seadistatud sobivalt võrk, nt sellise sisuga /etc/network/interfaces
auto lo iface lo inet loopback auto vlan513 iface vlan513 inet manual vlan-raw-device eth1 auto br513 iface br513 inet static bridge_ports vlan513 bridge_fd 9 bridge_hello 2 bridge_maxage 12 bridge_stp off
Vajaliku tarkvara paigaldamiseks tuleb öelda
# apt-get install eucalyptus-nc
NC tarkvara käivitamiseks sobib öelda
# /etc/init.d/eucalyptus-nc start
NC arvutit juhib seadistusfail /etc/eucalyptus/eucalyptus.conf
# egrep -v "^#|^$" /etc/eucalyptus/eucalyptus.conf EUCALYPTUS="/" EUCA_USER="eucalyptus" DISABLE_DNS="Y" ENABLE_WS_SECURITY="Y" LOGLEVEL="DEBUG" CC_PORT="8774" SCHEDPOLICY="ROUNDROBIN" POWER_IDLETHRESH="300" POWER_WAKETHRESH="300" NODES="" NC_SERVICE="axis2/services/EucalyptusNC" NC_PORT="8775" HYPERVISOR="kvm" INSTANCE_PATH="/var/lib/eucalyptus/instances" VNET_PUBINTERFACE="vlan513" VNET_PRIVINTERFACE="vlan513" VNET_BRIDGE="br513" VNET_DHCPDAEMON="/usr/sbin/dhcpd3" VNET_DHCPUSER="dhcpd" VNET_MODE="MANAGED-NOVLAN"
kus
- VNET_PUBINTERFACE, VNET_PRIVNTERFACE ja VNET_BRIDGE - millistel seadmetel toimub virtuaalse arvuti andmevahetus CLC ja süsteemi teenuste kasutajatega
- VNET_MODE - peab langema kokku CLC vastava parameetriga
Ubuntu Cloud kasutamine
VM käivitamine
Virtuaalse arvuti käivitamiseks sobib öelda
$ euca-run-instances emi-DD45105A -k mykey -t c1.medium
Virtuaalse arvuti seiskamiseks sobib öelda
$ euca-terminate-instances i-3542075A