본문 바로가기

반응형

분류 전체보기

(177)
[Monitoring] Grafana Query-less (Explore Metrics, Logs, Traces, Profiles) 간단히 알아 1. 개요최근에 Grafana에서 Query-less experience(쿼리를 하지 않는 경험)을 중요시하고 있는 것으로 보인다. Query-less experience란 PromQL, LogQL, TraceQL 등을 수행하지 않고 Web UI에서 버튼만으로 사용자가 손쉽게 메트릭, 로그, 트레이스를 조회하고 손쉽게 디버깅을 할 수 있도록 하는 경험을 뜻한다. 이를 통해 Query를 잘 알지 못하는 사용자도 빠르게 관련된 메트릭을 찾아 문제를 빠르게 해결할 수 있도록 도와주는 것 같다. Grafana에서는 크게 4가지의 Query-less 경험을 제공하려고 하는 것 같다. [1] 시계열 메트릭 : Explore Metricshttps://www.youtube.com/watch?v=JbaPufQs5LY ..
[Harbor] EKS 환경에서 Harbor 고가용성(HA)으로 구성하기 1. Harbor 구성요소Harbor는 OIC와 호환되는 Cloud-native 아티팩트 레지스트리이다.이 말은 즉 Harbor는 OCI 이미지 정의를 준수하는 이미지, Helm 차트, CNAB, OPA 등을 관리할 수 있다는 것을 의미하며 이러한 종류의 Artifact를 Pulling, Pushing, Deleting, Tagging, Replicating, Scanning 등을 모두 지원한다.  [1] Redis : cache 데이터를 저장하며 jobservice를 위한 job metadata 또한 관리한다.[2] Database : Postgres를 사용하며 Harbor project, user, role, replication policy, tag retention policy, image, ch..
[Grafana Loki] 청크 중복성 제거하기 (ingester에만 chunk cache 적용) 1. 개요Grafana Loki에서는 기본적으로 RF(Replication Factor, 복제 요소)의 값을 3으로 설정할 것을 권장한다. 이는 Ingester 인스턴스의 Rolling Update 중 일부 로그의 유실을 방지하기 위해서이다. 관련 내용은 아래 글에 정리되었으니 참고하면 된다. https://nyyang.tistory.com/195 [Log] Grafana Loki 성능 최적화 방법 정리Loki 3.0에서는 Bloom Filter가 도입될 예정이라고 한다. (이미 Loki 3.0은 release 되었다. Loki를 갓 도입하는 분들는 3.x 버전으로 도입하는게 좋아보인다.) 아마 이게 도입되면 필터링 검색 시 굉장히 빨nyyang.tistory.com 이 때 별도의 설정을 하지 않는다면 ..
[MLOps] Kubernetes에서 CUDA MPS 손쉽게 활용하기 1. 개요CUDA MPS(Multi-Process Service)를 활용하여 GPU 리소스를 컨테이너간 Sharing 하여 활용하는 방법에 대해 알아본다. GPU 노드의 GPU 자원을 나눠 사용하는 방법에는 크게 3가지가 존재한다. - Time-Slicing- MIG- MPS 이 중 MIG는 비싼 GPU 노드에서만 사용 가능하니 패스하고 Time-Slicing, MPS만 필자는 알아보았다. Time Slicing은 별도의 노력 없이 Nvidia-Device-Plugin의 단순한 설정만으로 쉽게 설정 및 적용이 가능하다. 하지만 GPU Memory의 격리가 없고 지속적인 Context Switching이 발생하여 Overhead가 높다는 단점이 있다. 그렇다면 이를 해결하기 위해 MPS(Multi Proc..
[Strimzi Kafka Connect] 손쉽게 커넥터 Config에 시크릿 적용하기 아래 공식문서를 참고하여 시크릿을 적용 https://strimzi.io/blog/2021/07/22/using-kubernetes-config-provider-to-load-data-from-secrets-and-config-maps/ Using Kubernetes Configuration Provider to load data from Secrets and Config MapsUsing Kubernetes Configuration Provider to load data from Secrets and Config Maps When running Apache Kafka on Kubernetes, you will sooner or later probably need to use Config Maps or ..
[Database] Vector DB Milvus 공식 문서 정리 공식 문서를 보면서 공부한 내용을 정리합니다. 용어 정리 PChannel : Topic에 저장 VChannel : Collection의 Shard와 동일 Collection : RDB의 Table과 유사하며 Entity를 저장하고 관리하는 역할을 수행 Entity : 현실 세계에서의 객체를 나타내는 필드 그룹으로 구성된다. 각 Entity는 고유한 Primary key로 표시된다. Field : Entity를 구성하는 단위 Log Broker : Playback(재생?)을 지원하는 Pub-Sub 시스템이다. 스트리밍 데이터 지속성, 안정적인 비동기 쿼리 실행, 이벤트 알림 Log Sequence : Milvus에서 수집 상태를 변경하는 모든 작업을 기록 Log Snapshot : Vector DB 데이터..
[Log] Grafana Loki 성능 최적화 방법 정리 Loki 3.0에서는 Bloom Filter가 도입될 예정이라고 한다. (이미 Loki 3.0은 release 되었다. Loki를 갓 도입하는 분들는 3.x 버전으로 도입하는게 좋아보인다.) 아마 이게 도입되면 필터링 검색 시 굉장히 빨라질 것으로 생각한다. 하지만 현재 2.x 버전에서는 Bloom Filter란 개념이 없기 때문에 Log 사이즈가 많을 경우 검색 속도에 이슈를 겪는 분들이 상당할 것이다. 당연히 Querier OOM 이슈 또한 그렇다. 이 글은 이런 문제를 해결할 수 있도록 도움을 줄 수 있을것이다. 3.x 버전이 아닌 2.x 버전 기준으로 작성되었으니 참고하셔서 볼 것. Write1. Timestamp Oedering 아래 글에 정리해두었으니 참고할 것. https://nyyang.t..
Kubernetes GPU Operator와 Time Slicing 간단히 알아보기 EKS에서 MLOps를 할 수 있도록 공부중인데 그 과정들을 하나씩 정리해보려 한다. 그 첫 번째로 GPU Operator와 Time Slicing에 대해서 정리해본다. GPU Operator란? NVIDIA GPU Operator는 k8s 클러스터 내에서 NVIDIA 계열의 GPU 노드로 파드를 편하게 관리할 수 있도록 도와주는 툴이다. Operator 패턴이란? Operator 패턴이란 CR(Custom Resource) 파일을 우리가 k8s에게 제공하면 k8s에 파드 형태로 떠있는 Operator가 이를 지속적으로 확인하면서 Custom Resource에 정의된 spec 대로 원하는 리소스들(ex. NVIDIA Device Plugin과 관련된 파드 및 Service Account, Role, ....

반응형