Adatbázis szerver konszolidáció Oracle technológiákkal - erőforrás allokálás

Szerver konszolidációnál alapmegoldás a virtualizáció, pedig az Oracle Database rendelkezik olyan képességekkel, melyekkel a virtualizáció előnyeit élvezhetjük, ám teljesítményben felülmúljuk azt. Több adatbázis konszolidációját meg lehet oldani egy nagy szerveren, vagy egy több szerverből álló klaszteren. Bármelyik megoldást is választjuk (ezek előnyeivel és hátrányaival most nem foglalkozok), az egyik legfontosabb megoldandó probléma, hogy biztonsággal el tudjuk őket szeparálni akár adatbiztonsági, akár erőforrás kezelési szempontból. A szoftveres és hardveres virtualizációk lehetővé teszik, hogy a szerver erőforrásait több virtuális szerver között felosszuk, ezáltal elszeparálhatók a párhuzamosan futó adatbázis példányok. Ezek a megoldások általában költségesek, plusz adminisztrációt jelentenek és teljesítmény csökkenést okoznak. Az alábbiakban röviden összeszedem, hogy az Oracle Database milyen erőforrás szeparációs technológiákkal rendelkezik, melyek jól használhatók adatbázis konszolidáció esetén:
Adatbázis szolgáltatások: Azt talán minden Oracle adatbázis-kezelővel foglalkozó szakértő tudja, hogy akliensek az adatbázist az adatbázis szolgáltatás nevével érik el. Alapértelmezetten minden adatbázis egyetlen szolgáltatással rendelkezik, mely automatikusan a 'global database name' paraméterrel megegyező nevet kapja az adatbázis létrehozásakor. Ugyanakkor egy adatbázishoz több szolgáltatás név is rendelhető. A szolgáltatásokkal csoportosíthatók a különböző feladatokat végrehajtó kliensek, és a szolgáltatásokhoz rendelhetjük hogy melyik kliens csoportnak mennyi rendszer erőforrást allokálunk. Klaszteres adatbázisok (RAC) esetén egy szolgáltatás több adatbázis példányhoz (szerverhez) kapcsolódhat, amivel valós terheléstől függő terhelés elosztás valósítható meg (itt már szerepet kap egyébként a Resource Manager is, lásd később). Az alkalmazás számára irrelevánssá válik, hogy az adott szolgáltatást mely szerver szolgálja ki. A szolgáltatásokhoz kapcsolódó erőforrások menet közben dinamikusan bővíthetők, de kezelik a kieső erőforrások hiányát is (failover).
Database Resource Manager: Az Oracle Database Resource Manager az adatbázis szintjén kezeli az erőforrásokat, a CPU használatot szabályozza az adatbázis terhelés kontrolljával. A Resource Manager egy CPU-n adott pillanatban csak egyetlen Oracle processz futtatását engedélyezi, miközben a többit várakoztatja (ahogy az egy operációs rendszer ütemezőjében is működik). A Resource Manager csak akkor lép működésbe, amikor a CPU terhelése eléri a 100%-ot. Ekkor a Resource Plan-nek megfelelően korlátozhatja az egyes erőforrás csoportok számára elérhető erőforrás (CPU) mennyiségét.
Instance Caging: A Resource Manager részeként az Oracle Database 11gR2-től elérhető Instance Caging technológiával virtualizáció és operációs rendszer szintű erőforrás felosztás nélkül az adatbázis példány szintjén lehet szabályozni az allokált CPU számot. Erre akkor lehet szükség, ha egy szerveren több példány futtatására van szükség. A Resource Manager bekapcsolásával és a cpu_count paraméter beállításával lehet adatbázis példányonként aktiválni az Instance Caging funkcionalitást. A cpu_count egy dinamikus paraméter, célszerű arra az értékre állítani, ahány CPU-t az adott adatbázis példány maximálisan igényelhet. Lehetőség van túlméretezni a példányok számára rendelkezésre álló processzorok számát. Például egy 4 CPUs- szerver esetében ha van 3 példányunk, mindháromnak adhatunk 3 CPU-t. Azonban ha mindegyik terhelés alatt van, akkor a példány számára maximum allokált CPU szám osztva összes allokált CPU számmal arányban részesül a processzorból, ami a példában 33,33%, azaz 1,33 CPU.
Input Output Resource Manager (IORM):Nem csak a processzorok használatát szabályozhatjuk, lehetőség van a megosztott storage erőforrásainak felosztására is. Az Input Output Resorce Manager (IORM) alkalmazásával storage szinten tudjuk szabályozni az adatbázisok közötti és azokon belüli minimális I/O szinteket.
Database Vault: Ugyanazon adatbázisba konszolidált alkalmazások esetén a rendszergazda szerepkörök szeparálása lehetséges az Oracle Database Vault technológiával. Ezzel elérhető az, hogy biztonságosan konszolidáljuk adatbázisainkat úgy, hogy minden adminisztrátor csak a hozzá tartozó adatokat, objektumokat lássa, módosíthassa.

Comments:

Post a Comment:
  • HTML Syntax: NOT allowed
About


Sárecz Lajos vagyok, 2003 óta dolgozok az Oracle Hungary Kft-nél értékesítési tanácsadóként. Szakterületem az Oracle Engineered Systems, azaz olyan szerverek, amelyek hardver és szoftver komponensek előre optimalizált konfigurációja.
A blogon publikált vélemények a saját nézeteimet tükrözik, nem feltétlenül egyeznek meg az Oracle álláspontjával.
The views expressed on this blog are my own and do not necessarily reflect the views of Oracle.
View Lajos Sárecz's LinkedIn profileView Lajos Sárecz's profile

Search

Archives
« április 2014
HKSzeCsPSzoV
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
    
       
Today