elasticsearch - 在Google Cloud Kubernetes上运行elasticsearch以CrashLoopBackOff结尾

标签 elasticsearch kubernetes google-kubernetes-engine

我尝试在Google云实例上运行elasticsearch6容器。不幸的是,容器总是以CrashLoopBackOff结尾。
这是我所做的:

安装gcloud和kubectl

curl https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key add -
echo "deb http://packages.cloud.google.com/apt cloud-sdk-$(lsb_release -c -s) main" | sudo tee -a /etc/apt/sources.list.d/google-cloud-sdk.list
sudo apt-get update && sudo apt-get install google-cloud-sdk kubectl

配置gcloud
gcloud init
gcloud config set compute/zone europe-west3-a  # For Frankfurt

创建kubernetes集群
gcloud container clusters create elasticsearch-cluster --machine-type=f1-micro --num-nodes=3

激活 pods
kubectl create -f pod.yml  

apiVersion: v1
kind: Pod
metadata:
  name: test-elasticsearch
  labels:
    name: test-elasticsearch
spec:
  containers:
    - image: launcher.gcr.io/google/elasticsearch6
      name: elasticsearch

之后,我得到状态:
kubectl get pods
NAME                    READY     STATUS             RESTARTS   AGE
test-elasticsearch   0/1       CrashLoopBackOff   10         31m
kubectl logs test-elasticsearch不显示任何输出。

这是kubectl describe po test-elasticsearch的输出,其中包含一些信息XXX。
Name:         test-elasticsearch
Namespace:    default
Node:         gke-elasticsearch-cluste-default-pool-XXXXXXXX-wtbv/XX.XXX.X.X
Start Time:   Sat, 12 May 2018 14:54:36 +0200
Labels:       name=test-elasticsearch
Annotations:  kubernetes.io/limit-ranger=LimitRanger plugin set: cpu request for container elasticsearch
Status:       Running
IP:           XX.XX.X.X
Containers:
  elasticsearch:
    Container ID:   docker://bb9d093df792df072a762973066d504a4e7d73b0e87d0236a94c3e8b972d9c41
    Image:          launcher.gcr.io/google/elasticsearch6
    Image ID:       docker-pullable://launcher.gcr.io/google/elasticsearch6@sha256:1ddafd5293dbec8fb73eabffa29614916e4933bb057db50231084d89f4a0b3fa
    Port:           <none>
    Host Port:      <none>
    State:          Waiting
      Reason:       CrashLoopBackOff
    Last State:     Terminated
      Reason:       Error
      Exit Code:    137
      Started:      Sat, 12 May 2018 14:55:06 +0200
      Finished:     Sat, 12 May 2018 14:55:09 +0200
    Ready:          False
    Restart Count:  2
    Requests:
      cpu:        100m
    Environment:  <none>
    Mounts:
      /var/run/secrets/kubernetes.io/serviceaccount from default-token-XXXXX (ro)
Conditions:
  Type           Status
  Initialized    True 
  Ready          False 
  PodScheduled   True 
Volumes:
  default-token-XXXXX:
    Type:        Secret (a volume populated by a Secret)
    SecretName:  default-token-XXXXX
    Optional:    false
QoS Class:       Burstable
Node-Selectors:  <none>
Tolerations:     node.alpha.kubernetes.io/notReady:NoExecute for 300s
                 node.alpha.kubernetes.io/unreachable:NoExecute for 300s
Events:
  Type     Reason                 Age                From                                                          Message
  ----     ------                 ----               ----                                                          -------
  Normal   Scheduled              51s                default-scheduler                                             Successfully assigned test-elasticsearch to gke-elasticsearch-cluste-def
  Normal   SuccessfulMountVolume  51s                kubelet, gke-elasticsearch-cluste-default-pool-XXXXXXXX-wtbv  MountVolume.SetUp succeeded for volume "default-token-XXXXX"
  Normal   Pulling                22s (x3 over 49s)  kubelet, gke-elasticsearch-cluste-default-pool-XXXXXXXX-wtbv  pulling image "launcher.gcr.io/google/elasticsearch6"
  Normal   Pulled                 22s (x3 over 49s)  kubelet, gke-elasticsearch-cluste-default-pool-XXXXXXXX-wtbv  Successfully pulled image "launcher.gcr.io/google/elasticsearch6"
  Normal   Created                22s (x3 over 48s)  kubelet, gke-elasticsearch-cluste-default-pool-XXXXXXXX-wtbv  Created container
  Normal   Started                21s (x3 over 48s)  kubelet, gke-elasticsearch-cluste-default-pool-XXXXXXXX-wtbv  Started container
  Warning  BackOff                4s (x3 over 36s)   kubelet, gke-elasticsearch-cluste-default-pool-XXXXXXXX-wtbv  Back-off restarting failed container
  Warning  FailedSync             4s (x3 over 36s)   kubelet, gke-elasticsearch-cluste-default-pool-XXXXXXXX-wtbv  Error syncing pod

最佳答案

问题是f1-micro实例。它没有足够的内存来运行。只有升级到具有4GB的实例后,它才能工作。不幸的是,这对我来说太昂贵了,所以我不得不寻找其他东西。

关于elasticsearch - 在Google Cloud Kubernetes上运行elasticsearch以CrashLoopBackOff结尾,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50306007/

相关文章:

elasticsearch - 如何在 Elasticsearch 中为精确搜索提供比语音搜索更高的分数?

elasticsearch - 为什么这个Elasticsearch范围查询似乎取决于查询中的位数?

API 组的 Kubernetes 资源

mysql - 两个 mariadb 实例在 docker 中使用相同的持久存储

kubernetes - 按节点过滤的列表 `kubectl top pods`

google-compute-engine - 设置多个入口、服务、部署资源和 Cloud DNS

elasticsearch - logstash 不会读取单行文件

elasticsearch - Elasticsearch中的规范,文档频率和建议

docker - Kubernetes:无法将未格式化的卷安装为只读

kubernetes - 将 Keycloak HA 集群部署到 kubernetes | Pod 没有发现彼此