Beefy Boxes and Bandwidth Generously Provided by pair Networks
Perl: the Markov chain saw

Perl success story at SAP for Cloud Management

by Boldra (Deacon)
on Sep 30, 2011 at 13:32 UTC ( #928803=perlmeditation: print w/replies, xml ) Need Help??

This year I've been working on a Perl project to link SAPs training, demo and consulting ordering systems to VMwares "Lab Manager" product for deployment of virtual machines. Although I can't share any code, I'd like to tell you a bit about the project.

The customer places an order for a landscape of machines (to be used for eg. training) and receives the configured machines inside a network fence. These landscapes need to be pre-defined, as they include not only a list of machines, but tests (to confirm a succesful delivery), the roles of the various machines, and specific post-configuration information. Most orders are received up until 5pm Friday, and the machines are built on Saturday. Special requests can also be delivered on-demand.

The project heavily uses Moose and has been considered a success story. The following project requirements were met:

  • Interface to Vmware Lab Manager scripting API (SOAP)
  • Deployment monitoring and lifetime monitoring, including alerts
  • A web application for creating orders and managing orders (delete, extend, partial refresh)
  • A web application modifying order templates
  • console programs for recovering from errors (hardly used ;) )
  • importing orders from external sources
  • configuring the virtual hardware (including modifying windows registries and starting services)
  • managment functions, such as migration of templates between the various hardware pools

Some of the key CPAN modules used were:

Many thanks to authors and contributors to the many modules we used, as well as the everyone contributing to Perl!

The administration system runs on Linux, with webservices under Apache. It's been in production since the beginning of 2011, and currently prepares thousands of virtual machines each weekend.

The following text is from the SAP corporate portal 25/6/2011 (used with permission):

SAP News > Blog Archive > Cloud Computing: Not Pie in the Sky

Although a favorite buzzword, "cloud" is a lot more than hot air. SAP is currently implementing cloud computing as the infrastructure for training courses. In a year-long project, KPS and Global IT teams collaborated to migrate most of the SAP Education training systems to a cloud infrastructure.

By Marina Titova

SAP Education offers internal and external SAP training courses for consultants, users, and developers. Up to 500 of these courses are held each week at training centers or as virtual training classes.

Whether participants attend courses in a classroom or on their PC, they must all be able to access the course content and training systems fast, efficiently, and smoothly at the scheduled time. Looking after this environment is no easy task for the Global IT Infrastructure Management team, which operates the underlying infrastructure and is responsible for maintaining the training and demo systems.

Off with the old and on with the new

Since most course content remains the same for lengthy periods and many courses are regularly held in the same form (for example, basic courses for SAP NetWeaver and SAP ERP), once a course has been prepared, it is copied and reused until it has to be revised.

Virtualization... extends beyond server operations and can be described in general terms as the abstraction of resources. Resources can include hardware, software or a logical component (such as an IP or other access address). In addition to the virtualization of computers in virtual machines (known as virtual computing), this technology has many other uses at all levels of the IT infrastructure, such as virtual networks (VLAN). An entire data center can be virtualized. Hypervisor software enables several virtual machines plus the operating system to run in parallel on a single physical server system. This means that data center operators can significantly reduce the number of physical server units required - as many as five, ten, twenty, or more small virtual machines will often fit on a large physical server.

In technical terms, a master image is created once for each course and then distributed as needed. Previously, these images were reset at the weekend so course participants could work on their own "fresh" training systems the following week.

SAP Education used to run the training systems on conventional physical servers. This practice was associated with constraints: Some training systems only ran on certain hardware configurations or required a specific setup.

The copying and refresh process at the weekend was complex, because the images could not just be copied from one server to another. As a result, short-term requests for particular training systems could not be met, although hardware capacity was available. Moreover, courses were charged by the week, regardless of whether they lasted two, three, four, or five days; there was no process for billing for flexible training periods.

Cloud computing proved to be the best solution for SAP Education's requirements, and courses were migrated to the cloud, in other words, transferred from a physical environment to a virtual one.

"The training systems had to be available at short notice and at all times," says Pero Jurisic, who managed the project for KPS Education. "We needed more flexibility and dynamic sessions, and wanted to reduce our costs and make them easier to forecast."

There was no suitable out-of-the-box solution: Data security and data protection had to be guaranteed and dependency on third-party providers avoided.

Collaborating to address challenges

In the initial phase, both of the teams involved in the project - KPS Education and Global IT Infrastructure Management - looked at whether the technical capabilities matched the processes and requirements.

One of the key issues was determining what technical capabilities would be required to handle up to 2,000 different training courses. Close communication, mutual support, and cross-team cooperation played a key role in helping the teams adapt SAP Education's requirements to the technological options and capabilities.

The project is scheduled for successful completion in the next two months. "We are still optimizing the refresh process and we also want to maximize utilization of the infrastructure," says Tilo Breining, head of the Global IT Infrastructure Service team.

Cost and time savings

The cloud solution has made SAP Education much more flexible because resources are now allocated and released dynamically. Virtual images are nearly always available as required. Claus-Henning Cappell, project lead for the infrastructure, sees this as a great advantage. "Virtualization enables us to respond flexibly to customer requirements and to design images on demand." Operations are no longer limited to specific physical servers - the whole hardware pool can be used on a variable basis.

"The requirements were wide-ranging and we collaborated very closely to meet them. The results speak for themselves." adds Pero.

  • Comment on Perl success story at SAP for Cloud Management

Replies are listed 'Best First'.
Re: Perl success story at SAP for Cloud Management
by Boldra (Deacon) on Sep 30, 2011 at 13:40 UTC
    I'm thinking about giving a lightning talk on this at the German Perl Workshop. What do you think of that idea?
Re: Perl success story at SAP for Cloud Management
by elTriberium (Friar) on Sep 30, 2011 at 20:53 UTC

    Very cool! May I ask where it happened? At the SAP HQ?

    Also, if you're allowed to share: Are there many SAP projects internally using Perl?

      We're based in Rot, which is right near the Walldorf HQ.

      There's actually quite a lot of Perl activity here, particularly in maintenance. Upgrades, patches, distributing network information and so on. Currently our team is looking for a junior Perl developer, and I think there are vacancies in other teams.

      - Boldra
Re: Perl success story at SAP for Cloud Management
by mecrazycoder (Sexton) on Oct 04, 2011 at 19:47 UTC
    Really cool one. Let me show this to my friends.Atleast know they start learning perl
    My Download manager(esp for student) in Perl. Try it and provide your valuable feedback.

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: perlmeditation [id://928803]
Approved by Corion
Front-paged by Corion
and all is quiet...

How do I use this? | Other CB clients
Other Users?
Others pondering the Monastery: (6)
As of 2018-06-20 00:56 GMT
Find Nodes?
    Voting Booth?
    Should cpanminus be part of the standard Perl release?

    Results (116 votes). Check out past polls.