OpenStack: Difference between revisions

From ICO wiki
Jump to navigationJump to search
Vvirk (talk | contribs)
No edit summary
Vvirk (talk | contribs)
No edit summary
 
(22 intermediate revisions by the same user not shown)
Line 1: Line 1:
Veiko Virk A21
[[Category: Operatsioonisüsteemide administreerimine ja sidumine ]]
= Mis on OpenStack =
= Mis on OpenStack =


Line 12: Line 16:
*Block Storage (Cinder) – On Novas olevate projektide eraldamine ja nende muutmine eraldi iseseisvateks. Kuna Nova on üpriski keeruline osa OpenStack projektist siis parema ülevaate saamiseks kasutatakse Cinderit.
*Block Storage (Cinder) – On Novas olevate projektide eraldamine ja nende muutmine eraldi iseseisvateks. Kuna Nova on üpriski keeruline osa OpenStack projektist siis parema ülevaate saamiseks kasutatakse Cinderit.


= OpenSack paigaldus =
= OpenSack paigaldus Ubuntu 12.04=


Nõuded:
Kui on plaan reaalselt pilve meisterdada siis on soovituslikud nõuded: Arvutusvõimeline seade millel on 8GB RAM, 4 tuumaline protsessor, 2 kõvaketast, 2 võrgukaarti ja värskelt paigaldatud serveri OS. Järgnevalt paigaldame OpenStack'i Ubuntule 12.04. Järgnevate toimingute käigus kasutatud andmeid ei ole soovitav kasutada (paroole, võrguaadresse) kui plaanite kasutada pilveteenus keskkonnas mis eeldab turvalisust.
Arvutusvõimeline seade millel on 8GB RAM, 4 tuumaline protsessor, 2 kõvaketast, 2 võrgukaarti ja värskelt paigaldatud OS.
Esimene asi mida tuleks teha on süsteemi uuendamine. Selleks tuleb sisestada lihtne käsk.
Esimene asi mida tuleks teha on süsteemi uuendamine. Selleks tuleb sisestada lihtne käsk.


Line 23: Line 26:
Kuna OpenStack tarkvara installeerimiseks on veebis olemas rohkesti kasulike skripte tuleks paigaldada GIT.
Kuna OpenStack tarkvara installeerimiseks on veebis olemas rohkesti kasulike skripte tuleks paigaldada GIT.
  apt-get install git
  apt-get install git
 
Peale edukat paigaldamist tuleb kasutajal kopeerida enda masinasse rida skripte mis OpenStack'i paigaldamise hulga lihtsamaks teevad.
Esmalt tuleks kopeerida enda masinasse rida skripte.
  git clone git://github.com/StackGeek/openstackgeek.git
  git clone git://github.com/StackGeek/openstackgeek.git
  cd openstackgeek
  cd openstackgeek
Paigalduse alustamiseks tuleb käivitada esimene skript
Paigalduse alustamiseks tuleb käivitada esimene skript
  ./openstack_base_1.sh
  ./openstack_base_1.sh
Peale skripti käivitamist küsitakse kasutajalt paigaldusega seotus nõusoleku küsimusi. Nendele ikka „y” ja Enter.
Peale skripti käivitamist küsitakse kasutajalt paigaldusega seotud küsimusi. Nendele ikka „y” ja Enter.
Kui see skript oma tööga valmis saab kuvatakse kasutajale võrgusätteid. Allpool antakse ka juhiseid mida nendega peale hakata.
Kui see skript oma tööga valmis saab kuvatakse kasutajale võrgusätteid. Allpool antakse ka juhiseid mida nendega peale hakata.


Line 46: Line 48:
   dns-nameservers 8.8.8.8
   dns-nameservers 8.8.8.8


auto eth1 Sätted tuleks salvestada ja võrgukaardile taaskäivitus teha. Selleks  
auto eth1 Sätted tuleks salvestada ja võrgukaardile taaskäivitus teha. Selleks sisestame käsu
  /etc/init.d/networking restart
  /etc/init.d/networking restart
Järgnevalt tuleb käivitada skript  
Järgnevalt tuleb käivitada skript  
Line 53: Line 55:
Kuna OpenStack kasutab rohkesti pakette võib nende allalaadimine aega võtta. Kui teine skript on oma tööga lõpule jõudnud kuvatakse kasutajale tabel kus öeldakse, et OpenStack Nova vajab LVM abi uute volumite tegemiseks.  
Kuna OpenStack kasutab rohkesti pakette võib nende allalaadimine aega võtta. Kui teine skript on oma tööga lõpule jõudnud kuvatakse kasutajale tabel kus öeldakse, et OpenStack Nova vajab LVM abi uute volumite tegemiseks.  


Selleks
Selleks tuleb sisestada käsk
 
fdisk /dev/sdb


  root@ubuntu:~# fdisk /dev/sdb
   Device contains neither a valid DOS partition table, nor Sun, SGI or OSF disklabel
   Device contains neither a valid DOS partition table, nor Sun, SGI or OSF disklabel
   Building a new DOS disklabel with disk identifier 0xb39fe7af.
   Building a new DOS disklabel with disk identifier 0xb39fe7af.
Line 61: Line 64:
   After that, of course, the previous content won't be recoverable.
   After that, of course, the previous content won't be recoverable.
   Warning: invalid flag 0x0000 of partition table 4 will be corrected by w(rite)
   Warning: invalid flag 0x0000 of partition table 4 will be corrected by w(rite)
Teeme uue partitsiooni vajutades klahvi "n"
   Command (m for help): n
   Command (m for help): n
   Partition type:
   Partition type:
     p  primary (0 primary, 0 extended, 4 free)
     p  primary (0 primary, 0 extended, 4 free)
     e  extended
     e  extended
Valime primaarse partitsiooni klahviga "p" ja edasi kasutame vaikimisi seadeid ja anname partitsiooni suuruseks (size) 5GB
   Select (default p): p
   Select (default p): p
   Partition number (1-4, default 1): 1
   Partition number (1-4, default 1): 1
Line 70: Line 78:
   Using default value 2048
   Using default value 2048
   Last sector, +sectors or +size{K,M,G} (2048-20971519, default 20971519): +5G
   Last sector, +sectors or +size{K,M,G} (2048-20971519, default 20971519): +5G
Kirjutame tehtud muudatused kettale vajutades klahvi "w"
     Command (m for help): w
     Command (m for help): w
   The partition table has been altered!
   The partition table has been altered!
   Calling ioctl() to re-read partition table.
   Calling ioctl() to re-read partition table.
   Syncing disks.
   Syncing disks.
  root@ubuntu:~# pvcreate -ff /dev/sdb1
    Physical volume "/dev/sdb1" successfully created
  root@ubuntu:~# vgcreate nova-volumes /dev/sdb1
    Volume group "nova-volumes" successfully created


= SQL =
Järgnevalt sisestame käsud
pvcreate -ff /dev/sdb1
 
Väljundiks peab kindlasti olema edukas toiming
 
Physical volume "/dev/sdb1" successfully created
Ja
 
vgcreate nova-volumes /dev/sdb1
 
Väljundiks peab kindlasti olema edukas toiming
 
Volume group "nova-volumes" successfully created
 
= MySQL =


Järgmise asjana paigaldame MySQL, selleks kasutame skripti
Järgmise asjana paigaldame MySQL, selleks kasutame skripti
Line 85: Line 108:
Peale käsu sisestamist küsitakse parooli. (soovitav on see meelde jätta)
Peale käsu sisestamist küsitakse parooli. (soovitav on see meelde jätta)


Mõne aja möödudes küsib MySQL administraatori parooli. Testimise eesmärgil kasutame parooli student
Mõne aja möödudes küsib MySQL administraatori parooli. Testimise eesmärgil kasutame parooli student.
Skripti töö lõpus küsitakse kasutajalt seda sama parooli.
Skripti töö lõpus küsitakse kasutajalt seda sama parooli.


Järgmisena tasuks üle vaadata kas antud toiming ka tegelikuses aset leidis. Selleks proovime siseneda MySql andmebaasi
Järgmisena tasuks üle vaadata kas antud toiming ka tegelikuses aset leidis. Selleks proovime siseneda MySQL andmebaasi käsuga
  root@ubuntu:~# mysql -u nova -pstudent nova
  mysql -u nova -pstudent nova
 
[[File:Mysqlconfirm.png]]
 
ja kui asi toimib siis exit
ja kui asi toimib siis exit


= Keystone =
= Keystone =


Järgmise asjana paigaldame OpenStacki osa Keystone.
Järgmise asjana paigaldame OpenStacki osa Keystone. Selleks käivitame skripti
./openstack_keystone.sh
./openstack_keystone.sh
Aja möödudes küsitakse kasutajalt tokenit ja parooli. Testi eesmärgil kasutasime tokenit student ja parooli student mille me eelnevalt sisestasime. Email sisestatakse lihtsalt teie andmebaasi. Selleks, et näha kas Keystone töötab tuleb teha 2 käsku. Kõigepealt  
Aja möödudes küsitakse kasutajalt tokenit ja parooli. Testi eesmärgil kasutasime tokenit student ja parooli student mille me eelnevalt sisestasime. Email sisestatakse lihtsalt teie andmebaasi. Selleks, et näha kas Keystone töötab tuleb teha 2 käsku. Kõigepealt  
. ./stackrc
. ./stackrc
Ja siis keystone user-list
Ja siis  
Peale viimast peaks Keystone kasutajale kuvama tabeli kasutajatest.
keystone user-list
Glance  
Peale viimast käsusisestust, peaks Keystone kasutajale kuvama tabeli kasutajatest.
Glance on OpenStacki image haldur. Paigaldamiseks tuleb käivitada skript
 
./openstack_glance.sh
= Glance =
 
Glance paigaldamiseks tuleb käivitada skript
./openstack_glance.sh
Kuna antud skript võtab veidi aega on praegu just see moment kus kasutaja saab püsti tõusta ja endale tass kohvi teha.
Kuna antud skript võtab veidi aega on praegu just see moment kus kasutaja saab püsti tõusta ja endale tass kohvi teha.
Käsuga
Käsuga
  glance index
  glance index
kuvatakse kasutajale tabel OS Image-st
kuvatakse kasutajale tabel OS Image-st
Nova
 
Nova on phm OpenStacki võrgu haldur, üks tähtsamaid osi. Nova paigaldamiseks kasutame skripti
= Nova =
./openstack_nova.sh
 
Nova paigaldamiseks kasutame skripti
 
./openstack_nova.sh
 
Peale skripti käivitamist küsitakse kasutajalt võrguseadeid. Testimiseks kasutame näites antud andmeid.
Peale skripti käivitamist küsitakse kasutajalt võrguseadeid. Testimiseks kasutame näites antud andmeid.
#############################################################################################################
#############################################################################################################
The IP address for eth0 is probably 10.0.1.35. Keep in mind you need an eth1 for this to work.
The IP address for eth0 is probably 10.0.1.35. Keep in mind you need an eth1 for this to work.
#############################################################################################################
#############################################################################################################
Enter the primary ethernet interface IP: 10.0.1.35
Enter the primary ethernet interface IP: 10.0.1.35
Enter the fixed network (eg. 10.0.2.32/27): 10.0.2.32/27
Enter the fixed network (eg. 10.0.2.32/27): 10.0.2.32/27
Enter the fixed starting IP (eg. 10.0.2.33): 10.0.2.33
Enter the fixed starting IP (eg. 10.0.2.33): 10.0.2.33
#######################################################################################
#######################################################################################
The floating range can be a subset of your current network.  Configure your DHCP server
The floating range can be a subset of your current network.  Configure your DHCP server
to block out the range before you choose it here.  An example would be 10.0.1.224-255
to block out the range before you choose it here.  An example would be 10.0.1.224-255
#######################################################################################
#######################################################################################
Enter the floating network (eg. 10.0.1.224/27): 10.0.1.224/27
Enter the floating network (eg. 10.0.1.224/27): 10.0.1.224/27
Enter the floating netowrk size (eg. 32): 32
Enter the floating netowrk size (eg. 32): 32
Kui skript on töö lõpetanud peaks kasutaja peale käsku
nova image-list
Kui skript on töö lõpetanud peaks kasutaja võimeline nägema tabelit kus on nimekiri allalaetud Image failidest. Selleks tuleb sisestada käsk
nägema tabelit kus nimekiri allalaetu Image failidest.
root@ubuntu:~# nova image-list
nova image-list
+--------------------------------------+------------------+--------+--------+
 
|                  ID                  |      Name      | Status | Server |
Käsu väljund peaks kuvama midagi sarnast.
+--------------------------------------+------------------+--------+--------+
 
| 71b8b5d5-a972-48b3-b940-98a74b85ed6a | Ubuntu 12.04 LTS | ACTIVE |        |
+--------------------------------------+------------------+--------+--------+
+--------------------------------------+------------------+--------+--------+
|                  ID                  |      Name      | Status | Server |
Horizon
+--------------------------------------+------------------+--------+--------+
Horizon on OpenStacki graafiline liides ja nö. töölaud
| 71b8b5d5-a972-48b3-b940-98a74b85ed6a | Ubuntu 12.04 LTS | ACTIVE |        |
Paigaldamiseks kasutame skripti
+--------------------------------------+------------------+--------+--------+
./openstack_horizon.sh
 
Skripti lõppedes kuvatakse kasutajale URL kus kastaja saab end sisse logida.
= Horizon =
#######################################################################
The horizon dashboard should be at http://10.0.1.35/. Login with admin/student
Horizon paigaldamiseks kasutame skripti
########################################################################
./openstack_horizon.sh
Kasutatud kirjandus:
 
http://ken.pepple.info/openstack/2012/09/25/openstack-folsom-architecture/
Skripti lõppedes kuvatakse kasutajale URL kus kasutaja saab end sisse logida.
http://ken.pepple.info/openstack/2011/04/22/openstack-nova-architecture/
 
http://www.openstack.org/software/
##################################################################################
http://www.hastexo.com/resources/docs/installing-openstack-essex-20121-ubuntu-1204-precise-pangolin
The horizon dashboard should be at http://10.0.1.35/. Login with admin/student
http://www.stackgeek.com/guides/gettingstarted.html
##################################################################################
http://cssoss.wordpress.com/2011/04/27/openstack-beginners-guide-for-ubuntu-11-04-installation-and-configuration/
 
= Kasutatud kirjandus =
*http://ken.pepple.info/openstack/2012/09/25/openstack-folsom-architecture/
*http://ken.pepple.info/openstack/2011/04/22/openstack-nova-architecture/
*http://www.openstack.org/software/
*http://www.hastexo.com/resources/docs/installing-openstack-essex-20121-ubuntu-1204-precise-pangolin
*http://www.stackgeek.com/guides/gettingstarted.html
*http://cssoss.wordpress.com/2011/04/27/openstack-beginners-guide-for-ubuntu-11-04-installation-and- configuration/

Latest revision as of 13:19, 3 January 2013

Veiko Virk A21

Mis on OpenStack

OpenStack on pilvepõhine haldustarkvara mis annab kasutajale võimaluse disainida,koostada ja hallata iseenda pilveteenust. OpenStack arhitektuur koosneb järgmistest põhi komponentidest

  • Compute (Nova) – on kõige peamine programm mille eesmärgiks on kogu süsteemi kordineerimine
  • Object Storage (Swift) – on efektiivne andmesalvestus süsteem mille eesmärgiks on suuremahuliste andmete transport ja nende salvestamine üle HTTP.
  • Image Service (Glance)- on erinevate Image failide halduseks väljatöötatud programm. OpenStack toetab erinevaid Image põhiseid formaate nagu:

Raw;Machine (kernel/ramdisk AMI;VHD (Hyper-V; VDI (VirtualBox); qcow2 (Qemu/KVM); VMDK (VMWare); OVF (VMWare, teised)

  • Identity (Keystone) – on OpenStacki kasutajate haldus teenus, läbi mille käib kõik kasutajatega seonduvad tegevused nt. projektide ligipääsud,erinevad õigused, paroolid jne.
  • Dashboard (Horizon) - on veebipõhine kasutajaliides läbi mille saab kasutaja kasutada teisi teenuseid.
  • Networking (Quantum) – on OpenStacki osa mille ülesandeks on pakkuda võrguliiklust erinevate seadmete vahel
  • Block Storage (Cinder) – On Novas olevate projektide eraldamine ja nende muutmine eraldi iseseisvateks. Kuna Nova on üpriski keeruline osa OpenStack projektist siis parema ülevaate saamiseks kasutatakse Cinderit.

OpenSack paigaldus Ubuntu 12.04

Kui on plaan reaalselt pilve meisterdada siis on soovituslikud nõuded: Arvutusvõimeline seade millel on 8GB RAM, 4 tuumaline protsessor, 2 kõvaketast, 2 võrgukaarti ja värskelt paigaldatud serveri OS. Järgnevalt paigaldame OpenStack'i Ubuntule 12.04. Järgnevate toimingute käigus kasutatud andmeid ei ole soovitav kasutada (paroole, võrguaadresse) kui plaanite kasutada pilveteenus keskkonnas mis eeldab turvalisust. Esimene asi mida tuleks teha on süsteemi uuendamine. Selleks tuleb sisestada lihtne käsk.

sudo su
apt-get update

Kuna OpenStack tarkvara installeerimiseks on veebis olemas rohkesti kasulike skripte tuleks paigaldada GIT.

apt-get install git

Peale edukat paigaldamist tuleb kasutajal kopeerida enda masinasse rida skripte mis OpenStack'i paigaldamise hulga lihtsamaks teevad.

git clone git://github.com/StackGeek/openstackgeek.git
cd openstackgeek

Paigalduse alustamiseks tuleb käivitada esimene skript

./openstack_base_1.sh

Peale skripti käivitamist küsitakse kasutajalt paigaldusega seotud küsimusi. Nendele ikka „y” ja Enter. Kui see skript oma tööga valmis saab kuvatakse kasutajale võrgusätteid. Allpool antakse ka juhiseid mida nendega peale hakata.

Testimise eesmärgil kasutame järgnevaid sätteid ja käsuga

nano /etc/network/interfaces 

muudame enda eth0 sätteid.

 auto eth0 
 iface eth0 inet static
 address 10.0.1.20
 network 10.0.1.0
 netmask 255.255.255.0
 broadcast 10.0.1.255
 gateway 10.0.1.1
 dns-nameservers 8.8.8.8

auto eth1 Sätted tuleks salvestada ja võrgukaardile taaskäivitus teha. Selleks sisestame käsu

/etc/init.d/networking restart

Järgnevalt tuleb käivitada skript

./openstack_base_2.sh

LVM

Kuna OpenStack kasutab rohkesti pakette võib nende allalaadimine aega võtta. Kui teine skript on oma tööga lõpule jõudnud kuvatakse kasutajale tabel kus öeldakse, et OpenStack Nova vajab LVM abi uute volumite tegemiseks.

Selleks tuleb sisestada käsk

fdisk /dev/sdb
 Device contains neither a valid DOS partition table, nor Sun, SGI or OSF disklabel
 Building a new DOS disklabel with disk identifier 0xb39fe7af.
 Changes will remain in memory only, until you decide to write them.
 After that, of course, the previous content won't be recoverable.
 Warning: invalid flag 0x0000 of partition table 4 will be corrected by w(rite)

Teeme uue partitsiooni vajutades klahvi "n"

 Command (m for help): n
 Partition type:
    p   primary (0 primary, 0 extended, 4 free)
    e   extended

Valime primaarse partitsiooni klahviga "p" ja edasi kasutame vaikimisi seadeid ja anname partitsiooni suuruseks (size) 5GB

 Select (default p): p
 Partition number (1-4, default 1): 1
 First sector (2048-62914559, default 2048): 
 Using default value 2048
 Last sector, +sectors or +size{K,M,G} (2048-20971519, default 20971519): +5G

Kirjutame tehtud muudatused kettale vajutades klahvi "w"

   Command (m for help): w
 The partition table has been altered!
 Calling ioctl() to re-read partition table.
 Syncing disks.

Järgnevalt sisestame käsud

pvcreate -ff /dev/sdb1

Väljundiks peab kindlasti olema edukas toiming

Physical volume "/dev/sdb1" successfully created

Ja

vgcreate nova-volumes /dev/sdb1

Väljundiks peab kindlasti olema edukas toiming

Volume group "nova-volumes" successfully created

MySQL

Järgmise asjana paigaldame MySQL, selleks kasutame skripti

./openstack_mysql.sh

Peale käsu sisestamist küsitakse parooli. (soovitav on see meelde jätta)

Mõne aja möödudes küsib MySQL administraatori parooli. Testimise eesmärgil kasutame parooli student. Skripti töö lõpus küsitakse kasutajalt seda sama parooli.

Järgmisena tasuks üle vaadata kas antud toiming ka tegelikuses aset leidis. Selleks proovime siseneda MySQL andmebaasi käsuga

mysql -u nova -pstudent nova

ja kui asi toimib siis exit

Keystone

Järgmise asjana paigaldame OpenStacki osa Keystone. Selleks käivitame skripti

./openstack_keystone.sh

Aja möödudes küsitakse kasutajalt tokenit ja parooli. Testi eesmärgil kasutasime tokenit student ja parooli student mille me eelnevalt sisestasime. Email sisestatakse lihtsalt teie andmebaasi. Selleks, et näha kas Keystone töötab tuleb teha 2 käsku. Kõigepealt

. ./stackrc

Ja siis

keystone user-list

Peale viimast käsusisestust, peaks Keystone kasutajale kuvama tabeli kasutajatest.

Glance

Glance paigaldamiseks tuleb käivitada skript

./openstack_glance.sh

Kuna antud skript võtab veidi aega on praegu just see moment kus kasutaja saab püsti tõusta ja endale tass kohvi teha.

Käsuga

glance index

kuvatakse kasutajale tabel OS Image-st

Nova

Nova paigaldamiseks kasutame skripti

./openstack_nova.sh

Peale skripti käivitamist küsitakse kasutajalt võrguseadeid. Testimiseks kasutame näites antud andmeid.

#############################################################################################################
The IP address for eth0 is probably 10.0.1.35. Keep in mind you need an eth1 for this to work.
#############################################################################################################
Enter the primary ethernet interface IP: 10.0.1.35
Enter the fixed network (eg. 10.0.2.32/27): 10.0.2.32/27
Enter the fixed starting IP (eg. 10.0.2.33): 10.0.2.33
#######################################################################################
The floating range can be a subset of your current network.  Configure your DHCP server
to block out the range before you choose it here.  An example would be 10.0.1.224-255
#######################################################################################
Enter the floating network (eg. 10.0.1.224/27): 10.0.1.224/27
Enter the floating netowrk size (eg. 32): 32

Kui skript on töö lõpetanud peaks kasutaja võimeline nägema tabelit kus on nimekiri allalaetud Image failidest. Selleks tuleb sisestada käsk

nova image-list

Käsu väljund peaks kuvama midagi sarnast.

+--------------------------------------+------------------+--------+--------+
|                  ID                  |       Name       | Status | Server |
+--------------------------------------+------------------+--------+--------+
| 71b8b5d5-a972-48b3-b940-98a74b85ed6a | Ubuntu 12.04 LTS | ACTIVE |        |
+--------------------------------------+------------------+--------+--------+

Horizon

Horizon paigaldamiseks kasutame skripti

./openstack_horizon.sh

Skripti lõppedes kuvatakse kasutajale URL kus kasutaja saab end sisse logida.

##################################################################################
The horizon dashboard should be at http://10.0.1.35/. Login with admin/student
##################################################################################

Kasutatud kirjandus