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

相關問題