19.Kubernetes深入Pod之容器共享Volume

Posted linux20190409

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了19.Kubernetes深入Pod之容器共享Volume相关的知识,希望对你有一定的参考价值。

Pod容器共享Volume

在同一个Pod中多个容器能够共享Pod级别的存储卷Volume,如图:

技术图片

在下面的例子中,Pod内包含两个容器:tomcatbusybox,在Pod级别设置Volume“app-logs”,用于tomcat向其中写日志文件,busybox读取日志文件

配置文件pod-volume-applogs.yaml

apiVersion: v1
kind: Pod
metadata:
  name: volume-pod
spec:
  containers:
  - name: tomcat
    image: tomcat
    ports:
    - containerPort: 8080
    volumeMounts:
    - name: app-logs
      mountPath: /usr/local/tomcat/logs
  - name: busybox
    image: busybox
    command: ["sh","-c","tail -f /logs/catalina*.log"]
    volumeMounts:
    - name: app-logs
      mountPath: /logs
  volumes:
  - name: app-logs
    emptyDir: 

这里设置的Volume名为app-logs,类型为emptyDir,挂载到tomcat容器内/usr/local/tomcat/logs目录同时挂载到logreader容器内的/logs目录

通过kubectl logs命令查看logreader容器的输出内容:

kubectl logs Volume-pod -c busybox

这个文件即为tomcat生成的日志文件/usr/local/tomcat/logs/catalina..log的内容,登录tomcat容器进行查看:

kubectl exec -it volume-pod -c tomcat -- ls /usr/local/tomcat/logs
kubectl exec -it volume-pod -c tomcat -- tail /usr/local/tomcat/logs/ctalima.2017-07-30.log


链接:https://www.orchome.com/1256
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
 

以上是关于19.Kubernetes深入Pod之容器共享Volume的主要内容,如果未能解决你的问题,请参考以下文章

12, k8s 之深入理解Pod对象

K8S学习笔记之 pause容器

深入kubernetes之Pod——一pod多容器

《三》深入理解Pod对象

云原生 | Kubernetes篇深入了解Pod

#云原生征文#深入了解k8s的Pod