Impostare e gestire un server Qubic Archive
Configura un server di archivio per memorizzare e validare i dati delle transazioni Qubic utilizzando script per la manutenzione dei peer, file di tick e epoche.
Qsilver · 22 gennaio 2024.
Introduzione
Qubic non è la tua criptovaluta ordinaria! Senza una blockchain, inizialmente non è chiaro come vengano validate le transazioni, e la potatura settimanale dei dati delle transazioni presenta sfide nel determinare le transazioni passate. Il server di archivio affronta questi problemi memorizzando automaticamente tutti i dati rilevanti di ogni epoca, gestendo i cambiamenti di epoca senza ricompilazione (a meno che non cambi il protocollo di rete).
Installazione e Compilazione
Supponendo un server Linux, segui questi passaggi per configurare il server di archivio:
git clone <https://github.com/Qsilver97/qubic-cli>
cd qubic-cli
mkdir build
cd build
cmake ..
make
g++ -I.. ../bxid.cpp ../connection.cpp -o bxid
Il tuo sistema avrà bisogno di g++
per compilare il codice C++, cmake
e e2fsprogs
. Questi solitamente vengono forniti di serie e potrebbero non richiedere l'installazione tramite apt-get
.
Esecuzione del Server di Archivio
Per eseguire il server di archivio in modo continuo, utilizza script bash a ciclo infinito:
while true; do ACTION; done
Esegui ogni script in una finestra separata o in modalità asincrona con &
. Se la disconnessione è un rischio, usa:
nohup ./script > script.out &
Azioni e Script
1. Mantenere l'elenco dei Peer
Crea uno script a ciclo con l'azione:
./bxid peersloop
Questo script aggiornerà la directory dei peer con file denominati in base agli indirizzi IP dei peer, essenziale per le query per trovare i peer dell'epoca corrente e precedente.
2. Ottenere i file di Tick
Crea uno script a ciclo con l'azione:
./bxid maketickfiles
Questo script salva i file di quorum e i dati di tick nelle rispettive directory. Funziona in due fasi: richieste parallele per ottenere file di tick e una modalità sequenziale con ritentativi. Eseguendo questo script in un ciclo si garantisce che vengano ottenuti più file ad ogni iterazione.
3. Scansione delle Epoche
Crea uno script a ciclo con l'azione:
./bxid scanepoch 0
Il valore dell'epoca di 0 significa che lo script determinerà l'epoca corrente e genererà file .json
per l'archivio. Assicurati che il file computors
per l'epoca specificata sia disponibile.
4. Generazione di file JSON e invio a OpenSearch
Crea uno script a ciclo con l'azione:
./bxid jsonfiles
Questo script genera file .json
e li invia a OpenSearch, eseguendo convalide di base ed eliminando i file non validi.
5. Validazione
Crea uno script a ciclo con l'azione:
./bxid validate
Questo script convalida i voti di quorum, assicurandosi 451+ voti con hash corrispondenti e verificando l'hash dei dati di tick. Protegge i file validati per evitare la rivalidazione.
Utilizzo di OpenSearch
Installa OpenSearch seguendo le istruzioni su opensearch.org. Assicurati che sia disponibile su localhost:9200
. Modifica le funzioni opensearch()
e opensearchpost()
in bxidutils.cpp
per utilizzare le credenziali appropriate se vengono aggiunti login e certificati. Per eseguire il server di archivio senza OpenSearch, commenta #define POST_TO_OPENSEARCH
in bxid.cpp
.
Strumenti Aggiuntivi
Per chi ha accesso a un feed di log del computor, crea un dataset bxid
utilizzando:
./qubic-cli -nodeip (ipaddr) -getlogfromnode (pass0) (pass1) (pass2) (pass3)
./bxid logjson logfileN
Sostituisci N
con il numero di origine delle voci di log del computor. Questo crea e mantiene log in logs/(epoca)/logfileN
e il relativo file .json
.
Note Finali
Aggiungi uno script per includere:
./bxid qchain 0
Questo genera un dataset qchain
, un digest di tutti i dati invarianti nel voto di quorum e il digest del tick precedente. Questo aiuta a garantire dati identici tra diversi archivi.
Conclusione
La configurazione del server di archivio con i suoi vari script assicura che i dati delle transazioni Qubic siano memorizzati e validati in modo completo. Con questi strumenti, puoi mantenere un server di archivio robusto in grado di gestire l'elaborazione unica delle transazioni di Qubic.
Per gli ultimi aggiornamenti, unisciti al Discord di Valis, seguici su X e aggiungi il nostro blog ai preferiti.
Successivo →
In questa pagina
- Impostare e gestire un server Qubic Archive
- Introduzione
- Installazione e Compilazione
- Esecuzione del Server di Archivio
- Azioni e Script
- 1. Mantenere l'elenco dei Peer
- 2. Ottenere i file di Tick
- 3. Scansione delle Epoche
- 4. Generazione di file JSON e invio a OpenSearch
- 5. Validazione
- Utilizzo di OpenSearch
- Strumenti Aggiuntivi
- Note Finali
- Conclusione