Opbygning af en 200TB Chia Farming Rig PlatoBlockchain Data Intelligence. Lodret søgning. Ai.

Bygning af en 200TB Chia Farming Rig

En komplet gennemgang fra komponentvalg til softwarekonfiguration til et Chia-kryptovaluta-landbrugssystem (minedrift).

Opbygning af en 200TB Chia Farming Rig PlatoBlockchain Data Intelligence. Lodret søgning. Ai.

Del er en ny kryptovaluta, der sigter mod at opnå decentraliseret konsensus med et lavere energiforbrug pr. transaktion end sine jævnaldrende. Dette opnås via en bevis for rumalgoritmen i stedet for Bevis for arbejde.

Mens bevis for arbejde er afhængig af kontinuerlig beregning af et matematisk problem (normalt hashes såsom SHA256) i et forsøg på at finde resultater, der matcher et ønsket mønster, er Chia i stedet afhængig af at kontrollere eksistensen af ​​visse egenskaber i unikke forudgenererede filer kaldet plots.

Dette gøres i en to-trins proces kaldet landbrug bestående af:

  1. plotning hvor store unikke filer (normalt 101.6 GB) oprettes.

Jo flere plots (større brugt lagerplads) en node har, jo større er chancen for at vinde den pågældende bloks belønning. Der er 4608 chancer for at vinde dagligt, og sandsynligheden for at vinde den bloks belønning er primært baseret på antallet af plots, man ejer i forhold til den samlede netværksstørrelse. Der medfølger en indtjeningsberegner link..

Derfor, for at maksimere belønningerne ønsker vi at have den størst mulige lagerplads og nok computerressourcer til at fylde lageret op med plots.

Som med de fleste designproblemer er der en uendelighed af gyldige løsninger på kombinationen af ​​enheder, der kan bruges til at dyrke Chia. For at hjælpe med at indsnævre mulighederne startede jeg med at beslutte mig for nogle begrænsninger og prioriteter:

  1. Omkostningerne i $/TB bør minimeres på trods af yderligere kompleksitet (inden for rimelighedens grænser).

Plotning — Bearbejdning

Afhængigt af hardwareopsætningen kan et enkelt plot tage mellem 4 og 20 timer at oprette. Derfor kan valget af den rigtige plotting hardware være forskellen mellem at fylde hele din gård op på dage kontra måneder.

Det er vigtigt ikke kun at overveje hastigheden, hvormed hvert plot er lavet, men også antallet af samtidige plot, der kan oprettes. For eksempel vil en opsætning, der opretter 10 samtidige plots på 12 timer hver producere 20 plots (~2TB/dag), mens en opsætning, der plotter 1 samtidige plot hver 4. time, kun vil producere 6 plots pr. dag (0.6TB/dag).

For at minimere omkostningerne besluttede jeg at søge efter dekommissionerede servere. Disse servere har nogle interessante egenskaber, der kunne gøre dem til kraftfulde plottere, herunder:

  1. Stort antal kerner kan give mulighed for flere plots parallelt. Fase 1 (omkring halvdelen af ​​plottiden) er flertrådet (normalt konfigureret til at være mellem 2 og 4 tråde), men de resterende faser er enkelttrådede.

Efter at have gennemgået snesevis af muligheder og mulige konfigurationer, nøjedes jeg med en HP ProLiant DL380p Gen8 med 2x Intel E5–2670 og 192 GB DDR3 RAM. Med hyper-threading aktiveret, kunne denne server hypotetisk understøtte samtidig plotning af op til 16 plots i fase 1 for under $400.

Udlodning — Midlertidig Opbevaring

På grund af den høje skrivebelastning under plotoprettelsen (omkring 1.6 TB skrevet for ak=32 plot), kan valget af midlertidigt lagringsmedium have en betydelig indflydelse på plotningstiden og omkostningerne. Et par punkter at overveje:

  1. Jo hurtigere lagring, jo hurtigere kan plots oprettes. Denne tråd diskuterer 4 timers plottider ved hjælp af RAMDISK (monter en mappe til RAM).

Jeg endte med at vælge at købe en 12-bay HP StorageWorks D2600 med 15K 450GB SAS-drev. Med denne opsætning kan jeg plotte til hvert drev samtidigt uden at risikere IO-stridigheder på drevniveau. JBOD +-drevene var væsentligt billigere end en tilsvarende opsætning med NVMe-drev (uden selv at tage hensyn til udskiftningsomkostningerne, efter at TBW er nået).

Gård — Langtidsopbevaring

I modsætning til plotlageret kræver høstlageret ikke høj gennemstrømning eller IOP'er. Af denne grund var minimering af omkostninger den højeste prioritet.

Der er flere mulige opsætninger, hvoraf nogle diskuteres link.. Men efter at have søgt på eBay efter brugte muligheder, blev et par ting klart:

  1. De større 3.5" harddiske har tendens til at have de laveste omkostninger. Dette giver mening, da de fleste enheder i dag er flyttet til de mindre 2.5" eller 1.8" størrelser.

Da jeg først var begyndt at bruge 3.5" SAS-harddiske, var jeg nødt til at finde en måde at forbinde dem til min høstmaskine/plotter. Ved at holde fast i begrænsningen af ​​ikke at bygge kabinettet/bagplanet begyndte jeg at lede efter brugte kabinetter, der kunne huse disse drev og samtidig bevare den laveste pris pr.

Jeg stødte på flere muligheder på eBay og endte med at købe et par forskellige modeller, herunder en 24-bay HP 3PAR og to 12-bay IBM DS3512.

Fuld liste

Den endelige liste over komponenter er vist nedenfor. Det omfatter hovedkomponenterne diskuteret ovenfor, men også hjælpedele, der er nødvendige for at sætte systemet sammen.

En værdig omtale er HBA-kortet. Det er PCIe-kortet, der blotlægger de eksterne SAS-stik, som kablerne fra JBOD'erne vil forbinde til. Når du køber det, skal du sikre dig, at du får et initiator target (IT)-tilstandskort, så drevene vises direkte til OS i modsætning til et IR-tilstandskort. Som en rar at have, vil du måske få et kort flashet med et nyere OS (version 20).

Opsætningen er for det meste intuitiv. Kabler forbindes til de huller, de passer i. SAS-kablerne, der forbinder JBOD'erne og plotte-/høstemaskinen, kan dog kædes sammen.

I mit tilfælde har jeg to kabler, der forlader serveren (et på hver port fra HBA). Et af kablerne forbindes til indgangen på det midlertidige lagerarray (HP D2600), og outputtet fra det array forbindes til HP 3PAR-arrayet. Det andet kabel forbindes til det første IBM-array, og outputtet fra det forbindes til det andet IBM-array. JBOD'erne har normalt en input (primær) port og en output port (normalt mærket med en udadgående pil).

Jeg installerede Ubuntu LTS 20.04 på serveren, da det er en meget brugt Linux-distribution, hvilket betyder, at det ville være lettere at finde fejlfindingsfora, hvis der opstod problemer. Trinene nedenfor skitserer den resterende konfiguration.

Trin 1: Sørg for, at alle drev er tilgængelige

Det første trin er at kontrollere, hvilke drev der registreres af OS. Dette kan opnås ved at køre lsscsi kommando. Hvis output er vist nedenfor.

Bemærk, at ovenstående kommando ikke giver information om filsystemet eller størrelsen af ​​drevene. For det skal du køre lsblk kommando.

Vigtig: Bemærk, at ikke alle drev vises under begge kommandoer! De drev, der vises under lsscsi men ikke lsblk kan have en vis inkompatibilitet, der gør, at OS ikke gør dem tilgængelige for montering osv. Et eksempel på dette er /dev/sdaw.

I mit tilfælde var dette problem forårsaget på grund af, at sektorstørrelsen var 520, hvilket ikke understøttes af min installerede Linux-kerne (diskussion om dette emne kan findes link. , link.). Du kan afgøre, om dette er din sag ved at se over dmesg kommandoens log for en fejlmeddelelse som [sdaw] Unsupported sector size 520.

For at løse dette omformaterede jeg drevene med en blokstørrelse på 512 med kommandoen sg_format -v --format --size=512 /dev/sdX. Denne kommando kan tage en betydelig mængde tid at køre (adskillige timer), og outputtet er vist nedenfor.

Efter færdiggørelsen skal drevet dukke op i lsblk udgang.

Trin 2: Opret filsystem på drev

For at formatere drevene med ext4 filsystem, kørte jeg følgende kommando: sudo mkfs -t ext4 — verbose /dev/sda.

Trin 3: Monter drev

Nu hvor vi kan få adgang til drevene, og de er blevet formateret med det ønskede filsystem, kan vi montere disse drev.

  1. Opret mapperne, hvor vi skal montere drevene. For eksempel: /mnt/farm/00 til /mnt/farm/23 for de drev, der skal gemme de endelige plots, og /mnt/plot-tmp/00 til /mnt/plot-tmp/11 for de midlertidige plottesteder.

Trin 4: Kør Chia Blockchain Software

  1. Følg de angivne officielle instruktioner link. at installere Chia blockchain (jeg installerede ikke GUI).

Trin 5: Konfigurer Plotman (valgfrit)

Plotman er en plotleder, der skal overtage oprettelsen af ​​nye plottejobs. Det er et bekvemt værktøj (ikke påkrævet).

  1. Installer Plotman ved at følge instruktionerne link..
brugergrænseflade:
use_stty_size: Sandt
mapper:
log: /home/plotter/plotman-logs
tmp:
- /mnt/plot-tmp/f00
- /mnt/plot-tmp/f01
- /mnt/plot-tmp/f02
- /mnt/plot-tmp/f03
- /mnt/plot-tmp/f04
- /mnt/plot-tmp/f05
- /mnt/plot-tmp/f06
- /mnt/plot-tmp/f07
- /mnt/plot-tmp/f08
- /mnt/plot-tmp/f09
- /mnt/plot-tmp/f10
- /mnt/plot-tmp/f11
dst:
#- /mnt/farm/00 FULD
#- /mnt/farm/01 FULD
#- /mnt/farm/02 FULD
#- /mnt/farm/03 FULD
#- /mnt/farm/04 FULD
#- /mnt/farm/05 FULD
#- /mnt/farm/06 FULD
#- /mnt/farm/07 FULD
#- /mnt/farm/08 FULD
#- /mnt/farm/09 FULD
#- /mnt/farm/10 FULD
#- /mnt/farm/11 FULD
- /mnt/farm/12
- /mnt/farm/13
- /mnt/farm/14
- /mnt/farm/15
- /mnt/farm/16
- /mnt/farm/17
- /mnt/farm/18
- /mnt/farm/19
- /mnt/farm/20
- /mnt/farm/21
- /mnt/farm/22
- /mnt/farm/23
planlægning:
tmpdir_stagger_phase_major: 2
tmpdir_stagger_phase_minor: 1
tmpdir_stagger_phase_limit: 1
tmpdir_max_jobs: 1
global_max_jobs: 20
global_stagger_m: 40
afstemningstider: 30
plotte:
k: 32
e: Falsk # Brug -e plotting mulighed
n_tråde: 2 # tråde pr. job
n_buckets: 128 # Antal buckets at opdele data i
job_buffer: 8096 # Pr. jobhukommelse

Nogle punkter der er værd at nævne:

  1. Plotman stopper ikke med at planlægge til farm-drev (i skrivende stund), når drevet er fuldt. Derfor skal du fjerne dem (eller kommentere dem som ovenfor).

Trin 6: Kør plotteren

På dette tidspunkt er alt, hvad der er nødvendigt for at begynde at plotte, at køre plotman interactive.

Bemærk: Det meget langvarige job, der plotter til /dev/farm/usb2 er en fejlretningskørsel, der ikke er beregnet til at køre til fuldførelse.

Håber denne kan var nyttig til at give dig en idé om, hvad der kræves for at dyrke Chia!

Lige nu er min gård 1/3 af vejen fuld, og jeg planlægger at sende opdateringer, efterhånden som den fyldes op, og når jeg begynder at planlægge puljer igen.

Særlig tak til Katie Gandomi for hjælp til udvikling.

Godt landbrug!

Source: https://levelup.gitconnected.com/building-a-200tb-chia-farming-rig-c9478ed7b92f?source=rss——-8—————–cryptocurrency

Tidsstempel:

Mere fra Medium