I created Kind cluster with following config file and was connected to private hosted gitlab.
kind: Cluster
networking:
apiServerAddress: "X.X.X.X"
# add to the apiServer certSANs the name of the docker (dind) service in order to be able to reach the cluster through it
kubeadmConfigPatchesJSON6902:
- group: kubeadm.k8s.io
version: v1beta2
kind: ClusterConfiguration
patch: |
- op: add
path: /apiServer/certSANs/-
value: docker
nodes:
- role: control-plane
kubeadmConfigPatches:
- |
kind: InitConfiguration
nodeRegistration:
kubeletExtraArgs:
node-labels: "ingress-ready=true"
extraPortMappings:
- containerPort: 80
hostPort: 80
protocol: TCP
listenAddress: "X.X.X.X"
- containerPort: 443
hostPort: 443
protocol: TCP
listenAddress: "X.X.X.X"
- role: worker
After that I successfully Integrated my cluster and installed applications including helm tiller, Ingress and gitlab runner. The first problem occurred was in the displaying of Ingress Endpoint IP which keeps on loading
Meanwhile I tried to debug it and on Inspection it was found gitlab-managed-app-ingress external Ip was remaining pending. I tried to install Ingress manually with node port and also updated the Auto-DevOps template on gitlab and forcefully changed the ingress endpoints with following line in gitlab-ci.yml.
variables:
KUBE_INGRESS_BASE_DOMAIN: X.X.X.X
After that the pipeline went successful until the deployment on staging. It fails on staging with error
Can someone suggest me a little bit on this? Correct me If I have done something wrong and stupid. Thanks in advance