Ops 총정리
DevOps, MLOps, DataOps, SecOps, AIOps, LLMOps
1. Ops란?
'Ops'는 'Operations'의 줄임말로 기술 및 비즈니스 운영을 최적화하고, 효율성을 높이며, 지속 가능한 가치 창출을 목표로 하는 다양한 방법론, 관행, 프로세스를 의미합니다.
'Ops'는 여러 다른 용어와 결합되어 특정 분야에서의 운영 방법론을 나타내는데, 가장 대표적인 예로 DevOps, MLOps, DataOps, SecOps, AIOps 등이 있습니다.
2. 개념 및 목표
DevOps
DevOps는 'Development(개발)'와 'Operations(운영)'의 합성어로, 소프트웨어 개발과 운영이 긴밀하게 협력하여 더 빠르고 안정적으로 제품을 배포하고 운영할 수 있도록 하는 문화, 방법론, 기술 집합을 말합니다.
이를 바탕으로 개발, 운영 간 지속적인 통합, 배포, 모니터링, 피드백을 가능하게 합니다.
MLOps
MLOps는 'Machine Learning(기계 학습)'과 DevOps의 원칙을 결합한 것으로, 기계 학습 모델의 개발부터 배포, 모니터링에 이르기까지의 전 과정을 자동화하고 최적화하여 기계 학습 시스템의 신속한 배포와 고품질 유지를 목표로 합니다.
MLOps는 데이터 과학자와 ML 엔지니어, 그리고 DevOps 전문가 간의 협업을 강조하며, 모델의 지속적인 통합, 배포, 모니터링을 지원합니다.
DataOps
DataOps는 데이터 관리를 최적화하기 위한 방법론으로, DevOps의 원칙을 데이터 분석과 엔지니어링에 적용했습니다. 데이터 품질과 데이터 액세스를 개선하여 데이터 기반 의사 결정을 빠르고 효율적으로 할 수 있도록 지원합니다.
DataOps는 데이터 파이프라인의 설계, 구축, 운영, 관리를 포함하여 데이터의 전 생애주기에 걸쳐 협업과 통합을 강조합니다.
SecOps
SecOps는 'Security(보안)'와 'Operations(운영)'의 합성어로, 보안 팀과 IT 운영 팀이 협력하여 조직의 보안 위협을 더 효과적으로 관리하고 대응하기 위한 방법론입니다.
보안 위협에 대한 신속한 탐지와 대응, 보안 위험 관리를 통합적으로 수행함으로써 조직의 보안 수준을 향상시킵니다.
AIOps
AIOps는 'Artificial Intelligence(인공지능)'와 'Operations(운영)'의 합성어로, 인공지능 기술을 활용하여 IT 운영의 자동화 및 최적화를 추구하는 방법론입니다.
해당 방법론은 대규모 IT 데이터를 분석하여 운영상의 문제를 예측, 탐지하고, 자동으로 해결하는 데 중점을 둡니다.
LLMOps
LLMOps는 'Large Language Models(대규모 언어 모델)'과 'Operations(운영)'의 합성어로, 대규모 언어 모델의 개발, 배포, 모니터링 및 유지 관리를 최적화하는 방법론 및 기술 집합을 의미합니다. LLM을 효과적으로 운영하기 위한 프로세스와 도구를 포함합니다.
LLMOps는 모델의 지속적인 학습과 개선, 성능 모니터링, 사용자의 요구에 맞춘 맞춤형 서비스 제공을 가능하게 합니다.
3. 적용 방법(LifeCycle, Workflow)
각 'Ops'는 효율적으로 목표를 달성하기 윈한 생명주기(Lifecycle)와 작업 흐름(Workflow)을 가지고 있습니다.
DevOps
DevOps는 계획(Planning), 코딩(Coding), 빌드(Build), 테스트(Testing), 릴리즈(Release), 배포(Deploy), 운영(Operation), 모니터링(Monitoring)의 단계를 포함합니다. 이 단계는 지속적인 통합(CI)과 지속적인 배포(CD)를 가능하게 하여, 개발과 운영 팀 간의 협력을 강화합니다.
MLOps
MLOps의 데이터 수집, 모델 개발, 검증, 배포, 모니터링의 단계를 포함합니다. 이 단계는 기계 학습 모델의 개발부터 배포, 운영에 이르기까지 전체적인 관리를 가능하게 하며, 모델의 지속적인 개선과 유지보수를 지원합니다.
🔗 MLOps 상세 적용 방법 설명(Google Cloud)
DataOps
DataOps는 계획(Plan), 생성(Create), 검증(Verify), 배포(Deploy)의 단계를 포함합니다. 이 단계는 데이터 파이프라인과 애플리케이션의 개발부터 운영까지 전체적인 데이터 관리와 분석을 최적화합니다.
🔗 DataOps 상세 적용 방법 설명(datateamssummit)
SecOps
SecOps는 보안 모니터링, 위협 인텔리전스, 조사 및 대응, 사고 대응, 포렌식 및 근본 원인 분석의 단계를 포함합니다. 이 단계는 조직의 보안을 강화하고 사이버 위협으로부터 보호하기 위해 설계되었습니다.
AIOps
AIOps는 데이터 수집, 이벤트 상관관계 및 분석, 경고 및 사고 대응, 자동화 및 최적화의 단계를 포함합니다. 이 단계는 IT 운영을 자동화하고 최적화하여, 시스템의 성능과 가용성을 향상시키는 데 목적이 있습니다.
LLMOps
LLMOps는 개발, 훈련, 배포, 모니터링, 유지보수의 단계를 포함합니다. 이 단계는 대규모 언어 모델(LLMs)의 개발부터 배포, 운영에 이르기까지 전체적인 관리를 가능하게 하며, 모델의 지속적인 개선과 유지보수를 지원합니다.
4. 주요 도구
DevOps
- Jenkins: 지속적인 통합(CI) 및 지속적인 배포(CD)를 위한 오픈 소스 자동화 도구
- Docker: 애플리케이션을 컨테이너화하여 개발, 배포, 실행을 간소화한 도구
- Git: 소스 코드 버전 관리를 위한 분산형 버전 관리 도구
- Ansible: 구성 관리 및 애플리케이션 배포를 자동화하는 오픈 소스 도구
MLOps
- MLflow: 머신러닝 생명주기를 관리하기 위한 오픈 소스 도구
- Kubeflow: 쿠버네티스(Kubernetes) 위에서 머신러닝 워크플로우를 구성하고 실행하기 위한 도구
- TensorFlow Extended (TFX): 머신러닝 모델을 생산 환경에 배포하기 위한 구글의 오픈 소스 도구
DataOps
- Apache Airflow: 데이터 파이프라인을 프로그래밍 방식으로 작성, 예약 및 모니터링하는 도구
- DBT (Data Build Tool): 데이터 변환 작업을 자동화하고 데이터 모델링을 간소화하는 도구
- Snowflake: 클라우드 기반 데이터 웨어하우스로 데이터 분석 및 공유 도구
SecOps
- Splunk: 데이터 실시간 분석을 통한 보안 위협 식별 및 대응 도구
- Tenable Nessus: 네트워크 취약점 식별 및 평가 도구
AIOps
- Instana: 자동화된 데이터 검색 및 모니터링, 실행 가능한 인텔리전스 도구
- Elasticsearch Platform: Observability, Security, Search 솔루션
LLMOps
- Hugging Face Transformers: 자연어 처리(NLP)를 위한 사전 훈련된 모델 및 토크나이저 제공 도구
- Databricks: LLM을 구축 및 배포 관련 프로세스 관리 도구
'IT > 기타' 카테고리의 다른 글
[HuggingFace][Gemma] RuntimeError: shape '[1, 20, 3072]' is invalid for input of size 81920 (1) | 2024.02.24 |
---|