Az előadás letöltése folymat van. Kérjük, várjon

Az előadás letöltése folymat van. Kérjük, várjon

1 Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék Automatikus infrastruktúra menedzsment és alkalmazástelepítés.

Hasonló előadás


Az előadások a következő témára: "1 Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék Automatikus infrastruktúra menedzsment és alkalmazástelepítés."— Előadás másolata:

1 1 Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék Automatikus infrastruktúra menedzsment és alkalmazástelepítés Szatmári Zoltán Intelligens rendszerfelügyelet

2 2 DEMO  Telepítés kézzel o „Release unit” o Másolás utáni egyéb beállítások: pl. registry  Telepítő script o Telepítés automatizálása o Általános és gép/felhasználó-specifikus beállítások szétválasztása  Felügyelet?? o Hova, mikor, ki, miért telepítette o Most pontosan mi is van fent? o Milyen infrastruktúrával tudok számolni? Egyszerű alkalmazás telepítése

3 3 Tartalom  Automatikus konfigurációkezelés o Környezetfüggő konfiguráció o Dinamikus konfigurációk

4 4 Motiváció  Nagyméretű infrastruktúra menedzsmentje o Központosított megoldás  Hasonló konfigurációs igények, ismétlődő feladatok o Sablon alapú technológia  Automatikus alkalmazástelepítés o Felügyelő és beavatkozó komponensek  Dinamikus infrastruktúra menedzsment o Automatikus igény szerinti alkalmazás telepítés

5 5 Konfigurációmenedzsment eszköz  Lehetővé teszi o Konfigurációs beállítások deklaratív megadását o Igény esetén a konfiguráció elvégzését  Legtöbbször tartalmaz valamilyen CMDB megoldást  Technológiák o CFEngine o Puppet o Chef o stb.

6 6 Chef – főzzünk egy infrastruktúrát  Infrastruktúra automatizációs megoldás  Deklaratív konfigurációleírás támogatása o Azt mondjuk, mit szeretnénk, nem azt, hogyan o Cookbooks, recipes  Központi infrastruktúra adatbázis o Attribútumok, futási listák (run list)

7 7 Chef architektúra Kliens Konfigurációmenedzsment szerver Menedzselt csomópontok Ágens: chef-client Kliens: Böngésző vagy Knife eszköz

8 8 DEMO  Szükséges erőforrások o Webszerver (Apache), PHP, stb. o Webes alkalmazás o Konfigurációs beállítások  1 gép esetén kézzel, 10 vagy 100 esetén már automatizáltan Webes alkalmazás telepítése

9 9 Deklaratív konfigurációmegadás  Recept (recipe) o Erőforrások deklaratív megadása o Ruby nyelv  Szakácskönyv (cookbook) o Receptek o Attribútumok o Sablonok o Stb.

10 10 Deklaratív konfigurációmegadás  Szerep (role) o Receptek felsorolása  Csomópont (node) o Szerepek o Receptek o Attribútumok

11 11 Receptek package "apache2" package "apache2-mpm-prefork" a2enmod "ldap" do file "ldap.load" notifies :reload, "service[apache2]" end service "apache2" do supports :status => true, :restart => true, :reload => true action :enable end

12 12 Fontosabb erőforrások  Csomag  Felhasználó  Csoport  Cronjob  SVN repository  Mount  IPConfig

13 13 Fontosabb erőforrások  Fájlok o Cookbookban definiált o Távoli URL-en elérhető  Könyvtárak o Cookbookban definiált

14 14 Fontosabb erőforrások  Sablonok o Paraméterezhető fájlok o Különböző típusú paraméterek • Egész érték • String érték • Objektum # ports.conf by chef Listen

15 15 Fontosabb erőforrások template "/etc/apache2/ports.conf" do source "apache2/ports.conf.erb" mode 644 owner "root" group "root" variables( :ports => node[:apache2][:ports] ) notifies :reload, "service[apache2]" end

16 16 Változók  Mitől lesz ez testre szabható?  Változók definiálása o Cookbook szinten o Role szinten o Node szinten

17 17 DEMO  Attribútum beállítása o Role-tól függően o Node-tól függően  Pl.: o HTTP port beállítása o Alkalmazás paraméterének beállítása Webes rendszer testreszabott beállítása

18 18 Chef search  Mitől lesz környezetfüggő a konfiguráció?  Konfiguráció adatbázisban információk vannak a hosztokról o IP cím o Hoszt neve o Lefuttatott receptek o OS típus, verzió o Stb.

19 19 Chef search  CMDB információk felhasználása o Receptekben o Sablonokban  Pl.: hosts = search(:node, "recipes:irfapp").map { |n| webhost_data(n) }

20 20 DEMO  Egyszerű HTTP proxy (HAProxy) o Telepítés o Konfigurálás • Működő webszerverek felsorolása Webes terheléselosztó beállítása

21 21 Modern, skálázható alkalmazások  Cloud környezet  Igény szerinti rendszerkonfiguráció o Pl.: Terhelés függő webszerver mennyiség o VM gyorsan igényelhető és eldobható  Alkalmazásnak is támogatnia kell o Állapotmentes komponensek o Laza csatolás o Minden komponens kívülről konfigurálható  Lásd félév második felében: Virtualizáció és Cloud

22 22 Állapotgép alapú megközelítés  Visszafele is működik? o El tudom távolítani a telepített erőforrásokat? o Le tudom állítani a szolgáltatásokat?  Mi történik, ha valami futás közben változik? o Hiba lép fel? o Túlterhelés következik be?

23 23 Motiváció Adottságok  Dinamikusan változó terhelés o időszakos o tervezett  Konfigurációk telepítése/ karbantartása  Hibás viselkedés automatikus észlelése Szükséges támogatás  Jól skálázható (scalable) o alkalmazások o infrastruktúra • Cloud  Gép által vezérelt megvalósítás  Monitorozás

24 24 Megközelítések  Állapotgép alapú megközelítés o Eszköz példa • GLU (az előadáson ezzel foglalkozunk) https://github.com/linkedin/gluhttps://github.com/linkedin/glu o Megvalósítás alapja • A szolgáltatások konfigurációjának állapotgépként való leírása o Mikor jó • Statikus és dinamikus konfigurációra is • Statikusnál jelentős lehet az overhead  Célkonfiguráció deklarálása és állapot fenntartása o Eszköz példa • Puppet o Megvalósítás alapja • Erőforrásháló alapján o Mikor jó • Viszonylag statikus konfiguráció

25 25 A kofigurációs rendszer főbb feladatai Konfigurációs modell Gépvezérelt konfigurálás MonitorozásBeavatkozás

26 26 Állapotgép alapú megoldás – GLU  Konfigurációs állapotgép = egy véges állapotgép (Finite State Machine) Konfigurációs állapot Konfigurációs átmenet Kezdőállapot (Kályha)

27 27 Véges állapotgép  1 token van a rendszerben  Nem keletkeznek és nem is tűnnek el tokenek  A token jelöli ki az aktuális állapotot  (Digitből ismerősnek kell lennie) Kezdőállapot (Kályha)

28 28 Miért jó ez az egész?  Automatikusan tudunk telepíteni 10, 100, 1000… gépet  Ha ügyesen írjuk meg a szkripteket, akkor szinte autonóm rendszert kapunk  Hol használják? o GLU • linked-in (szakmai Facebook) o Chef • Amazoon EC2 • Stb.

29 29 További információ  Chef: systems integration framework Chef: systems integration framework  GLU: Deployment Automation Platform GLU: Deployment Automation Platform


Letölteni ppt "1 Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék Automatikus infrastruktúra menedzsment és alkalmazástelepítés."

Hasonló előadás


Google Hirdetések