起因: 安装了kuboard 好奇他的gitlab登陆功能,如果gitlab是ldap登陆 那收费的ldap登陆不是等于就有了嘛。

实践过程中 请教了大佬邵欢庆,大佬态度格外好,远程排错,可惜笔记本授权不太会,大佬向日葵连过来没法操作 只能看不能动。

安装过程如下

说明: 我这里的2个域名dex.ihaozhuo.com和test-gitlab.ihaozhuo.com都是自己定义的 外网解析不到,所以需要在coredns和/etc/hosts里添加,apiserver的配置文件也要加上 hostAlias 因为dex 的容器组要能够访问 gitlab 才可以,k8sapiserver 也是。 这句大佬原话,的确我没改报错了。

每台k8s 服务器修改/etc/hosts 添加解析dex.ihaozhuo.com都192.168.1.107

kubectl edit configmap coredns -n kube-system
 kubectl scale deployment coredns -n kube-system --replicas=0
 kubectl scale deployment coredns -n kube-system --replicas=2

k8s部署gitlab如何登录 k8s安装gitlab_k8s部署gitlab如何登录

k8s部署gitlab如何登录 k8s安装gitlab_Pod_02

这里不知道为什么感觉返回 会有延迟一下。

k8s部署gitlab如何登录 k8s安装gitlab_Pod_03

apiserver也要改 不然后面会报错 在/etc/kubernetes/manifests/kube-apiserver.yaml添加如下

k8s部署gitlab如何登录 k8s安装gitlab_Pod_04

最好进入api的pod测试一下

k8s部署gitlab如何登录 k8s安装gitlab_配置文件_05

继续安装

k8s部署gitlab如何登录 k8s安装gitlab_git_06

k8s部署gitlab如何登录 k8s安装gitlab_k8s部署gitlab如何登录_07

可以记住登陆状态和支持各个浏览器 这点比较好

k8s部署gitlab如何登录 k8s安装gitlab_git_08

http://192.168.1.205:32567/authenticate-install

k8s部署gitlab如何登录 k8s安装gitlab_git_09

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-zxHDiHZq-1598630173603)(/Users/xujiamin/Library/Application Support/typora-user-images/image-20200823195110669.png)]

k8s部署gitlab如何登录 k8s安装gitlab_配置文件_10

到gitlab的Admin Area下创建一个Applications,Callbakck URL根据安装界面提示填入,Application ID 就是对应文档里的Client ID,Scope 勾选read_user和openid,11版本以下的gitlab没有这个Scope

并且这里的gitlab必须要https

k8s部署gitlab如何登录 k8s安装gitlab_k8s部署gitlab如何登录_11

BaseURL是gitlab的https地址 我写成了dex的地址 导致跳转404

k8s部署gitlab如何登录 k8s安装gitlab_k8s部署gitlab如何登录_12

k8s部署gitlab如何登录 k8s安装gitlab_配置文件_13

更换域名一定要重新卸载安装或者修改yaml

k8s部署gitlab如何登录 k8s安装gitlab_git_14

k8s部署gitlab如何登录 k8s安装gitlab_Pod_15

点击保存之后 才可以点击安装

k8s部署gitlab如何登录 k8s安装gitlab_git_16

点击应用 应用创建完成之后 点击确认

正在安装

k8s部署gitlab如何登录 k8s安装gitlab_k8s部署gitlab如何登录_17

勾选 已确认进入下一步

k8s部署gitlab如何登录 k8s安装gitlab_Pod_18

编辑Kuboard OIDC配置 并应用

k8s部署gitlab如何登录 k8s安装gitlab_配置文件_19

需要点击应用 否则可能在第三步下面显示404

k8s部署gitlab如何登录 k8s安装gitlab_git_20

k8s部署gitlab如何登录 k8s安装gitlab_配置文件_21

k8s部署gitlab如何登录 k8s安装gitlab_git_22

find / -name kube-apiserver.yaml

# 这个适用于kubeadm安装的apiserver
# kubeadm安装的apiserver是Static Pod,它的配置文件被修改后,立即生效。

# Kubelet 会监听该文件的变化,当您修改了 /etc/kubenetes/manifest/kube-apiserver.yaml 文件之后,kubelet 将自动终止原有的 kube-apiserver-{nodename} 的 Pod,并自动创建一个使用了新配置参数的 Pod 作为替代。
# 如果您有多个 Kubernetes Master 节点,您需要在每一个 Master 节点上都修改该文件,并使各节点上的参数保持一致。
vi /etc/kubernetes/manifests/kube-apiserver.yaml

k8s部署gitlab如何登录 k8s安装gitlab_Pod_23

修改完成之后 部分服务会重启,我这边把原文件做了一个备份,导致配置一直没法生效。不知道是不是这个原因。移动了备份文件之后文件就应用了。

k8s部署gitlab如何登录 k8s安装gitlab_k8s部署gitlab如何登录_24

刷新之后 也有了

k8s部署gitlab如何登录 k8s安装gitlab_k8s部署gitlab如何登录_25

k8s部署gitlab如何登录 k8s安装gitlab_配置文件_26

k8s部署gitlab如何登录 k8s安装gitlab_Pod_27

k8s部署gitlab如何登录 k8s安装gitlab_git_28

给自己的gitlab账号授权

k8s部署gitlab如何登录 k8s安装gitlab_Pod_29

点击前往验证 会跳转gitlab登陆界面

验证通过之后 会跳转回kuboard

k8s部署gitlab如何登录 k8s安装gitlab_Pod_30

查看已经授权的namespace test

k8s部署gitlab如何登录 k8s安装gitlab_k8s部署gitlab如何登录_31

图片是边装边截取的,可能有点小问题,但是流程基本是这样。