进入我的Elasticsearch Google Kubernetes容器的Docker容器-容器ID正在更改

时间:2019-01-07 13:52:50

标签: docker elasticsearch kubernetes docker-container

我在GCP上有一个kubernetes集群,其中有一个Elasticsearch服务。 我有一个elasticsearch-0容器,该容器运行的是Elasticsearch的Docker容器。

~ ❯❯❯ kubectl describe pod elasticsearch-0
Name:           elasticsearch-0
Namespace:      default
Node:           gke-jaeger-persistent-st-default-pool-xxxxx-phvx/10.166.0.4
Start Time:     Mon, 07 Jan 2019 14:21:19 +0100
Labels:         app=jaeger-elasticsearch
                controller-revision-hash=elasticsearch-8684f69799
                jaeger-infra=elasticsearch-replica
                statefulset.kubernetes.io/pod-name=elasticsearch-0
Annotations:    kubernetes.io/limit-ranger: LimitRanger plugin set: cpu request for container elasticsearch
Status:         Running
IP:             10.36.2.27
Controlled By:  StatefulSet/elasticsearch
Containers:
  elasticsearch:
    Container ID:  docker://5212b8c223401355bd29a5639caea5097074a8a8101ceb10300f76465e4a6536
    Image:         docker.elastic.co/elasticsearch/elasticsearch:5.6.0
    Image ID:      docker-pullable://docker.elastic.co/elasticsearch/elasticsearch@sha256:f95e7d4256197a9bb866b166d9ad37963dc7c5764d6ae6400e551f4987a659d7
    Port:          <none>
    Host Port:     <none>
    Command:

我需要访问管理我的pod的节点,以便获取我的elasticsearch容器的容器ID。

我使用gcloud compute instances list获得了实例的名称,并通过gcloud compute ssh <node-name> --zone=<zone-name>命令输入,并以root特权docker exec -it -u root containerID bash输入了elasticsearch docker容器(以下是{{3} })

我需要执行此操作,因为我需要添加一个名为/jaeger-data的新mountPath,以便将其与我已经准备好的持久卷声明相关联。

我进入docker容器并创建mountPath

[root@elasticsearch-0 elasticsearch]# mkdir /jaeger-data
[root@elasticsearch-0 elasticsearch]#

但是我可以看到我不断从docker容器断开连接,因为containerID是以连续方式更改的。 每次我使用containerID命令进入节点以获取docker ps -a时,此containerID是不同的,并且当使用新ID进入新容器时,我的{{1 }}找不到mountPath,这意味着没有,可能是因为我正在输入新的容器...

我的containerID始终更改的原因是什么? 这与包含我的pod的Kubernetes节点有关吗?该容器具有我的Elasticsearch Docker容器?

steps 情况有关吗?

  

Kubernetes豆荚是凡人。他们是天生的,死后不会复活。特别是ReplicaSets可动态创建和销毁Pod(例如在向外扩展或向内扩展时)。尽管每个Pod都有自己的IP地址,但即使是那些IP地址,也无法长期保持稳定。这就带来了一个问题:如果某个Pod集(我们称其为后端)为Kubernetes集群中的其他Pod(我们称其为前端)提供了功能,那么这些前端如何找出并跟踪该集中的哪些后端?

     

输入服务。

我该如何解决这种情况?

我需要创建我的mountPath以便将其关联到我的/jaeger-data吊舱配置

0 个答案:

没有答案