Izdelava 200TB Chia Farming Rig PlatoBlockchain Data Intelligence. Navpično iskanje. Ai.

Izdelava 200TB Chia Farming Rig

Popoln pregled od izbire komponent do konfiguracije programske opreme za sistem za kmetovanje (rudarjenje) kriptovalut Chia.

Izdelava 200TB Chia Farming Rig PlatoBlockchain Data Intelligence. Navpično iskanje. Ai.

Chia je nova kriptovaluta, katere cilj je doseči decentraliziran konsenz z nižjo porabo energije na transakcijo kot pri podobnih. To se doseže z a dokaz vesoljskega algoritma Namesto dokazilo o delu.

Medtem ko se dokaz o delu opira na nenehno računanje matematične težave (običajno zgoščenih vrednosti, kot je SHA256) pri poskusu iskanja rezultatov, ki se ujemajo z želenim vzorcem, se Chia namesto tega zanaša na preverjanje obstoja določenih lastnosti v edinstvenih vnaprej ustvarjenih datotekah, imenovanih ploskve.

To poteka v dvostopenjskem procesu, imenovanem kmetovanje ki jo sestavljajo:

  1. Risba kjer se ustvarijo velike edinstvene datoteke (običajno 101.6 GB).

Več ploskev (več uporabljenega prostora za shranjevanje) kot ima vozlišče, večja je možnost, da dobite nagrado tega bloka. Dnevno je na voljo 4608 možnosti za dobitek in verjetnost za osvojitev nagrade tega bloka temelji predvsem na številu parcel, ki jih ima posameznik v sorazmerju s celotno velikostjo omrežja. Na voljo je kalkulator zaslužka tukaj.

Zato da bi povečali nagrade, želimo imeti največjo možno količino prostora za shranjevanje in dovolj računalniških virov za zapolnitev omenjenega pomnilnika z ploskvami.

Kot pri večini problemov načrtovanja, obstaja neskončnost veljavnih rešitev za kombinacijo naprav, ki se lahko uporabljajo za gojenje Chia. Da bi zožil možnosti, sem začel z odločitvijo o nekaterih omejitvah in prednostnih nalogah:

  1. Strošek v $/TB je treba zmanjšati kljub dodatni zapletenosti (znotraj razuma).

Izris — Obdelava

Odvisno od nastavitve strojne opreme lahko izdelava posamezne risbe traja od 4 do 20 ur. Zato je lahko izbira prave strojne opreme za risanje razlika med napolnitvijo vaše celotne kmetije v dnevih in mesecih.

Pomembno je upoštevati ne le hitrost, s katero je izdelana vsaka ploskev, ampak tudi število sočasnih ploskev, ki jih je mogoče ustvariti. Na primer, nastavitev, ki ustvari 10 sočasnih risb po 12 ur, bo proizvedla 20 ploskev (~2TB/dan), medtem ko bo nastavitev, ki izriše 1 sočasno risbo vsake 4 ure, ustvarila samo 6 ploskev na dan (0.6TB/dan).

Da bi zmanjšal stroške, sem se odločil poiskati odslužene strežnike. Ti strežniki imajo nekaj zanimivih lastnosti, zaradi katerih bi lahko postali močni risalniki, vključno z:

  1. Veliko število jeder lahko omogoča več ploskev vzporedno. Faza 1 (približno polovica časa izrisa) je večnitna (običajno konfigurirana med 2 in 4 niti), preostale faze pa so enonitne.

Po pregledu na desetine možnosti in možnih konfiguracij sem se zadovoljil s HP ProLiant DL380p Gen8 z 2x Intel E5–2670 in 192 GB DDR3 RAM-a. Z omogočeno hipernitnostjo bi lahko ta strežnik hipotetično podpiral istočasno risanje do 16 ploskev v fazi 1 za manj kot 400 USD.

Izris — Začasna hramba

Zaradi velike zapisovalne obremenitve med ustvarjanjem izrisa (približno 1.6 TB zapisanega za izris ak=32) lahko izbira medija za začasno shranjevanje pomembno vpliva na čas in stroške izrisa. Upoštevati je treba nekaj točk:

  1. Hitrejše kot je shranjevanje, hitreje je mogoče ustvariti risbe. Ta nit razpravlja o 4-urnem času izrisa z uporabo RAMDISK-a (vpetje mape v RAM).

Na koncu sem se odločil za nakup HP StorageWorks D12 z 2600 ležišči in 15 diski 450 GB SAS. S to nastavitvijo lahko hkrati izrisujem na vsak pogon, ne da bi tvegal IO spor na ravni pogona. Pogoni JBOD + so bili bistveno cenejši od enakovrednih nastavitev s pogoni NVMe (brez upoštevanja stroškov zamenjave po doseženem TBW).

Kmetija — dolgoročno skladiščenje

Za razliko od pomnilnika za načrtovanje, pomnilnik za žetev ne zahteva visoke prepustnosti ali IOP-jev. Iz tega razloga je bilo zmanjšanje stroškov največja prioriteta.

Obstaja več možnih nastavitev, od katerih so nekatere obravnavane tukaj. Po iskanju rabljenih možnosti na eBayu pa je nekaj stvari postalo jasnih:

  1. The larger 3.5″ hard drives tend to have the lowest cost. This makes sense since most devices nowadays have moved to the smaller 2.5″ or 1.8″ sizes.

Once I narrowed in on using 3.5″ SAS hard drives, I needed to find a way to actually connect them to my harvester/plotter. Sticking with the constraint of not building the enclosure/backplane I started looking for used enclosures that could house these drives while maintaining the lowest cost per bay.

Na eBayu sem naletel na več možnosti in na koncu kupil nekaj različnih modelov, vključno s HP 24PAR s 3 ležišči in dvema IBM DS12 z 3512 ležišči.

Celoten seznam

Končni seznam komponent je prikazan spodaj. Vključuje zgoraj obravnavane glavne komponente, pa tudi pomožne dele, ki so potrebni za sestavo sistema.

Omembe vredna je kartica HBA. Kartica PCIe je tista, ki izpostavi zunanje priključke SAS, na katere se bodo priključili kabli iz JBOD-jev. Ko ga kupujete, se prepričajte, da dobite kartico načina iniciator target (IT), tako da se pogoni prikažejo neposredno v OS v nasprotju s kartico načina IR. Ker je dobro imeti, boste morda želeli dobiti kartico, ki je nameščena na novejši OS (različica 20).

Nastavitev je večinoma intuitivna. Kabli se priključijo na luknje, v katere se prilegajo. Vendar so kabli SAS, ki povezujejo JBOD in stroj za risanje/žetev, zmožni verižne povezave.

V mojem primeru imam dva kabla, ki zapuščata strežnik (po enega na vsaka vrata iz HBA). Eden od kablov se poveže z vhodom polja za začasno shranjevanje (HP D2600), izhod tega polja pa z nizom HP 3PAR. Drugi kabel se poveže s prvim IBM-ovim poljem, izhod tega pa z drugim IBM-ovim poljem. JBOD-ji imajo običajno vhodna (primarna) vrata in izhodna vrata (običajno označena s puščico navzven).

Namestil sem Ubuntu LTS 20.04 na strežniku, saj je to razširjena distribucija Linuxa, kar pomeni, da bi bilo lažje najti forume za odpravljanje težav, če bi se pojavile kakršne koli težave. Spodnji koraki opisujejo preostalo konfiguracijo.

1. korak: Zagotovite, da so vsi pogoni na voljo

Prvi korak je preveriti, katere pogone zaznava OS. To lahko dosežete tako, da zaženete lsscsi ukaz. Rezultat tega je prikazan spodaj.

Upoštevajte, da zgornji ukaz ne zagotavlja informacij o datotečnem sistemu ali velikosti pogonov. Za to zaženite lsblk ukaz.

pomembno: Upoštevajte, da se vsi pogoni ne prikažejo pod obema ukazoma! Pogoni, ki so prikazani pod lsscsi vendar ne lsblk morda imajo neko nezdružljivost, zaradi katere jih OS ne da na voljo za namestitev, itd. Primer tega je /dev/sdaw.

V mojem primeru je to težavo povzročila velikost sektorja 520, ki je moje nameščeno jedro Linuxa ne podpira (razpravo o tej temi najdete tukaj in tukaj). Ali je to vaš primer, lahko ugotovite tako, da pogledate dmesg dnevnik ukaza za sporočilo o napaki, kot je [sdaw] Unsupported sector size 520.

Da bi to rešil, sem znova formatiral pogone z uporabo velikosti bloka 512 z ukazom sg_format -v --format --size=512 /dev/sdX. Izvajanje tega ukaza lahko traja precej časa (nekaj ur), rezultat pa je prikazan spodaj.

Po zaključku bi se moral pogon prikazati v lsblk Izhod.

2. korak: Ustvarite datotečni sistem na pogonih

Za formatiranje pogonov z ext4 datotečnega sistema sem zagnal naslednji ukaz: sudo mkfs -t ext4 — verbose /dev/sda.

3. korak: Namestite pogone

Zdaj, ko lahko dostopamo do pogonov in so bili formatirani z želenim datotečnim sistemom, lahko mount teh pogonov.

  1. Ustvarite mape, kamor bomo namestili pogone. Na primer: /mnt/farm/00 do /mnt/farm/23 za pogone, ki bodo hranili končne ploskve, in /mnt/plot-tmp/00 do /mnt/plot-tmp/11 za začasne lokacije parcelacije.

4. korak: Zaženite programsko opremo Chia Blockchain

  1. Sledite navedenim uradnim navodilom tukaj za namestitev verige blokov Chia (nisem namestil GUI).

5. korak: Nastavite Plotman (izbirno)

Plotman je vodja parcelacije, ki bo prevzel ustvarjanje novih parcelacijskih delovnih mest. Je priročno orodje (ni potrebno).

  1. Namestite Plotman po navodilih tukaj.
Uporabniški vmesnik:
use_stty_size: res
imeniki:
dnevnik: /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 POLNO
#- /mnt/farm/01 POLNO
#- /mnt/farm/02 POLNO
#- /mnt/farm/03 POLNO
#- /mnt/farm/04 POLNO
#- /mnt/farm/05 POLNO
#- /mnt/farm/06 POLNO
#- /mnt/farm/07 POLNO
#- /mnt/farm/08 POLNO
#- /mnt/farm/09 POLNO
#- /mnt/farm/10 POLNO
#- /mnt/farm/11 POLNO
- /mnt/kmetija/12
- /mnt/kmetija/13
- /mnt/kmetija/14
- /mnt/kmetija/15
- /mnt/kmetija/16
- /mnt/kmetija/17
- /mnt/kmetija/18
- /mnt/kmetija/19
- /mnt/kmetija/20
- /mnt/kmetija/21
- /mnt/kmetija/22
- /mnt/kmetija/23
razporejanje:
tmpdir_stagger_phase_major: 2
tmpdir_stagger_phase_minor: 1
tmpdir_stagger_phase_limit: 1
tmpdir_max_jobs: 1
globalno_max_jobs: 20
global_stagger_m: 40
volilni_čas_s: 30
risanje:
k: 32
e: False # Uporabite možnost risanja -e
n_threads: 2 # Niti na opravilo
n_buckets: 128 # Število veder za razdelitev podatkov
job_buffer: 8096 # Na pomnilnik opravila

Nekaj ​​točk, ki jih je vredno omeniti:

  1. Plotman ne preneha načrtovati pogonov za kmetijo (v času tega pisanja), ko je pogon poln. Zato jih morate odstraniti (ali komentirati kot zgoraj).

6. korak: Zaženite ploter

Na tej točki je vse, kar je potrebno za začetek risanja, teči plotman interactive.

Opomba: Načrtovanje zelo dolgotrajnega dela /dev/farm/usb2 je zagon za odpravljanje napak, ki ni predviden za dokončanje.

Upam, da vam je bila ta pločevinka v pomoč pri podajanju ideje o tem, kaj je potrebno za gojenje Chie!

Trenutno je moja farma polna do 1/3 in nameravam objavljati posodobitve, ko se bo napolnila in ko bom začel ponovno načrtovati bazene.

Posebna zahvala Katie Gandomi za pomoč pri razvoju.

Srečno kmetovanje!

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

Časovni žig:

Več od srednje