Keeping an Island Nation Ahead of Geological Events with GNS Science + Puppet
GNS Science is New Zealand’s leading provider of Earth, geoscience, and isotope research and consultancy services. GeoNet is a GNS Science project funded by the New Zealand Earthquake commission to build and operate a modern geological hazard monitoring system in New Zealand. Its large network comprises geophysical instruments, automated software applications, and skilled staff. The job of this expansive project is to detect, analyze, and respond to earthquakes, volcanic activity, large landslides, tsunami and the slow deformation that precedes large earthquakes.
Benefits of Using Puppet:
Fast ROI with sped-up installations through component integration.
Scalability and orchestration without manual interventions.
Defined infrastructure with a well-defined base server profile in all nodes.
Challenge: Building Infrastructure That Can Withstand Natural Disasters Industry
Hazardous geological events in New Zealand can have an impact on people, animals, and property. But the country’s relatively sparse population makes it a challenge to deliver timely and accurate information about important events. GeoNet was designed and built to meet that challenge and remain resilient for an organization of its size.
The GeoNet IT infrastructure consisted of around 100 or so completely heterogeneous nodes — a mix of physical and virtual machines running Red Hat Enterprise Linux (RHEL), CentOS, or Scientific Linux in 5.x and 6.x, on both 32-bit and 64-bit architectures. There was also a smattering of Windows hosts for interfacing with specialized hardware. Most nodes were run in a geographically redundant pair, no with little or no staging.
Keeping such heterogeneous systems maintained and up to date presented a challenge to the GeoNet team. Most of the configuration was being done manually, resulting in some divergence between hosts. While many parts of the infrastructure were well-maintained in siloes, the team wanted to centralize configurations for simpler configuration management and sandbox testing.
Because a disaster or other natural event could interrupt service at one of GeoNet’s data centers, the team needed to plan for fast recovery, portability, scaling, moving data centers, and rebuilding machines as quickly as possible.
After rolling out test versions of several configuration management solutions on production machines, including both Puppet and Chef, the GNS team decided Puppet was the right choice to handle the scale and importance of GeoNet’s infrastructure needs.
Results: Consistency, Reliability, and Visibility
The GeoNet team got up and running with Puppet very quickly, scaling from initial installation and orchestrating complex changes that would previously have required a lot of manual intervention.
“Automation is the best documentation. Gone are the complex and out-of-date documents explaining how to create and install systems. They have been replaced by code which is used to automatically and repeatably create our critical IT systems.”
Geoff Clitheroe, GeoNet Systems Development Team Lead, GNS Science
GeoNet now has a well-defined base server profile for all nodes, services, repositories, and packages, minimizing divergence and making it possible to quickly build out infrastructure as needed. With this faster delivery, GeoNet also developed a mobile application to alert people about natural events like earthquakes.
The team moved its mobile alert system to Amazon Web Services (AWS) in 2012, saving on operating costs while gaining the ability to scale notification services quickly during a geological event. GeoNet uses Puppet Enterprise to manage its hybrid cloud infrastructure hosted by AWS and other cloud providers. “The big win here was just being able to treat AWS EC2 instances as regular old VMs, and let Puppet Enterprise do its magic,” said Richard Guest, GeoNet platform manager at GNS Science.
Alerts Within Two Minutes
Clitheroe notes the change of pace when he describes building servers by hand in March 2012 at the launch of GeoNet Rapid, a website that gives details of an earthquake’s strength and location within two minutes of its occurrence.
“It took a couple of days, tediously logging in to each server and installing and configuring the required packages,” he said. “Even with the best intentions, it’s an error-prone approach that leaves us with fragile computer systems that are very hard to maintain. In the event of a disaster, recovery would be very difficult.”
By 2014, with Puppet Enterprise and DevOps processes in place, “in a few minutes’ work, we swapped in four new servers running SeisComP3, three new web servers, and completely replaced the messaging system between them,” Clitheroe said. “This is so repeatable that later in the week we did it again on additional cloud servers to give us a complete duplicate system for testing and development.”
See for yourself how Puppet can strengthen your infrastructure through automation. Try it today or request a demo with the Puppet team.