본문 바로가기

mlops, devops

(23)
[kubernetes] GKE loadbalancer type service 부하분산기 관계 참고) https://cloud.google.com/kubernetes-engine/docs/concepts/network-overview?hl=ko 네트워크 개요 | Google Kubernetes Engine(GKE) | Google Cloud 이 가이드에서는 Google Kubernetes Engine(GKE)의 네트워킹을 설명합니다. cloud.google.com 참고) https://cloud.google.com/kubernetes-engine/docs/concepts/service-load-balancer?hl=ko LoadBalancer 서비스 개념 | Google Kubernetes Engine(GKE) | Google Cloud Google Kubernetes Engine(GKE) Loa..
[MLOps] Model Monitoring(2) - AI서비스에서의 Model Drift 관리 model drift란? 모델 학습 후, 모델을 서비스에서 사용할 때 시간이 지나면서 실제 데이터는 학습 시점의 데이터와 많이 달라지게 된다. 예를 들면 코로나 시기 이전에 개발한 모델로 서비스를 운영한다면, 어느 순간 코로나와 관련된 데이터가 새롭게 등장하면서 모델의 정확성이 확 떨어질 수 있다. model drift란 변화하는 환경에 의해 모델의 성능이 저하되는 것을 말한다. 따라서 모델이 오래되었는지, 데이터 품질에 문제가 있는지, 모델과 맞지 않는 input이 있는지를 측정하여 model drift를 감지 후, 모델 성능을 개선해야한다. model drift 종류/원인 concept drift 예측하려는 변수의 의미가 변경되었을 때 발생하는 성능 저하. 모델의 정답 자체가 변경되면서, 모델의 입력..
[MLOps] Model Monitoring(1) - 모델 성능, Model Drift, 데이터 품질 모델 모니터링 도구인 Arize AI 참고 https://arize.com/model-monitoring/#! Model Monitoring Learn what model monitoring is, why it’s important, how to setup and configure alerts and monitors, and how it relates to ML observability arize.com 모델 모니터링이란? - 모델에서 일어나는 이상 수치를 감지하는 것. 모델 메트릭이 임계값을 초과할 때 알림을 줌. 모델 모니터링이 중요한 이유 - 실제 운용에서 모델은 무수히 많은 문제를 맏닥뜨리지만, 절반 이상의 ML 팀은 프로덕션 중인 모델에 이상이 있을 때, 이를 확인할 수 있는 신뢰할 수 있는 지..
타사 로그 파이프라인 / 모니터링 지표 수집 시스템 베스핀 추천 https://www.bespinglobal.com/stackdriver-gcp-monitoring-20180813/ Stackdriver를 이용한 GCP의 로깅 및 모니터링 소개 - BESPINGLOBAL www.bespinglobal.com - 현재는 stackdriver에서 monitoring으로 변경됨 - https://console.cloud.google.com/monitoring/dashboards/resourceList/kubernetes?authuser=0&project=mlops-dev-344406&supportedpurview=project&timeDomain=1h&pageState=(%22integrations%22:(%22p%22:7),%22interval%22:(),%..
실행중인 docker container에 restart 옵션 추가 이미 실행된 컨테이너에 --restart=always 옵션을 추가하는 법 docker update --restart=always ${CONTAINER}
인증 오픈소스 vault vault의 핵심 컨셉 https://learn.hashicorp.com/tutorials/vault/getting-started-intro?in=vault/getting-started What is Vault | Vault - HashiCorp Learn What is HashiCorp Vault and where does it fit in your organization? learn.hashicorp.com - credentials 세트를 관리 - credentials : username, password, api tokens, TLS certificates 등 identity확인 - vault의 핵심 : 중앙에서 관리, 모든 정보를 암호화 (vault 내부 및 client 모두) - 특징 1. 저장..
fastapi context 주입 fastapi 실행 커맨드 : uvicorn main:app --host 0.0.0.0 --port 8000 현재 실행 경로의 main.py을 가지고 실행함 현재 경로의 main.py가 아닌 다른 경로의 모듈을 실행하고 싶다면 --app-dir 옵션을 사용 어느 위치에서 명령어를 입력하던 /workdir의 의존성을 주입해 /workdir/main.py를 실행하고 싶을 때 : uvicorn --app-dir /workdir main:app --host 0.0.0.0 --port 8000
service 생성 후 systemd에 등록 ex) /home/run-server.sh 스크립트를 서비스로 등록해서 재부팅 시에도 항상 서비스가 뜰 수 있게 하고자 함 1. service 파일 생성 기본 서비스 위치 : /etc/systemd/system root 권한으로 실행 sudo su cd /etc/systemd/system vi ${SERVICE_NAME} 예제 : /etc/systemd/system/example.service Requires : 필요한 타겟 After : 의존성이 있는 타겟 (이 타겟들이 실행된 후에, 서비스를 띄움) ExecStart : 등록할 스크립트 위치를 기입 (ex- /home/run-server.sh) [Unit] Description= ${서비스 설명} Requires=network.target After=..