Packer AMI 빌드와 테스트

  • Post author:
  • Post category:칼럼
  • Post comments:0 Comments
  • Post last modified:March 24, 2020

Packer로 AMI를 빌드하는 것까진 좋다. 처음에는 간단한 요구사항을 반영하면 그뿐이라 만족했다. 그러나 요구사항은 점점 늘어난다. 엎친데 덮쳤다고 시간이 흐르고 운영체제와 각종 패키지의 업데이트가 나온다. 이젠 하루가 멀다하고 빌드가 깨진다. AMI 빌드는 성공해도 그 AMI로 인스턴스를 띄우면 뭔가 작동하지 않는다. 하나를 고치면 다른 하나가 망가진다.

고통이 크니 서론이 길다. 그러나 해법은 어렵지 않다. 일반적인 Packer 빌드는 다음가 같이 진행된다.

이 과정을 살짝 바꾸면 문제는 간단히 해결된다. 첫번째 산출물로 나온 AMI에 대해 Acceptance testing을 수행한다. 테스트를 통과한 AMI는 배포하고 그렇지 않은 것은 삭제한다.

여기서 마지막 배포, 그러니까 AMI 복사과정에서는 amazon-ebs Builder를 활용하기 힘들 수 있다. 초기 AMI에 부팅시 소프트웨어를 설치하고 설정하는 초기화 코드가 있을 수 있다. 게다가 AMI를 복사하기 위해 굳이 EC2 인스턴스를 올린다는 건 비용과 시간의 낭비일 뿐이다. 그러므로 AMI를 복사할 때는 별도의 스크립트나 martinbaillie/packer-post-processor-ami-copy 같은 도구를 이용한다.

끝! 이런 빌드 프로세스라면 Packer 외의 다른 도구를 도입하지 않아도 된다. 인수 테스트는 몇 개의 쉘 스크립트면 대부분 충분할 것이다.

글쓴이
Kubernetes, DevSecOps, AWS, 클라우드 보안, 클라우드 비용관리, SaaS 의 활용과 내재화 등 소프트웨어 개발 전반에 도움이 필요하다면 도움을 요청하세요. 지인이라면 가볍게 도와드리겠습니다. 전문적인 도움이 필요하다면 저의 현업에 방해가 되지 않는 선에서 협의가능합니다.
트위터
  • Oct 28, 2021
    버튼 한번 눌렀을 뿐인데… 데일리호텔 때 문자발송시스템 개편하고 수백개의 문자를 받고 고객센터로 연락주신 고객님 생각나네. 너무 미안해서 바로 조치하고 비슷한 일이 벌어지지 않게 뿌리를 뽑았지. 그때… https://t.co/x8W1B3Vfkn
  • Oct 27, 2021
    “결론은 한국의 성별 소득 격차의 상당 부분이 통계적 차별이 아니라 여성 혐오에 기인한 선호기반 차별이다. 그러니 통계적 차별 논리로 선호기반차별을 정당화하는 주장은 이제 그만 두기를.” 실로 그러하다 https://t.co/7xbhnvIM68
  • Oct 27, 2021
    반대로 Google 보다 Apple인 이유는 전자는 가격을 끝없이 올리기 때문이다

Leave a Reply