Tolga Talks Tech is a weekly summer video series in which Onica’s CTO Tolga Tarhan tackles technical topics related to AWS and cloud computing. This week Tolga talks about immutable infrastructure through Packer for VM images with Onica’s Engineering Director, Oren Maor. For more videos in this series, click here.
To build immutable infrastructure, we often need virtual machines images to deploy into the environment. What’s a favorite tool in the community to do that?
One of the favorite tools in the community is Packer. What Packer does is it creates different images across different platforms, for example, VM Ware, AWS and other tooling. It automates the launch, provisioning, and snapshot cycle for creating images in these different platforms.
How does Packer make those things easier?
It simplifies a lot of the steps. It removes a lot of complexity and allows you to do things like copy between regions, encrypting, or copying other accounts. Things we’d normally have to orchestrate ourselves Packer is able to take care of for us.
What does provisioners mean in the Packer ecosystem?
Provision is a way of installing software configuration on these images from the beginning to the end of the build cycle. There’s a number of provisioners such as Shell scripts, as well as legacy tools such as Puppet and Chef.
Those tools are normally considered heavyweight config management tools. Are they used differently in Packer?
We try to stay away from Chef and Puppet servers. Instead we’re using these scripts to build out our infrastructure as utility tools where normal scripts don’t have the complexity to build them out. So where we might use a Shell script in the provision, we might use Chef because of the more sophisticated way to express what we’re going to build out, but it’s only used in that provisioning cycle.