多節點ipfs安裝
星際檔案系統IPFS(Inter-Planetary File System)是一個面向全球的、點對點的分散式版本檔案系統,目標是為了補充(甚至是取代)目前統治網際網路的超文字傳輸協議(HTTP),將所有具有相同檔案系統的計算裝置連線在一起。原理用基於內容的地址替代基於域名的地址,也就是使用者尋找的不是某個地址而是儲存在某個地方的內容,不需要驗證傳送者的身份,而只需要驗證內容的雜湊,通過這樣可以讓網頁的速度更快、更安全、更健壯、更持久。
git原始碼地址:https://github.com/ipfs/go-ipfs
安裝包下載地址:https://github.com/ipfs/go-ipfs/releases
本文以最新的版本0.4.19為例進行。
需要先安裝golang環境,可參考前面的文章。版本建議在go1.11.5以上。
1、下載原始碼包
wget https://github.com/ipfs/go-ipfs/releases/download/v0.4.19/go-ipfs_v0.4.19_linux-amd64.tar.gz
2、解壓到自定義目錄
tar -zxvf go-ipfs_v0.4.19_linux-amd64.tar.gz
3、進入go-ipfs目錄,執行
sudo sh install.sh
4、安裝成功後,執行命令:
$ ipfs --version
ipfs version 0.4.19
5、初始化ipfs,在使用者目錄下生成 ~/.ipfs 目錄
$ipfs init
$ls ~/.ipfs
api blocks config datastore datastore_spec keystore repo.lock swarm.key version
6、編輯配置檔案config,找到address節點:
"Addresses": {
"API": "/ip4/172.19.101.62/tcp/5001",
"Announce": [],
"Gateway": "/ip4/172.19.101.62/tcp/8080",
"NoAnnounce": [],
"Swarm": [
"/ip4/0.0.0.0/tcp/4001",
"/ip6/::/tcp/4001"
]
}
將API、Gateway修改為自己的IP地址,如本機ip為:172.19.101.62
7、當我們在前端通過js介面操作ipfs時,會遇到跨域資源訪問問題,可以在終端執行以下配置來解決:
ipfs config --json API.HTTPHeaders.Access-Control-Allow-Methods '["PUT","GET", "POST", "OPTIONS"]'
ipfs config --json API.HTTPHeaders.Access-Control-Allow-Origin '["*"]'
ipfs config --json API.HTTPHeaders.Access-Control-Allow-Credentials '["true"]'
ipfs config --json API.HTTPHeaders.Access-Control-Allow-Headers '["Authorization"]'
ipfs config --json API.HTTPHeaders.Access-Control-Expose-Headers '["Location"]'
8、退出編輯,執行命令
$ipfs daemon
$nohup ipfs daemon & //後臺啟動執行
9、啟動就觀察日誌如果正常,在瀏覽器中輸入:
http://172.19.101.62:5001/webui
即可檢視到ipfs web頁面。
10、在另外的節點機器上執行以上相同的操作後,代表單節點各自完成。
11、ipfs初始化時,已經在配置檔案中加入了初始引導節點,這些節點需要在private網路中去除。執行命令:
$ ipfs bootstrap rm all
12、選擇其中一臺作為引導節點,在全部節點上執行:
ipfs bootstrap add /ip4/172.19.101.62/tcp/4001/ipfs/QmPB31AAmt5x5nEnwmHUC2A922c44hqd6kWVmQqWajwgBi
以上地址可以通過命令獲取:ipfs id
13、重新啟動各節點,先啟動62這臺機器,完成多節點部署。
14、驗證。生成一個檔案1.txt,內容為hello world!,執行命令:
$ ipfs add 1.txt
added QmQ1WrxowZGjsrsGr7cGPtyB1PLU8238SJcV6uLJeQc2Kf 1.txt
15、生成一串hash便是檔案在網路中的地址,通過命令檢視:
$ ipfs cat QmQ1WrxowZGjsrsGr7cGPtyB1PLU8238SJcV6uLJeQc2Kf
hello world!
16、在多個節點上進行相同驗證。
至此,部署完成。
相關文章
- 【戴嘉樂】IPFS Desktop:IPFS節點桌面管理AppAPP
- IPFS的PowerShell安裝
- greenplum單節點安裝
- 2節點RAC安裝
- 4.2 IPFS基本安裝使用
- vertica單節點安裝教程
- linux下安裝redis 單節點安裝操作步驟LinuxRedis
- Node-red節點安裝換源
- oracle 12c RAC安裝,例項不能多節點同時啟動Oracle
- minio多節點
- kubernetes實踐之五:Node節點安裝
- Redis的安裝及建立節點、部署群集Redis
- 【沃趣科技】MySQL高可用工具Orchestrator系列五:raft多節點模式安裝MySqlRaft模式
- 在Docker中安裝MySQL 8.0.19之MGR(單主模式&多主模式)+新增節點DockerMySql模式
- consul 多節點/單節點叢集搭建
- fabric多機多節點部署
- Windows 11.2.0.4 RAC安裝配置以及RAC新增節點Windows
- 安裝 Hadoop:設定單節點 Hadoop 叢集Hadoop
- Kubernetes安裝之九:配置node節點之kubelet
- windows下安裝Jenkins以及配置分散式agent節點WindowsJenkins分散式
- dubbo系列(一):linux安裝dubbo與zookeeper(單節點)Linux
- Linux裝置節點Linux
- CentOS7 單節點和多節點 HPL測試CentOS
- Kubernetes安裝之十:配置node節點之kube-proxy
- kubernetes實踐之三十四: Master節點安裝與配置AST
- css 定位如何依次定位多個節點下面的子節點CSS
- WebRTC本地插入多個轉發節點,模擬多節點轉發,造成延遲Web
- MySQL高可用工具Orchestrator系列一:單節點模式安裝MySql模式
- CentOS7安裝OpenStack(Rocky版)-02.安裝Keyston認證服務元件(控制節點)CentOS元件
- Geth搭建多節點私有鏈條
- ubuntu20安裝nginx支援多站點及代理配置UbuntuNginx
- Vmware linux redhat6.4 安裝11g(11.2.0.1) 雙節點RACLinuxRedhat
- kubernetes——二進位制多節點部署
- 透過Geth搭建多節點私有鏈
- 使用devstack/pike部署多節點實驗dev
- Oceanbase 4.0 三節點叢集x86平臺安裝實踐
- Oracle 19c rac安裝,只能啟動一個節點的ASMOracleASM
- Ubuntu安裝golang多版本UbuntuGolang