Oracle Solaris Day 2013
Oracle DB a OS Solaris
26.6.2013
Martin Červený
M.Cerveny@computer.org
virtualizace zónou v Solarisu
souborový systém ZFS
virtualizace sítí
role a uživatelé RBAC
dohled nad službami SMF
bezpečn...
virtualizace zónou v Solarisu
souborový systém ZFS
virtualizace sítí
role a uživatelé RBAC
dohled nad službami SMF
bezpečn...
4
Virtualizace systémů
●
důvody a požadavky virtualizace
– bezpečné oddělení a ochrana
– rozdělení nebo vyhrazení zdrojů,
...
5
Zóna Solarisu
●
rozdělení na úrovni operačního
systému (zóny)
– nezávislý běh instance operačního
systému od procesu ini...
6
Zóna v Solarisu
zóna
hardware systému
Solaris kernel
app
app
konfigurace
globální
zóna
app
app
Solaris
zóna
RPC
IPC
app
...
7
Kontejner Solarisu
●
kontejner = zóna + řízení zdrojů
●
řízení zdrojů
– podle procesorů (dynamic resource
pools, process...
8
Řízení zdrojů CPU
system 8 cpu
pool1 2-4 cpu pool2 2 cpu
zone3 1 share
zone2 10 shares
zone4 2 shares
zone5 1 share
zone...
virtualizace zónou v Solarisu
souborový systém ZFS
virtualizace sítí
role a uživatelé RBAC
dohled nad službami SMF
bezpečn...
10
Vlastnosti
●
vysoká integrita dat
– end-to-end kontrolní součty
– transakce
●
kapacita (128bit)
●
storage pool
– RAID-0...
11
Integrita dat
1 2
3 4
možný
snapshot
mirror
1
2
3
aktuální
uberblock
poškozený
blok dat
ZFS
12
ZFS pro Oracle DB
●
separace dat a redo, archivních logů
●
klonování databáze
– Database Cloning using Oracle Sun ZFS
S...
virtualizace zónou v Solarisu
souborový systém ZFS
virtualizace sítí
role a uživatelé RBAC
dohled nad službami SMF
bezpečn...
14
Administrace a vlastnosti sítí
● L2 (datalink layer) - dladm(1m),dlstat(1m)
– volitelná jména (rename-link)
– zobrazení...
15
Sítě L2
sítě
L2
GLDv3
aggr
nic
nic nicnicnicnic nic
etherstub
vnitřní L2 síť
nicnicnicnic
aggr
více spojení k jednomu
p...
16
chytrá NIC hloupá NIC
etherstub
tcp/ip tcp/iptcp/ip
Virtualizace sítí
sítě ●
komponenty pro virtualizaci
– virtuální sí...
virtualizace zónou v Solarisu
souborový systém ZFS
virtualizace sítí
role a uživatelé RBAC
dohled nad službami SMF
bezpečn...
18
Role Based Acces Control
●
cíl
– umožnit delegaci administrace systému
– definice programových autorizací
– snížit poče...
19
Privilegia
●
bezpečnostní oprávnění pro jádro Solarisu,
která nahrazují privilegovaný test
„euid==0“
●
součástí informa...
20
Příklad profilu
● passwd
– jack:x:100:1:InsideJack:/home/jack:/bin/sh
– killer:x:200:1:Killer:/home/killer:/bin/pfsh
● ...
virtualizace zónou v Solarisu
souborový systém ZFS
virtualizace sítí
role a uživatelé RBAC
dohled nad službami SMF
bezpečn...
22
Dohled nad hardware a software
●
Predictive Self-Healing (PSH)
– správa HW systému
●
Fault Management Architecture (FMA...
23
Start softwarových služeb
●
Service Management Facility (SMF)
– XML popisný soubor
●
jemnější definice vazby služeb
– k...
24
Stav služby
maintenance
degraded
disabled
uninitialized
offline
svcadm disable
svcadm enable
svcadm restart
svcadm refr...
25
Provázání služeb
crossbowdohled
SMF
26
XML manifest
<?xml version="1.0"?>
<!DOCTYPE service_bundle SYSTEM
"/usr/share/lib/xml/dtd/service_bundle.dtd.1"
>
<ser...
virtualizace zónou v Solarisu
souborový systém ZFS
virtualizace sítí
role a uživatelé RBAC
dohled nad službami SMF
bezpečn...
28
DTrace
●
DTrace je instrumentace pro dynamickou
analýzu problémů v systému a aplikacích v
celém rozsahu
●
dynamické vlo...
29
Systémová implementace sondy
libdtrace(3lib)
lockstat(1m)
dtrace(1m) intrstat(1m)
plockstat(1m)
sondy&akce (DOF)
fbt(7d...
30
Analýza uživatelských procesů
●
standardní provider
– pid*, plockstat*
– sledování prakticky omezeno na
entry/return
– ...
31
Analýza Oracle DB
●
využití standardních providerů
– Oracle8i Internal Services for Waits, Latches, Locks, and Memory
–...
virtualizace zónou v Solarisu
souborový systém ZFS
virtualizace sítí
role a uživatelé RBAC
dohled nad službami SMF
bezpečn...
33
Možnosti auditu
●
aplikace
– vlastní logovací soubory - logadm(1m)
– systémový log - syslogd(1m)
●
kernel
– účtování bě...
34
syscall
Systémový audit
kernel
fronta
appl
auditd
audit
audit_event
audit_class
auditconfig audit audit_warn
auditreduc...
35
Kurzy kde Vás to naučíme
●
Oracle Solaris 11 System Administration
●
Oracle Solaris 11 Advanced System Administration
●...
36
Dotazy
?pro prezentaci byly použity inspirace z volně dostupných materiálů
a prezentací, z dokumentace docs.oracle.com ...
Upcoming SlideShare
Loading in...5
×

Oracle Solaris Day 2013 - Oracle DB and OS Solaris

241

Published on

Presentation from training day for Oracle Solaris customers to explain advantages of running Oracle Database on Oracle Solaris.
Presentation covers following themes:
- system and network virtualization
- filesystem ZFS
- security with RBAC
- running with SMF
- tuning with DTrace
Demo labs: http://www.slideshare.net/m_cerveny/osd2013-cmd

Published in: Education
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
241
On Slideshare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
6
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Transcript of "Oracle Solaris Day 2013 - Oracle DB and OS Solaris"

  1. 1. Oracle Solaris Day 2013 Oracle DB a OS Solaris 26.6.2013 Martin Červený M.Cerveny@computer.org
  2. 2. virtualizace zónou v Solarisu souborový systém ZFS virtualizace sítí role a uživatelé RBAC dohled nad službami SMF bezpečnostní audit funkční a výkonnostní analýza DTrace
  3. 3. virtualizace zónou v Solarisu souborový systém ZFS virtualizace sítí role a uživatelé RBAC dohled nad službami SMF bezpečnostní audit funkční a výkonnostní analýza DTrace
  4. 4. 4 Virtualizace systémů ● důvody a požadavky virtualizace – bezpečné oddělení a ochrana – rozdělení nebo vyhrazení zdrojů, přebytek výkonu – redundance a vysoká dostupnost – spravovatelnost ● dostupné virtualizace – paravirtualizace (PVM, kooperativní) (Oracle VM for SPARC = LDom) – rozdělení na úrovni operačního systému (zóny) systém
  5. 5. 5 Zóna Solarisu ● rozdělení na úrovni operačního systému (zóny) – nezávislý běh instance operačního systému od procesu init (sdílené jádro Solarisu) – izolace softwarových chyb aplikací – bezpečnostní oddělení (méně privilegií) – možnost připojení citlivých části souborového systému jen pro čtení – žádné změny v API aplikací – branding - emulace chování jiného jádra operačního systému (solaris 10) – zonecfg(1m), zoneadm(1m), zlogin(1), zonename(1) systém zóna
  6. 6. 6 Zóna v Solarisu zóna hardware systému Solaris kernel app app konfigurace globální zóna app app Solaris zóna RPC IPC app app brandz zóna sol10 syscall emulátor syscall systém
  7. 7. 7 Kontejner Solarisu ● kontejner = zóna + řízení zdrojů ● řízení zdrojů – podle procesorů (dynamic resource pools, processor sets) ● pooladm(1m), poolcfg(1m), poolbind(1m), poolstat(1m), poold(1m), pbind(1m), psrinfo(1m), psradm(1m), zonecfg(1m) – přiřazení poměrného výkonu procesorů (resource/workload manager, FSS plánovač procesů (cpu-shares), projects) ● resource_controls(5), zonecfg(1m), rctladm(1m), prctl(1), projadd(1m), projmod(1m), projdel(1m), projects(1), project(4), newtask(1) – limit přiřazení fyzické paměti ● rcapadm(1m), rcapstat(1), rcapd(1m) systém zdroje
  8. 8. 8 Řízení zdrojů CPU system 8 cpu pool1 2-4 cpu pool2 2 cpu zone3 1 share zone2 10 shares zone4 2 shares zone5 1 share zone1 20 shares project1 3 shares project2 2 share project3 1 share task2 proc4 proc3 task1 proc2 proc1 zdroje 4 ∗ 20 1020 ∗ 2 123 = 8 9 systém
  9. 9. virtualizace zónou v Solarisu souborový systém ZFS virtualizace sítí role a uživatelé RBAC dohled nad službami SMF bezpečnostní audit funkční a výkonnostní analýza DTrace
  10. 10. 10 Vlastnosti ● vysoká integrita dat – end-to-end kontrolní součty – transakce ● kapacita (128bit) ● storage pool – RAID-0, RAID-1, RAID-Z, -Z2, -Z3 ● NFSv4/NT ACL ● deduplikace, komprimace, šifrování ● snapshot, clone ● vzdálená replikace ● nezávislé na platformě (x86-SPARC) ● jednoduchá online administrace – zpool(1m), zfs(1m) ZFS
  11. 11. 11 Integrita dat 1 2 3 4 možný snapshot mirror 1 2 3 aktuální uberblock poškozený blok dat ZFS
  12. 12. 12 ZFS pro Oracle DB ● separace dat a redo, archivních logů ● klonování databáze – Database Cloning using Oracle Sun ZFS Storage Appliance and Oracle Data Guard ● použití hybrid-storage – ZEUSRam (~8GB RAM + flash) pro ZIL ● vyladění ZFS – velikost ARC cache ● set zfs:zfs_arc_max = # – ZFS recordsize == DB db_block_size – ZFS prefetch ● set zfs:zfs_prefetch_disable = 1 ● set zfs:zfs_vdev_cache_bshift = 13 – omezení ZIL pro pole (s NVRAM) ● set zfs:zfs_immediate_write_sz = 8191 ZFS
  13. 13. virtualizace zónou v Solarisu souborový systém ZFS virtualizace sítí role a uživatelé RBAC dohled nad službami SMF bezpečnostní audit funkční a výkonnostní analýza DTrace
  14. 14. 14 Administrace a vlastnosti sítí ● L2 (datalink layer) - dladm(1m),dlstat(1m) – volitelná jména (rename-link) – zobrazení, nastavení a smazání doplňujících informací (show-ether,show-phys,delete- phys,show-link,show-linkprop,set- linkprop,reset-linkprop) – automatické VNIC do zón (zonecfg/anet) – Virtual Router Redundancy Protocol (VRRP) – Link Layer Discovery Prot.(LLDP)-lldpadm(1m) – řízení toků L3 - flowadm(1m),flowstat(1m) ● L3 (ip network layer) - ipadm(1m) – autokonfigurace - netadm(1m),netcfg(1m) ● network automagic (NWAM) – IP multipathing (IPMP) – konfigurace v SMF(5) - dns, nss ... ● L4 - integrovaný "loadbalancer" - ilbadm(1m) sítě
  15. 15. 15 Sítě L2 sítě L2 GLDv3 aggr nic nic nicnicnicnic nic etherstub vnitřní L2 síť nicnicnicnic aggr více spojení k jednomu přepínači ⇒ LACP, A/A podle L2,L3,L4 bridge více spojení k více přepínačům ⇒ STP, A/P L2 na cestu nic nicnic nic vnic více vNIC z jedné NIC ⇒ každá vNIC má vlastní L2 addr vlan více vNIC z jedné NIC ⇒ každá vNIC má vlastní VLAN id
  16. 16. 16 chytrá NIC hloupá NIC etherstub tcp/ip tcp/iptcp/ip Virtualizace sítí sítě ● komponenty pro virtualizaci – virtuální síťové rozhraní (VNIC) ● část kapacity (maxbw) a priorita (priority) – řízení toků podle port,transport,ip,ds (flow) ● hardwarová podpora VNIC a flow – některé bge, e1000g, igb, ixgbe, nxge, nge tcp/ip vnic ip flow vnic ringbufringbuf hw flow tcp/ip vnic ip flow vnic ringbufringbuf sw flow tcp/ip vnic ip flow vnic ringbufringbuf sw flow L2
  17. 17. virtualizace zónou v Solarisu souborový systém ZFS virtualizace sítí role a uživatelé RBAC dohled nad službami SMF bezpečnostní audit funkční a výkonnostní analýza DTrace
  18. 18. 18 Role Based Acces Control ● cíl – umožnit delegaci administrace systému – definice programových autorizací – snížit počet „setuid“ programů – princip minimálních oprávnění ● komponenty RBAC – administrativní role (administrative roles) ● nelze se přímo přihlásit, jen pomocí „su“ z autorizovaných kont – programové autorizace (authorizations) – profily (profiles, rights), profily pro spuštění programů včetně bezpečnostních privilegií jádra (exec attributes, privileges) ● nástroje – useradd(1m),usermod(1m),userdel(1m),rolead d(1m),rolemod(1m),roledel(1m),user_attr(4) ,auth_attr(4),exec_attr(4),prof_attr(4) crossbowRBAC
  19. 19. 19 Privilegia ● bezpečnostní oprávnění pro jádro Solarisu, která nahrazují privilegovaný test „euid==0“ ● součástí informací jádra o procesu – Effektive set (E) – aktuální oprávnění, dají se přidávat a odebírat shora omezené podle (P) – Permitted set (P) – horní omezení pro oprávnění (E) a (I), dají se pouze odebírat – Inheritable set (I) – nastavení výchozích oprávnění (nové E a P) pro synovský proces – Limited set (L) – horní omezení pro dědičná oprávnění (I) a nemůže nikdy růst ● 84 privilegií ● "file_dac_read" Override file's read perms ● "net_privaddr" Bind to privilege port (<1023+extras) ● "proc_exec" Allow use of execve() ● "proc_fork" Allow use of fork*() calls ● "proc_info" Examine /proc of other processes crossbowRBAC privilegia
  20. 20. 20 Příklad profilu ● passwd – jack:x:100:1:InsideJack:/home/jack:/bin/sh – killer:x:200:1:Killer:/home/killer:/bin/pfsh ● user_attr – jack:::type=normal;roles=killer – killer:::type=role;profiles=Killer ● prof_attr – Killer:::Process killer: ● exec_attr – Killer::solaris:cmd:::/usr/bin/kill:privs=proc_ owner crossbowRBAC role
  21. 21. virtualizace zónou v Solarisu souborový systém ZFS virtualizace sítí role a uživatelé RBAC dohled nad službami SMF bezpečnostní audit funkční a výkonnostní analýza DTrace
  22. 22. 22 Dohled nad hardware a software ● Predictive Self-Healing (PSH) – správa HW systému ● Fault Management Architecture (FMA) – správa SW služeb ● Service Management Facility (SMF) ● databáze s popisem chyb – http://www.sun.com/msg/idchyby crossbowdohled
  23. 23. 23 Start softwarových služeb ● Service Management Facility (SMF) – XML popisný soubor ● jemnější definice vazby služeb – konfigurační data v databázi - svc.configd(1m) – restarter - svc.startd(1m), inetd(1m) ● paralelní start služeb ● automatický restart ● delegace ovládání na běžné uživatele ● stav údržby ● nástroje – svcadm(1m), svcs(1), svccfg(1m),svcprop(1) inetadm(1m),inetconv(1m) ● Fault Management Resource ID (FMRI) – svc:/typ/název:instance – svc:/milestone/ ● none, single-user, multi-user, multi- user-server, ..., all crossbowdohled SMF
  24. 24. 24 Stav služby maintenance degraded disabled uninitialized offline svcadm disable svcadm enable svcadm restart svcadm refresh svcadm clear svcadm mark online crossbowdohled SMF
  25. 25. 25 Provázání služeb crossbowdohled SMF
  26. 26. 26 XML manifest <?xml version="1.0"?> <!DOCTYPE service_bundle SYSTEM "/usr/share/lib/xml/dtd/service_bundle.dtd.1" > <service_bundle type='manifest' name='osdevcon'> <service name='site/mojesluzba' type='service' version='1'> <create_default_instance enabled='false'> <single_instance /> <dependency ...>...</dependency> <dependent ...>...</dependent> <exec_method ...>...</exec_method> <property_group ...> ...</property_group> <template>...</template> </service> </service_bundle> crossbowdohled SMF
  27. 27. virtualizace zónou v Solarisu souborový systém ZFS virtualizace sítí role a uživatelé RBAC dohled nad službami SMF bezpečnostní audit funkční a výkonnostní analýza DTrace
  28. 28. 28 DTrace ● DTrace je instrumentace pro dynamickou analýzu problémů v systému a aplikacích v celém rozsahu ● dynamické vložení sondy -> aktivace průchodem kódu -> interpretovaná akce – D jazyk ● úplný popis sondy a akce provider:module:function:name /logická podmínka (predicate)/ { příkaz akce; … } ● nástroje – dtrace(1m) ● chime, dtrace toolkit, dexpolorer, netbeans plugin, sunstudio dlight – knihovna libdtrace(3lib) ● lockstat(1m)/plockstat(1m), intrstat(1m) ... – vložené explicitní sondy do programů ● interprtetry, Xserver, databáze … crossbowdtrace
  29. 29. 29 Systémová implementace sondy libdtrace(3lib) lockstat(1m) dtrace(1m) intrstat(1m) plockstat(1m) sondy&akce (DOF) fbt(7d) sdt(7d) syscall(7d) vmstat(7d) dtrace(7d), logika a D-interpret text/code trap USR SYS crossbowdtrace
  30. 30. 30 Analýza uživatelských procesů ● standardní provider – pid*, plockstat* – sledování prakticky omezeno na entry/return – hlavní program (a.out) a knihovny – nutná znalost vnitřní architektury programu ● User-Level Statically Defined Tracing (USDT) – mysql*, postgresql*, Xserver*, apache*, php*, phyton*, (perl*), ruby*, javascript*, hotspot*, hotspot_jni*, (sh*), (gtk*/glib*) ... – doplněné sondy "DTRACE_PROBE*()" – zakompilované a popsané v ELF (využívá linker) – "exportuje" důležité události ● start/stop, begin/end, entry/exit ... crossbowdtrace procesy
  31. 31. 31 Analýza Oracle DB ● využití standardních providerů – Oracle8i Internal Services for Waits, Latches, Locks, and Memory – Oracle Core: Essential Internals for DBAs and Developers – http://www.orafaq.com/wiki/Oracle_database_Internals_FAQ crossbowdtrace procesy
  32. 32. virtualizace zónou v Solarisu souborový systém ZFS virtualizace sítí role a uživatelé RBAC dohled nad službami SMF bezpečnostní audit funkční a výkonnostní analýza DTrace
  33. 33. 33 Možnosti auditu ● aplikace – vlastní logovací soubory - logadm(1m) – systémový log - syslogd(1m) ● kernel – účtování běhu procesů - acct(1m) – systémový audit v kernelu ● 283 událostí kernelu ● 609 událostí aplikací ● audit(1m), auditconfig(1m), praudit(1m), auditreduce(1m) ● souborový systém – digitální podpisy souborů - elfsign(1m) – změny v souborech - bart(1m) crossbowaudit
  34. 34. 34 syscall Systémový audit kernel fronta appl auditd audit audit_event audit_class auditconfig audit audit_warn auditreduce praudit crossbowspráva systémový
  35. 35. 35 Kurzy kde Vás to naučíme ● Oracle Solaris 11 System Administration ● Oracle Solaris 11 Advanced System Administration ● Transition to Oracle Solaris 11 ● Oracle VM Server for SPARC: Installation and Configuration ● Oracle Solaris 11 Zones Administration ● Oracle Solaris 11 ZFS Administration ● Oracle Solaris 11 Network Administration ● Oracle Solaris 11 Security Administration ● Oracle Solaris 11 Performance Management ● Oracle Solaris DTrace for System Administrators ● Developing and Deploying Applications on Oracle Solaris 11 http://www.edumaster.cz
  36. 36. 36 Dotazy ?pro prezentaci byly použity inspirace z volně dostupných materiálů a prezentací, z dokumentace docs.oracle.com a dalších zdrojů mezi jinými blogs.oracle.com, solarisinternals.com, illumos.org, oss.oracle.com, wikipedia.org, alexanderanokhin.wordpress.com, blog.tanelpoder.com ...
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×