之前在CSDN 上觀看了騰訊大數據開放日對於國產NoSQL數據庫SequoiaDB 的介紹,很感興趣,前些天得空,自己也安裝嘗試了一下,昨天在論壇遇到了其他愛好者對於SequoiaDB安裝配置的問題,今天就一步步地詳細圖解一下安裝過程。
一.環境說明
二.環境配置
依照SequoiaDB的官網(http://www.sequoiadb.com/)的信息中心給出的文檔檢查數據庫安裝運行的各種條件:硬件條件,操作系統等。
接着按照官方給出的軟件條件,配置主機名和IP的映射關係:
sudo vi /etc/hostname
配置主機名,爲了避免不必要的麻煩,我們這裏按照文檔設置成sdbserver1。
Sudo vi /etc/hosts
配置各個主機名和IP的映射關係,因爲我們只有一臺主機,所以只需添加sdbserver1 和本機IP的映射關係即可。
到這裏必要的環境設置配置完了。
三.下載安裝
首先,我們從SequoiaDB的官網下載對應版本的最新安裝包。我下載的是最新的1.6 sp2版本的Linux X86版本的。 解壓縮的到run包:
sudo ./sequoiadb-1.6_sp2-1inux_x86_64-installer.run–mode text
安裝數據庫,輸入1選擇英文版本,一路Enter
接受條款,選擇安裝目錄,創建用戶密碼,設置集羣端口,繼續完成安裝。這裏除了用戶爲了簡短我設置成了admin用戶外,其他都使用了默認設置。
這樣安裝就完成了。
四.單機集羣模式的配置與啓動
爲了全面的體驗SequoiaDB 的各種功能,高可用部署的多節點集羣模式是必要的,因爲我只有一臺物理機,所以通過改變端口的方式嘗試配置了單機環境下的集羣模式,這也是比較容易出錯和疑惑的地方。
這張圖顯示了我們將要配置的集羣模式架構,三組協調、編目、主數據節點共同組成了一個集羣。
使用su admin 切換到我們剛剛在安裝數據庫時添加的數據庫管理用戶(默認是用戶是sdbadmin)。
步驟一:檢查SequoiaDB的服務狀態
在每臺數據庫服務器上檢查sequoiadb配置服務狀態:service sdbcm status
確認系統提示“ sdbcm is running ”表示服務正在運行,否則請執行如下命令重新配置服務程序:service sdbcm start
步驟二:啓動協調節點
確認完成後開始啓動第一個協調節點。協調節點的作用是在各個服務器之間進行通訊。
mkdir -p /opt/sequoiadb/conf/local/11810
創建協調節點配置文件的目錄。其中11810是選擇的協調節點的服務端口,如果被佔用,可根據需要配置。
3.拷貝協調節點樣例配置文件
cp /opt/sequoiadb/conf/samples/sdb.conf.coord /opt/sequoiadb/conf/local/11810/sdb.conf
將SequoiaDB 提供的協調節點的配置文件模板拷貝到剛剛創建的第一個協調節點配置目錄下
4.修改配置文件
vi /opt/sequoiadb/conf/local/11810/sdb.conf
對模板配置進行調整,需要調整的地方是:
# database path
dbpath=/opt/sequoiadb/database/coord
該參數爲數據庫放置路徑,可根據需要修改,這裏我選擇保留使用默認的路徑。
5.創建數據文件存放路徑
mkdir -p /opt/sequoiadb/database/coord
路徑爲上一步驟配置的路徑
6.啓動協調節點進程
/opt/sequoiadb/bin/sdbstart -c /opt/sequoiadb/conf/local/11810/
步驟三:通過命令配置和啓動編目節點
1.啓動了協調節點後我們就可以通過SequoiaDB提供的Shell控制檯來對數據庫進行操作了
/opt/sequoiadb/bin/sdb
啓動shell控制檯,這個控制檯支持javascript命令
2.連接到協調節點
在shell 命令中輸入:
>var db = new Sdb("localhost",11810)
這條命令創建了一個新的db變量通過11810端口引用了本地的數據庫對象,其中11810爲協調節點端口號
3.爲本地的數據庫創建一個編目節點組
編目節點是用來儲存每個服務器所存放的數據的編目信息的節點。
db.createCataRG("sdbserver1",11800, "/opt/sequoiadb/database/cata/11800")
sdbserver1 是我們一開始配置的本機的主機名;
11800 是我們指定的編目節點服務端口,之所以使用11800是因爲通常一個SequoiaDB 的節點需要佔用5個端口,即配置端口爲11810的協調節點需要佔用11810到11814的五個端口,這個在後面的節點配置步驟中可以有一個更清楚的理解。所以爲了簡便安全,每個節點之間最好間隔10個端口。
/opt/sequoiadb/database/cata/11800:爲編目節點的數據文件存放路徑;
4.給剛剛創建的編目節點組添加另外兩個編目節點
>var cataRG =db.getRG("SYSCatalogGroup");
>var node1 =cataRG.createNode("sdbserver1", 11830,"/opt/sequoiadb/database/cata/11830")
>var node2 =cataRG.createNode("sdbserver1", 11840,"/opt/sequoiadb/database/cata/11840")
另兩個編目節點的端口分別爲11830和11840,主機名依然是本機名。
5.啓動編目節點組
>node1.start()
>node2.start()
步驟四:通過命令配置和啓動數據節點
數據節點是用來儲存數據的節點,在同一個數據節點組的所有數據節點裏的數據保持一致,互爲備份。
1.創建數據節點組
>var dataRG =db.createRG("datagroup")
2.添加數據節點
>dataRG.createNode("sdbserver1",11850, "/opt/sequoiadb/database/data/11850")
>dataRG.createNode("sdbserver1",11860, "/opt/sequoiadb/database/data/11860")
>dataRG.createNode("sdbserver1",11870, "/opt/sequoiadb/database/data/11870")
三個數據節點的配置主機名依然是本機名,端口分別爲11850,11860,11870
3.啓動數據節點組
>dataRG.start()
4.退出SequoiaDB shell控制檯
>quit
步驟五:添加最後兩個協調節點
至此,已經爲數據庫添加了一個協調節點,三個編目節點和三個數據節點。接下來再依照步驟一和二添加最後兩個協調節點。
1.創建數據節點的配置目錄
mkdir -p /opt/sequoiadb/conf/local/11880
mkdir -p /opt/sequoiadb/conf/local/11890
繼續在剛剛使用的端口號後遞增10,使用11880、11890做爲第二三個協調節點的服務端口
2.拷貝協調節點樣例配置文件
cp/opt/sequoiadb/conf/samples/sdb.conf.coord /opt/sequoiadb/conf/local/11880/sdb.conf
cp/opt/sequoiadb/conf/samples/sdb.conf.coord /opt/sequoiadb/conf/local/11890/sdb.conf
3.修改配置文件
vi /opt/sequoiadb/conf/local/11880/sdb.conf
將默認路徑和第一個協調節點改爲不同的路徑,這裏我將所有的coord目錄改爲了coor2,將五個服務端口都設置爲11880之後的連續五個端口。
以同樣的方式修改第三個協調節點11890 的配置信息,目錄爲/opt/sequoiadb/database/coord3
4.創建數據文件存放路徑
mkdir -p /opt/sequoiadb/database/coord2
mkdir -p /opt/sequoiadb/database/coord3
路徑爲上一步驟配置的路徑
5.啓動協調節點進程
/opt/sequoiadb/bin/sdbstart -c/opt/sequoiadb/conf/local/11880/
/opt/sequoiadb/bin/sdbstart -c/opt/sequoiadb/conf/local/11890/
五.搞定收工!
使用ps –elf | grep sequoiadb 命令檢查所有9個節點是否都正常運行
如果是,配置完成~可以在單個物理機內全面體驗測試一下SequoiaDB 的全面功能了~