🧩 How does Mojo work?

What is Mojo?

Mojo is a platform to manage servers, storage, network devices, and rack elements via the DMTF Redfish standard. Mojo’s focus is to remove the need to use multiple proprietary tools and platforms to manage multi-OEM infrastructure. Mojo has everything needed to start managing systems lifecycle:

  • O/S and app stack provisioning w/ built in iPXE facility.
  • Firmware updates (BIOS, BMC and add-on cards).
  • Bulk BIOS settings assignments.
  • RBAC and logical resource pools for servers.
  • YAML based workflow engine to create repeatable workflows.

Mojo stands out as a DICM Platform that aims to simplify and enhance the management of diverse data center elements. Leveraging standards like Redfish, supporting multiple OEMs, offering quick installation, and providing appliance options contribute to its flexibility and usability in different data center environments.

Who can Benefit from Mojo?

  • Individuals or businesses seeking relief from the burdens of server infrastructure management, desiring to redirect their focus towards applications and customer-facing deliverables.
  • Operators aiming to enhance server deployments and decommissioning with role-based access control and policy implementation. Mojo monitors server usage, ensuring security by locking them upon deployment.
  • Operators interested in creating reusable templates for consistent server deployment, specifying firmware, BIOS settings, operating system footprints, and comprehensive stacks like OpenStack, OpenShift, OpenNebula, etc.
  • Operators in need of robust auditing trails to track provisioning or modifications of assets, providing transparency into actions performed on servers at any given time.
  • Operators committed to ensuring the safety and security of management and provisioning operations for servers, utilizing Redfish and VLANs.

Who Uses Mojo?

Mojo is currently is used by fortune 500’s, Telcos and Public Sector customers. Check out Major Leauge Baseball’s Medium article highlighting how Mojo is used to deploy Google Anthos within North American ballparks.

How Does Mojo Work?

At its core Mojo, is a platform for managing hardware through standards-based protocols. We are focused on fully supporting the DMTF Redfish standard for hardware management. Support for other standards such as vPRO are on the roadmap. Mojo works by discovering hardware on your network and then registering that hardware in Mojo.

For Discovery to happen, Mojo must be installed on your network and have access to the management controllers on the hardware you want to manage. For Registration to happen, Mojo must have credentials to access the hardware’s Redfish API. Once registered, Mojo can manage the hardware through its Redfish API.

Installation Types

There are two types of Mojo installations, Virtual Appliance and Hardware Appliance.

Virtual Appliance

A virtual software appliance that can be self-installed anywhere on your infrastructure. The virtual appliance can be installed on any hardware that supports Docker. See the installation documentation and best practices section for more details. The virtual appliance is suitable for small infrastructure deployments, for those who want to run Mojo on their own hardware or in the cloud, and for evaluation purposes.

virtual-appliance

Hardware Appliance

A fully self-contained hardware appliance that is shipped to you and installed in your data center. The hardware appliance is a fully self-contained system that is pre-configured and ready to go.

The hardware appliance is suitable for large infrastructure deployments and for those who want to run Mojo on hardware but do not want to install it themselves. It is also suitable for those who require a higher level of support as the appliance is certified for Mojo and fully supported by Metify.

hardware-appliance

The hardware appliance comes out of the box with additional features that are not available in the virtual appliance.

The hardware appliance is not available for evaluation purposes. Please contact us at support@metify.io for more information on the hardware appliance.

Architecture

Mojo is built on a microservices architecture. Each microservice is a containerized software application built to be run by an OCI compliant runtime. Depending on the installation pattern (virtual or hardware) the containers are run in different setups and with different configurations. Groups of microservices are packaged together and deployed as “Components”.

Components

The main Components that make up Mojo are:

  • Coordinator - The core Mojo experience: databases, APIs, message brokers/queues, job workers, and the Mojo Web UI.
  • TOR - “Top Of the Rack” - Supporting microservice that allow Mojo to provision servers and help separate network traffic from the Coordinator component. These include web proxies, DNS, DHCP, TFTP, Samba, firmware and OS image catalogs, and more.
  • Gateway (hardware-appliance only) - A traffic gateway for Mojo that allows you to monitor and control all traffic in and out of your Mojo infrastructure. The Gateway is a FreeBSD-based system and provides additional features on top of the TOR and Coordinator components. The Gateway is not available in the virtual appliance. Gateway features include:
    • True network separation of BMC, Management, Services, and Provisioning networks
    • QOS
    • BMC Firewall - Isolate your BMCs from the rest of your network and monitor all traffic through the BMC network
    • IPS/IDS - Intrusion detection and prevention system for your BMC network
    • Monitoring - Built-in Grafana dashboards for your Mojo-managed infrastructure and networks

Core Functionality

Mojo manages infrastructure by first Discovering hardware on your user-defined networks and then Registering the hardware in Mojo. The level of management available to each piece of hardware is dependent on the hardware itself and the features it supports. Mojo can manage any hardware that supports the Redfish standard and has abstracted common hardware management tasks into a set of features that can be applied to any hardware that supports them.

Redfish implementations vary from vendor to vendor and Mojo does its best to support as many features as possible across all vendors. The power of Mojo is that we have taken the time to understand and manage different vendor implementations of Redfish so that you don’t have to. We support common functionality across all hardware vendors through a single web interface and API. Mojo is a single pane of glass in which to view and manage your entire infrastructure.

For a server, Mojo can manage the power state, LEDs, and BIOS settings. Mojo can also manage the firmware and OS images on your servers and provision them with the OS of your choice. Deployment profiles can be applied to groups of servers to create application clusters for usage outside of Mojo. Mojo can work with the storage controllers inside of your servers to manage the RAID configuration and disks. Mojo can open a virtual console to the server directly from the Mojo Web UI.

Mojo can also work with other hardware that supports the Redfish standard such as PDUs, Switches, and Chassis. Mojo can manage the power state of a PDU, or the port configuration of a switch. Mojo can also manage the firmware and OS images on your PDUs and Switches.

We are constantly adding new features and functionality to Mojo and are always looking for feedback on what features you would like to see next. Please reach out to us at support@metify.io or visit our Discourse site to let us know what you think!

Mojo in Action

If you would like to see a quick configuration example, please watch our quick overview video:

Download and Installation

Installation is easy! Get started here