불변 인프라(Immutable Infrastructure)란?
- 서버가 배포된 후에 변경되지 않는 방식으로 한 번 배포된 서버(인프라)는 설정 변경을 하지 않고 불변인 것이 원칙
- 서버의 업데이트, 수정 또는 변경이 필요한 경우 새로운 서버를 기존 이미지 기반으로 생성해 이전 서버를 대체
- 불변 인프라를 위한 전제 조건
(1) 인프라를 템플릿으로 관리할 수 있어야 함
(2) 이전 인프라와 신규 인프라의 무중단 전환이 가능해야 함 - 불변 인프라의 장점
(1) 서버 구성의 일관성과 신뢰성, 멱등성 보장
(2) 예측 가능한 배포 프로세스(테스트 서버와 운영 서버와의 차이가 거의 없기 때문)
(3) 인프라 요소와 구성 방법을 지정하는 구성파일을 서버에서 관리할 필요가 없기 때문에 구성 관리가 간편
Snowflake Server 패턴 (vs. Phoenix Server 패턴)
- Snowflake Server(Mutable)
(1) 한 번 설치한 서버를 계속해서 운영
(2) 지속적으로 서버를 업데이트하고 설정을 변경하면서 운영
(3) 휴먼 에러 등으로 수정 사항이 모든 서버에 항상 완벽히 적용할 수 있다는 보장이 없기 때문에 서버가 늘어날 수록, 시간이 지날수록 문제가 발생하는 구조 - Phoenix Server(Immutable)
(1) 한 번 생성된 서버는 수정하지 않음
(2) 수정이 필요한 경우 OS, 애플리케이션 설치, 서버 구성 등을 처음부터 반복하여 신규 서버 생성
(3) 매번 서버를 새로 생성하기 때문에 일반적으로 base image를 생성한 후 변경 사항만 따로 설정하는 방법을 사용
'DevOps' 카테고리의 다른 글
[NGINX]NGINX Ingress Controller 사용 시 도메인 경로에 www를 자동으로 추가/삭제하는 방법 (0) | 2024.12.01 |
---|---|
AS번호(AS number)란? AS번호 소유자 확인 방법 (0) | 2024.11.30 |
[AWS]AWS CLI를 이용해 현재 접속 계정(IAM User/Role) ARN 가져오기 (0) | 2023.09.25 |
PKOS 스터디 3주차: 쿠버네티스 Storage & Ingress (1) | 2023.02.05 |
PKOS 스터디 2주차: 쿠버네티스 네트워크 (0) | 2023.01.29 |