Open Source For You — December 2017

(Steven Felgate) #1
Let's Try Admin

http://www.OpenSourceForU.com | OPEN SOURCE FOR YOU | DECEMBER 2017 | 51

1990s Today

Scale-Out

Scale-Up

App App

App

Server Server Server

Virtualization

Server

App

ControllerStorage ControllerStorage ControllerStorage ControllerStorage ControllerStorage ControllerStorage

Storage Storage

Figure 1: Overview of virtualisation (Source: VMware.com)


Custom Apps

App
1

Packaged Apps

Pay
roll

CRM ERP

Databases

Mainframe

Baremetal
App

Figure 2: Enterprise infrastructure through the ages (Source: itxbit.com)


Figure 3: Puppet: The server configuration management tool (Source: puppet.com)

Figure 4: Automation plays a vital role in DevOps (Source: puppet.com)

Figure 5: Puppet offered on the AWS Marketplace (Source: puppet.com)

computing services they access, while sharing the investment
in the underlying IT resources among consumers. When the
computing resources are provided by another organisation
over a wide area network, cloud computing is similar to an
electric power utility. The providers benefit from economies
of scale, which in turn enables them to lower individual usage
costs and centralise infrastructure costs.”
However, setting up new virtual machines at scale presents
a new challenge when the size of the organisation increases and
the use cases balloon. It becomes nearly impossible to manage
the customisation and configuration of each individual instance,
considering that an average time of a few minutes needs to be
spent per deployment. This raises questions about the switch
to the cloud itself, considering the overheads are now similar
in terms of the time spent in the case of physical infrastructure.
This is where Puppet enters the picture. It is a server
configuration management tool that automates the deployment
and modification of virtual machines and servers with a single
configuration script that can serve to deploy thousands of
virtual machines simultaneously.

Features of Puppet
A server configuration management tool, Puppet gives you
an automated way to inspect, deliver and operate software
regardless of its deployment. It provides control and
enforces consistency while allowing for any modifications
as dictated by business needs. It uses a Ruby-like easy-
to-read language in preparing the deployment of the
infrastructure. Working with both the cloud and the data
centre, it is platform-independent, and can enforce and
propagate all the necessary changes for the infrastructure.

It also allows for the monitoring of each stage to ensure
visibility and compliance.
Puppet supports DevOps by providing automation and
enabling faster releases without sacrificing on security or
stability. It allows for security policies to be set and monitored
for regulatory compliance so that the risk of misconfigurations
and failed audits is minimised. By treating the infrastructure
as code, Puppet ensures the deployments are faster and
continuous shipping of code results in lower risk of failure.
It streamlines heterogenous technologies and unifies them
under a singular configuration management interface. Puppet
supports containers and encourages analysis of what the
container is made of, at scale. Tools are provided to monitor
any discrepancies in functionality in order to gain deeper
insight into the deployments of a product.
Free download pdf