inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

대세는 쿠버네티스 (Helm편)

배포 - 실습

Helm관련 궁금증이 있습니다.

해결된 질문

308

infra

작성한 질문수 5

2

 

안녕하세요!

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 어떤식으로 사용을 해야할지, 필요성에 대해서 아직 이해를 못하였습니다.

 

 

 

긴글 읽어주셔서 감사합니다.

kubernetes

답변 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

 

감사합니다.

 

0

infra

친절한 답변 너무 감사합니다!

정답이 있다기 보다는, 유지보수가 편한쪽으로 관리하면 되겠군요.

도움이 많이 되었습니다!

오늘도 좋은하루 되세요! :)

톰캣 설치시 톰캣에 들어가지를 못함

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