2024. április 25., csütörtök

Gyorskeresés

RAIDZ1 és a szamba

Írta: |

[ ÚJ BEJEGYZÉS ]

A zfs file rendszer jó tulajdonságait szeretném kiemelni a telepítés alatt, és ha sikerül a szándékom akkor talán az egyik legegyszerűbb( ez saját vélemény) zfs adaptációt tudom közreadni. Természetesen kizárólag terminál használat, semmi gui. Na, egy kis Munin azért majd lesz. Nem célom címlapos oldalra tenni, bár jót tenne az Openindiana népszerűségének. Sajnos mikor elkészült az első telepítés éppen akkor jött ki a Napp-it is.[link]
Valószínű az még ennél is egyszerűbb. Amikor elkezdtem foglalkozni a zfs-sel akkor a napp-it szépen lefoglalta az összes 64GB-os SSD-met. Na, ilyen nekem nem kell. A mostani biztos jobb, de engem nem igazán izgat. A folyamatos próbák alatt kiderült, hogy egy 32GB pendrive elegendő tartalékot biztosít a rendszernek.

Miért is pendrive? Egyszerű, mert így az összes alaplapi sata portra HDD kerülhet. Itt is mint a FreeNas-nál, Nexenta-nál az USB csak a boot alatt van használva. Az SSD használata teljesen fölösleges. Ennek ellenére a választásom egy USB3-as stick-re esett, mert hát a telepítésnél azért csak lényeges, hogy mennyit várunk rá. DT111 5 év garival, és az 5600Ft-os árával nekem a tökély. Kettőt vettem a mirror-hoz. Mindent a biztonságért.
Itt jegyezném meg azt is, hogy én a minél nagyobb RAM méretet választottam, és nem az SSD gyorsítótárazást. Még a RAM mindig gyorsabb, és az ára sem olyan borzasztó.

A Nexenta-s leírásban a kolléga elég nagy tudású, de elfelejtette beleírni, hogy a gyorsítótárnak egy bizonyos méreten túl nincs értelme. Attól is függ, hogy mennyi RAM van a gépben.
Térjünk vissza a mienkhez, és pontosan a swap-hoz. Illene a swap-ot HDD-re rakni, de az egyszerűség miatt a stick-en hagytam. Egészen egyszerűen még egy byte-os beütést se láttam, tehát nem kell aggódni a sebesség miatt.
A telepítőt hagytam válasszon magának méretet. Így adódik a legegyszerűbb, és működő pendrive-os telepítés. A telepítéshez egy pici linux gyakorlat kell, mert nem írhatok le minden lépést, mert akkor irdatlan hosszú lenne a leírás. Próbálok rávilágítani a lényeges pontokra, és megmagyarázni a választásom okait. Minden erőfeszítésem arra irányult, hogy egy gyors, és biztonságos szervert, vagy NAS-t hozzak össze.

Nálam egy Brazos-on fut 4 noti HDD-vel. A szintetikus sebesség mérés eredménye nagyon meg is lepett, de ott majd kitérek rá még a gyakori hibák miatt.
Az tisztán látszik, hogy a Brazos könnyen elbánik a torrent szerver résszel, de már a RAIDZ1 írása CPU limitbe ütközik. Itt jön előtérbe a szamba zseniális kezelése. Linuxon nagy erőforrást emésztő szolgáltatás. Itt viszont kernelből, nagy sebességgel működik. Ha például tesztelni akarjuk ne a Total Commander-t, ftp progit válasszuk hanem szépen keressünk rá a file-ra, és "crtl+c" majd "ctrl+v"-t használjuk.

A telepítést meg kell tennünk először egy pendrive-ra, majd a mirror-t kézzel kell létre hozni. A telepítés alatt szinte csak az F2-öt nyomogattam. Ez az enter, enter megfelelője. Mindent elfogadtam amit felajánlott. Az egész USB-t használja, és itt még a telepítő formázza a partíciót. Egyedül csak egy USB volt bedugva, és a lemez amiről folyt a telepítés.
No, és itt kezdjünk bele ahol már elindult az első pendrive-unkról a rendszer.

USB-s mirror készítés

Ez a rész már egy picit egyszerűsödött, mert az img már képes mirror/raidz -re felmászni. A telepítő rákérdez ha egynél több HDD/USB drive-t lát. Most is meghagyom a régit, mert hát hasznos kód található benne ha valamelyik drive elhalálozik. Persze resilver, de odáig el kell jutni valahogy. :)

A BIOS-ban AHCI legyen bekapcsolva! Fontos az online swap miatt. Mint már a Linux-ban megismerhettük rengeteg úton célt érhetünk. Most, hogy felderítsük az USB-eket itt csak két parancsot írok le, de létezik még több is.:) Mielőtt belevágunk lényeges, hogy root-ként legyünk bent. Ezt a szokásos "sudo su" paranccsal megtehetjük.

zpool status### Erre kiírja a megírt USB azonosítóját. "rpool" a rendszer neve.
format -e
rmformat

Mivel csak a két USB van a rendszerben így azok azonosítóját látjátok, és már tudjátok melyik az üres, és melyiken van a rendszer. A format parancsokból a "ctr+c"-vel ki tudsz lépni. Ezen a szinten még nincs semmi formatálás. No parra. A két formatáló parancs egyikével létrehozod a Solaris2 particiót. Az elsőt használtam. Értelemszerűen lépkedsz, és adsz válaszokat az fdisk-nek ami a format parancs után jön.
3
1
y
1
1
100
y
6
quit
[Egy részletesebb variáció.]
Itt következik a tényleges mirror készítés. c6t0d0 a megparticionált üres, c5t0d0 a működő darab.

pfexec fdisk -B c6t0d0p0 ### SSD esetén el kell hagyni ha több particót használsz.
### Pl.30GB rpool/mirror 8GB logs/mirror (max. RAM/2) 60GB cache/stripe.
pfexec prtvtoc /dev/rdsk/c5t0d0s2 | pfexec fmthard -s - /dev/rdsk/c6t0d0s2
pfexec zpool attach -f rpool c5t0d0s0 c6t0d0s0### Itt hozzáadod.

Az írást itt resilver-nek hívja. Meg kell várni a végét. Ez egy picit lassú.

zpool status### Kiírja a hátralévő időt.
pfexec installgrub -fm /boot/grub/stage1 /boot/grub/stage2 /dev/rdsk/c6t0d0s0 ### GRUB install,(reinstall).
zfs set atime=off rpool ### Többen javasolják az USB lassúsága miatt.
zfs get all rpool ### Itt ellenőrzöd, hogy megtörtént-e.

Itt már próbálgathatod, hogy beindul-e mindegyikről. Az USB-ket címkézd fel, és mindig ugyan oda dugd be.
Mintha a többi USB portot letiltaná amikor beindul, de ez engem nem zavar. A boot-olás ideje nem változik ha SSD-t használsz, vagy elenyészően kicsi a különbség. Hát igen ez nem ms termék.
(Azért SSD-vel gyorsabb, de valamiért nálam nem vált be. Hibázott az SSD. Pont mint a pendrive. :( )

RAIDZ készítés

Maga a RAID tömb létrehozása nagyon egyszerű, és nem napokba kerül mint máshol. Kb.5-10 másodperc, és már tolhatod rá az anyagot. Mivel AHCI-nk van ki is kell használni. A HDD-ket egyesével adjuk a rendszerhez, és ezeket is címkézzük fel. Rendkívülien felgyorsítja az online swap-ot ha valamelyik kidől. Mivel ez "Home Edition by Brogyi" így eltekinthetünk a "spare" luxus szolgáltatástól. Ahogy mondani szoktam az a profik játszótere. Nem nehéz, de ide minek. Szóval a beillesztett első HDD-t a következő paranccsal fogjuk látni.

cfgadm

Nagy valószínűséggel unconfigurated státuszban lesz. Ezen is segíthetünk, de ennek semmi köze a formatáláshoz.

cfgadm -c configure sata0/3### A "sata0/3" az elöző parancs kiadása után látható.
sata0/3::dsk/c4t3d0 disk connected configured ok

Ezt kell látnod ha ügyes voltál. Minden parancsnak van leírása amit a man előtéttel meg is nézhetsz.

man cfgadm### Pl.
format -e

És folytatod mint az USB-nél. A végén ezt kell látnod, és plusz a két USB-t.

root@openindiana:/home/brogyi# cfgadm
Ap_Id Type Receptacle Occupant Condition
sata0/0::dsk/c4t0d0 disk connected configured ok
sata0/1::dsk/c4t1d0 disk connected configured ok
sata0/2::dsk/c4t2d0 disk connected configured ok
sata0/3::dsk/c4t3d0 disk connected configured ok
usb9/4 usb-storage connected configured ok
usb11/1 usb-storage connected configured ok

Jöhet a létrehozás.

zpool create nasi raidz c4t0d0 c4t1d0 c4t2d0 c4t3d0
### "nasi" helyett a "tank" szöveget találod a leírásokban. Az a neve a RAID tömbödnek.

Ez a create rendkívül rövid idő alatt lezajlik. Nem egy nap. Egyedül a méret legyen azonos. Sem a firmware, sem a gyártó, sem a típus nem számít. Nálam 4 különböző korú, típusú HDD van, és működik hiba nélkül. Sajnos a beszerzés is belejátszott ebbe, meg a lehetőségeim is.

root@openindiana:/home/brogyi# zpool status
pool: nasi
state: ONLINE
scan: none requested
config:

NAME STATE READ WRITE CKSUM
nasi ONLINE 0 0 0
raidz1-0 ONLINE 0 0 0
c0t50014EE25F963534d0 ONLINE 0 0 0
c0t50014EE20A40FBA8d0 ONLINE 0 0 0
c0t50014EE003CC90E6d0 ONLINE 0 0 0
c0t50014EE003CCD190d0 ONLINE 0 0 0

errors: No known data errors

pool: rpool1
state: ONLINE
scan: none requested
config:

NAME STATE READ WRITE CKSUM
rpool1 ONLINE 0 0 0
mirror-0 ONLINE 0 0 0
c0t5000CCA7F1C42DCDd0 ONLINE 0 0 0
c0t5000C5009D417A69d0 ONLINE 0 0 0

errors: No known data errors

Említettem a tesztet is hogy gyakran hibáznak. A teszt file méret szoros kapcsolatban áll a RAM méretével. Ez természetesen a dd-s mérésre vonatkozik. Kilövünk minden szolgáltatást ami terhelhet. Most nincs elindítva semmi, bár egy futó szerveren az ftp-t, a torrent-et, web szervert ki kell lőni, és még ami terheli a rendszert.

time sh -c "dd if=/dev/zero of=/nasi/joe/ddfile bs=8k count=4000000 && sync"
### Kétszer akkora file kell mint a RAM-od mérete(RAM 16G).
real 3m47.525s ### Ez a lényeges adat, és a ddfile mérete:31250M.

Tehát az írási sebesség 137,35MB/s. Nagyon meglepő egy ócska noti HDD-től.

dd if=/dev/zero of=/nasi/joe/ddfile2 bs=8k count=1000000
### Ha két RAM modulod van akkor itt az egy modul méret a lényeg(8G).

Feleslegesnek tűnik, de nem kihagyható.

time dd if=/nasi/joe/ddfile of=/dev/null bs=8k

Ez pedig az olvasás teszt.

real 3m20.776s#155,65MB/s olvasási sebesség.

Ha kisebb a RAM-od nem gond, változtatás nélkül is jól mér csak indokolatlanul hosszabb ideig fogja csinálni. Látszik, hogy csak a "count" értéke változik. Lehet leszólni ezt a módszert, de hajszálra jó eredményt hozott a samu SSD mérésénél is. Felhívom a tanult kollégák figyelmét nem a CPU usage hanem a CPU load a lényeges, és a kernel terhelése. Ez a szambánál is igaz. Sajnos az én estemben a CPU load 2 fölé került ami a CPU limit-et, gyengeséget mutat. Végére maradt a szamba ami bonyolult linuxon is.

FTP, Apache engedélyezés/tiltás

### inetadm -e ftp ### Engedélyezés régen.
### inetadm -d ftp ### Tiltás régen.
svcadm enable proftpd ### Engedélyezés. Disable Tiltás
svcs -a | grep -i http ### Az Apache fut-e?
svcadm -v enable /network/http:apache22
svcadm disable apache22
###web dir helye: /var/apache2/2.2/htdocs/

:)

És már működik is. Alapból tartalmaz a rendszer ftp-t, ssh-t, apache-t, talán még mysql-t is, csak engedélyezni kell, és beállítani. A beállításnál kérdezzünk meg tapasztaltabbakat is a biztonság miatt. Az ssh alapból engedélyezett.

root crontab

sudo su
crontab -l
crontab -e
1 3 1,15 * * [ -x /usr/sbin/zpool ] && /usr/sbin/zpool scrub rpool
11 3 1,15 * * [ -x /usr/sbin/zpool ] && /usr/sbin/zpool scrub nasi

A crontab helye, mert utálom a vi-t:
/var/spool/cron/crontabs/

Ez egy kimondottan gagyi (nem RED) HDD-k ellenőrzésére szolgáló beállítás. A profibbakat 1 vagy akár 3 hónapra is beállíthatjuk.

Szamba szolgáltatás

zfs create nasi/joe
zfs create nasi/family_picture

Ékezeteket ne használj. Ezért "picture", és nem "képek". A zfs create nálam csak a felhasználókra korlátozódik. Így a Munin szépen mutatja a delikvens HDD helyfoglalását. Később a felhasználók annyi directory-t csinálnak amennyit akarnak. Fontos, hogy az elején történjen meg ez a zfs create dolog.
Csak ismételni tudom magam, ezek az én igényeim miatt alakultak ki így. Eltérni csak akkor térj el ha tudod, és érted, hogy mit csinálsz. Az rtorrent-nél is jelentkeztek, hogy nem megy, és kiderült, hogy módosított, de nem mindenhol, és nem is ment. Vissza a szambához.

zfs list### Parancs kiírja az eredményt.
zfs set sharesmb=on nasi/joe
zfs set sharesmb=on nasi/family_picture
chown -R joe:staff /nasi/joe
chown -R joe:staff /nasi/family_picture
### Itt trükközni kell az olvashatóság, és a törlési jogok miatt.
chmod -R 755 /nasi/family_picture### Ez nem teljes, de itt nagyon egyedi lehet.
smbadm join -w WORKGROUP
### Itt a "WORKGROUP" a windows-od szamba megosztás neve lenne.
### Cseréld ki a tiédre, mert ez csak példa!
Successfully joined workgroup 'WORKGROUP'
nano /etc/pam.conf
other password required pam_smb_passwd.so.1 nowarn### Illeszd be az utolsó sorba.
passwd joe
### A szamba miatt újra megadod. Nem muszáj újat adni.
### Aki már szambázott annak ez nem új.
svcadm enable -r smb/server
svcadm restart network/smb/server:default

Ha win-ről nehezen látszik akkor a \\OPENINDIANA beírásával érünk el eredményt, és máris látszik a megosztás.
Nem szoktam megváltoztatni rendszer nevét, de ha telepítésnél megtetted akkor azt írd be.
nasi/joe ### openindiana path
nasi_joe ### windows így jeleníti meg az előzőt.

Netbios változás

sharectl get smb command | grep netbios_enable

Amennyiben a Netbios false úgy azt át kell váltani true pozicióba a következő parancs kiadásával.

sharectl set -p netbios_enable=true smb

És ennyi, bár látszik, hogy sok a sóder, de higgyétek el megéri.

Guest elérés

Az ES File Explorer elérés miatt szükséges lehet. Nehezen találtam meg, de így nagyon egyszerű.

zfs set sharesmb=name=nasi_zsuzsi,guestok=true nasi/zsuzsi
### win name=nasi_zsuzsi, OI name/path= nasi/zsuzsi
zfs get all | grep sharesmb ### Check it.

LSI SAS 9211-8i IT EFI firmware upgrade

Töltsd le a 9211_8i_Package_P19_IR_IT_Firmware_BIOS_for_MSDOS_Windows firmware-t.
Sajnos a 18-as vagy a 19-es ajánlott. A 20-as bugos. Milyen furcsa, hogy a 20-as Avago, míg a 19-től lefele LSI. Becsületükre legyen mondva azért levették a 20-ast ha nem is olyan rögtön.
Töltsd le a Installer_P19_for_UEFI-t.
Gyüjtsd össze a következő file-kat.

9211_8i_Package_P19_IR_IT_Firmware_BIOS_for_MSDOS_Windows\Firmware\HBA_9211_8i_IT\2118it.bin
9211_8i_Package_P19_IR_IT_Firmware_BIOS_for_MSDOS_Windows\sasbios_rel\mptsas2.rom
Installer_P19_for_UEFI\sas2flash_efi_ebc_rel\sas2flash.efi

Shell.efi/shellx64.efi. A név az mindegy.
[Ez múködött nekem.]
[Ez esetleg másoknak fog működni.] Itt az EFI shell elérése a cél.
Formázz meg egy USB cerkát MBR/FAT-re. Nem kell, hogy boot-olható legyen mert EFI-t használunk.
A fenti file-okat másold rá. A root-ban legyen a "Shell.efi". Nálam volt egy 9211 dir is. Itt voltak a file-k.
Alaplapod BIOS-ában keresd meg az EFI shell lehetőségét. Zömében sárga betűs terminál ablakot látsz ha bejutottál.
map ### Ha nem jelenne meg a drive lista.
mount fs2 ### Ez a cerkád. Nálam ez volt.
fs2:
ls
cd 9211 ### A 9211 a dir neve.
sas2flash.efi -o -e 6 ### Ne kapcsold ki, ne indítsd újra!!!
sas2flash.efi -o -f 2118it.bin -b mptsas2.rom
sas2flash.efi -listall ### Ellenőrzés.
sas2flash.efi -list ### Ellenőrzés.

Tapasztalatok

Sajnos nálam nem megy az USB-s rendszer. Nem egész 60 nap alatt a mirror egyik darabja elhalálozott. Most a szervizben van, de már nem kerül vissza a rendszerbe. A helyzet az a következő. Igazából egy hetet se bír ki, mert a scrub parancs után szépen látszik a hibázás. Inkább írnék arról, hogy mi van most bent a rendszerben.
Korábban is szemeztem vele, de úgy gondoltam az USB-s eszköz jobb lesz, mert nincs benne mozgó alkatrész. Az új eszköz Asus Eee Super Slim External 30G HDD. Természetesen ez is USB-s felület, és mirror-ba van telepítve. Az eltelt rövid 1 hét alatt volt egy áramszünet amit simán hiba nélkül átélt. Szerintem ez lesz a befutó. Így megmarad az alaplap összes SATA csatlakozója a RAID-nek. Van egy furcsa tulajdonsága ami előnye is lehet, vagy pedig az életét fogja megrövidíteni. A kis box firmware-je szinte másodpercek alatt kikapcsolja a HDD pörgetését. A belépésnél bizony várni kell rá.
Az aranyos profik biztos be fognak szólni, hogy vazeg nem jól konfiguráltad be az os-t. Igen, biztos, de akkor hogyan? :F
[HDD]

Hozzászólások

(#1) Vakegérke


Vakegérke
veterán

Ha ez élőszóban hangzott volna el, és élőszóban érzékelhetőek lennének az írási hibák, befogtam volna a fülem.
Lehet, hogy szakmai guru vagy, de ahogy írsz, az csapnivaló. Már csak az a kérdés, hogy te vagy a hibás, vagy azok a tanárok, akik nyelvtanból átengedtek a vizsgákon.
Írásjelek után kötelező egy szünet, (space,) és nem ártana tagolni a szöveget. Ilyen formában csak egy ömlesztett betűhalmaz az egész, elvész az értéke.

Szép szolidan, szép szolidan, elvégre nem vagyunk otromba állatok... (KFT) Birodalmi Szóvivő és Békenagykövet (:L topic)

(#2) Brogyi válasza Vakegérke (#1) üzenetére


Brogyi
senior tag

Azt hiszem igazad van.Nincs miért haragudnom.Köszi a beírást.Amikor én jártam iskolába nem volt PC.
Így a space ismeretlen volt számunkra.

[ Szerkesztve ]

(#3) Vakegérke válasza Brogyi (#2) üzenetére


Vakegérke
veterán

Első indulatból kritizáltalak, elnézést kérek kirohanásom miatt. :B

Látom, átszerkesztetted az írást, ez dicséretes. Azonban huncut módon a hozzászólásban kihagytad a szüneteket az írásjelek mögül. :)

Már majdnem jó, csak olyan ömlesztett az egész. Aki ránéz, az nem biztos, hogy kedvet kap elolvasására. Pár ENTER, üres sor, új bekezdés nem ártana. Levegősebb, tagoltabb lenne az írásod.

Szép szolidan, szép szolidan, elvégre nem vagyunk otromba állatok... (KFT) Birodalmi Szóvivő és Békenagykövet (:L topic)

(#4) Brogyi válasza Vakegérke (#3) üzenetére


Brogyi
senior tag

Mint írtam igazad van. Nincs miért haragudnom. :R

(#5) Vakegérke válasza Brogyi (#4) üzenetére


Vakegérke
veterán

Khm...
Egész pofás lett az írásod. :K

Már csak az első betűhalmazt kéne tagolnod, és akkor még cuppantanék is egy nagyot, hogy ez már igen!

Egyébként illő tisztelettel köszönöm, hogy felháborodás helyett inkább tanácsként értelmezted mindazt, amit mondtam. :)

Szép szolidan, szép szolidan, elvégre nem vagyunk otromba állatok... (KFT) Birodalmi Szóvivő és Békenagykövet (:L topic)

További hozzászólások megtekintése...
Copyright © 2000-2024 PROHARDVER Informatikai Kft.