2

是否有可能使用泊坞窗图像在App引擎柔性环境上部署Elasticsearch。谷歌应用程序引擎弹性Elasticsearch部署

我曾尝试以下 我的本地计算机上的文件

文件夹:elasticsearch的app.yaml

runtime: custom 
env: flex 

Dockerfile的

app.yaml 
Dockerfile 
docker-entrypoint.sh 
config folder(containing elasticsearch.yml)file 

内容和docker-entrypoint.sh复制from https://github.com/GoogleCloudPlatform/elasticsearch-docker/tree/master/5/5.2.0

次修改到Dockerfile

replaced EXPOSE 9200 9300 to EXPOSE 8080 

修改到elasticsearch.yml

cluster.name: "beaconinside-docker-cluster" 
path.data: /usr/share/elasticsearch/data 
http.host: 0.0.0.0 
http.port: 8080 
discovery.zen.minimum_master_nodes: 1 

我我的本地机器

docker build -t elasticdemo . 

上建立一个使用泊坞窗文件的容器。然后,我跑的容器

docker run -p 8080:8080 elasticdemo 

我能够在0.0.0.0:8080

问题访问elasticsearch:

我试图部署elasticsearch作为应用谷歌应用程序引擎Flex环境

gcloud应用程序部署的app.yaml - -version elasticdocker --project的myproject

部署失败,出现以下错误

Updating service [default]...failed. 
ERROR: (gcloud.app.deploy) Error Response: [9] 

我很期待ed elasticsearch作为应用程序进行部署,并可在部署的url上使用。 您能否提供这种方法的指针/帮助/建议?

回答

0

尽管您可以将ES部署到App Engine灵活的环境,但它并不特别有用。托管GAE Flexible容器的虚拟机作为维护的一部分定期重新启动,并且重新启动时,本地磁盘上存储的任何数据都将丢失。如果你想使用本地磁盘用于长期存储,我建议部署GCE VM(或选择使用从GCP Marketplace溶液剂)或部署到GKE这supports persistent disks

至于实际的问题:你可能不要没有健康检查处理程序,因此App Engine灵活环境在部署应用程序后不会认为您的应用程序健康。错误信息是无用的,我同意。

从GAE灵活的文档为building custom images

“健康检查是HTTP请求的URL/_ah /医疗健康应用程序应该与状态码200响应。”

或者,您可以通过添加到应用程序关闭健康检查。YAML enable_health_check: False

相关问题