Helm관련 궁금증이 있습니다.
안녕하세요!
Helm을 본격적으로 공부하다가 궁금한점이 있어서 글을 작성합니다.
예를들어 한 회사에서 aaaa.com, bbbb.com 라는 도메인이 있을때
--------------------------------------------
1-1.
도메인 별로 Helm 폴더를 나누는것이 맞을까요?
/mychart_1
ㄴ/aaaa
/mychart_2
ㄴ/bbbb
아니면 모노레포로
/mychart
ㄴ/bbbb
ㄴ/template
ㄴvalue.yaml
ㄴ chart.yaml
ㄴ/aaaa
ㄴ/template
ㄴvalue.yaml
ㄴ chart.yaml
이런식으로 같이 관리해도 좋을까요?
1-2.
그 외에도, prometheus, grafana, istio, argocd, harbor 등을 helm chart로 관리한다고 할때, 상단의 폴더와 함께 관리,또는 따로 관리하는것 어떤것이 좋을까요?
/mychart
ㄴ/bbbb
ㄴ/aaaa
ㄴ/prometheus
ㄴ/grafana
....
ㄴ/harbor
or
/mychart_1
ㄴ/bbbb
ㄴ/aaaa
/mychart2
ㄴ/prometheus
ㄴ/grafana
....
ㄴ/harbor
1-3.
모노레포로 한 파일에 여러 차트를 만드는것과, dependency를 줘서 자식 chart로 관리하는것은 어떤 차이가 있을까요?
사실 dependency를 어떤식으로 사용을 해야할지, 필요성에 대해서 아직 이해를 못하였습니다.
긴글 읽어주셔서 감사합니다.
답변 1
1
안녕하세요. 좋은 질문 감사합니다.
일단 해당 질문에 대해서 정석적인 대답은 없습니다^^
해당 업무와 관리 특성에 따라 각자 기준을 잡아야 하는 부분이거든요.
각각의 팀에서 도메인별로 각각의 패키지를 따로 관리한다면 같은 패키지 형태라도 도메인 별로 폴더를 나눌 수 있을꺼고, 한 팀에서 관리한다면 좀더 유지보수가 쉬운 쪽으로 패키지를 관리해야 합니다.
몇가지 케이스에 따른 패키지를 설명 드리면 아래와 같습니다.
- 두 App의 Helm Chart 구성(같은 Resource 구성 사용, 설정만 다름)일 경우
/myApp
ㄴ/template
ㄴvalues.yaml
ㄴ chart.yaml
ㄴ aaa-values.yaml (aaaa.com 도메인 설정)
ㄴ bbb-values.yaml (bbbb.com 도메인 설정)
aaa 배포시 : helm install aaa-app ./myApp -f aaa-values.yaml
bbb 배포시 : helm install bbb-app ./myApp -f bbb-values.yaml
- 두 App의 Helm Chart 구성이 다를 경우, 두 App의 구성은 같지만 각각 다른 팀에서 유지보수 할 경우
/aaa
ㄴ/template
ㄴvalues.yaml
ㄴ chart.yaml
/bbb
ㄴ/template
ㄴvalues.yaml
ㄴ chart.yaml
aaa 배포시 : helm install aaa-app ./aaa
bbb 배포시 : helm install bbb-app ./bbb
- 두 App의 구성이 상속 관계인 경우 (bbb는 ccc나 ddd에도 사용 될 수 있음), (bbb는 있어도 되고 없어도됨)
/aaa
ㄴ/charts
ㄴ/bbb
ㄴ/template
ㄴvalues.yaml
ㄴ chart.yaml
ㄴ/template
ㄴvalues.yaml (bbb를 같이 배포할지 설정)
ㄴ chart.yaml
aaa 배포시(bbb포함) : helm install aaa-app ./aaa -- set bbbEabled=true
aaa 배포시(bbb미포함) : helm install aaa-app ./aaa -- set bbbEabled=false
/ccc
ㄴ/charts
ㄴ/bbb
ㄴ/template
ㄴvalues.yaml
ㄴ chart.yaml
ㄴ/template
ㄴvalues.yaml (bbb를 같이 배포할지 설정)
ㄴ chart.yaml
- 두 App의 구성이 필수 포함 관계인 경우 (한번에 같이 배포)
/myApp
ㄴ/template
ㄴ/aaa
ㄴ/bbb
ㄴvalues.yaml (bbb를 같이 배포할지 설정)
ㄴ chart.yaml
aaa, bbb가 함께 배포 : helm install app ./myApp
1-1과 1-3번 질문은 위 케이스에서 설명됐을것 같고,
1-2번 질문도 정답이 없는 부분이고요. 개인적으로는 본 업무개발 패키지와 오픈소스 등으로 최대한 카테고리화 하는걸 좋아합니다.
/domain
ㄴ/aaa
ㄴ/bbb
/plugin
ㄴ/prometheus
ㄴ/harbor
감사합니다.
톰캣 설치시 톰캣에 들어가지를 못함
1
36
2
helm v4 release
0
95
2
helm hook과 Pod initContainer 중 선택
1
71
2
K8s 에서 Service, Pod, Container 의 Port 매핑 질문
0
173
2
프로젝트에서 Helm Chart 관리 및 작성에 대하여
1
151
1
블로그에 출처를 남기고 정리해도 될까요?
1
127
2
Helm 의 POD 자동 재기동과 관련하여
1
349
2
nindent 사용시 결과값 하이픈(-) 생성 유무의 차이
1
413
1
tomcat 배포시 pod pending 현상
1
442
1
tomcat 분석과 관련하여 다시 질문 드려봅니다.
0
431
2
TOMCAT 분석에 있는 내용 중 궁금한 게 있습니다.
1
262
1
헬름은 롤백 기능을 지원하지 않는지요?
2
266
1
mychart 생성시 configmap 을 생성하고 배포시 발생하는 에러문의
2
291
1
install 시 발생하는 에러 문의
2
402
1
내 챠트 배포
1
348
1
prometheus 차트 구성 질문
1
446
1
helm 실습 관련 질문입니다..
1
526
2
jenkins에서 helm, kubectl 사용하도록 설정?
1
483
1
조금 아쉬운점.
2
420
0
톰캣 설치 후 접속
1
414
2
$ 의미가 무엇인가요?
1
498
1
$ 스코프
1
285
1
k8s 의 모니터링은 무엇으로 하는게 좋을까요?
1
400
1
helm chart의 app 버전 정보가 실제 버전과 동일한건가요?
1
731
1





