2

AFAIK, in Hyperledger Sawtooth I can add custom Transaction Processors, but I don't clearly understand can I add them dynamically, and how it will work?

For example, I have working validators network with dynamic peering and want to add new custom Transaction Processor to support new transaction family. Probably, I can run docker container with TP on some machines of network, but often I will not able to do that on all machines (which can be closed to me in production).

Thanks advance

Alarmwolf
  • 158
  • 1
  • 6
  • One way is to substitute a service in a compose by overriding it when you compose up. See https://docs.docker.com/compose/extends/ for options and alternatives. – Frank C. Feb 05 '18 at 09:05
  • Franc, thanks for your attention and response. I think this way is good for local deployment with docker-compose, but in 'production' environment (or close to it) I woud like to use 'ubuntu service' way of node deploy and probably I will not have access to all machines after cluster installation, so this question is still interesting for me. – Alarmwolf Feb 05 '18 at 15:25
  • Are you running hyperledger/sawtooth native or vis-a-vis docker on the ubuntu targets? – Frank C. Feb 05 '18 at 18:38
  • Franc, I'm experementing with https://sawtooth.hyperledger.org/docs/core/releases/latest/app_developers_guide/ubuntu.html tutorial (node as linux service) and planning to use this mode in project – Alarmwolf Feb 06 '18 at 08:46
  • That is discussing running sawtooth outside of docker. In this case if you can get your TP package on the target machine you can run it like any other program. – Frank C. Feb 06 '18 at 09:08
  • Thanks, it's clear. The thing that I still don't understand - if I have large public network - do I need to send this program (TP) on every machine of network? – Alarmwolf Feb 06 '18 at 09:34
  • 2
    Yes, that is how the distributed ledger fault tolerance works. If you lose a node then the other node(s) would process the transaction and for that you need to have your TP's on the active node. – Frank C. Mar 22 '18 at 10:31

1 Answers1

0

You run the Identity TP just like any other Sawtooth Transaction Processor, on the command line. After installing package python3-sawtooth-identity, thpe something like this on the command line:

/usr/bin/identity-tp -v -C tcp://localhost:4004

You can also automate it as a service.

Dan Anderson
  • 2,265
  • 1
  • 9
  • 20