我们正在Google云上运行一个小型的Custom Kubernetes Pod测试集群,该集群内部正在运行Apache和PHP-FPM。
集群具有以下关键配置:
一旦集群出现, kubectl get pods --all-namespaces 就会显示出与我们的服务一起运行的流利和堆积服务。
kube-system event-exporter-v0.2.1-5f5b89fcc8-r89d5 2/2 Running 0 13d
kube-system fluentd-gcp-scaler-7c5db745fc-gbrqx 1/1 Running 0 21d
kube-system fluentd-gcp-v3.1.0-76mr4 2/2 Running 0 13d
kube-system fluentd-gcp-v3.1.0-kl4xp 2/2 Running 0 13d
kube-system fluentd-gcp-v3.1.0-vxsq5 2/2 Running 0 13d
kube-system heapster-v1.5.3-95c7549b8-fdlmm 3/3 Running 0 13d
kube-system kube-dns-788979dc8f-c9v2d 4/4 Running 0 99d
kube-system kube-dns-788979dc8f-rqp7d 4/4 Running 0 99d
kube-system kube-dns-autoscaler-79b4b844b9-zjtwk 1/1 Running 0 99d
我们可以从我们的应用程序代码(在我们的pod内运行)中获取日志记录,以显示在Stackdriver Logging中,但是我们希望汇总Apache(/ var / log / httpd / access_log和error_log)和PHP-以及Stackdriver中的FPM。
此页面来自Google的文档,意味着该默认情况下应启用。 https://cloud.google.com/kubernetes-engine/docs/how-to/logging
注意:默认情况下,当您使用gcloud命令行工具或Google Cloud Platform Console创建新集群时,将启用Stackdriver Logging。
但是对于我们来说显然不是这样。我们尝试了几种不同的方法来使它起作用(下面列出),但是没有成功。
包括:
似乎没有必要执行此步骤,因为文档表明您只需要在VM实例上执行此操作,但是无论如何我们还是在k8s pod上进行了尝试。作为此步骤的一部分,我们确保Apache启用了mod_status(/ server-status),PHP-FPM启用了/ fpm-status,然后按照文档安装模块Apache插件。
这似乎应该很简单,但是显然我们错过了一些事情。任何帮助将不胜感激。
干杯,朱利安·科恩