99re热视频这里只精品,久久久天堂国产精品女人,国产av一区二区三区,久久久精品成人免费看片,99久久精品免费看国产一区二区三区

升級Solr集群

2018-11-06 17:36 更新

本頁介紹如何升級使用服務安裝腳本安裝的現(xiàn)有 Solr 集群。

Tip:該頁面上列出的步驟假定您使用默認的服務名稱 solr。如果您使用備用服務名稱或 Solr 安裝目錄,則下面提到的一些路徑和命令將必須相應地進行修改。

規(guī)劃升級

以下是在開始升級過程之前需要準備的事項清單:

  1. 檢查 Solr 版本升級說明以確定 Solr 新版本中是否有任何行為改變會影響您的安裝。
  2. 如果不使用復制(即 replicationFactor 小于1的集合),則應對每個集合進行備份。如果您的所有集合都使用復制,則在技術(shù)上不需要進行備份,因為您將逐個升級和驗證每個節(jié)點。
  3. 確定哪個 Solr 節(jié)點當前在 SolrCloud 中托管 Overseer leader 進程,因為您應該最后升級該節(jié)點。要確定監(jiān)督,使用監(jiān)督狀態(tài) API,請參閱:集合 API。
  4. 如果可能,計劃在系統(tǒng)維護時段內(nèi)執(zhí)行升級。您將會對集群(每個節(jié)點,一個接一個)執(zhí)行滾動重新啟動,但是我們?nèi)匀唤ㄗh在系統(tǒng)使用率最小的時候進行升級。
  5. 驗證集群當前是否正常并且所有副本都處于活動狀態(tài),因為您不應該在降級的群集上執(zhí)行升級。
  6. 根據(jù)新的 Solr JAR 文件重新生成并測試所有自定義的服務器端組件。
  7. 確定 Solr 控制腳本使用的以下變量的值:
    • ZK_HOST:您當前的 SolrCloud 節(jié)點用于連接到 ZooKeeper 的 ZooKeeper 連接字符串;該值對于集群中的所有節(jié)點將是相同的。
    • SOLR_HOST:每個 Solr 節(jié)點在加入 SolrCloud 集群時用于注冊 ZooKeeper 的主機名;此值將用于在啟動新的 Solr 進程時設(shè)置主機 Java系統(tǒng)屬性。
    • SOLR_PORT:每個 Solr 節(jié)點正在監(jiān)聽的端口,如 8983。
    • SOLR_HOME:每個 Solr 節(jié)點的 Solr 主目錄的絕對路徑;這個目錄必須包含一個 solr.xml 文件。該值將使用 solr.solr.home 系統(tǒng)屬性傳遞給新的 Solr 進程。如果您是從 Solr 5.x 或更高版本的安裝中進行升級,則這些值通??梢栽谌魏?/var/solr/solr.in.sh 或 /etc/default/solr.in.sh 中發(fā)現(xiàn)。

您現(xiàn)在應該準備升級您的集群。在進行生產(chǎn)之前,請在測試或暫存集群中驗證此過程。

升級過程

我們建議的方法是逐個升級每個 Solr 節(jié)點。換句話說,您需要停止節(jié)點,將其升級到新版本的 Solr,并在移動到下一個節(jié)點之前重新啟動它。這意味著在很短的時間內(nèi),將在您的集群中運行“舊 Solr”和“新 Solr”節(jié)點。我們還假設(shè)您將把新的 Solr 節(jié)點指向您現(xiàn)有的 Solr 主目錄,在這個目錄下為節(jié)點上的每個集合管理 Lucene 索引文件。這意味著你將不需要移動任何索引文件來執(zhí)行升級。

步驟1:停止 Solr

從停止要升級的 Solr 節(jié)點開始。在停止節(jié)點之后,如果使用復制(即,具有 replicationFactor 小于1的集合),則驗證在關(guān)閉節(jié)點上托管的所有領(lǐng)導者是否已經(jīng)成功遷移到其他副本;您可以通過訪問 Solr 管理界面中的云面板來完成此操作。如果不使用復制,那么在關(guān)閉的節(jié)點上承載的碎片的任何集合將暫時脫機。

步驟2:將 Solr 作為服務安裝

請按照說明將 Solr 作為服務安裝在 Linux 上,記錄在 Taking Solr to Production。使用該 -n 參數(shù)可避免安裝程序腳本自動啟動 Solr。您需要更新 /etc/default/solr.in.sh,它包含在下一步中完成升級過程的文件。

Tip:如果您有一個/var/solr/solr.in.sh用于現(xiàn)有 Solr 安裝的文件,則運行該install_solr_service.sh腳本會將該文件移動到新的位置:/etc/default/solr.in.sh。                     

步驟3:設(shè)置環(huán)境變量覆蓋

用文本編輯器打開 /etc/default/solr.in.sh,并驗證以下變量設(shè)置是否正確,或根據(jù)需要將它們添加到包含文件的底部:

ZK_HOST=SOLR_HOST=SOLR_PORT=SOLR_HOME=

確保您計劃擁有 Solr 進程的用戶是該 SOLR_HOME 目錄的所有者。舉例來說,如果您計劃將 Solr 作為 “Solr” 用戶并且 SOLR_HOME 作為 /var/solr/data,那么您需要:

sudo chown -R solr: /var/solr/data

步驟4:啟動 Solr

您現(xiàn)在準備通過執(zhí)行以下操作來啟動升級后的 Solr 節(jié)點:sudo service solr start。升級后的實例將加入現(xiàn)有集群,因為你使用的 SOLR_HOME、SOLR_PORT 以及SOLR_HOST 是由舊的 Solr 節(jié)點使用的設(shè)置;因此,新的服務器將看起來像舊節(jié)點到正在運行的集群。確保查看 /var/solr/logs/solr.log 在啟動過程中記錄的錯誤。

步驟5:運行 Healthcheck

在繼續(xù)升級群集中的下一個節(jié)點之前,應該對已升級的節(jié)點上承載的所有集合運行 Solr healthcheck 命令。例如,如果新升級的節(jié)點承載 MyDocuments 集合的副本,則可以運行以下命令(將 ZK_HOST 替換為 ZooKeeper 連接字符串):

/opt/solr/bin/solr healthcheck -c MyDocuments -z ZK_HOST

查找有關(guān)該集合的任何副本的任何報告問題。

最后,對集群中的所有節(jié)點重復步驟1-5。

以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號