작성
·
68
·
수정됨
1
강의 실습 도중 발생한 문제와 해결 방법에 대해서 공유 드립니다.
ArgoCD를 통해서 2232 Application을 배포할 때
values-dev.yaml 파일을 사용하여 helm chart 앱을 생성했습니다.
강사님께서 제공해주신 git 코드(fork한 코드 repo, 하기 코드 블록)를 통해서 application 생성 했을 때,
자연스럽게 1pro/api-tester:1.0.0 이미지를 가지고 와서 pod를 생성했습니다.
2232/deploy/helm/api-tester/values-dev.yaml
image:
repository: 1pro/api-tester
pullPolicy: Always
tag: 1.0.0
이후 Image-updater를 사용하여 image의 변경사항을 감지하려고 했으나 image-updater 파드에서는 감지되지 않았고, 당연히 argo cd에서도 sync 되지 않았습니다.
해당 문제를 찾아보니 regex 식의 규칙과 기존 이미지의 이미지명 형태가 동일해야 image updater가 인지를 하는 것 같아 하기 argo application과 연결된 git 디렉토리의 코드(2232/deploy/helm/api-tester/values-dev.yaml)를 같게 변경했더니 image-updater가 정상동작하면서 auto sync도 제대로 실행되었습니다.
image:
repository: alchdliodd/api-tester
pullPolicy: Always
tag: 1.1.1-250604.171111
강의 영상에서는 이렇게 맞추지 않아도 정상적으로 동작하는 것 같았는데,
이 현상이 argo image updater의 버그인지, 아니면 원래 해당 규칙을 맞추어야 하는 것인지 문의 드립니다.
답변 2
0
안녕하세요.
해당 강의 자료실에 아래 내용을 보시면
4-5-3. ANNOTATIONS 내용 입력 후 > [SAVE] 클릭
// 도커 허브에서 이미지 대상 지정
argocd-image-updater.argoproj.io/image-list=<alias>=<Dockerhub-Username>/api-tester
// ex) argocd-image-updater.argoproj.io/image-list=1pro-api-tester=1pro/api-tester
// 업데이트 전략 선택
argocd-image-updater.argoproj.io/<alias>.update-strategy=name
// ex) argocd-image-updater.argoproj.io/1pro-api-tester.update-strategy=name
// 태그 정규식 설정 (1.1.1-231220.175735)
argocd-image-updater.argoproj.io/<alias>.allow-tags=regexp:^1.1.1-[0-9]{6}.[0-9]{6}$
// ex) argocd-image-updater.argoproj.io/1pro-api-tester.allow-tags=regexp:^1.1.1-[0-9]{6}.[0-9]{6}$
대상이 되는 이미지 및 태그를 모두 명시한 부분이 있습니다.
0
안녕하세요, 인프런 AI 인턴입니다. alchdli.odd님.
ArgoCD Image Updater를 사용하면서 발생한 이미지 자동 배포 문제에 대해 공유해주셔서 감사합니다. 말씀하신 내용은 이미지 태깅과 관련하여 ArgoCD Image Updater의 동작에 대한 의문을 제기하셨습니다. 아래는 관련된 정보와 해결책에 대한 설명입니다.
Image Url Matching: ArgoCD Image Updater는 주로 이미지의 태그 형태와 규칙(regex)을 이용해 이미지를 감지하고 업데이트합니다. 따라서, Image Updater가 사용하는 regex와 실제로 사용하는 이미지 태그의 형식이 일치해야 패턴을 감지하고 변경 사항을 업데이트할 수 있습니다.
Regex 규칙: 강의에서는 일반적으로 이미지 태그의 형식이 명세되어 있지 않으므로 설정된 regex가 여러분의 이미지 태그 형식과 맞지 않을 경우, 자동 동작에 문제가 발생할 수 있습니다. 이럴 경우, 맞춤 설정이 필요할 수 있습니다.
강의와 다른 동작: 강의 영상에서는 가능한 명시적으로 모든 단계의 환경을 설정했을 수 있으며, 일부 버전 간의 차이 또는 설정 세부 사항이 실제 실행 환경에서 다를 수 있습니다.
관련된 내용을 다룬 답변들을 아래에 소개합니다. 이들 내용을 참고하여 문제 해결에 도움을 받으실 수 있습니다:
이러한 내용을 통해 추가적인 이해를 돕게 되기를 바라며, 설정이 문제없이 작동하기를 바랍니다. 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.
제공해주신 링크 404 에러가 뜹니다. 확인 부탁 드립니다!