Operations 11 min read

Design and Implementation of Instance Configuration Management in xManager

This article explains how xManager implements comprehensive instance configuration management for big‑data services, covering configuration groups, versioning, node‑level differentiation, database schema, installation workflow, group creation, configuration changes, version switching, and deployment scripts.

360 Tech Engineering
360 Tech Engineering
360 Tech Engineering
Design and Implementation of Instance Configuration Management in xManager

Instance configuration management in xManager provides essential functions such as configuration grouping, change tracking, distribution, and version evolution, which are core requirements for any big‑data operations platform.

The article uses the X‑SCHEDULER service as an example to detail the backend design and implementation of instance configuration management.

Key concepts include:

Configuration version: a globally incrementing version number representing a complete set of configuration files for an instance.

Configuration group: a logical subdivision of an instance’s nodes to support node‑specific configurations (e.g., different memory settings).

All configuration groups and their version histories are stored in xm_config_group, with related tables xm_service_config, xm_service_config_instance, and xm_node_component holding metadata, file templates, actual file contents, and node‑component mappings.

During initial service installation, xManager creates a default configuration group (id 1, name default) and version 1, persists configuration data, generates real configuration files, packages them into conf.tar.gz, and dispatches installation jobs to the assigned nodes.

When a new configuration group is added, xManager copies the relevant configuration files from the previous group, assigns a new version, and updates node assignments accordingly.

Configuration changes are saved as new versions in xm_config_group (e.g., version 4) while the previous version remains marked as the current one until the user explicitly switches versions via the UI.

Version switching updates the is_current_version flag, regenerates the configuration package for the selected version, and triggers distribution jobs to the nodes in the affected group.

The deployment script accepts four parameters (installation path, configuration package URL, service name, component name) and is used both for initial installation and subsequent configuration distribution.

In summary, xManager’s configuration management design leverages a set of relational tables to track groups, versions, and node mappings, enabling flexible, versioned, and node‑specific configuration deployment for big‑data services.

Original Source

Signed-in readers can open the original source through BestHub's protected redirect.

Sign in to view source
Republication Notice

This article has been distilled and summarized from source material, then republished for learning and reference. If you believe it infringes your rights, please contactadmin@besthub.devand we will review it promptly.

Big DataDeploymentConfiguration ManagementVersion ControlxManager
360 Tech Engineering
Written by

360 Tech Engineering

Official tech channel of 360, building the most professional technology aggregation platform for the brand.

0 followers
Reader feedback

How this landed with the community

Sign in to like

Rate this article

Was this worth your time?

Sign in to rate
Discussion

0 Comments

Thoughtful readers leave field notes, pushback, and hard-won operational detail here.