MgC Agent Overview
The MgC Agent (formerly Edge) is a tool that collects details of your source resources and executes migration commands from MgC.
Architecture
The MgC Agent can be deployed at the network edge of your cloud environment to collect and migrate data. It simplifies these complex tasks. As a bridge between the MgC and your network, the MgC Agent ensures smooth, secure data migration.
Domain Names
The following table lists the domain names that the MgC Agent must be able to access.
Source servers must be able to access the domain names of cloud services listed in the following table.
Cloud Service |
Domain Name |
---|---|
SMS |
SMS domain name for all regions except LA-Sao Paulo: https://sms.ap-southeast-3.myhuaweicloud.com:443 SMS domain name for LA-Sao Paulo: https://sms.sa-brazil-1.myhuaweicloud.com:443 |
OBS |
https://sms-resource-intl-ap-southeast-3.obs.ap-southeast-3.myhuaweicloud.com:443, which is the address for downloading the SMS-Agent. |
IAM |
iam.myhuaweicloud.com and the service's domain name for the target region. For details about its domain name for each region, see Endpoints. Examples:
|
ECS |
The service's domain name for the target region. For details about its domain name for each region, see Endpoints. Examples:
|
IMS |
The service's domain name for the target region. For details about its domain name for each region, see Endpoints. Examples:
|
EVS |
The service's domain name for the target region. For details about its domain name for each region, see Endpoints. Examples:
|
VPC |
The service's domain name for the target region. For details about its domain name for each region, see Endpoints. Examples:
|
Credentials Required for Data Collection
The MgC Agent can gather details of various resources, such as servers, databases, containers, VMware environments, and cloud platforms. To enable access, you must provide the MgC Agent with the credentials (such as AK/SK pairs) for accessing your servers, databases, containers, VMware platforms, and cloud platforms.
Communication Matrix
The communication matrix lists the ports used by the MgC Agent for different purposes, along with the transport layer protocols, authentication types, and encryption modes.
Source |
Target |
Port |
Protocol |
Data Content |
Function |
Encrypted |
Cloud Service Domain Name (URL) |
---|---|---|---|---|---|---|---|
Virtual machine |
MgC-Agent |
443 (It is used for migration over a private line. You can also use a different port.) |
|
SMS-Agent installation package |
Downloading the SMS-Agent installation package |
Yes |
N/A |
SMS-Agent |
Huawei Cloud ECS |
Windows: 8900 |
|
Data files |
Transferring data files to the target server |
Yes |
N/A |
Windows: 8899 |
|
Instruction messages |
Sending control instructions to the target server for modifying its registry and startup items |
Yes |
N/A |
||
Windows: 22 |
SSH V2 |
Script files |
Transferring script files to the target server |
Yes |
N/A |
||
Linux: 22 |
SSH V2 |
Data and script files |
Transferring script and data files to the target server |
Yes |
N/A |
||
SMS-Agent |
Squid proxy server |
3128 |
HTTPS |
Migration task information |
Creating resources on ECS, VPC, EVS, IMS, IAM, and SMS, and reporting the migration task progress |
Yes |
N/A |
Squid proxy server |
Huawei Cloud API gateway |
443 |
|
Migration task information |
Creating resources on ECS, VPC, EVS, IMS, IAM, and SMS, and reporting the migration task progress |
Yes |
The access domain names of cloud services such as ECS, VPC, EVS, IMS, IAM, and SMS depend on the target region. For details about the domain name for each region, see Domain Names. |
SMS-Agent |
Huawei Cloud API gateway |
443 (for migration over the Internet) |
|
Migration task information |
Creating resources on ECS, VPC, EVS, IMS, IAM, and SMS, and reporting the migration task progress |
Yes |
The access domain names of cloud services such as ECS, VPC, EVS, IMS, IAM, and SMS depend on the target region. For details about the domain name for each region, see Domain Names. |
MgC-Agent |
Source server |
Linux: 22 (The default port is 22. You can also use a different port.) |
SSH V2 |
Instruction messages |
Deploying SMS-Agent on the source server |
Yes |
N/A |
Windows: 5985 |
Application layer protocol: WinRM (with communication encryption enabled) Encryption protocol: WinRM (with communication encryption enabled) For details, see Windows Remote Management. |
Instruction messages |
Deploying SMS-Agent on the source server |
Yes |
N/A |
||
MgC-Agent |
IoTDA service instance |
8883 |
|
Task description |
Obtaining migration workflow instructions from MgC and returning the instruction execution results. |
Yes |
The domain name for accessing IoTDA depends on the target region. For details about the domain name for each region, see Domain Names. |
MgC-Agent |
MgC |
443 |
|
Registration requests |
Registering with MgC |
Yes |
The domain name for accessing MgC depends on the target region. For details about the domain name for each region, see Domain Names. |
User |
MgC-Agent |
27080 |
|
Instruction messages |
Performing operations on the MgC-Agent console, such as configuring MgC-Agent credentials, vCenter credentials, VM credentials, and Huawei Cloud AK/SK pairs. |
Yes |
N/A |
User |
MgC |
443 |
|
Instruction messages |
Performing operations on the MgC console and delivering migration management commands. |
Yes |
The domain name for accessing MgC depends on the target region. For details about the domain name for each region, see Domain Names. |
Collector |
MgC-Agent |
5678 |
|
Collection task information |
Reporting collection task results |
Yes |
N/A |
MgC-Agent |
Collector |
5678 |
|
Instruction messages |
Sending collection tasks to the plugin |
Yes |
N/A |
Command Matrix
The command matrix lists the commands contained in the MgC Agent as well as the absolute paths, functions, and usage of the commands.
Node |
Command |
Absolute Path |
Whether Can Be Invoked Independently |
Function |
Usage |
Risk |
Category |
---|---|---|---|---|---|---|---|
MgC Agent |
accountPermission.ps1 |
Yes |
Queries the roles assigned to the administrator user group. |
.\accountPermission.ps1 |
None |
Function |
|
basicInfo.ps1 |
Yes |
Queries the basic information. |
.\basicInfo.ps1 |
None |
Function |
||
checkBasicObjects.ps1 |
Yes |
Checks basic system components. |
.\checkBasicObjects.ps1 |
None |
Function |
||
checkPerformanceObjects.ps1 |
Yes |
Checks basic system performance components. |
.\checkPerformanceObjects.ps1 |
None |
Function |
||
diskInfo.ps1 |
Yes |
Queries basic disk information. |
.\diskInfo.ps1 |
None |
Function |
||
eachDiskPerformance.ps1 |
Yes |
Queries disk performance information. |
.\eachDiskPerformance.ps1 |
None |
Function |
||
fileSharingInfo.ps1 |
Yes |
Queries file system information. |
.\fileSharingInfo.ps1 |
None |
Function |
||
firmware.ps1 |
Yes |
Queries firmware information. |
.\firmware.ps1 |
None |
Function |
||
memorySize.ps1 |
Yes |
Queries memory information. |
.\memorySize.ps1 |
None |
Function |
||
netcardInfo.ps1 |
Yes |
Queries NIC information. |
.\netcardInfo.ps1 |
None |
Function |
||
netcardPerform.ps1 |
Yes |
Queries NIC bandwidth and PPS information. |
.\netcardPerform.ps1 |
None |
Function |
||
oemSystem.ps1 |
Yes |
Checks the OEM system. |
.\oemSystem.ps1 |
None |
Function |
||
osInfo.ps1 |
Yes |
Queries OS information. |
.\osInfo.ps1 |
None |
Function |
||
processInfo.ps1 |
Yes |
Queries process information. |
.\processInfo.ps1 |
None |
Function |
||
scheduledTasks.ps1 |
Yes |
Queries scheduled task information. |
.\scheduledTasks.ps1 |
None |
Function |
||
specialHardware.ps1 |
Yes |
Queries hardware information. |
.\specialHardware.ps1 |
None |
Function |
||
systemRoot.ps1 |
Yes |
Queries system directories. |
.\systemRoot.ps1 |
None |
Function |
||
systemService.ps1 |
Yes |
Checks the VSS service. |
.\systemService.ps1 |
None |
Function |
||
tcpNum.ps1 |
Yes |
Queries the number of connections. |
.\tcpNum.ps1 |
None |
Function |
||
utilInfo.ps1 |
Yes |
Queries performance information. |
.\utilInfo.ps1 |
None |
Function |
||
virtioDriver.ps1 |
Yes |
Checks VirtIO drivers. |
.\virtioDriver.ps1 |
None |
Function |
||
getArchitecture.sh |
Yes |
Queries OS architecture. |
sh getArchitecture.sh |
None |
Function |
||
getBootLoader.sh |
Yes |
Queries the system boot type. |
sh getBootLoader.sh |
None |
Function |
||
getCPUCores.sh |
Yes |
Queries the number of CPUs. |
sh getCPUCores.sh |
None |
Function |
||
getCpuFrequency.sh |
Yes |
Queries the CPU dominant frequency. |
sh getCpuFrequency.sh |
None |
Function |
||
getCPURate.sh |
Yes |
Queries the CPU usage. |
sh getCPURate.sh |
None |
Function |
||
getCPUtype.sh |
Yes |
Queries the CPU type. |
sh getCPUtype.sh |
None |
Function |
||
getDisk_each_read_write_info.sh |
Yes |
Queries the disk throughput. |
sh getDisk_each_read_write_info.sh |
None |
Function |
||
getDiskInfo.sh |
Yes |
Queries basic disk information. |
sh getDiskInfo.sh |
None |
Function |
||
getDiskUtil.sh |
Yes |
Queries the disk usage. |
sh getDiskUtil.sh |
None |
Function |
||
getFileSharingInfo.sh |
Yes |
Queries file system information. |
sh getFileSharingInfo.sh |
None |
Function |
||
getFirmwareType.sh |
Yes |
Queries the firmware type. |
sh getFirmwareType.sh |
None |
Function |
||
getGPUDevices.sh |
Yes |
Queries GPU devices. |
sh getGPUDevices.sh |
None |
Function |
||
getHostname.sh |
Yes |
Queries the hostname. |
sh getHostname.sh |
None |
Function |
||
getMem.sh |
Yes |
Queries memory information. |
sh getMem.sh |
None |
Function |
||
getMemRate.sh |
Yes |
Queries the memory usage. |
sh getMemRate.sh |
None |
Function |
||
getKernel.sh |
Yes |
Queries the kernel information. |
sh getKernel.sh |
None |
Function |
||
getNetCards.sh |
Yes |
Queries NIC information. |
sh getNetCards.sh |
None |
Function |
||
getNetcardsInfo.sh |
Yes |
Queries NIC bandwidth and PPS information. |
sh getNetcardsInfo.sh |
None |
Function |
||
getOsDisk.sh |
Yes |
Queries system disk information. |
sh getOsDisk.sh |
None |
Function |
||
getOsInfo.sh |
Yes |
Queries OS information. |
sh getOsInfo.sh |
None |
Function |
||
getRawDevices.sh |
Yes |
Queries raw device information. |
sh getRawDevices.sh |
None |
Function |
||
getRsync.sh |
Yes |
Checks rsync. |
sh getRsync.sh |
None |
Function |
||
getProcessInfo.sh |
Yes |
Queries process information. |
sh getProcessInfo.sh |
None |
Function |
||
getScheduledTasks.sh |
Yes |
Queries scheduled task information. |
sh getScheduledTasks.sh |
None |
Function |
||
getUSBDevices.sh |
Yes |
Queries USB devices. |
sh getUSBDevices.sh |
None |
Function |
||
getTcpTotal.sh |
Yes |
Queries the number of connections. |
sh getTcpTotal.sh |
None |
Function |
||
getVirtioDriver.sh |
Yes |
Checks VirtIO drivers. |
sh getVirtioDriver.sh |
None |
Function |
||
getVirtualType.sh |
Yes |
Queries the virtualization type. |
sh getVirtualType.sh |
None |
Function |
Feedback
Was this page helpful?
Provide feedbackThank you very much for your feedback. We will continue working to improve the documentation.See the reply and handling status in My Cloud VOC.
For any further questions, feel free to contact us through the chatbot.
Chatbot