The latest version of convergence – blending traditional HPC and big data computing into a ‘single’ environment – dominates much of the conversation in the HPC today, including within HPCwire. Elegant unified solutions, certainly at the very high end, are still in the making. That said, Bright Computing is in the thick of efforts to transform clusters and clouds into ‘unified’ platforms comprised of hybrid resources that support both traditional HPC and big data today.
In mid January Bright Computing released version 7.2 of its cluster and cloud management software suite. Last week Bright was awarded a 1.5 million Euros grant from the European Commission Horizon 2020 program Grant around integrating HPC-big data-OpenStack functionalities into its product suite. Sometime in Q1 2016 the company expects to announce more OEM partners, said company founder and CEO Matthijs van Leeuwen. If timing is everything, then the timing seems right for Bright Computing.
The infrastructure complexity being created by efforts to combine HPC and big data infrastructures represents a huge challenge to the HPC community and a rapidly expanding opportunity for Bright Computing. Well established in HPC and growing quickly in the enterprise, the Bright Computing platform is a resource allocation and management platform. To the extent the company’s products – Bright Cluster Manager for HPC, Bright Cluster Manager for Big Data, and Bright Open Stack – deliver as promised, the platform is an important tool for creating single use (HPC or big data) and mixed use (HPC and big data) clusters and (private) clouds, along with the ability to burst to public clouds as needed.
Bright Computing founder and CEO Matthijs van Leeuwen compared the current situation to the early days of Boewulf clusters.
“Researchers began putting clusters together themselves, ignoring traditional supercomputer vendors, and there was no commercial management software available. I think we are going to see the same situation now as we go into a new era where everyone wants to combine HPC and big data technologies. Those who are still doing a lot of this stuff in-house, with their own scripts, sys admin, and dev-ops are going to find it is too cumbersome, time-consuming, and risky. They will want to have that automated.”
Consider just a couple of the difficulties in merging the two environments. A Hadoop cluster typically has a bunch of storage on every compute node. HPC clusters may have diskless nodes with no storage whatsoever. Hadoop uses Hadoop Distributed File System; HPC systems tend to rely on GPFS (now Spectrum Scale), Lustre, or NFS – although van Leeuwen is quick to add, “it is possible with Bright software to easily set up a common files system, Lustre in particular, that will work both with the HPC and big data for Hadoop and Spark.”
The point is that combining HPC and big data in a single environment isn’t a trivial task, and that cobbled together hybrid resources are immensely challenging to manage. There are many hardware, software, and administration issues to deal with (for example, see HPCwire article, Toward a Converged Exascale-Big Data Software Stack). Moreover mixed-use environment performance typically doesn’t match pure-play HPC.
There is also a more general trend for consolidation inside the datacenter, according to van Leeuwen, “It’s a move away from datacenters with dedicated HPC clusters, dedicated Hadoop clusters, and other types of dedicated clusters or server farms. More and more HPC will move to the public cloud, but I don’t think it is going to be a dramatic shift. It’s been gradual over the years and I don’t see anything coming that would cause a dramatic shift.”
The Bright Computing platform performs provisioning, monitoring, and management down to bare metal. Job schedulers, Slurm for example, are integrated on top of Bright. Start with servers, the physical infrastructure, all running Linux. “We install Bright across that with agents running inside each [server]. I call this the foundation [layer],” said van Leeuwen.
As shown in the diagram (left), it’s possible to create and manage multiple different clusters (HPC or Hadoop) defined by Bright and implemented through the foundation layer over the physical infrastructure.
From its start Bright has focused on HPC, the natural result of van Leeuwen’s background. His Ph.D. in Stochastic Subsurface Modeling (Imperial College, UK) required HPC resources including running simulations on Cray and Fujitsu supercomputers as well as commodity HPC clusters. In recent years the company has also aggressively incorporated capabilities for handling ‘big data’ oriented infrastructure (Hadoop and Spark) and embraced OpenStack for private clouds.
“Many people don’t realize that OpenStack does not install on bare metal. You need to do a lot of preparation before you can start installing OpenStack. The Bright foundation provides all of that that. Neither does Hadoop install directly on bare metal,” said van Leeuwen. It’s true that Hadoop suppliers such as Hortonworks and Cloudera have begin introducing bare metal deployment mechanisms, he agreed, “but they only work if you have a dedicated Hadoop cluster.”
Positioned as a complete cluster resource allocation/management solution – provisioning, monitoring, security, and updating – Bright works with most job schedulers. “We actually install and configure them and take care of failover of the workload management. That’s a real critical element. We sample all the metrics from the workload management and when a customer grows and shrinks its cluster, we make sure that the workload manager knows so the sys admin will tell Bright I’m adding 10 nodes and bright will automatically in the background reallocate work,” said van Leeuwen.
Users can choose between graphical or command line UIs. van Leeuwen emphasized ease-of-use as a differentiator. The company issues product updates twice yearly, and now tried to closely track OpenStack releases to incorporate its latest features. Here are a few version 7.2 highlights:
- Bright Cluster Manager includes enhanced support for running containers on nodes using Docker. Administrators and other users can easily set up a web workload orchestration system or to run other containerized workloads with Kubernetes. Administrators can configure the system, add new users, monitor the system, and easily update it. Other updates include improved integration with Puppet to simplify fine-grained control over individual nodes, ZFS support to provide a robust alternative to BtrFS for software image revision control, and support for Intel Omni-Path.
- Bright Cluster Manager for Big Data has enhanced support for Apache Spark, as well as the latest releases from Apache, Cloudera, and Hortonworks. It now also offers built in integration for such components as Apache Accumulo, Apache Kafka, Apache Pig, and Apache Storm. New tools like Apache Drill, Apache Flink, Apache Zeppelin, and the Tachyon open source memory-centric distributed storage system are now also supported.
- Bright OpenStack has been updated to OpenStack Liberty, which offers users finer-grained management controls, performance enhancements for large deployments, and more powerful tools for managing new technologies such as containers in production environments. Deployment has been simplified by grouping OpenStack nodes into logical units using configuring overlays, streamlining the cluster manager graphic user interface (CMGUI) OpenStack deployment wizard, and adding a new basic CMGUI wizard.
“The [new] Docker and Kubernetes integration is one of those features that basically leads a whole new track on our roadmap. For some features it’s a one-off; you do it and it is done. Some features are basically keeping up with updates from third party packages etc. Then there’s new functionality that really opens a new track on the road map and container integration is definitely one of those with recurring improvements,” said van Leeuwen.
He noted that container (‘lightweight’) and virtual machine (‘heavyweight’ but more power) advocates continue jockeying for sway. It’s not an either or proposition, van Leeuwen insists. Within HPC world dominated by a knowledgeable user-focused community, containers are often sufficient. Enterprise requirements are often quite varied and require more sys admin coordination.
“[In a big company] there’s going to be a department that quickly needs a web server or five servers for SAP and containers are going to be no use to them; they are going to need virtual machines. Or somebody that quickly needs to set up an Oracle database; again containers are going to be no use, they are going to need virtual machines. Containers are more important from a user perspective, from the application perspective, but virtual machines are more important from the systems administrator’s perspective. I think in HPC the users more often need a container than a virtual machine.”
OpenStack, van Leeuwen noted, is adept at managing virtual machines, “It can stand one up, move it around, shut it down, but OpenStack doesn’t really have much control over what’s going on inside the virtual machine. It looks at them as a black box. All these virtual machines run an operating system, mostly Linux, some may run Windows or something else.”
Bright solves this challenge by deploying its agents inside VM’s operating systems, gaining full control of the environment inside the virtual machine. With the agents in place, it’s possible to then put yet another Bright foundation layer on top. This ability to layer is important on mixed-use environments, he said: “We can start building the same things, HPC on top, big data on top, other, and even again open stack, in theory you continue building on top.”