Difference between revisions of "Architecture"
From Tranzman Documentation
| Line 61: | Line 61: | ||
<h2 style="border-bottom:2px solid #c8e6c9; padding-bottom:0.5rem; font-size:1.5em;">Actions</h2> | <h2 style="border-bottom:2px solid #c8e6c9; padding-bottom:0.5rem; font-size:1.5em;">Actions</h2> | ||
<p>Actions are sequences of instructions executed by the agent on the backup server to facilitate transitions.</p> | <p>Actions are sequences of instructions executed by the agent on the backup server to facilitate transitions.</p> | ||
| − | + | {| class="wikitable" style="width:100%; font-family:Roboto, sans-serif; font-size:14px; border-collapse:collapse; text-align:left; border:1px solid #e0e0e0;" | |
| − | + | |+ style="font-size:18px; font-weight:bold; padding:12px; background-color:#f5f5f5;" | Tranzman Action Descriptions | |
| − | + | |- style="background-color:#eeeeee; font-weight:bold; height:56px; border-bottom:2px solid #e0e0e0;" | |
| − | + | ! style="padding:16px;" | Action | |
| − | + | ! style="padding:16px;" | Description | |
| − | + | |- style="height:52px; border-bottom:1px solid #e0e0e0;" | |
| − | + | | style="padding:16px;" | Init | |
| − | + | | style="padding:16px;" | Runs once on both origin and destination during initial system discovery. | |
| − | + | |- style="height:52px; border-bottom:1px solid #e0e0e0;" | |
| − | + | | style="padding:16px;" | QueryProduct | |
| − | + | | style="padding:16px;" | Identifies the backup product installed on both origin and destination. | |
| − | + | |- style="height:52px; border-bottom:1px solid #e0e0e0;" | |
| − | + | | style="padding:16px;" | QueryConfig | |
| − | + | | style="padding:16px;" | Detects configuration objects (e.g., storage, credentials, workloads) on both systems. | |
| − | + | |- style="height:52px; border-bottom:1px solid #e0e0e0;" | |
| − | + | | style="padding:16px;" | QueryMedia | |
| − | + | | style="padding:16px;" | Continuously collects media-related data on both systems. | |
| − | + | |- style="height:52px; border-bottom:1px solid #e0e0e0;" | |
| − | + | | style="padding:16px;" | QueryImages | |
| − | + | | style="padding:16px;" | Continuously discovers all backup images on origin and destination. | |
| − | + | |- style="height:52px; border-bottom:1px solid #e0e0e0;" | |
| − | + | | style="padding:16px;" | CreateConfig | |
| − | + | | style="padding:16px;" | Creates necessary configuration components on the target system. | |
| − | + | |- style="height:52px; border-bottom:1px solid #e0e0e0;" | |
| − | + | | style="padding:16px;" | CreateWorkloads | |
| − | + | | style="padding:16px;" | Establishes required backup configurations on the target system. | |
| − | + | |- style="height:52px; border-bottom:1px solid #e0e0e0;" | |
| − | + | | style="padding:16px;" | CrossCheck | |
| − | + | | style="padding:16px;" | Performs daily data comparisons between origin and destination. | |
| − | + | |- style="height:52px; border-bottom:1px solid #e0e0e0;" | |
| − | + | | style="padding:16px;" | ExportImages | |
| + | | style="padding:16px;" | Cyclically exports selected images from the origin system. | ||
| + | |- style="height:52px; border-bottom:1px solid #e0e0e0;" | ||
| + | | style="padding:16px;" | ManipulateImages | ||
| + | | style="padding:16px;" | Renames or converts components mapped between origin and destination. | ||
| + | |- style="height:52px; border-bottom:1px solid #e0e0e0;" | ||
| + | | style="padding:16px;" | ImportImages | ||
| + | | style="padding:16px;" | Imports migrated images cyclically into the destination system. | ||
| + | |- style="height:52px; border-bottom:1px solid #e0e0e0;" | ||
| + | | style="padding:16px;" | CreateMedia | ||
| + | | style="padding:16px;" | Updates or creates new media on the destination system. | ||
| + | |- style="height:52px; border-bottom:1px solid #e0e0e0;" | ||
| + | | style="padding:16px;" | CheckConn | ||
| + | | style="padding:16px;" | Tests client connectivity and pushes NetBackup certificates. | ||
| + | |- style="height:52px; border-bottom:1px solid #e0e0e0;" | ||
| + | | style="padding:16px;" | FinalizeOrigin | ||
| + | | style="padding:16px;" | Completes final origin system preparations before switchover. | ||
| + | |- style="height:52px; border-bottom:1px solid #e0e0e0;" | ||
| + | | style="padding:16px;" | FinalizeDestination | ||
| + | | style="padding:16px;" | Completes final destination system preparations post-switchover. | ||
| + | |- style="height:52px; border-bottom:1px solid #e0e0e0;" | ||
| + | | style="padding:16px;" | Assessment | ||
| + | | style="padding:16px;" | Executes pre-assessment and post-transition validation tests. | ||
| + | |- style="height:52px; border-bottom:1px solid #e0e0e0;" | ||
| + | | style="padding:16px;" | HouseKeeping | ||
| + | | style="padding:16px;" | Cyclically clears completed records from the Tranzman Database. | ||
| + | |- style="height:52px; border-bottom:1px solid #e0e0e0;" | ||
| + | | style="padding:16px;" | PreDuplication | ||
| + | | style="padding:16px;" | Performs pre-duplication on the origin based on split migration rules. | ||
| + | |- style="height:52px;" | ||
| + | | style="padding:16px;" | PostDuplication | ||
| + | | style="padding:16px;" | Performs post-duplication on the destination storage as part of migration. | ||
| + | |} | ||
| + | </div> | ||
<div style="background-color:#fffbf4; padding:1.5rem; border-radius:8px; box-shadow:0 2px 4px rgba(0,0,0,0.06);"> | <div style="background-color:#fffbf4; padding:1.5rem; border-radius:8px; box-shadow:0 2px 4px rgba(0,0,0,0.06);"> | ||
<h2 style="border-bottom:2px solid #ffe0b2; padding-bottom:0.5rem; font-size:1.5em;">Migration Flow</h2> | <h2 style="border-bottom:2px solid #ffe0b2; padding-bottom:0.5rem; font-size:1.5em;">Migration Flow</h2> | ||
Latest revision as of 09:34, 11 September 2025
Contents
Tranzman Appliance Architecture & Migration Flow
Tranzman is delivered as an appliance, ready for deployment out-of-the-box.
It can be installed on either a virtual machine or a physical server using a bootable ISO or OVA.
Unlike traditional software binaries, Tranzman is an appliance and therefore not available as an executable binary or RPM.
Tranzman Components
Appliance Component
- Queue Manager (tzmqm)
- Data Transfer Engine (tzmtd)
- Built on Rocky Linux sources and utilizes an internal PostgreSQL database.
- Accessible via CLISH (Command Line Interface Shell) and web user interface (webUI), hosted on an internal web server running nginx.
- Configuration Converters, Catalog Converters, and Data Converters manage all data manipulations internally.
Agent Component
- Acts as the communication bridge between Tranzman and the backup server.
- Waits for instructions from the Tranzman Server.
- Executes received actions and reports status back to the Tranzman Server.
- Minimal standalone binary installed on the backup server, initiating tzmclnt and other necessary processes.
High-Level Process Flow
- All Tranzman Appliance processes rely on the relational database and the QueueManager.
- The QueueManager updates action queues for Agents, handling all migration-related operations.
- The Agent interacts with the Data Transfer Engine, fetching instructions and performing PUT/GET operations for catalog data.
- Actions retrieved by the Agents trigger various migration procedures.
Actions
Actions are sequences of instructions executed by the agent on the backup server to facilitate transitions.
| Action | Description |
|---|---|
| Init | Runs once on both origin and destination during initial system discovery. |
| QueryProduct | Identifies the backup product installed on both origin and destination. |
| QueryConfig | Detects configuration objects (e.g., storage, credentials, workloads) on both systems. |
| QueryMedia | Continuously collects media-related data on both systems. |
| QueryImages | Continuously discovers all backup images on origin and destination. |
| CreateConfig | Creates necessary configuration components on the target system. |
| CreateWorkloads | Establishes required backup configurations on the target system. |
| CrossCheck | Performs daily data comparisons between origin and destination. |
| ExportImages | Cyclically exports selected images from the origin system. |
| ManipulateImages | Renames or converts components mapped between origin and destination. |
| ImportImages | Imports migrated images cyclically into the destination system. |
| CreateMedia | Updates or creates new media on the destination system. |
| CheckConn | Tests client connectivity and pushes NetBackup certificates. |
| FinalizeOrigin | Completes final origin system preparations before switchover. |
| FinalizeDestination | Completes final destination system preparations post-switchover. |
| Assessment | Executes pre-assessment and post-transition validation tests. |
| HouseKeeping | Cyclically clears completed records from the Tranzman Database. |
| PreDuplication | Performs pre-duplication on the origin based on split migration rules. |
| PostDuplication | Performs post-duplication on the destination storage as part of migration. |
Migration Flow
Same Vendor Migration Flow
Cross Vendor Migration Flow
If the backup data is stored on Tape
- (1) The Tranzman server reads data directly from tapes via its Data Converter.
- (2) Optionally, converted data may be duplicated onto a destination storage system.
If the backup data is stored on Disk
- (1) The converter reads data from the origin storage over NFS/CIFS.
- (2) Optionally, converted images may be duplicated onto the native destination storage.
If the backup data is encrypted or deduplicated
- (1) Pre-duplicate the data onto shared storage.
- (2) The converter reads the data from shared storage.
- (3) Optionally, data may be duplicated onto native destination storage.