GitLab Kubernetes(Google Kubernetes Engine) 연동
Google OAuth2 OmniAuth Provider 구성
Google OAuth2 OmniAuth 제공자를 사용하려면 애플리케이션을 Google에 등록해야합니다.
Google OAuth 활성화
구글 측에서 :
Cloud resource manager 페이지로 이동
Create Project 선택
프로젝트 정보 제공
Project name - 프로젝트 이름 생성
Project ID - 고유 ID 생성. Google은 기본적으로 임의로 생성 된 프로젝트 ID를 제공합니다. 임의로 생성 된 ID를 사용하거나 새 ID를 선택할 수 있습니다.
OAuth consent screen 선택 하고 필요한 정보로 양식 작성
Credentials탭에서 Create credentials > OAuth client ID 선택
필요한 정보 작성
Application type - "Web Application" 선택
Name - 이름 입력
Authorized JavaScript origins - 도메인 입력( GitLab에서 실제로 사용되지는 않음)
https://ec2-3-34-48-235.ap-northeast-2.compute.amazonaws.com
Authorized redirect URIs -도메인과 콜백 URI를 각각 입력
https://ec2-3-34-48-235.ap-northeast-2.compute.amazonaws.com/users/auth/google_oauth2/callback https://ec2-3-34-48-235.ap-northeast-2.compute.amazonaws.com/-/google_api/auth/callback
Client ID와 Client secret 확인
프로젝트가 Google Kubernetes Engine 에 액세스 할 수 있게 하려면 아래 API 활성화 필요
Google Kubernetes Engine API
Cloud Resource Manager API
Cloud Billing API
활성화 하려면 :
페이지의 상단에있는 ENABLE APIS AND SERVICES 클릭
각 API 검색. API 페이지에서 ENABLE 클릭
GitLab 서버에서 :
구성 파일 수정
sudo editor /etc/gitlab/gitlab.rb
provider 구성 추가
YOUR_APP_ID
- Google Cloud platform의 Client ID로 변경YOUR_APP_SECRET
- Client secret으로 변경변경 사항 적용
GKE에서 클러스터 생성
새로운 Kubernetes 클러스터를 생성하여 프로젝트, 그룹 또는 인스턴스에 추가하려면:
다음과 같이 이동:
프로젝트 수준 클러스터 - 프로젝트 화면의 Operations > Kubernetes 페이지
그룹 수준 클러스터 - 그룹의 Kubernetes 페이지
인스턴스 레벨 클러스터 - Admin Area > Kubernetes 페이지
Add Kubernetes cluster 클릭
Create new cluster 탭에서 Google GKE 클릭
아직 Google 계정을 연결하지 않은 경우 Sign in with Google 버튼 클릭하여 연결
클러스터 설정:
Kubernetes cluster name - 클러스터에 부여하려는 이름
Environment scope - 이 클러스터와 연관된 환경
Google Cloud Platform project - GCP 콘솔에서 생성한 프로젝트 선택
Zone - 클러스터가 생성될 영역
Number of nodes - 클러스터에 원하는 노드 수
Machine type - 클러스터가 기반으로 하는 가상 머신 인스턴스의 머신 유형
Enable Cloud Run for Anthos - 이 클러스터에 Anthos 용 Cloud Run을 사용하는 옵션. 자세한 정보는 Anthos 용 Cloud Run 섹션 참조
GitLab-managed cluster - GitLab이 클러스터의 네임 스페이스와 서비스 계정을 관리하게 하는 옵션. 자세한 정보는 관리 클러스터 섹션 참조
Create Kubernetes cluster 버튼 클릭
Base Domain 입력 및 Applications 탭에서 Helm tiller, Gitlab runner 등 어플 설치