SpaceX revolutionized spacecraft architecture with the launch of its Falcon Heavy rocket on 6th February for the number of engines its triple-core booster used to reach orbit. Each of the craft’s three cores had nine Merlin rocket engines - 27 engines in total – eclipsing the previous orbit-reaching record of nine by some distance.
Elon Musk draws a very interesting analogy about this: "It’s sort of like the way modern computer systems are set up," Musk said. "With Google or Amazon they have large numbers of small computers, such that if one of the computers goes down it doesn’t really affect your use of Google or Amazon. That’s different from the old model of the mainframe approach, when you have one big mainframe and if it goes down, the whole system goes down."
Musk is spot on with this analogy.
Google and Amazon have demonstrated over recent years that they can build datacenters composed of millions of x86 machines delivering enormous aggregate computing power. As pointed out by Musk, the most interesting feature of these architectures is their incredible resiliency: their “divide and conquer” approach enables business to continue as normal, even in the event of significant server failure. in fact, it is business as usual to lose and replace a fraction of these environments every day, especially when the applications running on them are able to handle hardware failures by design.
Some call these x86 servers “commodity machines”, which is misleading. The last generation of Xeon Scalable, delivered 6 months ago, has an impressive performance track record: 100’000 AES encryptions per second and world records in performance benchmarks like the SAP benchmark, SpecInt, SpecFP, SpecJBB, and others. Next generation of Xeon will of course be expected to eclipse these.
The vision of these machines as commodities is derived from their sheer number, not their intrinsic capabilities: Intel provides Xeon processors for over 10 million servers sold each year. Such volumes (and the processors’ very affordable price) can make them appear as commodities when compared to tens of thousands of expensive RISC servers or thousands of even more expensive mainframe equivalents. It’s a misconception from the standpoint of raw computing power.
The architectures run at web scale by the likes of Google, Amazon, Facebook and Apple have led to a big trend in the corporate datacenter called the “datacenter OS”. In this arrangement, the concept of an operating system, managing the allocation of resources (CPU, memory, storage, etc.) to various requesting applications, is abstracted to an upper layer. With the datacenter OS, all the resources of the datacenter are managed in a coordinated manner to reach optimal local efficiency and thus optimal global efficiency.
So, more and more corporations are unifying their computing resources as an integrated cluster of x86 machines. Their aim is to break historical silos and run their entire portfolio of applications on a single cluster.
This leads to interesting challenges (security, confidentiality, etc.) when, for instance, large financial institutions wish to run mundane PHP web applications in Docker containers, on the same server as a containerized (and mission-critical) core banking application processing huge monetary amounts. However, many large players in the financial industry are tackling such challenges, and reaping significant rewards.
Because yes, all this can only happen in a world of software containers: large monolithic workloads are difficult to dispatch efficiently on many servers simultaneously. This new world requires very granular workloads whose end-user service is delivered by collaborating containers. When this architecture is in place, the datacenter OS can operate: it will likely be based on a global orchestrator like Kubernetes (in its plain vanilla flavour or delivered in a more holistic CaaS platforms like Red Hat OpenShift), intrinsically able to manage the efficient dispatching of many multiple containers on just as many servers.
The trend is clear: the hardware infrastructure and software to manage it are in place. The big challenge remains for incumbent corporations: they must “break their monoliths” if they want to reach this nirvana of optimal efficiency at infrastructure level, and maximum agility at business level.
The challenge is clear: these monoliths, often representing tens of thousands of years in development time, can’t just be thrown away and fully rewritten to follow the latest trends. An incremental approach is required to further leverage the intellectual property engraved in their applications and protect the significant financial investments they represent.
That’s the reason we propose an evolutionary path to modernising organizations’ monolithic mainframe environments: we offer them a way to restructure their existing legacy workloads into a myriad of microservices powered by the LzLabs Software-Defined Mainframe®. We provide the various technology building blocks to achieve this transformation in an automated fashion.
The final question goes to Elon Musk: does SpaceX use such a unified computing cluster to design the rockets and operate their flights?