GitLabCI-Runner使用S3存储配置分布式缓存

今天我们主要讲解,minio存储服务的部署、GitLabCI Runner配置分部署缓存。MinIO 是一个基于Apache License v2.0开源协议的对象存储服务。它兼容亚马逊S3云存储服务接口,非常适合于存储大容量非结构化的数据,例如图片、视频、日志文件、备份数据和容器/虚拟机镜像等,而一个对象文件可以是任意大小,从几kb到最大5T不等。MinIO是一个非常轻量的服务,可以很简单的和其他应用的结合,类似 NodeJS, Redis 或者 MySQL。

官方文档:https://docs.min.io/cn/deploy-minio-on-kubernetes.html

基于Kubernetes部署

准备一个pv用于存储bucket数据,这里我使用的是本地的目录"/data/devops/minio-data",根据大家不同的环境按需调整即可。

apiVersion: v1
kind: PersistentVolume
metadata:
  name: ci-minio-pv
  namespace: devops
  labels:
    type: local
spec:
  storageClassName: manual
  capacity:
    storage: 10Gi
  accessModes:
    - ReadWriteOnce
  hostPath:
    path: "/data/devops/minio-data"
---
kubectl create -f pv.yaml
kubectl get pv -n devops
Helm Install

stable/minio 3.0.3  是目前最新的RELEASE版本。

修改minio/values.yml中的service端口为80。(可选)

service:
  type: ClusterIP
  clusterIP: ~
  port: 80
  nodePort: 31311
  # externalIPs:
  #   - externalIp1
  annotations: {}

修改minio/values.yml中的Ingress配置。

ingress:
  enabled: true
  annotations:
    kubernetes.io/ingress.class: nginx
    # kubernetes.io/tls-acme: "true"
    # kubernetes.io/ingress.allow-http: "false"
    # kubernetes.io/ingress.global-static-ip-name: ""
    # nginx.ingress.kubernetes.io/secure-backends: "true"
    # nginx.ingress.kubernetes.io/backend-protocol: "HTTPS"
    # nginx.ingress.kubernetes.io/whitelist-source-range: 0.0.0.0/0
  path: /
  hosts:
    - minio.devops.svc.cluster.local
  tls: []

通过helm命令部署

helm install minio --namespace=devops --set persistence.size=50Gi,persistence.Vo
  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值