There are lots of ways to enable self-service VMs within an organisation - what some might call 'a private cloud'. However, these usually require layers and layers of complex software. What if you could leverage your existing hypervisor and 15 lines of code to do the same? And what if those 15 lines became an even simpler single click?
Ansible Core contains a module for managing virtual machines in VMware vSphere environments called vsphere_guest. Using this one module we can talk to an existing vSphere instance to create new VMs, clone VM templates, and control and delete VMs. Couple up a simple playbook with Ansible Tower and we can do some pretty amazing things with very little effort.
Here's our playbook to create a new virtual machine from a template in vSphere:
The really important bit that's doing the work is the 15 lines associated with the 'Create VM from template' task. Note the extensive use of variables in this play to give us lots of flexibility. We'll make use of this in Tower in just a moment.
Tower 2.1 introduced 'Surveys', which are a great way to create interactive forms for a given play. The form can Continue reading
Over the last few days, I’ve been experimenting with Docker, Registrator, and Consul in an effort to explore some of the challenges involved in building a robust containerized infrastructure. While I haven’t finished fully exploring the idea (and documenting what I’ve learned), I did discover one interesting—and unexpected—interaction.
Here’s a quick overview of my testing environment:
Registrator, if you’re not already familiar with it, is a service registry tool that listens to the Docker Continue reading
We are in the planning stages of our next stop in the AnsibleFest 2015 tour. We had a our biggest turnout ever at AnsibleFest London and know that our New York event will be even bigger and better!
AnsibleFest NYC is currently scheduled for late May/early June in NYC.
Details are being finalized now and tickets will go on sale soon.
If you are interested in speaking please email [email protected]
If you are interested in sponsoring please email [email protected]
I’ve written about CoreOS a fair amount (see here, here, and here), but one of the things that is both good and bad about CoreOS is the automatic update mechanism. It’s good because you know your systems will stay up to date, but it’s bad if you haven’t taken the time to properly address how automatic updates will affect your environment (for example, you’ve manually started some Docker containers instead of using systemd unit files—when the CoreOS system reboots after an update, your Docker containers will no longer be running). Re-architecting your environment to fully account for this change in architecture and behavior is a larger discussion than can be addressed in a single blog post, but in this post I want to at least tackle one small part of the discussion: separating your persistent data. In this post, I’ll show you how to mount an NFS share on a CoreOS instance deployed on OpenStack (or any cloud that leverages cloud-init).
Now, you could probably go into your CoreOS instance and manually make these changes, but that’s still thinking the old way. In addition to thinking about keeping persistent data separate, we (data center/cloud architects) also need Continue reading
Over the past couple of years, Markdown has become an important part of my computing landscape. I’ve transitioned almost all of my text-based content creation, including this blog, over to Markdown. I’d also been looking for ways that I might be able to extend my use of Markdown into creating presentations as well, but hadn’t—until recently—found a tool that fit into my workflow. Then I started using Deckset.
The idea behind Deckset is not unique; there are other projects out there that do the same sort of thing. (Remarkjs is one example that I’ve also used; more on that in a moment.) You create your presentation in Markdown, using headings, bulleted lists, numbered lists, etc. Markdown is just plain text, so you can use any plain text editing tool you like for this part. Deckset itself is OS X-specific, but the content remains platform- and application-independent (use any text editing tool on any platform you like).
Because Markdown isn’t natively suited to creating presentations, Deckset—along with all the other solutions I tried—have to add some “extensions” to Markdown. For example, in Deckset’s case:
---
) to denote the start of a new slide.As you may have picked up from some of my recent posts, I’m focused on building content and tools that will help others learn new projects, products, and technologies that I think will be very relevant in the future. One such project is Open vSwitch (OVS), which I’ve written about quite a bit (you can see all OVS-related posts here). To help others work with and learn about Open vSwitch, I’ve published a new Vagrant base box.
(In the event you’re not familiar with Vagrant, take a look at this quick introduction.)
The new Vagrant box I’ve created is running Ubuntu 14.04.1 and has Open vSwitch 2.3.1—the latest available release—pre-installed. To install this Vagrant box for use in your Vagrant environments, simply run this command:
vagrant box add slowe/ubuntu-1404-x64-ovs
Vagrant will download and install the box. (Note that this box is formatted for the “vmware_desktop” provider, which means you’ll need VMware Fusion or VMware Workstation as well as the Vagrant plugin for VMware.) Once the box is installed on your system, then you can begin using it in a Vagrantfile
by just referencing the box name. As with the other Vagrant boxes Continue reading
A colleague recently pointed me to the recent Mesosphere announcement of Mesos-DNS, a DNS-based service discovery mechanism for Apache Mesos clusters. A comment made in the announcement got me thinking, and I wanted to briefly share my thoughts.
The comment that got me thinking was this:
Mesos-DNS is simple and stateless. Unlike Consul and SkyDNS, it does not require consensus mechanisms, persistent storage, or a replicated log.
If you’ve been following along here on my site, you know that I’ve written about Consul before (see here), and I have more Consul content planned. I’m reasonably familiar with Consul’s architecture and requirements. Likewise, although I haven’t specifically written about SkyDNS, it’s based on etcd, which I have talked about (see here). The Mesos-DNS article seems to imply that Mesos-DNS is somehow less complex than either of these two solutions because it doesn’t require consensus mechanisms, persistent storage, or a replicated log.
However, in my mind that’s a misleading statement. Yes, Consul does require a consensus mechanism (it uses Raft, like etcd). SkyDNS (as I understand it, at least) simply leverages etcd, so technically SkyDNS itself doesn’t require a consensus mechanism. And the assertion that SkyDNS itself Continue reading
Ansible CEO Saïd Ziouani recently sat down for an interview with Adrian Bridgwater of ToolsAdvisor.net to talk about the past, present and future of Ansible.
Tools Advisor: Ansible Tower is an opportunity for less technical users to get involved with IT automation by virtue of its role-based access control and dashboard functionality being core extras over and above the command line version of the open source product. Just exactly how 'non-technical' a user do you think should be involved here?
Saïd Ziouani: We strongly believe that IT Automation should be a dull task; your IP competency should be your priority and the main focus for your software developers. Managing your infrastructure must be simple to a point that it's almost boring. Tower takes the simplicity model of Ansible to a new level, allowing easy push button automation at scale, and team role delegation.
Read the full interview here.
We posted our recap of AnsibleFest last week which has all of the links to the presentations, but we also wanted to provide you with a few recaps by AnsibleFest attendees.
elsaticsearch: Highlights from configuration management camp & Ansiblefest London
DevOpsGuys: #ANSIBLEFEST2015
Silpion: #ANSIBLEFEST London 2015