[英]Deploying a cluster (i.e. MongoDb / ElasticSearch) with Docker and linking to Java Application
[英]Deploying elasticsearch cluster on 3 vms
我使用docker-machine和VirtualBox創建了3個虛擬機,並且嘗試部署elasticseach。 我創建了這個docker-compose:
version: '3.0'
services:
elasticsearch:
image: docker.elastic.co/elasticsearch/elasticsearch:6.2.1
environment:
- cluster.name=docker-cluster
- bootstrap.memory_lock=true
- "ES_JAVA_OPTS=-Xms512m -Xmx512m"
volumes:
- esdatavm1:/usr/share/elasticsearch/data
deploy:
placement:
constraints: [node.role == manager]
ports:
- 9200:9200
networks:
- esvmnet
elasticsearch2:
image: docker.elastic.co/elasticsearch/elasticsearch:6.2.1
environment:
- cluster.name=docker-cluster
- bootstrap.memory_lock=true
- "ES_JAVA_OPTS=-Xms512m -Xmx512m"
- "discovery.zen.ping.unicast.hosts=elasticsearch"
volumes:
- esdatavm2:/usr/share/elasticsearch/data
deploy:
placement:
constraints: [node.role == worker]
networks:
- esvmnet
elasticsearch3:
image: docker.elastic.co/elasticsearch/elasticsearch:6.2.1
environment:
- cluster.name=docker-cluster
- bootstrap.memory_lock=true
- "ES_JAVA_OPTS=-Xms512m -Xmx512m"
- "discovery.zen.ping.unicast.hosts=elasticsearch"
volumes:
- esdatavm3:/usr/share/elasticsearch/data
deploy:
placement:
constraints: [node.role == worker]
networks:
- esvmnet
volumes:
esdatavm1:
driver: local
esdatavm2:
driver: local
esdatavm3:
driver: local
networks:
esvmnet:
但是elasticsearch無法繼續,我收到以下警告消息:
[2018-02-17T17:40:12,751][WARN ][o.e.b.JNANatives ] Unable to lock JVM Memory: error=12, reason=Cannot allocate memory
[2018-02-17T17:40:12,753][WARN ][o.e.b.JNANatives ] This can result in part of the JVM being swapped out.
[2018-02-17T17:40:12,753][WARN ][o.e.b.JNANatives ] Increase RLIMIT_MEMLOCK, soft limit: 65536, hard limit: 65536
[2018-02-17T17:40:12,753][WARN ][o.e.b.JNANatives ] These can be adjusted by modifying /etc/security/limits.conf, for example:
# allow user 'elasticsearch' mlockall
elasticsearch soft memlock unlimited
elasticsearch hard memlock unlimited
在那個彈性死后:
ERROR: [1] bootstrap checks failed
[1]: memory locking requested for elasticsearch process but memory is not locked
[2018-02-17T17:40:26,490][INFO ][o.e.n.Node ] [F8VD2bv] stopping ...
我是否應該像警告中所說的那樣設置ulmit? 在boot2docker中,我沒有任何/etc/security/limits.conf文件,應該在哪里設置該選項?
有人可以幫我嗎? 非常感謝。 問候。
問題不同。 我嘗試在單節點計算機上復制。
問題如下
[oebBootstrapChecks] [4qfUlP0]綁定或發布到非環回或非鏈接本地地址,強制執行引導檢查錯誤:[1]引導檢查失敗[1]:為Elasticsearch進程請求了內存鎖定,但內存未鎖定
只是取消注釋環境中的線
- bootstrap.memory_lock=true
否則,請仔細閱讀Elastic文檔有關環境變量的內容。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.