【发布时间】:2017-01-11 22:49:38
【问题描述】:
我正在使用 kube-up.sh (v1.3.4) 和 AWS 作为提供者来设置集群。一切都很好,我唯一的问题是我没有看到我的日志(在 Kibana 和 Elsaticsearch 中)。如果我 docker attach 在 fluentd-elasticsearch 容器内,这就是我所拥有的:
在/var/logs/containers 中,我看到一个符号链接指向我节点上运行的每个 pod 的日志文件,例如:
elasticsearch-logging-v1-9lwly_kube-system_POD-3bb54515d4e0e479c39cb7c35aa6675fdfe2970233e095420e2116c2f633ab50.log
是一个符号链接
/mnt/ephemeral/docker/containers/3bb54515d4e0e479c39cb7c35aa6675fdfe2970233e095420e2116c2f633ab50/3bb54515d4e0e479c39cb7c35aa6675fdfe2970233e095420e2116c2f633ab50-json.log
但是,/mnt 在我的 fluentd-elasticsearch 容器中是空的。所以所有的符号链接都是错误的。
我想这只是/mnt/ephemeral 没有绑定安装在fluentd-elasticsearch 容器中。我在 kubernetes 方面不够先进,不知道在哪里解决这个问题,并且可能是一个错误,因为我使用标准过程来设置我的集群。
如果我在 pod 上运行 kubectl describe,我会得到:
Name: fluentd-elasticsearch-ip-172-20-0-168.eu-west-1.compute.internal
Namespace: kube-system
Node: ip-172-20-0-168.eu-west-1.compute.internal/172.20.0.168
Start Time: Fri, 02 Sep 2016 17:15:03 +0200
Labels: k8s-app=fluentd-logging
Status: Running
IP: 10.244.3.2
Controllers: <none>
Containers:
fluentd-elasticsearch:
Container ID: docker://d376a900ef770e65dfbf75bf5bc1c711c650868bb4e4ea74002818852a81aa04
Image: gcr.io/google_containers/fluentd-elasticsearch:1.17
Image ID: docker://sha256:e74f564e4c316e0f6baebf838015f516e26d7501c96ead5f115523ff80c614fd
Port:
Limits:
memory: 200Mi
Requests:
cpu: 100m
memory: 200Mi
State: Running
Started: Fri, 02 Sep 2016 17:15:36 +0200
Ready: True
Restart Count: 0
Environment Variables: <none>
Conditions:
Type Status
Initialized True
Ready True
PodScheduled True
Volumes:
varlog:
Type: HostPath (bare host directory volume)
Path: /var/log
varlibdockercontainers:
Type: HostPath (bare host directory volume)
Path: /var/lib/docker/containers
QoS Tier: Burstable
No events.
所以显然数量是错误的(/var/lib/docker/containers 而不是/mnt/ephemeral/docker/containers。
在哪里/如何解决这个问题?这是否应该报告为 k8s repos 中的错误?
【问题讨论】:
标签: amazon-web-services logging kubernetes fluentd