在Kubernetes部署GitLab

前置条件

已装置Helm工具
已部署NFS主动创立PVC

应用HELM装置

[root@k8s-master01 ~]# helm repo add gitlab https://charts.gitlab.io/"gitlab" has been added to your repositories[root@k8s-master01 ~]# helm repo updateHang tight while we grab the latest from your chart repositories......Successfully got an update from the "gitlab" chart repository...Successfully got an update from the "cilium" chart repositoryUpdate Complete. ⎈Happy Helming!⎈[root@k8s-master01 ~]# helm upgrade --install gitlab gitlab/gitlab \  --timeout 600s \  --set global.hosts.domain=git.oiox.cn \  --set global.hosts.externalIP=192.168.1.61 \  --set certmanager-issuer.email=cby@chenby.cn   NAME: gitlabLAST DEPLOYED: Mon Sep 12 19:49:30 2022NAMESPACE: defaultSTATUS: deployedREVISION: 1NOTES:=== NOTICEThe minimum required version of PostgreSQL is now 12. See https://gitlab.com/gitlab-org/charts/gitlab/-/blob/master/doc/installation/upgrade.md for more details.=== NOTICEYou've installed GitLab Runner without the ability to use 'docker in docker'.The GitLab Runner chart (gitlab/gitlab-runner) is deployed without the `privileged` flag by default for security purposes. This can be changed by setting `gitlab-runner.runners.privileged` to `true`. Before doing so, please read the GitLab Runner chart's documentation on why wechose not to enable this by default. See https://docs.gitlab.com/runner/install/kubernetes.html#running-docker-in-docker-containers-with-gitlab-runnersHelp us improve the installation experience, let us know how we did with a 1 minute survey:https://gitlab.fra1.qualtrics.com/jfe/form/SV_6kVqZANThUQ1bZb?installation=helm&release=15-3=== NOTICEThe in-chart NGINX Ingress Controller has the following requirements:    - Kubernetes version must be 1.19 or newer.    - Ingress objects must be in group/version `networking.k8s.io/v1`.[root@k8s-master01 ~]# 

查看POD状况

[root@k8s-master01 ~]# kubectl get pod -ANAMESPACE           NAME                                                     READY   STATUS      RESTARTS         AGEcilium-monitoring   grafana-59957b9549-6zzqh                                 1/1     Running     1 (6m28s ago)    8hcilium-monitoring   prometheus-7c8c9684bb-4v9cl                              1/1     Running     1 (4m49s ago)    8hdefault             chenby-75b5d7fbfb-7zjsr                                  1/1     Running     1 (6m15s ago)    35hdefault             chenby-75b5d7fbfb-hbvr8                                  1/1     Running     1 (5m27s ago)    35hdefault             chenby-75b5d7fbfb-ppbzg                                  1/1     Running     1 (5m57s ago)    35hdefault             cm-acme-http-solver-8b6lg                                1/1     Running     1 (4m49s ago)    11mdefault             cm-acme-http-solver-9sd7r                                1/1     Running     1 (4m49s ago)    11mdefault             cm-acme-http-solver-tx5x2                                1/1     Running     1 (5m27s ago)    11mdefault             cm-acme-http-solver-w74zd                                1/1     Running     1 (4m49s ago)    11mdefault             echo-a-6799dff547-pnx6w                                  1/1     Running     1 (6m28s ago)    8hdefault             echo-b-fc47b659c-4bdg9                                   1/1     Running     1 (4m49s ago)    8hdefault             echo-b-host-67fcfd59b7-28r9s                             1/1     Running     1 (4m49s ago)    8hdefault             gitlab-certmanager-7cb7797848-fgdff                      1/1     Running     1 (5m27s ago)    12mdefault             gitlab-certmanager-cainjector-5968cb88f9-qw4d7           1/1     Running     2 (5m57s ago)    12mdefault             gitlab-certmanager-webhook-797bcff548-t266p              1/1     Running     1 (6m15s ago)    12mdefault             gitlab-gitaly-0                                          1/1     Running     1 (6m28s ago)    12mdefault             gitlab-gitlab-exporter-58fc5779d7-lbl4s                  1/1     Running     1 (5m27s ago)    12mdefault             gitlab-gitlab-runner-5484688b78-d5gmt                    0/1     Running     3 (2m8s ago)     12mdefault             gitlab-gitlab-shell-7578c56d55-p5fvp                     1/1     Running     1 (5m27s ago)    12mdefault             gitlab-gitlab-shell-7578c56d55-vzbrb                     1/1     Running     1 (4m49s ago)    12mdefault             gitlab-issuer-1-sw7nm                                    0/1     Completed   0                12mdefault             gitlab-kas-85f677867b-sjxqv                              1/1     Running     1 (4m49s ago)    12mdefault             gitlab-kas-85f677867b-wwlsl                              1/1     Running     1 (6m28s ago)    12mdefault             gitlab-migrations-1-hpsc8                                0/1     Completed   2                12mdefault             gitlab-minio-74467697bb-76xcb                            1/1     Running     1 (4m49s ago)    12mdefault             gitlab-minio-create-buckets-1-nwzh2                      0/1     Completed   0                12mdefault             gitlab-nginx-ingress-controller-77589fdd6f-7rk5f         1/1     Running     1 (5m27s ago)    12mdefault             gitlab-nginx-ingress-controller-77589fdd6f-lk96x         1/1     Running     1 (4m49s ago)    12mdefault             gitlab-postgresql-0                                      2/2     Running     2 (5m27s ago)    12mdefault             gitlab-prometheus-server-6bf4fffc55-ww59q                2/2     Running     2 (6m14s ago)    12mdefault             gitlab-redis-master-0                                    2/2     Running     2 (4m49s ago)    12mdefault             gitlab-registry-54899b8c96-gkmm2                         1/1     Running     1 (5m27s ago)    12mdefault             gitlab-registry-54899b8c96-pzxcd                         1/1     Running     1 (5m57s ago)    12mdefault             gitlab-sidekiq-all-in-1-v2-64cbbc8cd8-4pmm9              1/1     Running     1 (5m57s ago)    12mdefault             gitlab-sidekiq-all-in-1-v2-64cbbc8cd8-fr2wn              1/1     Running     0                81sdefault             gitlab-sidekiq-all-in-1-v2-64cbbc8cd8-sx8b6              1/1     Running     0                81sdefault             gitlab-toolbox-746c98d8f6-cxwl9                          1/1     Running     1 (5m27s ago)    12mdefault             gitlab-webservice-default-6998494449-9hrtc               2/2     Running     1 (6m28s ago)    12mdefault             gitlab-webservice-default-6998494449-kdbbq               2/2     Running     2 (6m14s ago)    12mdefault             host-to-b-multi-node-clusterip-69c57975d6-z4j2z          1/1     Running     3 (4m6s ago)     8hdefault             host-to-b-multi-node-headless-865899f7bb-frrmc           1/1     Running     2 (4m16s ago)    8hdefault             nfs-client-provisioner-665598d599-4xwmf                  1/1     Running     3 (5m57s ago)    52mdefault             pod-to-a-allowed-cnp-5f9d7d4b9d-hcd8x                    1/1     Running     4 (3m54s ago)    8hdefault             pod-to-a-denied-cnp-65cc5ff97b-2rzb8                     1/1     Running     1 (6m28s ago)    8hdefault             pod-to-a-dfc64f564-p7xcn                                 1/1     Running     3 (4m6s ago)     8hdefault             pod-to-b-intra-node-nodeport-677868746b-trk2l            1/1     Running     1 (4m49s ago)    8hdefault             pod-to-b-multi-node-clusterip-76bbbc677b-knfq2           1/1     Running     2 (4m2s ago)     8hdefault             pod-to-b-multi-node-headless-698c6579fd-mmvd7            1/1     Running     2 (4m48s ago)    8hdefault             pod-to-b-multi-node-nodeport-5dc4b8cfd6-8dxmz            1/1     Running     2 (4m48s ago)    8hdefault             pod-to-external-1111-8459965778-pjt9b                    1/1     Running     13 (5m57s ago)   8hdefault             pod-to-external-fqdn-allow-google-cnp-64df9fb89b-l9l4q   1/1     Running     15 (4m39s ago)   8hkube-system         cilium-7rfj6                                             1/1     Running     1 (5m27s ago)    8hkube-system         cilium-d4cch                                             1/1     Running     1 (6m28s ago)    8hkube-system         cilium-h5x8r                                             1/1     Running     1 (5m57s ago)    8hkube-system         cilium-operator-5dbddb6dbf-flpl5                         1/1     Running     1 (6m28s ago)    8hkube-system         cilium-operator-5dbddb6dbf-gcznc                         1/1     Running     2 (4m49s ago)    8hkube-system         cilium-t2xlz                                             1/1     Running     1 (4m49s ago)    8hkube-system         cilium-z65z7                                             1/1     Running     1 (6m15s ago)    8hkube-system         coredns-665475b9f8-jkqn8                                 1/1     Running     2 (4m49s ago)    44hkube-system         hubble-relay-59d8575-9pl9z                               1/1     Running     1 (6m28s ago)    8hkube-system         hubble-ui-64d4995d57-nsv9j                               2/2     Running     2 (6m28s ago)    8hkube-system         metrics-server-776f58c94b-c6zgs                          1/1     Running     2 (6m14s ago)    45h[root@k8s-master01 ~]# 

查看INGRESS状况

[root@k8s-master01 ~]# kubectl  get svc -A | grep ingressdefault             gitlab-nginx-ingress-controller           LoadBalancer   10.111.0.148     <pending>     80:32002/TCP,443:31390/TCP,22:30887/TCP   26mdefault             gitlab-nginx-ingress-controller-metrics   ClusterIP      10.104.165.192   <none>        10254/TCP                                 26m# 批改为NodePort[root@k8s-master01 ~]# kubectl  edit svc gitlab-nginx-ingress-controllerservice/gitlab-nginx-ingress-controller edited[root@k8s-master01 ~]# [root@k8s-master01 ~]# kubectl  get svc -A | grep ingressdefault             gitlab-nginx-ingress-controller           NodePort    10.111.0.148     <none>        80:32002/TCP,443:31390/TCP,22:30887/TCP   26mdefault             gitlab-nginx-ingress-controller-metrics   ClusterIP   10.104.165.192   <none>        10254/TCP                                 26m[root@k8s-master01 ~]# [root@k8s-master01 ~]# # 查看有哪些域名[root@k8s-master01 ~]# kubectl  get ingressNAME                        CLASS          HOSTS                  ADDRESS        PORTS     AGEcm-acme-http-solver-84tql   gitlab-nginx   minio.git.oiox.cn      10.111.0.148   80        25mcm-acme-http-solver-c4n6s   gitlab-nginx   kas.git.oiox.cn        10.111.0.148   80        25mcm-acme-http-solver-vwn4s   gitlab-nginx   gitlab.git.oiox.cn     10.111.0.148   80        25mcm-acme-http-solver-zccvm   gitlab-nginx   registry.git.oiox.cn   10.111.0.148   80        25mgitlab-kas                  gitlab-nginx   kas.git.oiox.cn        10.111.0.148   80, 443   27mgitlab-minio                gitlab-nginx   minio.git.oiox.cn      10.111.0.148   80, 443   27mgitlab-registry             gitlab-nginx   registry.git.oiox.cn   10.111.0.148   80, 443   27mgitlab-webservice-default   gitlab-nginx   gitlab.git.oiox.cn     10.111.0.148   80, 443   27m[root@k8s-master01 ~]# 

本地写入域名

[root@k8s-master01 ~]# cat /etc/hosts127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4::1         localhost localhost.localdomain localhost6 localhost6.localdomain6# 没有IPv6抉择不配置即可2409:8a10:9e10:8700::10 k8s-master012409:8a10:9e10:8700::20 k8s-master022409:8a10:9e10:8700::30 k8s-master032409:8a10:9e10:8700::40 k8s-node012409:8a10:9e10:8700::50 k8s-node02192.168.1.61 k8s-master01192.168.1.62 k8s-master02192.168.1.63 k8s-master03192.168.1.64 k8s-node01192.168.1.65 k8s-node02192.168.1.66 lb-vip192.168.1.61 kas.git.oiox.cn192.168.1.61 minio.git.oiox.cn192.168.1.61 registry.git.oiox.cn192.168.1.61 gitlab.git.oiox.cn[root@k8s-master01 ~]# 

测试拜访

# 查看明码[root@k8s-master01 ~]# kubectl get secret gitlab-gitlab-initial-root-password -ojsonpath='{.data.password}' | base64 --decode ; echoHh7EjzH01T7DJw7TutWG6ynAU8yoGYcxNcV0cADCIpRCPeuFA5DBTC1I5V4T4gz4[root@k8s-master01 ~]# # 拜访https://gitlab.git.oiox.cn:31390/

123

对于

https://www.oiox.cn/

https://www.oiox.cn/index.php...

CSDN、GitHub、知乎、开源中国、思否、掘金、简书、华为云、阿里云、腾讯云、哔哩哔哩、今日头条、新浪微博、集体博客

全网可搜《小陈运维》

文章次要公布于微信公众号