Toolpack prerequisite CentOS7 A

From TBwiki
(Difference between revisions)
Jump to: navigation, search
(Initial page for Centos7 pre-requisite)
 
(adding missing dependency on libaio-devel)
 
(62 intermediate revisions by 5 users not shown)
Line 1: Line 1:
This page shows the Toolpack 2-8 prerequisites for CentOS 7.
+
'''<big>Applies to version(s) v2.8 to v2.9</big>'''
 
+
{{DISPLAYTITLE:Toolpack Prerequisites for CentOS 7}}
 
<span style="color:#B22222">
 
<span style="color:#B22222">
''WARNING'': The host MUST have CentOS 7 installed.  
+
''WARNING'': The host MUST have been installed with the CentOS 7 DVD/ISO pointed in this procedure.  
 
</span>  
 
</span>  
  
 
<span style="color:#B22222">
 
<span style="color:#B22222">
''WARNING'': This procedure requires internet access and a DNS configured on your unit.
+
''WARNING'': The host MUST have been installed using the "Minimal" package set within the CentOS installation wizard.
 
</span>  
 
</span>  
  
== Stop toolpack system (if it is running)  ==
+
== Install the base CentOS 7 server ==
  
  tbtoolpack stop
+
Download the following DVD image:
 +
  http://download.distribution.telcobridges.com/3rdparty/prerequisite/bin/centos/CentOS-7.0-1406-x86_64-DVD.iso
  
== TelcoBridges repository  ==
+
Press Enter to choose the graphical installation:
 +
* Enable the ethernet interface and set the hostname (make sure it is not localhost.localdomain)
 +
* Select the "Minimal" install package
  
Add TelcoBridges repository file
+
=== Configure network connection ===
 +
If the IP interface was not configured and enabled during installation, it can be configure with the following command from a console connection or a monitor/keyboard connected to the server.
  
  vim /etc/yum.repos.d/TB-Base.repo
+
To list the ethernet card installed on your machine:
 +
  nmcli d
 +
 
 +
If your device shows the STATE as "disconnect", start the '''Network manager''' by typing:
 +
nmtui
 +
 
 +
* Select "Edit a connection" and press Enter
 +
* Select your network interface, select "Edit" (use arrows to change options), press Enter
 +
* Set IPv4 static address or choose “Automatic” (for DHCP) in IPv4 CONFIGURATION and check "Automatically connect" check box.
 +
* Select "Quit", press Enter
 +
 
 +
service network restart
 +
 
 +
Check your ip interface using:
 +
ip addr
 +
 
 +
=== Add base packages  ===
 +
To continue installation, you need to download a few packages not provided by the minimal installation:
 +
 
 +
  yum install net-tools wget
 +
 
 +
== Configure TelcoBridges repository  ==
 +
 
 +
=== Online repository procedure ===
 +
This procedure requires internet access and a DNS configured on your unit
 +
 
 +
==== Add TelcoBridges repository file ====
 +
 
 +
vi /etc/yum.repos.d/TB-Base.repo
  
 
Paste the following information in that file:  
 
Paste the following information in that file:  
Line 32: Line 64:
 
  baseurl=http://repo.telcobridges.com/centos/7/os/$basearch/
 
  baseurl=http://repo.telcobridges.com/centos/7/os/$basearch/
 
  gpgcheck=1
 
  gpgcheck=1
  gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
+
  gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-TB7
  
== Get TelcoBridges repository key ==
+
==== Get TelcoBridges repository key ====
  
 
  cd /etc/pki/rpm-gpg/
 
  cd /etc/pki/rpm-gpg/
 
  wget http://repo.telcobridges.com/centos/7/os/x86_64/RPM-GPG-KEY-TB7
 
  wget http://repo.telcobridges.com/centos/7/os/x86_64/RPM-GPG-KEY-TB7
  
== CentOS update  ==
+
=== Offline repository procedure ===
 +
This procedure '''does not''' requires internet access.
  
Update your system to CentOS 7
+
==== Install TelcoBridges repository locally ====
  
  yum clean metadata
+
Download the .iso image of the repository
 +
http://repo.telcobridges.com/centos/7/isos/x86_64/tb_centos7_x86_64_repo.iso
 +
 
 +
* Upload this .iso file to the "/root" directory of the server with scp or a SFTP tool like [http://filezilla-project.org/ FileZilla]
 +
* Mount the .iso file on your server
 +
mkdir -p /repo/centos/7
 +
mount -t iso9660 -o loop /root/tb_centos7_x86_64_repo.iso /repo/centos/7
 +
 
 +
Add the mount point permanently to the system to make it stay after a reboot.
 +
# cp /etc/fstab /etc/fstab.bak
 +
# echo "/root/tb_centos7_x86_64_repo.iso /repo/centos/7 iso9660 loop 0 0" >> /etc/fstab
 +
 
 +
==== Add TelcoBridges repository file ====
 +
 
 +
vim /etc/yum.repos.d/TB-Base.repo
 +
 
 +
Paste the following information in that file:
 +
 
 +
# TelcoBridges-Base.repo
 +
#
 +
# This repository is using TelcoBridges frozen version of CentOS
 +
# to help client installing the required version of the
 +
# applications required to run Toolpack
 +
#
 +
 +
[tb-base]
 +
name=TelcoBridges-$releasever - Base
 +
baseurl=file:///repo/centos/7/os/$basearch/
 +
gpgcheck=1
 +
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-TB7
 +
 
 +
==== Get TelcoBridges repository key ====
 +
 
 +
cd /etc/pki/rpm-gpg/
 +
cp /repo/centos/7/RPM-GPG-KEY-TB7 .
 +
 
 +
== Update CentOS ==
 +
=== Disable base CentOS repositories  ===
 +
 
 +
Edit the Centos repository configuration file
 +
 
 +
vi /etc/yum.repos.d/CentOS-Base.repo
 +
 
 +
Disable all repositories in that file.  Example:
 +
 
 +
[base]
 +
'''enabled=0'''
 +
name=CentOS-$releasever - Base
 +
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=os
 +
#baseurl=http://mirror.centos.org/centos/$releasever/os/$basearch/
 +
gpgcheck=1
 +
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
 +
 +
#released updates
 +
[updates]
 +
'''enabled=0'''
 +
name=CentOS-$releasever - Updates
 +
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=updates
 +
#baseurl=http://mirror.centos.org/centos/$releasever/updates/$basearch/
 +
gpgcheck=1
 +
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
 +
 +
#additional packages that may be useful
 +
[extras]
 +
'''enabled=0'''
 +
name=CentOS-$releasever - Extras
 +
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=extras
 +
#baseurl=http://mirror.centos.org/centos/$releasever/extras/$basearch/
 +
gpgcheck=1
 +
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
 +
 +
#additional packages that extend functionality of existing packages
 +
[centosplus]
 +
name=CentOS-$releasever - Plus
 +
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=centosplus
 +
#baseurl=http://mirror.centos.org/centos/$releasever/centosplus/$basearch/
 +
gpgcheck=1
 +
'''enabled=0'''
 +
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
 +
 
 +
=== Package update  ===
 +
 
 +
Remove conflicting packages with TelcoBridges repository part of the original DVD
 +
 +
yum remove NetworkManager xfsprogs
 +
 
 +
Update your system to latest packages from TelcoBridges repository
 +
 +
  yum clean all
 
  yum update
 
  yum update
  
 +
If there was a kernel update, you need to reboot the machine to activate it:
  
<!--
+
shutdown -r now
  
 
=== Reply to ARP only on local interfaces ===
 
=== Reply to ARP only on local interfaces ===
Line 58: Line 180:
 
Then restart network interfaces using the following command:
 
Then restart network interfaces using the following command:
  
   /etc/init.d/network restart
+
   service network restart
  
 
=== Disabling SELinux ===
 
=== Disabling SELinux ===
Line 67: Line 189:
  
 
If SELinux is enable, see the [[SELinux_management|Disabling SELinux]] article to disable it.
 
If SELinux is enable, see the [[SELinux_management|Disabling SELinux]] article to disable it.
 +
 +
=== Disabling Firewalld ===
 +
 +
systemctl mask firewalld
 +
systemctl stop firewalld
  
 
== Install Toolpack Prerequisites  ==
 
== Install Toolpack Prerequisites  ==
  
When asked to 'Importing GPG key', answer yes.  
+
Then, install Toolpack set of pre-requisite packages.  When asked to 'Importing GPG key', answer yes.  
  
 
  yum groupinstall Toolpack-Prerequisites
 
  yum groupinstall Toolpack-Prerequisites
  
==== Possible Dependencies Issue ====
+
=== Configure ODBC ===
If you meet an issue which blocks the installation with error that is related to "dovecot". Do the following and retry the "groupinstall" command to restart installation.
+
 
+
  yum remove dovecot
+
 
+
=== Install Gem ===
+
 
+
  wget http://download.distribution.telcobridges.com/3rdparty/prerequisite/bin/linux/bundler-1.2.3.gem
+
gem install --local ./bundler-1.2.3.gem
+
 
+
wget http://download.distribution.telcobridges.com/3rdparty/prerequisite/bin/linux/json-1.7.7.gem
+
gem install --local ./json-1.7.7.gem
+
 
+
== Apply kernel patches (if any)  ==
+
 
+
shutdown -r now
+
  
Once rebooted, be sure that Toolpack system is stopped before manipulating MySQL.
+
Be sure that Toolpack system is stopped before manipulating MySQL.
  
 
  tbtoolpack stop
 
  tbtoolpack stop
  
 
+
  vi /etc/odbcinst.ini
=== Configure ODBC ===
+
 
+
vim /etc/odbcinst.ini
+
  
 
Remove the '#' in front of each lines of the [MySQL] section Modify the 'Driver' line to set the correct driver  
 
Remove the '#' in front of each lines of the [MySQL] section Modify the 'Driver' line to set the correct driver  
  
Example for 32 bits system:  
+
<br> Example:  
 
+
 
  [MySQL]
 
  [MySQL]
 
  Description    = ODBC for MySQL
 
  Description    = ODBC for MySQL
 
  Driver          = /usr/lib/libmyodbc5.so
 
  Driver          = /usr/lib/libmyodbc5.so
 
  Setup          = /usr/lib/libodbcmyS.so
 
  Setup          = /usr/lib/libodbcmyS.so
  FileUsage      = 1
+
  Driver64        = /usr/lib64/libmyodbc5.so
 
+
  Setup64        = /usr/lib64/libodbcmyS.so
<br> Example for 64 bits system:
+
 
+
[MySQL]
+
Description    = ODBC for MySQL
+
Driver          = /usr/lib64/libmyodbc5.so
+
  Setup          = /usr/lib64/libodbcmyS.so
+
 
  FileUsage      = 1
 
  FileUsage      = 1
  
=== Configure MySQL ===
+
=== Configure MariaDB ===
  
  vim /etc/my.cnf
+
  vi /etc/my.cnf
  
 
Add these variables in the file under the [mysqld] section:  
 
Add these variables in the file under the [mysqld] section:  
  
*log-bin  
+
*log-bin=mariadb-bin
 +
*relay-log=mariadb-relay-bin
 +
*innodb_doublewrite=1
 +
*innodb_flush_log_at_trx_commit=1
 +
*sync_binlog=1
 +
*expire_logs_days=30
 +
*max_binlog_size=500M
 
*server-id=''[UniqueId]''  
 
*server-id=''[UniqueId]''  
 +
*innodb_stats_on_metadata=0
  
The server-id needs to be a non-zero unique value (do not use 0). If you use the host redundancy feature, the value needs to be different on each host .
 
  
<br> Add max_allowed_packet to increase the maximum size of binary blobs in the database. Make sure it is in the [mysqld] section AND [mysqldump] section
+
The server-id needs to be a non-zero unique value (do not use 0). If you use the host redundancy feature, the value '''MUST to be different''' on each host .  
 
+
  max_allowed_packet = 200MB
+
  
 
<br> Add below to remove database dependencies with DNS servers '''(**Applicable to TMG users only)'''  
 
<br> Add below to remove database dependencies with DNS servers '''(**Applicable to TMG users only)'''  
Line 137: Line 243:
 
   skip-name-resolve
 
   skip-name-resolve
  
<br> Add this to make sure the mysql logs don't get too big
+
<br> Add max_allowed_packet to increase the maximum size of binary blobs in the database. Make sure it is in the [mysqld] section AND [mysqldump] section
  
   expire_logs_days=60
+
   max_allowed_packet = 200MB
  
 
Example:  
 
Example:  
Line 146: Line 252:
 
  datadir=/var/lib/mysql
 
  datadir=/var/lib/mysql
 
  socket=/var/lib/mysql/mysql.sock
 
  socket=/var/lib/mysql/mysql.sock
  user=mysql
+
  symbolic-links=0
  log-bin
+
  log-bin=mariadb-bin
  server-id=5876
+
  server-id=1123476
 
  max_allowed_packet = 200MB
 
  max_allowed_packet = 200MB
expire_logs_days=60
 
 
# Default to using old password format for compatibility with mysql 3.x
 
# clients (those using the mysqlclient10 compatibility package).
 
old_passwords=1
 
 
# Disabling symbolic-links is recommended to prevent assorted security risks
 
symbolic-links=0
 
 
# Added so that problems with DNS servers don't cause problems with the mysql DB
 
# Note:&nbsp;This is applicable only if you are using a TMG
 
 
  skip-name-resolve
 
  skip-name-resolve
 +
expire_logs_days=30
 +
max_binlog_size=500M
 +
relay-log=mariadb-relay-bin
 +
innodb_doublewrite=1
 +
innodb_flush_log_at_trx_commit=1
 +
sync_binlog=1
 +
innodb_stats_on_metadata=0
 
   
 
   
  [mysqldump]
+
  [mysqldump]  
 
  max_allowed_packet = 200MB
 
  max_allowed_packet = 200MB
  
=== Start MySQL  ===
 
  
  service mysqld start
+
<br> Enable and start MariaDB
 +
 
 +
systemctl enable mariadb
 +
  systemctl start mariadb
  
=== Configure MySQL Users ===
+
<br> Use the MariaDB wizard to secure your server installation.  
 +
mysql_secure_installation
  
*Set password for the root user to 'tbdbpw' (TelcoBridges recommends that you set your own password for root)
+
You should:
*Enable root connection from localhost only
+
* Set new root password
*Create a tbdb user (required by Toolpack)
+
* Remove anonymous users
*Remove anonymous connection
+
* Disallow root login remotely
 +
* Remove test database and accesses
 +
* Reload privilege tables
  
 
Example:  
 
Example:  
  
  /usr/bin/mysqladmin -u root password tbdbpw
+
  mysql_secure_installation
 +
 +
Set root password? [Y/n] Y
 +
New password: AVeryStrongPassword
 +
Re-enter new password: AVeryStrongPassword
 +
Password updated successfully!
 +
Reloading privilege tables..
 +
  ... Success!
 +
Remove anonymous users? [Y/n] Y
 +
  ... Success!
 +
Disallow root login remotely? [Y/n] Y
 +
  ... Success!
 +
Remove test database and access to it? [Y/n] Y
 +
  - Dropping test database...
 +
  ... Success!
 +
  - Removing privileges on test database...
 +
  ... Success!
 +
Reload privilege tables now? [Y/n] Y
 +
  ... Success!
 +
Cleaning up...
 +
Thanks for using MariaDB!
  
  mysql -uroot -ptbdbpw
+
=== Restart the MariaDB service ===
  DELETE FROM mysql.user WHERE&nbsp;!(Host = 'localhost' AND User = 'root');
+
  systemctl restart mariadb
  FLUSH PRIVILEGES;
+
 
 +
=== Configure MariaDB user ===
 +
 
 +
* Create a tbdb user (required by Toolpack)  
 +
 
 +
Example:
 +
 
 +
  mysql -uroot -pAVeryStrongPassword
 +
 +
USE mysql;
 
  CREATE USER 'tbdb'@'%' IDENTIFIED BY 'tbdbpw';
 
  CREATE USER 'tbdb'@'%' IDENTIFIED BY 'tbdbpw';
 
  GRANT ALL PRIVILEGES ON *.* TO 'tbdb'@'%' IDENTIFIED BY 'tbdbpw';
 
  GRANT ALL PRIVILEGES ON *.* TO 'tbdb'@'%' IDENTIFIED BY 'tbdbpw';
 
  FLUSH PRIVILEGES;
 
  FLUSH PRIVILEGES;
 
  exit
 
  exit
 +
 +
=== Install additional ruby gems  ===
 +
wget http://download.distribution.telcobridges.com/3rdparty/prerequisite/bin/linux/bundler-1.2.3.gem
 +
gem install --local ./bundler-1.2.3.gem
 +
 +
wget http://download.distribution.telcobridges.com/3rdparty/prerequisite/bin/linux/json-1.7.7.gem
 +
gem install --local ./json-1.7.7.gem
  
 
== Toolpack Development Prerequisite (Optional)  ==
 
== Toolpack Development Prerequisite (Optional)  ==
Line 193: Line 336:
 
The Toolpack System Development prerequisite section is only required for customers that will develop their own application using the Toolpack API:  
 
The Toolpack System Development prerequisite section is only required for customers that will develop their own application using the Toolpack API:  
  
  yum install gcc-c++ libxml2-devel libpcap-devel unixODBC-devel libaio libaio-devel
+
  yum install svn libxml2-devel libpcap-devel unixODBC-devel libaio libaio-devel libcurl-devel.x86_64 ruby-devel.x86_64 libxslt systemd-devel libaio-devel
 +
 
 +
Be sure to add this environment variable by editing ~/.bashrc
 +
 
 +
vi ~/.bashrc
 +
Add the following line:
 +
    ---------
 +
    export DISTRO=centos7
 +
    ---------
 +
source ~/.bashrc
  
 
== Validation Guide (highly recommended)  ==
 
== Validation Guide (highly recommended)  ==
  
If you would like to verify your installation go to the [[Toolpack Installation:Validate Toolpack Installation 2-5|Toolpack Validation Guide]]  
+
If you would like to verify your installation go to the [[Toolpack_Installation:Validate_Toolpack_Installation_A|Toolpack Validation Guide]]  
  
<br>  
+
<br>
  
 
== Toolpack System installation  ==
 
== Toolpack System installation  ==
  
Now that the prerequisite are installed, now it is time to install the [[Toolpack installer 2-4|Toolpack system]]
+
Now that the prerequisite are installed, now it is time to install the [[Toolpack_installer_B|Toolpack system]]
 
+
-->
+

Latest revision as of 13:09, 4 April 2018

Applies to version(s) v2.8 to v2.9

WARNING: The host MUST have been installed with the CentOS 7 DVD/ISO pointed in this procedure.

WARNING: The host MUST have been installed using the "Minimal" package set within the CentOS installation wizard.

Contents

Install the base CentOS 7 server

Download the following DVD image:

http://download.distribution.telcobridges.com/3rdparty/prerequisite/bin/centos/CentOS-7.0-1406-x86_64-DVD.iso

Press Enter to choose the graphical installation:

  • Enable the ethernet interface and set the hostname (make sure it is not localhost.localdomain)
  • Select the "Minimal" install package

Configure network connection

If the IP interface was not configured and enabled during installation, it can be configure with the following command from a console connection or a monitor/keyboard connected to the server.

To list the ethernet card installed on your machine:

nmcli d

If your device shows the STATE as "disconnect", start the Network manager by typing:

nmtui
  • Select "Edit a connection" and press Enter
  • Select your network interface, select "Edit" (use arrows to change options), press Enter
  • Set IPv4 static address or choose “Automatic” (for DHCP) in IPv4 CONFIGURATION and check "Automatically connect" check box.
  • Select "Quit", press Enter
service network restart

Check your ip interface using:

ip addr

Add base packages

To continue installation, you need to download a few packages not provided by the minimal installation:

 yum install net-tools wget

Configure TelcoBridges repository

Online repository procedure

This procedure requires internet access and a DNS configured on your unit

Add TelcoBridges repository file

vi /etc/yum.repos.d/TB-Base.repo

Paste the following information in that file:

# TelcoBridges-Base.repo
#
# This repository is using TelcoBridges frozen version of CentOS
# to help client installing the required version of the
# applications required to run Toolpack
#

[tb-base]
name=TelcoBridges-$releasever - Base
baseurl=http://repo.telcobridges.com/centos/7/os/$basearch/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-TB7

Get TelcoBridges repository key

cd /etc/pki/rpm-gpg/
wget http://repo.telcobridges.com/centos/7/os/x86_64/RPM-GPG-KEY-TB7

Offline repository procedure

This procedure does not requires internet access.

Install TelcoBridges repository locally

Download the .iso image of the repository

http://repo.telcobridges.com/centos/7/isos/x86_64/tb_centos7_x86_64_repo.iso
  • Upload this .iso file to the "/root" directory of the server with scp or a SFTP tool like FileZilla
  • Mount the .iso file on your server
mkdir -p /repo/centos/7
mount -t iso9660 -o loop /root/tb_centos7_x86_64_repo.iso /repo/centos/7

Add the mount point permanently to the system to make it stay after a reboot.

# cp /etc/fstab /etc/fstab.bak
# echo "/root/tb_centos7_x86_64_repo.iso /repo/centos/7 iso9660 loop 0 0" >> /etc/fstab

Add TelcoBridges repository file

vim /etc/yum.repos.d/TB-Base.repo

Paste the following information in that file:

# TelcoBridges-Base.repo
#
# This repository is using TelcoBridges frozen version of CentOS
# to help client installing the required version of the
# applications required to run Toolpack
#

[tb-base]
name=TelcoBridges-$releasever - Base
baseurl=file:///repo/centos/7/os/$basearch/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-TB7

Get TelcoBridges repository key

cd /etc/pki/rpm-gpg/
cp /repo/centos/7/RPM-GPG-KEY-TB7 .

Update CentOS

Disable base CentOS repositories

Edit the Centos repository configuration file

vi /etc/yum.repos.d/CentOS-Base.repo

Disable all repositories in that file. Example:

[base]
enabled=0
name=CentOS-$releasever - Base
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=os
#baseurl=http://mirror.centos.org/centos/$releasever/os/$basearch/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7

#released updates
[updates]
enabled=0
name=CentOS-$releasever - Updates
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=updates
#baseurl=http://mirror.centos.org/centos/$releasever/updates/$basearch/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7

#additional packages that may be useful
[extras]
enabled=0
name=CentOS-$releasever - Extras
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=extras
#baseurl=http://mirror.centos.org/centos/$releasever/extras/$basearch/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7

#additional packages that extend functionality of existing packages
[centosplus]
name=CentOS-$releasever - Plus
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=centosplus
#baseurl=http://mirror.centos.org/centos/$releasever/centosplus/$basearch/
gpgcheck=1
enabled=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7

Package update

Remove conflicting packages with TelcoBridges repository part of the original DVD

yum remove NetworkManager xfsprogs

Update your system to latest packages from TelcoBridges repository

yum clean all
yum update

If there was a kernel update, you need to reboot the machine to activate it:

shutdown -r now

Reply to ARP only on local interfaces

Modify the file /etc/sysctl.conf to add the following lines:

 net.ipv4.conf.default.arp_ignore=1
 net.ipv4.conf.all.arp_ignore=1

Then restart network interfaces using the following command:

 service network restart

Disabling SELinux

Check SELinux status

 sestatus

If SELinux is enable, see the Disabling SELinux article to disable it.

Disabling Firewalld

systemctl mask firewalld
systemctl stop firewalld

Install Toolpack Prerequisites

Then, install Toolpack set of pre-requisite packages. When asked to 'Importing GPG key', answer yes.

yum groupinstall Toolpack-Prerequisites

Configure ODBC

Be sure that Toolpack system is stopped before manipulating MySQL.

tbtoolpack stop
vi /etc/odbcinst.ini

Remove the '#' in front of each lines of the [MySQL] section Modify the 'Driver' line to set the correct driver


Example:

[MySQL]
Description     = ODBC for MySQL
Driver          = /usr/lib/libmyodbc5.so
Setup           = /usr/lib/libodbcmyS.so
Driver64        = /usr/lib64/libmyodbc5.so
Setup64         = /usr/lib64/libodbcmyS.so
FileUsage       = 1

Configure MariaDB

vi /etc/my.cnf

Add these variables in the file under the [mysqld] section:

  • log-bin=mariadb-bin
  • relay-log=mariadb-relay-bin
  • innodb_doublewrite=1
  • innodb_flush_log_at_trx_commit=1
  • sync_binlog=1
  • expire_logs_days=30
  • max_binlog_size=500M
  • server-id=[UniqueId]
  • innodb_stats_on_metadata=0


The server-id needs to be a non-zero unique value (do not use 0). If you use the host redundancy feature, the value MUST to be different on each host .


Add below to remove database dependencies with DNS servers (**Applicable to TMG users only)

 skip-name-resolve


Add max_allowed_packet to increase the maximum size of binary blobs in the database. Make sure it is in the [mysqld] section AND [mysqldump] section

 max_allowed_packet = 200MB

Example:

[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
symbolic-links=0
log-bin=mariadb-bin
server-id=1123476
max_allowed_packet = 200MB
skip-name-resolve
expire_logs_days=30
max_binlog_size=500M
relay-log=mariadb-relay-bin
innodb_doublewrite=1
innodb_flush_log_at_trx_commit=1
sync_binlog=1
innodb_stats_on_metadata=0

[mysqldump] 
max_allowed_packet = 200MB



Enable and start MariaDB

systemctl enable mariadb
systemctl start mariadb


Use the MariaDB wizard to secure your server installation.

mysql_secure_installation

You should:

  • Set new root password
  • Remove anonymous users
  • Disallow root login remotely
  • Remove test database and accesses
  • Reload privilege tables

Example:

mysql_secure_installation

Set root password? [Y/n] Y
New password: AVeryStrongPassword
Re-enter new password: AVeryStrongPassword
Password updated successfully!
Reloading privilege tables..
 ... Success!
Remove anonymous users? [Y/n] Y
 ... Success!
Disallow root login remotely? [Y/n] Y
 ... Success!
Remove test database and access to it? [Y/n] Y
 - Dropping test database...
 ... Success!
 - Removing privileges on test database...
 ... Success!
Reload privilege tables now? [Y/n] Y
 ... Success!
Cleaning up...
Thanks for using MariaDB!

Restart the MariaDB service

systemctl restart mariadb

Configure MariaDB user

  • Create a tbdb user (required by Toolpack)

Example:

mysql -uroot -pAVeryStrongPassword

USE mysql;
CREATE USER 'tbdb'@'%' IDENTIFIED BY 'tbdbpw';
GRANT ALL PRIVILEGES ON *.* TO 'tbdb'@'%' IDENTIFIED BY 'tbdbpw';
FLUSH PRIVILEGES;
exit

Install additional ruby gems

wget http://download.distribution.telcobridges.com/3rdparty/prerequisite/bin/linux/bundler-1.2.3.gem
gem install --local ./bundler-1.2.3.gem
wget http://download.distribution.telcobridges.com/3rdparty/prerequisite/bin/linux/json-1.7.7.gem
gem install --local ./json-1.7.7.gem

Toolpack Development Prerequisite (Optional)

The Toolpack System Development prerequisite section is only required for customers that will develop their own application using the Toolpack API:

yum install svn libxml2-devel libpcap-devel unixODBC-devel libaio libaio-devel libcurl-devel.x86_64 ruby-devel.x86_64 libxslt systemd-devel libaio-devel

Be sure to add this environment variable by editing ~/.bashrc

vi ~/.bashrc
Add the following line:
   ---------
   export DISTRO=centos7
   ---------
source ~/.bashrc

Validation Guide (highly recommended)

If you would like to verify your installation go to the Toolpack Validation Guide


Toolpack System installation

Now that the prerequisite are installed, now it is time to install the Toolpack system

Personal tools