W3Cschool
恭喜您成為首批注冊用戶
獲得88經(jīng)驗值獎勵
YARN 是 Hadoop 的下一代集群管理器。它允許開發(fā)人員在網(wǎng)格上部署和執(zhí)行任意命令。如果您不熟悉 YARN 或 ApplicationMaster(AM)的概念,請閱讀 Hadoop 的 YARN 頁面。
Samza 與 YARN 的主要集成是 Samza ApplicationMaster 的形式。這是負責管理 YARN 網(wǎng)格中的 Samza 工作的代碼塊。它決定了當流處理器發(fā)生故障時該怎么做,哪臺機器運行 Samza 作業(yè)的 容器,等等。
當 Samza ApplicationMaster 啟動時,它執(zhí)行以下操作:
從這一點開始,ApplicationMaster 只對來自 RM 的事件做出反應,并將其委托給 ContainerAllocator 線程。
每當分配一個容器時,AM 將使用 YARN NM 在容器中啟動一個 SamzaContainer(分配給它的適當?shù)姆謪^(qū))。如果容器出現(xiàn)非零返回代碼,AM 將請求一個新容器,并重新啟動SamzaContainer。如果 SamzaContainer 失敗太多次太快,則 ApplicationMaster 將使整個 Samza 的作業(yè)以非零返回碼失敗。有關詳細信息,請參閱
yarn.container.retry.count 和 yarn.container.retry.window.ms 配置參數(shù)。
當 AM 從 YARN 接收到重新啟動信號時,它會拋出一個 SamzaException。這將引發(fā)清理和成功關閉 AM(YARN 不會認為 AM 失敗)。
如果 AM 本身失敗,則 YARN 將處理重新啟動 AM。當 AM 重新啟動時,所有正在運行的容器將被殺死,AM 將從頭開始。將執(zhí)行相同的操作列表,如上所示。AM 將為其 SamzaContainers 請求新的容器,并且像剛剛開始的那樣首先進行。YARN 具有在 yarn-site.xml 中定義的 yarn.resourcemanager.am.max-retries 配置參數(shù)。此配置默認為1,這意味著默認情況下,單個 AM 故障將導致Samza作業(yè)停止運行。
即使在安全模式下使用 YARN,Samza 儀表板的 HTTP 訪問目前仍未保護。這意味著訪問 YARN 網(wǎng)格的用戶可以對 Samza ApplicationMaster 的 HTTP 服務器進行端口掃描,并在瀏覽器中打開儀表板來查看其內(nèi)容。任何人都可以看到敏感的配置,這樣就要小心了。有計劃使用 Hadoop的安全功能(SPENAGO)確保Samza的ApplicationMaster 。
有關詳細信息,請參閱Samza的 安全 頁面。
Copyright©2021 w3cschool編程獅|閩ICP備15016281號-3|閩公網(wǎng)安備35020302033924號
違法和不良信息舉報電話:173-0602-2364|舉報郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號
聯(lián)系方式:
更多建議: