Bygge en 200TB Chia Farming Rig PlatoBlockchain Data Intelligence. Vertikalt søk. Ai.

Bygge en 200TB Chia Farming Rig

En fullstendig gjennomgang fra komponentvalg til programvarekonfigurasjon for et Chia-kryptovalutaoppdrettssystem (gruvedrift).

Bygge en 200TB Chia Farming Rig PlatoBlockchain Data Intelligence. Vertikalt søk. Ai.

Chia er en ny kryptovaluta som tar sikte på å oppnå desentralisert konsensus med lavere energiforbruk per transaksjon enn sine jevnaldrende. Dette oppnås via en bevis på romalgoritmen istedenfor bevis på arbeid.

Mens bevis på arbeid er avhengig av kontinuerlig beregning av et matematisk problem (vanligvis hasher som SHA256) i et forsøk på å finne resultater som samsvarer med et ønsket mønster, stoler Chia i stedet på å sjekke om det finnes visse egenskaper i unike forhåndsgenererte filer kalt plott.

Dette gjøres i en to-trinns prosess kalt oppdrett bestående av:

  1. plotting hvor store unike filer (vanligvis 101.6 GB) opprettes.

Jo flere plott (større lagring som brukes) en node har, desto større er sjansen for å vinne den blokkens belønning. Det er 4608 sjanser til å vinne daglig, og sannsynligheten for å vinne den blokkens belønning er hovedsakelig basert på antall tomter man eier i forhold til den totale nettverksstørrelsen. En inntektskalkulator følger med her..

Derfor, for å maksimere belønningene ønsker vi å ha størst mulig lagringsplass og nok dataressurser til å fylle opp lageret med plott.

Som med de fleste designproblemer, finnes det en uendelighet av gyldige løsninger på kombinasjonen av enheter som kan brukes til å dyrke Chia. For å begrense alternativene begynte jeg med å bestemme meg for noen begrensninger og prioriteringer:

  1. Kostnaden i $/TB bør minimeres til tross for ytterligere kompleksitet (innen rimelighetens grenser).

Plotte - Bearbeiding

Avhengig av maskinvareoppsettet kan det ta mellom 4 og 20 timer å lage et enkelt plott. Derfor kan å velge riktig plotting maskinvare være forskjellen mellom å fylle opp hele gården din på dager kontra måneder.

Det er viktig å vurdere ikke bare hastigheten som hvert plott lages med, men også antall samtidige plott som kan opprettes. For eksempel vil et oppsett som lager 10 samtidige plott på 12 timer hver produsere 20 plott (~2TB/dag), mens et oppsett som plotter 1 samtidige plott hver 4. time bare vil produsere 6 plott per dag (0.6TB/dag).

For å minimere kostnadene bestemte jeg meg for å søke etter utrangerte servere. Disse serverne har noen interessante egenskaper som kan gjøre dem til kraftige plottere, inkludert:

  1. Stort antall kjerner kan tillate flere parseller parallelt. Fase 1 (omtrent halvparten av plotttiden) er flertrådet (vanligvis konfigurert til å være mellom 2 og 4 tråder), men de resterende fasene er enkeltgjengede.

Etter å ha gått over dusinvis av alternativer og mulige konfigurasjoner, nøyde jeg meg med en HP ProLiant DL380p Gen8 med 2x Intel E5–2670 og 192 GB DDR3 RAM. Med hyper-threading aktivert, kan denne serveren hypotetisk støtte plotting av opptil 16 plott samtidig i fase 1 for under $400.

Tomting — Midlertidig lagring

På grunn av den høye skrivebelastningen under tomteopprettingen (rundt 1.6TB skrevet for en k=32 tomt), kan valget av midlertidig lagringsmedium ha en betydelig innvirkning på plottetiden og -kostnaden. Noen få punkter å vurdere:

  1. Jo raskere lagring, desto raskere kan plott lages. Denne tråden diskuterer 4 timers plottider ved hjelp av RAMDISK (monter en mappe til RAM).

Jeg endte opp med å kjøpe en 12-bays HP StorageWorks D2600 med 15K 450GB SAS-stasjoner. Med dette oppsettet kan jeg plotte til hver stasjon samtidig uten å risikere IO-strid på stasjonsnivå. JBOD +-stasjonene var betydelig billigere enn et tilsvarende oppsett med NVMe-stasjoner (uten engang å ta hensyn til erstatningskostnaden etter at TBW er nådd).

Gård — Langtidslagring

I motsetning til plottinglageret krever ikke høstelageret høy gjennomstrømning eller IOPs. Av denne grunn var det høyeste prioritet å redusere kostnadene.

Det er flere mulige oppsett hvorav noen er diskutert her.. Etter å ha søkt på eBay etter brukte alternativer, ble imidlertid et par ting klart:

  1. De større 3.5-tommers harddiskene har en tendens til å ha den laveste kostnaden. Dette er fornuftig siden de fleste enheter i dag har flyttet til de mindre 2.5" eller 1.8" størrelsene.

Da jeg begynte å bruke 3.5-tommers SAS-harddisker, trengte jeg å finne en måte å faktisk koble dem til høsteren/plotteren min. Ved å holde meg til begrensningen med å ikke bygge kabinettet/bakplanet begynte jeg å se etter brukte kabinetter som kunne huse disse stasjonene og samtidig opprettholde den laveste kostnaden per bay.

Jeg kom over flere alternativer på eBay og endte opp med å kjøpe noen forskjellige modeller, inkludert en 24-bay HP 3PAR og to 12-bay IBM DS3512.

Full liste

Den endelige listen over komponenter vises nedenfor. Den inkluderer hovedkomponentene diskutert ovenfor, men også tilleggsdeler som kreves for å sette sammen systemet.

En verdig omtale er HBA-kortet. Det er PCIe-kortet som avslører de eksterne SAS-kontaktene som kablene fra JBOD-ene skal kobles til. Når du kjøper det, sørg for at du får et initiator target (IT) moduskort slik at stasjonene vises direkte til operativsystemet i motsetning til et IR-moduskort. Som en fin å ha, kan det være lurt å få et kort flashet med et nyere OS (versjon 20).

Oppsettet er stort sett intuitivt. Kabler kobles til hullene der de passer. SAS-kablingen som kobler sammen JBOD-ene og plotte-/høstemaskinen er imidlertid kjettingbare.

I mitt tilfelle har jeg to kabler som forlater serveren (en på hver port fra HBA). En av kablene kobles til inngangen til den midlertidige lagringsarrayen (HP D2600), og utgangen til den arrayen kobles til HP 3PAR-arrayen. Den andre kabelen kobles til den første IBM-gruppen, og utgangen fra den kobles til den andre IBM-gruppen. JBOD-ene har vanligvis en inngangsport (primær) og en utgangsport (vanligvis merket med en pil utover).

Jeg installerte Ubuntu LTS 20.04 på serveren siden det er en mye brukt Linux-distribusjon, noe som betyr at det ville være lettere å finne feilsøkingsfora hvis det skulle oppstå problemer. Trinnene nedenfor skisserer gjenværende konfigurasjon.

Trinn 1: Sørg for at alle stasjoner er tilgjengelige

Det første trinnet er å sjekke hvilke stasjoner som blir oppdaget av OS. Dette kan oppnås ved å kjøre lsscsi kommando. Utgangen er vist nedenfor.

Merk at kommandoen ovenfor ikke gir informasjon om filsystemet eller størrelsen på stasjonene. For det, kjør lsblk kommando.

Viktig: Merk at ikke alle stasjoner vises under begge kommandoene! Stasjonene som vises under lsscsi men ikke lsblk kan ha noe inkompatibilitet som gjør at operativsystemet ikke gjør dem tilgjengelige for montering osv. Et eksempel på dette er /dev/sdaw.

I mitt tilfelle ble dette problemet forårsaket på grunn av at sektorstørrelsen var 520 som ikke støttes av min installerte Linux-kjernen (diskusjon om dette emnet kan bli funnet her. og her.). Du kan finne ut om dette er ditt tilfelle ved å se over dmesg kommandologgen for en feilmelding som [sdaw] Unsupported sector size 520.

For å løse dette formaterte jeg stasjonene med en blokkstørrelse på 512 med kommandoen sg_format -v --format --size=512 /dev/sdX. Denne kommandoen kan ta en betydelig mengde tid å kjøre (flere timer), og utdataene vises nedenfor.

Etter fullføring skal stasjonen vises i lsblk utgang.

Trinn 2: Opprett filsystem på stasjoner

For å formatere stasjonene med ext4 filsystem, kjørte jeg følgende kommando: sudo mkfs -t ext4 — verbose /dev/sda.

Trinn 3: Monter stasjoner

Nå som vi har tilgang til stasjonene og de har blitt formatert med ønsket filsystem, kan vi montere disse stasjonene.

  1. Lag mappene der vi skal montere stasjonene. For eksempel: /mnt/farm/00 til /mnt/farm/23 for stasjonene som skal lagre de endelige tomtene, og /mnt/plot-tmp/00 til /mnt/plot-tmp/11 for de midlertidige plottestedene.

Trinn 4: Kjør Chia Blockchain-programvare

  1. Følg de offisielle instruksjonene som er spesifisert her. for å installere Chia blockchain (jeg installerte ikke GUI).

Trinn 5: Konfigurer Plotman (valgfritt)

Plotman er en plottesjef som skal overta opprettelsen av nye plottejobber. Det er et praktisk verktøy (ikke nødvendig).

  1. Installer Plotman ved å følge instruksjonene her..
brukergrensesnitt:
use_stty_size: Sant
kataloger:
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 FULL
#- /mnt/farm/01 FULL
#- /mnt/farm/02 FULL
#- /mnt/farm/03 FULL
#- /mnt/farm/04 FULL
#- /mnt/farm/05 FULL
#- /mnt/farm/06 FULL
#- /mnt/farm/07 FULL
#- /mnt/farm/08 FULL
#- /mnt/farm/09 FULL
#- /mnt/farm/10 FULL
#- /mnt/farm/11 FULL
- /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
planlegging:
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
avstemningstider: 30
plotte:
k: 32
e: False # Bruk -e plotting alternativ
n_threads: 2 # tråder per jobb
n_buckets: 128 # Antall buckets å dele data inn i
jobbbuffer: 8096 # Per jobbminne

Noen punkter verdt å nevne:

  1. Plotman slutter ikke å planlegge til gårdsstasjoner (i skrivende stund) når stasjonen er full. Derfor må du fjerne dem (eller kommentere dem som ovenfor).

Trinn 6: Kjør plotteren

På dette tidspunktet er alt som trengs for å begynne å plotte å kjøre plotman interactive.

Merk: Den svært langvarige jobben som plotter til /dev/farm/usb2 er en feilsøkingskjøring som ikke er ment å kjøre til fullføring.

Håper denne kan var nyttig for å gi deg en idé om hva som kreves for å dyrke Chia!

Per nå er gården min 1/3 av veien full, og jeg planlegger å legge ut oppdateringer etter hvert som den fylles opp og når jeg begynner å planlegge for bassenger på nytt.

Spesiell takk til Katie Gandomi for hjelp til utvikling.

Lykkelig jordbruk!

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

Tidstempel:

Mer fra Medium