Kubernetes部分Volume类型介绍及yaml示例
1、EmptyDir(本地数据卷)
EmptyDir类型的volume创建于pod被调度到某个宿主机上的时候,而同一个pod内的容器都能读写EmptyDir中的同一个文件。一旦这个pod离开了这个宿主机,EmptyDirr中的数据就会被永久删除。所以目前EmptyDir类型的volume主要用作临时空间,比如Web服务器写日志或者tmp文件需要的临时目录。yaml示例如下:

[root@k8s-master demon2]# cat test-emptypath.yaml
apiVersion: v1
kind: Pod
metadata:
labels:
name: test-emptypath
role: master
name: test-emptypath
spec:
containers:
- name: test-emptypath
image: registry:5000/back_demon:1.0
volumeMounts:
- name: log-storage
mountPath: /home/laizy/test/
command:
- /run.sh
volumes:
- name: log-storage
emptyDir: {}

2、HostDir(本地数据卷)
HostDir属性的volume使得对应的容器能够访问当前宿主机上的指定目录。例如,需要运行一个访问Docker系统目录的容器,那么就使用/var/lib/docker目录作为一个HostDir类型的volume;或者要在一个容器内部运行CAdvisor,那么就使用/dev/cgroups目录作为一个HostDir类型的volume。一旦这个pod离开了这个宿主机,HostDir中的数据虽然不会被永久删除,但数据也不会随pod迁移到其他宿主机上。因此,需要注意的是,由于各个宿主机上的文件系统结构和内容并不一定完全相同,所以相同pod的HostDir可能会在不同的宿主机上表现出不同的行为。yaml示例如下:

[root@k8s-master demon2]# cat test-hostpath.yaml
apiVersion: v1
kind: Pod
metadata:
labels:
name: test-hostpath
role: master
name: test-hostpath
spec:
containers:
- name: test-hostpath
image: registry:5000/back_demon:1.0
volumeMounts:
- name: ssl-certs
mountPath: /home/laizy/test/cert
readOnly: true
command:
- /run.sh
volumes:
- name: ssl-certs
hostPath:
path: /etc/ssl/certs

3、NFS(网络数据卷)
NFS类型的volume。允许一块现有的网络硬盘在同一个pod内的容器间共享。yaml示例如下:

[root@k8s-master demon2]# cat test-nfspath.yaml
apiVersion: v1
kind: Pod
metadata:
labels:
name: test-nfspath
role: master
name: test-nfspath
spec:
containers:
- name: test-nfspath
image: registry:5000/back_demon:1.0
volumeMounts:
- name: nfs-storage
mountPath: /home/laizy/test/
command:
- /run.sh
volumes:
- name: nfs-storage
nfs:
server: 192.168.20.47
path: "/data/disk1"

4、Secret(信息数据卷)
Kubemetes提供了Secret来处理敏感数据,比如密码、Token和密钥,相比于直接将敏感数据配置在Pod的定义或者镜像中,Secret提供了更加安全的机制(Base64加密),防止数据泄露。Secret的创建是独立于Pod的,以数据卷的形式挂载到Pod中,Secret的数据将以文件的形式保存,容器通过读取文件可以获取需要的数据。yaml示例如下:

[root@k8s-master demon2]# cat secret.yaml
apiVersion: v1
kind: Secret
metadata:
name: mysecret
type: Opaque
data:
username: emhlbnl1
password: eWFvZGlkaWFv
[root@k8s-master demon2]# cat test-secret.yaml
apiVersion: v1
kind: Pod
metadata:
labels:
name: test-secret
role: master
name: test-secret
spec:
containers:
- name: test-secret
image: registry:5000/back_demon:1.0
volumeMounts:
- name: secret
mountPath: /home/laizy/secret
readOnly: true
command:
- /run.sh
volumes:
- name: secret
secret:
secretName: mysecret
Kubernetes部分Volume类型介绍及yaml示例的更多相关文章
- 【k8s】kubernetes(k8s)介绍
转自 http://blog.csdn.net/Real_Myth/article/details/78719244 一.Kubernetes系列之介绍篇 •Kubernetes介绍 1.背景介绍 ...
- Kubernetes系列之Helm介绍篇
本次系列使用的所需部署包版本都使用的目前最新的或最新稳定版,安装包地址请到公众号内回复[K8s实战]获取 介绍 Helm 是 Deis 开发的一个用于 Kubernetes 应用的包管理工具,主要用来 ...
- flume 1.4的介绍及使用示例
flume 1.4的介绍及使用示例 本文将介绍关于flume 1.4的使用示例,如果还没有安装flume的话可以参考:http://blog.csdn.net/zhu_xun/article/deta ...
- 基于.NET CORE微服务框架 -surging的介绍和简单示例 (开源)
一.前言 至今为止编程开发已经11个年头,从 VB6.0,ASP时代到ASP.NET再到MVC, 从中见证了.NET技术发展,从无畏无知的懵懂少年,到现在的中年大叔,从中的酸甜苦辣也只有本人自知.随着 ...
- 【python】-- 协程介绍及基本示例、协程遇到IO操作自动切换、协程(gevent)并发爬网页
协程介绍及基本示例 协程,又称微线程,纤程.英文名Coroutine.一句话说明什么是协程:协程是一种用户态的轻量级线程. 协程拥有自己的寄存器上下文和栈.协程调度切换时,将寄存器上下文和栈保存到其他 ...
- C# 泛型多种参数类型与多重约束 示例
C# 泛型多种参数类型与多重约束 示例 interface IMyInterface { } class Dictionary<TKey, TVal> where TKey : IComp ...
- HTTP协议的8种请求类型介绍
HTTP协议的8种请求类型介绍 转自:http://www.cnblogs.com/liangxiaofeng/p/5798607.html HTTP协议的8种请求类型介绍 HTTP协议中共定义了八种 ...
- Linux文件类型介绍
文件类型介绍: Linux系统不同于Windows系统,两者文件类型和文件扩展名也有很大的差异.Linux中的文件类型和Linux文件的文件扩展名所代表的意义和Windows系统完全不同.用户一般通过 ...
- Solidity教程系列1 - 类型介绍
现在的Solidity中文文档,要么翻译的太烂,要么太旧,决定重新翻译下,再加上代码事例讲解. 写在前面 Solidity是以太坊智能合约编程语言,阅读本文前,你应该对以太坊.智能合约有所了解, 如果 ...
随机推荐
- 【vue系列之一】使用vue脚手架工具搭建vue-webpack项目
对于Vue.js来说,如果你想要快速开始,那么只需要在你的html中引入一个<script>标签,加上CDN的地址即可.但是,这并不算是一个完整的vue实际应用.在实际应用中,我们必须要一 ...
- 网络编程:I/O复用
I/O多路复用是在多线程或多进程编程中常用技术.主要是通过select/epoll/poll三个函数支持的.在此主要对select和epoll函数详细介绍. select函数 该函数运行进程指示内核等 ...
- 运用三角不等式加速Kmeans聚类算法
运用三角不等式加速Kmeans聚类算法 引言:最近在刷<数据挖掘导论>,第九章, 9.5.1小节有提到,可以用三角不等式,减少不必要的距离计算,从而达到加速聚类算法的目的.这在超大数据量的 ...
- PS不能存储,因为程序错误
当PS中遇到不能存储文件,因为程序错误时,可以这样: http://www.zcool.com.cn/article/ZMTgwOTQw.html
- 关于for循环的几种经典案例
由于for循环可以通过控制循环变量的初始值和循环结束条件来改变遍历的区间,所以在排序或者遍历的时候,利用for循环就比较简单,以下是本人学习后得到的一些总结案例. 1.排序的应用 1)交换排序:通过取 ...
- WebSocket实战
前言 互联网发展到现在,早已超越了原始的初衷,人类从来没有像现在这样依赖过他:也正是这种依赖,促进了互联网技术的飞速发展.而终端设备的创新与发展,更加速了互联网的进化: HTTP/1.1规范发布于19 ...
- Jlink下载问题
在使用Jlink SWD模式进行下载的时候遇到了无法下载的问题. SWD模式下,共有4跟线,VCC.GND.SWCLK.SWDIO JTAG标准接口如下图所示: 一般情况下,目标板卡的 debug V ...
- Android 模块化探索与实践
首发于<程序员>杂志五月刊 一.前言 万维网发明人 Tim Berners-Lee 谈到设计原理时说过:"简单性和模块化是软件工程的基石:分布式和容错性是互联网的生命." ...
- 动手写个数字输入框1:input[type=number]的遗憾
前言 最近在用Polymer封装纯数字的输入框,开发过程中发现不少坑,也有很多值得研究的地方.本系列打算分4篇来叙述这段可歌可泣的踩坑经历: <动手写个数字输入框1:input[type=nu ...
- 全景智慧城市常诚——没接触过VR全景的你就是目前VR最大的新闻
据调查,自2015年开始,VR(虚拟现实)技术在传媒行业中的应用呈现井喷式增长,各大国际主流媒体纷纷在新闻报道中使用VR技术.国内运用VR报道新闻最早在2015年12月,财新网利用VR技术对深圳山体垮 ...