# Nodes

In Angus, nodes refer to the fundamental components of the Hyperledger Fabric blockchain network responsible for processing, validating, and managing transactions.These network nodes serve different roles and can be categorized into multiple types:

  • Ordering Nodes: These nodes are responsible for ordering transactions, packaging them into blocks, and distributing them to peers. It ensures a consistent and secure transaction flow.
  • Peer Nodes: These nodes are responsible for storing and validating ledger data, participating in consensus, and executing chaincode applications.
  • CA Nodes: These nodes are responsible for managing the lifecycle of identities and certificates within the network.

# Peer Nodes

apiVersion: integrator.angusnext.io/v1
kind: AngusPeer
metadata:
  name: peer01
  namespace: space02
spec:
  statedb:
    image: couchdb:3.3
    env:
  persistence:
    pvcName: peer01-space01-pvc
  # size: 1Gi
  peer:
    image: hyperledger/fabric-peer:2.5
    env:
      - name: CORE_PEER_GOSSIP_BOOTSTRAP
        value: peer01.space01.svc.cluster.local:7051

# Properties

key Description
msp optional
statedb.image CouchDB image will be used.
statedb.env CouchDB environment variables.
persistence.pvcName The name of the PVC for the peer node.
peer.image HLF peer image will be used.
peer.env HLF peer environment variables.

# Ordering Nodes

apiVersion: integrator.angusnext.io/v1
kind: AngusOrderer
metadata:
  name: orderer
  namespace: space02
spec:
  # name: orderer
  image: hyperledger/fabric-orderer:2.5
  cluster:
    - name: orderer0
      persistence:
        pvcName: orderer0-space02-pvc

    - name: orderer1
      persistence:
        pvcName: orderer1-space02-pvc

    - name: orderer2
      persistence:
        pvcName: orderer2-space02-pvc

# Properties

key Description
image HLF orderer image will be used.
msp Creates MSP for this orderer cluster
cluster[x].name The name of the orderer node.
cluster[x].persistence.pvcName The name of the PVC for the orderer node.
cluster[x].msp Optional: Default is -msp
cluster[x].env optional; Array of the environment variable

# CA Nodes

apiVersion: integrator.angusnext.io/v1
kind: AngusCA
metadata:
  name: space01
  namespace: space02
spec:
  type: internal
  subject:
    commonName: angusnext.io
    countryName: HU
    localityName: Arvenis
    organizationName: application
    organizationalUnitName: auth
    stateOrProvinceName: Budapest