2016-11-28 2 views
0

Ich habe versucht, Elasticsearch 5.0.1 in einem docker container basierend auf Centos 6.8 zu installieren und auszuführen. Ich erhalte folgenden Fehler:Elasticsearch 5.0.1 Java-Berechtigungsproblem

[2016-11-23T10:01:40,696][INFO ][i.n.u.i.PlatformDependent] Your platform does not provide complete low-level API for accessing direct buffers reliably. Unless explicitly requested, heap buffer will always be preferred to avoid potential system unstability. 
[2016-11-23T10:01:40,825][INFO ][o.e.t.TransportService ] [bZesYxH] publish_address {172.17.0.147:9300}, bound_addresses {[::]:9300} 
[2016-11-23T10:01:40,830][INFO ][o.e.b.BootstrapCheck ] [bZesYxH] bound or publishing to a non-loopback or non-link-local address, enforcing bootstrap checks 
ERROR: bootstrap checks failed 
initial heap size [2109734912] not equal to maximum heap size [32210157568]; this can cause resize pauses and prevents mlockall from locking the entire heap 
max number of threads [1024] for user [seceon] is too low, increase to at least [2048] 
max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144] 
[2016-11-23T10:01:40,836][INFO ][o.e.n.Node ] [bZesYxH] stopping ... 
2016-11-23 10:01:40,837 pool-1-thread-1 ERROR Unable to unregister MBeans java.security.AccessControlException: access denied ("javax.management.MBeanServerPermission" "createMBeanServer") 
at java.security.AccessControlContext.checkPermission(AccessControlContext.java:457) 
at java.security.AccessController.checkPermission(AccessController.java:884) 
at java.lang.SecurityManager.checkPermission(SecurityManager.java:549) 
at java.lang.management.ManagementFactory.getPlatformMBeanServer(ManagementFactory.java:465) 
at org.apache.logging.log4j.core.jmx.Server.unregisterLoggerContext(Server.java:246) 
at org.apache.logging.log4j.core.LoggerContext.stop(LoggerContext.java:300) 
at org.apache.logging.log4j.core.LoggerContext$1.run(LoggerContext.java:265) 
at org.apache.logging.log4j.core.util.DefaultShutdownCallbackRegistry$RegisteredCancellable.run(DefaultShutdownCallbackRegistry.java:102) 
at org.apache.logging.log4j.core.util.DefaultShutdownCallbackRegistry.run(DefaultShutdownCallbackRegistry.java:72) 
at java.lang.Thread.run(Thread.java:745) 

Kann mir bitte jemand helfen, diesen Fehler zu verstehen und zu beheben?

2016-11-23 10:01:40,837 pool-1-thread-1 ERROR Unable to unregister MBeans java.security.AccessControlException: access denied ("javax.management.MBeanServerPermission" "createMBeanServer") 
+0

Wann erhalten Sie den Fehler? beim Versuch, den Container zu bauen? den Container laufen lassen? Wie sieht deine Dockerdatei aus? Warum benutzt du kein offizielles Image von ES? –

+0

Ich habe kleinere Änderungen gemacht, um das Englisch zu verbessern; aber diese Frage könnte mit einigen weiteren Hintergrundinformationen, wie Antworten auf Yaron Idans Bitte um Klärung, sehr verbessert werden. Denken Sie daran - diese Seite ermutigt Sie, Ihre Frage so zu bearbeiten, dass sie so klar, verständlich und nützlich wie möglich ist. –

Antwort

0

So nach dem Fehler, haben Sie die vm.max_map_count plus die max number of threads zu erhöhen.

Um vm.max_map_count Typ im folgenden Befehl in das Terminal als root zu erhöhen:

sysctl -w vm.max_map_count=262144

Quelle: configuration

Um die max number of threads zu erhöhen, Sie haben die ulimit zu erhöhen:

This can be done by setting ulimit -u 2048 as root before starting Elasticsearch, or by setting nproc to 2048 in /etc/security/limits.conf.

Verwandte Themen