Nebvex aims to integrate existing infrastructure technologies with each other, and to provide enterprise-grade features targeting business part of the cloud.
Nebvex consists of two components - the Nebvex Engine and the Nebvex Portal. Nebvex relies on Red Hat CloudForms orchestrator for managing on-site virtualization platforms, storages and networks together with resources hosted in public clouds. Nebvex Engine and Nebvex Portal use Red Hat CloudForms capabilities to manage infrastructure, and create a layer of cloud business logic on top of it.
Nebvex Engine is an extension for Red Hat CloudForms that implements the following capabilities:
- Provide a resource pool (virtual data center) to the end-user. Resource pool includes certain CPUs, RAM and storage capacity, an access to certain networks.
- Role-based access control with "many-to-many" relations model. Users may have access to multiple resource pools and have different access permissions. Administrator of the pool can invite new users to the pool and provide them with permissions to work with pool resources.
- Logical grouping of resource pools, information systems, and complex enterprise applications. Logical hierarchy can be created to meet role-based permissions model and to simplify process management. Information systems can consist of subsystems, with each subsystem containing multiple servers. In this case, statistics for data centers, systems, subsystems and servers is presented in hierarchical view. Systems can belong to users, departments and project teams with the ownership information presented on analytical dashboards. Users may have limited access to the data, depending on their roles within the organization.
- Enforcing enterprise processes and regulations. All actions can be performed either by a user in self-service mode, or may require approval by administrators. Necessary workflows can be executed either inside cloud management system or in existing enterprise systems, such as Service Desk.
- A number of Red Hat CloudForms extensions that are not merged upstream yet. For example, an ability to create a virtual machine from the ISO (not from the template) and CloudForms-level cache for Distributed Virtual Switch data in VMware environments, that is required to minimize response time for read operations and improve user experience.
Nebvex Portal is a web application that works in JBoss environment. Nebvex Portal provides Self-Service Portal user interface, reporting dashboards for managers and tools to deploy complex systems from templates for developers.
Nebvex Portal also provides restricted access to virtual machine remote desktop. The portal provides remote console based on HTML5 that runs in any modern web browser on any device. It does not require installation of any additional applications or plugins. The portal acts as a proxy for the user session, the user does not have access to the orchestrator, hypervisors or virtual environment management server. All connections go through Nebvex Portal.
Why Red Hat CloudForms?
We use CloudForms because:
- CloudForms is an open source solution, developed under ManageIQ project. It allows us to participate in development and contribute required features to the orchestrator. Our patches go upstream after review and approval, becoming a part of the next CloudForms releases. It guarantees the long-term stability of Nebvex - we do not fork, we do not have a separate set of patches, we just work on mainstream product. This way we can be sure that Nebvex will be compatible with new CloudForms releases.
- CloudForms architecture allows really deep customization without hacking. Cloud orchestrators usually concentrate on technical entities only, such as servers, routers and network addresses. It is still possible to build a cloud based on such platforms, but it is not the best option for real enterprise solution. Corporate systems require technical orchestrator to be aware of business matters and to be tightly integrated with existing enterprise applications. With CloudForms architecture and API we can add necessary entities and objects really simple.