본문 바로가기

반응형

전체 글

(148)
[Log] Grafana Loki 성능 최적화 방법 정리 Loki 3.0에서는 Bloom 자료구조가 도입될 예정이라고 한다. (이미 Loki 3.0은 release 되었다. Loki를 갓 도입하는 분들는 3.x 버전으로 도입하는게 좋아보인다.) 아마 이게 도입되면 필터링 검색 시 굉장히 빨라질 것으로 생각한다. 하지만 현재 2.x 버전에서는 Bloom이란 개념이 없기 때문에 Log 사이즈가 많을 경우 검색 속도에 이슈를 겪는 분들이 상당할 것이다. 당연히 Querier OOM 이슈 또한 그렇다. 이 글은 이런 문제를 해결할 수 있도록 도움을 줄 수 있을것이다. 3.x 버전이 아닌 2.x 버전 기준으로 작성되었으니 참고하셔서 볼 것. Write1. Timestamp Oedering 아래 글에 정리해두었으니 참고할 것. https://nyyang.tistory.c..
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, ....
[Opentelemetry Collector] RED Metric 생성과 샘플링 정책 완벽히 구성하기 1. 개요필자의 경우 Grafana Tempo를 사용하고 있다. Grafana Tempo의 경우 Metrics Generator를 통해 RED Metric을 생성할 것을 권장하고 있다. Metrics-generator | Grafana Tempo documentationOpen source Metrics-generator Metrics-generator is an optional Tempo component that derives metrics from ingested traces. If present, the distributor will write received spans to both the ingester and the metrics-generator. The metrics-generator p..
[Log] Grafana Loki 로그 Write 시 참고 사항 해당 글에서는 운영 시 참고하면 좋을 내용들만 정리합니다. 쓰기와 읽기로 나누어 각각 어떤 부분을 고려하며 Loki를 운영하면 좋은지에 대해 정리합니다. 정석적인 내용은 아니기에 참고용으로만 봐주세요. 1. 로그 쓰기 로그 쓰기 작업은 다양한 방식으로 수행할 수 있다. Log Client로부터 로그를 수집 및 정재한 뒤에 Loki로 바로 전송할 수도 있고 Kafka 같은 Queue를 두어 전송할 수도 있다. Grafana Loki에서는 Promtail, Grafana Agent를 위주로 설명하고 있지만 필수는 아니며 fluentBit, Logstash, fluentD, Vector 등 다양한 Log Client는 물론 AWS Lambda와 같은 Serverless에서 loki HTTP 요청을 통해서도 로..
[Ansible] 사용자 계정 생성 및 apache http 설치 실습 가시다님 주관 A101 스터디에 대한 정리 - 3주차 입니다. 1, 2 주차에는 Ansible 개념에 대해 전반적으로 알아보았습니다. 이번 주차에는 간단한 실습을 진행해봅니다. 추가로 valut 암호화 시 aws secrets manager를 활용해보겠습니다. 실습 환경에 대한 설명은 따로 하지 않음 1. 사용자 계정 생성 실습 원격 서버에 사용자 계정을 Playbook, 암호화를 활용하여 생성해보자. # 아이디어 - ansible.builtin.user 모듈을 사용하면 될 것 같다. - ansible은 ansible-vault를 통해 암호화를 수행할 수 있다. >> playbook 안에 username, password를 직접 넣어 만들수도 있지만 이는 보안에 취약하다. >> 따라서 별도 file에 u..
[Opentelemetry] spanmetrics connector에 대해 알아보기 Span Metrics Connector는 span data로부터 RED(Request, Error, Duration) 메트릭을 만들어낸다. 생성되는 메트릭들은 다음의 dimension들을 최소한 가지게 된다. - service.name - span.name - span.kind - status.code 1. 설정값 histogram : Span duration 측정기준으로부터 record를 계산하기 위한 히스토그램 (explicit, exponential) dimensions : service.name, span.name, span.kind, status.code 외에 생성되는 메트릭들의 label로 등록하고 싶은 리스트 예를 들어 시계열 메트릭의 Label로 IP , Region 등을 추가하고 싶다면..
[Ansible] 반복문, 조건문, 핸들러, 블록, Recsue 등 개념 정리 가시다님 주관 A101 스터디에 대한 정리 - 2주차 입니다. 이번 주차에는 반복문, 조건문, 핸들러 개념에 대해 정리합니다. # 반복문 Ansible은 loop, with_, until 키워드를 통해 반복문을 사용할 수 있도록 제공한다. ( with_ 구문은 Ansible 2.5 버전부터 권장되지 않으며 loop을 사용할 것을 권장함 ) 예를 들어 여러개의 file을 만든다던지 여러 user를 생성한다던지 등이 그 예이다. https://docs.ansible.com/ansible/latest/playbook_guide/playbooks_loops.html Loops — Ansible Documentation As of Ansible 2.8, you can get extended loop informa..
[Ansible] 기본 개념 정리 가시다님 주관 A101 스터디에 대한 정리 - 1주차 입니다. 이번 주차에는 Ansible 기본 개념에 대해 정리합니다. Ansible이란? Ansible은 Python module 및 ssh를 사용하여 원격 호스트에 명령을 수행할 수 있도록 도와주는 CM(Configuration Management) 도구이다. 별도의 Agent를 설치하지 않아도 되며 단순히 SSH 접속이 가능하면 편리하게 사용할 수 있다. (내부적으로 Python을 사용하게 되는데 대부분의 Linux에는 Python이 기본적으로 설치되어 있다.) 필자는 Ansible을 사용할 때 일반적으로 다음의 과정들을 거친다. [1] ansible.cfg 파일 작성 및 확인 [2] inventory 파일 생성, 그룹 변수 생성, 호스트 변수 생성..

반응형