1단계: Python 기초 완성 1. 변수, 데이터 타입 이해python 샘플 1: 기본 데이터 타입과 연산def demonstrate_basic_types(): """기본 데이터 타입 이해""" 문자열 dag_name = "sales_pipeline" schedule = "@daily" 숫자 retry_count = 3 timeout_seconds = 300.5 불리언 is_active = True is_production = False None last_run_result = None print(f"DAG: {dag_name}, Schedule: {schedule}") print(f"Retr..
Airflow 학습 로드맵: 상세 다이어그램과 실습 가이드1. 기본 DAG 생성 및 실행개념 다이어그램[Airflow Scheduler] → [DAG 파싱] → [DAG Bag] → [실행 가능 Task] → [Executor] → [작업 실행] ↑ ↑ ↑ ↑[Web Server] ←──── [Metadata DB] ← [실행 상태] ← [Task 실행 결과]상세 설명DAG는 작업들의 흐름을 정의하는 Directed Acyclic Graph. 각 Task는 Operator로 구현되며, 의존성에 따라 순차적으로 실행.실습 코드```pythonfrom airflow import DAGfrom airflow.operators.p..
docker-compose up -d로 로컬 실습, 혹은 Helm으로 k8s에 배포 가능한 예제전제(Prereqs)Docker, Docker Compose (v2) 설치Kubernetes 클러스터 (minikube / kind / k3s 등)kubectl, helm 설치프로젝트 구조llmops-lab/├─ docker-compose.yml├─ fastapi/│ ├─ Dockerfile│ ├─ app/│ │ ├─ main.py│ │ ├─ metrics.py│ │ └─ requirements.txt├─ dags/│ ├─ news_pipeline.py│ ├─ train_model.py│ └─ llm_pipeline.py├─ scripts/│ └─ finetune.py├─ prometheu..
QuickBuild Configuration 생성 가이드 QuickBuild(Perforce의 CI/CD 도구)에서 여러 configuration들의 스토리지 사용률을 모니터링하고 로그로 출력하며 MySQL에 저장하는 기능을 구현하려면, 별도의 "모니터링 configuration"을 생성. 이 configuration은 Groovy 스크립트를 master step으로 사용해 QuickBuild의 내부 API를 활용하여 모든 configuration의 스토리지 디렉토리를 스캔하고, 사용량 계산. 1. Configuration 생성 단계 QuickBuild UI에서 다음을 수행하세요: - 새 Configuration 생성: QuickBuild 대시보드에서 "Create Configuration"을 클릭. ..
Kubernetes (kube-state-metrics, node-exporter 등) 기반. - 변수 설정: - `namespace`: 네임스페이스 목록을 쿼리하여 선택 (단일 선택). - `node`: 선택된 네임스페이스에 Pod가 배포된 Node 목록만 필터링하여 표시 (단일 선택). 이렇게 하면 네임스페이스 선택 시 관련 Node만 보여준다. - 패널 구성: - Node CPU/Memory Usage: 시계열 그래프로 현재 사용량(usage) 표시. - CPU/Memory Limit (Capacity): Node의 전체 용량(allocatable/limit) 표시. - CPU/Memory Request: 선택된 네임스페이스의 Pod들이 해당 Node에 요청한 총 자원(reques..
요약Grafana → Create → Import → 붙여넣기.Variable namespace에서 네임스페이스 선택.Prometheus datasource가 다르면 JSON에서 datasource 필드 바꿔.Grafana 대시보드{ "annotations": { "list": [] }, "editable": true, "gnetId": null, "graphTooltip": 0, "id": null, "links": [], "panels": [ { "datasource": "Prometheus", "fieldConfig": { "defaults": {}, "overrides": [] }, "gridPos": { "h": 8, "w": 12, "x": 0, "..
Helm으로 Loki + Grafana + Alloy(=Grafana Agent) 1) 개요(한줄)Helm으로 loki-stack(storage), grafana, grafana-agent(DaemonSet) 설치 → Grafana에 Loki/Prometheus datasource 프로비저닝 → 대시보드(네임스페이스 기반, 로그+메트릭 연계) 적용 → 알람 룰 등록.2) Helm 리포지터리 추가 & 공통 명령helm repo add grafana https://grafana.github.io/helm-chartshelm repo update3) Loki (loki-stack) 설치 권장 values (loki-values.yaml)주요 포인트: persistence, compactor, 라벨 인덱싱(네임..
Grafana Promtail 대신 Alloy(예전 이름 OTel Collector + Grafana Agent 통합판)를 권장.Alloy는 로그 + 메트릭 + 트레이스까지 한 번에 수집할 수 있는 차세대 Agent.Alloy 기본 사용법 (VM 로그 수집 예제)설치리눅스 VM에서 설치:curl -fsSL https://get.alloy.grafana.com | shsudo systemctl enable alloysudo systemctl start alloyAlloy 설정파일 (config.alloy)여기서는 systemd journal + syslog 로그를 Loki로 보냅니다.// ======================== Loki 로그 수집 예제 ========================// ..
