클라우드와 컨테이너의 기초
선언적인 IaC(Infrastructure as Code) 도구로, 네트워크와 가상 머신 2대의 구성을 정의한 파일을 적용하여 환경을 만들었다. 그 직후에 아무것도 바꾸지 않고 같은 파일을 한 번 더 적용했을 때 일어나는 일로 적절한 것은?
- A정의와 실제 상태에 차이가 없으므로 아무것도 변경되지 않는다
- B같은 구성이 한 세트 더 만들어져 가상 머신이 4대가 된다
- C이미 환경이 있으므로 두 번째 적용은 오류로 중단된다
정답과 해설 보기
정답: A. 정의와 실제 상태에 차이가 없으므로 아무것도 변경되지 않는다
선언적인 IaC에서는 절차가 아니라 '바람직한 구성'을 코드로 쓰고, 도구가 실제 상태와 비교하여 차이만큼만 생성, 변경, 삭제합니다. 그래서 같은 정의를 몇 번 적용해도 결과는 같아지며(멱등성), 두 번째에는 변경이 일어나지 않습니다. 누군가 수작업으로 설정을 바꾸어 실제 상태가 정의에서 어긋난 경우(구성 드리프트)에는 다음 적용으로 정의의 상태로 되돌려집니다. 정의를 Git으로 관리하면 변경 이력의 확인이나 리뷰도 프로그램과 마찬가지로 수행할 수 있습니다.