Preparatory Steps

The following points should be considered before starting with a basic test setup:

For a production setup, there are many additional topics to consider and decisions to be made. These are outside the scope of this document. Please contact your Stromasys representative if you need support for migrating production environments.

Storage Directory Structure

Before you begin to configure Charon-PAR emulator instances and to install guest systems, it is advisable to create a directory structure for storing the data required by Charon-PAR emulator instances and guest systems.

Space required for the guest operating systems:

  • Charon-PAR/PA3: a minimum of 10GB
  • Charon-PAR/PA9-64: a minimum of 16GB
  • Charon-PAR/PA9-32: 1-2GB for HP-UX 9.0.7 and 10.20, a minimum of 10GB for HP-UX 11.00.

The numbers above are just basic guidelines for the minimum operating system installation. The space actually required depends on the individual configuration of the system to be migrated.

The following shows a sample directory structure. A structure similar to this will be used for the rest of the examples in this section:

# mkdir -p /data/Stromasys/host1

# mkdir /data/Stromasys/host1/Data

# mkdir /data/Stromasys/host1/Data/Disk

# mkdir /data/Stromasys/host1/Data/Tape

The Disk and Tape directories will be used to store emulated logical devices, for example, disk containers. 

Please note:

  • Each instance of Charon-PAR must be started in a separate directory because certain files (SSTORAGE.DAT, NVOLATILE.DAT, UA_SSTORAGE.DAT, and console.dat) will always be created in the current working directory of the emulator instance. Starting multiple emulator instances in the same directory will lead to errors due to file locking problems.
  • It is not recommended to place emulator storage devices (in particular vdisks) on NFS as this will have a significant impact on performance. However, if any of the storage (e.g., ISO files or vdisks) is on an NFS share, NFS locking must be enabled and all intermediate firewalls between client and server must allow the port used by the lockd and statd. Failure to do so will cause the emulator to hang at startup.


Ethernet Interface Preparation

Cloud Considerations

If running Charon-PAR in a cloud environment please consider that every cloud environment has specific networking characteristics that could conflict with interface configurations made by the user of the Charon-PAR host system. Please refer to the documentation provided by the cloud provider to understand the networking behavior of your cloud instance before you change any interface settings (failing to do so may end with your cloud instance being permanently unreachable).

With respect to the supported Charon-PAR emulated Ethernet configurations, please bear in mind the following when deploying Charon in a cloud environment:

  • If dedicating a host NIC to the emulator, the emulated system and the guest system must use the same MAC address and IP address on the interface that were assigned to the interface by the cloud provider. On the Linux level, the IP address must be removed from the interface. A dedicated NIC can be a RAW or MACVTAP configuration (MACVTAP support was added in Charon-PAR 3.0.9). For cloud settings, MACVTAP is recommended. Please refer to Ethernet Configuration Notes for more information.
  • If using a TAP interface, the bridge must be an internal bridge (not connected to the cloud LAN via a host NIC). The bridge must use a private address range different from the cloud LAN. The emulator can then communicate with the outside world via NAT, or with other other private networks via a routing configuration.

Red Hat and CentOS Version 7.x

Even though it is not mandatory, it is good practice to exclude the Ethernet interfaces that will be used by the guest system running on Charon-PAR from being managed by the NetworkManager. This can be done for physical NICs dedicated to the guest operating system, or for virtual bridge and TAP configurations (that allow the host and the guest to share a physical interface).

In a network environment controlled by the NetworkManager, the NetworkManager—if configured accordingly—will create and manage the interface configuration files. This may create conflicts with the requirements of the Charon-PAR guest system. If this is the case, a manual configuration should be considered.

There are several options to prevent such problems:

  • If the NetworkManager is not needed for other purposes, you can disable ( commands:  # systemctl stop NetworkManager; systemctl disable NetworkManager) and create the initial ifcfg-<interface> files in /etc/sysconfig/network-scripts/ manually.
  • If the NetworkManager is required for other purposes,
    • make sure it uses the ifcfg-files (plugins=ifcfg-rh must be enabled in section [main] of /etc/NetworkManager/NetworkManager.conf),
    • stop the NetworkManager (command: # systemctl stop NetworkManager),
    • exclude all interfaces required for the Charon-PAR guest(s) from NetworkManager control by adding the line NM_CONTROLLED=no to the respective ifcfg-<interface> file(s),
    • restart the NetworkManager (command: # systemctl start NetworkManager).

Example of a minimal ifcfg-<interface> file in /etc/sysconfig/network-scripts/:

NM_CONTROLLED=no
DEVICE=eth0
HWADDR=00:11:22:33:44:55
BOOTPROTO=none
ONBOOT=yes

Example of a minimal bridge configuration via ifcfg-<interface> files in /etc/sysconfig/network-scripts/:

Bridge definitionPhysical NICTAP interface

DEVICE=br_enp0s8
NAME=br_enp0s8
TYPE=Bridge
ONBOOT=yes
DEFROUTE=yes
STP=no
BOOTPROTO=none
IPADDR=10.0.0.1
NETMASK=255.255.255.0
GATEWAY=10.0.0.10
NM_CONTROLLED=no

DEVICE=enp0s8
NAME=enp0s8
TYPE=Ethernet
ONBOOT=yes
NM_CONTROLLED=no
BRIDGE=br_enp0s8

DEVICE=tap0_enp0s8
NAME=tap0_enp0s8
BRIDGE=br_enp0s8
TYPE=Tap
ONBOOT=yes
NM_CONTROLLED=no


Please refer to your host system’s man-pages for additional information about the NetworkManager.

There are other settings required to disable certain off-load functions on interfaces dedicated to a Charon-PAR guest system. These settings are configured in the emulator configuration file and described further down in this document.

Red Hat Version 8.x and Higher

Starting with CentOS/Red Hat/Oracle Linux 8.x, the network-scripts package has been deprecated and the bridge-utils package is no longer available in the standard repositories. Network management for these Linux versions has been changed to use the NetworkManager capabilities. Network management can be handled via the Gnome GUI, via nmcli commands, or via the nmtui utility. Please refer to the documentation of your Red Hat or CentOS version for more information.

In RHEL 8, the network-scripts package can be installed optionally to maintain the same network management methods as used in Linux version 7. In RHEL 9, the package is no longer available.

Example for Graphical User Interface

The following image shows a sample configuration that disables the IPv4 configuration for an interface that is to be dedicated to the emulator using the GNOME network settings.


Also, make sure to include the option Make available to other users in the Details tab:


You can use the following command to disable IPv6 for an interface (enp0s8 in the example):

# sysctl -w net.ipv6.conf.enp0s8.disable_ipv6=1

To make this setting permanent, add it to /etc/sysctl.conf.

Example for Non-Graphical User Interface

On a non-graphical interface, you can use the nmcli command-line utility to create a network connection as shown in the following example:

# nmcli conn add type ethernet autoconnect yes \
con-name <physical-int-name> \
ifname <pysical-int-name> ip4 0.0.0.0

Or you can use the nmtui text-based utility (separate RPM package). It provides a text-based configuration menu.

Please note: after changes via nmcli or nmtui you must restart the NetworkManager (systemctl restart NetworkManager.service).



© Stromasys, 1999-2024  - All the information is provided on the best effort basis, and might be changed anytime without notice. Information provided does not mean Stromasys commitment to any features described.