简体   繁体   中英

elasticsearch kubernetes plugin issue

I am using fabric8 kubernetes plugin for elasticsearch 2.1 cluster discovery. During startup, my ES fails because of the following error:

[2015-12-15 00:30:28,049][WARN ][io.fabric8.elasticsearch.discovery.kubernetes.KubernetesUnicastHostsProvider] [Freakmaster] Exception caught during discovery: access denied ("java.io.FilePermission" "/home/elasticsearch/.kube/config" "read")

java.security.AccessControlException: access denied ("java.io.FilePermission" "/home/elasticsearch/.kube/config" "read")

at java.security.AccessControlContext.checkPermission(AccessControlContext.java:472)

at java.security.AccessController.checkPermission(AccessController.java:884)

at java.lang.SecurityManager.checkPermission(SecurityManager.java:549)

at java.lang.SecurityManager.checkRead(SecurityManager.java:888)

at sun.nio.fs.UnixPath.checkRead(UnixPath.java:795)

at sun.nio.fs.UnixFileAttributeViews$Basic.readAttributes(UnixFileAttributeViews.java:49)

at sun.nio.fs.UnixFileSystemProvider.readAttributes(UnixFileSystemProvider.java:144)

at sun.nio.fs.LinuxFileSystemProvider.readAttributes(LinuxFileSystemProvider.java:99)

at java.nio.file.Files.readAttributes(Files.java:1737)

at java.nio.file.Files.isRegularFile(Files.java:2229)

at io.fabric8.kubernetes.client.Config.tryKubeConfig(Config.java:236)

at io.fabric8.kubernetes.client.Config.<init>(Config.java:106)

at io.fabric8.kubernetes.client.ConfigBuilder.<init>(ConfigBuilder.java:17)

at io.fabric8.kubernetes.client.BaseClient.<init>(BaseClient.java:37)

at io.fabric8.kubernetes.client.DefaultKubernetesClient.<init>(DefaultKubernetesClient.java:82)

at io.fabric8.elasticsearch.cloud.kubernetes.KubernetesAPIServiceImpl.client(KubernetesAPIServiceImpl.java:49)

at io.fabric8.elasticsearch.cloud.kubernetes.KubernetesAPIServiceImpl.endpoints(KubernetesAPIServiceImpl.java:35)

at io.fabric8.elasticsearch.discovery.kubernetes.KubernetesUnicastHostsProvider.buildDynamicNodes(KubernetesUnicastHostsProvider.java:99)

at org.elasticsearch.discovery.zen.ping.unicast.UnicastZenPing.sendPings(UnicastZenPing.java:335)

at org.elasticsearch.discovery.zen.ping.unicast.UnicastZenPing$2$1.doRun(UnicastZenPing.java:253)

at org.elasticsearch.common.util.concurrent.AbstractRunnable.run(AbstractRunnable.java:37)

at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)

at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)

at java.lang.Thread.run(Thread.java:745)

As you can see the config assumes /home/elasticsearch as the installation location for some reason. My ES is actually setup at /opt/elasticsearch. I even passed path.home config param and set HOME env var. But the error persists.

Any help/suggestion is greatly appreciated.

You need to run with security manager disabled - see https://github.com/fabric8io/elasticsearch-cloud-kubernetes/blob/master/elasticsearch.yml#L20 for the setting. I've added this to the readme.

Plugins can only be able to update security policy from 2.2 - see https://github.com/elastic/elasticsearch/issues/14880 for more details.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM