일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
- serving
- kubernetes operator
- Pulumi
- MLflow
- operator
- Model Serving
- Kopf
- xdp
- eBPF
- CANARY
- tekton
- keda
- Continuous Deployment
- Kubernetes 인증
- knative
- gitops
- mlops
- Kubeflow
- 오퍼레이터
- opensearch
- nginx ingress
- blue/green
- Kubernetes
- 카오스 엔지니어링
- Litmus
- CI/CD
- Argo
- argocd
- seldon core
- opentelemetry
- Today
- Total
Kubernetes 이야기
Giblab install on kubernetes 본문
GitLab은 Git 원격 저장소(Repository) 관리뿐만 아니라, 이슈 트래킹, 코드 리뷰, Wiki, CI/CD, 테스트, 모니터링 등 전체 소프트웨어 개발 라이프사이클에 필요한 기능을 제공한다.
또한, 현대적인 소프트웨어 개발 방법인 클라우드 네이티브(Cloud Native) 환경 구축에 필요한 DevOps, Container, Kubernetes, CI/CD를 위한 기능을 제공한다.
GitLab은 SaaS 형과 Self-Managed 형태로 사용 가능하다.
Saas/Cloud Gitlab.com : 서비스형으로 GitLab에서 직접 직접 운영하며 회원가입 후 유/무료로 사용 가능
Download & Install GitLab : 설치형 버전으로 별도의 리눅스서버나 AWS, K8s 환경에서 설치 및 운영 가능
운영 형태 외에 라이센스 정책에는 개인 및 커뮤니티 버전인 CE(Community Edition)와 기업 및 단체 버전인 EE(Enterprise Edition)가 있다.
설치 전 준비사항
1. Kubernetes Cluster
2. StorageClass ( 테스트 시에는 OpenEBS 사용함 )
설치
설치방법은 Helm 으로 설치를 진행한다. 다음과 같이 기본적인 설치를 진행할 수 있다.
helm repo add gitlab https://charts.gitlab.io/
helm repo update
helm upgrade --install gitlab gitlab/gitlab \
--timeout 600s \
--set global.hosts.domain=example.com \
--set global.hosts.externalIP=10.10.10.10 \
--set certmanager-issuer.email=me@example.com \
--set postgresql.image.tag=13.6.0
하지만, On-Prem 환경에서는 몇 가지 설정을 수정해 줘야 한다.
values 값을 다음과 같이 수정했다.
helm fetch gitlab/gitlab
tar xvfz gitlab-6.4.2.tgz
vi values.yaml
global:
...
edition: ce
...
hosts:
domain: 10.10.0.112.nip.io
...
ingress:
configureCertmanager: false
provider: nginx
class: nginx
enabled: true
tls:
enabled: true
...
certmanager:
installCRDs: false
...
nginx-ingress:
enabled: false
...
prometheus:
install: false
...
gitlab-runner:
install: false
이제 설치를 진행한다.
kubectl create ns gitlab
helm install gitlab -f values.yaml . -n gitlab
설치가 완료되면 아래와 같이 ingress가 생성된다.
[root@master gitlab]# k get ing -n gitlab
NAME CLASS HOSTS ADDRESS PORTS AGE
gitlab-kas nginx kas.10.10.0.112.nip.io 10.98.4.71 80, 443 45m
gitlab-minio nginx minio.10.10.0.112.nip.io 10.98.4.71 80, 443 45m
gitlab-registry nginx registry.10.10.0.112.nip.io 10.98.4.71 80, 443 45m
gitlab-webservice-default nginx gitlab.10.10.0.112.nip.io 10.98.4.71 80, 443 45m
ingress로 호출하면 다음과 같이 로그인 화면이 호출된다.
초기 패스워드는 gitlab-gitlab-initial-root-password secret에 저장된다. (계정은 root)
'Kubernetes > devops' 카테고리의 다른 글
Kubernetes에 Nexus 설치 (0) | 2023.12.29 |
---|---|
tekton과 argocd를 이용한 GitOps 구축하기 (0) | 2023.01.12 |
Backstage (0) | 2022.10.02 |
dapr (0) | 2022.09.30 |
DevSpace (0) | 2022.09.29 |