Nagu paljud teised MacBook Pro kasutajad, olen ma kokku puutunud sisemälu puudumise probleemiga. Täpsemalt oli minu igapäevaselt kasutusel olnud rMBP varustatud vaid 256GB SSD-ga, mis ei olnud loomulikult piisav pikaks ajaks.
Ja kui lisaks sellele hakkasin filmima videoid oma lendude ajal, olukord ainult halvenes. Filmitud materjali maht selliste lendude järel ulatus üle 50 GB, ja minu õnnetu 256GB SSD täitus väga kiiresti, sundides mind ostma välist 1TB kõvaketast. Siiski, aasta pärast ei suutnud ka see enam hakkama saada minu genereeritud andmemahtudega, rääkimata sellest, et puudulik redundantsus ja varundamine tegid selle asjakohase teabe hoidmiseks sobimatuks.
Sel hetkel otsustasin kokku panna suure mahutavusega NAS-i, lootuses, et see süsteem peab vastu vähemalt paar aastat, ilma et oleks vaja järgmist uuendust.
Selle artikli kirjutasin peamiselt meeldetuletuseks, mida ja kuidas ma tegin, juhuks kui mul peaks olema vaja seda uuesti teha. Loodan, et ka teile osutub see kasulikuks, kui otsustate teha sama.
Kas poleks lihtsam osta?
Nii et me teame, mida me soovime, jääb küsimus, kuidas?
Esmalt tutvusin kaubanduslike lahendustega ja uurisin eelkõige ettevõtet Synology, mis pidi pakkuma parimaid tarbijataseme NAS-süsteeme turul. Kuid selle teenuse hind osutus üsna kõrgeks. Odavaim 4-ahelaga süsteem maksab üle 300 dollari, ka kõvakettad ei kuulu komplekti. Lisaks ei ole sellise komplekti sisemine sisu erilist muljetavaldav, mis seab kahtluse alla selle tegeliku jõudluse.
Siis mõtlesin: miks mitte kokku panna NAS-server ise?
Sobiva serveri otsimine
Kui plaanid sellise serveri kokku panna, tuleb kõigepealt leida õige riistvara. Selle kogumise jaoks sobib üsna hästi kasutatud server, kuna salvestusülesannete tegemiseks ei vaja me suurt jõudlust. Olulised nõudmised on suur RAM-maht, mitu SATA ühendust ja head võrkaardid. Kuna minu server töötab minu püsivalt elukohas, on ka müratase oluline.
Oma otsingud alustasin eBayst. Kuigi leidsin sealt palju kasutatud Dell PowerEdge R410/R210, mille hind oli alla 100 dollari, teadis mu serveriruumis saadud kogemus, et need 1U seadmed on liiga lärmakad ja koju ei sobi. Üldiselt on tower-formaadis serverid sageli vähem lärmakad, kuid kahjuks oli eBay's neid vaid vähe, ning kõik olid kas kallid või nõrgad.
Järgmine koht, kus otsisin, oli Craigslist, kus leidsin inimese, kes müüs kasutatud HP ProLiant N40L vaid 75 dollari eest! Olin nendest serveritest tuttav, kuna kasutatuna maksavad need tavaliselt umbes 300 dollarit, seega saatsin müüjale kirja lootuses, et kuulutus on ikka veel aktiivne. Kui sain kinnituse, et see on tõsi, suundusin kiiresti San Mateosse, et see server kätte saada, mis juba esimesest pilgust minu meelt rõõmustas. Sellel oli minimaalne kulumine ja välja arvatud väike tolmukate, oli kõik muude omaduste osas suurepärane.

Serveri foto kohe pärast ostu
Siin on spetsifikatsioon komplektil, mille ostsin:
- CPU: AMD Turion(tm) II Neo N40L kahetuumaline protsessor (64-bit)
- RAM: 8 GB non-ECC RAM (eelmine omanik paigaldas)
- Flash: 4 GB USB Drive
- SATA ühendused: 4 + 1
- NIC: 1 Gbps integreeritud NIC
Tuleb mainida, et vaatamata mitme aasta vanusele ületab selle serveri spetsifikatsioon endiselt enamikku NAS-süsteemide valikutest turul, eriti mälu poolest. Mõni aeg hiljem tegin isegi uuenduse 16 GB ECC RAM-ile, millel on suurem puhvrimaht ja paremad andmekaitse omadused.
Kõvakettade valik
Nüüd on meil suurepärane töötav süsteem ja tuleb leida sobivad kõvakettad. Selgelt sain selle 75 dollari eest ainult serveri, ilma HDD-ta, mis mind ei üllatanud.
Veidi uurides selgus, et NAS-süsteemide pidevaks töötamiseks 24/7 sobivad kõige paremini HDD WD Red. Nende ostmiseks pöördusin Amazonisse, kus soetasin 4 tükki, igal 3 TB. Sisuliselt võite ühendada iga meelepärase HDD, kuid veenduge, et need oleksid sama mahtuvuse ja kiirusklassiga. See aitab vältida võimalikke probleeme RAID-i jõudlusega tulevikus.
Süsteemi seadistamine
Arvan, et paljud kasutavad oma NAS-kogude jaoks süsteemi , ja selles ei ole midagi halba. Siiski, kuigi on võimalik käitada seda süsteemi oma serveris, eelistan ma kasutada CentOSi, kuna ZFS Linuxi peal on algselt ette valmistatud tootmisettevõtte keskkonnas, ja Linuxi serverite haldamine on mulle tuttavam. Lisaks ei huvitanud mind FreeNASi moodne liides ja selle pakutavad funktsioonid – mulle piisas RAIDZ massiivist ja AFP jagamisest.
CentOSi installimine USB-le on piisavalt lihtne – piisab, kui valida USB käivituseks, ja installatsiooni seadistamise wizard juhatab teid läbi kõik etapid.
RAIDi koostamine
Pärast CentOSi eduka installimise lõpetamist installisin ka ZFS Linuxi peal, järgides loetletud .
Selle protsessi lõpuleviimise järel laadisin ZFS Kernel mooduli:
$ sudo modprobe zfs Ja lõin RAIDZ1 massiivi käsu abil zpool:
$ sudo zpool create data raidz1 ata-WDC_WD30EFRX-68AX9N0_WD-WMC1T0609145 ata-WDC_WD30EFRX-68AX9N0_WD-WMC1T0609146 ata-WDC_WD30EFRX-68AX9N0_WD-WMC1T0609147 ata-WDC_WD30EFRX-68AX9N0_WD-WMC1T0609148
$ sudo zpool add data log ata-SanDisk_Ultra_II_240GB_174204A06001-part5
$ sudo zpool add data cache ata-SanDisk_Ultra_II_240GB_174204A06001-part6 Pange tähele, et siin kasutan kõvakettaste ID-sid nende kuvatud nimede asemel (sdx), et vähendada tõenäosust nende mountimise ebaõnnestumisel pärast käivitamist, kuna tähtedega seotud tunnused on muutunud.
Lisaks lisasin ZIL-i ja L2ARC vahemälu, mis töötavad eraldi SSD-l, jagades selle SSD kaheks partitsiooniks: 5GB ZIL jaoks ja ülejäänud L2ARC jaoks.
RAIDZ1 osas võib see taluda ühe ketta rikke. Paljud väidavad, et seda massiivi ei tohiks kasutada, kuna on tõenäosus, et teine ketas ebaõnnestub RAIDi uuesti koostamisel, mis võib kaasa tuua andmete kaotamise. Ma ignoreerisin seda soovitust, kuna tegin regulaarselt varukoopiaid olulistest andmetest eemal asuvale seadmele, ja isegi kogu massiivi rikete korral võib see mõjutada ainult andmete kättesaadavust, kuid mitte nende säilimist. Kui teil ei ole võimalust varukoopiaid teha, on parem kasutada lahendusi nagu RAIDZ2 või RAID10.
Massiivi loomise eduka kvaliteedi kinnitamiseks võite käivitada:
$ sudo zpool statusja
$ sudo zfs list
NAME USED AVAIL REFER MOUNTPOINT
data 510G 7.16T 140K /mnt/data ZFS monteerib vaikimisi just loodud massiivi otse /, mis on tavaliselt soovimatu. Seda saab muuta, käivitades:
zfs set mountpoint=/mnt/data dataSiit saate valida, kas luua üks või mitu andmebaasi andmete salvestamiseks. Olen loonud kaks, ühe Time Machine'i varundamiseks ja teise üldiseks failide salvestamiseks. Asetasin Time Machine'i andmebaasile kvota 512 GB, et vältida selle lõputut suurenemist.
Optimeerimine
zfs set compression=on dataSee käsk lubab ZFS-i tihendamise toetuse. Tihendamine kasutab minimaalset CPU võimsust, kuid võib märkimisväärselt parandada I/O jõudlust, seega soovitatakse seda alati kasutada.
zfs set relatime=on data Selle käsuga vähendame uuenduste arvu atime, et vähendada IOPS-i genereerimist failidele juurdepääsul.
Vaikimisi kasutab ZFS Linuxis ARC jaoks 50% füüsilisest mälust. Minu juhul, kui failide kogus on väike, saab seda mahtu ohutult suurendada 90%-ni, kuna muid rakendusi serveris ei tööta.
$ cat /etc/modprobe.d/zfs.conf
options zfs zfs_arc_max=14378074112Siis saab kasutada , et veenduda, et muudatused on jõustunud:
$ python arc_summary.py
...
ARC Size: 100.05% 11.55 GiB
Target Size: (Adaptive) 100.00% 11.54 GiB
Min Size (Hard Limit): 0.27% 32.00 MiB
Max Size (High Water): 369:1 11.54 GiB
...Korduvate ülesannete seadistamine
Olen kasutanud systemd-taimerite seadistamiseks, et puhastada kord nädalas ja automaatsete staatuste loomiseks iga 15 minuti, 1 tunni ja 1 päeva järel.
Netatalki seadistamine
on avatud rakenduse rakendus AFP (). Järgides Konfiguratsiooni seadistamine
$ cat /etc/netatalk/afp.conf [datong@Titan ~]$ cat /etc/netatalk/afp.conf ; ; Netatalk 3.x konfiguratsioonifail ;[Global] ; Üldised serveri seadistused mimic model = TimeCapsule6,106; [Homes] ; basedir regex = /home; [Minu AFP maht] ; path = /path/to/volume; [Minu Time Machine maht] ; path = /path/to/backup ; time machine = yes[Datongi failid] path = /mnt/data/datong valid users = datong[Datongi Time Machine'i varundused] path = /mnt/data/datong_time_machine_backups time machine = yes valid users = datong
vol dbnest Pange tähele, et on minu puhul oluline täiustus, kuna vaikimisi kirjutab Netatalk CNID andmebaasi failisüsteemi juure, mis oli üldse soovimatu, kuna minu põhi failisüsteem töötab USB-l, milles tagab madala jõudluse. Selle lubamine tähendab andmebaasi salvestamist Volume'i juure, mis viitab antud juhul ZFS-i puule ja on seega oluliselt efektiivsem. on minu puhul oluline täiustus, kuna vaikimisi kirjutab Netatalk CNID andmebaasi failisüsteemi juure, mis oli üldse soovimatu, kuna minu põhi failisüsteem töötab USB-l, milles tagab madala jõudluse. Selle lubamine Pordide lubamine tulemüüris
Firewali portide lubamine
$ sudo firewall-cmd --permanent --zone=public --add-service=mdns
$ sudo firewall-cmd --permanent --zone=public --add-port=afpovertcp/tcp sudo firewall-cmd —permanent —zone=public —add-port=afpovertcp/tcp
Kui kõik on õigesti seadistatud, peaks teie masin Finderis ilmuma ja ka Time Machine peaks töötama.
Täiendavad seaded
S.M.A.R.T jälgimine
Soovitame jälgida oma ketaste olekut, et ennetada nende riket.
$ sudo yum install smartmontools
$ sudo systemctl start smartdUPS daemon
Jälgib APC UPS-i laadimist ja välgutab süsteemi, kui laadimine muutub kriitiliselt madalaks.
$ sudo yum install epel-release
$ sudo yum install apcupsd
$ sudo systemctl enable apcupsdRiistvarauuendus
Pärast süsteemi seadistamist hakkasin üha enam muretsema, et serveris on ECC-mäluga mälu. Lisaks on ZFS puhul täiendav mälu vahemälu jaoks tõeliselt teretulnud. Seetõttu pöördusin taas Amazonisse, kust ostsin 2x Kingston DDR3 8GB ECC RAMi 80 dollari eest tükk ja asendasin senise töötava RAM-i, mille eelmine omanik oli paigaldanud. Süsteem käivitus esimesel korral probleemideta ja veendusin, et ECC tugi oli aktiivne:
$ dmesg | grep ECC
[ 10.492367] EDAC amd64: DRAM ECC enabled.Tulemus
Tulemus rõõmustas mind väga. Nüüd saan pidevalt laadida 1Gbps LAN-ühendust serveri failide kopeerimisega ja Time Machine töötab veatult. Nii et kokkuvõttes olen seadistamisega rahul.
Kokkuhind:
- 1 * HP ProLiant N40L = 75 $
- 2 * 8 GB ECC RAM = 174 $
- 4 * WD Red 3 TB HDD = 440 $
Kokkuvõttes = $689
Nüüd võin öelda, et hind oli seda väärt.
Kas teete NAS-servereid ise?
Allikas: habr.com
