/
[Kubernetes] Gitlab 클러스터 연결
[Kubernetes] Gitlab 클러스터 연결
Kubernetes cluster 설정
Admin > Kubernetes > Add Kubernetes cluster > Connect existing cluster
(Group, Project 단위로 클러스터 연결도 가능)
Kubernetes cluster name : 클러스터를 제공하려는 이름ex) test-kube
Environment scope : 클러스터에 연결된 환경
API URL : GitLab이 Kubernetes API에 액세스하는 데 사용하는 URL. 보통 kube master 노드 URL 사용ex) https://14.36.48.220:6443
CA Certificate : 클러스터에 인증시 필요한 Kubernetes 인증서
kubectl config view --raw \
-o=jsonpath='{.clusters[0].cluster.certificate-authority-data}' \
| base64 --decode
Service Token : GitLab 서비스 토큰을 사용하여 Kubernetes에 대해 인증
## gitlab-admin token 생성 및 등록
$ vi gitlab-admin-service-account.yaml
-------------- yaml 내용 ---------------
apiVersion: v1
kind: ServiceAccount
metadata:
name: gitlab-admin
namespace: kube-system
---
apiVersion: rbac.authorization.k8s.io/v1beta1
kind: ClusterRoleBinding
metadata:
name: gitlab-admin
roleRef:
apiGroup: rbac.authorization.k8s.io
kind: ClusterRole
name: cluster-admin
subjects:
- kind: ServiceAccount
name: gitlab-admin
namespace: kube-system
-------------- yaml 내용 끝 --------------
$ kubectl apply -f gitlab-admin-service-account.yaml --username=admin --password=admin
$ kubectl -n kube-system describe secret $(kubectl -n kube-system get secret | grep gitlab-admin | awk '{print $1}')
출력에서 token값 복사