inflearn logo
강의

Khóa học

Chia sẻ kiến thức

Bậc thầy Kubernetes cho DevOps

Xây dựng môi trường CD bằng Argo

ArgoCD에서 Helm Package 배포 하는것 질문드립니다..

1287

enhan

10 câu hỏi đã được viết

1

안녕하세요..

관련 자료를 찾아보았는데, 명확한 이야기가 없어서 혹시나 하고 질문을 드립니다.

Kustomize나 kubenetes yaml 파일을 commit으로 auto symc를 하는방법은 잘 나와있는데

Helm Sync하는 부분은 공식문서에도 어디에도 안보입니다.

 

그래서 Github Actions로 
Helm value의 image tag 이름만 변경시키고, 
Helm repository로 사용하고있는

Github Page의 패키지를 업데이트 하고, index.yaml을 변경하여 배포하는 형식으로 만들어 놓고.

이 Github Page를 ArgoCD의 repository연결을 한후, Application을 생성하여 Sync를 시도하니,

첫 연결시의 리소스와 Value만 고정되어있고,

이후 변경하는 Value에 대해서는 manual Sync로도  이미지 태그값이 변경되지 않습니다..

 

Github Page의 helm package와 index.yaml이 변경되어도 auto sync는 작동하지 않구요..

 

혹시 관심이 있으시다면 답변 부탁드리겠습니다..

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

argocd docker helm kubernetes

Câu trả lời 2

1

CLOUD SECURITY LAB

안녕하세요 강사 최일선입니다.

1. 매뉴얼 싱크

우선 헬름 차트 버전 업데이트 후 매뉴얼 싱크 방법 안내드립니다.

helmchart 다음 버전을 개발하고 해당 차트의 Chart.yaml에서 버전을 0.1.0에서 0.1.1로 수정하고 이미지의 버전도 1.16.0에서 1.16.1로 올렸습니다.

다시 차트를 package한 후 index.yaml 파일을 구성해서 index.yaml 파일을 업데이트 수행하시고 

argoCD로 돌아와서 해당 앱의 디테일로 들어가서 수정 버튼을 누릅니다.

 차트 버전 정보를 0.1.1로 수정하고 저장합니다.

 

그럼 싱크가 바로 진행되어 추가 rs와 애플리케이션이 배포됩니다.

파드의 디테일에서 정보를 확인하시면  1.16.1 nginx를 사용하고 있습니다.

 

2. 오토 싱크

이번엔 동일한 헬름 차트 버전으로 오토 싱크를 수행하기 위해 0.1.1 차트의 이미지를 1.16.2로 변경했습니다. 그리고 패키징을 다시 수행한 다음 index.html도 새로 만들었습니다. 변경 후 강제로 리프레시를 수행하면 out of sync 상태가 발생되며 오토 싱크가 시작됩니다. 아래 화면에서는 nginx:1.16.2 버전이 존재하지 않아서 이미지 풀링 에러가 발생하고는 있습니다만 이미지가 있었다면 정상 업데이트 되었을 것으로 예상하시면 됩니다.

 

원하시는 정보가 맞는지 모르겠네요 ㅎㅎ

확인 부탁드립니다. 감사합니다.

0

enhan

맞습니다.. 맞는데.. 조금 혼동이옵니다..ㅠ

 

1. Refresh 버튼을 눌러야 AUTO SYNC가 작동하는건가요?
Helm이외의 K8S YAML 이나 kustomize는 git push만 해도 알아서 AUTO SYNC가 되길래

HELM은 왜 안되지 싶었습니다.

그런데 REFRESH라는 버튼이 단순히 F5같은 새로고침 기능이 아니였나요?
새로고침과 다른 기능이 있는건가요?

REFRESH를 누르고 나면 AUTO SYNC가 되는것이라면... 

이건 AUTO SYNC라는 생각이 안들고 MANUAL SYNC라는 생각이 들어서요...

 

REFRESH를 하지않고 SYNC를 누르면 제자리 걸음이 됩니다. (변경사항이 반영안됌)

게다가 AUTO SYNC인데 분명...

일반 REFRESH도 아니고 HARD REFRESH를 눌른뒤 SYNC를 다시 눌러줘야 한다는게 이해가 힘듭니다 ㅠ

 

 

 

2.

HELM을 HELM PACKAGE로 HELM  REPOSITORY를 등록하지 않고,

GIT REPOSITORY로 등록하여 사용하여도 상관없을까요?

간간히 찾아보았을때 보이는것을 보면 HELM을 PACKAGE로 사용하지않고 등록하여 사용하는 경우도 있더라구요..

 

3. AppOfApps 패턴이라는게 어느정도 효용성이 있을까요..?

cilium install 오류

0

82

2

external-ip로 지정된 ip주소로 접속되지 않습니다.

0

71

1

Google cloud에서 클러스터를 만드는 중에 다음과 같은 오류가 발생합니다.

0

105

2

강의가 중간에 끊긴 느낌이 듭니다.

0

68

1

이론 강의 pdf 자료 다운로드 문의

0

139

2

vmware 로 가상서버 여러 대 띄울때 고정ip 로 각각 할당하는 법 알려주세요

0

1374

2

강의해주시는 별도의 강의 자료는 없나요 ??

0

202

1

스토리지 클래스

0

218

1

버전관리

0

178

1

강의 흐름 이상

0

256

1

4 쿠버네티스 워크로드에서부터 갑자기

0

250

1

영상이 나오지 않습니다.

1

216

1

kubeadm init 실패(+join할 때도 참고)

2

1481

0

2024년 3월 4일 기준 설치

3

1578

2

loadbalancer 문의 드립니다.

0

230

1

NodePord local 환경에서 안됨

0

404

2

kubectl apply 와 create 차이점

0

889

1

서비스 DNS 연습문제 중 마지막 요청 실패 질문있습니다 (feat. 서비스 생성 실패 해결방법)

0

306

1

master init error

0

549

2

gasbugs/http-go 이미지 에러

1

368

2

GKE 질문입니다

0

296

1

worker에서 join할 때 오류발생

0

557

2

포트포워딩 및 nfs 관련

0

593

1

sessionAffinity 작동관련 질문

0

501

2