Files
defiQUG 1fb7266469 Add Oracle Aggregator and CCIP Integration
- Introduced Aggregator.sol for Chainlink-compatible oracle functionality, including round-based updates and access control.
- Added OracleWithCCIP.sol to extend Aggregator with CCIP cross-chain messaging capabilities.
- Created .gitmodules to include OpenZeppelin contracts as a submodule.
- Developed a comprehensive deployment guide in NEXT_STEPS_COMPLETE_GUIDE.md for Phase 2 and smart contract deployment.
- Implemented Vite configuration for the orchestration portal, supporting both Vue and React frameworks.
- Added server-side logic for the Multi-Cloud Orchestration Portal, including API endpoints for environment management and monitoring.
- Created scripts for resource import and usage validation across non-US regions.
- Added tests for CCIP error handling and integration to ensure robust functionality.
- Included various new files and directories for the orchestration portal and deployment scripts.
2025-12-12 14:57:48 -08:00

5.8 KiB

Frequently Asked Questions (FAQ)

Last Updated: 2025-01-27
Status: Active

Common questions and answers about the DeFi Oracle Meta Mainnet (ChainID 138).

Table of Contents

General Questions

What is ChainID 138?

ChainID 138 is the DeFi Oracle Meta Mainnet, a production-ready blockchain network built on Hyperledger Besu with QBFT consensus.

What consensus mechanism does the network use?

The network uses QBFT (Quorum Byzantine Fault Tolerance) consensus, which provides immediate finality and ~2 second block times.

What is the block time?

The block time is approximately 2 seconds.

How many validators are required?

A minimum of 4 validators is required for QBFT consensus.

Is the network EVM-compatible?

Yes, the network is fully EVM-compatible and supports standard Ethereum tooling and contracts.

Deployment Questions

How long does deployment take?

  • Infrastructure: 15-30 minutes
  • Kubernetes resources: 10-15 minutes
  • Contract deployment: 5-10 minutes
  • Total: ~30-55 minutes

What are the prerequisites for deployment?

  • Azure CLI installed and configured
  • Terraform >= 1.0
  • kubectl configured
  • Helm 3.x
  • Foundry (for contracts)

Can I deploy to multiple regions?

Yes, the network supports multi-region deployment. See Multi-Region Deployment Guide.

How do I verify deployment?

# Verify infrastructure
make verify

# Check node status
kubectl get pods -n besu-network

# Test RPC endpoint
curl -X POST https://rpc.d-bis.org \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","method":"eth_blockNumber","params":[],"id":1}'

Configuration Questions

How do I configure the network?

Use the interactive configuration tool:

./scripts/configure-network.sh

See Network Configuration Guide for details.

What environment variables are required?

See Configuration Index for which environment setup guide to use:

How do I change network parameters?

Network parameters are set in the genesis file. To change them:

  1. Update genesis file
  2. Redeploy network (requires network restart)

See Parameter Change Runbook.

Operations Questions

How do I add a validator?

See Node Add/Remove Runbook.

How do I update the oracle?

See Oracle Updates Runbook.

How do I monitor the network?

The network includes a full monitoring stack:

  • Prometheus - Metrics collection
  • Grafana - Dashboards
  • Loki - Log aggregation
  • Alertmanager - Alert routing

See Monitoring Setup Guide.

How do I backup the network?

Backup procedures are documented in the architecture documentation. See Architecture Documentation.

Integration Questions

How do I connect MetaMask?

See MetaMask Integration Guide.

How do I integrate CCIP?

See CCIP Integration Guide.

What RPC endpoint should I use?

Production RPC endpoint: https://rpc.d-bis.org

How do I use the Tatum SDK?

See Tatum SDK Documentation and SDK README.

Troubleshooting Questions

Blocks are not being produced

  1. Check validator status: kubectl get pods -l component=validator -n besu-network
  2. Check validator logs: kubectl logs -l component=validator -n besu-network
  3. Verify validator keys are correct
  4. Check network connectivity between validators
  5. See Troubleshooting Guide for details

RPC endpoint is not responding

  1. Check RPC pod status: kubectl get pods -l component=rpc -n besu-network
  2. Check Application Gateway status
  3. Verify network policies
  4. Check rate limiting settings
  5. See Troubleshooting Guide for details

Oracle is not updating

  1. Check oracle publisher status: kubectl get pods -l app=oracle-publisher -n besu-network
  2. Check oracle publisher logs
  3. Verify data sources are accessible
  4. Check RPC connectivity
  5. Verify private key access
  6. See Oracle Troubleshooting Runbook

How do I check if nodes are synced?

# Check block numbers across nodes
kubectl exec -n besu-network <pod-name> -- curl -X POST http://localhost:8545 \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","method":"eth_blockNumber","params":[],"id":1}'

How do I view logs?

# View pod logs
kubectl logs -n besu-network <pod-name> --tail=100

# Follow logs
kubectl logs -n besu-network <pod-name> -f

# View logs from all pods
kubectl logs -n besu-network -l component=validator --tail=100

How do I restart a service?

# Restart a pod
kubectl delete pod -n besu-network <pod-name>

# Restart all pods of a type
kubectl delete pods -n besu-network -l component=validator

Last Updated: 2025-01-27