일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
29 | 30 | 31 |
- xdp
- keda
- Kubernetes
- blue/green
- gitops
- Kubeflow
- eBPF
- tekton
- CI/CD
- operator
- Litmus
- CANARY
- Continuous Deployment
- opensearch
- nginx ingress
- 카오스 엔지니어링
- mlops
- 오퍼레이터
- MLflow
- Pulumi
- Kopf
- serving
- argocd
- Model Serving
- seldon core
- Kubernetes 인증
- knative
- kubernetes operator
- opentelemetry
- Argo
- Today
- Total
목록CANARY (6)
Kubernetes 이야기
Canary 배포는 새 버전이 모든 사용자에게 릴리스되기 전에 초기 테스트로 일부 사용자에게 점진적으로 롤아웃하는 방법이다. 자세한 내용은 다음을 참고한다. https://kmaster.tistory.com/9 Kubernetes의 다양한 배포방식 (3) Canary 배포 Canary 배포 Canary 라는 용어는 옛날 탄광에서 나오는 유독 가스에 죽거나 다치는 일을 피하고자 광부들이 유독 가스에 민감한 카나리아를 데리고 갱도로 내려간 일에서 나온 용어로 다가온 위험 kmaster.tistory.com Nginx에서는 Canary 배포를 위한 다양한 Annotation 을 지원한다. Nginx Ingress Controller 에서 제공하는 Canary 배포 annotation 은 다음과 같다. ngin..
Argo Rollout 이란 argo rollout은 Kubernetes에 Blue/Green, Canary 등 배포를 지원하기 위한 Kubernetes controller 와 CRD의 집합체이다. argo rollout은 Ingress Controller, Service Mesh 와 통합되어 업데이트 중에 트랙픽을 새 버전으로 전환시킬 수 있다. 또한 점진적인 배포 조건을 메트릭 쿼리를 사용하여 자동화된 배포/롤백을 구축할 수 있다. 주요기능 Blue/Green 배포 Canary 배포 자동화된 롤백 및 배포 맞춤형 메트릭 쿼리를 이용한 점진적 배포 Ingress Controller 통합 : Nginx, ALB Service Mesh 통합 : Istio, Linkerd, SMI 메트릭 공급자 통합 : P..
Flagger Flagger는 Kubernetes에서 실행되는 애플리케이션의 릴리스 프로세스를 자동화하는 CD 도구이다. Flagger는 현재 CNCF Incubating 프로젝트로서 사용자 요청 결과 (성공/실패) 메트릭을 자동으로 측정하고 설정한 임계치 미만으로 안정된 트래픽이 유지되면 새 버전으로 점진적으로 이동하여 프로덕션에 적용할 수 있는 솔루션이다. Flagger는 GitOps 도구중 하니인 Flux 제품의 일부분인 프로젝트이다. Flagger 는 배포를 진행할때 Blue/Green 또는 Canary 배포를 진행함에 있어 라우팅을 담당하는 여러 공급자와 연계하여 진행하게 된다. 대표적으로 아래의 공급자와 연계 가능하다. Service mesh Istio Linkerd AWS App Mesh O..
Canary 배포 Canary 라는 용어는 옛날 탄광에서 나오는 유독 가스에 죽거나 다치는 일을 피하고자 광부들이 유독 가스에 민감한 카나리아를 데리고 갱도로 내려간 일에서 나온 용어로 다가온 위험을 먼저 알려준다는 의미로 사용된다. Canary 배포는 새 버전이 모든 사용자에게 릴리스되기 전에 초기 테스트로 일부 사용자에게 점진적으로 롤아웃하는 방법이다. 이 방법의 목적은 성능 메트릭을 수집하고 전체 배포에 대한 사용자의 영향을 예측하기 위해 소수의 사용자를 대상으로 하는 것입니다. 또한 Istio 등을 사용하면 특정 조건 ( 예를 들어, IE 사용자는 신규앱, 나머지는 기존앱, 특정 IP는 신규앱, 나머지는 기존앱 ) 으로도 사용자 요청을 분배해서 처리할 수 있다. 장점 빠른 롤백 실제 사용자 및 사..
Blue/Green 배포 RollingUpdate는 이전앱과 신규앱이 공존하는 시간이 발생한다. 또한 롤백을 시도할때도 복구 시간이 소요된다. 이번에는 Blue/Green 배포에 대해 알아보자. Blue/Green 배포는 현재 버전과 새 버전이 병렬로 실행된 다음 모든 트래픽이 새 버전으로 이동하는 방식이다. 장점 RollingUpdate와 달리 기존앱에서 새로운앱으로 바로 이전이 가능하다. 이전 앱과 새로 배포할 앱을 테스트 할 수 있다. 새로운 앱에서 문제가 발생할 때 이전 버전으로 빠르게 롤백할 수 있다. 단점 두 배의 리소스가 필요함으로 인프라 비용이 증가할 수 있다. PaaS 솔루션이나 argo 같은 도구를 사용하지 않으면 배포하기가 까다롭다. Kubernetes에서는 기본적으로 RollingU..
개발자가 만든 소스를 개발/운영 서버에 배포하는 과정을 보통 CI/CD 라고 부른다. Kubernetes에서는 보통 CI과정에 소스 빌드, TestCase 수행, Code Inspect 등을 거친 후 Container Image 생성 및 Container Registry 에 저장 (Push) 하는 과정까지 이루어진다. 그럼 CD는 어떻게 이루어지는가? CD 과정에 앞서 잠시 CD라는 용어를 인터넷에서 검사하는 Continuous Delivery, Continuous Deployment 라는 용어가 같이 보인다. 이 둘은 뭐가 차이일까? Continuous Delivery (지속적인 전달) : 개발된 최종 변경 사항을 운영기까지 푸시(전달)하기 위한 수동적인 과정을 보통 Continuous Delivery..