Una panoramica sul mondo della Sicurezza Informatica, del Networking, della Virtualizzazione e non solo. Blog particolarmente indicato per i reparti IT che comunque alterna articoli scritti per specialisti con articoli formulati con linguaggio semplice e comprensibile a tutti.

Ogni articolo di questo blog è stato integralmente scritto dall'autore. Il contenuto è completamente originale e la riproduzione, anche parziale, è vietata salvo autorizzazione.

lunedì 14 novembre 2016

Architetture di collegamento: Fibre Channel su multi controller e RoundRobin

Quando ci si trova ad implementare uno storage collegato ad un'infrastruttura, soprattutto se virtuale, le performance divengono fondamentali. Spesso ci si domanda quale architettura seguire, quali sono le Best Practices e quale scenario è in grado, ad esempio, di sfruttare al massimo le performance di un array full SSD.

In passato abbiamo trattato alcuni temi, la cui lettura facilita la comprensione di questo articolo di approfondimento:


Immaginiamo di avere due scenari di questo tipo


Uno in iSCSI con 2 porte a 10Gbit con supporto TOE (per host) ed uno in Fibre Channel con 2 porte 8Gb (per host), in entrambi i casi in Direch Attach sulla SAN.

Qual è il metodo più conveniente per interconnettere gli apparati?


iSCSI con singolo controller


Dai test che abbiamo effettuato, quando è presente un solo controller, il metodo migliore per collegare gli host è in RoundRobin utilizzando la relativa funzione presente nel path manager di vmware.


In media è stato raggiunto un risultato di circa il 13% più performante rispetto al path singolo con il secondario in standby.



FC con singolo controller


Similarmente a quanto accade in ambito iSCSI, il collegamento in FC beneficia del meccanismo di distribuzione tipico del RoundRobin, ma in maniera persino superiore (22% rispetto al singolo path). Questo perchè l'overhead generato dal protocollo TCP in ambiente iSCSI probabilmente vanifica in parte il vantaggio di avere due percorsi bilanciati.



iSCSI e FC con doppio controller


Qui abbiamo una sorpresa. Qualora la SAN possieda due controller, utilizzare il RoundRobin comporta un rallentamento con entrambe le tecnologie rispetto ad un path singolo. Presupponendo di aver effettuato una pianificazione corretta, ovvero HBA1 su Controller1 e HBA2 su Controller2, il bilanciamento del carico impegna entrambi i controller che, nella realtà, perderanno tempo a ricostruire il flusso di informazioni che vengono loro richieste.
Abbiamo, sostanzialmente, creato un collo di bottiglia causato dal coinvolgimento dei due controller in un impegnativo stream ciclico (Ctrl1-Ctrl2-Ctrl1-Ctrl2...). Il RoundRobin non è, in questo scenario, conveniente.



Best Practices per incrementare le performance con SAN avente due o più controller

Abbiamo stabilito, quindi, che il meccanismo di bilanciamento RoundRobin è utile in caso di singolo controller perchè massimizza la parte network, ma è sfavorevole per gli scenari in cui la SAN abbia più controller perchè costringe questi ultimi ad un lavoro supplementare di interfacciamento tra di essi. Lavoro, questo, in grado di vanificare il vantaggio della doppia disponibilità di banda. 
Come fare, quindi? E' sufficientemente banale, creare più LUN e distribuirle lungo i path.
Come sappiamo, i path vengono gestiti per ogni LUN, quindi la creazione di N LUN scatenerà Nx2 path per host (nel nostro caso). A questo punto all'interno della SAN potremo definire il controller owner, ovvero il controller che prende in primis in carico la LUN e la presenta agli altri controller. Strutturando correttamente questa fase, sarà possibile avere un path primario per LUN, che coinciderà con il controller owner, e bilanciarne quindi i path in maniera manuale.

Proviamo a fare un esempio immaginando di aver creato 2 LUN:

La prima LUN è presentata dal controller 1, quindi noi utilizzeremo il path 1 con il 2 silente, pronto ad intervenire in caso di backup.


La seconda LUN, pariteticamente, viene gestita dal controller 2 utilizzando il path 2 (sullo stesso host, ovviamente).

Così facendo avremo naturalmente bilanciato i carichi utilizzando due path diversi su due LUN diverse. L'impegno dei controller sarà minimo perchè ognuno gestirà la sua owned LUN senza necessitare di impegnativi flussi di comunicazione come nel caso in cui venga utilizzato un RoundRobin su due controller differenti.

Lo scenario RoundRobin sullo stesso controller, ovviamente e per ovvie ragioni di inaffidabilità, non è stato contemplato perchè insicuro.


Discaimer: Ogni articolo di questo blog è stato integralmente scritto dall'autore. Il contenuto è completamente originale e la riproduzione è vietata salvo autorizzazione.

sabato 3 settembre 2016

Bitcoin Mining nel Q4 del 2016, elaborare produce ancora guadagno?

Se siete completamente a digiuno dell'argomento e non conoscete le dinamiche del BitCoin Mining e del guadagno economico potenzialmente derivante dalle operazioni di calcolo, allora vi consiglio di leggervi questo articolo, datato ma esplicativo: Cos'è il bitcoin mining? Ci pagano davvero per fare elaborazioni?

Mi sono allontanato da diverso tempo da questo campo, tuttavia ho acquistato da poco una scheda video all'avanguardia e di generosa potenza, quindi mi sono domandato se la vendita della sua capacità elaborativa potesse generarmi un profitto. Questo mi ha portato a fare dei rapidi calcoli.

La GTX1080 avrebbe sviluppato 450MH (MegaHash) di calcolo, un numero che fino a poco tempo fa era di tutto rispetto. Un altrettanto rapido calcolo mi ha portato però una deludente verità, la mia scheda mi avrebbe generato un profitto potenziale di 0,01$ al mese (spendendoci forse 30$ di energia elettrica).



Eppure fino a non molto tempo fa ci avrei potuto sviluppare un buon guadagno. Cosa è cambiato? Semplice, il coefficiente di difficulty, ovvero il coefficiente di retribuzione basato sulle elaborazioni che vengono fatte.

Come in ogni mercato, l'aumentare dell'offerta fa scendere il prezzo della domanda. Nel nostro caso l'aumentare dell'offerta è derivata dalla maggior capacità di calcolo e dall'introduzione massiva di processori ASIC (https://en.bitcoin.it/wiki/ASIC) fortemente specializzati su questo tipo di elaborazione ed estremamente performanti.

Qui sotto possiamo vedere un grafico indicante quanto esponenzialmente sia aumentato il coefficiente di difficulty (e quindi quanto sia drammaticamente scesa la retribuzione) nel corso del tempo:



Per avere un'idea di quanto esponenzialmente sia salito il coefficiente, basti osservare quanto la linea sia sostanzialmente piatta fino al 2014 nonostante, vi assicuro, fino a quegli anni i coefficienti raddoppiavano con una facilità estrema (erano tutt'altro che piatti).


Assodato che, quindi, elaborare con qualsiasi altra piattaforma che non sia ASIC al giorno d'oggi non ha alcun senso (immaginiamo che una CPU Xeon all'avanguardia di un server recente svilupperebbe  0.01$ dopo 3 anni di elaborazione al 100%), ho provato a raccogliere dati sulle MiningBox, ovvero strumenti nati per fare solo questo. Tra informazioni ricavate su internet e approfondimenti sui nuovi modelli direttamente sui siti di produzione, ho elaborato una tabella aggiungendo il guadagno giornaliero ed in quanti giorni il prodotto si sarebbe teoricamente ripagato.

Performance / Prezzo


Miner Capacity gH Price
AntMiner S7 4730,00 $479,95
AntMiner S9-B12 11850,00 $1.442,00
AntMiner S9-B13 12930,00 $1.600,00
Avalon6 3500,00 $499,95
AntMiner R4 8600,00 $1.395,00
SP20 Jackson 1500,00 $248,99
AntMiner S5+ 7722,00 $2.307,00
AntMiner S5 1155,00 $370,00
ASICMiner BE Tube 800,00 $320,00
ROCKMINER T1 800G 800,00 $325,00
Spondooliestech SP35 Yukon 5500,00 $2.235,00
Spondooliestech SP31 Yukon 4900,00 $2.075,00
ASICMiner BE Prisma 1400,00 $600,00
ROCKMINER R3-BOX 450,00 $200,00
ROCKMINER R4-BOX 470,00 $210,00
HashCoins Zeus v3 4500,00 $2.299,00
HashCoins Apollo v3 1100,00 $599,00
BTC Garden AM-V1 616 GH/s 616,00 $350,00
AntMiner U3 63,00 $38,00
AntMiner S4 2000,00 $1.400,00
ROCKMINER R-BOX 110G 110,00 $88,00
AntMiner S3 441,00 $382,00
Spondooliestech SP30 Yukon 4500,00 $4.121,00
CoinTerra TerraMiner IV 1600,00 $1.500,00
BTC Garden AM-V1 310 GH/s 310,00 $309,00
ROCKMINER Rocket BOX 450,00 $599,00
AntMiner S1 180,00 $299,00
BFL Monarch 700GH/s 700,00 $1.379,00
ROCKMINER R-BOX 32,00 $65,00
Spondooliestech SP10 Dawson 1400,00 $2.845,00
AntMiner S2 1000,00 $2.259,00
Black Arrow Prospero X-3 2000,00 $6.000,00
HashFast Sierra Evo 3 2000,00 $6.800,00
Black Arrow Prospero X-1 100,00 $370,00
Klondike 5,00 $20,00
KnC Neptune 3000,00 $12.995,00
GekkoScience 9,50 $49,97
HashFast Sierra 1200,00 $7.080,00
KnC Jupiter 500,00 $4.995,00
KnC Saturn 250,00 $2.995,00
NanoFury NF2 4,00 $50,00
HashFast Baby Jet 400,00 $5.600,00
AntMiner U1 2,00 $29,00
Avalon USB Nano3 3,60 $55,00
BPMC Red Fury USB 2,50 $44,99
Metabank 120,00 $2.160,00
Avalon Batch 2 82,00 $1.499,00
Avalon Batch 3 82,00 $1.499,00
ASICMiner BE Cube 30,00 $550,00
BFL SC 50 Gh/s 50,00 $984,00
Avalon Batch 1 66,00 $1.299,00
KnCMiner Mercury 100,00 $1.995,00
BFL Single 'SC' 60,00 $1.299,00
AntMiner U2 2,00 $49,66
ASICMiner BE Blade 11,00 $350,00
HashBuster Micro 20,00 $688,00
bi*fury 5,00 $209,00
Twinfury 5,00 $216,00
BFL 500 GH/s Mini Rig SC 500,00 $22.484,00
Blue Fury 3,00 $140,00
BFL SC 25 Gh/s 25,00 $1.249,00
TerraHash Klondike 16 5,00 $250,00
TerraHash Klondike 64 18,00 $900,00
BFL SC 5Gh/s 5,00 $274,00
TerraHash DX Large (full) 180,00 $10.500,00
TerraHash DX Mini (full) 90,00 $6.000,00
Bitmine,ch Avalon Clone 85GH 85,00 $6.489,00


Guadagno / Ritorno sull'investimento (giorni)


Miner $/day guadagno ROI (gg)
AntMiner S7 3,1921824 150
AntMiner S9-B12 7,997328 180
AntMiner S9-B13 8,7261984 183
Avalon6 2,36208 212
AntMiner R4 5,803968 240
SP20 Jackson 1,01232 246
AntMiner S5+ 5,21142336 443
AntMiner S5 0,7794864 475
ASICMiner BE Tube 0,539904 593
ROCKMINER T1 800G 0,539904 602
Spondooliestech SP35 Yukon 3,71184 602
Spondooliestech SP31 Yukon 3,306912 627
ASICMiner BE Prisma 0,944832 635
ROCKMINER R3-BOX 0,303696 659
ROCKMINER R4-BOX 0,3171936 662
HashCoins Zeus v3 3,03696 757
HashCoins Apollo v3 0,742368 807
BTC Garden AM-V1 616 GH/s 0,41572608 842
AntMiner U3 0,04251744 894
AntMiner S4 1,34976 1.037
ROCKMINER R-BOX 110G 0,0742368 1.185
AntMiner S3 0,29762208 1.284
Spondooliestech SP30 Yukon 3,03696 1.357
CoinTerra TerraMiner IV 1,079808 1.389
BTC Garden AM-V1 310 GH/s 0,2092128 1.477
ROCKMINER Rocket BOX 0,303696 1.972
AntMiner S1 0,1214784 2.461
BFL Monarch 700GH/s 0,472416 2.919
ROCKMINER R-BOX 0,02159616 3.010
Spondooliestech SP10 Dawson 0,944832 3.011
AntMiner S2 0,67488 3.347
Black Arrow Prospero X-3 1,34976 4.445
HashFast Sierra Evo 3 1,34976 5.038
Black Arrow Prospero X-1 0,067488 5.482
Klondike 0,0033744 5.927
KnC Neptune 2,02464 6.418
GekkoScience 0,00641136 7.794
HashFast Sierra 0,809856 8.742
KnC Jupiter 0,33744 14.803
KnC Saturn 0,16872 17.751
NanoFury NF2 0,00269952 18.522
HashFast Baby Jet 0,269952 20.744
AntMiner U1 0,00134976 21.485
Avalon USB Nano3 0,002429568 22.638
BPMC Red Fury USB 0,0016872 26.665
Metabank 0,0809856 26.671
Avalon Batch 2 0,05534016 27.087
Avalon Batch 3 0,05534016 27.087
ASICMiner BE Cube 0,0202464 27.165
BFL SC 50 Gh/s 0,033744 29.161
Avalon Batch 1 0,04454208 29.163
KnCMiner Mercury 0,067488 29.561
BFL Single 'SC' 0,0404928 32.080
AntMiner U2 0,00134976 36.792
ASICMiner BE Blade 0,00742368 47.146
HashBuster Micro 0,0134976 50.972
bi*fury 0,0033744 61.937
Twinfury 0,0033744 64.011
BFL 500 GH/s Mini Rig SC 0,33744 66.631
Blue Fury 0,00202464 69.148
BFL SC 25 Gh/s 0,016872 74.028
TerraHash Klondike 16 0,0033744 74.087
TerraHash Klondike 64 0,01214784 74.087
BFL SC 5Gh/s 0,0033744 81.200
TerraHash DX Large (full) 0,1214784 86.435
TerraHash DX Mini (full) 0,0607392 98.783
Bitmine,ch Avalon Clone 85GH 0,0573648 113.118



Questo ci fa capire, quindi, che nel migliore dei casi (ad oggi, 3 settembre 2016), dando per scontato uno scenario inverosimile (ovvero che il grado di difficulty rimanga stabile) investendo quasi 500$ avremo un rientro del capitale in circa 150 giorni per poi guadagnarci circa 3,1$ al giorno. 

Non abbiamo però calcolato che il sistema consuma circa 800W/h che attualizzato alle tariffe attuali italiane significa circa 3$ al giorno (converto in dollari perchè tutti i calcoli sono in questa valuta), vanificando completamente tutto il calcolo.

Nella realtà dei fatti, il coefficiente non potrà che aumentare esponenzialmente, riducendo drastricamente i guadagni giorno dopo giorno.



Conclusioni 


Ad oggi mi sembra del tutto irragionevole investire per vendere le proprie risorse elaborative, salvo che non si abbia già un'infrastruttura preesistente e che non si paghi l'energia elettrica. In sostanza, se avete qualche decina di migliaia di criceti a disposizione e desiderosi di produrre energia correndo sulla ruota e trovate per terra passeggiando e per caso un miner da 5000 euro funzionante, allora potrebbe valerne la pena. In tutti i restanti casi non ci vedo molta convenienza.



Discaimer: Ogni articolo di questo blog è stato integralmente scritto dall'autore. Il contenuto è completamente originale e la riproduzione è vietata salvo autorizzazione.