如何利用DC/OS平臺部署Cassandra

這篇文章給大家介紹如何利用DC/OS平臺部署Cassandra,內(nèi)容非常詳細,感興趣的小伙伴們可以參考借鑒,希望對大家能有所幫助。

網(wǎng)站建設(shè)哪家好,找成都創(chuàng)新互聯(lián)公司!專注于網(wǎng)頁設(shè)計、網(wǎng)站建設(shè)、微信開發(fā)、微信小程序、集團企業(yè)網(wǎng)站建設(shè)等服務(wù)項目。為回饋新老客戶創(chuàng)新互聯(lián)還提供了富蘊免費建站歡迎大家使用!

Cassandra是一個開源的分布式數(shù)據(jù)庫,具有高度可用性,去中心化,高容錯性和易于縮放等特點,在當(dāng)今的大數(shù)據(jù)領(lǐng)域(比如SMACK)是非常流行的工具。在DC/OS中就支持Cassandra數(shù)據(jù)庫,并且包含了非常多的功能,此外,DC/OS還提供了認(rèn)證的SMACK技術(shù)棧中其他軟件包,這無疑大大簡化了大數(shù)據(jù)框架的安裝管理。

假設(shè)你已經(jīng)有了一個DC/OS集群,我們建議你首選安裝那些認(rèn)證的數(shù)據(jù)軟件包(參考這篇博客了解什么是認(rèn)證的軟件包),這里我們會安裝Cassandra軟件包。

準(zhǔn)備Cassandra安裝環(huán)境


使用默認(rèn)的配置參數(shù)安裝一個最小的Cassandra環(huán)境,需要DC/OS集群有3個私有節(jié)點,Cassandra會在每個agent節(jié)點上部署一個Cassandra數(shù)據(jù)節(jié)點服務(wù),每個agent節(jié)點需要至少1.5個CPU和5G的內(nèi)存資源。

如果初始的默認(rèn)安裝無法滿足后續(xù)服務(wù)要求,可以通過DC/OS CLI命令來擴展你的Cassandra數(shù)據(jù)節(jié)點個數(shù)。

安裝Cassandra


可以通過DC/OS的界面或者命令行來安裝Cassandra,唯一的不同點在于:通過界面安裝Cassandra服務(wù)后,還需要額外操作來安裝Cassandra子命令,而通過命令行安裝就不需要。

在DC/OS界面上,找到“Catalog”頁面,然后搜索查找“Cassandra”軟件包,點選Cassandra圖標(biāo),然后點擊安裝頁面那個紫色的按鈕“Review&Run”開始安裝,可以在界面的“Service”頁面查看安裝進度,然后在DC/OS命令行中通過如下命令安裝Cassandra子命令:

dcos package install --cli cassandra

如何利用DC/OS平臺部署Cassandra

或者,你也可以直接通過DC/OS命令行安裝Cassandra:

dcos package install cassandra 

然后用cassandra子命令查看安裝進度:

dcos cassandra plan show deploy

操作Cassandra集群


這里我們用到2個Cassandra子命令:describe和endpoints,這兩個命令會返回Cassandra集群的一些詳細信息。

dcos cassandra describe命令會以json格式返回cassandra集群的配置信息,節(jié)點信息和服務(wù)信息,如下:

如何利用DC/OS平臺部署Cassandra

dcos cassandra endpoints命令將返回Cassandra集群的網(wǎng)絡(luò)信息。包括每個數(shù)據(jù)節(jié)點的ip地址和DNS,以及Cassandra用于負載均衡的VIP信息:

如何利用DC/OS平臺部署Cassandra

你可以通過任意數(shù)據(jù)節(jié)點的dns信息,通過Cassandra的docker容器連接到Cassandra集群,然后通過cassandra查詢語句來查詢數(shù)據(jù),創(chuàng)建表等操作。

docker run -it cassandra:3.0.7 cqlsh node-0-server.cassandra.autoip.dcos.thisdcos.directory

多個Cassandra集群


本章節(jié)會介紹如何在一個DC/OS集群上部署多個Cassandra集群。

如果要部署多個Cassandra集群,那么必須確保這些集群的服務(wù)名字是唯一的,比如將多個Cassandra集群的名字命名為:Cassandra, Cass, CassDev, CassTest, CassProd等等。

安裝多個Cassandra集群最簡單的方法就是使用DC/OS的虛擬網(wǎng)絡(luò),它可以有效防止端口沖突,但默認(rèn)安裝并沒有啟用DC/OS虛擬網(wǎng)絡(luò)。可以通過勾選Cassandra安裝界面中的“VIRTUAL_NETWORK_ENABLED”復(fù)選框來使用DC/OS虛擬網(wǎng)絡(luò)

當(dāng)然了,你也可以在不使用DC/OS虛擬網(wǎng)絡(luò)的情況下安裝多個Cassandra集群,不過,你可能需要手動檢查所有默認(rèn)的網(wǎng)絡(luò)設(shè)置,以確保沒有沖突。

Cassandra集群管理


本章節(jié)將會介紹4個用于Cassandra管理的子命令。

擴展集群

為Cassandra集群增加節(jié)點是一個非常常用的操作,在DC/OS 1.10中,用如下命令為Cassandra集群進行擴容:

dcos cassandra update start --options=config.json

在config.json配置文件中,將“nodes”—“count”字段設(shè)置為擴展后節(jié)點個數(shù)即可,如下:

{

  "nodes": {

    "count": 5

  }

}

更改配置

更改Cassandra集群配置使用的還是dcos cassandra update start命令,如下:

dcos cassandra update start --options=config.json

你可以更改集群的如下配置信息:log_level, backup_restore_strategy, placement_constraint, concurrent_writes, and concurrent_reads

升級

升級操作同樣還是由update start這個子命令來完成的,通過如下命令來制定升級的版本:

dcos cassandra update start —package-version=""

該命令會在所有的Cassandra節(jié)點上進行滾動升級操作。通過如下命令查看當(dāng)前可用版本:

dcos cassandra update package-versions

備份和恢復(fù)

Cassandra集群的備份和恢復(fù)操作,分別有如下兩條命令實現(xiàn):

dcos cassandra plan start backup

dcos cassandra plan start backup

在啟動備份之前,您需要在AWS或Azure中配置制定用于存儲備份數(shù)據(jù)的容器。閱讀災(zāi)難恢復(fù)一文了解更多信息。文章鏈接:https://docs.mesosphere.com/services/cassandra/2.0.3-3.0.14/disaster-recovery/。

卸載Cassandra集群

卸載Cassandra是個相對簡單的操作,對于默認(rèn)的Cassandra集群使用如下命令進行卸載操作:

dcos package uninstall cassandra --app-id=/cassandra

為了確保Cassandra被完全卸載,所占有的資源都被釋放掉,我們還需要清理zookeeper中殘留數(shù)據(jù)以及一些可能還被“預(yù)留”的資源,在任意master節(jié)點,執(zhí)行如下操作即可:

sudo docker run mesosphere/janitor /janitor.py -r cassandra-role -p cassandra-principal -z dcos-service-cassandra

關(guān)于如何利用DC/OS平臺部署Cassandra就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,可以學(xué)到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。

文章標(biāo)題:如何利用DC/OS平臺部署Cassandra
文章轉(zhuǎn)載:http://muchs.cn/article4/pipgoe.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供用戶體驗、軟件開發(fā)做網(wǎng)站、企業(yè)建站、App設(shè)計、響應(yīng)式網(wǎng)站

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

外貿(mào)網(wǎng)站制作