LTS

    Innovation Version

      x2openEuler Feature Guide

      Using x2openEuler on the WebUI

      OS Upgrade

      The OS upgrade feature helps upgrade the OS of the node to a target OS for service continuity and security.

      Creating an Upgrade Task

      Prerequisites

      You have logged in to x2openEuler.

      Procedure

      NOTICE NOTICE
      Up to 1,000 nodes can be upgraded in a single x2openEuler upgrade task.

      1. On the left of the page, click New Task and choose OS Upgrade. The New Upgrade Task page is displayed. x2openEuler automatically generates a task name by default. You can change the task name as required.

      2. On the New Upgrade Task page, confirm the task name, select Batch Import or Add Node, and set the required parameters.

        • Batch Import: Batch import information about multiple nodes using a template.

          NOTE NOTE
          When nodes are imported in a batch, x2openEuler verifies the imported node information. If the verification fails, modify the imported information as prompted and import the nodes again.

          1. On the Batch Import page, click Template Table to obtain the template and enter node information by referring to Table 1.

            Figure 1 Batch Import
            Batch Import

          2. After entering the node information, click Upload File and agree to the SSH Transmission Note. Select and upload the batch import file.

            Figure 2 SSH Transmission Note
            SSH Transmission Note

        • Add Node: Add information about a single node.

          On the Add Node page, set the parameters by referring to Table 1 and click OK.

          Table 1 Node information parameters

          ParameterDescription
          SSH Transmission NoteThe default SSH transmission channel of the server is used for node management. To ensure data security and integrity, you are advised to use a secure SSH service, such as a secure SSH version configured with a secure cryptographic algorithm.
          IP AddressIP address of the node to be upgraded
          NOTE
          The node to be upgraded must be accessible to the environment where the x2openEuler WebUI is deployed.
          AliasAlias of the node to be upgraded. The alias is used to identify the function of the node.
          PortSSH port for logging in to the node to be upgraded
          UserUser name for logging in to the node to be upgraded
          Authentication ModeKey authentication: The authentication is performed based on a private key file and its password.
          • Private Key File: absolute path of the private key file for logging in to the node to be upgraded
          • Passphrase: passphrase of the private key file for logging in to the node to be upgraded. For details about how to configure the key authentication mode, see Generating and Configuring a Key.
          Password authentication: The authentication is performed based on a password.
          Password: password for logging in to the node to be upgraded
          NOTE
          • If you log in to the node as a common user, you need to enter the password of the root user to switch to the root user. The root user has all the operation permissions. Logging in to the server as the root user may pose security risks. For security purposes, disable the SSH login of the root user. The configuration procedure is as follows: Log in to the server as a common user, switch to the root user, and check the value of PermitRootlogin in the /etc/ssh/sshd_config file. If the value is no, the root user is not allowed to log in to the server. If the value is yes, change it to no. After modifying the settings, restart the sshd service for the modification to take effect.
          • User passwords are involved during node information configuration. You need to maintain user information routinely and ensure environment security.
          Source OSOS of the node to be upgraded. The default value is CentOS 7.6. More OSs can be supported by performing Uploading an OS Database Support Package.
          Target OSTarget OS of the upgrade. The default value is openEuler 20.03 LTS SP1. More OSs can be supported by performing Uploading an OS Database Support Package.
          RepositoryEnter a configured repository name or click **Select** on the right to select the repository required by the node to be upgraded. For details, see Configuring a Repository.
          Service SoftwareNOTICE
          • The software assessment report will not be generated if no service software is specified. Service software (RPM packages) not to be upgraded has a higher priority than service software (RPM packages).
          • If you enter multiple software directories or RPM package names, separate them with commas (,).
          • Service Software (RPM Packages): For service software installed using RPM packages, you only need to enter the main software name. For example, if Docker is installed, you only need to enter Docker. x2openEuler checks whether the software exists in the openEuler repository. If yes, x2openEuler automatically upgrades the software. If no, x2openEuler checks the software compatibility. If the software is compatible with openEuler, the software is retained. Otherwise, the node cannot be upgraded.
          • Service Software (Directories): For service software installed using compressed packages or source packages, enter the actual paths of the software. The paths can only contain files related to the service software only. x2openEuler checks whether the software is compatible with openEuler. If yes, the node can be upgraded and the software can be retained. Otherwise, the node cannot be upgraded.
          • Service Software (RPM Packages) Not to Be Upgraded: For service software installed using RPM packages, you only need to enter the main software name. For example, if Docker is installed, you only need to enter Docker. x2openEuler checks whether the software is compatible with openEuler. If yes, the node can be upgraded and the software package can be retained. Otherwise, the node cannot be upgraded.
          • Software to Be Installed after the Upgrade: For service software installed using RPM packages, you only need to enter the main software name. For example, if Docker is to be installed after the upgrade, you only need to enter Docker. x2openEuler checks whether the software is compatible with openEuler. If yes, the node can be upgraded and the software will be installed after the upgrade. Otherwise, the software cannot be installed.
          Advanced Settings
          Upgrade SchemeUpgrade scheme
          Backup Sources

          Directories to be backed up in the OS to be upgraded

          The /etc, /usr, /boot, /var, /run, and /opt/sutcheck_result directories, as well as all RPM packages, are backed up by default. Use commas (,) to separate multiple directories to be backed up.

          NOTE
          • Data will be automatically backed up during the upgrade. By default, the files in the /usr, /run, /boot, /var, and /etc directories are backed up. The backup files are stored in the /.osbak directory.
          • Only the directories required for system running need to be backed up. Service data does not need to be backed up. If service data is stored in or mounted to the directories to be backed up by default, enter the service data directories in Excluded Directories. Generally, you do not need to set the directories to be backed up.
          Backup DestinationDirectory for storing backup files during node upgrade. If this parameter is not specified, backup files are stored in /.osbak by default
          Excluded DirectoriesDirectories not to be backed up in the OS to be upgraded. Use commas (,) to separate multiple directories.
          Conflicting SoftwareConflicting software packages to be deleted together with those detected during the pre-upgrade check. Some important software packages on which the OS depends cannot be deleted.
          cmdlineKernel startup items of the target OS. If this parameter is not specified, the cmdline value of the source OS is retained.
          Software Package SwapSoftware packages that cannot be upgraded and need to be swapped. For example, if you want to swap package A for package B after the upgrade, enter A->B.
          NOTICE
          1. The pre-upgrade and post-upgrade scripts can only be uploaded in xxx.tar.gz files. xxx indicates the name of the compressed directory, which must contain a run.sh file in the first level. x2openEuler determines whether the script is successfully executed based on the return value of run.sh. The script will run on the node to be upgraded. Ensure that the uploaded script has no security risk.
          2. The default directory for storing scripts to be uploaded is /opt/x2openEuler/scripts-execute/upload/.
          3. Run the chown -R x2openEuler:x2openEuler xxx.tar.gz command to change the owner and owner group of the file.
          Pre-upgrade ScriptIf this option is enabled, you need to enter the path of the pre-upgrade script. The pre-upgrade script runs after the environment check.
          Post-upgrade Script (Before Restart)If this option is enabled, you need to enter the path of the post-upgrade script (before restart). This script runs after the upgrade and before the restart.
          Post-upgrade Script (After Restart)If this option is enabled, you need to enter the path of the post-upgrade script (after restart). This script runs after the upgrade and after the restart.
      3. After x2openEuler verifies the imported node information (adding a single node is used as an example), the node fingerprint verification page is displayed. Check that the node fingerprint is correct, and then click OK.

        Figure 3 Fingerprint verification
        Fingerprint verification

      4. After the node is added, confirm the node information and click OK in the lower right corner to complete the upgrade task creation. To modify or delete a node, click Modify or Delete in the Operation column. Click OK in the lower right corner to start the upgrade task or click Cancel in the lower right corner to cancel the upgrade task.

        NOTE NOTE
        After the upgrade task is created, x2openEuler automatically checks the environment of the nodes to be upgraded in the task. Subsequent upgrade operations can be performed only after the environment check is passed. If the environment check fails, check and modify the node information.

        Figure 4 Upgrade task information confirmation
        Upgrade task information confirmation

      Upgrading Nodes

      Prerequisites
      • You have logged in to x2openEuler.
      • An upgrade task has been created.
      Procedure
      1. Select the required upgrade task in the task list and click Details on the right. The task details page is displayed.

      2. Click Start Check on the right of the node information to check a single node. You can select multiple nodes and click Batch Operation > Start Check in the upper left corner to start checking of multiple nodes.

        The node upgrade process includes multiple stages. The failure of any stage will terminate the subsequent upgrade process.

        NOTE NOTE

        • After each upgrade stage, you can click Initialize in the lower right corner to restore the node to the state before the check.
        • If the pre-upgrade or post-upgrade script is uploaded, the corresponding stage will be added to the upgrade process.
        • If a rollback is required during the upgrade, you can perform Configuring Rollback Consistency Check Filters to bypass consistency check for the configured items. The configuration takes effect after the next rollback.

        Figure 5 Initialize Node
        Initialize

        1. Environment check

          The environment check analyzes the connectivity between x2openEuler and the node to be upgraded and checks whether the repository is available. If the environment check fails, modify the node information based on the suggestions of related check items. For details about how to customize the environment check, see Customizing the Environment Check.

          Figure 6 Environment check
          Environment check

        2. Pre-upgrade check The pre-upgrade check assesses the configuration file upgrade policy, service software, and hardware compatibility, and checks software and services for conflicts. Assessment reports will be generated to determine whether the node to be upgraded meets the upgrade requirements. If the compatibility check fails, perform software adaptation based on the assessment report. For details about assessment report parameters, see Table 2, Table 3, Table 4, Table 5, and Table 6.

          Figure 7 Pre-upgrade check
          Pre-upgrade check

          Table 2 Pre-upgrade Check Report parameters

          ParameterDescription
          ItemServices, policies, and configuration files that are upgraded with the source OS
          Result

          Whether the check item passes the pre-upgrade check

          • Passed
          • Failed
          Priority

          Impact of the check item on the upgrade

          • High: The upgrade may be stopped.
          • Medium: An exception may occur during the upgrade, but the upgrade process may not be stopped.
          • Low: An exception may occur during the upgrade, but the upgrade process will not be affected.
          OperationCause and solution for the failed check item

          Table 3 Configuration File Upgrade Policy parameters

          ParameterDescription
          Source OS Software Package and ConfigurationSoftware package and related information involved in the OS upgrade
          Upgrade Policy

          Policy for the software package involved in the OS upgrade

          • Overwrite: The software package will be overwritten after the upgrade.
          • Retain: The software package will be retained after the upgrade.
          • Remove: The software package will be removed after the upgrade

          Table 4 Service Software Assessment Report parameters

          ParameterDescription
          ResultAssessed software name, source OS, target OS, system architecture, evaluation result, and other information related to the assessment task
          SuggestionSuggested solution based on the compatibility result in the assessment report
          Dependency Compatibility

          Direct dependencies required by the software and the RPM packages corresponding to the dependencies in the source and target OSs

          • If the names and versions of a direct dependent RPM package are not changed, Version not changed is displayed.
          • If the version of a direct dependent RPM package is changed but the interfaces are not changed, Version changed is displayed.
          • If the name of a direct dependent RPM package is changed but the interfaces are not changed, Package changed is displayed.
          • If an RPM package is found in the source OS but not in the target OS, Missing is displayed.
          • If an RPM package is not found in the source OS but in the target OS, or any interface of the package is changed, Check required is displayed.
          • If an RPM package is not found in the source or target OS, the RPM package is displayed in Others, and Check required is displayed.
          Interface Compatibility (C/C++)
          • Called Function: name of the function called in the assessed software
          • Interface Caller: program that is called by a changed external interface in the assessed software
          • Results:
            • Removed: The interface is missing.
            • Changed: The input parameter, return value, or implementation of the function is changed.
          • Parameters in the expanded details:
            • OS: name of the assessed OS
            • Function: representation of the interface
            • File: name of the file where the external interface is located
            • Dependency Package: external .so library where the interface is located
            • Interface Differences: changes in the external interface. If an interface has been removed, this field is left blank.
          Interface Compatibility (JDK)

          Changes between the interfaces found in the JDK of the JAR package scanning and those in the minimum required JDK version in the target OS

          • openEuler JDK: minimum version of openEuler JDK that meets the JAR package requirements
          • Object Build JDK: JDK version corresponding to the scanned JAR package
          • JAR Package: name of the scanned JAR package
          • Method: name of the method whose interface is changed
          • Function Signature: signature of the function whose interface is changed
          • Package: name of the package where the method with a changed interface is located, displayed as the package name and class name
          • Difference: difference in the interface
          Interface Compatibility (Java)

          Changes in the interfaces of the JAR package in the source OS

          • Invoked JAR package: name of the invoked JAR package
          • RPM package: RPM package to which the JAR package belongs
          • Parameters in the expanded details:
            • CentOS 7.6 methods: names of the incompatible CentOS 7.6 interfaces
            • Package: JAR package to which the incompatible interface belongs
            • Class: class to which the incompatible interface belongs
            • Changes in openEuler20.03 LTS SP1: changes of the incompatible interface in openEuler 20.03 LTS SP1, including method removal, return parameters, method signatures, method modifiers, and exceptions

          Table 5 Hardware Compatibility Assessment Report parameters

          ParameterDescription
          ResultCompatibility information about the system, basic system, CPU, and entire device
          Board Compatibility in the Target OS

          A board is compatible only if its parameters are the same as those in the known board list. If the parameters are not completely the same, the board compatibility is to be confirmed. The parameters include:

          • Vendor ID
          • Device ID
          • Subsystem Vendor ID
          • Subsystem ID
          • Chip Model
          • Compatible or Not: whether the hardware is compatible with the target OS
          • Risk Level: assessment of the level of risk caused by the hardware compatibility during the upgrade

          Table 6 Software Conflict Check Report parameters

          ParameterDescription
          Software Conflict StatisticsAssessment of conflicts during the upgrade and information about the following software packages: retained source OS software packages, software packages upgraded to the target OS, software packages upgraded to those in the openEuler extension repository, removed source OS software packages, and additional target OS software packages.
          ConflictsSoftware package conflicts between the source OS and the target OS
          Retained PackagesSource OS software packages that are retained after the OS is upgraded
          Upgraded PackagesSoftware packages that are upgraded after the OS is upgraded
          Packages Upgraded to openEulerSoftware packages that are upgraded to those in the openEuler extension repository after the OS is upgraded
          Removed PackagesSource OS software packages that are removed after the OS is upgraded
          Additional PackagesSoftware packages that will be installed in addition after the OS is upgraded
          After the pre-upgrade check is complete, click **Export HTML** Report in the lower right corner to export the check report. Click **Download** to obtain the environment information and task execution logs collected during the check. If the pre-upgrade check fails, click **Retry** in the lower right corner to perform the upgrade check again or click **Exclude Node** to clear the current status of the node. After the node is excluded, click **Restore** to restore the node to the status before the exclusion.
        3. Upgrade and data backup

          NOTE NOTE
          Data will be automatically backed up during the upgrade. By default, the files in the /usr, /run, /boot, /var, and /etc directories are backed up. The backup files are stored in the /.osbak directory.

          After the environment check and pre-upgrade check are passed, the node upgrade stage starts. After the upgrade stage, click Restart Node or manually start the upgraded node to ensure that the upgrade is complete. Click Download Environment Information and Logs to obtain the environment information and task execution logs collected during the upgrade.

          Figure 8 Upgrade
          Upgrade

          After the node is restarted, click Start Check to enter the post-upgrade environment check stage.

        4. Post-upgrade environment check

          During the post-upgrade environment check, x2openEuler checks the OS running status, commands, software packages, and services after the upgrade and generates an inspection report. For details about how to customize inspection items, see Customizing the Health Inspection. After the upgrade is complete, you are advised to clear the backup data to release node space. If a rollback is required, you can retain the backup data.

          NOTE NOTE
          After the upgrade is complete, verify running of the services. If services are running properly, delete backup data to release space.

      3. After the upgrade is complete, verify the environment by referring to Verifying the Upgrade.

        NOTE NOTE
        After the system is restarted, SELinux performs the relabel operation, which may take a long time on a physical machine. After the relabel operation is complete, the system automatically restarts. Then, the upgrade to the target OS is completely finished.

      Verifying the Upgrade

      Prerequisites

      After the upgrade is complete, perform the following operations to verify the upgrade.

      Procedure
      1. Run the following command to check whether the OS has been upgraded to the target OS:

        cat /etc/os-release
        

        If the following information is displayed, the OS has been upgraded to the target OS:

        NAME="openEuler"
        VERSION="20.03 (LTS-SP1)"
        ID="openEuler"
        VERSION_ID="20.03"
        PRETTY_NAME="openEuler 20.03 (LTS-SP1)"
        ANSI_COLOR="0;31"
        
      2. Run an openEuler command. If the command can be executed correctly, the OS has been upgraded to the target OS.

      3. (Optional) Restore services or adapt scripts based on service requirements.

      4. Check whether the services are running properly.

      System Information Collection and Assessment

      System information collection and assessment tasks collect information about nodes to be upgraded, assess software and hardware compatibility of the nodes, check software conflicts, generate assessment reports, and check whether the nodes to be upgraded meet upgrade requirements.

      Creating a System Information Collection and Assessment Task

      Prerequisites

      You have logged in to x2openEuler.

      Procedure
      1. On the left of the page, click New Task and choose System Information Collection and Assessment. The New System Information Collection and Assessment Task page is displayed. x2openEuler automatically generates a task name by default. You can change the task name as required.

      2. On the New System Information Collection and Assessment Task page, confirm the task name, select Batch Import or Add Node, and set the required parameters.

        • Batch Import: Batch import information about multiple nodes using a template.

          NOTE NOTE
          When nodes are imported in a batch, x2openEuler verifies the imported node information. If the verification fails, modify the imported information as prompted and import the nodes again.

          1. On the Batch Import page, click Template Table to obtain the template and enter node information by referring toTable 7.

            Figure 9 Batch Import
            Batch Import

          2. After entering the node information, click Upload File and agree to the SSH Transmission Note. Select and upload the batch import file.

            Figure 10 SSH Transmission Note
            SSH Transmission Note

        • Add Node: Add information about a single node. On the Add Node page, set the parameters by referring to Table 7 and click OK. Table 7 Node information parameters

          td>Target OS of the upgrade. The default value is openEuler 20.03 LTS SP1. More OSs can be supported by performing Uploading an OS Database Support Package.
          ParameterDescription
          SSH Transmission NoteThe default SSH transmission channel of the server is used for node management. To ensure data security and integrity, you are advised to use a secure SSH service, such as a secure SSH version configured with a secure cryptographic algorithm.
          IP AddressIP address of the node to be upgraded
          NOTE
          The node to be upgraded must be accessible to the environment where the x2openEuler WebUI is deployed.
          AliasAlias of the node to be upgraded. The alias is used to identify the function of the node.
          PortSSH port for logging in to the node to be upgraded
          UserUser name for logging in to the node to be upgraded
          Authentication ModeKey authentication: The authentication is performed based on a private key file and its password.
          • Private Key File: absolute path of the private key file for logging in to the node to be upgraded
          • Passphrase: passphrase of the private key file for logging in to the node to be upgraded. For details about how to configure the key authentication mode, see Generating and Configuring a Key.
          Password authentication: The authentication is performed based on a password.
          Password: password for logging in to the node to be upgraded
          NOTE
          • If you log in to the node as a common user, you need to enter the password of the root user to switch to the root user. The root user has all the operation permissions. Logging in to the server as the root user may pose security risks. For security purposes, disable the SSH login of the root user. The configuration procedure is as follows: Log in to the server as a common user, switch to the root user, and check the value of PermitRootlogin in the /etc/ssh/sshd_config file. If the value is no, the root user is not allowed to log in to the server. If the value is yes, change it to no. After modifying the settings, restart the sshd service for the modification to take effect.
          • User passwords are involved during node information configuration. You need to maintain user information routinely and ensure environment security.
          Source OSOS of the node to be upgraded. The default value is CentOS 7.6. More OSs can be supported by performing Uploading an OS Database Support Package.
          Target OS
          RepositoryEnter a configured repository name or click **Select** on the right to select the repository required by the node to be upgraded. For details, see Configuring a Repository.
          Service SoftwareNOTICE
          • The software assessment report will not be generated if no service software is specified. Service software (RPM packages) not to be upgraded has a higher priority than service software (RPM packages).
          • If you enter multiple software directories or RPM package names, separate them with commas (,).
          • Service Software (RPM Packages): For service software installed using RPM packages, you only need to enter the main software name. For example, if Docker is installed, you only need to enter Docker. x2openEuler checks whether the software exists in the openEuler repository. If yes, x2openEuler automatically upgrades the software. If no, x2openEuler checks the software compatibility. If the software is compatible with openEuler, the software is retained. Otherwise, the node cannot be upgraded.
          • Service Software (Directories): For service software installed using compressed packages or source packages, enter the actual paths of the software. The paths can only contain files related to the service software only. x2openEuler checks whether the software is compatible with openEuler. If yes, the node can be upgraded and the software can be retained. Otherwise, the node cannot be upgraded.
          • Service Software (RPM Packages) Not to Be Upgraded: For service software installed using RPM packages, you only need to enter the main software name. For example, if Docker is installed, you only need to enter Docker. x2openEuler checks whether the software is compatible with openEuler. If yes, the node can be upgraded and the software package can be retained. Otherwise, the node cannot be upgraded.
          • Software to Be Installed after the Upgrade: For service software installed using RPM packages, you only need to enter the main software name. For example, if Docker is to be installed after the upgrade, you only need to enter Docker. x2openEuler checks whether the software is compatible with openEuler. If yes, the node can be upgraded and the software will be installed after the upgrade. Otherwise, the software cannot be installed.
      3. After x2openEuler verifies the imported node information (adding a single node is used as an example), the node fingerprint verification page is displayed. Check that the node fingerprint is correct, and then click OK.

        Figure 11 Fingerprint verification
        Fingerprint verification

      4. After the node is added, confirm the node information and click OK in the lower right corner to complete the system information collection and assessment task creation. To modify or delete a node, click Modify or Delete in the Operation column. Click OK in the lower right corner to start the upgrade task or click Cancel in the lower right corner to cancel the task.

        NOTE NOTE
        After the task is created, x2openEuler automatically checks the environment of the nodes to be upgraded in the task. Subsequent collection and assessment can be performed only after the environment check is passed. If the environment check fails, check and modify the node information.

        Figure 12 System information collection and assessment task information confirmation
        System information collection and assessment task information confirmation

      Performing System Information Collection and Assessment

      Prerequisites

      A system information collection and assessment task has been created.

      Procedure
      1. Under the All Nodes area, select the required system information collection and assessment task and click Details on the right. The task details page is displayed.

      2. Click Check on the right of the node information to check the environment of the node. You can select multiple nodes and click Batch Operation > Start Check in the upper left corner to check the environment of multiple nodes.

        The node system information collection and assessment task includes two stages. The failure of any stage will terminate the task.

        NOTE NOTE

        • After each upgrade stage, you can click Initialize in the lower right corner to restore the node to the state before the check.
        • If the pre-upgrade or post-upgrade script is uploaded, the corresponding stage will be added to the upgrade process.
        • If a rollback is required during the upgrade, you can perform Configuring Rollback Consistency Check Filters to bypass consistency check for the configured items. The configuration takes effect after the next rollback.

        Figure 13 Initialize Node
        Initialize

        1. Environment check

          The environment check analyzes the connectivity between x2openEuler and the node to be upgraded and checks whether the environment information is correct. If the environment check fails, modify the node information.

          Figure 14 Environment check
          Environment check

        2. Collection and assessment

          x2openEuler collects information about nodes to be upgraded, assess software and hardware compatibility of the nodes, check software conflicts, generate assessment reports, and check whether the nodes to be upgraded meet upgrade requirements. If the compatibility check fails, perform software adaptation based on the assessment report. For details about assessment report parameters, seeTable 8, Table 9, and Table 10.

          Figure 15 Collection and assessment
          Collection and assessment

          Table 8 Service Software Assessment Report parameters

          ParameterDescription
          ResultAssessed software name, source OS, target OS, system architecture, evaluation result, and other information related to the assessment task
          SuggestionSuggested solution based on the compatibility result in the assessment report
          Dependency Compatibility

          Direct dependencies required by the software, as well as the RPM packages corresponding to the dependencies in the source and target OSs

          • If the names and versions of a direct dependent RPM package are not changed, Version not changed is displayed.
          • If the version of a direct dependent RPM package is changed but the interfaces are not changed, Version changed is displayed.
          • If the name of a direct dependent RPM package is changed but the interfaces are not changed, Package changed is displayed.
          • If an RPM package is found in the source OS but not in the target OS, Missing is displayed.
          • If an RPM package is not found in the source OS but in the target OS, or any interface of the package is changed, Check required is displayed.
          • If an RPM package is not found in the source or target OS, the RPM package is displayed in Others, and Check required is displayed.
          Interface Compatibility (C/C++)
          • Called Function: name of the function called in the assessed software
          • Interface Caller: program that is called by a changed external interface in the assessed software
          • Results:
            • Removed: The interface is missing.
            • Changed: The input parameter, return value, or implementation of the function is changed.
          • Parameters in the expanded details:
            • OS: name of the assessed OS
            • Function: representation of the interface
            • File: name of the file where the external interface is located
            • Dependency Package: external .so library where the interface is located
            • Interface Differences: changes in the external interface. If an interface has been removed, this field is left blank.
          Interface Compatibility (JDK)

          Changes between the interfaces found in the JDK of the JAR package scanning and those in the minimum required JDK version in the target OS

          • openEuler JDK: minimum version of openEuler JDK that meets the JAR package requirements
          • Object Build JDK: JDK version corresponding to the scanned JAR package
          • JAR Package: name of the scanned JAR package
          • Method: name of the method whose interface is changed
          • Function Signature: signature of the function whose interface is changed
          • Package: name of the package where the method with a changed interface is located, displayed as the package name and class name
          • Difference: difference in the interface
          Interface Compatibility (Java)

          Changes in the interfaces of the JAR package in the source OS

          • Invoked JAR package: name of the invoked JAR package
          • RPM package: RPM package to which the JAR package belongs
          • Parameters in the expanded details:
            • CentOS 7.6 methods: names of the incompatible CentOS 7.6 interfaces
            • Package: JAR package to which the incompatible interface belongs
            • Class: class to which the incompatible interface belongs
            • Changes in openEuler20.03 LTS SP1: changes of the incompatible interface in openEuler 20.03 LTS SP1, including method removal, return parameters, method signatures, method modifiers, and exceptions

          Table 9 Hardware Compatibility Assessment Report parameters

          ParameterDescription
          ResultCompatibility information about the system, basic system, CPU, and entire device
          Board Compatibility in the Target OS

          A board is compatible only if its parameters are the same as those in the known board list. If the parameters are not completely the same, the board compatibility is to be confirmed. The parameters include:

          • Vendor ID
          • Device ID
          • Subsystem Vendor ID
          • Subsystem ID
          • Chip Model
          • Compatible or Not: whether the hardware is compatible with the target OS
          • Risk Level: assessment of the level of risk caused by the hardware compatibility during the upgrade

          Table 10 Software Conflict Check Report parameters

          ParameterDescription
          Software Conflict StatisticsAssessment of conflicts during the upgrade and information about the following software packages: retained source OS software packages, software packages upgraded to the target OS, software packages upgraded to those in the openEuler extension repository, removed source OS software packages, and additional target OS software packages.
          ConflictsSoftware package conflicts between the source OS and the target OS
          Retained PackagesSource OS software packages that are retained after the OS is upgraded
          Upgraded PackagesSoftware packages that are upgraded after the OS is upgraded
          Packages Upgraded to openEulerSoftware packages that are upgraded to those in the openEuler extension repository after the OS is upgraded
          Removed PackagesSource OS software packages that are removed after the OS is upgraded
          Additional PackagesSoftware packages that will be installed in addition after the OS is upgraded
      3. (Optional) Click Initialize in the lower right corner to restore the node to the state before the check. Click Download Environment Information and Logs to obtain the environment information and task execution logs.

      Configuration Migration

      onfiguration migration tasks analyze the configuration information in the node environments and migrate the information to the target environment to ensure service continuity.

      Creating a Configuration Migration Task

      Prerequisites

      You have logged in to x2openEuler.

      Procedure
      1. On the left of the page, click New Task and select Configure Migration. The New Configuration Migration Task page is displayed. You can change the automatically generated task name.

      2. Enter a task name, select a migration type (Analysis and Migration is used as an example), and set the parameters.

        NOTICE NOTICE
        By default, configuration migration covers the configurations of mainstream Linux distributions. The task types are as follows:

        • Analyze Only: Analyze the configuration information of the source node. The analysis result can be exported.
        • Migrate Only: Migrate the configuration information to the target node.
        • Analyze and Migrate: Analyze the configuration information of the source node and migrate it to the target node.
        • Batch Import: Batch import information about multiple nodes using a template.

          NOTE NOTE
          When nodes are imported in a batch, x2openEuler verifies the imported node information. If the verification fails, modify the imported information as prompted and import the nodes again.

          1. On the Batch Import page, click Template Table to obtain the template and enter node information by referring to Table 11.

            Figure 16 Batch Import
            Batch Import

          2. After entering the node information, click Upload File and agree to the SSH Transmission Note. Select and upload the batch import file.

            Figure 17 SSH Transmission Note
            SSH Transmission Note

        • Add Node: Add information about a single node.

          1. On the Add Node page, set the parameters by referring to Table 11 and click OK.

            Figure 18 Add Node
            Add Node

        Table 11 Node information parameters

        ParameterDescription
        SSH Transmission NoteThe default SSH transmission channel of the server is used for node management. To ensure data security and integrity, you are advised to use a secure SSH service, such as a secure SSH version configured with a secure cryptographic algorithm.
        IP AddressIP address of the node to be upgraded
        NOTE
        The node to be upgraded must be accessible to the environment where the x2openEuler WebUI is deployed.
        AliasAlias of the node to be upgraded. The alias is used to identify the function of the node.
        PortSSH port for logging in to the node to be upgraded
        UserUser name for logging in to the node to be upgraded
        Authentication Mode

        Key authentication: The authentication is performed based on a private key file and its password.

        • Private Key File: absolute path of the private key file for logging in to the node to be upgraded
        • Passphrase: passphrase of the private key file for logging in to the node to be upgraded. For details about how to configure the key authentication mode, see Generating and Configuring a Key.
          NOTE
          • If you log in to the node as a common user, you need to enter the password of the root user to switch to the root user.
          • The root user has all the operation permissions. Logging in to the server as the root user may pose security risks. For security purposes, disable the SSH login of the root user. The configuration procedure is as follows: Log in to the server as a common user, switch to the root user, and check the value of PermitRootlogin in the /etc/ssh/sshd_config file. If the value is no, the root user is not allowed to log in to the server. If the value is yes, change it to no. After modifying the settings, restart the sshd service for the modification to take effect.
          • User passwords are involved during node information configuration. You need to maintain user information routinely and ensure environment security.

        Password authentication: The authentication is performed based on a password.

        br>Password: password for logging in to the node to be upgraded

        Note
        • If you log in to the node as a common user, you need to enter the password of the root user to switch to the root user.
        • The root user has all the operation permissions. Logging in to the server as the root user may pose security risks. For security purposes, disable the SSH login of the root user. The configuration procedure is as follows: Log in to the server as a common user, switch to the root user, and check the value of PermitRootlogin in the /etc/ssh/sshd_config file. If the value is no, the root user is not allowed to log in to the server. If the value is yes, change it to no. After modifying the settings, restart the sshd service for the modification to take effect.
        Source OSOS of the node to be upgraded. The default value is CentOS 7.6. More OSs can be supported by performing Uploading an OS Database Support Package.
        Target Node IP Address

        Target node IP address

        NOTE
        The target node must be accessible to the environment where the x2openEuler WebUI is deployed.
        Target Node PortSSH port for logging in to the target node
        Target Node UserUser for login to the target node
        Authentication ModeKey authentication: The authentication is performed based on a private key file and its password.
        • Private Key File: absolute path of the private key file for logging in to the node to be upgraded
        • Passphrase: passphrase of the private key file for logging in to the node to be upgraded. For details about how to configure the key authentication mode, see Generating and Configuring a Key.
        Password authentication: The authentication is performed based on a password.
        Password: password for logging in to the node to be upgraded
        NOTE
        • If you log in to the node as a common user, you need to enter the password of the root user to switch to the root user. The root user has all the operation permissions. Logging in to the server as the root user may pose security risks. For security purposes, disable the SSH login of the root user. The configuration procedure is as follows: Log in to the server as a common user, switch to the root user, and check the value of PermitRootlogin in the /etc/ssh/sshd_config file. If the value is no, the root user is not allowed to log in to the server. If the value is yes, change it to no. After modifying the settings, restart the sshd service for the modification to take effect.
        • User passwords are involved during node information configuration. You need to maintain user information routinely and ensure environment security.
        Target OSOS of the target node. The default value is openEuler 20.03 LTS SP1. More OSs can be supported by performing Uploading an OS Database Support Package.
      3. After x2openEuler verifies the imported node information (adding a single node is used as an example), the node fingerprint verification page is displayed. Check that the node fingerprint is correct, and then click OK.

        Figure 19 Fingerprint verification
        Fingerprint verification

      4. After the node is added, confirm the node information and click OK in the lower right corner to complete the system information collection and assessment task creation. To modify or delete a node, click Modify or Delete in the Operation column. Click OK in the lower right corner to start the upgrade task or click Cancel in the lower right corner to cancel the task.

        Figure 20 Confirming the configuration migration task information
        Confirming the configuration migration task information

      Performing Configuration Migration

      Prerequisites
      • You have logged in to x2openEuler.
      • A configuration migration task has been created.
      Procedure
      1. Under the All Nodes area, select the required configuration migration task and click Details on the right. The task details page is displayed.

      2. Click Start Check on the right of the node information to migrate configurations of a single node. You can select multiple nodes and click Batch Operation in the upper left corner to start configuration migration for multiple nodes.

        The configuration analysis and migration process includes four stages. The failure of any stage will terminate the subsequent task process.

        1. Environment check

          The environment check analyzes the connectivity between x2openEuler and the source and target nodes and checks whether the environment information is correct. If the environment check fails, modify the node information.

          Figure 21 Environment check
          Environment check

        2. Configuration analysis

          The configurations of the source node are analyzed and a configuration analysis report is generated for you to confirm whether the configuration information of the source node can be migrated. For details about the parameters in the configuration analysis report, see Table 12.

          Figure 22 Configuration analysis
          Configuration analysis Table 12 Configuration Analysis Report parameters

          ParameterDescription
          Change StatisticsNumbers of configuration item changes, service configuration changes, kernel parameter changes, network parameter changes, and mounting parameter changes on the source node
          Service Configuration ChangesService configuration changes between the source and target nodes
          Kernel Parameter ChangesKernel parameter changes between the source and target nodes
          Network Parameter ChangesNetwork parameter changes between the source and target nodes
          Mounting Parameter ChangesMounting parameter changes between the source and target nodes
        3. Configuration migration Select the configuration information to be migrated and click Start Migration in the lower right corner.

          Figure 23 Configuration migration
          Configuration migration

          NOTE NOTE
          During the configuration migration, some source OS services or application configurations may fail to be migrated due to reasons of their own. You can click Ignore Failed to ignore them and deploy them again in the target OS later.

        4. Environment cleanup

          You are advised to test the services to ensure stability before performing environment cleanup to save space. If a rollback is required, you can skip environment cleanup.

          NOTE NOTE

          After the upgrade is complete, verify running of the services. If services are running properly, clean up the environment to release space. During environment cleanup, backup files are deleted and the x2openEuler-client software package is uninstalled.

      3. After the configuration migration is complete, test services on the target node to ensure that the services are running properly. If a rollback is required, go to the node details page and click Rollback in the lower right corner.

      Software Package Assessment

      Assesses the software packages to be migrated from the source OS to the target OS to ensure that services run properly after the upgrade.

      Prerequisites

      x2openEuler has been installed.

      Procedure

      1. On the left of the page, click New Task and select Software Package Assessment. In the displayed New Software Package Assessment Task dialog box, enter the task name and click OK. The assessment task page is displayed.

      2. Click Select Software Packages in the upper left corner. The page shown in Figure 24 is displayed. Upload the software packages to be assessed by referring to Table 13.

        Figure 24 Select Software Packages
        Select Software Packages

        Table 13 Software package scanning parameters

        ParameterDescription
        Scanning TargetSoftware Packages: Multiple software packages can be uploaded. Supported software package types include .rpm, .py, .pyc, .sh, .spec, .tar.gz, .tar, .zip, and .elf.

        Path: The existing software packages on the node where x2openEuler is installed are scanned.

        NOTE
        Only files in the /opt/x2openEuler/scan directory are scanned.
        Source OSOS of the node to be upgraded. The default value is CentOS 7.6. More OSs can be supported by performing Uploading an OS Database Support Package.
        Target OSTarget OS of the upgrade. The default value is openEuler 20.03 LTS SP1. More OSs can be supported by performing Uploading an OS Database Support Package.
        OS ArchitectureArchitecture of the source and target OS
        • x86_64
        • aarch64
      3. Click OK to execute the software assessment task. After the assessment is complete, the analysis result page is displayed. The analysis result consists of the Software Dependencies diagram and Software Assessment Report, as shown in Figure 25. For details about the parameters in the software assessment report, see Table 14.

        NOTE NOTE

        • In the list of the software package assessment report, you can click the report name of an analysis task to view the analysis report.
        • You can use the software dependency diagram to analyze the software packages dependencies and the replaceable packages provided by openEuler.
        • The name of the analysis report consists of the name of the scanned software package and the time when the report is generated.

        Figure 25 Software Dependencies
        Software Dependencies

        Table 14 Service Software Assessment Report parameters

        ParameterDescription
        ResultAssessed software name, source OS, target OS, system architecture, evaluation result, and other information related to the assessment task
        SuggestionSuggested solution based on the compatibility result in the assessment report
        Dependency CompatibilityDirect dependencies required by the software, as well as the RPM packages corresponding to the dependencies in the source and target OSs
        • If the names and versions of a direct dependent RPM package are not changed, Version not changed is displayed.
        • If the version of a direct dependent RPM package is changed but the interfaces are not changed, Version changed is displayed.
        • If the name of a direct dependent RPM package is changed but the interfaces are not changed, Package changed is displayed.
        • If an RPM package is found in the source OS but not in the target OS, Missing is displayed.
        • If an RPM package is not found in the source OS but in the target OS, or any interface of the package is changed, Check required is displayed.
        • If an RPM package is not found in the source or target OS, the RPM package is displayed in Others, and Check required is displayed.
        Interface Compatibility (C/C++)
        • Called Function: name of the function called in the assessed software
        • Interface Caller: program that is called by a changed external interface in the assessed software
        • Results:
          • Removed: The interface is missing.
          • Changed: The input parameter, return value, or implementation of the function is changed.
        • Parameters in the expanded details:
          • OS: name of the assessed OS
          • Function: representation of the interface
          • File: name of the file where the external interface is located
          • Dependency Package: external .so library where the interface is located
          • Interface Differences: changes in the external interface. If an interface has been removed, this field is left blank.
        Interface Compatibility (JDK)

        Changes between the interfaces found in the JDK of the JAR package scanning and those in the minimum required JDK version in the target OS

        • openEuler JDK: minimum version of openEuler JDK that meets the JAR package requirements
        • Object Build JDK: JDK version corresponding to the scanned JAR package
        • JAR Package: name of the scanned JAR package
        • Method: name of the method whose interface is changed
        • Function Signature: signature of the function whose interface is changed
        • Package: name of the package where the method with a changed interface is located, displayed as the package name and class name
        • Difference: difference in the interface
        Interface Compatibility (Java)

        Changes in the interfaces of the JAR package in the source OS

        • Invoked JAR package: name of the invoked
        • RPM package: RPM package to which the JAR
        • Parameters in the expanded details:
          • CentOS 7.6 methods: names of the incompatible CentOS 7.6 interfaces
          • Package: JAR package to which the incompatible interface belongs
          • Class: class to which the incompatible interface belongs
          • Changes in openEuler20.03 LTS SP1: changes of the incompatible interface in openEuler 20.03 LTS SP1, including method removal, return parameters, method signatures, method modifiers, and exceptions
      4. Click Download Environment Information and Logs in the lower right corner to obtain the environment information and log files. Click Export HTML Report to export the analysis result of the current assessment task.

      Using x2openEuler on the CLI

      Post-upgrade Verification and Rollback

      Verifying the Upgrade

      Prerequisites

      The node has been upgraded and no error message is displayed during the upgrade.

      Procedure
      1. Run the following command to check the OS version:

        cat /etc/os-release
        
      2. Run the following command as soon as possible to reboot the node and enter the openEuler OS:

        reboot
        

      Rolling Back after the Upgrade

      Prerequisites

      The node has been upgraded.

      Procedure

      NOTICE NOTICE
      Restart the node before performing the rollback. Otherwise, the rollback will fail.

      1. Run the following command to roll back the upgrade:

        sh /usr/bin/centos2openEuler rollback
        

        Figure 26 Rollback process
        Rollback process

      2. (Optional) Check the rollback consistency. After the system is restarted, manually run the commands for collecting and comparing system information.

        1. For details about how to collect system information after the rollback, see 4.

        2. Run the following command to compare the system information:

          x2openEuler-client system-info-compare -d /opt/x2openEuler-client/output/
          

          Figure 27 System information comparison after the rollback
          System information comparison after the rollback

      Bug Catching

      Buggy Content

      Bug Description

      Submit As Issue

      It's a little complicated....

      I'd like to ask someone.

      PR

      Just a small problem.

      I can fix it online!

      Bug Type
      Specifications and Common Mistakes

      ● Misspellings or punctuation mistakes;

      ● Incorrect links, empty cells, or wrong formats;

      ● Chinese characters in English context;

      ● Minor inconsistencies between the UI and descriptions;

      ● Low writing fluency that does not affect understanding;

      ● Incorrect version numbers, including software package names and version numbers on the UI.

      Usability

      ● Incorrect or missing key steps;

      ● Missing prerequisites or precautions;

      ● Ambiguous figures, tables, or texts;

      ● Unclear logic, such as missing classifications, items, and steps.

      Correctness

      ● Technical principles, function descriptions, or specifications inconsistent with those of the software;

      ● Incorrect schematic or architecture diagrams;

      ● Incorrect commands or command parameters;

      ● Incorrect code;

      ● Commands inconsistent with the functions;

      ● Wrong screenshots.

      Risk Warnings

      ● Lack of risk warnings for operations that may damage the system or important data.

      Content Compliance

      ● Contents that may violate applicable laws and regulations or geo-cultural context-sensitive words and expressions;

      ● Copyright infringement.

      How satisfied are you with this document

      Not satisfied at all
      Very satisfied
      Submit
      Click to create an issue. An issue template will be automatically generated based on your feedback.
      Bug Catching
      编组 3备份