K8S当中的本地卷(Local PV)的使用
2024-09-01 15:39:37
Local PV是从kuberntes 1.10开始引入,本质目的是为了解决hostPath的缺陷。通过PV控制器与Scheduler的结合,会对local PV做针对性的逻辑处理,从而,让Pod在多次调度时,能够调度到同一个Node上。
这次,测试了一下将local PV挂载到一个httpd的应用上。
要注意,pvc是按namespace提供的。还有,matchExpressions作匹配的主机名规则。
一,local-pv.yaml
kind: StorageClass apiVersion: storage.k8s.io/v1 metadata: name: local-storage provisioner: kubernetes.io/no-provisioner volumeBindingMode: WaitForFirstConsumer --- apiVersion: v1 kind: PersistentVolume metadata: name: local-pv-sda spec: capacity: storage: 100Gi accessModes: - ReadWriteOnce persistentVolumeReclaimPolicy: Retain storageClassName: local-storage local: path: /data/pv nodeAffinity: required: nodeSelectorTerms: - matchExpressions: - key: kubernetes.io/hostname operator: In values: - spark-docker --- kind: PersistentVolumeClaim apiVersion: v1 metadata: name: local-pvc-sda namespace: in-demo spec: accessModes: - ReadWriteOnce storageClassName: local-storage resources: requests: storage: 10Gi
二,httpd.yaml
apiVersion: extensions/v1beta1 kind: Deployment metadata: name: httpd namespace: in-demo spec: replicas: 2 revisionHistoryLimit: 5 strategy: type: RollingUpdate rollingUpdate: maxSurge: 1 maxUnavailable: 0 template: metadata: labels: app: httpd-dm spec: terminationGracePeriodSeconds: 60 restartPolicy: Always containers: - name: httpd image: httpd:alpine imagePullPolicy: IfNotPresent volumeMounts: - name: storage-localpv mountPath: "/usr/local/apache2/htdocs" volumes: - name: storage-localpv persistentVolumeClaim: claimName: local-pvc-sda --- apiVersion: v1 kind: Service metadata: name: httpd-svc namespace: in-demo spec: ports: - name: http-port port: 80 targetPort: 80 selector: app: httpd-dm
最新文章
- magic方法的magic
- WCF自寄宿
- Java如何将html转以后的字符转化成正常显示的字符
- 【Windows 10 IoT - 2】LED闪烁及动画绘制(树莓派 Pi2)
- linux内核分析 课程总结
- JQery w3school学习第一章 标签的隐藏和显示
- IOS开发—数据库的使用
- 数列极限---和Gauss(取整)函数有关
- NOI2011 兔兔与蛋蛋游戏
- uva10934 Dropping water balloons
- android中ScrollView和GridView/ListView共存时,ScrollView不在顶部的解决方法
- ps-ef|grep-vgrep|grepsep|awk'{print";kill-9";$2}'|sh 这个表达式到底是什么意思啊?
- fs模块练习
- Android Multimedia框架总结(三)MediaPlayer中创建到setDataSource过程
- Confluence 6 配置管理员联系页面
- 浅谈 CSS 预处理器: 为什么要使用预处理器?
- Java知多少(46)try和catch的使用
- js仿ppt,在线演示文档:Impress.js
- 832. Flipping an Image
- Oracle中INTERSECT,MINUS,UNION,UNION ALL用法
热门文章
- sonatype nexus安装教程
- itms-services 方式安装ipa 无法连接到网址(eg. 我用的ip:172.26.167.82)
- .NET Core EF框架使用SQL server 2008数据库分页问题:Incorrect syntax near 'OFFSET'. Invalid usage of the option NEXT in the FETCH statement
- Gitlab CI/CD
- XMLHttpRequest原生方法
- Java代码质量检查checkstyle, pmd, cpd, p3c,findbugs, jacoco, sonarquebe以及和Jenkins集成
- 趣文:如何通过给MM修电脑培养感情[转]
- 关于“关于C#装箱的疑问”帖子的个人看法 (原发布csdn 2017年10月07日 10:21:10)
- 如何提高sql查询性能到达优化程序的目的
- Vuex实现状态管理