Hyperledger Fabric - стратегии восстановления после сбоев - PullRequest
0 голосов
/ 31 августа 2018

Вчера столкнулся с хорошей проблемой: ничего не происходит в случае сбоя контейнера с цепным кодом или его остановки вручную.

Пример сети (с использованием изображений версии 1.2.0):

  • 2 ORGs
  • 2 CA
  • 2 пира ORG1 (с использованием LevelDB в качестве хранилища)
  • 2 пира ORG2 (с использованием LevelDB в качестве хранилища)
  • 1 одиночный заказчик
  • 1 общий канал с консорциумом из 2 орг
  • эта сеть запускается под управлением Docker Swarm на 4 виртуальных машинах (2 менеджера, 2 рабочих узла)

Есть много элементов, которые могут сломаться:

  • сбой контейнера с цепочкой кодов (!)
  • сбой одного или двух пиров ORG1
  • заказчик вылетает

Итак. Поведение ткани по умолчанию:

  • сбой контейнера с цепочкой кодов (!)

Прекратить обработку запросов SDK. без перезагрузки

UPD_1: При следующем запросе (вызов / запрос) cc-контейнер будет воссоздан

  • сбой одного / двух пиров ORG1

остановить обработку запросов из-за потери соединения с каналом после автоматического перезапуска / запуска при сбое: потеря соединения с каналом если цепочка кода была создана на этом узле: аварийный контейнер цепочки кода

Итак. Каковы стратегии / лучшие практики для восстановления сети Hyperledger Fabric после сбоев?

...