Commands Reference

Below are various debugging commands that can be used

  • To setup KUBECONFIG environment variable

    export KUBECONFIG=PATH_TO_CLUSTER_KUBECONFIG_FILE
    Ex. export KUBECONFIG=~/.kube/config 
    /root/.kube/config is the default KUBECONFIG path
    
  • To check the cluster config file being used

    kubectl config view
    
  • To check the current context

    kubectl config current-context
    
  • To get all pods in a namespace

    kubectl get pods -n NAMESPACE
    Ex. kubectl get pods -n supplychain-net
    
  • To get all pods in a cluster

    kubectl get pods --all-namespaces
    
  • To check description of resource type (pod/service/pvc/HelmRelease)

    kubectl describe RESOURCE_TYPE RESOURCE_NAME -n NAMESPACE
    Ex. kubectl describe pvc ca-server-db-svc -n carrier-net
    Ex. kubectl describe sa vault-reviewer -n carrier-net
    
  • To check logs of pod

    kubectl logs POD_NAME -n NAMESPACE
    Ex. kubectl logs flux-dev-123r45 -n default
    
  • To check logs of container within a pod

    kubectl logs POD_NAME -c CONTAINER_NAME -n NAMESPACE
    Ex. kubectl logs ca-123r45 -c ca-certs-init -n carrier-net
    
  • To execute a command in a running pod

    kubectl exec POD_NAME -n NAMESPACE -- COMMAND_TO_EXECUTE
    Ex. kubectl exec ca-tools-12345 -n carrier-net -- ls -a
    
  • To execute a command in a container of a pod

    kubectl exec POD_NAME -c CONTAINER_NAME -n NAMESPACE -- COMMAND_TO_EXECUTE
    Ex. kubectl exec ca-tools-12345 -c ca-tools -n carrier-net -- ls -a
    
  • To access vault

    export VAULT_ADDR=
    export VAULT_TOKEN=
    vault read PATH_IN_VAULT
    Ex. vault read /secret/crypto/ordererOrganizations/carrier-net/ca/carrier-net-CA.key
    
  • To list all enabled secrets engines with detailed output

    vault secrets list -detailed
    
  • To enable an auth method at a given path

    vault auth enable -path PATH
    Ex. vault auth enable -path authpath
    
  • To delete data on a given path in the key/value secrets engine

    vault kv delete PATH
    Ex. vault kv delete secret/creds
    
  • To list down all helm releases

    helm ls
    
  • To upgrade helm client and Tiller server to the same version

    helm init --upgrade
    
  • To delete an existing helm installation

    helm del --purge HELM_RELEASE_NAME
    Ex. helm del --purge carrier-ca
    
  • To login to docker registry

    docker login --username USERNAME --password PASSWORD URL
    Ex. docker login --username abcd --password abcd index.docker.io/hyperledgerlabs
    
  • To pull images from docker registry

    docker pull IMAGE_NAME:TAG
    Ex. docker pull alpineutils:1.0
    
  • To push images to docker registry

    docker push IMAGE_NAME:TAG
    Ex. docker push alpineutilstest:1.0
    
  • To build an image from Dockerfile

    cd FOLDER_TO_DOCKERFILE
    docker build -t IMAGE_NAME:TAG -f DOCKERFILE_PATH PATH_TO_BUILD_CONTEXT
    Ex. docker build -t alpineutilstest:1.0 -f Dockerfile .
    
  • To login to a quorum node

    kubectl exec -it POD_NAME -n POD_NAMESPACE -c quorum -- geth attach "http://localhost:RPC_PORT"
    Ex. kubectl exec -it carrier-0 -n carrier-ns -c quorum -- geth attach "http://localhost:8546"
    
  • Get all the paritipants present in the network after logging into the node (for raft consensus based cluster)

    raft.cluster
    
  • Get node information (after logging into the node)

    admin.nodeInfo
    
  • Get the peers attached to the current node (after loggin into the node)

    admin.peers
    
  • Get the account details (after logging into the node)

    eth.accounts
    
  • Get retrieves the list of authorized validators at the specified block (for ibft consensus based cluster)

    istanbul.getValidators(blockHashOrBlockNumber)
    
  • To access indy cli, in any terminal

     indy-cli
    
  • To create a pool

     pool create local-pool gen_txn_file=<path of the genesis file>
    
  • To connect the pool

    pool connect <pool name>
    
  • To create a wallet

    wallet create <wallet name> <key>
    
  • To open a wallet

    wallet open <wallet name> <key>
    
  • To list the wallets

    wallet list
    
  • To delete a wallet

    wallet delete <wallet name> 
    
  • To create a new did

    did import <did file>
    
    did new
    
  • To create a pool

    pool create <pool name> gen_txn_file=<pool_genesis_path>
    
  • To open a pool

    pool connect <pool name>
    
  • To list the pool

    pool list
    
  • To execute a transaction on ledger

    ledger nym did=<did name> verkey=<key detail> role=<role name>
    
  • To get the transaction details

    ledger get-nym did=<did name>