数据持久化需要数据卷。kubernetes生态提供海量的存储驱动和存储使用方式。

[root@master song]# cat pod-demo.yml
apiVersion: v1
kind: Pod
metadata:
name: pod-demo
namespace: default
labels:
app: myapp
tier: frontend
2sdlfj: dashazi
spec:
containers:
- name: centos
image: busybox
command: ["/bin/sh","-c","ping www.baidu.com"]
volumeMounts:
- name: song
mountPath: /data
- name: myapp-
image: hub.c..com/library/nginx:1.13
volumeMounts:
- name: song
mountPath: /data
nodeSelector:
location: slave1
volumes:
- name: song
emptyDir: {} 查看状态

[root@master song]# kubectl describe pod pod-demo
Name: pod-demo
Namespace: default
Priority: 0
PriorityClassName: <none>
Node: k8s-node1/172.20.0.76
Start Time: Sun, 03 Mar 2019 09:41:53 +0800
Labels: 2sdlfj=dashazi
app=myapp
tier=frontend
Annotations: kubectl.kubernetes.io/last-applied-configuration:
{"apiVersion":"v1","kind":"Pod","metadata":{"annotations":{},"labels":{"2sdlfj":"dashazi","app":"myapp","tier":"frontend"},"name":"pod-dem...
Status: Running
IP: 10.244.2.183
Containers:
centos:
Container ID: docker://4bc862140523df128ab1c35375459f5a08cbab3bbeb787b35ae607016bb18071
Image: busybox
Image ID: docker-pullable://busybox@sha256:061ca9704a714ee3e8b80523ec720c64f6209ad3f97c0ff7cb9ec7d19f15149f
Port: <none>
Host Port: <none>
Command:
/bin/sh
-c
ping www.baidu.com
State: Running
Started: Sun, 03 Mar 2019 09:42:01 +0800
Ready: True
Restart Count: 0
Environment: <none>
Mounts:
/data from song (rw)
/var/run/secrets/kubernetes.io/serviceaccount from default-token-tlx48 (ro)
myapp-1:
Container ID: docker://b32921dc906b58bfdf146e9a094748d7af80d21e24b58c17f6ffdc08fdee1752
Image: hub.c.163.com/library/nginx:1.13
Image ID: docker-pullable://hub.c.163.com/library/nginx@sha256:ff094de32a0d3b5efc29cec60daa709c5378cf4e53e4c9fd1d3433b87ac8ec8b
Port: <none>
Host Port: <none>
State: Running
Started: Sun, 03 Mar 2019 09:42:01 +0800
Ready: True
Restart Count: 0
Environment: <none>
Mounts:
/data from song (rw)
/var/run/secrets/kubernetes.io/serviceaccount from default-token-tlx48 (ro)
Conditions:
Type Status
Initialized True
Ready True
ContainersReady True
PodScheduled True
Volumes:
song:
Type: EmptyDir (a temporary directory that shares a pod's lifetime)  说明该类型为临时文件,不会存盘。
Medium:
default-token-tlx48:
Type: Secret (a volume populated by a Secret)
SecretName: default-token-tlx48
Optional: false
QoS Class: BestEffort
Node-Selectors: location=slave1
Tolerations: node.kubernetes.io/not-ready:NoExecute for 300s
node.kubernetes.io/unreachable:NoExecute for 300s
Events:
Type Reason Age From Message
---- ------ ---- ---- -------
Normal Pulling 7h9m kubelet, k8s-node1 pulling image "busybox"
Normal Pulled 7h9m kubelet, k8s-node1 Successfully pulled image "busybox"
Normal Created 7h9m kubelet, k8s-node1 Created container
Normal Started 7h9m kubelet, k8s-node1 Started container
Normal Pulled 7h9m kubelet, k8s-node1 Container image "hub.c.163.com/library/nginx:1.13" already present on machine
Normal Created 7h9m kubelet, k8s-node1 Created container
Normal Started 7h9m kubelet, k8s-node1 Started container
Normal Scheduled 71s default-scheduler Successfully assigned default/pod-demo to k8s-node1
[root@master song]# kubectl exec -i -t pod-demo -c centos -- /bin/sh
/ # cd /data
/data # cat /proc/mounts
rootfs / rootfs rw 0 0
overlay / overlay rw,relatime,lowerdir=/var/lib/docker/overlay2/l/XHB5NUDL4LLGOC3EZHZJ6C2U2R:/var/lib/docker/overlay2/l/Q2CWFPROIF2I4BB6RJY5CAM74J,upperdir=/var/lib/docker/overlay2/bae727cbe291547d5703c4d488afee8b1394e2abd8bb9a271ac73bfff2468365/diff,workdir=/var/lib/docker/overlay2/bae727cbe291547d5703c4d488afee8b1394e2abd8bb9a271ac73bfff2468365/work 0 0
proc /proc proc rw,nosuid,nodev,noexec,relatime 0 0
tmpfs /dev tmpfs rw,nosuid,size=65536k,mode=755 0 0
devpts /dev/pts devpts rw,nosuid,noexec,relatime,gid=5,mode=620,ptmxmode=666 0 0
sysfs /sys sysfs ro,nosuid,nodev,noexec,relatime 0 0
tmpfs /sys/fs/cgroup tmpfs ro,nosuid,nodev,noexec,relatime,mode=755 0 0
cgroup /sys/fs/cgroup/systemd cgroup ro,nosuid,nodev,noexec,relatime,xattr,release_agent=/usr/lib/systemd/systemd-cgroups-agent,name=systemd 0 0
cgroup /sys/fs/cgroup/cpu,cpuacct cgroup ro,nosuid,nodev,noexec,relatime,cpuacct,cpu 0 0
cgroup /sys/fs/cgroup/pids cgroup ro,nosuid,nodev,noexec,relatime,pids 0 0
cgroup /sys/fs/cgroup/hugetlb cgroup ro,nosuid,nodev,noexec,relatime,hugetlb 0 0
cgroup /sys/fs/cgroup/freezer cgroup ro,nosuid,nodev,noexec,relatime,freezer 0 0
cgroup /sys/fs/cgroup/cpuset cgroup ro,nosuid,nodev,noexec,relatime,cpuset 0 0
cgroup /sys/fs/cgroup/blkio cgroup ro,nosuid,nodev,noexec,relatime,blkio 0 0
cgroup /sys/fs/cgroup/net_cls,net_prio cgroup ro,nosuid,nodev,noexec,relatime,net_prio,net_cls 0 0
cgroup /sys/fs/cgroup/devices cgroup ro,nosuid,nodev,noexec,relatime,devices 0 0
cgroup /sys/fs/cgroup/perf_event cgroup ro,nosuid,nodev,noexec,relatime,perf_event 0 0
cgroup /sys/fs/cgroup/memory cgroup ro,nosuid,nodev,noexec,relatime,memory 0 0
mqueue /dev/mqueue mqueue rw,nosuid,nodev,noexec,relatime 0 0
/dev/mapper/centos_bogon-root /data ext4 rw,relatime,data=ordered 0 0
/dev/mapper/centos_bogon-root /dev/termination-log ext4 rw,relatime,data=ordered 0 0
/dev/mapper/centos_bogon-root /etc/resolv.conf ext4 rw,relatime,data=ordered 0 0
/dev/mapper/centos_bogon-root /etc/hostname ext4 rw,relatime,data=ordered 0 0
/dev/mapper/centos_bogon-root /etc/hosts ext4 rw,relatime,data=ordered 0 0
shm /dev/shm tmpfs rw,nosuid,nodev,noexec,relatime,size=65536k 0 0
tmpfs /var/run/secrets/kubernetes.io/serviceaccount tmpfs ro,relatime 0 0
proc /proc/bus proc ro,relatime 0 0
proc /proc/fs proc ro,relatime 0 0
proc /proc/irq proc ro,relatime 0 0
proc /proc/sys proc ro,relatime 0 0
proc /proc/sysrq-trigger proc ro,relatime 0 0
tmpfs /proc/acpi tmpfs ro,relatime 0 0
tmpfs /proc/kcore tmpfs rw,nosuid,size=65536k,mode=755 0 0
tmpfs /proc/keys tmpfs rw,nosuid,size=65536k,mode=755 0 0
tmpfs /proc/timer_list tmpfs rw,nosuid,size=65536k,mode=755 0 0
tmpfs /proc/timer_stats tmpfs rw,nosuid,size=65536k,mode=755 0 0
tmpfs /proc/sched_debug tmpfs rw,nosuid,size=65536k,mode=755 0 0
tmpfs /proc/scsi tmpfs ro,relatime 0 0
tmpfs /sys/firmware tmpfs ro,relatime 0 0
/data # df -h
Filesystem Size Used Available Use% Mounted on
overlay 9.7G 4.6G 4.6G 50% /
tmpfs 64.0M 0 64.0M 0% /dev
tmpfs 999.5M 0 999.5M 0% /sys/fs/cgroup
/dev/mapper/centos_bogon-root
9.7G 4.6G 4.6G 50% /data
/dev/mapper/centos_bogon-root
9.7G 4.6G 4.6G 50% /dev/termination-log
/dev/mapper/centos_bogon-root
9.7G 4.6G 4.6G 50% /etc/resolv.conf
/dev/mapper/centos_bogon-root
9.7G 4.6G 4.6G 50% /etc/hostname
/dev/mapper/centos_bogon-root
9.7G 4.6G 4.6G 50% /etc/hosts
shm 64.0M 0 64.0M 0% /dev/shm
tmpfs 999.5M 12.0K 999.5M 0% /var/run/secrets/kubernetes.io/serviceaccount
tmpfs 999.5M 0 999.5M 0% /proc/acpi
tmpfs 64.0M 0 64.0M 0% /proc/kcore
tmpfs 64.0M 0 64.0M 0% /proc/keys
tmpfs 64.0M 0 64.0M 0% /proc/timer_list
tmpfs 64.0M 0 64.0M 0% /proc/timer_stats
tmpfs 64.0M 0 64.0M 0% /proc/sched_debug
tmpfs 999.5M 0 999.5M 0% /proc/scsi
tmpfs 999.5M 0 999.5M 0% /sys/firmware

12.k8s的存储卷创建过程的更多相关文章

  1. K8s的存储卷使用总结

    K8s的存储卷: 它有四种存储卷: 1. emptyDir: 空目录,这种存储卷会随着Pod的删除而被清空,它一般作为缓存目录使用,或临时目录, 当做缓存目录时,通常会将一块内存空间映射到该目录上,让 ...

  2. k8s volume存储卷

    k8s volume存储卷   介绍 volume存储卷是Pod中能够被多个容器访问的共享目录,kubernetes的volume概念,用途和目的与docker的volume比较类似,但两者不能等价, ...

  3. k8s之存储卷及pvc

    1.存储卷概述 因为pod是有生命周期的,pod一重启,里面的数据就没了,所以我们需要数据持久化存储,在k8s中,存储卷不属于容器,而是属于pod,也就是说同一个pod中的容器可以共享一个存储卷,存储 ...

  4. Linux系统LVM逻辑卷创建过程以及自动化脚本

    转至:https://cloud.tencent.com/developer/article/1068328 Linux系统LVM逻辑卷创建过程以及自动化脚本 2018-03-21阅读 6300   ...

  5. k8s volume存储卷(四)

    介绍 volume存储卷是Pod中能够被多个容器访问的共享目录,kubernetes的volume概念,用途和目的与docker的volume比较类似,但两者不能等价,首先,kubernetes中的v ...

  6. k8s系列---存储卷pv/pvc。configMap/secert

    因为pod是有生命周期的,pod一重启,里面的数据就没了.所以我们需要数据持久化存储. 在k8s中,存储卷不属于容器,而是属于pod.也就是说同一个pod中的容器可以共享一个存储卷. 存储卷可以是宿主 ...

  7. k8s的存储卷

    存储卷查看:kubectl explain pods.spec.volumes 一.简单的存储方式 1)2个容器之间共享存储..(删除则数据消失) apiVersion: v1 kind: Pod m ...

  8. Spring 源码(12)Spring Bean 的创建过程(3)

    继续上一篇Spring Bean的创建过程的解读,上一篇介绍了Spring在创建过程中doGetBean方法,在执行过程中会调用getSingleton方法并且设置一个lambda表达式,这个lamb ...

  9. Kubernetes 学习12 kubernetes 存储卷

    一.概述 1.我们此前讲过根据应用本身是否需要持久存储数据以及某一次请求和之前的请求是否有联系,可以分为四类应用 a.有状态,要存储 b.有状态,无持久存储 c.无状态,要存储 d.无状态,无持久存储 ...

随机推荐

  1. 初学Python——RabbitMQ的安装

    记录踩坑之路,本篇文章主要摘抄自CSDN博客https://blog.csdn.net/weixin_39735923/article/details/79288578 Windows10环境下安装R ...

  2. Win7 64位系统,IE11,如何让IE的Tab强制运行64位内核?

    有些人在使用TerraExplorer Pro 7版本进行web二次开发的时候,常会遇到下面截图中这样的问题, 这个问题主要是因为安装的TerraExplorer Pro 7 版本是64位的,而模型运 ...

  3. java eclipse jdk 关系

    java 经常用到多个jdk版本 1.7   1.8.... 兼容时几个位置 处理 eclipse.ini (A处) #-vm#C:\Program Files\Java\jdk1.7.0_79\bi ...

  4. 百度智能手环方案开源(含源码,原理图,APP,通信协议等)

    分享一个百度智能手环开源项目的设计方案资料. 项目简介 百度云智能手环的开源方案是基于Apache2.0开源协议,开源内容包括硬件设计文档,原理图.ROM.通讯协议在内的全套方案,同时开放APP和云服 ...

  5. R实战 第十二篇:随机数

    由R生成的随机数实际上伪随机数,也就是说,随机数是由某种算法而不是真正的随机过程产生的,随机数生成器需要一个初始值来生成数字,该初始值叫做种子.通过把种子设置为特定的值,可以保证每次运行同一段代码时都 ...

  6. 开源Dapper的Lambda扩展-Sikiro.Dapper.Extension V2.0

    前言 去年我在业余时间,自己整了一套dapper的lambda表达式的封装,原本是作为了一个个人的娱乐项目,当时也只支持了Sql Server数据库.随之开源后,有不少朋友也对此做了试用,也对我这个项 ...

  7. gohost -- go 开发的命令行hosts配置管理工具

    前几天在微博上看到有人推荐了lazygit这个工具,让人眼前一亮,什么时候命令行也可以这么抢到了,

  8. 朱晔和你聊Spring系列S1E7:简单好用的Spring Boot Actuator

    阅读PDF版本 本文会来看一下Spring Boot Actuator提供给我们的监控端点Endpoint.健康检查Health和打点指标Metrics等所谓的Production-ready(生产环 ...

  9. form,ajax注册,logging日志使用

    一.form表单类型提交注册信息 二.ajax版本提交注册信息 <!DOCTYPE html> <html lang="en"> <head> ...

  10. 剑指Offer-- 之字形顺序打印二叉树

    请实现一个函数按照之字形打印二叉树,即第一行按照从左到右的顺序打印,第二层按照从右至左的顺序打印,第三行按照从左到右的顺序打印,其他行以此类推 /* struct TreeNode { int val ...