SEA failover delay

June 28th, 2009

Za one koji koriste VIOS (PowerVM) tehnologiju i SEA (Shared Ethernet Adapter) mislim da će sledeći hint biti vredan. Naime, u određenoj konfiguraciji vašeg vam dragog network admina kada se koristi Spanning tree protokol a nije uključena opcija portfast na portu gde vam je konektovan SEA, možete imati neželjeni efekat  produženog intervala za prebacivanje na drugi bekap port. Uzrok ovome može da bude to što vam je uključen Spanning Tree Protocol (STP) na tim switch portovima. Kako bi ste to prevazišli možete podesiti opciju portfast opciju na tim switch portovima. Opcija portfast (pdf) omogućuje swich-u da odmah prosledi pakete na port-u pre nego što je završio sa STP-om. Ponekad prilikom failback-a sa bekap nod-a na primarni nod može da se desi da switch nije spreman da uradi tansmit/receive paketa iako mu je došao signal da je link podignut, to dovodi do gubitka paketa. Iako je ovako nešto retko, i u dobro konfigurisanim okruženjima ne bi trebalo da se desi, isključivanjem STP-a možete biti sigurni da se to neće dogoditi.

Da bi “ručno” testirali failover možete probati sledeće komande:

Na VIOS-u:

 $ oem_setup_env
 # lsdev -Cc adapter |grep ent --> Dobićete koji je SEA adapter
 # entstat -d entX | grep State --> Proverite u kom je state-u (PRIMARY, ili BACKUP)

Podesite ha_mode na standby kod primarnog VIOS-a sa chdev komandom:

 # chdev -l entX -a ha_mode=standby

Resetovanjem nazad na auto, SEA bi trebalo da se vrati nazad na primarni VIOS:

# chdev -l entX -a ha_mode=auto

Postoji nekoliko vrsta provera, od gore pomenute, do fizičkog čupanja eth kablova, ili obaranja celokupnog VIOS sistema. Moja preporuka je da pre puštanja SEA u produkciju obavezno proverite sve mogućnosti i proverite vreme za koje će vam biti potrebno da se izvrše failover i failback funkcije.

Pored ovoga, preporučujem da proverite i ovaj APAR dokument na IBM sajtu, koji se tiče sličnog problema, prilikom korišćenja HA konfiguracije, a koji može biti da nije rešen na vašem trenutnom VIOS-u ili TL/SP-u. Evo šta kaže IBM:

When using SEA HA mode, and when attempting to force a failover using chdev command on primary VIOS, the failover may not happen for a few seconds. The delay has been seen to be anywhere between 10-35 seconds, depending on the traffic flowing between the client LPARs and the outside world.

Luka Gerzic AIX , , , , ,

32 ili 64bita?

June 11th, 2009

Ovo je mini linux howto za proveru da li je procesor i/ili operativni sistem 32bit-a ili 64bit-a (x86 platforma). Realna situacija u kojoj možete da naiđete na potrebu da ovako nešto proveravate je ako dođete na potpuno nepoznat “teren” pa treba da utvrdite šta je od postojeće opreme iskorišćeno i kako. Pa eto malog mini howto-a na ovu temu.

a)    ako uname vrati sledeće:

# uname -m
x86_64

Onda je u pitanju 64bit OS a samim tim i procesor.

b)    Ako vrne recimo:

# uname -m
i686

To može i ne mora da znači da je procesor 32-bitan. Da bi definitivno utvrdili koji operativni sistem je instaliran potrebno je otkucati sledeću komandu:

32 bit-a:

# file /sbin/init
/sbin/init: ELF 32-bit LSB shared object, Intel 80386, version 1 (SYSV),
for GNU/Linux 2.6.8, dynamically linked (uses shared libs), stripped

64 bit-a:

# file /sbin/init
/sbin/init: ELF 64-bit LSB executable, AMD x86-64, version 1 (SYSV),
for GNU/Linux 2.6.4, statically linked, for GNU/Linux 2.6.4, stripped

Time će te videti da li je instalirani operativni sistem instaliran za 32 ili 64bitnu arhitekturu.

c) Komanda: # cat /proc/cpuinfo može vam dati specifikaciju procesora kao i sve njegove
mogućnosti. To se vidi u segmentu Flags i to izgleda otprilike ovako:

processor		: 0
vendor_id		: GenuineIntel
cpu family		: 6
model		: 15
model name	: Intel(R) Xeon(R) CPU 5110  @ 1.60GHz
stepping		: 6
cpu MHz		: 1595.930
cache size		: 4096 KB
physical id	: 3
siblings		: 2
core id		: 0
cpu cores		: 2
fpu		: yes
fpu_exception	: yes
cpuid level	: 10
wp			: yes

flags		: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov
pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm syscall nx lm constant_tsc pni
monitor ds_cpl vmx tm2 cx16 xtpr dca lahf_lm

bogomips        	: 3195.07
clflush size    	: 64
cache_alignment	: 64
address sizes   	: 36 bits physical, 48 bits virtual
power management:

jer 64bitni procesor ima flag LM koji je označen crvenom bojom u gornjem tekstu.

Ako vas interesuje šta znači koji flag na procesoru koji je na datom sistemu, ukoliko je sistem
32-bitan opis flagova se nalazi u ovom fajlu: # cat /usr/include/asm/cpufeature.h a ako je sistem 64-bitan onda u: # cat /usr/include/asm-x86_64/cpufeature.h

I to izgleda otprilike ovako (za gore navedeni procesor):

Posle X86_FEATURE_<OVDE JE CPU FLAG> a zatim opis flag-a.

/* Intel-defined CPU features, CPUID level 0x00000001, word 0 */
#define X86_FEATURE_FPU        (0*32+ 0) /* Onboard FPU */
#define X86_FEATURE_VME        (0*32+ 1) /* Virtual Mode Extensions */
#define X86_FEATURE_DE        (0*32+ 2) /* Debugging Extensions */
#define X86_FEATURE_PSE     (0*32+ 3) /* Page Size Extensions */
#define X86_FEATURE_TSC        (0*32+ 4) /* Time Stamp Counter */
#define X86_FEATURE_MSR        (0*32+ 5) /* Model-Specific Registers, RDMSR, WRMSR */
#define X86_FEATURE_PAE        (0*32+ 6) /* Physical Address Extensions */
#define X86_FEATURE_MCE        (0*32+ 7) /* Machine Check Architecture */
#define X86_FEATURE_CX8        (0*32+ 8) /* CMPXCHG8 instruction */
#define X86_FEATURE_APIC    (0*32+ 9) /* Onboard APIC */
#define X86_FEATURE_SEP        (0*32+11) /* SYSENTER/SYSEXIT */
#define X86_FEATURE_MTRR    (0*32+12) /* Memory Type Range Registers */
#define X86_FEATURE_PGE        (0*32+13) /* Page Global Enable */
#define X86_FEATURE_MCA        (0*32+14) /* Machine Check Architecture */
#define X86_FEATURE_CMOV    (0*32+15) /* CMOV instruction (FCMOVCC and FCOMI too if FPU present) */
#define X86_FEATURE_PAT        (0*32+16) /* Page Attribute Table */
#define X86_FEATURE_PSE36    (0*32+17) /* 36-bit PSEs */
#define X86_FEATURE_PN        (0*32+18) /* Processor serial number */
#define X86_FEATURE_CLFLSH    (0*32+19) /* Supports the CLFLUSH instruction */
#define X86_FEATURE_DTES    (0*32+21) /* Debug Trace Store */
#define X86_FEATURE_ACPI    (0*32+22) /* ACPI via MSR */
#define X86_FEATURE_MMX        (0*32+23) /* Multimedia Extensions */
#define X86_FEATURE_FXSR    (0*32+24) /* FXSAVE and FXRSTOR instructions (fast save and restore */
                          /* of FPU context), and CR4.OSFXSR available */
#define X86_FEATURE_XMM        (0*32+25) /* Streaming SIMD Extensions */
#define X86_FEATURE_XMM2    (0*32+26) /* Streaming SIMD Extensions-2 */
#define X86_FEATURE_SELFSNOOP    (0*32+27) /* CPU self snoop */
#define X86_FEATURE_HT        (0*32+28) /* Hyper-Threading */
#define X86_FEATURE_ACC        (0*32+29) /* Automatic clock control */
#define X86_FEATURE_IA64    (0*32+30) /* IA-64 processor */
/* AMD-defined CPU features, CPUID level 0x80000001, word 1 */
/* Don't duplicate feature flags which are redundant with Intel! */
#define X86_FEATURE_SYSCALL    (1*32+11) /* SYSCALL/SYSRET */
#define X86_FEATURE_MMXEXT    (1*32+22) /* AMD MMX extensions */
#define X86_FEATURE_FXSR_OPT    (1*32+25) /* FXSR optimizations */
#define X86_FEATURE_LM        (1*32+29) /* Long Mode (x86-64) */
#define X86_FEATURE_3DNOWEXT    (1*32+30) /* AMD 3DNow! extensions */
#define X86_FEATURE_3DNOW    (1*32+31) /* 3DNow! */
/* Transmeta-defined CPU features, CPUID level 0x80860001, word 2 */
#define X86_FEATURE_RECOVERY    (2*32+ 0) /* CPU in recovery mode */
#define X86_FEATURE_LONGRUN    (2*32+ 1) /* Longrun power control */
#define X86_FEATURE_LRTI    (2*32+ 3) /* LongRun table interface */
/* Other features, Linux-defined mapping, word 3 */
/* This range is used for feature bits which conflict or are synthesized */
#define X86_FEATURE_CXMMX    (3*32+ 0) /* Cyrix MMX extensions */
#define X86_FEATURE_K6_MTRR    (3*32+ 1) /* AMD K6 nonstandard MTRRs */
#define X86_FEATURE_CYRIX_ARR    (3*32+ 2) /* Cyrix ARRs (= MTRRs) */
#define X86_FEATURE_CENTAUR_MCR    (3*32+ 3) /* Centaur MCRs (= MTRRs) */
#define X86_FEATURE_REP_GOOD    (3*32+ 4) /* rep microcode works well on this CPU */
#define X86_FEATURE_CONSTANT_TSC (3*32+5) /* TSC runs at constant rate */
#define X86_FEATURE_SYNC_RDTSC  (3*32+6)  /* RDTSC syncs CPU core */
/* Intel-defined CPU features, CPUID level 0x00000001 (ecx), word 4 */
#define X86_FEATURE_XMM3    (4*32+ 0) /* Streaming SIMD Extensions-3 */
#define X86_FEATURE_MWAIT    (4*32+ 3) /* Monitor/Mwait support */
#define X86_FEATURE_DSCPL    (4*32+ 4) /* CPL Qualified Debug Store */
#define X86_FEATURE_EST        (4*32+ 7) /* Enhanced SpeedStep */
#define X86_FEATURE_TM2        (4*32+ 8) /* Thermal Monitor 2 */
#define X86_FEATURE_CID        (4*32+10) /* Context ID */
#define X86_FEATURE_CX16    (4*32+13) /* CMPXCHG16B */
#define X86_FEATURE_XTPR    (4*32+14) /* Send Task Priority Messages */
/* VIA/Cyrix/Centaur-defined CPU features, CPUID level 0xC0000001, word 5 */
#define X86_FEATURE_XSTORE    (5*32+ 2) /* on-CPU RNG present (xstore insn) */
#define X86_FEATURE_XSTORE_EN    (5*32+ 3) /* on-CPU RNG enabled */
#define X86_FEATURE_XCRYPT    (5*32+ 6) /* on-CPU crypto (xcrypt insn) */
#define X86_FEATURE_XCRYPT_EN    (5*32+ 7) /* on-CPU crypto enabled */
/* More extended AMD flags: CPUID level 0x80000001, ecx, word 6 */
#define X86_FEATURE_LAHF_LM    (6*32+ 0) /* LAHF/SAHF in long mode */
#define X86_FEATURE_CMP_LEGACY    (6*32+ 1) /* If yes HyperThreading not valid */

Luka Gerzic Linux/BSD , , , , , , , , ,

Par trikova na VIOS-u 1.5

June 9th, 2009

Jedna od novina koju je uveo VIOS ver. 1.5 je i mogućnost kreiranja virtuelnih scsi uređaja (hard disk ili optička medija) od regularnog fajla. Ova nova vrsta virtuelnih uređaja pruža veću fleksibilnost administratoru prilikom kreiranja i dodeljivanja resursa klijentima. U nekim slučajevima, ovakav vid konfiguracije (ukoliko se naravno ispravno iskonfigurišu svi parametri) može doprineti bržem pristupu ovim virtuelnim diskovima, što recimo može poslužiti prilikom instalacije ili restore-a klijenta.

Kreiranje ovakvih virtuelnih diskova je relativno jednostavno. Prvo definišete tkz. storage pool u VIOS-u koji sadrži fajlove koje želite da proglasite virtuelnim diskovima. Ovde dolazi do izražaja poznavanje rada LVM-a u AIX-u jer pogrešnom konfiguracijom možete degradirati performanse značajno. LVM dolazi “preko” ovih virtuelnih diskova koji su u stvari fajlovi, recimo na nekom brzom SAN-u, pa je bitno odabrati prave parametre prilikom particionisanja i konfigurisanja samo LVM-a. Bitno je napomenuti da IBM ne preporučuje kreiranje rootvg-a preko ovih virtuelnih uređaja (koji se baziraju na fajl-ovima). Kreiranje storage pool-a koji sadrži ovakav tip fajlova se vrši komandom mksp -fb unutar VIOS okruženja (padmin). Za kreiranje budućih virtuelnih disk fajlova koristi se komanda mkbdsp (obavezno pročitajte celokupan manual page za ovu komandu pre korišćenja). Za kreiranje virtuelnih optičkih diskova (čitaj cd/dvd-a) koristi se standardna mkvdev komanda sa opcijom -fbo. Virtuelni cd/dvd može se kasnije prebaciti u VMR (Virtual Media Repository) pa samim tim isti se može share-ovati kroz VIOS, a zahvaljujući tome što je u pitanju fajl a ne pravi cd/dvd uređaj, performanse za instalaciju recimo će biti drastično bolje. Idealna zamena za one koji nisu digli NIM za instalaciju recimo, ili nemaju gigabitni lan (u šta sumnjam al ajde). Da bi ste prebacili fajl u VMR koristite komandu mkvopt, a za aktiviranje tj “ubacivanje medije” koristimo komande loadopt i unloadopt. Ako vam je potrebno da kreirate bootabilni ISO fajl iz AIX-a čiji image hoćete da prebacite u VIOS VMR koristite regularnu komandu mkcd, (za DVD dodajte i flag -L). Kreiranje bootabilnog image fajla sa postojećeg CD-a recimo bi izveli ovako:

mkcd -r /cdrom -S -L -I /isoimgs

Ako ste ikad koristili mksysb komandu onda pretpostavljate da se i ona može iskoristiti u ovakvom okruženju. Procedura je vrlo slična, primer je mislim dat u man-u od mksysb komande.

Luka Gerzic AIX, Virtuelizacija , , , , , , , ,

Oblak

June 3rd, 2009

Ne, ne govorim o stratusima, stratokumulusima,  kumulusima i ostalim skupovima kapljica vode ili leda u našoj atmosferi. Sve popularniji termin u IT-u je tkz. cloud computing, ili ako prevedemo na naš jezik, hmm kako bi to uopšte preveli a da ima neko normalno značenje? Računari na oblacima možda? :) Kako sve češće pričam o Cloud computing-u, pa me sve češće pitaju o čemu to ja to dođavola govorim, rešio sam da napišem jedan kraći intro o toj temi (slobodno linkujte na ovaj tekst ako i vi imate sličnih pitanja).

Elem, definicija cloud computing-a (u daljem tekstu CC) bi bila nešto slično sledećem: CC je stil korišćenja računarskih resursa koji su dinamički skalabilni i često virtuelizovani, a koji pritom pružaju korisniku svoje resurse preko internet-a. Korisnici tih resursa ne moraju da poseduju znanje, ekspertizu ili kontrolu nad tom tehnologijom da bi je u potpunosti koristili.

Najčešći slučaj korišćenja CC-a je u slučaju kada posao zahteva on-line aplikacije kojima se pristupa putem web browser-a, dok se sama aplikacija i podaci nalaze na CC resursima tj negde na Internet-u. Termin Oblak (Cloud) se ovde koristi kao metafora za Internet, a što je bazirano na aktuelnom prikazu samog Internet-a na mrežnim diagramima i predstavlja abstrakciju veoma kompleksne infrastrukture koju sakriva.

Ko sve koristi CC? Naravno najveće IT kuće u svetu na prvom mestu: IBM, Amazon, Google, Microsoft, Yahoo itd. Pored njih, ovaj koncept počinju da primenjuju i neke od najvećih svetskih kompanija poput  General Electric i Procter & Gamble, koji nisu IT kuće jer shvataju velike prednosti koje CC nudi. Nekoliko domaćih firmi u Srbiji (verovali ili ne) koristi ove resurse aktivno već neko vreme.

Postoje 4 tipa CC-a.

  1. Javni - Resursi dostupni klijentima iz celog sveta, provajder CC-a naplaćuje resurse po sopstvenim cenovnicima za određene tipove usluga. Svako može da zakupi resurse.
  2. Privatni - Velike kompanije koje imaju potrebu za ovakvim vidom servisa za svoje interne potrebe kreiraju ovakav vid CC-a i ovaj tip nije moguće platiti tj iznajmiti. Dobar primer je recimo vojska ili gov. institucije.
  3. Hibrid - miks prethodna dva, delom javni delom privatni CC. Najčešći slučaj su privatne kompanije koje imaju višak resursa koji prodaju kako bi tako recimo isplatile svoje operativne troškove.
  4. Community - Nekoliko različitih organizacija (čitaj firmi) koristi iste CC resurse.

5 Osnovnih karakteristika CC-a:

  1. Po potrebi, tkz. self service
  2. Sveprisutni pristup resursima, bilo odakle, bilo kad
  3. Potražnja resursa nezavisno od lokacije na kojoj se nalazite
  4. Rapidna agilnost, što znači dinamička implementacija i deimplementacija resursa po potrebi korisnika
  5. Plaćanje po sistemu koliko potrošite resursa toliko plaćate, ni paru više od toga.

CC može isporučiti 3 modela servisa:

  • PaaS (Platform as a service) - Korisnik koristi hosting okruženje za njihove aplikacije. Sam korisnik kontroliše aplikacije koje se pokreću u tom okruženju, gde sam korisnik ima određena prava nad operativnim sistemom, ali nema potpuna prava nad operativnim sistemom, mrežom ili hardware-om koji ta aplikacija koristi.
  • SaaS (Software as a service) - Korisnik koristi neku aplikaciju, ali nema kontrolu nad samim operativnim sistemom na kome se vrti ta aplikacija, niti ima kontrolu nad hardware-om ili mrežom nad kojim se ta aplikacija oslanja.
  • IaaS (Infrastructure as a service) - Korisnik koristi sve resurse na sistemu ali nema uticaj nad cloud infrastrukturnim resursima nad kojim leži virtuelizovani hardware. Tačnije korisnik ima mogućnost direktnog upravljanja operativnim sistemom, procesorskom snagom, količinom memorije i prostorom na diskovima.

E sad, kako smo ovo sve lepo podelili i opisali, da napišem i neka 4 najčešća slučajeva (tkz. real life primeri) korišćenja CC okruženja:

  1. Hardware on Cloud - Virtuelni server koji radi u Cloud okruženju. Sam korisnik pokreće server, primenjuje i kontroliše aplikacije na istom. Po potrebi duplicira celu mašinu i pokreće još N instanci (koliko god da mu je potrebno). Ovo možemo porediti sa praktično serverom koji je u sobi pored nas, samo nije tu nego je negde na cloud-u (čitaj na Internet-u). Ista prava i privilegije važe, nema razlike sem u lokaciji.
  2. Disk drive on Cloud - Klasični storage uređaj, ali na Internet-u. Treba vam da smestite ogromnu količinu podataka negde i da ne razmišljate puno gde se to nalazi, da li je to bekapovano, itd. Sve što kasnije treba da znate jeste gde ste stavili sve te podatke. Podržani su različiti protokoli, i u zavisnosti od ugovora koji potpišete sa Cloud provajderom možete ih birati.
  3. Database on Cloud - Baza kojoj preko specifičnog query jezika možete pristupiti bilo odakle.
  4. Application on Cloud - Neki software, aplikacija koja funkcioniše potpuno identično kao da ste je instalirali na server u sobi pored vaše, samo što se server nalazi negde na Internet-u. Dobar primer za ovo su recimo Facebook aplikacije. Napravite aplikaciju, treba vam masivna snaga da to pustite na Facebook, pljusnete je na Cloud, plaćate određeni fee za ovu uslugu, i od zarade odbijete deo za to. Neki su zaradili lepe pare ovako, a pritom ne poseduju niti jedan jedni server u svom vlasništvu.

Naravno u celoj priči postoji 101 finesa, oko izrade celog projekta, testiranja, postavljanja i aktiviranja resursa, planiranih proširenja, ali o tome neki drugi put. Ovo je bio samo intro o Cloud computing-u. Za sva eventualna pitanja, sugestije ili kritike stojim vam na raspolaganju.

Luka Gerzic Virtuelizacija , , , , , ,

AIX 6.1 inovacije

June 3rd, 2009

AIX 6.1 a možemo naći u 2 verzije: standardna u kojoj se nalazi samo osnovni AIX i enterprajz verzija koja dolazi sa WPM-om (Workload partition manager) i nekoliko Tivoli modula. Fokusiraćemo se na ovu drugu. Skorašnje inovacije koje prate AIX 6.1 su:

  • WPARs (Work load partitions): Virtuelizacija na nivou operativnog sistema u potpunosti podržana od strane Power hardware-a, donekle slična Solaris containers tehnologiji, omogućuje kreiranje višestrukih AIX 6.1 okruženja u okviru jedne AIX  6.1 instance. Aplikativni WPAR-ovi koji mogu biti pokrenuti unutar tkz. globalne instance mogu biti kreirani za par sekundi što omogućuje brzo testiranje aplikacija pre puštanja u produkciju.
  • Live partition mobility: Omogućava premeštanje particija sa jednog sistema na drugi bez restartovanja aplikacija ili bilo kakvog prekida u pružanju servisa kranjim korisnicima. Pored toga omogućuje konsolidaciju resursa kako bi se smanjila nepotrebna potrošnja istih u periodima slabije iskorišćenosti ili prilikom održavanja samih servera.
  • Konkurentni update AIX 6.1 kernela: omogućuje update sistema bez potrebe da se isti resetuje kako bi se primenile izmene.
  • Dynamic tracing: olakšava debugovanje sistema ili aplikacije
  • Enhanced functional recovery routine: set instrukcija koje prate rad sistema i u slučaju problema ili grešaka koje bi inače mogle da obore sistem iste zamrznu i omoguće nastavak rada samog sistema.
  • AIX 6.1 dolazi sa predefinisanim setom tjuning parametara kako bi se izvukao maksimum iz sistema.
  • Updateovan NIM sada podržava NFS v4
  • Nova IBM Director konzola za AIX 6.1

Što se tiče bezbednosti AIX operativnog sistema takođe su uvedene neke novine:

  • RBAC (Role-Based Access Control) rutine
  • Trusted AIX 6.1 sada pokriva sve USA gov. bezbednosne standarde i zahteve
  • Enkripcija JFS fajl sistema kroz jače algoritme i povećan nivo bezbednosti.
  • Mogućnost čuvanja bezbednosnih polisa i templejta u LDAP-u.
  • Minimum aktivnih servisa prilikom prve instalacije

Za više detalja evo nekoliko linkova:

Luka Gerzic AIX , , , , , , , , , , , ,

Progres kodovi IBM P serija

June 3rd, 2009

Za slučaj da nekome zatreba kao meni, ako tražite način da utvrdite šta se dešava u kom momentu prilikom podizanja mašine evo linkova ka IBM sajtu za većinu progres kodova koji vas mogu interesovati. Progres kodovi (tkz. Reference code) koji se pojavljuju prilikom podizanja IPL-a (Initial Program Load) na IBM P seriji (uglavnom su 8 karaktera sem ukoliko to nije drugačije naznačeno). Par primera ovih kodova bi bio:  C1202000, C2001000, C600407E, C7004091 itd. Ovi kodovi mogu biti prikazani na HMC konzoli prilikom podizanja, reboot-a ili shutdown-a particije, a grupišu se u nekoliko celina u zavisnosti od segmenta koji sistem ispituje:

Luka Gerzic IBM P Serija , , , , , , ,

IBM u talu sa QLogic-om i Emulex-om

May 30th, 2009

Pre dva dana IBM je objavio kako je ušao u završni deo pregovora sa QLogic i Emulex proizvođačima oko implementacije njihovih rešenja u celokupnu IBM X seriju i Blade liniju što je donekle i bilo očekivano. Od kako se pojavio IBM HS22 blade u Martu ove godine i nove X serije sa popularnim Xeon 5500 procesorima  (o čemu sam pisao nedavno) šuškalo se ko će biti glavni isporučioc ovog segmenta opreme za IBM.

IBM će postaviti novi QLogic-ov adapter serije 8100 za FCOE (Fibre Channel over Ethernet) ne samo u svoje nove blade unit-e nego i u kompletnu X seriju. QLogic tvrdi da će njihova nova serija (8100) drastično smanjiti potrošnju procesora i disipaciju toplote, a time indirektno smanjiti troškove unutar datacentra. Glavna fora je naravno u tome što će QLogic-ov adapter skinuti opterećenje Xeon procesora i preneti sav posao na svoj interni procesor (na samom adapteru), sa odličnom podrškom za virtuelizaciju resursa. Uz novi QLogic 8100 adapter, izašao je i novi 10 Gigabitni CEE (Converged Enhanced Ethernet) tkz. High speed - Pass-Thru module za IBM Blade Centar.

Što se tiče Emulex-a, oni u ovoj priči ulaze sa 8G-bps FC CIOv (LightPulse LPe1205-CIOv) adapterima (IBM Model Number 46M6140) koji su optimizovani za rad u IBM Blade Centru (HS22) omogućujući svojim korisnicima bolji dual-channel I/O propusni opseg i smanjujući opterećenje procesora u sistemu prebacujući sav I/O na sebe.

Luka Gerzic Storage , , , , , , ,

SSD na IBM Power seriji

May 27th, 2009

Evo friških vesti vezanih za SSD diskove na IBM P seriji. Dobre vesti su kao što već znamo da su SSD diskovi daleko brži prilikom random I/O-a. Loše vesti su da su malog kapaciteta (trenutno) tačnije 69GB, i užasno su skupi, o čemu sam već pisao (doduše cene su bile tada nezvanične).

Evo zbog čega se IBM “pravda”, kad je u pitanju cena uređaja. Ako uzmemo PC tehnologiju običnih USB flash diskova znamo da:

  • Nema pokretnih delova, samo memorijski čipovi, nije mu potrebno dodatno napajanje
  • Koristi se par puta u toku dana maksimalno ne duže od sat/dva u kontinuitetu
  • Spor pristup, pogotovu prilikom pisanja.
  • Ograničen broj upisa (merljiv u hiljadama), a potom tkz. “memory cell failure” i smanjenje kapaciteta. Ako se upisuje 1-5 puta u toku dana može da traje nekoliko godina.

S druge strane Enterprise SSD:

  • Izrazito opterećenje (read/write) 24 x 7 godinama
  • SAS interfejs koji omogućuje oko 3 GB/s
  • Algoritmi za jednaku distribuciju opterećenja (podataka) na sve memorijske čipove.
  • Proaktivna provera svih memorijskih jedinica i blokiranje “sumnjivih” ćelija bez gubljenja podataka
  • 85% redudanse (128 GB RAW memorije, 69 GB upotrebljive)
  • Veliki broj mem. čipova radi paralelizacije procesa i boljih random I/O operacija

Evo nekih nezvaničnih cifri koje pominje IBM, a koje nisam imao još prilike da testiram:

4KB random I/O:

  • Regularni disk: ~120 do 200 IOPS-a
  • SSD: ~28000 IOPS-a

Potrošnja struje:

Da bi dobili performanse od 135.000 IOPS-a, treba vam SAN disk sistem koji potroši oko 7.7 KW-a. Za iste performanse trebaju vam 5 SSD modula koji potroše 330 W.

Transfer (održivi) performanse kod SSD disk modula:

  • 220 MB/s Read
  • 122 MB/s Write

Prosečno vreme pristupa SSD diska: od 20 do 120 mikro sekundi

Minimum koji morate da ispunite da bi ste mogli da implementirate SSD diskove u svoj box su sledeći: AIX 5.3 TL7 SP9 a za AIX 6.1 TL0 SP9. Uz to vam treba i Server firmware FW3.4.2, HMC firmware V7R3.4.0 Service Pack  i Power subsystem Firmware V3.4.2.

Naravno postoje i neka ograničenja u celoj priči ako želite da bude IBM supported. Mada u Srbiji je termin “radiće to, ko ga j*** što nije podržano” mnogo češći. Enivej, evo šta kaže IBM kako se to radi:

  1. Ako nije by the book nije podržano od IBM-a
  2. Nema intermix-a “običnih” diskova i SSD-ova u istom blok-u ili subsistemu.
  3. U EXP12S SAS kutiji može da se stavi maksimum 8 SSD-ova
  4. Formatiranje SSD diskova na kapacitet od 69GB se vrši sa 528 byte sektorima (a ne 512 byte-a po sektoru kako su neki ovde primetili da može da bi dobili 74 GB prostora).
  5. Ne možete koristiti SSD module i obične diskove u mirror modu (bilo hw ili sw).
  6. Pročitaj pravilo br. 1.

I na kraju, dobro skriveno u gomili linkova na IBM sajtu: Installing and configuring Solid State Drives in AIX & IBM Power Series.

Update (09.06.2009). IBM je izbacio zvanične testove (sa cenama), možete ih skinuti sa ovog direktnog linka (pdf).

Luka Gerzic IBM P Serija , ,

ClusterSSH

May 26th, 2009

Ako imate veći broj servera i potrebno vam je da uradite identičnu operaciju  (npr. da jednim potezom uništite sav svoj rad, naravno greškom) na svim serverima odjednom (a da se pritom ne mučite ni malo) alat pod nazivom ClusterSSH može vam završiti posao. CSSH ima jednostavan konfiguracioni fajl koji možete generisati na sledeći način:

stinger@noc:~$ cssh -u > ~/.csshrc
stinger@noc:~$

Unutar fajla možete definisati svoju listu servera kojima želite da pristupate, a savetujem vam da podesite i još neke parametre (po svom ukusu naravno), evo primera:

extra_cluster_file=~/.cssh_list
screen_reserve_top=20
terminal_reserve_top=5
terminal_size=80x20
ssh=/usr/bin/ssh
ssh_args= -x -o ConnectTimeout=10

Bitno je da definišete svoj extra_cluster_file (kako ne bi koristili sistemski predefinisani ili ako isti niste u mogućnosti da kreirate s obzirom da je isti u /etc). Unutar njega pravite listu servera koje želite simultano da kontrolišete. Unutar ovog fajla kreirate listing na sledeći način:

# Primer komentara
imegrupe admin1@server1 admin2@server2 server3 server4

Vodite računa da u spisku servera navodite prvo ime grupe koju će te kasnije pozivati, a u njenom produžetku navodite user@server ili samo server. U suštini trebalo bi da na svim serverima imate definisanog istog korisnika ili (malo verovatno ali moguće) da imate različite korisnike sa istom šifrom. To bi otprilike izgledalo ovako:

# Produkcioni mail serveri
mxgrp mx1.server.net mx2.server.net mx3.server.net pop3.server.net
# Produkcioni dns serveri
nsgrp ns1.server.net ns2.server.net
# Test serveri
testgrp sandbox.example.com crash.server.net
# Sve grupe zajedno
allgrps mxgrp nsgrp testgrp

Primetićete da u poslednjoj liniji imamo grupu allgrps koja poziva gore navedene grupe. To vam omogućuje da iz jedne grupe pozivate druge predefinisane grupe. Postoje i druge opcije koje vam mogu olakšati život, ovde sam nabrojao samo neke. Za ostatak man cssh. Da bi ste recimo otvorili terminale ka mx serverima kucate sledeće:

stinger@noc:~$ cssh mxgrp

Tada će CSSH kreirati terminale ka svim mašinama. To izgleda ovako:

Koristan alat za sve one koji imaju veliki broj mašina a potrebno im je da urade neku operaciju na svim tim serverima (tipa da vanredno pokrenete update nekog paketa), ovaj alat postaje dodatno lakši za korišćenje ukoliko koristite ssh predefinisane ključeve.

Luka Gerzic Linux/BSD , , , , ,

DS8000 enkripcija diskova

May 24th, 2009

U martu sam pisao, da je pored ostalih novosti na DS8000 seriju dosla i enkripcija diskova. Evo nešto više detalja na tu temu. IBM je izbacio novi tip diskova koji nose oznaku FDE (Full Disk Encryption). U ovom momentu diskovi sa FDE-om su kapaciteta 146GB, 300GB i 450GB na 15K u FC opciji. Za razliku od ostalih non-FDE diskova, FDE diskove nije moguće miksovati, tj opcija IBM intermix nije dostupna. Ovo važi i za SFI sisteme (2x LPAR storage). Enkripcija podataka je urađena na hardwareskom nivou i IBM tvrdi da nema ni najmanjeg pada performansi prilikom rada sa podacima dok je uključena enkripcija podataka. Disk enkripcija je simetričnog tipa, i koristi se uz TKLM (Tivoli Key Lifecycle Manager). Kada je TKLM povezan sa DS8000 storage sistemom, TKLM će generisati ključeve za enkripciju i dekripciju podataka koji se koriste za svaki disk u sistemu koji ima oznaku FDE. Sve opcije oko korišćenja ove tehnologije će biti ubačene u TKLM koji IBM smatra centralnim segmentom sistema za sve buduće potrebe enkriptovanja i dekriptovanja podatka, što praktično znači da će se na TKLM nadograditi. Tako će i ostali uređaji kojima je potrebna enkripcija podataka dobiti tu mogućnost u bližoj budućnosti.

Luka Gerzic Razno , , , , , , , , ,