Four Pillars of ZStack (4S)
ZStack uses Java for installation and deployment, and these files are packaged into a Java WAR file. Thus, deploying ZStack is a seamless process that is a common deployment method for Java web application. ZStack also integrates with Ansible to relieve users from the hassle of manual hardware installation and configuration. This enable users to extend the Ansible configuration files to achieve automated system maintenance and upgrade.
ZStack is the only software that claims to be able to manage hundreds of thousands of physical machines, millions of virtual machines, and tens of thousands of concurrent API calls in a single management node. For example, test data on right side is bottlenecked by DHCS software. With the software being patched, ZStack able to reduce the time it takes to create 10,000 virtual machines to just 11 minutes. ZStack’s high performance comes from three architecture designs: all-asynchronous architecture, stateless service architecture and lock-free architecture.
ZStack uses a workflow engine that encapsulates each of the tasks’ actions into a flow. If an operation fails, the workflow engine will roll back the process that has been executed and ensures that it will not be left hanging. Besides workflow, ZStack also introduce a plug-in mechanism similar to Eclipse from the very beginning of the design. All the core functions are built as a widget. Thus, it will not be modified whenever it adds and removes functions. This is to ensure that while the new features are quickly implemented, the overall system can remain stable.
Within the same portal, the tenant can create virtual machines in VMware and even Alibaba Cloud. This is on top of highly scalable platform that is possible due to out-of-process plugin. Developer can use their own favourite language, to create services. Based on the plug-in system and out-of-process services, ZStack can keep its architecture stable and loosely coupled while continuous to innovate in order to develop various application scenarios.