Vagrant

Using Vagrant to deploy an OVH public cloud server

This is the fourth in a series of posts that will walk you through using the Openstack-based OVH public cloud. In this post you will get introduced to using Vagrant to create Openstack servers using the Openstack API. This post is assumes you have already signed up for an account with ovhcloud.com, added a payment method, created a cloud project, created an Openstack user, created a ssh keypair in the Horizon UI and downloaded the openrc.

Scripted Packer build, ovftool export and Vagrant .box file creation

This is the seventh in a series of posts on using a Packer pipeline to generate Vagrant .box files. In the last post we covered using ovftool to convert Packer generated virtual machines into Vagrant .box files. I promised to show you a better way of exporting and creating the Vagrant .box files, so in this post we will be combining the following items in one script: Kicking off the Packer build of a specific template Exporting the Packer generated virtual machine Creating the necessary metadata.

Using ovftool to convert Packer generated virtual machines into Vagrant .box files

This is the sixth in a series of posts on using a Packer pipeline to generate Vagrant .box files. In the last post we covered copying our existing CentOS 6.7 template and adding the Puppet agent in order to generate a new Packer template. In this post we will be covering how to use ovftool to convert Packer generated virtual machines into Vagrant .box files. This post will be going over the manual steps on purpose, since I feel it will make more sense when we start to cover automating the steps that you can already performed by hand.

Copying our existing CentOS 6.7 template and adding the Puppet agent

This is the fifth in a series of posts on using a Packer pipeline to generate Vagrant .box files. In the last post we covered creating a Packer template for installing CentOS 6.7 with vmtools. In this post we will be basing a new Packer template on the one we created last post and add installing the Puppet Enterprise 3.8.2 agent. This is an older version of the Puppet Enterprise agent, but it will let us create a Vagrant .

Creating our first Packer template for installing CentOS 6.7 with vmtools

This is the fourth in a series of posts on using a Packer pipeline to generate Vagrant .box files. In the last two posts we covered installing a ESXi virtual machine for use with Packer and Setting up Packer, ovftool and Apache web server on a CentOS virtual machine. In this post we will be putting all this prep work to use in order to install a CentOS 6.7 image using Packer.

Creating a vCSA 5.5 .box template on CentOS 6.5 for vagrant deployment

In the last few blogs post we have created ESXi .box templates, but in order to create a complete virtual lab using vagrant we will also need a vCenter Server Appliance virtual machine. The vCSA comes as a .ova template, so we will need to convert it to a vagrant-vmware-ovf .box template before we can use it with vagrant. In this post we will need several packages installed, that we have covered in the last few posts:

Installing vagrant and the vagrant-vcenter provider on CentOS 6.5

If you followed the steps in one of the two previous posts, you have a ESXi .box template in the vagrant-vmware-ovf format. This format allows for deploying the exact same template to vCenter, vCloud Director or vCloud Air, by simply specifying a different provider in vagrant. This post will cover deploying to vCenter, since that is the most readily available of the three. In this post we will again talk about the following helpful gosddc project:

Installing Vagrant and the vagrant-vcloud plugin on CentOS 6.x

In this post I’m setting out to explain how to create a CentOS 6.4 vm, from template, in vCHS (or a vCloud Director instance) and then install vagrant-vcloud on that. 1. Create a CentOS 6.x minimal virtual machine from a template in a vCHS organization. I will demonstrate creating a new CentOS vm in vCHS using a template, but you could just as easily create a new CentOS virtual machine from scratch in vCloud Director.

Introducing the vagrant-vcloud provider

While continuing to explore what the vagrant-vsphere provider is capable of I came across the vagrant-vcloud provider, which had recently released a new version. I work for the vCHS operations group, so I figured it would be interesting to compare the feature differences of the vsphere & vcloud providers. Over the next few blog posts I intend to cover the following vagrant-vcloud provider related topics: Installing Vagant and the vagrant-vcloud plugin on a CentOS 6.

Creating a Puppet manifest and integrating it with Vagrant

This post will cover configuring Vagrant to automatically run a Puppet manifest on the vm created by “vagrant up.” This capability allows you to test your Puppet manifests, make changes and test again, all quickly and easily. Let’s get started: 1. Create the Puppet manifest & modules we will be using for our Vagrant tests. For testing purposes we will be creating a Puppet manifest that ensures NTP is installed and is configured to use the following NTP servers:

Using advanced vagrant-vsphere provider settings and vCenter guest customization

This post will pick up where we left off by demonstrating more vagrant-vsphere provider settings using the CentOS template we customized in the last blog post. Let’s get started: 1. Create a new customization specification in the vSphere web client. This customization specification will allow us to set the hostname of the vm created by “vagrant up” to the same name as the virtual machine. Go to Home | Customization Specification Manager: Click the “Create a new specification” button: Select “Linux” for the “Target VM Operating System” and name the customization specification.

Creating a CentOS 6.x template that is customized for Vagrant

This post will continue our examination of using the vagrant-vsphere plugin, by customizing a CentOS template for integration with Vagrant. Having a Vagrant customize template will allow us to deploy this template and SSH to the cloned vm using the “vagrant ssh” command, as well automatically run puppet manifests when we deploy a vm using Vagrant. Let’s get started: 1. Ensure you have a DHCP server on the network you will be connecting the Vagrant deployed templates to.

Installing Vagrant and the vagrant-vsphere plugin on CentOS 6.x

Some readers might find this post to be a little “in the weeds” and cover details they are already familiar with. I struggled in my first attempts to get Vagrant working on CentOS, because I couldn’t find any good tutorials that covered the entire process. If you get bored with basic network configuration or have another preferred method for installing Ruby, please understand I’m trying to provide as much detail as possible to those without much linux experience.

Vagrant Explained

Vagrant, according to the documentation, provides a “disposable environment and consistent workflow for developing and testing infrastructure management scripts. You can quickly test things like shell scripts, Chef cookbooks, Puppet modules, and more using local virtualization such as VirtualBox or VMware. Then, with the same configuration, you can test these scripts on remote clouds such as AWS or RackSpace with the same workflow.” I’ve been wanting to dedicate more time to working with Puppet and needed a better way to quickly test my manifests on a fresh system.