Wdrażanie sieci łańcucha bloków Ethereum w usłudze Azure Stack Hub
Szablon rozwiązania Ethereum został zaprojektowany tak, aby ułatwić i szybciej wdrożyć i skonfigurować sieć łańcucha bloków Ethereum z wieloma członkami z minimalną wiedzą na temat platformy Azure i Ethereum.
W przypadku kilku danych wejściowych użytkownika i pojedynczego kliknięcia wdrożenia za pośrednictwem portalu dzierżawy usługi Azure Stack Hub każdy członek może aprowizować ślad sieciowy. Ślad sieciowy każdego elementu członkowskiego składa się z trzech elementów:
- Zestaw węzłów transakcji ze zrównoważonym obciążeniem, z którymi aplikacja lub użytkownik może wchodzić w interakcję w celu przesyłania transakcji.
- Zestaw węzłów wyszukiwania do rejestrowania transakcji.
- Wirtualne urządzenie sieciowe (WUS).
Późniejszy krok połączenia łączy urządzenia WUS w celu utworzenia w pełni skonfigurowanej sieci łańcucha bloków wieloczłonkowych.
Aby skonfigurować:
- Wybierz architekturę wdrożenia.
- Wdrażanie autonomicznej, lidera konsorcjum lub sieci składowej konsorcjum.
Wymagania wstępne
Pobierz najnowsze elementy z witryny Marketplace:
- Ubuntu Server 16.04 LTS
- Windows Server 2016
- Skrypt niestandardowy dla systemu Linux 2.0
- Rozszerzenie niestandardowego skryptu dla systemu Windows
Architektura wdrażania
Ten szablon rozwiązania może wdrożyć sieć konsorcjum Ethereum z jednym lub wieloma członkami. Sieć wirtualna jest połączona w topologii łańcucha przy użyciu wirtualnego urządzenia sieciowego i zasobów połączenia.
Szablon może wdrożyć konsorcjum Ethereum dla lidera i członka na różne sposoby. Oto te, które przetestowaliśmy:
- W usłudze Azure Stack Hub z wieloma węzłami z identyfikatorem Microsoft Entra lub usługami AD FS wdróż potencjalnych klientów i członków przy użyciu tej samej subskrypcji lub z różnymi subskrypcjami.
- W usłudze Azure Stack Hub z jednym węzłem (z identyfikatorem Microsoft Entra) wdróż potencjalnego klienta i członka przy użyciu tej samej subskrypcji.
Wdrożenie lidera autonomicznego i konsorcjum
Szablon lidera konsorcjum konfiguruje ślad pierwszego członka w sieci.
Pobierz szablon lidera z usługi GitHub.
W portalu dzierżawy usługi Azure Stack Hub wybierz pozycję + Utwórz wdrożenie szablonu zasobu > do wdrożenia z szablonu niestandardowego.
Wybierz pozycję Utwórz własny szablon w edytorze, aby edytować nowy szablon niestandardowy.
W okienku edycji po prawej stronie skopiuj i wklej pobrany wcześniej kod JSON szablonu lidera.
Wybierz pozycję Zapisz.
Na karcie Podstawy wykonaj następujące ustawienia.
Nazwa parametru Opis Wartość przykładowa Subskrypcja Subskrypcja, do której ma zostać wdrożona sieć konsorcjum. Subskrypcja zużycie Grupa zasobów Grupa zasobów, do której ma zostać wdrożona sieć konsorcjum. EthereumResources Region (Region) Region świadczenia usługi Azure dla zasobów. local Prefiks nazwy Ciąg używany jako podstawa nazewnictwa wdrożonych zasobów. Użyj maksymalnie sześciu znaków alfanumerycznych. Eth Typ uwierzytelniania Metoda uwierzytelniania na maszynie wirtualnej. Dozwolone wartości to hasło lub klucz publiczny SSH. Hasło Nazwa użytkownika administratora Administracja nazwę użytkownika każdej wdrożonej maszyny wirtualnej. Użyj od jednego do 64 znaków. gethadmin Administracja hasło (typ uwierzytelniania = hasło) Hasło dla konta administratora dla każdej wdrożonej maszyny wirtualnej. Hasło musi zawierać 3 z następujących wymagań: 1 znak górnej litery, 1 małe litery, 1 cyfra i 1 znak specjalny.
Podczas gdy wszystkie maszyny wirtualne początkowo mają to samo hasło, możesz zmienić hasło po aprowizacji. Użyj od 12 do 72 znaków.Administracja klucz SSH (typ uwierzytelniania = sshPublicKey) Ciąg klucza publicznego secure shell RSA używany do zdalnego logowania. Blok Genesis Ciąg JSON reprezentujący niestandardowy blok genesis. Określenie wartości tego parametru jest opcjonalne. Hasło konta platformy Ethereum Hasło administratora używane do zabezpieczania konta Ethereum. Hasło konta Ethereum Hasło używane do generowania klucza prywatnego skojarzonego z kontem Ethereum. Rozważ hasło z wystarczającą losowością, aby zapewnić silny klucz prywatny. Identyfikator sieci Ethereum Identyfikator sieci konsorcjum. Użyj dowolnej wartości z zakresu od 5 do 999 999 999 999. 72 Identyfikator członka konsorcjum Identyfikator skojarzony z każdym członkiem sieci konsorcjum. Ten identyfikator powinien być unikatowy w sieci. 0 Liczba węzłów wyszukiwania Liczba węzłów górniczych dla każdego członka konsorcjum. Użyj wartości z zakresu od 2 do 15. 2 Rozmiar maszyny wirtualnej węzła wyszukiwania Rozmiar maszyny wirtualnej węzłów wyszukiwania. Standardowa_A1 Typ konta magazynu wyszukiwania Wydajność magazynu węzłów wyszukiwania. Standard_LRS Liczba węzłów TX Liczba węzłów transakcji ze zrównoważonym obciążeniem. Użyj wartości z zakresu od 1 do 5. 1 Rozmiar maszyny wirtualnej węzła TX Rozmiar maszyny wirtualnej węzłów transakcji. Standardowa_A1 Typ konta magazynu TX Wydajność magazynu węzłów transakcji. Standard_LRS Podstawowy adres URL Podstawowy adres URL, w którym można pobrać szablony wdrażania. Użyj wartości domyślnej, chyba że chcesz dostosować szablony wdrażania. Wybierz pozycję Przejrzyj i utwórz. Po pomyślnym zakończeniu walidacji wybierz pozycję Utwórz.
Ukończenie wdrożenia może potrwać 20 minut lub dłużej.
Po zakończeniu wdrażania przejrzyj podsumowanie wdrożenia microsoft.Template w sekcji wdrażania grupy zasobów. Podsumowanie zawiera wartości wyjściowe używane do dołączania członków konsorcjum.
Aby zweryfikować wdrożenie lidera, przejdź do witryny administracyjnej lidera. Adres witryny administracyjnej znajduje się w sekcji danych wyjściowych wdrożenia Microsoft.Template .
Dołączanie do wdrożenia członka konsorcjum
W portalu dzierżawy usługi Azure Stack Hub wybierz pozycję + Utwórz wdrożenie szablonu zasobu > do wdrożenia z szablonu niestandardowego.
Wybierz pozycję Utwórz własny szablon w edytorze, aby edytować nowy szablon niestandardowy.
W okienku edycji po prawej stronie skopiuj i wklej pobrany wcześniej kod JSON szablonu składowego konsorcjum.
Wybierz pozycję Zapisz.
Na karcie Podstawy wykonaj następujące ustawienia.
Nazwa parametru Opis Wartość przykładowa Subskrypcja Subskrypcja, do której ma zostać wdrożona sieć konsorcjum. Subskrypcja zużycie Grupa zasobów Grupa zasobów, do której ma zostać wdrożona sieć konsorcjum. EthereumResources Region (Region) Region świadczenia usługi Azure dla zasobów. local Prefiks nazwy Ciąg używany jako podstawa nazewnictwa wdrożonych zasobów. Użyj maksymalnie sześciu znaków alfanumerycznych. Eth Typ uwierzytelniania Metoda uwierzytelniania na maszynie wirtualnej. Dozwolone wartości to Hasło lub Klucz publiczny SSH. Hasło Nazwa użytkownika administratora Administracja nazwę użytkownika każdej wdrożonej maszyny wirtualnej. Użyj od jednego do 64 znaków. gethadmin Administracja hasło (typ uwierzytelniania = hasło) Hasło dla konta administratora dla każdej wdrożonej maszyny wirtualnej. Hasło musi zawierać 3 z następujących wymagań: 1 znak górnej litery, 1 małe litery, 1 cyfra i 1 znak specjalny.
Podczas gdy wszystkie maszyny wirtualne początkowo mają to samo hasło, możesz zmienić hasło po aprowizacji. Użyj od 12 do 72 znaków.Administracja klucz SSH (typ uwierzytelniania = sshPublicKey) Ciąg klucza publicznego secure shell RSA używany do zdalnego logowania. Blok Genesis Ciąg JSON reprezentujący niestandardowy blok genesis. Określenie wartości tego parametru jest opcjonalne. Hasło konta platformy Ethereum Hasło administratora używane do zabezpieczania konta Ethereum. Hasło konta Ethereum Hasło używane do generowania klucza prywatnego skojarzonego z kontem Ethereum. Rozważ hasło z wystarczającą losowością, aby zapewnić silny klucz prywatny. Identyfikator członka konsorcjum Identyfikator skojarzony z każdym członkiem sieci konsorcjum. Ten identyfikator powinien być unikatowy w sieci. 0 Liczba węzłów wyszukiwania Liczba węzłów górniczych dla każdego członka konsorcjum. Użyj wartości z zakresu od 2 do 15. 2 Rozmiar maszyny wirtualnej węzła wyszukiwania Rozmiar maszyny wirtualnej węzłów wyszukiwania. Standardowa_A1 Typ konta magazynu wyszukiwania Wydajność magazynu węzłów wyszukiwania. Standard_LRS Liczba węzłów TX Liczba węzłów transakcji ze zrównoważonym obciążeniem. Użyj wartości z zakresu od 1 do 5. 1 Rozmiar maszyny wirtualnej węzła TX Rozmiar maszyny wirtualnej węzłów transakcji. Standardowa_A1 Typ konta magazynu TX Wydajność magazynu węzłów transakcji. Standard_LRS Dane konsorcjum Adres URL wskazujący odpowiednie dane konfiguracyjne konsorcjum dostarczone przez wdrożenie innego członka. Tę wartość można znaleźć w danych wyjściowych wdrożenia lidera. Zdalna przestrzeń adresowa sieci wirtualnej elementu członkowskiego Przestrzeń adresowa sieci wirtualnej lidera. Tę wartość można znaleźć w danych wyjściowych wdrożenia lidera. Publiczny adres IP urządzenia WUS członka zdalnego Adres IP urządzenia WUS lidera. Tę wartość można znaleźć w danych wyjściowych wdrożenia lidera. Klucz współużytkowany połączenia Wstępnie ustanowiony wpis tajny między członkami sieci konsorcjum, które ustanawiają połączenie bramy. Podstawowy adres URL Podstawowy adres URL, w którym można pobrać szablony wdrażania. Użyj wartości domyślnej, chyba że chcesz dostosować szablony wdrażania. Wybierz pozycję Przejrzyj i utwórz. Po pomyślnym zakończeniu walidacji wybierz pozycję Utwórz.
Ukończenie wdrożenia może potrwać 20 minut lub dłużej.
Po zakończeniu wdrażania przejrzyj podsumowanie wdrożenia microsoft.Template w sekcji wdrażania grupy zasobów. Podsumowanie zawiera wartości wyjściowe używane do łączenia członków konsorcjum.
Aby zweryfikować wdrożenie członka, przejrzyj witrynę administracyjną członka. Adres witryny administracyjnej można znaleźć w sekcji wyjściowej wdrożenia Microsoft.Template .
Jak pokazano na ilustracji, stan węzłów członka nie jest uruchomiony. Ten stan jest spowodowany tym, że połączenie między elementem członkowskim a liderem nie zostało nawiązane. Połączenie między elementem członkowskim a liderem jest połączeniem dwukierunkowym. Podczas wdrażania elementu członkowskiego szablon automatycznie tworzy połączenie od członka do lidera. Aby utworzyć połączenie od lidera do członka, przejdź do następnego kroku.
Łączenie członka i lidera
Ten szablon tworzy połączenie od lidera do elementu członkowskiego zdalnego.
W portalu dzierżawy usługi Azure Stack Hub wybierz pozycję + Utwórz wdrożenie szablonu zasobu > do wdrożenia z szablonu niestandardowego.
Wybierz pozycję Utwórz własny szablon w edytorze, aby edytować nowy szablon niestandardowy.
W okienku edycji po prawej stronie skopiuj i wklej pobrany wcześniej kod JSON szablonu składowego konsorcjum.
Wybierz pozycję Zapisz.
Wykonaj następujące ustawienia.
Nazwa parametru Opis Wartość przykładowa Subskrypcja Subskrypcja, do której ma zostać wdrożona sieć konsorcjum. Subskrypcja zużycie Grupa zasobów Grupa zasobów, do której ma zostać wdrożona sieć konsorcjum. EthereumResources Region (Region) Region świadczenia usługi Azure dla zasobów. local Prefiks nazwy elementu członkowskiego Ciąg używany jako podstawa nazewnictwa wdrożonych zasobów. Użyj maksymalnie sześciu znaków alfanumerycznych. Eth Nazwa tabeli tras składowych Nazwa tabeli tras lidera. Tę wartość można znaleźć w danych wyjściowych wdrożenia lidera. Zdalna przestrzeń adresowa sieci wirtualnej elementu członkowskiego Przestrzeń adresowa elementu członkowskiego. Tę wartość można znaleźć w danych wyjściowych wdrożenia członka. Publiczny adres IP urządzenia WUS członka zdalnego Adres IP urządzenia WUS do nawiązania połączenia. Tę wartość można znaleźć w danych wyjściowych wdrożenia członka. Klucz współużytkowany połączenia Wstępnie ustanowiona tajemnica między członkami sieci konsorcjum, które ustanawiają połączenie. Prywatny adres IP urządzenia WUS elementu członkowskiego Adres IP urządzenia WUS elementu członkowskiego. Tę wartość można znaleźć w danych wyjściowych wdrożenia członka. Podstawowy adres URL Podstawowy adres URL, w którym można pobrać szablony wdrażania. Użyj wartości domyślnej, chyba że chcesz dostosować szablony wdrażania. Wybierz pozycję Przejrzyj i utwórz. Po pomyślnym zakończeniu walidacji wybierz pozycję Utwórz.
Po zakończeniu wdrażania trwa kilka minut, aby lider i członek rozpocząć komunikację. Aby zweryfikować wdrożenie, odśwież witrynę administracyjną członka. Stan węzłów elementu członkowskiego powinien być uruchomiony.
Następne kroki
Aby dowiedzieć się więcej na temat platformy Ethereum i platformy Azure, zobacz Technologie i aplikacje łańcucha bloków.