IBM is partnering with Google and Lyft on developing microservice management infrastructure for applications built on top of Kubernetes. At the same time, IBM is working on extending a framework for managing clusters in a way that can be used across multiple types of, for example, Kubernetes and Hadoop clusters.
Shriram Rajagopalan, a staff member within IBM Research, says the work involving Google and Lyft is intended to significantly simplify tasks such as A/B testing, resilience testing, monitoring and policy enforcement using design principles gleaned from years of operational container experience at Google, IBM and Lyft.
A core element of this effort involves Project Gremlin, a systematic approach to resilience testing that IBM has been developing. Gremlin is designed to enable IT organizations to independently test the failure-recovery logic embedded within a microservice regardless of the programming language or business logic involved. Gremlin intercepts application programming calls being made by the microservice to insert a fake failure created using Python-based templates, which enable the IT organization to observe how that microservice responds. If the microservice hangs, then it becomes apparent that the IT organization needs to rework the failure-recovery logic embedded in the microservice. Rajagoplan says Gremlin is not a replacement for other approaches to testing microservices resiliency. Rather, IBM views it as another tool to be deployed as complement to, for example, a Chaos Monkey test.
Given IBM’s historic focus on IT management software, the work being done around Kubernetes should not come as a surprise. But IBM views Kubernetes as only one type of cluster that needs to be managed using a comprehensive software-defined framework. IBM recently unveiled a Spectrum Computing portfolio of software that makes it easier to manage multiple types of applications running on the same cluster.
Bernie Spang, vice president of Software-Defined Infrastructure for IBM, says that approach will serve as a new model for how IBM will more broadly approach the management of IT. Instead of thinking in terms of individual virtual and physical machines, IBM is developing a software-defined architecture that will make it possible for IT organizations to comprehensively manage multiple types of clusters, including Hadoop and Kubernetes, comprehensively alongside one another. Obviously, each class of cluster will have its own management framework. But as the application programming interfaces (APIs) surrounding those clusters become more open, it then becomes feasible to consider managing the entire IT environment at a higher level of abstraction, says Spang.
Obviously, the rise of containers and microservices represents a major new IT management challenge. IT organizations must find a means to manage not only lots of individual microservices when necessary, but also entire clusters as a single logical entity. At the same time, the IT management framework must be extensible enough to incorporate multiple types of container architectures and clusters as advances in these areas continue to evolve rapidly. From an enterprise IT perspective, it’s still early days as far as containers and clusters are concerned. But in terms of IT management frameworks, the writing is already on the wall concerning the continued viability of existing approaches.