Are you planning a cloud migration back to bare metal servers in racks at a data centre?  Below are some considerations to make plus an open discussion from a global SaaS provider about leaving the cloud, then deciding to stay with cloud.  Your choices are to stay with cloud, go with bare metal or go with managed servers at a private cloud provider.  The third option’s viability is variable – they may be your network provider already and the cost/service benefits could have a multiplier effect or they may be your voice provider and bundling services works out better.

Here at Product Platformers

We run on cloud.  When it came for us to begin planning a cloud migration it was easy.  Majority AWS but also other smaller private providers for some workloads and monitoring systems.  Our engineering team has experience in provisioning servers and running a real-time voice over IP network.  We do not run a corporate LAN, so our Microsoft dependency is nil.

A recent open discussion from a Cloud SaaS provider

One of the integration partnerships we are working towards is building an app/workflow that hooks into gitlab.  They are a worldwide cloud service for managing code repositories (where developers keep their versioned work).  Recently they openly discussed a proposal to move off cloud and onto bare metal servers.

Some months later, they decided to stay on cloud.  They’re technology stack isn’t what I would build, but it’s not my particular area of expertise.SaaS Provider Gitlab planning a cloud migration

Initial considerations for planning a cloud migration

  • Your team needs to build a cluster of servers and a network then maintain them.
  • Can your organisation maintain a healthy relationship with hardware and network suppliers?
  • Can your staff, hardware and network suppliers respond 24/7/365 in case of disaster?
  • Is there enough skill in your team for key members to take holidays?
  • If key members were to leave would it risk your business or customers?
  • Is the software you are using a resource hog and there are better alternatives?
  • Is the migration path painful?
  • Will hardware and network redundancy be built into the solution?

Considerations for the longevity of your services

  • Hardware runs out of warranty, performance degrades and it needs replacing
  • Rack space contracts run out, need renewal, prices change.
  • Network contracts need to be maintained.
  • Bandwidth utilisation considerations.
  • Keeping servers cool and patched with security updates.

Software architecture for cloud

In the case of gitlab, they run a distributed file system called Ceph.  It is complicated and has it’s own set of problems.  Problems that have been addressed by other distributed filesystem solutions.  This is a software architectural problem.  The gitlab software is built on Ruby on Rails – a bonafide resource hog!  This is another software architectural problem, though this is not easily fixed because this is the product they offer the market.