Product Documentation and Knowledge Base - HomeDocumentation


Charon-VAXCharon-AXPCharon-PDPCharon-SSPCharon-PAR

CHARON-VAX for Linux installation

Table of contents

Introduction

CHARON-VAX products are distributed in form of archive TAR.GZ files that contain RPM modules for different components. Generally it is recommended to install all the RPM modules, but it is possible to omit some RPMs if they are not needed.

CHARON installation consists of the following steps:

  • Host system checks (hardware and software) to ensure the host platform meets minimum CHARON-VAX installation requirements
  • Installation of any 3rd party material, for example, utilities required for CHARON-VAX
  • Extracting CHARON-VAX  RPM modules from the TAR.GZ archive, and their individual installation
  • Installation of CHARON-VAX license (hardware dongle or software license)
  • CHARON-VAX host system configuration. It assumes creating a specific user, network configuration etc.

Let's go through CHARON-VAX installation sequence step by step.

Back to Table of Contents

Hardware Requirements

Number of CPU cores

Each CHARON emulated CPU requires a corresponding physical core. So the total number of the host CPUs must exceed the number of emulated CPUs.


Below please find a table describing minimal and recommended number of CPUs required for each product:

CHARON-VAX model

Minimal number of CPU cores

Recommended number of CPU cores

VAX 6610

2

4

VAX 6620

3

4

VAX 6630

4

6

VAX 6640

6

8

VAX 6650

8

12

VAX 6660

8

12

Other models22

When starting, the CHARON-VAX software checks the available number of host CPU cores. Currently, this check is based on the maximum number of VAX CPUs that can be emulated, not on the number of the actually configured VAX CPUs. Therefore the number of host CPU cores recommended for the maximum number of emulated CPUs - as shown in the right column of the table above - must be available. If the available number of host CPU cores is below this number, CHARON-VAX will issue a warning message even if the requirements for the configured number of VAX CPUs are fulfilled. The CHARON-VAX software will work despite this warning if the requirements for the configured number of VAX CPUs are fulfilled.

Hyper-threading must be switched off completely. Disable hyper-threading in the BIOS settings of the physical host or, for a VMware virtual machine, edit the virtual machine properties, select the Resources tab then select Advanced CPU. Set the Hyper-threaded Core Sharing mode to None.

CPU type and speed

Since CHARON-VAX utilizes LAHF instruction in VAX CPU emulation please avoid usage of early AMD64 and Intel 64 CPUs in CHARON host system since they lack it. AMD introduced the instruction with their Athlon 64, Opteron and Turion 64 revision D processors in March 2005 while Intel introduced the instruction with the Pentium 4 G1 stepping in December 2005.

Concerning CPU speed the general recommendation is that higher CPU frequency is better since it allows better emulated VAX performance. The minimal recommendation is at least 3 GHz.

Operative memory

The minimum host memory size depends on the amount of VAX memory to be emulated and on the number of CHARON-VAX instances to be run on one host.
The minimum host memory is calculated according to the following formula:

The minimum host memory = (2Gb +  the amount of VAX memory emulated) per CHARON-VAX instance.

Maximum amount of VAX memory that can be created in the CHARON-VAX/66x0 products and supported by OpenVMS/VAX is 3584 Mb.
For details, see the memory size specification

Disk storage

When installed, CHARON-VAX takes approximately 50 MB of disk space for its files, not counting any virtual VAX disks/tapes (which appear as standard files).
When virtual VAX disks/tapes are used to represent VAX disk drives / magnetic tapes, the disk/tape image files have the same size as the equivalent VAX diskhardware, regardless of their degree of utilization. So the total amount of a disk space required for CHARON-VAX can be calculated as a sum of the disk/tape images sizes plus 50 MB plus space required for the normal host system.

Ethernet adapters

CHARON-VAX networking assumes dedicated host Ethernet adapters; their number must be equal to the emulated adapters to be configured in CHARON-VAX. One adapter (optionally) can be left to the host for TCP/IP networking etc. It is also possible to use virtual network interfaces, but in consideration of performance, it is recommended to use physical ones only.

In case of VMware-based CHARON host it is mandatory to use "E1000" virtual network adapter. "E1000E" adapters are not supported.

Back to Table of Contents

Software Requirements

  • Linux Red Hat Enterprise 7.0 and 7.1
  • Linux FedoraCore 20, 21, and 22
  • VMware ESXi 5.x and 6.0 (requires a supported Linux operating system on top of a ESXi virtual machine)

Back to Table of Contents

Host system preparation

The automatic installation of updates must be disabled.  Updates to the CHARON host must be done only in specific service maintenance periods established by the system administrator. Before applying new updates one must shutdown the operating system running on CHARON and stop all the running CHARON instances and services.

In case network-wide license (red dongle or software license) is going to be used, do the following:

  • On server side (where network license will reside): open port 1947 for both TCP and UDP
  • On clients side: open UDP ports 30000-65535
  • Both on server and client sides: setup default gateway

Please consult with your Linux User's Guide on details.

If stricter firewall rules are required, it is possible to open the ports 30000-65535 and 1947 only for the "/usr/sbin/hasplmd" daemon.

Back to Table of Contents

Before installation

  1. Login as the superuser ("root") on the host system. Because Sentinel HASP runtime relies on 32-bit compatibility libraries to run on Linux, the 32-bit compatibility libraries must be installed before continuing. If the emulator host has access to a package repository, either local or remote, use the following command:

    # yum install glibc.i686

    Sometimes it is not possible to use an online repository for the installation of 32-bit glibc package. In this case the following procedure should be followed:

    1. If you have a Linux distributibe CD-ROM, insert it into CD-ROM drive

    1.1. If auto-mount is not enabled, mount the CD-ROM. Example:

    # mount /dev/sr0 /mnt

    2. If you have an ISO image of the distribution CD, you can mount it using a loopback device:

    # mount /path/to/ISO-image.iso /mnt -o loop

    3. Switch to the directory containing the packages. This directory depends on your Linux distribution. Example:

    # cd /mnt/Packages/

    4. Locate the target "glibc.i686" package:

    # ls -la glibc-*i686.rpm

    5. Install the "glibc.i686" and the packages it depends on. Example:

    # rpm -i glibc-2.17-157.el7.i686.rpm nss-softokn-freebl-3.16.2.3-14.4.el7.i686.rpm

    6. If the above command reports additional unsatisfied dependencies, add the corresponding packages to the above command line.

    7. Umount the CD-ROM or ISO file if necessary:

    # umount /mnt
  2. Create a special directory for the CHARON-VAX distribution and copy the TAR.GZ files there. Set this directory as the default with a "cd" command as shown in the following example:

    # mkdir /charon_dist
    # cp /temp/charon-vax-4.7-17101.68704.fc20.tar.gz /charon_dist
    # cd /charon_dist

WARNING

  • If you plan to install CHARON-AXP on the same server, both products, CHARON-AXP and CHARON-VAX, will have to be the same build number
  • If you upgrade from a previous version of CHARON-VAX, please stop all running CHARON virtual machines and uninstall CHARON products before proceeding with the installation steps described below

Back to Table of Contents

Distribution preparation

  1. Extract the content of the distribution TAR.GZ files to the current directory:

    # tar -xvzf charon-vax-<VER>-<BN>.<VC>.<ZZ>.tar.gz

    where:

     

    Description

    VER

    Version of CHARON-VAX product, for example 4.7

    BN

    Build Number of CHARON-VAX product, for example 17101

    VC

    68704 - CHARON-VAX product vendor code

    ZZ

    CHARON-VAX target operating system identifier. For Fedora Core 20 'ZZ' value is 'fc20', for Red Hat Linux 7.1 the value is 'el71'

    Example:

    # tar -xvzf charon-vax-4.7-17101.68704.fc20.tar.gz 

    As result, a new directory "charon-vax-<VER>-<BN>.<VC>.<ZZ>" will be created.
     

  2. Switch to the directory, created by "tar" on the previous step:

    # cd charon-vax-<VER>-<BN>.<VC>.<ZZ>

    Example:

    # cd charon-vax-4.7-17101.68704.fc20

         

  3. The distribution directory contains the following RPM files with additional material, libraries and utilities:

    File name

    Description

    charon-vax-VER-BN.VC.ZZ.x86_64.rpmCHARON-VAX

    aksusbd-2.5-1.i386.rpm

    HASP Run-time

    charon-license-VER-BN.VC.ZZ.x86_64.rpm

    CHARON Libraries

    charon-utils-VER-BN.VC.ZZ.x86_64.rpm

    CHARON Utilities

    Example:

    ls
    aksusbd-2.5-1.i386.rpm
    charon-vax-4.7-17101.68704.fc20.x86_64.rpm
    charon-license-4.7-17101.68704.fc20.x86_64.rpm
    charon-utils-4.7-17101.68704.fc20.x86_64.rpm
     

    Back to Table of Contents

Installation

Issue the following command to install all the RPMs in the directory:

# yum install *.rpm

Enter "y" to agree to install all the listed packages.

Example:

Dependencies Resolved  

================================================================================ 
Package Arch Version Repository Size 
================================================================================ 
Installing: 
aksusbd i386 2.5-1 /aksusbd-2.5-1.i386 2.9 M 
charon-vax x86_64 4.7-17101 /charon-vax-4.7-17101.68704.fc20.x86_64 260 M 
charon-license 
x86_64 4.7-17101 /charon-license-4.7-17101.68704.fc20.x86_64 2.9 M 
charon-utils 
x86_64 4.7-17101 /charon-utils-4.7-17101.68704.fc20.x86_64 1.8 M 

Transaction Summary 
================================================================================ 
Install 4 Packages 

Total size: 267 M 
Installed size: 267 M 
Is this ok [y/d/N]y

Check that the installation process has completed successfully.

Example:

Downloading packages: 
Running transaction check 
Running transaction test 
Transaction test succeeded 
Running transaction (shutdown inhibited) 
Installing : aksusbd-2.5-1.i386 1/4 
Starting aksusbd (via systemctl): [ OK ] 
Installing : charon-utils-4.7-17101.x86_64 2/4 
ln -s '/usr/lib/systemd/system/ncu.service' '/etc/systemd/system/multi-user.target.wants/ncu.service' 
Installing : charon-license-4.7-17101.x86_64 3/4 
Installing : charon-vax-4.7-17101.x86_64 4/4 
Verifying : aksusbd-2.5-1.i386 1/4 
Verifying : charon-license-4.7-17101.x86_64 2/4 
Verifying : charon-vax-4.7-17101.x86_64 3/4 
Verifying : charon-utils-4.7-17101.x86_64 4/4 

Installed: 
aksusbd.i386 0:2.5-1 charon-vax.x86_64 0:4.7-17101 
charon-license.x86_64 0:4.7-17101 charon-utils.x86_64 0:4.7-17101 

Complete!

Re-login (as "root") to apply PATH settings or execute the following command:

# . /etc/profile.d/charon.sh

Note that Network Configuration Utility ("ncu") package has the following dependencies:

  • ethtool
  • bridge-utils
  • net-tools
  • iproute
  • NetworkManager

During "ncu" installation using "yum", these packages will be installed automatically if some of them are absent on the host system.

Back to Table of Contents

CHARON-VAX home directory

By default CHARON is installed in the "/opt/charon" directory. It has the following subdirectories:

Directory

Description

/bin

Contains all executables

/cfg

Contains templates of configuration files

/doc

Contains documentation

/log

Contains log files

/disks

Contains disk containers

/drivers

Contains CHARON drivers

The most important at this stage is the "/cfg" directory since it contains template configuration files with examples of typical configuration parameters and commentaries. We will pay our attention to this subject in the next chapter.

Back to Table of Contents

Specific user account creation

Create a specific account "charon" for running CHARON:

# useradd -G disk,tape,cdrom,dialout,lock -c "Charon User" -m charon
# passwd charon

Any existing user can also be used to run CHARON. In this case issue the following command to include this existing user to specific groups:

# usermod -G disk,tape,cdrom,dialout,lock -g <user name> <user name>

Example:

# usermod -G disk,tape,cdrom,dialout,lock -g tommy tommy

The specific account created above does not allow to use virtual consoles "/dev/tty<N>" as CHARON consoles. If you plan to map CHARON console to "/dev/tty<N>" use only "root" account for CHARON running.

Back to Table of Contents

License installation

Regular HASP USB dongle

If CHARON license represents a regular USB dongle just connect it to the host USB port.

If CHARON host is accessed remotely please note that regular HASP licenses cannot be displayed and used in this case. As workaround it is possible to install CHARON as daemon. This procedure will be described later.

Network HASP USB dongle

If CHARON license is a network license (red USB dongle) it is possible either to connect it to the host USB port (to use it locally providing it to other hosts on local network in the same time) or to install it on some local network "server" for remote access from this particular host.

In case of remote usage:

  • Copy aksusbd-2.5-1.i386.rpm and charon-license-4.7-<build>.68704.<OS identifier>.x86_64.rpm files (see above) to the server to some directory, for example "/temp"
  • Login as "root" to the server
  • Switch to that directory
  • Install the copied file using "yum"
    Example:

    # cd /temp
    # yum install aksusbd* charon-license-*
  • Connect the network HASP dongle to the server USB port.


Network HASP (red dongles) licenses have no restrictions with remote access

Software license

If CHARON license is a software license (SL) it is required to install it on the host using the following procedure:

  1. Run hasp_srm_view utility in the following way to get the host fingerprint file ("my_host.c2v" in this example):

    # hasp_srm_view -fgp my_host.c2v
  2. Send the resulting file to STROMASYS. In return STROMASYS will provide you with a "*.v2c" file, for example "your_license.v2c"
  3. Copy the received "your_license.v2c" file to CHARON host to any folder then invoke the system default web browser and enter URL http://localhost:1947 to display "Sentinel Admin Control Center" (ACC) web interface. This interface allows you to view and manage CHARON licenses.
  4. In the ACC use the following menu items: first "Browse" for the "your_license.v2c" file and then secondly "Apply File"
  5. Ensure that the software license appears now in the "Sentinel Keys" menu of the ACC.


Alternatively it is also possible to use "hasp_update" utility for applying ".v2c" file.

 Network-wide software licenses have no restrictions with remote access, whereas regular software licenses cannot be displayed and used in this case

So called "Provisional" (demo) license does not require collecting fingerprint. For its installation proceed right with the action (4) of the sequence above

Back to Table of Contents

License validity verification

Check available CHARON license validity. To do that invoke the hasp_srm_view utility to make sure that CHARON license is visible and looks Ok:

  • Text of the license is displayed correctly by the hasp_srm_view utility, no error messages are shown
  • Content of the license looks correct. For example license number, major and minor versions, minimum and maximum build numbers, CHARON-VAX products and allowed hardware (CHARON-VAX models) should be checked. More details on the license content can be found in the CHARON-VAX Licensing chapter of this Guide.


Example:

# hasp_srm_view 

License Manager running at host: dlao.msc.masq 
License Manager IP address: 192.168.1.129 

HASP Net key detected 

The Physical KeyId: 1422726238 
CHARON Sentinel HASP License key section 
Reading 4032 bytes 

The License Number: 000.msc.sanity.tests 
The License KeyId: 1422726238 
The Master KeyId: 827774524 
Release date: 21-SEP-2015 
Release time: 15:15:15 
Update number: 1 
End User name: MSC 
Purchasing Customer name: STROMASYS
... 

Reminder: If CHARON host is accessed remotely please note that regular HASP licenses cannot be displayed and used in this case. As workaround it is possible to install CHARON as daemon. This procedure will be described later.


Troubleshooting

If CHARON license content cannot be displayed by hasp_srm_view utility or it is incorrect, check the license is available and correctly used:

  1. Invoke the system default web browser and enter URL http://localhost:1947 to display "Sentinel Admin Control Center" (ACC) web interface.
  2. Click on "Sentinel Keys" link to open up "Sentinel Keys Section" page
  3. Make sure that one and only one CHARON HASP or SL license is present.

If no license is displayed make sure that all the recommendations above about remote access to the host are fulfilled (if remote access takes place), HASP USB key is not broken and its LED indicator is lit (meaning that it is used by the host).

If only one License key / SL is seen and its content is incorrect please contact STROMASYS as soon as possible.

If several License keys / SLs are displayed remove all of them and leave only the one provided by STROMASYS for just installed version of CHARON.

Removing licenses can be done by physical disconnection of the corresponding USB HASP keys from CHARON host and physical disconnection of the network HASP keys from all hosts on local network (or by disabling remote access to network licenses from CHARON host - see detailed explanations below). Software licenses can also be uninstalled with hasp_srm_view utility "-tfr" option in the following way:

# hasp_srm_view -tfr <Key ID>

Example:

# hasp_srm_view -tfr 12345678

It is also possible to disable access to network licenses if just a local license must be used: Click on "Configuration" link to open up "Configuration for Sentinel Manager" page. Uncheck "Allow Access to Remote Licenses" and "Broadcast Search for Remote Licenses" checkboxes from the "Access to Remote License Managers" tab, then press "Submit" button to apply changes.


It is also possible to leave several licenses available to CHARON-VAX at the same time, but in this case you have to specify in CHARON-VAX configuration file what license must be used.

Example:

set session license_key_id[0]=1877752571

It is also possible to have one "main" and one "backup" licence in case if the main license becomes not accessible:

set session license_key_id[0]=1877752571 license_key_id[1]=354850588

CHARON-VAX checks its licences from time to time starting from main license and if it is not accessible it tries to access backup license

Back to Table of Contents

Network configuration

In most cases it is assumed that CHARON will use network. In this case some important steps must be performed, since CHARON requires a dedicated network interface cleared from any other protocols including TCP/IP.

Two ways of network configuration are possible:

  • Manual
  • With a help of "ncu" utility

The second way is a way simplier, so use manual approach only in absence of "ncu" utility or impossibility to use it.

Configuration with NCU utility

Login as root. Type "ncu" and press Enter. The following menu will appear:

# ncu
CHARON Network Configuration Utility, STROMASYS (c) 2015 Version 1.5 

Interfaces Dedicated to State
---------- ------------ ------------
eth0       host         connected to host
eth1       host         connected from host
lo         host         unmanaged from host

==================================================================
bridge name bridge id STP enabled interfaces

select action:
1 - Dedicate to CHARON
2 - Release to host
3 - Create Bridge with TAPs
4 - Remove Bridge
5 - Print status
6 - Exit
:> 1

The utility lists available network interfaces (both physical and virtual) and indicates whether they are dedicated to the host or to CHARON and whether they are currently in use by host operating system.

"ncu" offers several options:

  • Dedicate interface to CHARON (press "1")
  • Release interface to host (press "2")
  • Create a bridge between a chosen physical network interface and the Linux virtual network and create a number of virtual network interfaces (press "3")
  • Remove the Linux virtual network and all the created virtual network interfaces (press "4")
  • Print status (press "5") - use it to display status of network interfaces and the menu shown above
  • Exit (press "6")

In the example above we see 2 network interfaces - "eth0" and "eth1", both of them are dedicated to host, but host uses only the interface "eth0".

Let's dedicate the interface "eth1" to CHARON-VAX.

Enter "1", then type "eth1" and press Enter:

Specify the interface to dedicate to CHARON:eth1
Turning off offloading for eth1.. Please wait

select action:
1 - Dedicate to CHARON
2 - Release to host
3 - Create Bridge with TAPs
4 - Remove Bridge
5 - Print status
6 - Exit
:> 5

Now the interface "eth1" is dedicated to CHARON-VAX:

Interfaces Dedicated to State
---------- ------------ ------------
eth0       host         connected to host
eth1       CHARON       disconnected from host
lo         host         unmanaged from host

==================================================================
bridge name bridge id STP enabled interfaces

select action:
1 - Dedicate to CHARON
2 - Release to host
3 - Create Bridge with TAPs
4 - Remove Bridge
5 - Print status
6 - Exit

Enter "6" to return to console prompt.

Now "eth1" can be used by CHARON-VAX.

Manual Configuration

Choosing network interface

To choose an interface to be used for CHARON networking do the following:

# ifconfig
eth0 Link encap:Ethernet HWaddr 00:60:52:0A:A9:1E
... 
eth1 Link encap:Ethernet HWaddr 00:C0:26:60:FB:15 
...
eth2 Link encap:Ethernet HWaddr 00:1A:92:E1:3F:7F

Choose some interface to be used by CHARON, for example "eth1"

Designation of network interface to CHARON

To designate the chosen interface to CHARON open up the file "/etc/sysconfig/network-scripts/ifcfg-ethN" (where N is the number of the interface to be used for CHARON, in our case it is "1") and make sure that all the IP-setup related parameters are removed. Basically the file must look like this ("eth1" is used as example):

DEVICE="eth1"
HWADDR="00:06:2B:00:6A:87"
NM_CONTROLLED="no"
ONBOOT="no"

Switching off the offload parameters

A first step is to find what additional parameters are currently set to "on" on the host network adapter to be used by CHARON. To do that issue:

# ethtool -k <device>

Example:

# ethtool -k eth1
Offload parameters for eth1:
rx-checksumming: on
tx-checksumming: on
scatter-gather: on
tcp-segmentation-offload: off
udp-fragmentation-offload: off
generic-segmentation-offload: on
generic-receive-offload: off
large-receive-offload: off

Then use ethtool to switch off all the offload parameters:

# ethtool -K <device> <parameter> off

Example:

# ethtool -k eth1
Offload parameters for eth1:
rx-checksumming: on
tx-checksumming: on
scatter-gather: on
tcp-segmentation-offload: off
udp-fragmentation-offload: off
generic-segmentation-offload: on
generic-receive-offload: off
large-receive-offload: off

For the example above let's create a temporary file containing the commands to be run on system startup, since the offload parameters must be switched off on each reboot:

ethtool -K eth1 rx off
ethtool -K eth1 tx off
ethtool -K eth1 sg off
ethtool -K eth1 gso off
ethtool -K eth1 gro off
 

Let's suppose that the name of the file is "offload_off_eth1.txt". In this case running it on system startup can be done in the following ways:

On Red Hat Linux:

cat offload_off_eth1.txt >> /etc/rc.d/rc.local

On Fedora Core:

echo '#!/usr/bin/bash' > /etc/rc.d/rc.local       (warning) Do not use double quotes, use single ones
# cat offload_off_eth1.txt >> /etc/rc.d/rc.local
# chmod 755 /etc/rc.d/rc.local 
# ln -s /usr/lib/systemd/system/rc-local.service /etc/systemd/system/rc-local.service 
# systemctl daemon-reload

Back to Table of Contents

Final steps

  • Reboot the host system to apply the offload parameters switching off
  • Login as user "charon"

Back to Table of Contents

Upgrade to new version

To upgrade already installed CHARON-VAX kit to more recent one:

  1. Ensure your license allows you to upgrade. If not, please generate a C2V file and send it to STROMASYS for update. See CHARON-VAX for Linux utilities - 'hasp_srm_view' utility
  2. Prepare the new kit RPM files as it is described in "Before Installation" and "Distribution preparation" sections.
  3. Stop all running CHARON-VAX instances.
  4. Make sure that no template files (i.e. "mv3k6.cfg.template") have been used for your specific configuration. Otherwise copy those files to some save place.
  5. Login as "root" user.
  6. Remove the old CHARON-VAX version as described in the "CHARON-VAX for Linux deinstallation" chapter.
  7. Proceed with the same instructions on the new kit installation as described in "Installation" section.
  8. Install the license for the new CHARON-VAX it as described in "License installation" section.

  9. Start all the CHARON-VAX services stopped on the step (3).

Back to Table of Contents



© 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.