Logging kubernetes:kubectl未检索到日志
我试图在特定的命名空间上运行一个简单的映像来调试一些问题Logging kubernetes:kubectl未检索到日志,logging,kubernetes,kubectl,Logging,Kubernetes,Kubectl,我试图在特定的命名空间上运行一个简单的映像来调试一些问题 kubectl run busy --image busybox --namespace my-local-dev deployment.apps/busy created 但是由于某些原因,容器一直在重新启动 busy-67b577b945-ng2lt 0/1 CrashLoopBackOff 5 3m 而且我无法获取任何日志,即使带有--previous标
kubectl run busy --image busybox --namespace my-local-dev
deployment.apps/busy created
但是由于某些原因,容器一直在重新启动
busy-67b577b945-ng2lt 0/1 CrashLoopBackOff 5 3m
而且我无法获取任何日志,即使带有--previous
标志
$ kubectl logs -f --namespace my-local-dev busy-67b577b945-ng2lt --previous
Unable to retrieve container logs for docker://c8b9fce066686b3be01df1ed3343be5ec65607cb203e054fd9365511f77bd4af/home/pkara/Desktop
$ kubectl logs -f --namespace my-local-dev busy-67b577b945-ng2lt
$ _
有什么建议吗?
CrashLoopBackOff
表示您的pod继续崩溃,重新启动并再次崩溃
根据崩溃点的不同,例如在启动时不久或在应用程序执行期间稍后,您可能会看到或可能看不到日志
在这种情况下(没有显示日志),很可能您的pod没有可用的请求资源。例如,它可能是一个秘密或一个卷
一个好方法是观看Kubernetes事件:kubectl获取事件
或者以类似的方式描述您的资源并读取相关事件:
kubectl descripe pod
,屏幕的最后一部分专用于该资源上的事件。K8S幕后启动一个容器。容器需要命令才能在前台继续运行。否则,它会认为应用程序已停止,并关闭容器。更多
此外,没有指定,因此默认情况下会创建部署、复制和Pod。事故发生后,集装箱开始启动
运行下面的命令,它将给出一个shell提示来调试任何问题。它也不会崩溃
kubectl run busy--image busybox--namespace my local dev-it--generator=run pod/v1
为了调试,不需要一个健壮的系统,包括部署和复制。使用上述生成器将确保仅运行Pod,而不运行其他资源(部署和复制)