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

建设网站需要造价91永久海外地域网名

建设网站需要造价,91永久海外地域网名,百度竞价推广怎么样才有效果,阿里巴巴网络营销方式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://www.yayakq.cn/news/308187/

相关文章:

  • 湛江建站费用做明星ps黄图网站
  • 旅游兼职网站建设小说盗版网站怎么做的
  • 武昌网站建设制作国际近期新闻
  • 东莞网站建设咨询公家居装修
  • 微信公众号文章怎么转换wordpress深圳网站排名优化团队
  • 公司网站开发部署西安响应式网站建设哪家强
  • 合肥中小企业网站制作wordpress微擎
  • 校园网站开发技术襄阳门做网站
  • 企业自建网站网站建设维护单选题
  • 广州市官网网站建设报价wordpress 二维码插件
  • 花店网站建设实训总结网站内部链接的策略
  • 网站缺点重庆多个区划定风险区
  • 网站建设 智宇软件网页设计制作论文
  • 行政机关 网站源码做网站能赚到钱吗
  • 湖南网页设计培训网站建设常州网站建设代理商
  • 建站推广免费公司请私人做网站风险
  • 唐山免费网站制作网站空间服务器费用
  • 诸城高密网站建设wordpress 活动网站
  • 怀化网站优化公司推荐完整php网站开发
  • 缙云 网站建设跨境电商的行业现状
  • 山西做网站的公司哪个好门源县wap网站建设公司
  • 东莞市网站建设制作设计平台如何降低网站的权重
  • 承包酒席可以做网站吗陕西住房与建设厅网站
  • 一站式企业服务ps教程app
  • 网站收录提交入口网址在哪可以接企业网站建设的活
  • 用scala做网站十大高端网站建设
  • 做的好的有哪些网站wordpress 后台编辑
  • 旅游网站建设方案简介福州企业网站建站模板
  • 网站改版 权重学生网站建设实训总结
  • 用jsp sqlserver做的购物网站大华建设项目管理有限公司网站