Menyebarkan jaringan blockchain Ethereum di Azure Stack Hub

Template solusi Ethereum dirancang untuk memudahkan dan mempercepat penyebaran dan konfigurasi jaringan blockchain Ethereum konsorsium multi-anggota dengan pengetahuan Azure dan Ethereum minimal.

Dengan beberapa input pengguna dan penyebaran satu klik melalui portal penyewa Azure Stack Hub, setiap anggota dapat memprovisikan jejak jaringan mereka. Jejak jaringan setiap anggota terdiri dari tiga hal:

  1. Satu set node transaksi hasil load-balancing yang dapat berinteraksi dengan aplikasi atau pengguna untuk mengirimkan transaksi.
  2. Satu set node penambangan untuk mencatat transaksi.
  3. Network Virtual Appliance (NVA).

Langkah koneksi selanjutnya menghubungkan NVA untuk membuat jaringan blockchain multi-anggota yang dikonfigurasi sepenuhnya.

Untuk menyiapkan:

  • Pilih arsitektur penyebaran.
  • Menyebarkan jaringan mandiri, pemimpin konsorsium, atau anggota konsorsium.

Prasyarat

Unduh item terbaru dari Marketplace:

  • Ubuntu Server 16.04 LTS
  • Server Windows 2016
  • Skrip Kustom untuk Linux 2.0
  • Ekstensi Skrip Kustom untuk Windows

Arsitektur Penyebaran

Template solusi ini dapat menyebarkan jaringan konsorsium Ethereum tunggal atau multi-anggota. Jaringan virtual terhubung dalam topologi rantai menggunakan Network Virtual Appliance dan sumber daya koneksi.

Templat ini dapat menyebarkan konsorsium Ethereum untuk pemimpin dan anggota dalam berbagai cara. Berikut adalah yang telah kami uji:

  • Pada Azure Stack Hub multi-simpul, dengan ID Microsoft Entra atau LAYANAN Federasi Direktori Aktif, sebarkan prospek dan anggota menggunakan langganan yang sama atau dengan langganan yang berbeda.
  • Pada Azure Stack Hub simpul tunggal (dengan ID Microsoft Entra), sebarkan prospek dan anggota menggunakan langganan yang sama.

Penyebaran pemimpin konsorsium dan mandiri

Templat pemimpin konsorsium mengonfigurasi jejak anggota pertama dalam jaringan.

  1. Unduh templat pemimpin dari GitHub.

  2. Di portal penyewa Azure Stack Hub, pilih + Buat penyebaran Templat sumber daya > untuk menyebarkan dari templat kustom.

  3. Pilih Buat templat Anda sendiri di editor untuk mengedit templat kustom baru.

  4. Di panel pengeditan di sebelah kanan, salin dan tempel templat pemimpin JSON yang sebelumnya Anda unduh.

    Mengedit templat dengan templat pemandu yang ditempelkan

  5. Pilih Simpan.

  6. Di tab Dasar, selesaikan pengaturan berikut:

    Nama parameter Deskripsi Sampel nilai
    Langganan Langganan tempat jaringan konsorsium disebarkan. Langganan Konsumsi
    Grup sumber daya Grup sumber daya untuk menyebarkan jaringan konsorsium. EthereumResources
    Wilayah Wilayah Azure untuk sumber daya. Lokal
    Awalan nama String yang digunakan sebagai dasar untuk menamai sumber daya yang digunakan. Gunakan maksimal enam karakter alfanumerik. eth
    Jenis Auth Metode untuk mengautentikasi ke VM. Nilai yang diizinkan adalah kata sandi atau kunci publik SSH. Kata sandi
    Nama Pengguna Admin Nama pengguna admin dari setiap VM yang disebarkan. Gunakan satu hingga 64 karakter. gethadmin
    Kata sandi admin (Jenis autentikasi = Kata sandi) Kata sandi untuk akun administrator untuk masing-masing VM yang disebarkan. Kata sandi harus berisi 3 dari persyaratan berikut: 1 karakter huruf besar, 1 karakter huruf kecil, 1 angka, dan 1 karakter khusus.
    Meskipun semua VM awalnya memiliki kata sandi yang sama, Anda dapat mengubah kata sandi setelah provisi. Gunakan 12 hingga 72 karakter.
    Kunci SSH Admin (Jenis autentikasi = sshPublicKey) String kunci publik shell RSA yang digunakan untuk masuk dari jarak jauh.
    Blok Genesis String JSON yang mewakili blok genesis kustom. Menentukan nilai untuk parameter ini bersifat opsional.
    Kata sandi akun Ethereum Kata sandi admin yang digunakan untuk mengamankan akun Ethereum.
    Frase sandi akun Ethereum Frase sandi yang digunakan untuk menghasilkan kunci privat yang terkait dengan akun Ethereum. Pertimbangkan untuk menggunakan kata sandi yang cukup acak untuk memastikan kunci privat yang kuat.
    ID jaringan Ethereum ID jaringan konsorsium. Gunakan nilai apa pun antara 5 dan 999.999.999. 72
    ID anggota konsorsium ID yang terkait dengan setiap anggota jaringan konsorsium. ID ini harus unik dalam jaringan. 0
    Jumlah node penambangan Jumlah node penambangan untuk setiap anggota konsorsium. Gunakan nilai antara 2 dan 15. 2
    Ukuran VM node penambangan Ukuran VM dari node penambangan. Standar_A1
    Jenis akun penyimpanan penambangan Performa penyimpanan node penambangan. Standard_LRS
    Jumlah node TX Jumlah node transaksi yang melalui proses load balancing. Gunakan nilai antara 1 dan 5. 1
    Ukuran VM node TX Ukuran VM dari node transaksi. Standar_A1
    Jenis akun penyimpanan TX Performa penyimpanan node transaksi. Standard_LRS
    URL Dasar Dasar URL tempat templat penyebaran didapatkan. Gunakan nilai default kecuali Anda ingin menyesuaikan templat penyebaran.
  7. Pilih Tinjau + buat. Setelah validasi berhasil, pilih Buat.

Proses penyelesaian penyebaran dapat memakan waktu 20 menit atau lebih.

Setelah penyebaran selesai, tinjau ringkasan penyebaran untuk Microsoft.Template di bagian penyebaran grup sumber daya. Ringkasan berisi nilai output yang digunakan untuk menggabungkan anggota konsorsium.

Untuk memverifikasi penyebaran pemimpin, buka situs admin pemimpin. Alamat situs admin ditemukan di bagian output penyebaran Microsoft.Template.

Ringkasan penyebaran pemimpin

Menggabungkan penyebaran anggota konsorsium

  1. Unduh templat anggota konsorsium dari GitHub.

  2. Di portal penyewa Azure Stack Hub, pilih + Buat penyebaran Templat sumber daya > untuk menyebarkan dari templat kustom.

  3. Pilih Buat templat Anda sendiri di editor untuk mengedit templat kustom baru.

  4. Di panel pengeditan di sebelah kanan, salin dan tempel JSON templat anggota konsorsium yang sebelumnya Anda unduh.

  5. Pilih Simpan.

  6. Di tab Dasar, selesaikan pengaturan berikut:

    Nama parameter Deskripsi Sampel nilai
    Langganan Langganan tempat jaringan konsorsium disebarkan. Langganan Konsumsi
    Grup sumber daya Grup sumber daya untuk menyebarkan jaringan konsorsium. EthereumResources
    Wilayah Wilayah Azure untuk sumber daya. Lokal
    Awalan nama String yang digunakan sebagai dasar untuk menamai sumber daya yang digunakan. Gunakan maksimal enam karakter alfanumerik. eth
    Jenis Auth Metode untuk mengautentikasi ke VM. Nilai yang diizinkan adalah Kata sandi atau Kunci publik SSH. Kata sandi
    Nama Pengguna Admin Nama pengguna admin dari setiap VM yang disebarkan. Gunakan satu hingga 64 karakter. gethadmin
    Kata sandi admin (Jenis autentikasi = Kata sandi) Kata sandi untuk akun administrator untuk masing-masing VM yang disebarkan. Kata sandi harus berisi 3 dari persyaratan berikut: 1 karakter huruf besar, 1 karakter huruf kecil, 1 angka, dan 1 karakter khusus.
    Meskipun semua VM awalnya memiliki kata sandi yang sama, Anda dapat mengubah kata sandi setelah provisi. Gunakan 12 hingga 72 karakter.
    Kunci SSH Admin (Jenis autentikasi = sshPublicKey) String kunci publik shell RSA yang digunakan untuk masuk dari jarak jauh.
    Blok Genesis String JSON yang mewakili blok genesis kustom. Menentukan nilai untuk parameter ini bersifat opsional.
    Kata sandi akun Ethereum Kata sandi admin yang digunakan untuk mengamankan akun Ethereum.
    Frase sandi akun Ethereum Frase sandi yang digunakan untuk menghasilkan kunci privat yang terkait dengan akun Ethereum. Pertimbangkan untuk menggunakan kata sandi yang cukup acak untuk memastikan kunci privat yang kuat.
    ID anggota konsorsium ID yang terkait dengan setiap anggota jaringan konsorsium. ID ini harus unik dalam jaringan. 0
    Jumlah node penambangan Jumlah node penambangan untuk setiap anggota konsorsium. Gunakan nilai antara 2 dan 15. 2
    Ukuran VM node penambangan Ukuran VM dari node penambangan. Standar_A1
    Jenis akun penyimpanan penambangan Performa penyimpanan node penambangan. Standard_LRS
    Jumlah node TX Jumlah node transaksi yang melalui proses load balancing. Gunakan nilai antara 1 dan 5. 1
    Ukuran VM node TX Ukuran VM dari node transaksi. Standar_A1
    Jenis akun penyimpanan TX Performa penyimpanan node transaksi. Standard_LRS
    Data konsorsium URL yang mengarah ke data konfigurasi konsorsium yang relevan yang disediakan oleh penyebaran anggota lain. Nilai ini dapat ditemukan di output penyebaran pemimpin.
    Ruang alamat VNET anggota jarak jauh Ruang alamat VNET pemimpin. Nilai ini dapat ditemukan di output penyebaran pimpinan.
    IP publik NVA anggota jarak jauh Alamat IP NVA pimpinan. Nilai ini dapat ditemukan di output penyebaran pimpinan.
    Kunci koneksi bersama Rahasia yang telah dibuat di antara anggota jaringan konsorsium yang membuat koneksi gateway.
    URL Dasar Dasar URL tempat templat penyebaran didapatkan. Gunakan nilai default kecuali Anda ingin menyesuaikan templat penyebaran.
  7. Pilih Tinjau + buat. Setelah validasi berhasil, pilih Buat.

Proses penyelesaian penyebaran dapat memakan waktu 20 menit atau lebih.

Setelah penyebaran selesai, tinjau ringkasan penyebaran untuk Microsoft.Template di bagian penyebaran grup sumber daya. Ringkasan berisi nilai output yang digunakan untuk menghubungkan anggota konsorsium.

Untuk memverifikasi penyebaran anggota, telusuri situs admin anggota. Anda dapat alamat situs admin di bagian output penyebaran Microsoft.Template.

Ringkasan penyebaran anggota

Seperti yang ditunjukkan pada gambar, status node anggota Tidak berjalan. Status ini karena hubungan antara anggota dan pemimpin tidak terjalin. Hubungan antara anggota dan pemimpin adalah koneksi dua arah. Saat Anda menyebarkan anggota, templat secara otomatis membuat koneksi dari anggota ke pimpinan. Untuk membuat koneksi dari pimpinan ke anggota, buka langkah berikutnya.

Menyambungkan anggota dan pimpinan

Templat ini membuat koneksi dari pimpinan ke anggota jarak jauh.

  1. Unduh templat sambungan anggota dan pemimpin dari GitHub.

  2. Di portal penyewa Azure Stack Hub, pilih + Buat penyebaran Templat sumber daya > untuk menyebarkan dari templat kustom.

  3. Pilih Buat templat Anda sendiri di editor untuk mengedit templat kustom baru.

  4. Di panel pengeditan di sebelah kanan, salin dan tempel JSON templat anggota konsorsium yang sebelumnya Anda unduh.

  5. Pilih Simpan.

  6. Selesaikan pengaturan berikut.

    Nama parameter Deskripsi Sampel nilai
    Langganan Langganan tempat jaringan konsorsium disebarkan. Langganan Konsumsi
    Grup sumber daya Grup sumber daya untuk menyebarkan jaringan konsorsium. EthereumResources
    Wilayah Wilayah Azure untuk sumber daya. Lokal
    Awalan nama anggota String yang digunakan sebagai dasar untuk menamai sumber daya yang digunakan. Gunakan maksimal enam karakter alfanumerik. eth
    Nama tabel rute anggota Nama tabel rute pimpinan. Nilai ini dapat ditemukan di output penyebaran pimpinan.
    Ruang alamat VNET anggota jarak jauh Ruang alamat anggota. Nilai ini dapat ditemukan di output penyebaran anggota.
    IP publik NVA anggota jarak jauh Alamat IP NVA untuk terhubung. Nilai ini dapat ditemukan di output penyebaran anggota.
    Kunci koneksi bersama Rahasia yang telah dibuat di antara anggota jaringan konsorsium yang membuat koneksi.
    IP privat NVA anggota Alamat IP NVA anggota. Nilai ini dapat ditemukan di output penyebaran anggota.
    URL Dasar Dasar URL tempat templat penyebaran didapatkan. Gunakan nilai default kecuali Anda ingin menyesuaikan templat penyebaran.
  7. Pilih Tinjau + buat. Setelah validasi berhasil, pilih Buat.

Setelah penyebaran selesai, dibutuhkan beberapa menit agar pemimpin dan anggota memulai komunikasi. Untuk memverifikasi penyebaran, refresh situs admin anggota. Status node anggota akan berjalan.

Memverifikasi penyebaran

Langkah berikutnya

Untuk mempelajari Ethereum dan Azure lebih lanjut, lihat Teknologi dan Aplikasi Blockchain.