Migration Tools Installation
Overall Installation Steps
The high-level steps for installing and configuring the N2ACD migration tools are:
- Determine the server(s) that will supply the MIG logical component, bearing in mind the supported operating systems and minimum server requirements.
- Ensure the installation pre-requisites are met.
- Install the migration tools package.
- Perform any required post-installation steps.
- Update the migration tool configuration as desired.
Installation Pre-requisites
OS-specific Setup
Refer to the specific Red Hat or Debian instructions for any pre-requisites as required.
Apache 2
Apache 2 must be installed prior to installing the N2ACD migration tools package. The package to install will depend on your OS type:
RHEL 8 | Other RPM-based Systems | DEB-based Systems |
---|---|---|
sudo dnf install httpd |
sudo yum install httpd |
sudo apt-get install apache2 |
The N2ACD migration tools package expects that the relevant Apache 2 configuration directory exists. Again, this varies depending on your OS type:
RPM-based Systems | DEB-based Systems |
---|---|
/etc/httpd |
/etc/apache2 |
Finally, the apachectl
program must exist (it is installed as part of the Apache 2 package) and Apache must be running.
Perl
The N2ACD MIG node requires several Perl packages to be available prior to installation. The package names may vary depending on your OS type:
RPM-based Systems | DEB-based Systems |
---|---|
perl >= 1:5.12 perl(Carp::Always) perl(Clone) perl(DBI) perl(Data::Dumper) perl(Digest::MD5) perl(File::Basename) perl(Getopt::Long) perl(IO::Handle) perl(JSON) perl(POSIX) perl(Storable) perl(Switch) perl(Time::HiRes) perl(Time::Local) perl(XML::LibXML) perl(base) perl(lib) perl(strict) perl(warnings) |
perl >= 5.12 perl-base perl-modules libcarp-always-perl libclone-perl libdbi-perl libjson-perl libswitch-perl libxml-libxml-perl |
For each of these packages (or with all as one command), execute the instructions specific to your operating system:
RHEL 8 | Other RPM-based Systems | DEB-based Systems |
---|---|---|
sudo dnf install <package(s)> |
sudo yum install <package(s)> |
sudo apt-get install <package(s)> |
Jarvis
The N-Squared application Jarvis must be installed. Follow the installation steps for this, noting any prerequisites.
Installation Steps
Follow the appropriate installation steps depending on your installation sources.
From N-Squared Repository
Execute the instructions specific to your operating system:
RHEL 8 | Other RPM-based Systems | DEB-based Systems |
---|---|---|
sudo dnf install n2acd-mig |
sudo yum install n2acd-mig |
sudo apt-get install n2acd-mig |
As Manual Installation
Transfer the provided package file to the target node, then follow the instructions specific to your operating system.
Execute (adjusting as appropriate for package location and version details) the following:
RPM-based Systems | DEB-based Systems |
---|---|
sudo rpm -Uvh /path/to/n2acd-mig-M.m.p-b.noarch.rpm |
sudo dpkg -i /path/to/n2acd-mig_M.m.p-b_all.deb |
Post-Installation Steps
Database Integration
Oracle Database Drivers
If migrating to N2ACD from an Oracle database, the Oracle-provided client packages must be installed.
Follow the Oracle-provided installation instructions to install your preferred version of the following packages:
- Basic Package (
*instantclient-basic*
) - SQL*Plus Package (
*instantclient-sqlplus*
) - SDK Package (
*instantclient-devel*
)
For RPM-based systems, RPM packages are provided and recommended. For DEB-based systems, third-party tools such as
alien
may be used to convert the RPM packages.
NCC Migration
When migrating to N2ACD from the Oracle NCC platform, some configuration will have to be changed in order to connect to the incumbent platform.
To set these values, in the file /usr/share/n2acd/migration/NCC/migrate.pl
, locate the following section:
# Site defaults.
my $ncc_dbconnect = 'dbi:Oracle:host=REPLACE_WITH_NCC_HOSTNAME;sid=SMF';
my $ncc_dbusername = 'smf';
my $ncc_dbpassword = 'REPLACE_WITH_NCC_DB_PASSWORD';
my $n2_dbconnect = 'dbi:Pg:dbname=n2in;host=REPLACE_WITH_N2ACD_DB_HOSTNAME;port=REPLACE_WITH_N2ACD_DB_PORT;';
my $n2_dbusername = 'n2acd_owner';
my $n2_dbpassword = 'REPLACE_WITH_N2ACD_DB_PASSWORD';
my $migration_user = 'Migration';
my $top_level_customer_name = 'Service Provider';
Replace the sentinel values as follows:
REPLACE_WITH_NCC_HOSTNAME
must be updated to the address of the primary NCC database node to connect to.REPLACE_WITH_NCC_DB_PASSWORD
must be updated to thesmf
database user’s password on the NCC platform.REPLACE_WITH_N2ACD_DB_HOSTNAME
must be updated to the address of the primary N2ACD database node (or proxy) to connect to.REPLACE_WITH_N2ACD_DB_PORT
must be updated to the listening port configured for the primary N2ACD database node (or proxy).REPLACE_WITH_DB_PASSWORD
must be updated to then2acd_owner
database user’s password, as created during database preparation.
In the same file, locate the following section:
# N2ACD/NCC defaults.
my $migration_user = 'Migration';
my $top_level_customer_name = 'Service Provider';
my $empty_fnrs_name = 'Nothing'; # N2ACD's default FNRS for new customers, owned by the top-level customer.
my $full_fnrs_name = 'Full'; # NCC's full feature set name.
These default values may be updated as required:
Migration
is the username that is added to each migrated record as the last change and creation user. This does not need to be an actual N2ACD database user.Service Provider
is the name of the root-level N2ACD service provider that all migrated customers will belong to.Nothing
is the name of the default feature node restriction set for new (i.e. non-migrated) customers who are owned by the root-level N2ACD service provider. As part of migration, this set will be created but will have no nodes added to it.Full
is the name of the NCC feature set with access to all nodes. This will be migrated and translated to N2ACD.
Firewall
The firewall (if any) on the migration tools node must be updated to allow:
- Outbound database requests to the platform to migrate from.
- Outbound database requests to the DB node(s).
The exact commands to do this will depend both on the firewall on your platform and also which port(s) are in use. For
example, to allow the default Oracle and PostgreSQL ports when using firewalld
, the commands might be:
firewall-cmd --zone=public --add-port=1521/tcp --permanent
firewall-cmd --zone=public --add-port=5432/tcp --permanent
service firewalld restart