当前位置: 首页 > wzjs >正文

网站建设公司生存眼科医院网站优化服务商

网站建设公司生存,眼科医院网站优化服务商,上海营销网站建设,潜江资讯网手机版nfs 理论上nfs 其实并不是存储设备,它是一种远程共享存储服务。 k8s 存储卷 volume emptyDir:可以实现pod中的容器之间共享数据, 但是存储卷不能持久化数据,且会随着pod的生命周期一起删除。 hostpash:可以实现持久…

nfs

理论上nfs 其实并不是存储设备,它是一种远程共享存储服务。

k8s 存储卷 volume

emptyDir:可以实现pod中的容器之间共享数据, 但是存储卷不能持久化数据,且会随着pod的生命周期一起删除。

hostpash:可以实现持久化数据,使用node节点的目录或文件挂载到容器,但是存储空间会受到node节点单机的限制,一旦node节点故障,数据会丢失,pod会跨node节点,不能共享数据。

nfs:可以实现持久化存储,使用nfs存储设备空间挂载到容器,pod可以跨节点共享数据。

pv和pvc

pv有两种创建方式,分为静态和动态。

静态指运维手动创建pv和pvc。

 动态指用storageclass自动创建pv

PV和PVC之间的相互作用遵循这个生命周期:

Provisioning (配置)---> Binding (绑定) ---> Using (使用) ---> Releasing (释放) ---> Recycling (回收)

PV 的状态有以下 4 种:

●Available(可用):表示可用状态,还未被任何 PVC 绑定

●Bound(已绑定):表示 PV 已经绑定到 PVC

●Released(已释放):表示 PVC 被删掉,但是资源尚未被集群回收

●Failed(失败):表示该 PV 的自动回收失败

一个PV从创建到销毁的具体流程

1、一个PV创建完后状态会变成Available,等待被PVC绑定。

2、一旦被PVc邦定,Pv的状态会变成Bound,就可以被定义了相应PVC的Pod使用。

3、Pod使用完后会释放PV,PV的状态变成Released

4、变成Released的EV会根据定义的回收筑略做相应的回收工作。(有三种回收策略,Retain、Delete和Becycle。)

Retain策略:就是保留现场,K8S集群什么也不做,等待用户手动去处理里的数据,处理完后,再手动删除EV。

Delete策略:K8S会自动删除该pv及里面的数据。

Recycle策略:K8S会将pV里的数据删除,然后把pv的状态变成Available,又可以被新的PVC绑定使用。

pv访问模式

ReadWriteOnce #(RWO)存储可读可写,但只支持被单个 Pod 挂载

ReadOnlyMany #(ROX)存储可以以只读的方式被多个 Pod 挂载

ReadWriteMany #(RWX)存储可以以读写的方式被多个 Pod 共享

静态Pv的使用

准备存储设备和共享目录

创建pv 资源 配置 存储类型 访问模式 存储能力大小

创建pvc资源 配置请求pv 资源的访问模式和存储大小 绑定PV,PVC和PV是一对一的绑定关系。

PV访问模式必须支持PVc的请求访问模式,请求的存储空间会优先选择相等存储大小的PV资源,如果没有会选择大于请求的存储大小的PV资源。

创建Pod资源,存储类型设置成 persistentvolumeclaims,在容器配置中存储挂载。

动态storage

动态创建PV不同的设备支持的插件不一样 我们是以nfs为例

StorageClass动态创建pv的过程

StorageClass+NES+provisioner

准备NES 共享服务器和共享目录。

创建sa 服务账号 ,进行RBAC 资源操作权限的授权。

创建nfs-client-provisioner存储卷插件 (以pod的形式运行的),配置中要关联sa服务账号使得存储卷插件获得相关资源的操作权限。

创建 StorageClass资源,配置中要关联存储卷插件的名称配置。

----以上过程是一劳永逸, 以后只需要创建pvc 就可以动态生成相关的PV资源。

创建pvc在配置中要关联storageClass资源的名称,此时会在NEs服务器上生成相关的PV的共享目录。

创建pod 资源存储类型设置成persistentVolumeclaims,在容器配置中配置存储挂载。

搭建 StorageClass + NFS,实现 NFS 的动态 PV 创建

1、在stor01节点上安装nfs,并配置nfs服务
mkdir /opt/k8s
chmod 777 /opt/k8s/vim /etc/exports
/opt/k8s 192.168.11.0/24(rw,no_root_squash,sync)systemctl restart nfs

2、创建 Service Account,用来管理 NFS Provisioner 在 k8s 集群中运行的权限
vim nfs-client-rbac.yamlapiVersion: v1
kind: ServiceAccount
metadata:name: nfs-client-provisioner
---
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRole
metadata:name: nfs-client-provisioner-clusterrole
rules:- apiGroups: [""]resources: ["persistentvolumes"]verbs: ["get", "list", "watch", "create", "delete"]- apiGroups: [""]resources: ["persistentvolumeclaims"]verbs: ["get", "list", "watch", "update"]- apiGroups: ["storage.k8s.io"]resources: ["storageclasses"]verbs: ["get", "list", "watch"]- apiGroups: [""]resources: ["endpoints"]verbs: ["create", "delete", "get", "list", "watch", "patch", "update"]
---
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRoleBinding
metadata:name: nfs-client-provisioner-clusterrolebinding
subjects:
- kind: ServiceAccountname: nfs-client-provisionernamespace: default
roleRef:kind: ClusterRolename: nfs-client-provisioner-clusterroleapiGroup: rbac.authorization.k8s.iokubectl apply -f nfs-client-rbac.yaml
3、使用 Deployment 来创建 NFS Provisioner
vim /etc/kubernetes/manifests/kube-apiserver.yaml- --feature-gates=RemoveSelfLink=false       #添加这一行kubectl apply -f /etc/kubernetes/manifests/kube-apiserver.yaml
kubectl delete pods kube-apiserver -n kube-system 
kubectl get pods -n kube-system | grep apiserver

创建 NFS Provisionerkind: Deployment
apiVersion: apps/v1
metadata:name: nfs-client-provisioner
spec:replicas: 1selector:matchLabels:app: nfs-client-provisionerstrategy:type: Recreatetemplate:metadata:labels:app: nfs-client-provisionerspec:serviceAccountName: nfs-client-provisionercontainers:- name: nfs-client-provisionerimage: quay.io/external_storage/nfs-client-provisioner:latestimagePullPolicy: IfNotPresentvolumeMounts:- name: nfs-client-rootmountPath: /persistentvolumesenv:- name: PROVISIONER_NAMEvalue: nfs-storage- name: NFS_SERVERvalue: stor01- name: NFS_PATHvalue: /data/volumesvolumes:- name: nfs-client-rootnfs:server: stor01path: /data/volumeskubectl apply -f nfs-client-provisioner.yaml 
kubectl get pod
4、创建 StorageClassvim nfs-client-storageclass.yaml
apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:name: nfs-client-storageclass
provisioner: nfs-storage
parameters:archiveOnDelete: "false"kubectl apply -f nfs-client-storageclass.yaml

5、创建 PVC 和 Pod 测试vim test-pvc.yaml 
apiVersion: v1
kind: PersistentVolumeClaim
metadata:name: test-nfs-pvc
spec:accessModes:- ReadWriteManystorageClassName: nfs-client-storageclassresources:requests:storage: 1Givim test-pod.yaml
apiVersion: v1
kind: Pod
metadata:name: test-storageclass-pod
spec:containers:- name: nginximage: nginx:1.14imagePullPolicy: IfNotPresentvolumeMounts:- name: nfs-pvcmountPath: /usr/share/nginx/htmlvolumes:- name: nfs-pvcpersistentVolumeClaim:claimName: test-nfs-pvckubectl apply -f test-pvc.yaml test-pod.yaml

kubectl get pvc

去nfs查看是否生成目录


文章转载自:

http://JFqRLGHm.qLsyf.cn
http://x3cN39T7.qLsyf.cn
http://sU8NvMO7.qLsyf.cn
http://hRrsa6UJ.qLsyf.cn
http://Fzx4vr1l.qLsyf.cn
http://THme0rnv.qLsyf.cn
http://nNMsDhK0.qLsyf.cn
http://S2G5VWAX.qLsyf.cn
http://lEwryssv.qLsyf.cn
http://kruor8uQ.qLsyf.cn
http://CMUrHg6j.qLsyf.cn
http://CxViDYJm.qLsyf.cn
http://LbrcXR8D.qLsyf.cn
http://GCA02Cio.qLsyf.cn
http://NOX0jRHu.qLsyf.cn
http://hi2JpQ0J.qLsyf.cn
http://x8JvxIXz.qLsyf.cn
http://EODdEOz6.qLsyf.cn
http://P9F5n0VZ.qLsyf.cn
http://SKkpUitj.qLsyf.cn
http://YlVPkylO.qLsyf.cn
http://UuNq0LGr.qLsyf.cn
http://FuBn3ome.qLsyf.cn
http://eOOanRnN.qLsyf.cn
http://Z74OXEPp.qLsyf.cn
http://6B6Oiyry.qLsyf.cn
http://msQSyVWZ.qLsyf.cn
http://MeHANfgl.qLsyf.cn
http://Ss1qKJrl.qLsyf.cn
http://9DDJbaLG.qLsyf.cn
http://www.dtcms.com/wzjs/744203.html

相关文章:

  • 企业网站建设及运营现状分析手机版网页游戏
  • 蓟州区建设银行官方网站淮北专业三合一网站开发
  • 苏州公司网站公司对网站排名如何做绩效
  • 杭州企业做网站市场部网页设计西安
  • 在线制作网站公章会员管理系统代码
  • 一个简单的动态页面网站需要数据库吗网站开发中背景图片怎么弄全屏
  • 做移动端网站软件开发wordpress数据库名字
  • 做伊瑞尔竞技场的网站网站做的比较好的公司吗
  • 企业营销网站建设规划wordpress 增加站长统计
  • 建设医疗网站有啥网站是专做时尚穿搭
  • 网站开发属于什么系统阎良区建设局网站
  • 做网站谁家好net的网站建设
  • 网站图标 psd哈尔滨网络建设网络优化
  • 网站备案号格式说明书钢丝网片每平米价格
  • 南京做网站建设的公司排名海口房产网站建设
  • 网站建设需要什么研究条件北京专业公司建网站平台
  • 怎样用别人的网站做修改种植类网站模板
  • 请问电商是做什么的怎样做网站优化 知乎
  • 长沙的汽车网站建设外卖平台做网站
  • 网站网站建设培训网站管理登录系统
  • 长沙网络建站西安高端网站设计公司
  • 湘潭网站建设设计谷歌paypal官网登录入口
  • 广州正规网站制作维护如何写一份食品的网站建设规划
  • 市住房城乡建设网站中国医生电影网络营销推广方法
  • 电信宽带做网站服务器做网站公司怎么赚钱吗
  • 视频网站源码下载wordpress前台压缩图片
  • 网站建设地址 北京windows系统优化软件排行榜
  • 网站下模板做网站犯法重庆巴南区网站建设
  • 自己做网站要固定ip在建设厅网站上查询注销建造师
  • 那曲做网站网络营销是什么的基础选择题