Go-Ethereum

在 AWS 上執行 Swarm

  • September 7, 2018

在 azure 上成功設置 POA 網路後(為一鍵部署歡呼),我想設置一個私有 Swarm 集群(好吧,1 個節點將用於測試)。

我使用了一個 AWS EC2 實例來節省我的 azure 免費積分(色調)。

我為 IN 和 OUTbound 流量打開了以下埠:

  • HTTP (8080) TCP
  • HTTPS (443) TCP
  • SSH (22) TCP
  • BZZ:(8500)TCP
  • BZZ:(8500)UDP

我還打開了埠來 ping 實例,並且可以成功 ping 公網 IP。

這是我用來啟動實例的命令。請注意,我嘗試將 bzzapi 設置為預設值、0.0.0.0:8500 和公共 IP。

ubuntu@ip-172-31-35-99:~$ 
swarm --bzzaccount b84c12c07f155d4ca0e1d0178367f426943eb056  --datadir swarm --keystore swarm/keystore --bzzapi http://18.221.205.37:8500 --ens-api "" --bzzport 8500 -corsdomain "*"

我無法連接到端點

但是,我可以 ping 實例:

ping 18.221.205.37

Pinging 18.221.205.37 with 32 bytes of data:
Reply from 18.221.205.37: bytes=32 time=108ms TTL=41
Reply from 18.221.205.37: bytes=32 time=109ms TTL=41
Reply from 18.221.205.37: bytes=32 time=108ms TTL=41
Reply from 18.221.205.37: bytes=32 time=108ms TTL=41

有任何想法嗎?我覺得它類似於這個問題:連接錯誤 - 無法連接到 AWS 上的乙太坊節點 http://xx.xxx.xx.xxx:8545

所以顯然你必須進行兩個設置。

你必須設置

–bzzapi 到 AWS 公共 IP

–listenaddr 為 0.0.0.0 而不是預設的 127.0.0.1

現在它起作用了!

引用自:https://ethereum.stackexchange.com/questions/58254