FoundationDB
跳至導覽
跳至搜尋
FoundationDB是Apple維護的NoSQL資料庫。
安裝
在Ubuntu下可以使用官方打包好的deb安裝7.1版:
cd /tmp; wget -c https://github.com/apple/foundationdb/releases/download/7.1.65/foundationdb-clients_7.1.65-1_amd64.deb; sudo dpkg -i foundationdb-clients_7.1.65-1_amd64.deb; wget -c https://github.com/apple/foundationdb/releases/download/7.1.65/foundationdb-server_7.1.65-1_amd64.deb; sudo dpkg -i foundationdb-server_7.1.65-1_amd64.deb
也可以安裝7.3版,但我無法跑起cluster模式:
cd /tmp; wget -c https://github.com/apple/foundationdb/releases/download/7.3.43/foundationdb-clients_7.3.43-1_amd64.deb; sudo dpkg -i foundationdb-clients_7.3.43-1_amd64.deb; wget -c https://github.com/apple/foundationdb/releases/download/7.3.43/foundationdb-server_7.3.43-1_amd64.deb; sudo dpkg -i foundationdb-server_7.3.43-1_amd64.deb
設定
Cluster
這邊假設有三台機器,先把FoundationDB跑在Public Interface上(預設會跑在127.0.0.1
上):
sudo python3 /usr/lib/foundationdb/make_public.py
sudo service foundationdb restart
然後修改/etc/foundationdb/fdb.cluster
檔案,把第一個檔案複製到其他兩個,然後重啟:
echo "username:password@192.168.1.1:4500" | sudo tee /etc/foundationdb/fdb.cluster
sudo service foundationdb restart
接著進入fdbcli設定成SSD:
configure perpetual_storage_wiggle=1 storage_migration_type=gradual
configure ssd
然後將Redundancy mode設定成double
(可以是single
或是triple
):
configure double
最後設定coordinators:
coordinators 192.168.1.1:4500 192.168.1.2:4500 192.168.1.3:4500
結束後可以用status
指令看cluster的狀態。
測試
先進入CLI介面:
fdbcli
在CLI的預設是唯獨模式,透過指令允許送出寫入操作:
writemode on
接著可以進行操作:
get a/b/c
set a/b/c foo
get a/b/c
clear a/b/c
get a/b/c