此文为学习《Kubernetes权威指南》的相关笔记
学习笔记:
Pod中的容器通过共享Volume的方式,实现了文件共享和持久化。
Kubernetes中的Volume被定义在Pod上,然后被一个Pod里的多个容器挂载到具体的文件目录下。
Volume的生命容器与Pod相同,不与Pod中单个容器的生命周期相关。
当容器终止或者重启时,Volume中的数据也不会丢失。
Kubernetes支持多种类型的Volume。
本次实例中,容器busybox作为logreader,通过共同挂载的Volume,读取tomcat的工作日志并输出。
一、新建配置文件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 #将tomcat运行时日志挂载到下方声明的卷中
- name: busybox
image: busybox
command: ["sh","-c","tail -f /logs/catalina*.log"]
volumeMounts:
- name: app-l

本文是Kubernetes学习笔记,重点介绍了如何通过Pod中的容器共享Volume来实现文件共享和日志持久化。在示例中,一个Pod包含两个容器:tomcat和busybox,它们挂载同一个Volume,busybox容器通过`tail -f`命令实时读取tomcat的日志。创建Pod的配置文件中,声明了一个emptyDir类型的Volume,供两个容器挂载。通过`kubectl`命令,可以查看logreader容器的运行日志以及直接进入tomcat容器查看日志。
最低0.47元/天 解锁文章
1685

被折叠的 条评论
为什么被折叠?



