운영 및 성능 최적화: 도구와 전략 – Drift Detection

ㅁ 도구와 전략

ㅇ 정의:
인프라나 시스템 설정이 코드(Infrastructure as Code)로 정의된 상태에서 실제 운영 환경이 해당 정의와 불일치하게 변하는 현상을 감지하는 기법.

ㅇ 특징:
– IaC(Terraform, Ansible 등)와 실제 리소스 상태를 주기적으로 비교
– 변경 이력 추적 및 자동 알림 기능 포함 가능
– 수동 변경, 긴급 패치 등으로 인한 환경 불일치를 조기에 발견

ㅇ 적합한 경우:
– 규제 준수 및 보안 정책 유지가 중요한 환경
– 대규모 인프라 운영으로 인적 실수 가능성이 높은 경우
– IaC 기반 DevOps 파이프라인 운영 시

ㅇ 시험 함정:
– Drift Detection은 변경을 “차단”하는 기능이 아니라 “감지”하는 기능임
– IaC 적용만으로 Drift Detection이 자동 활성화되는 것이 아님, 별도 설정 필요
– 모니터링과 혼동하는 경우 많음 (모니터링은 성능/상태, Drift Detection은 구성 불일치)

ㅇ 시험 대비 “패턴 보기” 예시:
O: “Terraform plan 명령을 통해 현재 상태와 코드 정의 간 차이를 확인할 수 있다.”
X: “Drift Detection은 변경 발생 시 자동으로 원래 상태로 롤백한다.”

ㅁ 추가 학습 내용

Drift Detection 학습 정리

1. 주요 도구별 Drift Detection 지원 여부와 방식
– Terraform Cloud: 자동 Drift Detection 기능 제공, 주기적으로 상태를 확인하고 코드와 실제 인프라 차이를 감지, 알림 기능 포함
– AWS Config: 리소스 구성을 지속적으로 모니터링하고 정의된 기준과의 차이를 감지, 규칙 기반 평가 가능

2. Drift 발생 원인 분류
– 수동 변경: 콘솔이나 CLI를 통한 직접 수정
– 자동화 스크립트 오류: 잘못된 IaC 코드나 배포 스크립트로 인한 변경
– 외부 서비스 변경: 서드파티 서비스나 관리형 서비스의 자동 업데이트, 설정 변경

3. Drift Detection 주기 설정과 알림 채널 구성
– 주기 설정: 일정 간격(예: 매일, 매주) 또는 이벤트 기반 감지
– 알림 채널: 이메일, Slack, Teams, Webhook 등을 통해 실시간 알림

4. Drift 감지 후 대응 절차
– 코드 업데이트: 실제 환경 변경 사항을 IaC 코드에 반영하여 일관성 유지
– 환경 롤백: 변경 사항을 취소하고 코드 정의 상태로 되돌림

5. IaC에서 Drift Detection과 Policy as Code 연계 활용 사례
– Sentinel, OPA(Open Policy Agent) 등과 연계하여 감지된 Drift가 정책 위반인지 자동 평가
– Drift 발생 시 정책에 따라 자동 차단, 승인 요청, 보고서 생성

6. 보안/규제 준수 측면에서 Drift Detection의 중요성
– 감사 로그 확보: 변경 발생 시점, 변경자, 변경 내용 기록
– 변경 이력 관리: 규제 준수 및 보안 감사 대응을 위한 필수 자료 제공

7. Drift Detection과 Change Management, Continuous Compliance 차이점
– Drift Detection: 현재 상태와 코드 정의 간의 불일치 탐지
– Change Management: 변경 요청, 승인, 기록 등 변경 절차 관리
– Continuous Compliance: 지속적으로 규제·정책 준수 여부를 평가하고 유지

답글 남기기

Your email address will not be published. Required fields are marked *.

*
*