怎么使用GCSoffloader卸載存儲(chǔ)在BookKeeper中的數(shù)據(jù)

今天就跟大家聊聊有關(guān)怎么使用GCS offloader 卸載存儲(chǔ)在 BookKeeper 中的數(shù)據(jù),可能很多人都不太了解,為了讓大家更加了解,小編給大家總結(jié)了以下內(nèi)容,希望大家根據(jù)這篇文章可以有所收獲。

公司專注于為企業(yè)提供成都網(wǎng)站設(shè)計(jì)、成都網(wǎng)站制作、微信公眾號(hào)開發(fā)、購物商城網(wǎng)站建設(shè),小程序定制開發(fā),軟件按需策劃設(shè)計(jì)等一站式互聯(lián)網(wǎng)企業(yè)服務(wù)。憑借多年豐富的經(jīng)驗(yàn),我們會(huì)仔細(xì)了解各客戶的需求而做出多方面的分析、設(shè)計(jì)、整合,為客戶設(shè)計(jì)出具風(fēng)格及創(chuàng)意性的商業(yè)解決方案,創(chuàng)新互聯(lián)建站更提供一系列網(wǎng)站制作和網(wǎng)站推廣的服務(wù)。

對于大量不需要快速訪問的數(shù)據(jù),建議你使用 Apache Pulsar 的內(nèi)置功能——分層存儲(chǔ)。它也是 Pulsar 分片架構(gòu)的原生優(yōu)勢。

通過分層存儲(chǔ),你可以從 Apache BookKeeper 卸載數(shù)據(jù)到可擴(kuò)展、無限的廉價(jià)云原生存儲(chǔ)(例如 Google Cloud Storage、AWS S3)或文件系統(tǒng),構(gòu)建高性能的消息集群,并降低運(yùn)維成本。

Google Cloud Storage (GCS) offloader 是 StreamNative Hub 上托管的一個(gè) Pulsar 插件。

介紹如何通過 GCS offloader 將存儲(chǔ)在 BookKeeper 中的數(shù)據(jù)卸載至 GCS。




安裝    


請按照以下步驟安裝 GCS offloader。

???? 準(zhǔn)備工作

Apache jclouds:2.2.0 或更高版本

???? 步 驟

1. 選擇以下任一方式下載 Pulsar 壓縮包:

  • 從 Apache mirror 下載:
    https://archive.apache.org/dist/pulsar/pulsar-2.5.1/apache-pulsar-2.5.1-bin.tar.gz

  • 從 Pulsar 下載頁面下載
    https://pulsar.apache.org/download

  • 通過 wget 命令下載
    https://www.gnu.org/software/wget

wget https://archive.apache.org/dist/pulsar/pulsar-2.5.1/apache-pulsar-2.5.1-bin.tar.gz

2. 下載并解壓 Pulsar offloaders 安裝包。

wget https://downloads.apache.org/pulsar/pulsar-2.5.1/apache-pulsar-offloaders-2.5.1-bin.tar.gz
   tar xvfz apache-pulsar-offloaders-2.5.1-bin.tar.gz

注意:

  • 在裸機(jī)集群中運(yùn)行 Pulsar 時(shí),需要保證每個(gè) broker 所在的 Pulsar 目錄中,都有 `offloaders` 解壓縮后的安裝文件。

  •  在 Docker 中運(yùn)行 Pulsar 或使用 Docker image(例如 K8S、DCOS)部署 Pulsar 時(shí),可以使用 `apachepulsar/pulsar-all` image 而不使用 `apachepulsar/pulsar` image。`apachepulsar/pulsar-all` image 已經(jīng)捆綁了分層存儲(chǔ) offloaders。

3. 在本地 Pulsar 目錄中創(chuàng)建 offloader 文件夾,將解壓后的 Pulsar offloaders 文件復(fù)制到此處。

mv apache-pulsar-offloaders-2.5.1/offloaders apache-pulsar-2.5.1/offloaders
   ls offloaders

???? 輸出

如下輸出所示,Pulsar 通過 Apache jclouds 支持 GCS 和 AWS S3 。 

  tiered-storage-file-system-2.5.1.nar    tiered-storage-jcloud-2.5.1.nar



使用    


以下內(nèi)容為在 Pulsar 中使用 GCS offloader 的詳細(xì)步驟。

第 1 步:配置 GCS offloader driver

在使用 GCS offloader 之前,需要為 GCS offloader driver 配置一些屬性。更多關(guān)于如何配置 GCS offloader driver 屬性的信息,可以參閱:
https://hub.streamnative.io/offloaders/gcs/2.5.1/#configuration

本示例假設(shè)已在 `standalone.conf` 中進(jìn)行了如下配置,并以單機(jī)模式運(yùn)行 Pulsar。

managedLedgerOffloadDriver=google-cloud-storagegcsManagedLedgerOffloadBucket=pulsar-topic-offload-1gcsManagedLedgerOffloadRegion=europe-west3gcsManagedLedgerOffloadServiceAccountKeyFile=/Users/user-name/Downloads/affable-ray-226821-6251d04987e9.jsonoffloadersDirectory=offloadersmanagedLedgerMinLedgerRolloverTimeMinutes=2 managedLedgerMaxEntriesPerLedger=5000

------

第 2 步:創(chuàng)建 GCS 存儲(chǔ)分區(qū)

1. 進(jìn)入 Google Cloud 控制臺(tái)(https://console.cloud.google.com/) ,在左邊側(cè)欄選擇 Storage

怎么使用GCS offloader 卸載存儲(chǔ)在 BookKeeper 中的數(shù)據(jù)

2. 選擇瀏覽器,然后點(diǎn)擊創(chuàng)建存儲(chǔ)分區(qū)。

為了確保 broker 可以訪問存儲(chǔ)分區(qū),需要為服務(wù)賬號(hào)設(shè)置 Storage Object CreatorStorage Object Viewer

怎么使用GCS offloader 卸載存儲(chǔ)在 BookKeeper 中的數(shù)據(jù)

3. 設(shè)置存儲(chǔ)分區(qū)的名稱。

Bucket 名稱應(yīng)與在第 1 步配置的 `gcsManagedLedgerOffloadBucket` 值一致。

更多關(guān)于 `gcsManagedLedgerOffloadBucket`的信息,可以參閱:
https://hub.streamnative.io/offloaders/gcs/2.5.1/#step-1-configure-gcs-offloader-driver

怎么使用GCS offloader 卸載存儲(chǔ)在 BookKeeper 中的數(shù)據(jù)

4. 設(shè)置存儲(chǔ)分區(qū)。

存儲(chǔ)分區(qū)應(yīng)與在第 1 步配置的 `gcsManagedLedgerOffloadRegion` 值一致。

更多關(guān)于 `gcsManagedLedgerOffloadRegion` 的信息,可以參閱:
https://hub.streamnative.io/offloaders/gcs/2.5.1/#step-1-configure-gcs-offloader-driver

怎么使用GCS offloader 卸載存儲(chǔ)在 BookKeeper 中的數(shù)據(jù)

5. 點(diǎn)擊創(chuàng)建。

現(xiàn)在,你已經(jīng)成功創(chuàng)建了一個(gè) GCS 存儲(chǔ)分區(qū)。

------

第 3 步:創(chuàng)建 GCS 服務(wù)賬號(hào)

1. 進(jìn)入 Google Cloud 控制臺(tái) ,在左邊側(cè)欄選擇 IAM 和管理

怎么使用GCS offloader 卸載存儲(chǔ)在 BookKeeper 中的數(shù)據(jù)

2. 選擇服務(wù)賬號(hào),然后點(diǎn)擊創(chuàng)建服務(wù)賬號(hào)。

怎么使用GCS offloader 卸載存儲(chǔ)在 BookKeeper 中的數(shù)據(jù)

3. 設(shè)置服務(wù)賬號(hào)名稱

創(chuàng)建服務(wù)賬號(hào)后,服務(wù)賬號(hào) ID 會(huì)自動(dòng)創(chuàng)建。

怎么使用GCS offloader 卸載存儲(chǔ)在 BookKeeper 中的數(shù)據(jù)

4. 點(diǎn)擊創(chuàng)建。

5. 為服務(wù)賬號(hào)授權(quán),點(diǎn)擊下一步。

6. 點(diǎn)擊創(chuàng)建密鑰。

怎么使用GCS offloader 卸載存儲(chǔ)在 BookKeeper 中的數(shù)據(jù)

7. 選擇 JSON 后點(diǎn)擊創(chuàng)建,然后選擇將生成的 JSON 文件保存到本地。

JSON 文件應(yīng)與在第 1 步配置的 `gcsManagedLedgerOffloadServiceAccountKeyFile` 值一致。

更多關(guān)于 `gcsManagedLedgerOffloadServiceAccountKeyFile` 的信息,可以參閱:
https://hub.streamnative.io/offloaders/gcs/2.5.1/#step-1-configure-gcs-offloader-driver

怎么使用GCS offloader 卸載存儲(chǔ)在 BookKeeper 中的數(shù)據(jù)

8. 復(fù)制 JSON 文件中的密鑰 ID 到密鑰 ID 對話框,然后點(diǎn)擊完成。

------

第 4 步:為 GCS 服務(wù)賬號(hào)分配權(quán)限

1. 在 IAM 和管理頁面,點(diǎn)擊 IAM,然后點(diǎn)擊添加。

怎么使用GCS offloader 卸載存儲(chǔ)在 BookKeeper 中的數(shù)據(jù)

2. 填寫在第 3 步創(chuàng)建的 GCS 服務(wù)賬號(hào)名稱。

怎么使用GCS offloader 卸載存儲(chǔ)在 BookKeeper 中的數(shù)據(jù)

3. 為服務(wù)賬號(hào)設(shè)置 Storage Object Creator 和 Storage Object Viewer 權(quán)限。

怎么使用GCS offloader 卸載存儲(chǔ)在 BookKeeper 中的數(shù)據(jù)

4. 點(diǎn)擊保存。

------

第 5 步:從 BookKeeper 卸載數(shù)據(jù)到 GCS

以下命令均在本地 Pulsar 所在的文件夾(例如 `~/path/to/apache-pulsar-2.5.1`)中執(zhí)行。

1. 啟動(dòng) Pulsar(單機(jī)模式)。

 ./bin/pulsar standalone -a 127.0.0.1

2. 為確保生成的數(shù)據(jù)不會(huì)被立刻刪除,建議設(shè)置保留策略。
https://pulsar.apache.org/docs/en/next/cookbooks-retention-expiry/#retention-policies

保留策略可以設(shè)置為大小限制或時(shí)間限制,設(shè)置的值越大,數(shù)據(jù)保留的時(shí)間越長。

./bin/pulsarctl namespaces set-retention public/default --size -10G --time 3d

更多關(guān)于 `pulsarctl namespaces set-retention options` 命令的信息(包括 flags、說明、默認(rèn)值、快捷鍵等),可以 參閱:
https://streamnative.io/docs/pulsarctl/v0.4.0/#-em-set-retention-em-

3. 使用 pulsar-perf 生產(chǎn)數(shù)據(jù)。

 ./bin/pulsar-perf produce -r 1000 -s 2048 test-topic

4. Ledger 發(fā)生切換后,卸載操作才會(huì)開始。為了確保卸載操作成功執(zhí)行,建議多等待幾個(gè) ledger 發(fā)生切換。前文配置的保留策略也是為了保證 ledger 在切換時(shí),數(shù)據(jù)不會(huì)被 broker 刪除。

如需查看 ledger 信息,可以使用 `pulsarctl topics internal-stats option` 命令。

./bin/pulsarctl topics internal-stats test-topic

???? 輸出

以下輸出中顯示 ledge 已發(fā)生切換:已存在 ledger 10、ledger 11 和 ledger 12。

"entriesAddedCounter" : 107982,    "numberOfEntries" : 107982,    "totalSize" : 508276193,    "currentLedgerEntries" : 1953,    "currentLedgerSize" : 9167863,    "lastLedgerCreatedTimestamp" : "2020-05-12T00:07:27.273+08:00",    "waitingCursorsCount" : 0,    "pendingAddEntriesCount" : 1,    "lastConfirmedEntry" : "12:1951",    "state" : "LedgerOpened",    "ledgers" : [ {        "ledgerld" : 10,        "entries" : 52985,        "size" : 249500259,        "offloaded" : false    }, {        "ledgerld" : 11,        "entries" : 53045,        "size" : 249614295,        "offloaded" : false    }, {        "ledgerId" : 12,        "entries" : 0,        "size" : 0,        "offloaded" : false    }, ]    "cursors" : {  }

更多關(guān)于 `pulsarctl topics internal-stats options` 命令的信息(包括 flags、說明、默認(rèn)值、快捷鍵等),可以參閱:
https://streamnative.io/docs/pulsarctl/v0.4.0/#-em-internal-stats-em-

5. Ledger 切換后,你可以手動(dòng)觸發(fā)卸載操作(如下所示)。

另外,你也可以設(shè)置自動(dòng)觸發(fā)卸載操作。更多關(guān)于如何設(shè)置自動(dòng)觸發(fā)卸載操作,可以參閱:
https://hub.streamnative.io/offloaders/gcs/2.5.1/#configure-gcs-offloader-to-run-automatically

./bin/pulsarctl topics offload --size-threshold 10M public/default/test-topic

???? 輸出

  

Offload triggered for persistent://public/default/test-topic for messages before 12:0:-1

更多關(guān)于 `pulsarctl topics offload options` 命令的信息(包括 flags、說明、默認(rèn)值、快捷鍵等),可以參閱:
https://streamnative.io/docs/pulsarctl/v0.4.0/#-em-offload-em-

6. 檢查卸載操作的狀態(tài)。   

 ./bin/pulsarctl topics offload-status -w public/default/test-topic

卸載操作可能會(huì)需要一段時(shí)間。

???? 輸出

Offload was a success

更多關(guān)于 `pulsarctl topics offload-status options` 命令的信息(包括 flags、說明、默認(rèn)值、快捷鍵等),可以參閱:
https://streamnative.io/docs/pulsarctl/v0.4.0/#-em-offload-status-em-

操作完成后,數(shù)據(jù)成功卸載到 GCS。

怎么使用GCS offloader 卸載存儲(chǔ)在 BookKeeper 中的數(shù)據(jù)




視頻演示


點(diǎn)擊觀看如何在 Pulsar 中使用 GCS offloader 的分步演示。

想要隨時(shí)掌握 Pulsar 的研發(fā)進(jìn)展、用戶案例和熱點(diǎn)話題嗎?快來關(guān)注 Apache Pulsar 和 StreamNative 微信公眾號(hào),我們第一時(shí)間在這里分享與 Pulsar 有關(guān)的一切。

看完上述內(nèi)容,你們對怎么使用GCS offloader 卸載存儲(chǔ)在 BookKeeper 中的數(shù)據(jù)有進(jìn)一步的了解嗎?如果還想了解更多知識(shí)或者相關(guān)內(nèi)容,請關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝大家的支持。

分享標(biāo)題:怎么使用GCSoffloader卸載存儲(chǔ)在BookKeeper中的數(shù)據(jù)
分享URL:http://bm7419.com/article32/jcigsc.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供域名注冊靜態(tài)網(wǎng)站、關(guān)鍵詞優(yōu)化、軟件開發(fā)云服務(wù)器、全網(wǎng)營銷推廣

廣告

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

微信小程序開發(fā)