zoukankan      html  css  js  c++  java
  • 19.Kubernetes深入Pod之容器共享Volume

    Pod容器共享Volume

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

    screenshot

    在下面的例子中,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
    著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
     
  • 相关阅读:
    java8 .stream().map().collect()
    函数式编程扫盲篇(转载)
    如何成为Python高手(转载)
    JAVA通过XPath解析XML性能比较(原创)
    不要过早退出循环 while(1){no break}
    搭建harbor私有仓库
    Supervisor进程管理
    一键部署redis-5.0.5
    Linux下的crontab定时执行任务命令详解
    利用shell脚本实现对mysql数据库的备份
  • 原文地址:https://www.cnblogs.com/linux20190409/p/10976309.html
Copyright © 2011-2022 走看看