最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

docker下遷移elasticsearch問題以及解決方案

 更新時(shí)間:2024年11月12日 11:05:33   作者:一只牛博  
文章描述了如何將Elasticsearch數(shù)據(jù)從一個(gè)服務(wù)器遷移到另一個(gè)服務(wù)器,包括數(shù)據(jù)掛載、版本一致性、啟動(dòng)命令的匹配以及可能遇到的權(quán)限和節(jié)點(diǎn)故障問題的解決方法

docker下遷移elasticsearch問題及解決

直接上圖,大致就是這樣的操作

數(shù)據(jù)掛載

對于服務(wù)器A下的es如果你沒有在啟動(dòng)容器的時(shí)候?qū)?shù)據(jù)掛載出來,就需要先進(jìn)行docker cp,將容器中的數(shù)據(jù)拷貝到服務(wù)器中,/usr/share/elasticsearch/data

將取出的數(shù)據(jù),或者說掛載的數(shù)據(jù),傳輸?shù)搅硗庖粋€(gè)服務(wù)器中,執(zhí)行啟動(dòng)命令

警告:這里最好版本不要變動(dòng),以及啟動(dòng)時(shí)候的命令也和原服務(wù)器一致

至此遷移差不多就完成了。

報(bào)錯(cuò)解決

權(quán)限問題

java.lang.IllegalStateException: failed to obtain node locks, tried [[/usr/share/elasticsearch/data]] with lock id [0]; maybe these locations are not writable or multiple nodes were started without increasing [node.max_local_storage_nodes] (was [1])?
Likely root cause: java.nio.file.NoSuchFileException: /usr/share/elasticsearch/data/nodes/0/node.lock
        at java.base/sun.nio.fs.UnixException.translateToIOException(UnixException.java:92)
        at java.base/sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:106)
        at java.base/sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:111)
        at java.base/sun.nio.fs.UnixPath.toRealPath(UnixPath.java:825)
        at org.apache.lucene.store.NativeFSLockFactory.obtainFSLock(NativeFSLockFactory.java:108)
        at org.apache.lucene.store.FSLockFactory.obtainLock(FSLockFactory.java:41)
        at org.apache.lucene.store.BaseDirectory.obtainLock(BaseDirectory.java:45)
        at org.elasticsearch.env.NodeEnvironment$NodeLock.<init>(NodeEnvironment.java:229)
        at org.elasticsearch.env.NodeEnvironment.<init>(NodeEnvironment.java:298)
        at org.elasticsearch.node.Node.<init>(Node.java:427)
        at org.elasticsearch.node.Node.<init>(Node.java:309)
        at org.elasticsearch.bootstrap.Bootstrap$5.<init>(Bootstrap.java:234)
        at org.elasticsearch.bootstrap.Bootstrap.setup(Bootstrap.java:234)
        at org.elasticsearch.bootstrap.Bootstrap.init(Bootstrap.java:434)
        at org.elasticsearch.bootstrap.Elasticsearch.init(Elasticsearch.java:166)
        at org.elasticsearch.bootstrap.Elasticsearch.execute(Elasticsearch.java:157)
        at org.elasticsearch.cli.EnvironmentAwareCommand.execute(EnvironmentAwareCommand.java:77)
        at org.elasticsearch.cli.Command.mainWithoutErrorHandling(Command.java:112)
        at org.elasticsearch.cli.Command.main(Command.java:77)
        at org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:122)
        at org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:80)
For complete error details, refer to the log at /usr/share/elasticsearch/logs/docker-cluster.log

1. 節(jié)點(diǎn)鎖文件丟失:/usr/share/elasticsearch/data/nodes/0/node.lock 文件不存在。可能是因?yàn)槲募幢徽_創(chuàng)建,或者數(shù)據(jù)目錄的權(quán)限不足,導(dǎo)致 Elasticsearch 無法寫入。

2.  **目錄或文件權(quán)限問題**:Elasticsearch 容器可能沒有足夠的權(quán)限訪問或修改 /usr/share/elasticsearch/data 目錄下的文件。

解決如下:

執(zhí)行以下命令,重新啟動(dòng)即可

sudo chown -R 1000:1000 /acowbo/es   # 假設(shè)你將 /acowbo/es 掛載到 /usr/share/elasticsearch/data
sudo chmod -R 775 /acowbo/es

節(jié)點(diǎn)故障

2024-10-29 02:15:31.912 ERROR 1 --- [io-11919-exec-4] o.a.c.c.C.[.[.[/].[dispatcherServlet]    : Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Request processing failed; nested exception is ElasticsearchStatusException[Elasticsearch exception [type=search_phase_execution_exception, reason=all shards failed]]] with root cause

根據(jù)錯(cuò)誤日志中的信息,Elasticsearch 報(bào)告了 all shards failed 和 no_shard_available_action_exception 錯(cuò)誤。

這通常表示 Elasticsearch 集群中有一個(gè)或多個(gè)分片不可用

1.執(zhí)行

curl -X GET "http://127.0.0.1:9200/_cluster/health?pretty"

這里你換為自己的ip和端口

{
  "cluster_name" : "docker-cluster",
  "status" : "red",
  "timed_out" : false,
  "number_of_nodes" : 1,
  "number_of_data_nodes" : 1,
  "active_primary_shards" : 17,
  "active_shards" : 17,
  "relocating_shards" : 0,
  "initializing_shards" : 0,
  "unassigned_shards" : 2,
  "delayed_unassigned_shards" : 0,
  "number_of_pending_tasks" : 0,
  "number_of_in_flight_fetch" : 0,
  "task_max_waiting_in_queue_millis" : 0,
  "active_shards_percent_as_number" : 89.47368421052632
}

Elasticsearch 集群的 status 為 red,這表示集群中有一些分片處于未分配狀態(tài),導(dǎo)致集群不能正常工作。

特別是,你的集群中有 2 個(gè)未分配的分片(unassigned shards),這可能導(dǎo)致你遇到的 all shards failed 錯(cuò)誤。

2.執(zhí)行

curl -X GET "http://156.224.28.178:9200/_cat/shards?v&pretty"

獲取詳細(xì)信息

3.查看分片未分配的原因

curl -X GET "http://156.224.28.178:9200/_cluster/allocation/explain?pretty" -H 'Content-Type: application/json' -d '{
  "index": "acowbo_new",
  "shard": 0,
  "primary": true
}'

4.結(jié)果如下

{
  "index" : "acowbo_new",
  "shard" : 0,
  "primary" : true,
  "current_state" : "unassigned",
  "unassigned_info" : {
    "reason" : "ALLOCATION_FAILED",
    "at" : "2024-10-29T02:26:16.215Z",
    "failed_allocation_attempts" : 5,
    "details" : "failed shard on node [GoDPmTuqSBavpUAHkq6yHQ]: failed to create index, failure IllegalArgumentException[Custom Analyzer [ik_analyzer] failed to find tokenizer under name [ik_smart]]",
    "last_allocation_status" : "no"
  },
  "can_allocate" : "yes",
  "allocate_explanation" : "can allocate the shard",
  "target_node" : {
    "id" : "GoDPmTuqSBavpUAHkq6yHQ",
    "name" : "47d6ff15662f",
    "transport_address" : "172.20.0.8:9300",
    "attributes" : {
      "ml.machine_memory" : "3973206016",
      "xpack.installed" : "true",
      "transform.node" : "true",
      "ml.max_open_jobs" : "512",
      "ml.max_jvm_size" : "268435456"
    }
  },
  "allocation_id" : "kGCNR2E2SjuOTRow7OtUEA",
  "node_allocation_decisions" : [
    {
      "node_id" : "GoDPmTuqSBavpUAHkq6yHQ",
      "node_name" : "47d6ff15662f",
      "transport_address" : "172.20.0.8:9300",
      "node_attributes" : {
        "ml.machine_memory" : "3973206016",
        "xpack.installed" : "true",
        "transform.node" : "true",
        "ml.max_open_jobs" : "512",
        "ml.max_jvm_size" : "268435456"
      },
      "node_decision" : "yes",
      "store" : {
        "in_sync" : true,
        "allocation_id" : "kGCNR2E2SjuOTRow7OtUEA"
      }
    }
  ]
}

從錯(cuò)誤信息來看,分片未能分配的原因是由于自定義分析器 ik_analyzer 未能找到名為 ik_smart 的分詞器。

這通常意味著在 Elasticsearch 的設(shè)置中配置的 ik_analyzer 依賴于一個(gè)未安裝或未正確配置的分詞器。

解決如下:

  • 進(jìn)入容器
docker exec -it 容器名/容器id /bin/bash
  • 執(zhí)行
bin/elasticsearch-plugin install https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v7.16.2/elasticsearch-analysis-ik-7.16.2.zip

這里需要看你的es是什么版本的,就安裝什么版本的插件

總結(jié)

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • Docker部署的gitlab升級的詳細(xì)步驟(升級到17.6.1版本)

    Docker部署的gitlab升級的詳細(xì)步驟(升級到17.6.1版本)

    本文詳細(xì)介紹了如何從GitLab 17.1.2版本升級到17.6.1版本,包括備份數(shù)據(jù)、確定升級路線、分步驟升級以及最終驗(yàn)證新版本的步驟,需要的朋友可以參考下
    2025-02-02
  • docker nginx 配置文件要點(diǎn)及注意事項(xiàng)

    docker nginx 配置文件要點(diǎn)及注意事項(xiàng)

    本文介紹了Nginx的配置要點(diǎn)及注意事項(xiàng),包括訪問靜態(tài)資源、負(fù)載均衡等,在訪問靜態(tài)資源時(shí),可以使用root或alias指令指定路徑,本文給大家介紹的非常詳細(xì),感興趣的朋友一起看看吧
    2025-02-02
  • docker image tag為什么出現(xiàn)none的原因及解決

    docker image tag為什么出現(xiàn)none的原因及解決

    當(dāng)我們使用docker加載新的鏡像時(shí),有時(shí)候會(huì)發(fā)現(xiàn)Repository和Tag名稱都為none的情況,這通常是由于沒有指定正確的標(biāo)簽名稱或者倉庫名稱所導(dǎo)致的,本文主要介紹了docker image tag為什么出現(xiàn)none的原因及解決,感興趣的可以了解一下
    2023-10-10
  • Docker多容器連接(以Tomcat+Mysql為例)

    Docker多容器連接(以Tomcat+Mysql為例)

    這篇文章主要介紹了Docker多容器連接(以Tomcat+Mysql為例),Docker提供了多個(gè)容器直接訪問的方法,可以使多個(gè)容器直接通過網(wǎng)絡(luò)端口進(jìn)行訪問
    2017-03-03
  • 深入解析docker三種網(wǎng)絡(luò)模式

    深入解析docker三種網(wǎng)絡(luò)模式

    這篇文章主要介紹了docker三種網(wǎng)絡(luò)模式,分別是bridge橋接模式,host主機(jī)模式,none無網(wǎng)絡(luò)模式,每種模式給大家介紹的非常詳細(xì),需要的朋友可以參考下
    2022-04-04
  • Docker安裝Maven私服Nexus3的實(shí)現(xiàn)步驟

    Docker安裝Maven私服Nexus3的實(shí)現(xiàn)步驟

    本文主要介紹了Docker安裝Maven私服Nexus3的實(shí)現(xiàn)步驟,可以幫助開發(fā)者搭建高效的依賴管理和分發(fā)環(huán)境,具有一定的參考價(jià)值,感興趣的可以了解一下
    2025-12-12
  • 如何查看docker容器運(yùn)行進(jìn)程信息

    如何查看docker容器運(yùn)行進(jìn)程信息

    這篇文章主要介紹了如何查看docker容器運(yùn)行進(jìn)程信息問題,具有很好的參考價(jià)值,希望對大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-01-01
  • docker無法搜索和拉取鏡像的解決辦法

    docker無法搜索和拉取鏡像的解決辦法

    這篇文章主要給大家介紹了關(guān)于docker無法搜索和拉取鏡像的解決辦法,通過更換可用的鏡像加速器地址可以解決這個(gè)問題,文中通過圖文介紹的非常詳細(xì),需要的朋友可以參考下
    2024-12-12
  • docker-compose安裝yml文件配置方式

    docker-compose安裝yml文件配置方式

    這篇文章主要介紹了docker-compose安裝,yml文件配置,離線安裝及在線安裝的問題,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2021-12-12
  • 基于Docker鏡像部署go項(xiàng)目的方法步驟

    基于Docker鏡像部署go項(xiàng)目的方法步驟

    這篇文章主要介紹了基于Docker鏡像部署go項(xiàng)目的方法步驟,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-04-04

最新評論

孟州市| 尖扎县| 乌兰县| 大方县| 巨野县| 玉林市| 岐山县| 大丰市| 元氏县| 富蕴县| 正安县| 盖州市| 鄄城县| 南木林县| 额济纳旗| 康乐县| 上蔡县| 莱阳市| 淄博市| 盐边县| 东莞市| 丁青县| 澜沧| 定远县| 黄冈市| 鄂温| 元朗区| 开化县| 司法| 台湾省| 米泉市| 沁源县| 张北县| 华阴市| 巴彦淖尔市| 大洼县| 泽普县| 梅河口市| 湖南省| 浦东新区| 仪征市|