Sincronização de nó extremamente lenta em Alphanet
3 respostas
- votos
-
- 2019-03-07
Vocêpoderiatentar adicionarmaispares se vocêestiver vendo apoucamensagem depares.Este script devefuncionarpara o alfanet (vocêprecisa
jq
instalado)for j in 0 1; do for i in `curl -s "http://api.alphanet.tzscan.io/v3/network?state=running&p=$j&number=50" \ | jq -r '.[] | .point_id' | xargs`; do # handle ipv4 or ipv6 numparts=$(echo $i | awk -F: '{print NF}') basenum=$((numparts-1)) port=$(echo $i | cut -d: -f$numparts) base=$(echo $i | cut -d: -f1-$basenum) formatted="[$base]:$port" echo "Connecting $formatted..." ~/tezos/tezos-admin-client connect address $formatted done done
crédito vaipara o criador de Este script .
You could try adding more peers if you are seeing the too few peers message. This script should work for the alphanet (you need
jq
installed)for j in 0 1; do for i in `curl -s "http://api.alphanet.tzscan.io/v3/network?state=running&p=$j&number=50" \ | jq -r '.[] | .point_id' | xargs`; do # handle ipv4 or ipv6 numparts=$(echo $i | awk -F: '{print NF}') basenum=$((numparts-1)) port=$(echo $i | cut -d: -f$numparts) base=$(echo $i | cut -d: -f1-$basenum) formatted="[$base]:$port" echo "Connecting $formatted..." ~/tezos/tezos-admin-client connect address $formatted done done
Credit goes to creator of this script.
-
- 2019-03-06
Asinstâncias deT2 sãoinstâncias de compute de usogeral quetêm desempenho de redebaixo amoderadoe não são otimizadospara operações deentrada/saída (IOPS).Tezos émuitointensivoportodas as contas.
Tentegirar umainstância otimizada de armazenamento (H1/I3/D2)e suspeito quefornecerámelhor desempenho.
T2 instances are general purpose compute instances which have low to moderate network performance and are not optimised for Input/Output operations (IOPS). Tezos is very IO intensive by all accounts.
Try spinning up a Storage Optimised instance (H1/I3/D2) and I suspect it will provide better performance.
-
Enquantoisso é realmentemais rápido,ainda ébastante lento,e freqüentementepára de sincronizarinteiramente quando amensagem "pouca conexão" aparece.Ummeio T2 éperfeitamente capaz de sincronizartodo oblocante deethereumem tempo razoável,entãoeutenho dificuldadeem acreditar que Tezos émuitomaisexigente que seja ordens demagnitudemais lentano TestNet.Deve haver outrofatorem jogo aqui.Whilst this is indeed faster, it's still pretty slow, and frequently stops syncing entirely when the 'too few connections' message pops up. A t2 medium is perfectly capable of syncing the entire ethereum blockchain in reasonable time, so I have a hard time believing Tezos is so much more demanding that it should be orders of magnitude slower on just the testnet. There must be another factor at play here.
- 0
- 2019-03-07
- AndyK
-
Eu concordo quenão deveria ser o caso étãointensivonoentantoparece ser.A comunidade sebeneficiaria de algunsbenchmarks sendoexecutadaspara determinar,na verdade,quetipo de IOPSfaz umanecessidade completa de sincronização.I agree it shouldn't be the case it is that intensive however it seems to be. The community would benefit from some benchmarks being run to determine actually what sort of IOPS does a full sync need.
- 0
- 2019-03-07
- xtzbaker
-
Foi-me ditopor umpadeiro que a AWSi3.glighs são os casosmaiseficazespara osnós de Tezos,especialmentepara cozer devido aogrande desempenho dos SSDs NVME.Eutambém descobri que o desempenho do discogeralmente é ogargaloem um VPS.I was told by a baker that AWS i3.larges are the most effective instances for Tezos nodes, especially for baking due to the great performance of NVMe SSDs. I also found that disk performance usually is the bottleneck on a VPS.
- 0
- 2019-03-21
- cryptodad
-
- 2019-03-07
Solução: Tipo deinstância Alterando
Ao sincronizar onópara AlphaNet,tentei váriasinstâncias: de T2.MICROpara T3.Xlarge.
Em algummomento,pensei que otamanho da RAM ou o desempenho da redepodem desempenhar umpapel aqui. Masmesmot3.Xlargeinstancenãotrouxetodo onó sincronizado rápido.
O que realmente ajudouestá alterando ostipos deinstânciaperiodicamente. Vocêpodeternotado que onóestá sincronizadomuitomais rápido,quando acabou de começar. Então,depois de algumtempo,tornou-semuito lentonovamente.
Eufiz uma observação de que aindamaiortipo deinstância da AWSnãopermitirá que vocêtermineesta operação rapidamenteem umatomada.
Oplanopode ser:
- .
- Pare opadeiro,endossante,acusadore depoispare opróprionó
- Pare ainstância T2.Medium
- Altere otipo de suainstânciapara T2.Small
- Inicie ainstância T2.Small
- Inicie onóe,em seguida,padeiro,endossante,acusador. Enquanto começa Essesprocessosnão seesquecem de redirecionar a saídapara arquivos de log respectivamente: Tezos.log,Baker.log,endosser.loge acuser.log
- comece a assistir a quão rápidosnovosblocosestão sendo sincronizadosem umnovo
instância. Use
tail -f tezos.log
. Vocêtem que lembrar obloco quenovainstância começou apartir de - deixe sozinhopor algumtempo. Vocêpode querer virmaistardee ver quantosblocosforam sincronizados desde que vocêiniciou onó. Seeume lembro corretamente,pode sincronizarmuito rápido até 10 000blocos oumais,embora dependa dainstância que vocêescolheu. Em vez de T2.Small,vocêpodeter selecionado T2.Large,porexemplo.
- Quando oprocesso de sincronização acabará desacelerar,repetir a operaçãonovamente. Desta vezmigrar de T2.Smallpara T2.Medium. Ele lhe dará outrosblocos 10k sincronizados rapidamente.
PS: Paramelhores resultados,vocêpode usar T2.Large + T2.Medium como umpar detroca,nãot2.small +t2.medium como descrito acima. Mas a diferençanão será significativa.
solution : instance type changing
while syncing the node for Alphanet I have tried multiple instances : from T2.micro to T3.xlarge.
At some point I thought that RAM size or Network performance may play a role here. But Even T3.xlarge instance did not bring the whole node synced fast.
What really helped is changing the instance types periodically. You may have noticed that node is syncing much faster in very beginning, when it just started. Then, after some time, it became very slow again.
I've made an observation that even bigger AWS instance type won't allow you to finish this operation fast in one take .
The plan may be:
- Stop the baker, endorser, accuser and then stop the node itself
- Stop the t2.medium instance
- Change the type of your instance to t2.small
- Start the t2.small instance
- Start the node and then baker, endorser, accuser. While starting these processes do not forget to redirect the output to log files respectively: tezos.log, baker.log, endorser.log and accuser.log
- Start watching how fast new blocks are getting synced on a new
instance. Use
tail -f tezos.log
. You have to remember the block that new instance has started from - Leave it alone for sometime. You may want to come later and see how many blocks have been synced since you started the node. If I recall correctly, it may sync very fast up to 10 000 blocks or so, though it depends on the instance you have chosen. Instead of t2.small, you may have selected t2.large for instance.
- When sync process will eventually slow down, repeat operation again. This time migrate from t2.small to t2.medium. It will give you another 10k blocks synced fast.
This approach worked, though it required some manual interventions.
PS: for better results you may use t2.large + t2.medium as a changing pair, not t2.small + t2.medium as described above. But the difference won't be significant.
-
Eu suspeito que omotivo você vê obom desempenhoinicialnasinstâncias TX que degrada lentamente éporqueessestipos deinstância sãoprojetadospara quepossam aumentartemporariamente seu IOe CPUpara lidar compequenosperíodos de atividade aumentada.Isso é chamado deburstinge dura apenas um curtoperíodo detempo antes de reverterpara um desempenhomaismedíocre.Para a carga de IO ou CPU sustentada,énecessário umtipo deinstância diferente.Isso certamente seria o caso de uma sincronização denó.I suspect the reason you see initial good performance on the TX instances that slowly degrades is because these instance types are designed so they can temporarily increase their IO and CPU to deal with small periods of increased activity. This is called bursting and only lasts for a short time before reverting to a more mediocre performance. For sustained IO or CPU load a different instance type is required. This would certainly be the case for a node sync.
- 0
- 2019-03-07
- xtzbaker
-
Recebendo o seguinteerro usando o Alpanet DB acima: Mar 7 09:25:47 - Node.main: Iniciando onó de Tezos ... 7 09:25:47 - Node.main: Nenhuma descoberta local dospares. 7 09:25:47 - Node.main: IDglobal depeer:idrjtolevbnyf6zzuqcmygbfkussa7 Mar 7 09:25:47 -nó.worker: cadeia debootstrapping ... Tezos-Nó: Erro: Chave ausentena loja: Corrente/8ECEDA2F/Gênesis/HashReceiving the following error using the Alphanet DB above: Mar 7 09:25:47 - node.main: Starting the Tezos node... Mar 7 09:25:47 - node.main: No local peer discovery. Mar 7 09:25:47 - node.main: Peer's global id: idrJtoLevBnyf6ZzUqcmyGBFKUssa7 Mar 7 09:25:47 - node.worker: bootstrapping chain... tezos-node: Error: Missing key in store: chain/8eceda2f/genesis/hash
- 0
- 2019-03-07
- AndyK
Então,eu configurei umnó de Tezosem umainstância da AWS EC2 T2.Medium.Eu segui asinstruções aqui ,masparaAlphanetem vez do Mainnet.
Eutenho até: ./tezos-no deexecução --rpc-addr: 8732
Estáem execuçãoe sincronização,masmuito lentamente.Em algumas horas defuncionamento,os dados retornados do 'cliente recebemtimestamp'mudou-separafrente apenas um dia ou dois.Eutambémestou recebendomensagens como P2P.Mainance: Muitopoucas conexões (5)
Eutentei abrirtodos osportos dentroe fora dainstância apenasparater certeza de quenenhumtráfegoestava sendobloqueado.Nãofaz diferença.O queestáerrado?O queprecisomudar?