Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/docker/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Docker 持久体积kube的弹性搜索_Docker_<img Src="//i.stack.imgur.com/RUiNP.png" Height="16" Width="18" Alt="" Class="sponsor Tag Img">elasticsearch_Kubernetes_Amazon Eks - Fatal编程技术网 elasticsearch,kubernetes,amazon-eks,Docker,elasticsearch,Kubernetes,Amazon Eks" /> elasticsearch,kubernetes,amazon-eks,Docker,elasticsearch,Kubernetes,Amazon Eks" />

Docker 持久体积kube的弹性搜索

Docker 持久体积kube的弹性搜索,docker,elasticsearch,kubernetes,amazon-eks,Docker,elasticsearch,Kubernetes,Amazon Eks,我试图elasticsearchKubernetes(EKS)集群上部署持久卷(EBS),参考 但是pod失败了 OpenJDK 64-Bit Server VM warning: Option UseConcMarkSweepGC was deprecated in version 9.0 and will likely be removed in a future release. [2019-03-13T18:03:08,459][WARN ][o.e.b.ElasticsearchUnc

我试图
elasticsearch
Kubernetes(EKS)集群上部署持久卷(EBS),参考

但是pod失败了

OpenJDK 64-Bit Server VM warning: Option UseConcMarkSweepGC was deprecated in version 9.0 and will likely be removed in a future release.
[2019-03-13T18:03:08,459][WARN ][o.e.b.ElasticsearchUncaughtExceptionHandler] [unknown] uncaught exception in thread [main]
org.elasticsearch.bootstrap.StartupException: java.lang.IllegalStateException: Failed to create node environment
    at org.elasticsearch.bootstrap.Elasticsearch.init(Elasticsearch.java:163) ~[elasticsearch-6.6.1.jar:6.6.1]
    at org.elasticsearch.bootstrap.Elasticsearch.execute(Elasticsearch.java:150) ~[elasticsearch-6.6.1.jar:6.6.1]
    at org.elasticsearch.cli.EnvironmentAwareCommand.execute(EnvironmentAwareCommand.java:86) ~[elasticsearch-6.6.1.jar:6.6.1]
    at org.elasticsearch.cli.Command.mainWithoutErrorHandling(Command.java:124) ~[elasticsearch-cli-6.6.1.jar:6.6.1]
    at org.elasticsearch.cli.Command.main(Command.java:90) ~[elasticsearch-cli-6.6.1.jar:6.6.1]
    at org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:116) ~[elasticsearch-6.6.1.jar:6.6.1]
    at org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:93) ~[elasticsearch-6.6.1.jar:6.6.1]
Caused by: java.lang.IllegalStateException: Failed to create node environment
    at org.elasticsearch.node.Node.<init>(Node.java:298) ~[elasticsearch-6.6.1.jar:6.6.1]
    at org.elasticsearch.node.Node.<init>(Node.java:265) ~[elasticsearch-6.6.1.jar:6.6.1]
    at org.elasticsearch.bootstrap.Bootstrap$5.<init>(Bootstrap.java:212) ~[elasticsearch-6.6.1.jar:6.6.1]
    at org.elasticsearch.bootstrap.Bootstrap.setup(Bootstrap.java:212) ~[elasticsearch-6.6.1.jar:6.6.1]
    at org.elasticsearch.bootstrap.Bootstrap.init(Bootstrap.java:333) ~[elasticsearch-6.6.1.jar:6.6.1]
    at org.elasticsearch.bootstrap.Elasticsearch.init(Elasticsearch.java:159) ~[elasticsearch-6.6.1.jar:6.6.1]
    ... 6 more
Caused by: java.nio.file.AccessDeniedException: /usr/share/elasticsearch/data/nodes
    at sun.nio.fs.UnixException.translateToIOException(UnixException.java:90) ~[?:?]
    at sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:111) ~[?:?]
    at sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:116) ~[?:?]
    at sun.nio.fs.UnixFileSystemProvider.createDirectory(UnixFileSystemProvider.java:385) ~[?:?]
    at java.nio.file.Files.createDirectory(Files.java:689) ~[?:?]
    at java.nio.file.Files.createAndCheckIsDirectory(Files.java:796) ~[?:?]
    at java.nio.file.Files.createDirectories(Files.java:782) ~[?:?]
    at org.elasticsearch.env.NodeEnvironment.lambda$new$0(NodeEnvironment.java:270) ~[elasticsearch-6.6.1.jar:6.6.1]
    at org.elasticsearch.env.NodeEnvironment$NodeLock.<init>(NodeEnvironment.java:203) ~[elasticsearch-6.6.1.jar:6.6.1]
    at org.elasticsearch.env.NodeEnvironment.<init>(NodeEnvironment.java:267) ~[elasticsearch-6.6.1.jar:6.6.1]
    at org.elasticsearch.node.Node.<init>(Node.java:295) ~[elasticsearch-6.6.1.jar:6.6.1]
    at org.elasticsearch.node.Node.<init>(Node.java:265) ~[elasticsearch-6.6.1.jar:6.6.1]
    at org.elasticsearch.bootstrap.Bootstrap$5.<init>(Bootstrap.java:212) ~[elasticsearch-6.6.1.jar:6.6.1]
    at org.elasticsearch.bootstrap.Bootstrap.setup(Bootstrap.java:212) ~[elasticsearch-6.6.1.jar:6.6.1]
    at org.elasticsearch.bootstrap.Bootstrap.init(Bootstrap.java:333) ~[elasticsearch-6.6.1.jar:6.6.1]
    at org.elasticsearch.bootstrap.Elasticsearch.init(Elasticsearch.java:159) ~[elasticsearch-6.6.1.jar:6.6.1]
    ... 6 more

解决此问题的正确方法是什么?

您使用的解决方案是一种变通方法,但您可以稍微解决一下,kubernetes的方法如下所述:

因此,在您的情况下,应该是这样的:

....

spec:
  ...
  securityContext:
    fsGroup: 1000

我要对伊扎兹·艾哈迈德·汗的回答发表评论,因为它是正确的,但不清楚。然而,我还没有代表

设置Pod securtyContext是Kubernetes的方法,不用做一堆侧车/预运行的蠢事

为清楚起见,在部署的情况下:

apiVersion: apps/v1
kind: Deployment

# ...

spec: # Deployment
  template:
    spec: # Pod
      securityContext:
        fsGroup: 1000

docker映像dockerfile中似乎有一个bug,请查看卷指令和设置权限,以及这些指令的顺序。相关问题:在dockerfile中,它们似乎是该目录的用户和组设置,但当您运行并在该路径上装载卷时,这些设置将消失,然后您需要再次重置它们。验证“qa/elasticsearch.yaml”时出错:验证数据时出错:ValidationError(部署.spec.template.spec.containers[0].securityContext):未知字段“fsGroup”在io.k8s.api.core.v1.SecurityContext中;如果选择忽略这些错误,请使用--validate=false关闭验证,因为您将其放在了错误的位置,请查看在
副本之后尝试的语法:
&在
模板之前:
。在io.k8s.api.extensions.v1beta1.DeploymentSpec
....

spec:
  ...
  securityContext:
    fsGroup: 1000
apiVersion: apps/v1
kind: Deployment

# ...

spec: # Deployment
  template:
    spec: # Pod
      securityContext:
        fsGroup: 1000