Нужна помощь в настройке dev / test Corda Network с докером - PullRequest
0 голосов
/ 04 июня 2019

Я хочу настроить среду, в которой у меня есть несколько виртуальных машин, представляющих несколько партнеров, и где каждая виртуальная машина содержит один или несколько узлов.В идеале я бы использовал kubernetes, чтобы поднять / опустить мою среду.Из документов я понял, что это нужно делать как Dev-сеть, а не как моя собственная зона совместимости или что-то в этом роде.

Однако последующие шаги не ясны (для меня).Я использовал Dockerform или предоставленный образ докера, но, похоже, это не тот путь, который мне нужен.

Мое текущее (оно меняется с часами) понимание того, что: а) я должен создатьсеть между виртуальными машинами, на которой будут размещаться узлы.Для этого я понимаю, что мне следует использовать Cordite или Bootstrap jar.Документация по Cordite кажется более понятной, чем документация по Corda, но я пока не смог ее попробовать.Должен ли тот или иной быть моим первым шагом?Кто-нибудь может пролить свет на то, как?

b) После создания моей сети мне нужен сертифицирующий объект (спасибо @Chris_Chabot за указание на это!)

c) Следующий шаг должен бытьзапустив deployNodes, поэтому я создаю файлы конфигурации.Здесь я не уверен, могу ли я указать в deployNodes, на каких IP-адресах?должны ли узлы быть созданы или мне просто нужно создать файлы dockerfile и папки сертификатов и т. д., и распределить их по виртуальным машинам соответствующим образом.Я также не уверен в том, как указать на сетевой сервис.

Лично я предполагаю, что я не буду использовать Dockerfiles, если собираюсь использовать Kubernetes, и что мне нужно только распространять сертификаты и конфигурациюфайлы для всех ведомых виртуальных машин, чтобы они были доступны узлам, когда они должны быть запущены.

Чтобы быть понятным и честным: D, это даже до того, как в контейнеры добавлялся любой апплет, я просто пытаюсьиметь готовую среду.По сути, запуск процесса, который строит узлы, распределяет файлы конфигурации между подчиненными vms и запускает докеры с узлами.Как поясняется в комментарии, целью здесь является не тестирование Cordapps, а тестирование того, как развернуть оперативную распределенную среду разработки.

ЛЮБАЯ помощь будет АБСОЛЮТНО приветствоваться.

Спасибо!

1 Ответ

1 голос
/ 04 июня 2019

(Связи с разработчиками @ R3 здесь)

Сеть узлов Corda нуждается в трех вещах: - нотариальный узел или пул из нескольких нотариальных узлов - менеджер по сертификации - сервис сетевой карты

Диспетчер сертификации является корнем доверия в сети и управляет сертификатами.Они должны быть распределены по узлам, чтобы объявить и подтвердить свою личность.

Узлы подключаются к сервису сетевой карты, который проверяет свой сертификат, чтобы узнать, есть ли у них доступ к сети, и, если да, добавьте ихв список узлов, которыми он управляет, - и распространяет этот список идентификаторов узлов + IP-адреса для всех узлов в этой сети.

Наконец, узлы используют нотариусов для подписания транзакций, которые происходят в сети.

Как правило, мы обнаруживаем, что большинство людей начинают разрабатывать в сети https://testnet.corda.network/, а затем внедряются в производственную сеть corda.network.

Одним из преимуществ этого является то, что он уже поставляется со всеми этими частями (менеджер по сертификации, карта сети и географически распределенный пул нотариусов).Другое преимущество заключается в том, что это гарантирует, что у вас будет возможность взаимодействия с другими сторонами в будущем, поскольку все используют один и тот же корневой центр сертификации - с вашей собственной сетью другие третьи стороны не могут просто подключиться, как если бы они были в другой цепочке сертификатов.и не может быть проверено.

Если, тем не менее, у вас есть веская причина для создания собственной сети, вы можете использовать Cordite для предоставления карты сети и услуг certman.

В этом случаеШаг 1 - пройти инструкции по настройке и настройке на https://gitlab.com/cordite/network-map-service

. После полной настройки и запуска https://docs.corda.net/permissioning.html содержит дополнительную информацию о настройке сертификатов.и раздел «Присоединение к существующей зоне совместимости» в https://docs.corda.net/docker-image.html содержит инструкции о том, как получить образ / узел докера Corda для присоединения к этой сети, указав, какую карту сети / URL-адрес сертификата использовать.

Да, и вопрос IP-сети: менеджер сети хранит комбинацию идентификатора X509 иIP-адрес для каждого узла, который он распространяет в сети - это означает, что каждый узел, включая нотариусов, удостоверяющего, сетевую карту и все узлы, должен иметь возможность подключаться к этому IP-адресу - либо все они находятся на одном и том жесеть, которую вы создали, или с открытыми IP-адресами

...