Egy Chia kriptovaluta gazdálkodási (bányászati) rendszer teljes körű áttekintése az összetevők kiválasztásától a szoftverkonfigurációig.
Chia egy új kriptovaluta, amelynek célja a decentralizált konszenzus elérése, alacsonyabb tranzakciónkénti energiafogyasztás mellett, mint társai. Ezt úgy érik el, hogy a téralgoritmus igazolása helyett a munka igazolása.
Míg a munka bizonyítása egy matematikai probléma (általában hash-ek, például SHA256) folyamatos számításán alapul, hogy megpróbálja megtalálni a kívánt mintának megfelelő eredményeket, a Chia ehelyett bizonyos tulajdonságok létezésének ellenőrzésére támaszkodik egyedi előre generált fájlokban, amelyeket plotoknak nevezünk.
Ez egy kétlépéses folyamatban, az úgynevezett mezőgazdasági a következőket tartalmazza:
- felrajzolása ahol nagy egyedi fájlok (általában 101.6 GB) jönnek létre.
- És aratás ahol a korábban létrehozott fájlok ellenőrzik, hogy esélyük van-e megnyerni a blokk jutalmát (jelenleg 2 Chia).
Minél több telek (nagyobb tárhelyet használ) egy csomópont, annál nagyobb az esélye annak, hogy elnyerje a blokk jutalmát. Naponta 4608 nyerési esély van, és ennek a blokknak a jutalma elnyerésének valószínűsége elsősorban az egyén birtokában lévő telkek számán alapul, a teljes hálózat méretéhez viszonyítva. Bevétel-kalkulátor is rendelkezésre áll itt.
Ezért a jutalmak maximalizálása érdekében a lehető legnagyobb mennyiségű tárhelyet szeretnénk biztosítani és elegendő számítási erőforrás az említett tároló telekekkel való feltöltéséhez.
Mint a legtöbb tervezési probléma esetében, a Chia termesztésére használható eszközök kombinációjának végtelen számú érvényes megoldása létezik. A lehetőségek szűkítése érdekében néhány korlát és prioritás meghatározásával kezdtem:
- A további bonyolultság ellenére (észszerű keretek között) minimálisra kell csökkenteni a dollár/TB költséget.
- Mivel korlátozott időm áll rendelkezésre erre a projektre, a rendszernek nagyrészt készen lévő alkatrészekből kell állnia (nincs egyedi PCB, egyedi ház stb.).
Ábrázolás — Feldolgozás
A hardverbeállítástól függően egyetlen telek létrehozása 4-20 órát is igénybe vehet. Ezért a megfelelő ábrázoló hardver kiválasztása jelentheti a különbséget aközött, hogy a teljes gazdaságot napokban vagy hónapokban tölti fel.
Fontos, hogy ne csak az egyes diagramok elkészítésének sebességét vegyük figyelembe, hanem a létrehozható egyidejű diagramok számát is. Például egy olyan beállítás, amely 10 egyidejű diagramot hoz létre 12 óránként, 20 diagramot (~2 TB/nap), míg egy olyan beállítás, amely 1 óránként 4 párhuzamos diagramot készít, csak napi 6 diagramot (0.6 TB/nap).
A költségek minimalizálása érdekében úgy döntöttem, hogy leállított szervereket keresek. Ezeknek a szervereknek van néhány érdekes tulajdonsága, amelyek erőteljes plotterré tehetik őket, többek között:
- A nagyszámú mag több parcellát is lehetővé tesz párhuzamosan. Az 1. fázis (körülbelül a nyomtatási idő fele) többszálú (általában 2 és 4 szál közé van beállítva), de a többi fázis egyszálú.
- A rendelkezésre álló RAM általában meghaladja a nyomtatáshoz szükséges mennyiséget (~4 GB/párhuzamos nyomtatás).
- Úgy tervezték, hogy hosszabb ideig nagy terhelés mellett működjön.
Miután több tucat opciót és lehetséges konfigurációt átnéztem, egy HP ProLiant DL380p Gen8 mellett döntöttem 2x Intel E5–2670-vel és 192 GB DDR3 RAM-mal. Engedélyezett hiperszál-kezeléssel ez a szerver feltételezhetően támogatja akár 16 plot egyidejű ábrázolását az 1. fázisban 400 dollár alatt.
Tervezés – Ideiglenes tárolás
A telek létrehozása során fellépő magas írási terhelés miatt (kb. 1.6 TB ak=32 plotra írva) az ideiglenes tárolóeszköz kiválasztása jelentős hatással lehet a nyomtatási időre és a költségre. Néhány szempont, amit figyelembe kell venni:
- Minél gyorsabb a tárolás, annál gyorsabban hozhatók létre parcellák. Ez a téma 4 órás ábrázolási időket tárgyal a RAMDISK használatával (mappa csatlakoztatása a RAM-hoz).
- Tekintettel a nagy írási mennyiségre, fontos figyelembe venni a médium tartósságát. Egy fogyasztói minőségű 1 TB-os NVMe SSD általában körülbelül 600 TBW (írt terabájt) strapabírósággal rendelkezik, mielőtt várhatóan meghibásodik, ami azt jelentené, hogy körülbelül 375 parcellát készíthet.
Végül egy 12 rekeszes HP StorageWorks D2600 vásárlása mellett döntöttem, 15K 450 GB-os SAS-meghajtókkal. Ezzel a beállítással egyszerre tudok ábrázolni minden meghajtót anélkül, hogy kockáztatnám az IO-versenyt a meghajtó szintjén. A JBOD + meghajtók lényegesen olcsóbbak voltak, mint az NVMe meghajtókkal egyenértékű telepítés (anélkül, hogy a TBW elérése utáni csereköltséget figyelembe vették volna).
Farm – Hosszú távú tárolás
Az ábrázoló tárolóval ellentétben a begyűjtési tároló nem igényel nagy áteresztőképességet vagy IOP-t. Emiatt a költségek minimalizálása volt a legmagasabb prioritás.
Számos lehetséges beállítás létezik, amelyek közül néhányat tárgyalunk itt. Miután azonban az eBay-en keresgéltek használt opciók után, néhány dolog világossá vált:
- A nagyobb, 3.5 hüvelykes merevlemezek általában a legalacsonyabb költséggel rendelkeznek. Ez logikus, mivel manapság a legtöbb eszköz áttért a kisebb, 2.5 hüvelykes vagy 1.8 hüvelykes méretekre.
- Úgy tűnt, hogy a SAS merevlemezek (nem az SSD-k) a legalacsonyabb egy TB-onkénti költséggel, néhány tételnél 10 USD/TB (2021 májusától). Ezek a SAS-meghajtók nem kompatibilisek a SATA (fogyasztói) kártyákkal, és általában az eBay-en adják el őket, miután leszerelték őket egy vállalat adatközpontjából.
Miután szűkítettem a 3.5 hüvelykes SAS merevlemezek használatát, meg kellett találnom a módját, hogy ténylegesen csatlakoztassam őket a betakarítómhoz/plotteremhez. Ragaszkodva ahhoz a megkötéshez, hogy ne építsem meg a házat/hátlapot, elkezdtem keresni olyan használt burkolatokat, amelyekben elférnek ezek a meghajtók, miközben fenntartják a legalacsonyabb rekeszköltséget.
Számos lehetőségre bukkantam az eBay-en, és végül vásároltam néhány különböző modellt, köztük egy 24-rekeszes HP 3PAR-t és két 12-rekeszes IBM DS3512-t.
Teljes lista
Az összetevők végleges listája alább látható. Tartalmazza a fent tárgyalt fő alkatrészeket, de a rendszer összeállításához szükséges kiegészítő alkatrészeket is.
Említésre méltó a HBA kártya. A PCIe kártya teszi elérhetővé a SAS külső csatlakozókat, amelyekhez a JBOD-k kábelei csatlakoznak. Vásárláskor ügyeljen arra, hogy kezdeményező cél (IT) módú kártyát kapjon, hogy a meghajtók közvetlenül az operációs rendszerben jelenjenek meg, nem pedig az IR módú kártyával. Ha jó lenne, érdemes beszerezni egy kártyát egy újabb operációs rendszerrel (20-as verzió).
A beállítás többnyire intuitív. A kábelek azokhoz a furatokhoz csatlakoznak, amelyekbe illeszkednek. A JBOD-okat és a begyűjtő/begyűjtő gépet összekötő SAS kábelezés azonban láncolható.
Az én esetemben két kábel hagyja el a szervert (egy-egy a HBA minden portján). Az egyik kábel az ideiglenes tárolótömb (HP D2600) bemenetéhez, a tömb kimenete pedig a HP 3PAR tömbhöz csatlakozik. A másik kábel az első IBM tömbhöz csatlakozik, ennek kimenete pedig a második IBM tömbhöz. A JBOD-knak általában van egy bemeneti (elsődleges) portja és egy kimeneti portja (általában kifelé mutató nyíllal jelölve).
Telepítettem Ubuntu LTS 20.04 a szerveren, mivel az egy széles körben használt Linux disztribúció, ami azt jelenti, hogy könnyebb lenne hibaelhárítási fórumokat találni, ha bármilyen probléma merülne fel. Az alábbi lépések felvázolják a fennmaradó konfigurációt.
1. lépés: Győződjön meg arról, hogy minden meghajtó elérhető
Az első lépés annak ellenőrzése, hogy mely meghajtókat észleli az operációs rendszer. Ezt úgy érheti el, hogy futtatja a lsscsi
parancs. Ennek kimenete az alábbiakban látható.
Vegye figyelembe, hogy a fenti parancs nem ad információt a meghajtók fájlrendszeréről vagy méretéről. Ehhez futtassa a lsblk
parancs.
Fontos: Vegye figyelembe, hogy nem minden meghajtó jelenik meg mindkét parancs alatt! alatt megjelenő meghajtók lsscsi
de nem lsblk
előfordulhat olyan inkompatibilitás, ami miatt az operációs rendszer nem teszi elérhetővé őket beszerelésre stb. Egy példa erre: /dev/sdaw
.
Az én esetemben ezt a problémát az okozta, hogy a szektor mérete 520, amit a telepített Linux kernelem nem támogat (a témáról szóló vita itt és a itt). Megállapíthatja, hogy ez az Ön esete, ha átnézi a dmesg
parancs naplójába olyan hibaüzenethez, mint pl [sdaw] Unsupported sector size 520
.
Ennek megoldására újraformáztam a meghajtókat 512-es blokkmérettel a paranccsal sg_format -v --format --size=512 /dev/sdX
. Ennek a parancsnak a futtatása jelentős időt vehet igénybe (több órát), és a kimenet az alábbiakban látható.
Befejezése után a meghajtónak meg kell jelennie a lsblk
kimenet.
2. lépés: Fájlrendszer létrehozása a meghajtókon
A meghajtók formázásához a ext4 fájlrendszer, a következő parancsot futtattam: sudo mkfs -t ext4 — verbose /dev/sda
.
3. lépés: Szerelje fel a meghajtókat
Most, hogy elérhetjük a meghajtókat, és a kívánt fájlrendszerrel formáztuk, megtehetjük felmászik ezeket a meghajtókat.
- Hozzuk létre azokat a mappákat, amelyekbe a meghajtókat rögzítjük. Például:
/mnt/farm/00
nak nek/mnt/farm/23
a meghajtókhoz, amelyek a végső parcellákat tárolják, és/mnt/plot-tmp/00
nak nek/mnt/plot-tmp/11
az ideiglenes parcellázási helyekre. - futás
sudo blkid
meghajtói (vagy partíciói) egyedi azonosítóinak beszerzéséhez. Több sort fog kiadni, mint pl/dev/sdae: UUID=”29494f44–2f75–4c01-a766–18755eb583d7" TYPE=”ext4"
. - Szerkessze az fstab fájlt a
sudo vim /etc/fstab
és társítsa az egyes meghajtókat a megfelelőhöz/mnt/...
mappát. Lenni óvatos ne szerkessze a fájl első sorait, mivel ezek szükségesek az operációs rendszer gyökérmeghajtójának csatlakoztatásához. A végső fájlom lent látható. - futás
sudo mount -a
az fstab fájlban megadott összes meghajtó csatlakoztatásához. Csak azokat a meghajtókat fogja csatlakoztatni, amelyeket még nem szereltek fel, így biztonságosan futtathatja többször is. - Győződjön meg arról, hogy a felhasználók hozzáférhetnek a meghajtókhoz és fájljaihoz a sudo futtatásával
chmod -R 777 /mnt/farm/00
.
4. lépés: Futtassa a Chia Blockchain szoftvert
- Kövesse a megadott hivatalos utasításokat itt a Chia blokklánc telepítéséhez (nem telepítettem a GUI-t).
- futás
chia start farmer
elindítani a démonokat a pénztárcához, aratógéphez stb.
5. lépés: A Plotman beállítása (opcionális)
Plotman egy tervezési menedzser, aki átveszi az új tervezési munkahelyek létrehozását. Ez egy kényelmi eszköz (nem kötelező).
- Telepítse a Plotmant az utasításokat követve itt.
- szerkesztése
plotman.yaml
a plotter specifikációi szerint. A végső fájlom lent látható.
felhasználói felület:
use_stty_size: Igaz
könyvtárak:
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 MEGTELT
#- /mnt/farm/01 MEGTELT
#- /mnt/farm/02 MEGTELT
#- /mnt/farm/03 MEGTELT
#- /mnt/farm/04 MEGTELT
#- /mnt/farm/05 MEGTELT
#- /mnt/farm/06 MEGTELT
#- /mnt/farm/07 MEGTELT
#- /mnt/farm/08 MEGTELT
#- /mnt/farm/09 MEGTELT
#- /mnt/farm/10 MEGTELT
#- /mnt/farm/11 MEGTELT
- /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
ütemezés:
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
polling_time_s: 30
rajzolás:
k: 32
e: False # Használja az -e ábrázolás opciót
n_threads: 2 # Szál munkánként
n_buckets: 128 # Az adatok felosztásához szükséges gyűjtők száma
job_buffer: 8096 # Feladatmemóriánként
Néhány említésre méltó pont:
- A Plotman nem hagyja abba a mezőgazdasági meghajtók ütemezését (a jelen írás idején), amikor a meghajtó megtelt. Ezért el kell távolítania őket (vagy megjegyzést kell fűznie a fentiekhez).
- A Plotman automatikusan farmmeghajtókat ad a chia aratógéphez.
- használom
tmpdir_max_jobs
egyenlő 1-gyel, mivel merevlemezekre nyomtatok, amelyek nem rendelkeznek jó keresési teljesítménnyel az SSD-khez képest.
6. lépés: Futtassa a Plottert
Ezen a ponton már csak futni kell a rajzolás megkezdéséhez plotman interactive
.
Megjegyzés: A nagyon régóta futó munka kitervezése /dev/farm/usb2
egy hibakeresési futás, amelynek nem az a célja, hogy a befejezésig futjon.
Reméljük, hogy ez a doboz hasznos volt ahhoz, hogy képet kapjon arról, hogy mire van szükség a Chia gazdálkodáshoz!
Jelenleg a farmom az út 1/3-a megtelt, és azt tervezem, hogy frissítéseket teszek közzé, amint megtelik, és amikor elkezdem a medencék újratervezését.
Külön köszönet Katie Gandomi segítségért a fejlesztéshez.
Boldog gazdálkodást!
- hozzáférés
- További
- Minden termék
- körül
- öböl
- blockchain
- Épület
- megvesz
- Vásárlás
- okozott
- esély
- ellenőrzése
- összetevő
- számítástechnika
- megegyezés
- fogyasztó
- fogyasztás
- cryptocurrency
- dátum
- nap
- decentralizált
- Design
- Fejlesztés
- Eszközök
- DID
- Kereset
- eBay
- energia
- EU
- EV
- farm
- mezőgazdasági
- vezetéknév
- megfelelő
- formátum
- Tele
- Giving
- jó
- hardver
- Magas
- Ház
- hr
- HTTPS
- ia
- IBM
- ötlet
- Hatás
- Beleértve
- információ
- Intel
- IP
- IT
- Munka
- Állások
- nagy
- szint
- Korlátozott
- linux
- Lista
- kiszámításának
- Hosszú
- LP
- Mérkőzés
- matematikai
- közepes
- Bányászati
- hónap
- hálózat
- hivatalos
- Opciók
- Más
- Mintás
- teljesítmény
- medencék
- program
- bizonyíték
- RAM
- Tudástár
- Eredmények
- Kritika
- Jutalmak
- ruha
- futás
- futás
- biztonságos
- Keresés
- értelemben
- Méret
- So
- szoftver
- eladott
- Megoldások
- SOLVE
- Hely
- sebesség
- osztott
- kezdet
- kezdődött
- tárolás
- tárolni
- támogatás
- Támogatott
- rendszer
- cél
- ideiglenes
- idő
- tranzakció
- Frissítés
- Felhasználók
- Ellen
- kötet
- pénztárca
- Mi
- Wikipedia
- nyer
- belül
- Munka
- érdemes
- írás