gitlab使用minio实现分布式存储-创新互联
1、分布式优势
1.minio分布式介绍
分布式模式下的MinIO使您可以将多个驱动器(甚至在不同的计算机上)合并到一个对象存储服务器中。由于驱动器分布在多个节点上,因此分布式MinIO可以承受多个节点故障,但仍可以确保完整的数据保护。
创新互联是一家专注于网站建设、成都网站制作与策划设计,巴东网站建设哪家好?创新互联做网站,专注于网站建设10余年,网设计领域的专业建站公司;建站业务涵盖:巴东等地区。巴东做网站价格咨询:18982081108分布式模式下的MinIO可以帮助您通过单个对象存储部署来设置高可用性存储系统。借助分布式MinIO,无论存储设备在网络中的位置如何,您都可以最佳地使用存储设备。
2.数据保护
分布式MinIO 使用擦除代码提供针对多个节点/驱动器故障和位腐烂的保护。由于分布式MinIO所需的最小磁盘为4(与擦除编码所需的最小磁盘相同),因此在启动分布式MinIO时,擦除代码会自动启动。
3.高可用性
如果托管磁盘的服务器脱机,则独立的MinIO服务器将关闭。相反,只要n / 2个或更多磁盘在线,具有n个磁盘的分布式MinIO设置将使您的数据安全。不过,您至少需要(n / 2 + 1)个法定磁盘来创建新对象。
例如,即使最多有8台服务器处于脱机状态,一个16节点的分布式MinIO设置(每个节点具有16个磁盘)仍可继续提供文件。但是,您至少需要在线9台服务器才能创建新对象。
4.限度
与独立模式下的MinIO一样,分布式MinIO的每个租户限制为最少2个,最多32个服务器。这些服务器上的磁盘数量没有限制。如果您需要多租户设置,则可以轻松启动由协调工具(如Kubernetes,Docker Swarm等)管理的多个MinIO实例。
请注意,使用分布式MinIO,只要遵守限制,就可以处理节点和驱动器的数量。例如,您可以有2个节点,每个节点4个驱动器,4个节点每个4个驱动器,8个节点每个2个驱动器,32个服务器每个64个驱动器,依此类推。
5.一致性保证
MinIO遵循严格的读后写和列表后读 /一致性模型的所有输入输出都在分布式和独立模式操作。
2、使用Helm Chart部署MinIO
前提条件:
1.一个k8s集群
2.具备helm环境
1.部署minio
创建minio需要的pv
#vim pv1.yaml apiVersion: v1 kind: PersistentVolume metadata: name: minio-pv1 spec: capacity: storage: 10Gi volumeMode: Filesystem accessModes: - ReadWriteOnce persistentVolumeReclaimPolicy: Retain hostPath: path: /helm/minio/pv1在此使用的是hostpath,在worker节点创建相应的目录。
2.安装minio
#先拉到本地在安装 helm pull stable/minio tar -zxvf minio-3.0.4.tgz helm install minio ./minio #或者直接安装 helm install minio stable/minio查看pod
3.登录访问minio
默认参数:
访问web界面
access Key和secret Key都是默认的,上图配置中
3、gitlab和minio进行关联
kubectl get deploy minio -oyaml 查看关联Key
在gitlab的yaml文件中添加
kubectl edit deploy gitlab-gitlab-ce
- name: MINIO_ACCESS_KEY valueFrom: secretKeyRef: key: accesskey name: minio - name: MINIO_SECRET_KEY valueFrom: secretKeyRef: key: secretkey name: minio查看到状态正常
登录gotlab创建一个文件
删除原来的pod
gitlab的pod启动时间有点长,等启动完成访问界面可以看到
另外有需要云服务器可以了解下创新互联cdcxhl.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。
当前题目:gitlab使用minio实现分布式存储-创新互联
分享链接:http://azwzsj.com/article/jjdid.html