Porsche will shift a “very high percentage” of its sales and customer-facing applications into the cloud to reduce latency experienced by users in Australia and other “remote” locations.
Manager of cloud and integration services Thorsten Biel told PuppetConf 2017 overnight that serving everything out of its central data centre in Germany was becoming a bottleneck to affording Porsche owners digital enhancements to the operation of their vehicles.
Late model Porsches can be enhanced with apps and services from a marketplace called Porsche Connect. This includes an Apple Watch app that can be used to locate the car and to lock and unlock the doors.
“We’re moving from purely on-premise to embracing the cloud, particularly for our sales and customer-facing applications,” Biel said.
“We need to serve our customers in the regions where they live and where they drive their cars, instead of just - as we’re doing right now - serving everything from our main data centre in Germany.
“The reason for this is of course [that] the latency between Germany and more remote locations such as Australia and China is very high. Moving the application to the cloud removes the latency bottleneck.
“We’re effectively moving the application towards the customer.”
Biel said that Porsche would not try to move everything into the cloud.
“Some systems aren’t suitable, some systems are purely internal,” he said.
“But we are going to shift a very high percentage of our sales and end user apps into the cloud so our customers get the very best experience.”
A stepping stone to its cloud transition has been a complete overhaul of the way it automates the configuration and provisioning of infrastructure workloads.
That has seen the company shift from an open source Puppet implementation to the commercially-supported version of the product, Puppet Enterprise.
“We’ve been using open source Puppet for almost ten years, but we decided last year to make the shift to Puppet Enterprise mainly for the support and for the improvements in lifecycle automation,” Biel said.
The move turned out “just a bit harder than expected”, Biel said.
“This is because our Puppet code has grown over the last ten years and we’ve never really updated it to modern syntax,” he said.
“Instead of just importing this into Puppet Enterprise and cleaning up the compilers, which was the first idea, we decided to throw it all away and to start fresh.”
That had cost the company’s IT team considerable time and effort.
“I’ve had one person re-coding full time for the last 12 months - remember, we’ve got over ten years of stuff to redesign - but I think the result was really worth it,” Biel said.
“We’ve moved from the old way of describing each server in code to describing them in roles and profiles in Hiera datasets, which is more comfortable, more reliable and more agile.
“I specify a system in a Hiera file of about 25 lines and Puppet Enterprise does the rest for me.
“It’s changed the way we set up our systems and made us more efficient in the process.”
Despite being a long-time user of the open source version of Puppet, Biel indicated he was happy to offload some of the administration effort involved in its upkeep.
“Open source Puppet already helped us get the job done [in infrastructure configuration and provisioning] in a way far better than any other homemade scripts collection could have done,” he said.
“Still, when there were security issues, we had to fix them ourselves. We had to patch the packages and the gems by ourselves.
“If we had problems we had to go to mailing lists to try to solve them, or we even had to dig through the Puppet source code itself.
“With Puppet Enterprise, if we encounter a problem, we simply open up a support call with Puppet. And every few months Puppet delivers an update, which we know we can install and it will just run.”
Biel said the migration to Puppet Enterprise had been an “eye opener” - and one that would help power the changes to the way that Porsche IT sees its infrastructure.
“It has helped us shift from ‘I have to code everything’ - which is already better than ‘I have to do everything by hand’ - to ‘I describe my system by parameters, Puppet Enterprise picks up these parameters and just does the work’,” Biel said.
“This will help us to make the shift to the next level which will be cloud and containers.
“We’re just starting with that. We have a few technology proofs running to see how we can integrate cloud infrastructure, and we have some ideas on how to set up Kubernetes clusters with Puppet Enterprise.”