1、添加helm源

helm repo add stable https://kubernetes-charts.storage.googleapis.com
helm repo add aliyun https://kubernetes.oss-cn-hangzhou.aliyuncs.com/charts
helm repo add  apphub https://apphub.aliyuncs.com/

helm3安装gitlab_第1张图片

2、下载gitlab-ce

helm pull stable/gitlab-ce
tar  -zxvf  gitlab-ce-0.2.2.tgz

image-20191208162422584.png

3、修改values.yaml文件

helm3安装gitlab_第2张图片

4、安装

helm install gitlab gitlab-ce

备注:由于我是最新16.3的集群,所以这里会报错。如果你是16以下的版本这里不会报错


grep -irl "extensions/v1beta1" gitlab-ce | grep deployment
grep -irl "extensions/v1beta1" gitlab-ce | grep deploy | xargs sed -i 's#extensions/v1beta1#apps/v1#g'

image-20191208162849870.png

#在进行安装,错误原因是现有 k8s不支持gitlab-ce的deployment spec
helm install gitlab gitlab-ce
grep -irl "apps/v1" gitlab-ce | grep deployment

image-20191208163017603.png

依次修改配置文件:

vim gitlab-ce/templates/deployment.yaml
添加:
  replicas: 1
  selector:
    matchLabels:
      app: {{ template "gitlab-ce.fullname" . }}

helm3安装gitlab_第3张图片

vim gitlab-ce/charts/postgresql/templates/deployment.yaml
添加:
  selector:
    matchLabels:
      app: {{ template "postgresql.fullname" . }}

helm3安装gitlab_第4张图片

vim gitlab-ce/charts/redis/templates/deployment.yaml
添加:
  selector:
    matchLabels:
      app: {{ template "redis.fullname" . }}

helm3安装gitlab_第5张图片

在进行安装

helm install gitlab gitlab-ce

helm3安装gitlab_第6张图片

5、查看集群状态

kubectl get pod
image-20191208163410784.png

#由于资源需要请求pv,所以我们还需要创建pv
kubectl get pv
kubectl get pvc

helm3安装gitlab_第7张图片

#在worker节点创建hostpath挂在目录
mkdir  -p  /data/gitlab/pv{1..4}

在master节点创建pv文件

[root@node1 pv]# cat pv1.yaml 
apiVersion: v1
kind: PersistentVolume
metadata:
  name: gitlab-pv1
spec:
  capacity:
    storage: 10Gi
  volumeMode: Filesystem
  accessModes:
  -  ReadWriteOnce
     persistentVolumeReclaimPolicy: Retain
       hostPath:
     path: /data/gitlab/pv1

helm3安装gitlab_第8张图片

helm3安装gitlab_第9张图片

再查看集群状态

helm3安装gitlab_第10张图片

登录界面

helm3安装gitlab_第11张图片