Configuration Management

What is config.XO?

config.XO is an extended implementation of Microsoft PowerShell Desired State Configuration (DSC) which is an essential part of the configuration, management and maintenance of Windows and Linux nodes. It allows to specify the configuration of a node using a declarative model in a simple standard way that is easy to maintain and understand.

With config.XO, infrastructure is defined as code, ensuring a consistent configuration, versionable and testable. Servers and clients managed by config.XO are continuously evaluated against their desired state. Configuration Management takes care of configuration drifts and ensures that these drifts are corrected automatically and that all configured configuration changes are applied wherever they are assigned.

We want all of our customers to achieve the complete automation of a configuration of their infrastructure components. It doesn´t matter if you are using DSC on servers or on your workstations.

Why should I use Desired State Configuration?

Configuration management at scale, whether to align machines to an organizational policy or to enable continuous deployment, can be a tedious and error-prone process. As an organization’s infrastructure footprint grows, so do its difficulties in this area, with common questions arising such as:

  • How to ensure that all hosts are matching their intended configuration and remain in the correct state?
  • How to prevent node configuration from drifting from the desired state, due to changes made by people, processes, and applications?
  • How to ensure new nodes match the configuration of existing ones in the same infrastructure role?
  • How to seamlessly set a desired configuration for all or a subset of my nodes?
  • How to orchestrate configuration changes without impacting uptime?
  • How to achieve all of the above, across on-premises nodes and those in public clouds, even on Windows and Linux?

Ensure standardized Configurations

Create standardized configurations, assign them to groups of hosts or individual hosts.

Consistent Configuration

The desired state is continuously evaluated and corrected as needed.

Customizable Code for Flexibility

Create your own configurations and apply them were needed.

Painless Migration and Management

No need for big bang migrations. Integrate the solution in a small scope of hosts side by side and move further at your own pace.

Repeatable and Immutable infrastructure

Replicate the code base and assign it to multiple infrastructures.

Testable Code

Implement code testing tools to automatically test the outcome of your configurations.

Replace manual infrastructure configuration and provisioning

The desired state configuration language is designed to be human readable, easy to understand and easy to be written and extended.

Cloud adoption

Leverage the cloud´s on-demand infrastructure with a robust and easy to use configuration management. The infrastructure automatically scales with your progress of integrating more and more hosts to the solution.

On-premises support

It doesn´t matter if you have your own data center or if you are running your workloads completely in the cloud. We support all environments that are reachable by network.

Main Advantages

  • Simplify infrastructure tasks by configuring one or more nodes automatically
  • Configure all nodes within a role identically
  • Avoid drift of configurations over time
  • Automate the deployment on demand or “en masse”, fully automated independent of the location of a node

How is this done?

Using config.XO, ensuring nodes match an intended desired state is incredibly simple. You write and import a PowerShell DSC Configuration specifying the desired state that nodes should match, upload it to config.XO and assign it to nodes and node groups. You don´t have to care about compiling the configuration. This is done automatically during the upload phase.

The next chapters describe how to work with the frontend, how to create simple configurations and how to extend the function set with your own modules and composite resources.

Supported Windows operation system versions

The following versions are supported:

  • Windows Server 2019
  • Windows Server 2016
  • Windows Server 2012R2
  • Windows Server 2012
  • Windows Server 2008 R2 SP1
  • Windows 10
  • Windows 8.1
  • Windows 7

Supported Linux operation system versions

The following Linux operating system versions are supported for DSC for Linux.

  • CentOS 5, 6, and 7 (x86/x64)
  • Debian GNU/Linux 6, 7 and 8 (x86/x64)
  • Oracle Linux 5, 6 and 7 (x86/x64)
  • Red Hat Enterprise Linux Server 5, 6 and 7 (x86/x64)
  • SUSE Linux Enterprise Server 10, 11 and 12 (x86/x64)
  • Ubuntu Server 12.04 LTS, 14.04 LTS and 16.04 LTS (x86/x64)

Infrastructure Prerequisites

There are a few things that we assume you have in place in order for DSC to work.

  • All nodes that will be used to author, push, or receive configurations are running PowerShell version 5 or later.
  • WS-Management (WS-MAN) traffic is permitted on the network. It will be enabled by default on nodes that have PowerShell version 5 installed, but you must ensure it’s not being blocked by firewalls or other network elements. See this for more information.
  • Authoring nodes that are used to write configurations have internet connectivity to download new DSC-related resources.