23
Kutatási fázis eredményei Turi Péter [email protected]

Kutatási fázis eredményei · Kiegészíthetőnek kell lennie pluginokkal ... MySQL Van (Nem) Lassú Igen Igen ++ Tomcat Van (Igen) Lassú Igen Igen + Word-press Nincs Igen Igen

  • Upload
    others

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Kutatási fázis eredményei · Kiegészíthetőnek kell lennie pluginokkal ... MySQL Van (Nem) Lassú Igen Igen ++ Tomcat Van (Igen) Lassú Igen Igen + Word-press Nincs Igen Igen

Kutatási fázis eredményei Turi Péter

[email protected]

Page 2: Kutatási fázis eredményei · Kiegészíthetőnek kell lennie pluginokkal ... MySQL Van (Nem) Lassú Igen Igen ++ Tomcat Van (Igen) Lassú Igen Igen + Word-press Nincs Igen Igen

Cloud szolgáltatások osztályozása Rendszergazda Programozó Felhasználó

IaaS + + +

PaaS + +

SaaS +

Page 3: Kutatási fázis eredményei · Kiegészíthetőnek kell lennie pluginokkal ... MySQL Van (Nem) Lassú Igen Igen ++ Tomcat Van (Igen) Lassú Igen Igen + Word-press Nincs Igen Igen

Alapvető karakterisztikák NIST Definition of Cloud Computing

Önkiszolgáló rendszer, flexibilis erőforrás-allokációval

Hálózati elérés

Erőforrások konszolidációja

Rapid elasticity (gyors rugalmasság )

Automatikus és gyors skálázhatóság

A felhasználó számára „végtelen” erőforrások

Mért szolgáltatások

Számlázás

by Google translate

Page 4: Kutatási fázis eredményei · Kiegészíthetőnek kell lennie pluginokkal ... MySQL Van (Nem) Lassú Igen Igen ++ Tomcat Van (Igen) Lassú Igen Igen + Word-press Nincs Igen Igen

Projekt célja IaaS

Storage

Virtualizációs köztes réteg

Hálózat

NAAS?

PaaS

Page 5: Kutatási fázis eredményei · Kiegészíthetőnek kell lennie pluginokkal ... MySQL Van (Nem) Lassú Igen Igen ++ Tomcat Van (Igen) Lassú Igen Igen + Word-press Nincs Igen Igen

Storage Virtuális gépek diszkjeinek

Entry level storage és storage szerver

Elvárások

Hibatűrő (lokálisan)

Pillanatképek támogatása (Georeplikált pillanatképek?)

Geo-replikáció képes (per VM)

Telephelyek közötti mozgatás lehetséges

Egységes névtér

Page 6: Kutatási fázis eredményei · Kiegészíthetőnek kell lennie pluginokkal ... MySQL Van (Nem) Lassú Igen Igen ++ Tomcat Van (Igen) Lassú Igen Igen + Word-press Nincs Igen Igen

GeoReplikáció

Az adatok replikájának az elsődleges telephelyen kívül egy vagy több fizikailag távoli helyen való konzisztens tárolása.

Page 7: Kutatási fázis eredményei · Kiegészíthetőnek kell lennie pluginokkal ... MySQL Van (Nem) Lassú Igen Igen ++ Tomcat Van (Igen) Lassú Igen Igen + Word-press Nincs Igen Igen

Replikációs megoldások - írás Szinkron

Csak a hálózati késleltetés 20ms (200KM @ c/1.5)

Azaz 500 IOPS

Tehát 4KB IO mérettel számolva: 2 MB/s

Site B Site A

0,001 s

Page 8: Kutatási fázis eredményei · Kiegészíthetőnek kell lennie pluginokkal ... MySQL Van (Nem) Lassú Igen Igen ++ Tomcat Van (Igen) Lassú Igen Igen + Word-press Nincs Igen Igen

Replikációs megoldások Aszinkron

A B oldal mennyire van lemaradva?

Site B Site A

Page 9: Kutatási fázis eredményei · Kiegészíthetőnek kell lennie pluginokkal ... MySQL Van (Nem) Lassú Igen Igen ++ Tomcat Van (Igen) Lassú Igen Igen + Word-press Nincs Igen Igen

Replikációs megoldások Szemi-szinkron replika

Aszinkron replika, A és B közötti távolság limitálva

Ha a távolság eléri maximumát, az írás blokkol

Site B Site A Puffer Site A

Page 10: Kutatási fázis eredményei · Kiegészíthetőnek kell lennie pluginokkal ... MySQL Van (Nem) Lassú Igen Igen ++ Tomcat Van (Igen) Lassú Igen Igen + Word-press Nincs Igen Igen

Hatékony a blokk szintű replikáció? Avagy hogyan lesz 80 byteból 64Kb IO

+-------------------+------------------+------+-----+---------+-------+

| Field | Type | Null | Key | Default | Extra |

+-------------------+------------------+------+-----+---------+-------+

| entity_type | varchar(128) | NO | PRI | | |

| bundle | varchar(128) | NO | MUL | | |

| deleted | tinyint(4) | NO | PRI | 0 | |

| entity_id | int(10) unsigned | NO | PRI | NULL | |

| revision_id | int(10) unsigned | YES | MUL | NULL | |

| language | varchar(32) | NO | PRI | | |

| delta | int(10) unsigned | NO | PRI | NULL | |

| field_metadata_v0 | varchar(255) | YES | | NULL | |

| field_metadata_v1 | varchar(255) | YES | | NULL | |

+-------------------+------------------+------+-----+---------+-------+

Indexek: delta, language, revision_id, entity_id, deleted, bundle,

entity_type

INSERT INTO xxx VALUES (‘node’, ‘document’, 0, 123, 123, ‘und’, 0, ‘alfa’,

‘beta’);

80 byte, legalább 1 (adat) + 7 (index blokk) módosítás (32KB)

Page 11: Kutatási fázis eredményei · Kiegészíthetőnek kell lennie pluginokkal ... MySQL Van (Nem) Lassú Igen Igen ++ Tomcat Van (Igen) Lassú Igen Igen + Word-press Nincs Igen Igen

Geo-replikáció Az adatok replikájának az elsődleges telephelyen kívül egy vagy több fizikailag távoli helyen való konzisztens tárolása.

Page 12: Kutatási fázis eredményei · Kiegészíthetőnek kell lennie pluginokkal ... MySQL Van (Nem) Lassú Igen Igen ++ Tomcat Van (Igen) Lassú Igen Igen + Word-press Nincs Igen Igen

Storage geo-replikáció A fogalom nem hordoz magában pontos garanciát.

HA rendszerek szent grálja, de valójában egy DT megoldásról beszélünk.

Drága

Nehéz (és van hogy értelmetlen)

Mindenképpen szükséges

Ahol lehet alkalmazás szintű replikációt alkalmazunk

Page 13: Kutatási fázis eredményei · Kiegészíthetőnek kell lennie pluginokkal ... MySQL Van (Nem) Lassú Igen Igen ++ Tomcat Van (Igen) Lassú Igen Igen + Word-press Nincs Igen Igen

Kutatási eredmények Típus GeoRepl.

Async, S-Sync Snapshot Live migráció

CLVM Blokk - - -

DRBD+LVM Blokk + + +

Sheepdog Blokk - + +

Lustre Obj - + -

Ceph Obj + Blokk - + -

GlusterFS Obj +/- - +

Swift Obj + + -

Page 14: Kutatási fázis eredményei · Kiegészíthetőnek kell lennie pluginokkal ... MySQL Van (Nem) Lassú Igen Igen ++ Tomcat Van (Igen) Lassú Igen Igen + Word-press Nincs Igen Igen

Hálózat Saját belső hálózatokra

Full mesh GRE tunnel

VXLAN

Külkapcsolat

Központi telephelyeken terminálva

Lehetséges NAAS szolgáltatások:

Tűzfal

LB

IPSEC

Page 15: Kutatási fázis eredményei · Kiegészíthetőnek kell lennie pluginokkal ... MySQL Van (Nem) Lassú Igen Igen ++ Tomcat Van (Igen) Lassú Igen Igen + Word-press Nincs Igen Igen

IaaS Architektúra

• Virtuális gépek futtatása

• Tároló alrendszer

• Virtuális hálózati ágensek

• Virtuális gépek futtatása

• Tároló alrendszer

• Virtuális hálózati ágensek

• Hitelesítés

• Hálózat terminálása

• Képfájlok disztribúciója

• Klaszter menedzsment

• Hitelesítés

• Hálózat terminálása

• Képfájlok disztribúciója

• Klaszter menedzsment

Elsődleges vezérlő

telephely

Másodlagos vezérlő

telephely

Második építőkocka

Első építőkocka

Page 16: Kutatási fázis eredményei · Kiegészíthetőnek kell lennie pluginokkal ... MySQL Van (Nem) Lassú Igen Igen ++ Tomcat Van (Igen) Lassú Igen Igen + Word-press Nincs Igen Igen

Konténer vs. virtuális gép Nevezzük konténernek ami,

Képes szolgáltatásokat egymástól elválasztani

A szolgáltatások terhelési csúcsainak egymásra hatását minimalizálja

A szolgáltatások egy kernel alatt futnak,

Legalább a kernel minden erőforrása közös (cache, iops kapacítás, stb).

A PHP FCGI szerverek külön uiddal futtava konténernek számítanak.

Az IP névtér alapú egygépes, több izolált subnetet kiszolgáló linux router konténernek számít.

Page 17: Kutatási fázis eredményei · Kiegészíthetőnek kell lennie pluginokkal ... MySQL Van (Nem) Lassú Igen Igen ++ Tomcat Van (Igen) Lassú Igen Igen + Word-press Nincs Igen Igen

Konténer vs. virtuális gép

Kernel

Cache

App1

Kernel

Cache

App1

Kernel

Cache

App2

Kernel

Cache

App3

Kernel

Cache

App4 App2

App3 App4

App5 App6

Konténer Virtuális gépek

Page 18: Kutatási fázis eredményei · Kiegészíthetőnek kell lennie pluginokkal ... MySQL Van (Nem) Lassú Igen Igen ++ Tomcat Van (Igen) Lassú Igen Igen + Word-press Nincs Igen Igen

Virtualizációs köztes réteg Konténerek használata előny

cloudStack networking vs. openStack networking

HA megoldások elvárást képeznek

Kiegészíthetőnek kell lennie pluginokkal

A rendszer forrását csak végső esetben módosítjuk

Legyen opensource (lehetőleg az extra komponensek is).

Erős opensource community elvárás

Page 19: Kutatási fázis eredményei · Kiegészíthetőnek kell lennie pluginokkal ... MySQL Van (Nem) Lassú Igen Igen ++ Tomcat Van (Igen) Lassú Igen Igen + Word-press Nincs Igen Igen

Platform as a Service

Page 20: Kutatási fázis eredményei · Kiegészíthetőnek kell lennie pluginokkal ... MySQL Van (Nem) Lassú Igen Igen ++ Tomcat Van (Igen) Lassú Igen Igen + Word-press Nincs Igen Igen

Platform as a Service Célunk egy általános keretrendszer, tervminta

definiálása.

Konténer alapú megoldások.

Keretrendszer Management felületek

Alapszolgáltatások (smtp smarthost, syslog, monitoring, file storage, stb.)

Tervminta

A fentiek használatával tetszőleges felhasználó definiálhat platformokat.

Page 21: Kutatási fázis eredményei · Kiegészíthetőnek kell lennie pluginokkal ... MySQL Van (Nem) Lassú Igen Igen ++ Tomcat Van (Igen) Lassú Igen Igen + Word-press Nincs Igen Igen

Platform as a Service Referencia Implementációk

Állapot Skálázható Indulás Partícionálható Terhelésosztható Konténer?

HTTP Nincs Igen Gyors Igen Igen +++

PHP Nincs Igen Gyors Igen Igen +++

MySQL Van (Nem) Lassú Igen Igen ++

Tomcat Van (Igen) Lassú Igen Igen +

Word-press

Nincs Igen Igen

Page 22: Kutatási fázis eredményei · Kiegészíthetőnek kell lennie pluginokkal ... MySQL Van (Nem) Lassú Igen Igen ++ Tomcat Van (Igen) Lassú Igen Igen + Word-press Nincs Igen Igen

Platform tervminta

Belépési pont Teljesítmény monitoring

Kernel

Cache

App1 App2

App3 App4

App5 App6

Dolgozó aktív

Számlázó ágens Menedzsment ágens

Kernel

Cache

App1 App2

App3 App4

App5 App6

Dolgozó aktív

Kernel

Cache

App1 App2

App3 App4

App5 App6

Dolgozó standby

Cloud UI Felhasználó

Természetesen az ágensekből duplán látunk.

Page 23: Kutatási fázis eredményei · Kiegészíthetőnek kell lennie pluginokkal ... MySQL Van (Nem) Lassú Igen Igen ++ Tomcat Van (Igen) Lassú Igen Igen + Word-press Nincs Igen Igen