728x90
반응형
SMALL

packer 6

Packer Part. 5 (Post Processor)

Post Processor Post Processor란 말 그대로 후처리기이다. 패커가 빌드를 한 후에 실행되는 작업들을 정의하는 부분이라고 보면 되겠다. 문서를 보면 여러 Post Processor가 있는것을 확인할 수 있다. Post-Processors | Packer | HashiCorp Developer Post-processors run after the image is built by the builder and provisioned by the provisioner(s). developer.hashicorp.com 이 중에서 자주 사용되는 몇가지를 알아보자. Checksum Packer로 빌드를 하면 보통은 산출물이 나오게 된다. 이를 Artifact라고 하는데, 이 Artifact를 가지고..

Packer Part. 4 (Data Source)

Data Source Terraform에서 알던 Data Source와 정확히 일치한다. 그래서 바로 예제 코드를 실행해보면서 어떻게 동작하는지 보자. versions.pkr.hcl packer { required_version = "~> 1.7" required_plugins { amazon = { version = "~> 1.0" source = "github.com/hashicorp/amazon" } } } sources.pkr.hcl 여기서 data 블록이 Data Source이다. Ubuntu AMI를 Data Source로 가져오는 방식을 취했다. 이 방법의 이점은 source가 많아지는데 같은 Ubuntu AMI를 사용할 때 중복 코드를 제거해줄 수 있겠다. data "amazon-ami" ..

Packer Part. 3 (Provisioner)

Provisioner Provisioner는 머신 이미지 내부에 필요한 설정이나 소프트웨어를 설치할 때 사용한다. 예를 들면 필요 패키지 설치, 사용자 생성 등 이런 머신 이미지 내 필요한 작업을 Provisioner를 통해서 할 수 있다. 그리고 이 Provisioner의 종류가 굉장히 많다. 문서를 참조하면 더 많은 정보를 알 수 있다. 그럼 직접 사용해보자. versions.pkr.hcl 각 버전 정보들을 기입한 파일이다. 특이 사항은 없다. packer { required_version = "~> 1.7" required_plugins { amazon = { version = "~> 1.0" source = "github.com/hashicorp/amazon" } } } sources.pkr.hc..

Packer Part. 2 (Builder)

Builder Packer에서 Builder는 어떤 이미지를 만들것이냐?에 대한 물음이다. 예를 들어 Amazon EBS에 대한 이미지를 만들고 싶다면 Builder는 Amazon EBS가 된다. 그래서 Builder에 대해 간략하게 알아보자. Null Builder null 빌더는 말 그대로 아무것도 만들어내지 않겠다는 의미이다. 이걸 그럼 왜쓰냐? 일반적으로 디버깅이 필요할 때 사용한다고 한다. (공식문서 참조) 우리도 이 Null builder로 각종 테스트를 해보자. versions.pkr.hcl packer { required_version = "~> 1.7" required_plugins { amazon = { version = "~> 1.0" source = "github.com/hashic..

Packer Part. 1

Packer hashicorp에서 제공하는 Packer라는 도구를 사용해보자. 우선 Packer는 멀티 플랫폼 이미지 빌드 도구이다. 예를 들면 AMI, Docker 등 여러 가상 머신위에 올리기 위해 사용되는 머신 이미지를 HCL 문법으로 만들어 낼 수 있다. 간단하게 EBS가 내재된 AMI를 만들어보는 예제를 통해 시작해보자. main.pkr.hcl packer { required_version = "~> 1.7" required_plugins { amazon = { version = "~> 1.0" source = "github.com/hashicorp/amazon" } } } source "amazon-ebs" "ubuntu" { ami_name = "cwchoiit-packer" instance..

패커(Packer), Ansible 설치 및 설정

Packer란 Packer는 이미지 빌더 도구이다. 여기서 이미지란 Docker나 AWS EC2 Image와 같은 그 이미지를 말한다. AMI 같은 경우 AWS에서 사용할 수 있지만 이 Packer는 이미지를 여러 플랫폼에서 사용할 수 있게 만들어준다. Packer 설치하기 공식 문서를 참조하면 각자의 운영체제에 맞게 설치할 수 있다. Install | Packer | HashiCorp Developer Explore Packer product documentation, tutorials, and examples. developer.hashicorp.com 나는 macOS 사용중이므로 다음 명령어를 통해 설치한다. brew tap hashicorp/tap brew install hashicorp/tap/..

728x90
반응형
LIST