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

永兴县网站建设专业网站安全风险评估报告

永兴县网站建设专业,网站安全风险评估报告,ps海报制作教程步骤的网站,软件开发培训去哪个机构一、前言 minio的部署有几种方式#xff0c;分别是单节点单磁盘#xff0c;单节点多磁盘#xff0c;多节点多磁盘三种方式#xff0c;本次部署使用多节点多磁盘的方式进行部署#xff0c;minio集群多节点部署最低要求需要4个节点#xff0c;集群扩容时也是要求扩容的节点…一、前言 minio的部署有几种方式分别是单节点单磁盘单节点多磁盘多节点多磁盘三种方式本次部署使用多节点多磁盘的方式进行部署minio集群多节点部署最低要求需要4个节点集群扩容时也是要求扩容的节点为4的倍数才能更好的发挥minio的性能使用minio集群可以更好的实现高可用在minio集群还有n/2节点存活时minio集群依然可读但不可写在minio集群还有n/21节点存活时minio集群依然可读可写 二、部署 创建minio 服务yaml文件的存储目录 mkdir /opt/minio  cd /opt/minio 这里使用nfs作为minio的存储其实最好还是单独挂载磁盘作为minio的存储更好用nfs作为minio的存储相当于存储还是有单点的问题单独挂载磁盘可以在k8s的每个工作节点分配磁盘的存储路径再使用pv作为存储块这样就能避免存储的单点问题这里就是用nfs网络存储作为pv存储块的存储 vi pv.yaml apiVersion: v1 kind: PersistentVolume metadata:name: minio-pv0 spec:storageClassName: minio-pv #指定动态存储卷的类型或类别当pvc使用该类别时可以自动绑定属于该类别的pvcapacity:storage: 100Gi #存储大小accessModes:- ReadWriteOncepersistentVolumeReclaimPolicy: Retain #配置回收模式配置为删除pv不自动删除存储路径中的数据nfs: #使用nfs存储path: /volume2/k8s-data/minio/minio-pv0 #nfs存储路径这里使用4个不同的nfs路径模拟4个单独的存储磁盘server: 10.1.13.99 --- apiVersion: v1 kind: PersistentVolume metadata:name: minio-pv1 spec:storageClassName: minio-pv capacity:storage: 100GiaccessModes:- ReadWriteOncepersistentVolumeReclaimPolicy: Retainnfs:path: /volume2/k8s-data/minio/minio-pv1server: 10.1.13.99 --- apiVersion: v1 kind: PersistentVolume metadata:name: minio-pv2 spec:storageClassName: minio-pv capacity:storage: 100GiaccessModes:- ReadWriteOncepersistentVolumeReclaimPolicy: Retainnfs:path: /volume2/k8s-data/minio/minio-pv2server: 10.1.13.99 --- apiVersion: v1 kind: PersistentVolume metadata:name: minio-pv3 spec:storageClassName: minio-pv capacity:storage: 100GiaccessModes:- ReadWriteOncepersistentVolumeReclaimPolicy: Retainnfs:path: /volume2/k8s-data/minio/minio-pv3server: 10.1.13.99 使用setafulset的方式部署minio集群因为每个minio是有状态的应用每个节点都存着数据这里再说一下使用的是pvc模板的方式去绑定创建好的pv也可以使用动态pv使用pvc模板然后去动态的自动创建pv绑定 vi setafulset.yaml apiVersion: apps/v1 kind: StatefulSet metadata:name: minionamespace: minio spec:podManagementPolicy: Parallel #并行启动pod不配置的话模式是按顺序启动podminio、nacos都需要配置并行启动serviceName: minio #指定Headless Service的名称这个服务的作用是为每个Pod创建一个独立的DNS记录使其能够通过该DNS记录进行唯一标识和访问replicas: 4selector:matchLabels:app: miniotemplate:metadata:labels:app: miniospec:affinity: #亲和性配置可忽略我这里是为了分配到固定的节点上nodeAffinity:requiredDuringSchedulingIgnoredDuringExecution:nodeSelectorTerms:- matchExpressions:- key: appoperator: Invalues:- miniocontainers:- name: minioimage: minio/minioimagePullPolicy: IfNotPresentenv: #配置变量配置minio集群的账户密码密码不能少于8位数- name: MINIO_ROOT_USERvalue: admin- name: MINIO_ROOT_PASSWORDvalue: 12345678args: #定义minio集群配置定义每个节点- server- http://minio-{0...3}.minio.minio.svc.cluster.local/data# - http://minio-{4...7}.minio.minio.svc.cluster.local/data- --console-address- :5000ports:- name: tcp-9000containerPort: 9000protocol: TCP- name: http-5000containerPort: 5000protocol: TCPvolumeMounts: #配置数据目录- name: datamountPath: /datatolerations: #配置污点我这里是为了能在master节点上分配pod- key: node-role.kubernetes.io/control-planeoperator: Existseffect: NoSchedulevolumeClaimTemplates: #使用定义pvc模板去自动创建pvc- metadata:name: dataspec:accessModes: [ ReadWriteOnce ]storageClassName: minio-pv #配置存储类型的名称这里配置和上面pv配置的名称一致就会自动绑定关于此存储类型名称的pvresources:requests:storage: 100Gi 配置service使得外部能访问minio集群 vi service.yaml kind: Service apiVersion: v1 metadata:name: minionamespace: miniolabels:app: minio spec:type: NodePortports:- name: http-9000protocol: TCPport: 9000nodePort: 30004targetPort: 9000- name: http-5000protocol: TCPport: 5000nodePort: 30002targetPort: 5000selector:app: minio 创建命名空间 kubectl create namespace minio 创建各yaml服务 kubectl apply -f pv.yaml kubectl apply -f setafulset.yaml kubectl apply -f service.yaml 查看各服务是否正常 kubectl get all -n minio kubectl get pv  kubectl get pvc -n minio 查看minio web http://10.1.60.119:30002 输入配置setafulset时定义的用户名和密码 可以看到minio集群显示4个节点均正常 创建bucket上传文件后进行节点损坏实验 这里就不展示实验的过程了 直接讲述实验的结果本minio集群一共四个节点当存活节点只剩下n/2时即2个节点minio的bucket只能读取文件不能上传文件当存活节点剩下n/21时minio的bucket可以进行正常的读取文件、上传文件可以自行做实验尝试 注意minio集群部署后如果删除了pvc和pv重新创建会导致pod重新随机绑定一个pvc和pvpod随机绑定pvc后minio集群会出现问题会报错挂载磁盘信息不正确如果要解决的话需要删除该pv挂载路径下原来的数据所以一般不要动pvc和pv因为setafulset的特性只删除podpod会自动绑定原来的pvc即使把整个setafulset删除重新创建也是会绑定原来的pvc就不会导致集群出现问题 minio集群节点对等扩容 minio集群的扩容需要提前创建好需要扩容的pv个数再更改setafulset配置关于minio的扩容需要是4的倍数这样才能更好的发挥minio集群的特性以便最好地利用 Erasure Code并提供最佳的冗余和容错性这是因为 Erasure Code 将数据分为数据块和冗余块并将它们分布在不同的节点上确保了数据的可靠性和冗余另外使用对等扩容后minio的集群原来的节点和新加入的加点会分成两部分两部分不互相同步数据当数据上传到bucket时minio会根据算法去判断该数据存在哪一部分节点上 vi pv.yaml apiVersion: v1 #在之前的pv配置后面加上以下pv配置 kind: PersistentVolume metadata:name: minio-pv4 spec:storageClassName: minio-pv #定义了存储类型capacity:storage: 100GiaccessModes:- ReadWriteOncepersistentVolumeReclaimPolicy: Retainnfs:path: /volume2/k8s-data/minio/minio-pv4server: 10.1.13.99 --- apiVersion: v1 kind: PersistentVolume metadata:name: minio-pv5 spec:storageClassName: minio-pv #定义了存储类型capacity:storage: 100GiaccessModes:- ReadWriteOncepersistentVolumeReclaimPolicy: Retainnfs:path: /volume2/k8s-data/minio/minio-pv5server: 10.1.13.99 --- apiVersion: v1 kind: PersistentVolume metadata:name: minio-pv6 spec:storageClassName: minio-pv #定义了存储类型capacity:storage: 100GiaccessModes:- ReadWriteOncepersistentVolumeReclaimPolicy: Retainnfs:path: /volume2/k8s-data/minio/minio-pv6server: 10.1.13.99 --- apiVersion: v1 kind: PersistentVolume metadata:name: minio-pv7 spec:storageClassName: minio-pv #定义了存储类型capacity:storage: 100GiaccessModes:- ReadWriteOncepersistentVolumeReclaimPolicy: Retainnfs:path: /volume2/k8s-data/minio/minio-pv7server: 10.1.13.99 vi setafulset apiVersion: apps/v1 kind: StatefulSet metadata:name: minionamespace: minio spec:podManagementPolicy: Parallel #平行启动pod不配置的话模式是按顺序启动podserviceName: minioreplicas: 8 #更改pod数量selector:matchLabels:app: miniotemplate:metadata:labels:app: miniospec:affinity:nodeAffinity:requiredDuringSchedulingIgnoredDuringExecution:nodeSelectorTerms:- matchExpressions:- key: appoperator: Invalues:- miniocontainers:- name: minioimage: minio/minioimagePullPolicy: IfNotPresentenv:- name: MINIO_ROOT_USERvalue: admin- name: MINIO_ROOT_PASSWORDvalue: Zyh022759args:- server- http://minio-{0...3}.minio.minio.svc.cluster.local/data- http://minio-{4...7}.minio.minio.svc.cluster.local/data #增加minio集群配置- --console-address- :5000ports:- name: tcp-9000containerPort: 9000protocol: TCP- name: http-5000containerPort: 5000protocol: TCPvolumeMounts:- name: datamountPath: /datatolerations:- key: node-role.kubernetes.io/control-planeoperator: Existseffect: NoSchedulevolumeClaimTemplates:- metadata:name: dataspec:accessModes: [ ReadWriteOnce ]storageClassName: minio-pvresources:requests:storage: 100Gi 执行yaml文件加载配置 kubectl apply -f pv.yaml kubectl apply -f setafulset.yaml 执行完成后minio集群就会扩容成8节点集群关于数据会随机分配到两部分节点上存储可以自行做实验验证
http://www.w-s-a.com/news/381026/

相关文章:

  • 做鞋子的招聘网站有哪些微网站
  • 项目网站开发建网站 多少钱
  • wordpress做门户seo培训价格
  • 百度关键词优化软件如何wordpress站点地图优化
  • 使用cnnic证书的网站营销公司有哪些
  • 做电子杂志用什么网站如何将网站生成二维码
  • 三点水网站建设洛阳市建设厅网站
  • 哪家做网站便宜网络推广培训吧
  • 网站怎么做支付非凡软件站
  • 北京谁会做网站开发熊岳网站怎么做
  • 南阳哪有做网站公司定制网站本地企业
  • 平板上做网站的软件邀约网站怎么做请柬
  • 企业网站成品源码邯郸做网站流程
  • 建设网站需要什么技术两个网站放在同一个服务器 备案
  • 焦作做网站推广天津网络关键词排名
  • siteserver cms网站访问量挂机宝可以做网站吗
  • 普宁网站建设公司网络商城设计
  • wordpress主题 外贸网站wordpress安装后输入帐号登不进去
  • 陕西省西安市建设局网站永登网站设计与建设
  • 广东网站设计招工.免费咨询贷款
  • 做试题网站在线做c 题的网站
  • 青岛发现51例阳性南京专业网站优化公司
  • 南昌建站如何上wordpress
  • 洛阳网站建设优惠公司建筑企业上市公司有哪些
  • 营销型网站建设营销型网站建设手机网站设计需要学什么
  • 在线视频网站 一级做爰片南通网站建设找哪家
  • 网站优化文章东莞专业网站建设价钱
  • 哈尔滨网页设计网站模板泰兴建设局网站
  • 响应式网站设计公司报纸做垂直门户网站
  • 陕西旭泽建设有限公司网站企业网站建设软件需求分析