Skip to content

Integrations overview

There are many different forms of integrations possible between MetalSoft and other systems.

The following is a sample integration setup with one client:

The integrations are done in different ways depending on the requirements. This document attempts to provide some more details on some of the integration use cases seen in practice.

Many teams drive their infrastructure via Git flows. There are two types of integrations:

  1. User-level integration. This is typically done via Terraform, where MetalSoft provides a Terraform integration.
  2. Admin-level integration. This is typically done via the CLI, where MetalSoft provides a YAML and JSON input and output format such as metalcloud-cli network-device create --config-source device-config.json. Consult CLI for more details. In this setup, the YAML or JSON file of the respective resource will be stored in git and the CLI will be invoked by the Action in the Git subsystem to update the resource. An unique label (rather than ID) is used to reference to the respetive items that need to be kept up to date via git.

A workflow extension is used to create and delete DNS records in an external DNS system such as Infoblox.

  • Power DNS - a complete end-to-end example; the DNS server itself is deployed alongside the Site Controller.
  • Infoblox Host-based records - creates a single Infoblox host record per name.
  • Infoblox A records - creates separate A, AAAA and PTR records, and can also manage zones and IPAM networks.

Infoblox is expected to already exist and to be operated separately from MetalSoft. Consult Infoblox integration for the prerequisites, the differences between the two record types and the setup steps.

Logging system integration for monitoring and alerting

Section titled “Logging system integration for monitoring and alerting”

MetalSoft automatically configures each equipment to forward logs to the SiteController’s Syslog collector which pushes all records to the Global Controller’s Kafka queue. Consult Syslog Forwarding and Alerting for more information.

MetalSoft can be configured to store all secrets in an external HashiCorp vault.

Consult Integrating with Hashicorp Vault

Integrating with an Active Directory or other LDAP compatible identity systems

Section titled “Integrating with an Active Directory or other LDAP compatible identity systems”

MetalSoft can be configured to authenticate users and retrieve roles from a LDAP compatible system.

Consult Integrating with LDAP

To integrate with a generic DCIM system, use the extension system and execute calls upon successful registration and de-registration of new equipment.

Consult Workflow Extensions for more details.

To integrate with a telemetry monitoring system, use the same workflow extension but use the OnPostDeploy tasks and execute the ansible scripts required to add a new host to the monitoring system.

Consult Workflow Extensions for more details.

Integrating with RedHat OpenShift and VMWare VCF

Section titled “Integrating with RedHat OpenShift and VMWare VCF”

MetalSoft can deploy and manage OpenShift and VCF clusters.

Validate hardware via a custom workflow. Each client builds their own ansible-based validation playbook. An example workflow that checks basic items on both HP and Dell is provided here: