LF Decentralized Trust Lab

FabricOps

Continuous convergence for Hyperledger Fabric.

Declare a multi-organization network. FabricOps reconciles identities, channels, CCaaS, and proof of readiness on Kubernetes.

fabricnetwork/sample
kind-fabricops
Generation14 / 14
PhaseReady
Requeuenone
CONSENSUS
ord07050
ord17050
ord27050
settlementblock 04
ENDORSERS
BankAMSP
peer0CCaaS
peer1CCaaS
BankBMSP
peer0CCaaS
  1. IdentityMaterialReadyTrue
  2. ChannelsReadyTrue
  3. ChaincodesReadyTrue
  4. ReadyTrue
Fabric CARaft + BFTPer-org namespacesCCaaS lifecycleFederated joiningPrometheus metrics
01 / Install

From empty cluster to control plane.

Install one release artifact, apply a network resource, and watch the status conditions converge.

Read installation guide
01Install operator and CRDs
$ kubectl apply -f https://github.com/LF-Decentralized-Trust-labs/FabricOps/releases/download/v0.3.0/install.yaml

$ kubectl rollout status deployment/fabricops-controller-manager \
    -n fabricops-system --timeout=120s
✓FabricNetwork default/fabricnetwork-sample reached condition Ready=True
02 / Reconciliation

One resource. The whole operating sequence.

fabricnetwork.yamldesired state
apiVersion: fabricops.io/v1alpha1
kind: FabricNetwork
metadata:
  name: settlement
spec:
  global:
    fabricVersion: "3.1.0"
    tls: true
  orgs:
    - organization:
        name: BankA
        mspName: BankAMSP
      peer:
        instances: 2
        db: CouchDB
  channels:
    - name: settlement
  1. 01

    Establish trust

    Bootstrap Fabric CAs, enroll identities, and publish MSP/TLS material.

    IdentityMaterialReady
  2. 02

    Form the network

    Run orderers and peers with Kubernetes-safe addressing and storage.

    WorkloadsReady
  3. 03

    Create channels

    Generate blocks, join members, and configure anchor peers.

    ChannelsReady
  4. 04

    Activate chaincode

    Package, install, approve, commit, and serve CCaaS workloads.

    ChaincodesReady
03 / Ownership

The network is shared. Infrastructure ownership is not.

Per-organization namespaces keep credentials, workloads, storage, and operational responsibility legible.

cluster / settlement-production3 namespaces
01fo-settlement-orderer
Consensus
  • Fabric CA
  • 3 orderers
  • channel participation
  • operations
Ready
02fo-settlement-banka
Founder
  • Fabric CA
  • 2 peers
  • CouchDB
  • CCaaS
Ready
03fo-settlement-bankb
Member
  • Fabric CA
  • 1 peer
  • Gateway profile
  • CCaaS
Ready
04 / Chaincode-as-a-Service

Lifecycle is infrastructure.

FabricOps carries chaincode from package metadata to a committed definition and the exact service address each peer expects.

NodeGoJava
01

Package

Connection metadata

02

Install

Target peers

03

Approve

Every channel org

04

Commit

Policy satisfied

05

Serve

Peer-specific endpoint

chaincode1:7052
05 / Federated joining

Join the network. Keep your cluster.

A participant can own its Kubernetes infrastructure while the founder retains explicit control over channel admission.

Cluster AFounder
FabricNetwork

Exports public trust and channel admission requirements.

settlement / Ready
portable contractJoin bundleMSP rootsendpointspolicies
Cluster BParticipant
FabricParticipant

Reconciles local identity, peers, and channel membership.

BankBMSP / Joined
Open the federated join runbook
Apache-2.0 / community maintained

Operate Fabric from intent.

Explore FabricOps