pilicat-dfs 霹靂貓-分佈式文件系統

pilicat-dfs

霹靂貓-分佈式文件系統node

一種能夠將網站圖片或上傳的文件,進行分佈式存放的服務,可自動複製到多臺物理機器,可知足高可用和負載均衡linux

已編譯好的程序包

http://git.oschina.net/tavenli/pilicat-dfs/releasesnginx

功能介紹

支持多個dfs-nodegit

支持對上傳的文件自動複製到多個dfs-nodegithub

支持 RestfulAPI 接口,方便各類語言調用web

能夠對dfs-node進行分組api

爲何要使用pilicat-dfs

  • 可以使每一個應用系統上傳的附件,不存放在應用系統目錄下,即便上傳了圖片木馬,也執行不了,由於dfs是純靜態服務器

  • 可同時知足多個應用系統上傳附件的需求,將多個應用上傳的附件存放在統一的一組服務器,方便管理app

  • 能夠更好的實現CDN,加速對靜態資源的訪問,由於這裏都是純靜態負載均衡

  • 同一份文件,自動分發到多臺物理節點,並支持經過 lvs 或 nginx 實現負載均衡,實現高可用和物理容災

  • 還有不少優勢,就不所有闡述了...

功能使用

  1. dfs-node當作單節點使用,非集羣高可用方式
  • 啓動dfs-node
cd dfs-node_linux64_v1.0.0
./start.sh

  

  • 上傳文件測試
curl -X POST -F file=@/app/test.jpg http://127.0.0.1:8800/api/file

  

  • 服務返回信息
{
    "Code": 0,
    "Msg": "success",
    "Data": {
        "FileUrlPath": "/file/2017/07/21/5e30cf328e44824ece5ddc52b629b73c.jpg",
        "OrgFileName": "test.jpg",
        "PubUrl": "http://dsf.hicode.top/file/2017/07/21/5e30cf328e44824ece5ddc52b629b73c.jpg"
    }
}

 

dfs-node配置文件說明

node.name = "dfs-node-1"    //節點名稱,在同一個center中惟一
node.public.addr = "0.0.0.0:8700"    //用於對外訪問端口,主要供web訪問上傳後的文件,若是是80端口直接對外,可直接綁到80端口上
node.api.addr = "0.0.0.0:8800"    //用於內網接口,文件上傳、覆蓋、刪除等操做,都經過該端口,一般綁定在內網IP
node.auth.type = "IpWhiteList"    //內網接口的鑑權方式,目前支持 SecretAuth 和 IpWhiteList兩種方式,若是不須要鑑權,該項內容留空,或不配置便可
node.auth.token = "26CCD056107481F45D1AC805A24A9E59"    //當鑑權類型爲 SecretAuth 時,須要配置該項
node.ip.white.list = "127.0.0.1,192.168.1.0/24"    //當鑑權類型爲 IpWhiteList 時,須要配置該項

dfs.center = "192.168.1.200:8000"    //集羣高可用服務所在位置,用於自動註冊dfs-node
dfs.public.url = "http://dsf.hicode.top:8700"    //用於對外訪問的域名
相關文章
相關標籤/搜索