Adeiladu ateb sy'n goddef fai yn seiliedig ar bensaernïaeth Oracle RAC ac AccelStor Shared-Nothing

Mae gan nifer sylweddol o gymwysiadau Menter a systemau rhithwiroli eu mecanweithiau eu hunain ar gyfer adeiladu datrysiadau sy'n goddef diffygion. Yn benodol, mae Oracle RAC (Oracle Real Application Cluster) yn glwstwr o ddau neu fwy o weinyddion cronfa ddata Oracle sy'n gweithio gyda'i gilydd i gydbwyso llwyth a darparu goddefgarwch nam ar lefel gweinydd / cais. I weithio yn y modd hwn, mae angen storfa a rennir arnoch, sydd fel arfer yn system storio.

Fel yr ydym eisoes wedi trafod yn un o'n erthyglau, mae gan y system storio ei hun, er gwaethaf presenoldeb cydrannau dyblyg (gan gynnwys rheolwyr), bwyntiau methiant o hyd - yn bennaf ar ffurf set sengl o ddata. Felly, i adeiladu datrysiad Oracle gyda mwy o ofynion dibynadwyedd, mae angen i'r cynllun “Gweinyddwyr N - un system storio” fod yn gymhleth.

Adeiladu ateb sy'n goddef fai yn seiliedig ar bensaernïaeth Oracle RAC ac AccelStor Shared-Nothing

Yn gyntaf, wrth gwrs, mae angen inni benderfynu pa risgiau yr ydym yn ceisio yswirio yn eu herbyn. Yn yr erthygl hon, ni fyddwn yn ystyried amddiffyniad rhag bygythiadau fel “mae meteoryn wedi cyrraedd.” Felly bydd adeiladu datrysiad adfer ar ôl trychineb gwasgaredig yn parhau i fod yn bwnc ar gyfer un o'r erthyglau canlynol. Yma byddwn yn edrych ar yr ateb adfer trychineb Cross-Rack, fel y'i gelwir, pan fydd amddiffyniad yn cael ei adeiladu ar lefel cypyrddau gweinydd. Gellir lleoli'r cypyrddau eu hunain yn yr un ystafell neu mewn rhai gwahanol, ond fel arfer o fewn yr un adeilad.

Rhaid i'r cypyrddau hyn gynnwys y set gyfan o offer a meddalwedd angenrheidiol a fydd yn caniatáu gweithredu cronfeydd data Oracle waeth beth fo cyflwr y "cymydog". Mewn geiriau eraill, gan ddefnyddio'r datrysiad adfer ar ôl trychineb Cross-Rack, rydym yn dileu'r risgiau o fethiant:

  • Gweinyddion Cais Oracle
  • Systemau storio
  • Systemau newid
  • Methiant llwyr yr holl offer yn y cabinet:
    • Gwrthod pŵer
    • Methiant system oeri
    • Ffactorau allanol (dynol, natur, ac ati)

Mae dyblygu gweinyddwyr Oracle yn awgrymu egwyddor weithredol iawn Oracle RAC ac fe'i gweithredir trwy gais. Nid yw dyblygu cyfleusterau newid yn broblem ychwaith. Ond gyda dyblygu'r system storio, nid yw popeth mor syml.

Yr opsiwn symlaf yw atgynhyrchu data o'r brif system storio i'r un wrth gefn. Cydamserol neu asyncronig, yn dibynnu ar alluoedd y system storio. Gyda dyblygu asyncronaidd, mae'r cwestiwn yn codi ar unwaith o sicrhau cysondeb data mewn perthynas ag Oracle. Ond hyd yn oed os oes integreiddio meddalwedd gyda'r cais, beth bynnag, os bydd methiant ar y brif system storio, bydd angen ymyrraeth â llaw gan weinyddwyr er mwyn newid y clwstwr i storfa wrth gefn.

Opsiwn mwy cymhleth yw “rhithwirwyr” storio meddalwedd a/neu galedwedd a fydd yn dileu problemau cysondeb ac ymyrraeth â llaw. Ond mae cymhlethdod y defnydd a'r weinyddiaeth ddilynol, yn ogystal â chost anweddus iawn atebion o'r fath, yn digalonni llawer.

Mae datrysiad arae All Flash AccelStor NeoSapphire™ yn berffaith ar gyfer senarios fel adfer ar ôl trychineb Cross-Rack H710 defnyddio pensaernïaeth Shared-Nothing. Mae'r model hwn yn system storio dau nod sy'n defnyddio technoleg perchnogol FlexiRemap® i weithio gyda gyriannau fflach. Diolch i FlexiRemap® Mae NeoSapphire ™ H710 yn gallu cyflawni perfformiad hyd at 600K IOPS@4K ar hap ysgrifennu a 1M + IOPS@4K darllen ar hap, sy'n anghyraeddadwy wrth ddefnyddio systemau storio clasurol sy'n seiliedig ar RAID.

Ond prif nodwedd NeoSapphire ™ H710 yw gweithredu dau nod ar ffurf achosion ar wahân, ac mae gan bob un ohonynt ei gopi ei hun o'r data. Mae cydamseru nodau yn cael ei wneud trwy'r rhyngwyneb InfiniBand allanol. Diolch i'r bensaernïaeth hon, mae'n bosibl dosbarthu nodau i wahanol leoliadau ar bellter o hyd at 100m, a thrwy hynny ddarparu datrysiad adfer trychineb Cross-Rack. Mae'r ddau nod yn gweithredu'n gwbl gydamserol. O'r ochr gwesteiwr, mae'r H710 yn edrych fel system storio rheolydd deuol arferol. Felly, nid oes angen perfformio unrhyw opsiynau meddalwedd neu galedwedd ychwanegol neu osodiadau arbennig o gymhleth.

Os byddwn yn cymharu'r holl atebion adfer ar ôl trychineb Traws-Rack a ddisgrifir uchod, yna mae'r opsiwn gan AccelStor yn sefyll allan yn amlwg o'r gweddill:

Pensaernïaeth Rhannu Dim AccelStor NeoSapphire™
System storio “rhithwiriwr” meddalwedd neu galedwedd
Ateb yn seiliedig ar ddyblygu

Argaeledd

Methiant gweinydd
Dim Amser Segur
Dim Amser Segur
Dim Amser Segur

Methiant switsh
Dim Amser Segur
Dim Amser Segur
Dim Amser Segur

Methiant system storio
Dim Amser Segur
Dim Amser Segur
Downtime

Methiant cabinet cyfan
Dim Amser Segur
Dim Amser Segur
Downtime

Cost a chymhlethdod

Cost datrysiad
Isel*
Uchel
Uchel

Cymhlethdod lleoli
Isel
Uchel
Uchel

* Mae AccelStor NeoSapphire™ yn dal i fod yn gyfres All Flash, nad yw, yn ôl ei ddiffiniad, yn costio “3 kopecks,” yn enwedig gan fod ganddo gronfa wrth gefn capasiti dwbl. Fodd bynnag, wrth gymharu cost derfynol datrysiad yn seiliedig arno â rhai tebyg gan werthwyr eraill, gellir ystyried y gost yn isel.

Bydd y dopoleg ar gyfer cysylltu gweinyddwyr cymwysiadau a nodau arae All Flash yn edrych fel hyn:

Adeiladu ateb sy'n goddef fai yn seiliedig ar bensaernïaeth Oracle RAC ac AccelStor Shared-Nothing

Wrth gynllunio'r topoleg, argymhellir yn gryf hefyd i ddyblygu switshis rheoli a rhyng-gysylltu gweinyddwyr.

Yma ac ymhellach byddwn yn siarad am gysylltu trwy Fiber Channel. Os ydych chi'n defnyddio iSCSI, bydd popeth yr un peth, wedi'i addasu ar gyfer y mathau o switshis a ddefnyddir a gosodiadau arae ychydig yn wahanol.

Gwaith paratoadol ar yr arae

Offer a meddalwedd a ddefnyddir

Manylebau Gweinydd a Switch

Cydrannau
Disgrifiad

Gweinyddion 11g Cronfa Ddata Oracle
Dau

System weithredu gweinydd
Oracle Linux

Fersiwn cronfa ddata Oracle
11g (RAC)

Proseswyr fesul gweinydd
Dau graidd 16 Intel® Xeon® CPU E5-2667 v2 @ 3.30GHz

Cof corfforol fesul gweinydd
128GB

Rhwydwaith CC
16Gb/s FC gyda multipathing

FC HBA
Emulex Lpe-16002B

Porthladdoedd cyhoeddus 1GbE pwrpasol ar gyfer rheoli clystyrau
Intel ethernet addasydd RJ45

Switsh FC 16Gb/s
Brocêd 6505

Porthladdoedd 10GbE preifat pwrpasol ar gyfer cydamseru data
Intel X520

Manyleb AccelStor NeoSapphire™ All Flash Array

Cydrannau
Disgrifiad

System storio
Model argaeledd uchel NeoSapphire™: H710

Fersiwn delwedd
4.0.1

Cyfanswm nifer y gyriannau
48

Maint gyriant
1.92TB

Math gyrru
Adran Gwasanaethau Cymdeithasol

Porthladdoedd targed y CC
Porthladdoedd 16x 16Gb (8 y nod)

Porthladdoedd rheoli
Y cebl ether-rwyd 1GbE sy'n cysylltu â gwesteiwyr trwy switsh ether-rwyd

Porthladd curiad y galon
Y cebl ether-rwyd 1GbE sy'n cysylltu rhwng dau nod storio

Porth cydamseru data
Cebl InfiniBand 56Gb/s

Cyn y gallwch chi ddefnyddio arae, rhaid i chi ei gychwyn. Yn ddiofyn, mae cyfeiriad rheoli'r ddau nod yr un peth (192.168.1.1). Mae angen i chi gysylltu â nhw fesul un a gosod cyfeiriadau rheoli newydd (sydd eisoes yn wahanol) a sefydlu cydamseriad amser, ac ar ôl hynny gellir cysylltu'r porthladdoedd Rheoli ag un rhwydwaith. Wedi hynny, cyfunir y nodau yn bâr HA trwy aseinio is-rwydweithiau ar gyfer cysylltiadau Interlink.

Adeiladu ateb sy'n goddef fai yn seiliedig ar bensaernïaeth Oracle RAC ac AccelStor Shared-Nothing

Ar ôl cwblhau'r ymgychwyn, gallwch reoli'r arae o unrhyw nod.

Nesaf, rydym yn creu'r cyfrolau angenrheidiol ac yn eu cyhoeddi i weinyddion cymwysiadau.

Adeiladu ateb sy'n goddef fai yn seiliedig ar bensaernïaeth Oracle RAC ac AccelStor Shared-Nothing

Argymhellir yn gryf creu cyfrolau lluosog ar gyfer Oracle ASM gan y bydd hyn yn cynyddu nifer y targedau ar gyfer y gweinyddwyr, a fydd yn y pen draw yn gwella perfformiad cyffredinol (mwy ar giwiau mewn un arall Erthygl).

Cyfluniad prawf

Enw Cyfrol Storio
Maint Cyfrol

Data01
200GB

Data02
200GB

Data03
200GB

Data04
200GB

Data05
200GB

Data06
200GB

Data07
200GB

Data08
200GB

Data09
200GB

Data10
200GB

Grid01
1GB

Grid02
1GB

Grid03
1GB

Grid04
1GB

Grid05
1GB

Grid06
1GB

Ail-wneud01
100GB

Ail-wneud02
100GB

Ail-wneud03
100GB

Ail-wneud04
100GB

Ail-wneud05
100GB

Ail-wneud06
100GB

Ail-wneud07
100GB

Ail-wneud08
100GB

Ail-wneud09
100GB

Ail-wneud10
100GB

Rhai esboniadau am ddulliau gweithredu'r arae a'r prosesau sy'n digwydd mewn sefyllfaoedd brys

Adeiladu ateb sy'n goddef fai yn seiliedig ar bensaernïaeth Oracle RAC ac AccelStor Shared-Nothing

Mae gan set ddata pob nod baramedr “rhif fersiwn”. Ar ôl cychwyn cychwynnol, mae'r un peth ac yn hafal i 1. Os yw rhif y fersiwn yn wahanol am ryw reswm, yna mae data bob amser yn cael ei gysoni o'r fersiwn hŷn i'r un iau, ac ar ôl hynny mae rhif y fersiwn iau wedi'i alinio, h.y. mae hyn yn golygu bod y copïau yn union yr un fath. Rhesymau pam y gall fersiynau fod yn wahanol:

  • Ailgychwyn wedi'i drefnu o un o'r nodau
  • Damwain ar un o'r nodau oherwydd cau sydyn (cyflenwad pŵer, gorboethi, ac ati).
  • Colli cysylltiad InfiniBand ag anallu i gydamseru
  • Cwymp ar un o'r nodau oherwydd llygredd data. Yma bydd angen i chi greu grŵp HA newydd a chwblhau cydamseriad o'r set ddata.

Beth bynnag, mae'r nod sy'n aros ar-lein yn cynyddu ei rif fersiwn fesul un er mwyn cydamseru ei set ddata ar ôl i'r cysylltiad â'r pâr gael ei adfer.

Os collir y cysylltiad dros y cyswllt Ethernet, mae Heartbeat yn newid dros dro i InfiniBand ac yn dychwelyd yn ôl o fewn 10 eiliad pan gaiff ei adfer.

Sefydlu gwesteiwyr

Er mwyn sicrhau goddefgarwch bai a gwella perfformiad, rhaid i chi alluogi cefnogaeth MPIO ar gyfer yr arae. I wneud hyn, mae angen i chi ychwanegu llinellau at y ffeil /etc/multipath.conf, ac yna ailgychwyn y gwasanaeth multipath

Testun cudddyfeisiau {
dyfais {
gwerthwr "AStor"
path_grouping_policy "group_by_prio"
llwybr_seliwr "ciw-hyd 0"
llwybr_gwiriwr "tur"
nodweddion "0"
caledwedd_triniwr "0"
prio "const"
methu ar unwaith
cyflym_io_fail_tmo 5
dev_loss_tmo 60
user_friendly_names ie
detect_prio ie
rr_min_io_rq 1
dim_llwybr_ailgeisio 0
}
}

Nesaf, er mwyn i ASM weithio gyda MPIO trwy ASMLib, mae angen i chi newid y ffeil /etc/sysconfig/oracleasm ac yna rhedeg sganddisgiau /etc/init.d/oracleasm

Testun cudd

# ORACLEASM_SCANORDER : Patrymau paru i archebu sganio disg
ORACLEASM_SCANORDER="dm"

# ORACLEASM_SCANEXCLUDE : Patrymau sy'n cyfateb i eithrio disgiau o'r sgan
ORACLEASM_SCANEXCLUDE="sd"

Nodyn

Os nad ydych am ddefnyddio ASMLib, gallwch ddefnyddio'r rheolau UDEV, sy'n sail i ASMLib.

Gan ddechrau gyda fersiwn 12.1.0.2 o Gronfa Ddata Oracle, mae'r opsiwn ar gael i'w osod fel rhan o feddalwedd ASMFD.

Mae'n hanfodol sicrhau bod y disgiau a grëwyd ar gyfer Oracle ASM yn cyd-fynd â maint y bloc y mae'r arae yn gweithredu'n gorfforol ag ef (4K). Fel arall, gall problemau perfformiad godi. Felly, mae angen creu cyfeintiau gyda'r paramedrau priodol:

parted /dev/mapper/device-name mklabel gpt mkpart cynradd 2048s 100% aliniad-gwirio optimaidd 1

Dosbarthiad cronfeydd data ar draws cyfeintiau a grëwyd ar gyfer ein cyfluniad prawf

Enw Cyfrol Storio
Maint Cyfrol
Cyfrol LUNs mapio
Manylion Dyfais Cyfrol ASM
Maint yr Uned Dyrannu

Data01
200GB
Mapio pob cyfrol storio i system storio holl borthladdoedd data
Diswyddo: Normal
Enw: DGDATA
Pwrpas: Ffeiliau data

4MB

Data02
200GB

Data03
200GB

Data04
200GB

Data05
200GB

Data06
200GB

Data07
200GB

Data08
200GB

Data09
200GB

Data10
200GB

Grid01
1GB
Diswyddo: Normal
Enw: DGGRID1
Pwrpas: Grid: CRS a Phleidleisio

4MB

Grid02
1GB

Grid03
1GB

Grid04
1GB
Diswyddo: Normal
Enw: DGGRID2
Pwrpas: Grid: CRS a Phleidleisio

4MB

Grid05
1GB

Grid06
1GB

Ail-wneud01
100GB
Diswyddo: Normal
Enw: DGREDO1
Pwrpas: Ail-wneud log edau 1

4MB

Ail-wneud02
100GB

Ail-wneud03
100GB

Ail-wneud04
100GB

Ail-wneud05
100GB

Ail-wneud06
100GB
Diswyddo: Normal
Enw: DGREDO2
Pwrpas: Ail-wneud log edau 2

4MB

Ail-wneud07
100GB

Ail-wneud08
100GB

Ail-wneud09
100GB

Ail-wneud10
100GB

Gosodiadau Cronfa Ddata

  • Maint bloc = 8K
  • Lle cyfnewid = 16GB
  • Analluogi AMM (Rheoli Cof yn Awtomatig)
  • Analluogi Tudalennau Mawr Tryloyw

Gosodiadau eraill

# vi /etc/sysctl.conf
✓ fs.aio-max-nr = 1048576
✓ fs.file-max = 6815744
✓ cnewyllyn.shmmax 103079215104
✓ cnewyllyn.shmall 31457280
✓ cnewyllyn.shmmn 4096
✓ cnewyllyn.sem = 250 32000 100 128
✓ net.ipv4.ip_local_port_range = 9000 65500
✓ net.core.rmem_default = 262144
✓ net.core.rmem_max = 4194304
✓ net.core.wmem_default = 262144
✓ net.core.wem_max = 1048586
✓vm.swappiness=10
✓ vm.min_free_kbytes=524288 # peidiwch â gosod hwn os ydych yn defnyddio Linux x86
✓ vm.vfs_cache_pressure=200
✓ vm.nr_hugepages = 57000

# vi /etc/security/limits.conf
✓ grid meddal nproc 2047
✓ grid caled nproc 16384
✓ nofile meddal grid 1024
✓ grid caled nofile 65536
✓ pentwr meddal grid 10240
✓ pentwr caled grid 32768
✓ oracl meddal nproc 2047
✓ oracl caled nproc 16384
✓ oracle meddal nofile 1024
✓ oracle hard nofile 65536
✓ pentwr meddal oracl 10240
✓ pentwr caled oracl 32768
✓ memlock meddal 120795954
✓ memlock caled 120795954

sqlplus “/fel sysdba”
newid prosesau set system=2000 scope=spfile;
newid set system open_cursors=2000 scope=spfile;
newid set system session_cached_cursors=300 scope=spfile;
newid set system db_files=8192 scope=spfile;

Prawf methiant

At ddibenion arddangos, defnyddiwyd HammerDB i efelychu llwyth OLTP. Cyfluniad HammerDB:

Nifer y Warysau
256

Cyfanswm y Trafodion fesul Defnyddiwr
1000000000000

Defnyddwyr Rhithwir
256

Y canlyniad oedd TPM 2.1M, sydd ymhell o derfyn perfformiad yr arae H710, ond mae'n “nenfwd” ar gyfer cyfluniad caledwedd cyfredol gweinyddwyr (yn bennaf oherwydd proseswyr) a'u rhif. Pwrpas y prawf hwn o hyd yw dangos goddefgarwch bai yr ateb yn ei gyfanrwydd, ac nid i gyflawni'r perfformiad mwyaf posibl. Felly, yn syml, byddwn yn adeiladu ar y ffigur hwn.

Adeiladu ateb sy'n goddef fai yn seiliedig ar bensaernïaeth Oracle RAC ac AccelStor Shared-Nothing

Prawf am fethiant un o'r nodau

Adeiladu ateb sy'n goddef fai yn seiliedig ar bensaernïaeth Oracle RAC ac AccelStor Shared-Nothing

Adeiladu ateb sy'n goddef fai yn seiliedig ar bensaernïaeth Oracle RAC ac AccelStor Shared-Nothing

Collodd y gwesteiwyr ran o'r llwybrau i'r storfa, gan barhau i weithio trwy'r rhai sy'n weddill gyda'r ail nod. Gostyngodd perfformiad am ychydig eiliadau oherwydd bod y llwybrau'n cael eu hailadeiladu, ac yna dychwelodd i'r arferol. Nid oedd unrhyw ymyrraeth yn y gwasanaeth.

Prawf methiant cabinet gyda'r holl offer

Adeiladu ateb sy'n goddef fai yn seiliedig ar bensaernïaeth Oracle RAC ac AccelStor Shared-Nothing

Adeiladu ateb sy'n goddef fai yn seiliedig ar bensaernïaeth Oracle RAC ac AccelStor Shared-Nothing

Yn yr achos hwn, gostyngodd perfformiad hefyd am ychydig eiliadau oherwydd ailstrwythuro'r llwybrau, ac yna dychwelodd i hanner y gwerth gwreiddiol. Cafodd y canlyniad ei haneru o'r un cychwynnol oherwydd bod un gweinydd cais wedi'i wahardd rhag gweithredu. Nid oedd unrhyw ymyrraeth yn y gwasanaeth ychwaith.

Os oes angen gweithredu datrysiad adfer ar ôl trychineb Cross-Rack sy’n gallu goddef diffygion ar gyfer Oracle am gost resymol a heb fawr o ymdrech lleoli/gweinyddu, yna mae Oracle RAC a phensaernïaeth yn gweithio gyda’i gilydd. AccelStor Shared-Dim byd bydd yn un o'r opsiynau gorau. Yn lle Oracle RAC, gall fod unrhyw feddalwedd arall sy'n darparu clystyru, yr un DBMS neu systemau rhithwiroli, er enghraifft. Bydd yr egwyddor o adeiladu'r datrysiad yn aros yr un fath. Ac mae'r llinell waelod yn sero ar gyfer RTO a RPO.

Ffynhonnell: hab.com

Ychwanegu sylw