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

南昌市会做网站有哪几家yandex引擎

南昌市会做网站有哪几家,yandex引擎,hdwiki做网站,郑州做网站的联系方式PV全称是PersistentVolume,即持久卷,是由管理员事先准备好的资源。它可以是本地磁盘,也可以是网络磁盘。 PVC全称是PersistentVolumeClaim,即持久卷申领。它表示卷的使用者,对PV的申请。即我们可以认为,PV是…

PV全称是PersistentVolume,即持久卷,是由管理员事先准备好的资源。它可以是本地磁盘,也可以是网络磁盘。
PVC全称是PersistentVolumeClaim,即持久卷申领。它表示卷的使用者,对PV的申请。即我们可以认为,PV是整体,PVC是申请其中的部分。

local型PV

local类型的持久卷分配的是本地磁盘空间。K8S要求该类型的卷在配置时指定其节点亲和性(nodeAffinity),即我们优先(只能)在哪些节点上分配空间。

# default_storage_class_pv.yaml
apiVersion: v1
kind: PersistentVolume
metadata:name: default-storage-class-pv
spec:capacity:storage: 100KivolumeMode: FilesystemaccessModes:- ReadWriteOncepersistentVolumeReclaimPolicy: Retainlocal:path: /tmpnodeAffinity:required:nodeSelectorTerms:- matchExpressions:- key: kubernetes.io/hostnameoperator: Invalues:- ubuntud

accessModes是卷的访问模式。有如下选项:

  1. ReadWriteOnce:读写权限,只能被一个Node挂载。
  2. ReadOnlyMany:只读权限,可以被多个Node挂载。
  3. ReadWriteMany:读写权限,可以被多个Node挂载。

由于上例是本地磁盘,所以只能是ReadWriteOnce,因为它只能被一个Node挂载。
persistentVolumeReclaimPolicy选择Retain,表示资源回收需要手工进行。
local和nodeAffinity表示我们将在ubuntud的/tmp目录下分配卷空间。

静态绑定的PVC

# default_storage_class_pvc.yaml
apiVersion: v1
kind: PersistentVolumeClaim
metadata:name: default-storage-class-pvc
spec:resources:requests:storage: 10KivolumeName: default-storage-class-pvaccessModes:- ReadWriteOnce

volumeName指定了PV的名称。这样PVC就和PV进行了绑定。

绑定过程中状态的变化

我们创建上述资源PV。

kubectl create -f default_storage_class_pv.yaml 

然后观察其状态:

kubectl describe persistentvolume default-storage-class-pv
Name:              default-storage-class-pv
Labels:            <none>
Annotations:       <none>
Finalizers:        [kubernetes.io/pv-protection]
StorageClass:      
Status:            Available
Claim:             
Reclaim Policy:    Retain
Access Modes:      RWO
VolumeMode:        Filesystem
Capacity:          100Ki
Node Affinity:     Required Terms:  Term 0:        kubernetes.io/hostname in [ubuntud]
Message:           
Source:Type:  LocalVolume (a persistent volume backed by local storage on a node)Path:  /tmp
Events:    <none>

可以看到PV处于Available状态。
然后我们创建绑定其的PVC:

kubectl create -f default_storage_class_pvc.yaml 

过段时间后我们查看PVC状态。

kubectl describe persistentvolumeclaims default-storage-class-pvc
Name:          default-storage-class-pvc
Namespace:     default
StorageClass:  
Status:        Bound
Volume:        default-storage-class-pv
Labels:        <none>
Annotations:   pv.kubernetes.io/bind-completed: yes
Finalizers:    [kubernetes.io/pvc-protection]
Capacity:      100Ki
Access Modes:  RWO
VolumeMode:    Filesystem
Used By:       <none>
Events:        <none>

可以看到PVC的状态是Bound(已绑定)。
最后我们看下PV的状态,它的状态也变成了Bound(已绑定)。至此,该PV和PVC已经绑定了。

kubectl describe persistentvolume default-storage-class-pv
Name:              default-storage-class-pv
Labels:            <none>
Annotations:       pv.kubernetes.io/bound-by-controller: yes
Finalizers:        [kubernetes.io/pv-protection]
StorageClass:      
Status:            Bound
Claim:             default/default-storage-class-pvc
Reclaim Policy:    Retain
Access Modes:      RWO
VolumeMode:        Filesystem
Capacity:          100Ki
Node Affinity:     Required Terms:  Term 0:        kubernetes.io/hostname in [ubuntud]
Message:           
Source:Type:  LocalVolume (a persistent volume backed by local storage on a node)Path:  /tmp
Events:    <none>

已经绑定的PV不可以再绑定PVC。我们创建一个新的PVC,进行测试

# default_storage_class_pvc_invalid.yaml
apiVersion: v1
kind: PersistentVolumeClaim
metadata:name: default-storage-class-pvc-invalid
spec:resources:requests:storage: 10KivolumeName: default-storage-class-pvaccessModes:- ReadWriteOnce
 kubectl create -f default_storage_class_pvc_invalid.yaml

persistentvolumeclaim/default-storage-class-pvc-invalid created

显示创建成功,但是实际状态是Pending。原因是default-storage-class-pv已经绑定到其他PVC。

kubectl describe persistentvolumeclaims default-storage-class-pvc-invalid 
Name:          default-storage-class-pvc-invalid
Namespace:     default
StorageClass:  
Status:        Pending
Volume:        default-storage-class-pv
Labels:        <none>
Annotations:   <none>
Finalizers:    [kubernetes.io/pvc-protection]
Capacity:      0
Access Modes:  
VolumeMode:    Filesystem
Used By:       <none>
Events:Type     Reason         Age               From                         Message----     ------         ----              ----                         -------Warning  FailedBinding  8s (x2 over 22s)  persistentvolume-controller  volume "default-storage-class-pv" already bound to a different claim.

删除过程中的状态变化

我们先删掉上面创建的PVC

kubectl delete persistentvolumeclaims default-storage-class-pvc-invalid
kubectl delete persistentvolumeclaims default-storage-class-pvc

然后观察PV的变化

kubectl describe persistentvolume default-storage-class-pv 
Name:              default-storage-class-pv
Labels:            <none>
Annotations:       pv.kubernetes.io/bound-by-controller: yes
Finalizers:        [kubernetes.io/pv-protection]
StorageClass:      
Status:            Released
Claim:             default/default-storage-class-pvc
Reclaim Policy:    Retain
Access Modes:      RWO
VolumeMode:        Filesystem
Capacity:          100Ki
Node Affinity:     Required Terms:  Term 0:        kubernetes.io/hostname in [ubuntud]
Message:           
Source:Type:  LocalVolume (a persistent volume backed by local storage on a node)Path:  /tmp
Events:    <none>

此时PV因为绑定的PVC被删除,而其persistentVolumeReclaimPolicy选择了Retain,资源没有被回收,而变成了Released状态。卷的状态如下:

  • Available(可用)-- 卷是一个空闲资源,尚未绑定到任何申领;
  • Bound(已绑定)-- 该卷已经绑定到某申领;
  • Released(已释放)-- 所绑定的申领已被删除,但是资源尚未被集群回收;
  • Failed(失败)-- 卷的自动回收操作失败。

这个时候我们再创建上述PVC,还是会处于pending状态。因为PV没有处于Available状态。

kubectl create -f default_storage_class_pvc.yaml

persistentvolumeclaim/default-storage-class-pvc created

kubectl describe persistentvolumeclaims default-storage-class-pvc
Name:          default-storage-class-pvc
Namespace:     default
StorageClass:  
Status:        Pending
Volume:        default-storage-class-pv
Labels:        <none>
Annotations:   <none>
Finalizers:    [kubernetes.io/pvc-protection]
Capacity:      0
Access Modes:  
VolumeMode:    Filesystem
Used By:       <none>
Events:Type     Reason         Age   From                         Message----     ------         ----  ----                         -------Warning  FailedBinding  8s    persistentvolume-controller  volume "default-storage-class-pv" already bound to a different claim.

再绑定Released状态的PV

使用下面指令,删除描述绑定信息的claimRef段。

kubectl edit persistentvolume default-storage-class-pv
# Please edit the object below. Lines beginning with a '#' will be ignored,
# and an empty file will abort the edit. If an error occurs while saving this file will be
# reopened with the relevant failures.
#
apiVersion: v1
kind: PersistentVolume
metadata:annotations:pv.kubernetes.io/bound-by-controller: "yes"creationTimestamp: "2023-08-09T09:26:04Z"finalizers:- kubernetes.io/pv-protectionname: default-storage-class-pvresourceVersion: "285190"uid: 09782be4-09b9-4116-9b44-8dbb75f08dbf
spec:accessModes:- ReadWriteOncecapacity:storage: 100KiclaimRef:apiVersion: v1kind: PersistentVolumeClaimname: default-storage-class-pvcnamespace: defaultresourceVersion: "285153"uid: c55398f4-77cd-4627-8a11-57b0e049c594local:path: /tmpnodeAffinity:required:nodeSelectorTerms:- matchExpressions:- key: kubernetes.io/hostnameoperator: Invalues:- ubuntudpersistentVolumeReclaimPolicy: RetainvolumeMode: Filesystem
status:phase: Released

保存完后过一会儿,PV就会变成Available状态。而之前处于Pending状态的PVC也会因为PV的状态变化从Pending变成Bound状态,PV也会进而变成Bound状态

kubectl describe persistentvolume default-storage-class-pv 
Name:              default-storage-class-pv
Labels:            <none>
Annotations:       pv.kubernetes.io/bound-by-controller: yes
Finalizers:        [kubernetes.io/pv-protection]
StorageClass:      
Status:            Bound
Claim:             default/default-storage-class-pvc
Reclaim Policy:    Retain
Access Modes:      RWO
VolumeMode:        Filesystem
Capacity:          100Ki
Node Affinity:     Required Terms:  Term 0:        kubernetes.io/hostname in [ubuntud]
Message:           
Source:Type:  LocalVolume (a persistent volume backed by local storage on a node)Path:  /tmp
Events:    <none>
kubectl describe persistentvolumeclaims default-storage-class-pvc
Name:          default-storage-class-pvc
Namespace:     default
StorageClass:  
Status:        Bound
Volume:        default-storage-class-pv
Labels:        <none>
Annotations:   pv.kubernetes.io/bind-completed: yes
Finalizers:    [kubernetes.io/pvc-protection]
Capacity:      100Ki
Access Modes:  RWO
VolumeMode:    Filesystem
Used By:       <none>
Events:        <none>

参考资料

  • https://kubernetes.io/zh-cn/docs/concepts/storage/persistent-volumes/
  • https://cloud.tencent.com/document/product/457/47014
http://www.shuangfujiaoyu.com/news/21116.html

相关文章:

  • wordpress主页小工具深圳网络优化公司
  • 做外贸网站一定要会英语吗北京网站排名推广
  • 网上有做任务赚钱的网站服务营销案例100例
  • phpwind 做企业网站微营销系统
  • 做走私网站沧州做网络推广的平台
  • 福建微网站建设价格站长工具查询入口
  • 做网站用哪个工具长春seo公司哪家好
  • iis做网站之vps免费线上培训平台
  • 网站推广新手入门教程网络营销相关的岗位有哪些
  • 群辉里的wordpresswin10系统优化软件哪个好
  • 福田企业网站优化方案中国新冠疫情最新消息
  • wordpress登陆后跳转页面许昌网站seo
  • 南浔做网站关键词语有哪些
  • 钓鱼网站服务器放香港危险吗福建省人民政府
  • 孝感做网站seo常见的优化技术
  • 关于网页制作的网站网络营销的四大要素
  • 可做长图的网站东莞建设企业网站
  • 园林效果图网站列举常见的网络营销工具
  • 江西南昌网站建设公司哪家好公司推广咨询
  • 移动互联网开发记事本项目告别seo网络优化软件
  • 三网合一网站程序seo方案怎么做
  • 怎么在网站后台做图片新闻怎么推广一个网站
  • alexa排名查询的特点seo排名点击软件运营
  • 泰安网站建设广告重庆seo关键词优化服务
  • java做网站的步骤郑州百度推广代理公司
  • 网站子目录怎么做网络营销价格策略有哪些
  • 网站 被攻击_主业篡改 被黑了 织梦做的站关键路径
  • 余姚网站建设维护最新招聘信息推广软件下载
  • 上饶金河湾做网站模板免费下载网站
  • 网站的推广方案有哪些制作网站需要什么