簡體   English   中英

在沒有 Zookeeper 的 Docker Swarm (1.12) 上啟動 Solr 雲

[英]Start Solr cloud on Docker Swarm (1.12) without Zookeeper

我通過 Vagrant 在 3 台 CoreOS 機器上運行 Docker Swarm 1.12。

在集群上啟動 Solr 雲的最佳方式是什么? 我需要動物園管理員嗎?

我已經做到了這一點:

docker service create --mode=global --name solr -p 8983:8983 solr:5.3.1 bash -c "/opt/solr/bin/solr start -f -c"

但是 Cloud 是空的,因為它不知道其他 2 台機器,我如何在這里使用 Swarm 的力量?

文檔

容器鏡像文檔描述了如何將 Zookeeper 互連為分布式 Solr 設置的后備存儲:

您還可以運行分布式 Solr 配置,在單獨的容器中使用 Solr 節點,共享一個 ZooKeeper 服務器:

運行 ZooKeeper,並定義一個名稱,以便我們可以鏈接到它:

 $ docker run --name zookeeper -d -p 2181:2181 -p 2888:2888 -p 3888:3888 jplock/zookeeper

運行兩個 Solr 節點,鏈接到 zookeeper 容器:

 $ docker run --name solr1 --link zookeeper:ZK -d -p 8983:8983 \\ solr \\ bash -c '/opt/solr/bin/solr start -f -z $ZK_PORT_2181_TCP_ADDR:$ZK_PORT_2181_TCP_PORT' $ docker run --name solr2 --link zookeeper:ZK -d -p 8984:8983 \\ solr \\ bash -c '/opt/solr/bin/solr start -f -z $ZK_PORT_2181_TCP_ADDR:$ZK_PORT_2181_TCP_PORT'

在 Docker Swarm 上運行分布式 Solr

從 3 節點群開始:

$ docker node ls
ID                           HOSTNAME  STATUS  AVAILABILITY  MANAGER STATUS
2wkpmybf4wni8wia1s46lm2ml *  node1     Ready   Active        Leader
ajrnf5oibgm7b12ayy0hg5i32    node3     Ready   Active        
bbe8n1hybhruhhrhmswn7fjmd    node2     Ready   Active  

創建網絡

$ docker network create --driver overlay my-net

啟動一個zookeeper服務並等待它啟動

$ docker service create --name zookeeper --replicas 1 --network my-net jplock/zookeeper

啟動 2 個配置為連接到 DNS 地址“zookeeper”的 solr 實例。 有關群模式網絡的更多信息,您可以閱讀文檔

$ docker service create --name solr --replicas 2 --network my-net -p 8983:8983 \
   solr \
   bash -c '/opt/solr/bin/solr start -f -z zookeeper:2181'

Web UI 將在集群中的任何節點上可用

http://192.168.99.100:8983/
http://192.168.99.101:8983/
http://192.168.99.102:8983/

如果您檢查服務,您會注意到容器分布在集群中的所有 3 個節點上。 這是默認的調度行為

$ docker service ps zookeeper
ID                         NAME         IMAGE             NODE   DESIRED STATE  CURRENT STATE          ERROR
3fhipbsd4jdazmx8d7zum0ohp  zookeeper.1  jplock/zookeeper  node1  Running        Running 7 minutes ago  

$ docker service ps solr
ID                         NAME    IMAGE  NODE   DESIRED STATE  CURRENT STATE           ERROR
bikggwpyz5q6vdxrpqwevlwsr  solr.1  solr   node2  Running        Running 43 seconds ago  
cutbmjsmcxrmi1ld75eox0s9m  solr.2  solr   node3  Running        Running 43 seconds ago  

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM