Installing cfxPulse Collector

For Ingesting Data and Metrics from Remote On-Premises or Cloud Environments
Remote on-premises or cloud environments can send performance data to SaaS Portal using Pulse collector that can reside within customer environment and securely connect to assets/devices, collect metrics and pass it back to SaaS portal in a secure fashion.
The advantage with this approach is that customer's devices remain fully isolated and collector will do the job of securely communicating with devices, collecting metrics and passing it back to SaaS portal.
cfxPulse to Remote Site Connectivity
For Hybrid IT Monitor (cfxPulse), follow the below instructions to install and configure cfxPulse collector
Note: Throughout this document the terms "Gateway Agent", "Gateway" or "Collector" are used interchangeably and indicate the same and refer to the piece of CloudFabrix software mentioned above.

I. Prerequisites

Note: Internet access is required from the system where collector will be installed. This is required in order to download software modules/binaries mentioned in this document.
Note: Customer Network/Firewall should allow HTTPS/TCP port 443 access for resources/kafka communication.
Note: Currently cfxPulse Collector will not be able to connect to CloudFabrix SaaS portal over HTTP proxy.
Note : Baremetal or VM OS needs to be in sync with NTP Server

a. Prerequisites Summary

CentOS 7.x
RHEL 7.6
Debian 9.x
Ubuntu 18.0.4 LTS
> 18.0.0
> 2.7.x base
pip ,wget
System Resources
Memory: 16GB
Disk space: /opt: 50GB+
Docker Space - 100GB+

b. Docker Version > 18.0.0

Refer to the following links for installing Docker on your Linux OS

c. Python 2.7.x base

On Ubuntu/Debian flavors, use the following command to install Python 2.7
sudo apt-get install python2.7
On CentOS flavors, use the following command to install Python 2.7
sudo yum install python2.7

d. PIP Installation

curl -fsSL | sudo python
If the above command gives error, please use the following command for Ubuntu/Debian
sudo apt install python-pip

e. Command to set NTP sync on CentOS

sudo ntpdate -q

f. Command to set NTP sync on Ubuntu

sudo apt-get install ntp
sudo apt-get install ntpdate
sudo systemctl restart ntp
sudo ntpdate

g. Ports

Following udp ports needs to be open in Gateway firewall for TFTP, Syslog and trap protowrap
a) 69/udp
b) 162/udp
c) and 514/udp
firewall-cmd --permanent --add-port=69/udp
firewall-cmd --permanent --add-port=162/udp
firewall-cmd --permanent --add-port=514/udp
firewall-cmd --reload

i. Commands to check pre-requisites

Following are few helpful commands verify prerequisites and perform some common operations
i) Check docker status
systemctl status docker
To start docker service if docker is not running
systemctl start docker
ii) Check Python version
python -V
iii) Verify disk size
df -kh

j. Make sure setuptools python package is latest

Check python setuptools are of latest version. You can check setuptools version by using the following commands.
pip install --upgrade pip setuptools
python -c "import sys; import setuptools; print(setuptools.version.__version__)"
Above command shouldn't result in an error and should return value of at least "41.1.0" or above

k. Check docker network connection

Docker should have internet connectivity with ipv4 where collector is getting installed. As example
docker run -it centos:centos7 bash
Then check ping to or any other internet address. If this ping fails, then mostly docker networking is not enabled

II. Download CFX Collector

Download cfxPulseCollector or cfxPulse Gateway binary from SaaS Portal Resources and copy to the system where collector will be installed. This will binary will contain bits required to install CFX Pulse Collector.

III. Download agent.conf file

Download agent.conf file from Pulse UI using the following steps
1. Launch Pulse Application from SaaS Portal
2. Click on Options
3. Click on configuration
4. Click on Discovery tab and click on (:) options of Environment as shown above
5. Select the environment and Click on Download Agent Config option and agent config file agent.conf should be downloaded.
6. Copy the agent.confto your gateway server (e.g. to your home directory) using scp or ftp or tftp utilities.

IV. Install cfxPulse Collector

Please refer to section VII for installation requirements on various OS.
Login to the collector/gateway server using SSH utility. Go to home directory and execute following command to extract downloaded binary.
sudo pip install <agent tar file>
For example if agent tar file is cfxpulsecollector-1.0.2.tar.gz
sudo pip install cfxpulsecollector-1.0.2.tar.gz

V. Configure the cfxPulse Collector

On the gateway server go to the home directory where you have copied the agent.conf file and execute the following command:
sudo cfxcollector setup agent.conf

VI. Verify cfxPulse Collector Installation

  1. 1.
    Verify gateway installation and its components status using following command and ensure that services are running.
cfxcollector status
2. Verify gateway status from Pulse Portal and make sure that status for all columns changes to 'Available' .
This concludes the installation and configuration process for Pulse collector or gateway

VII. cfxPulse Collector Installations On Other Operating Systems and Requirements

a) Installation on Amazon Linux 2 AMI (HVM)

i) OS Version: Amazon Linux 2 AMI(HVM)
ii) Prerequisites:Docker 18.06.1-ce or Docker 18.09.9-ce, Python (2.7.x), Pip(19.2.1)
Follow cfxPulseCollector installation, configuration and verify steps once the above requirements are met for Amazon Linux 2 AMI.

b) Installation on CentOS

i) OS Version: CentOS 7
ii) Prerequisites: Docker (18.09) or Docker 19.03.5, Python 2.7.5, setuptools-41.0.1

c) Installation on SUSE Linux Enterprise Server

i) OS Version: SUSE Enterprise Server 15 SP 1
ii) Prerequisites: Docker (18.09), Python (2.7.x)
Note: To install a package run "zypper install [package name]"
Follow cfxCollector install, configure and verify steps once the above requirements are met for SuSE Linux Server.

d) Installation on Ubuntu Server 16.04 LTS(HVM)

i) OS Version: Ubuntu Server 16.04LTS(HVM)
ii) Prerequisites :Docker v18.09 or Docker v19.03.5, Python 2.7.5

e) Installation on Ubuntu Server 18.04 LTS(HVM)

i) OS Version: Ubuntu Server 18.04 LTS (HVM)
ii) Prerequisites: Docker -18.09 or Docker v19.03.5, Python 2.7.5
Follow cfxCollector install, configure and verify steps once the above requirements are met for Ubuntu Linux Server.

f) Installation on Amazon Linux

i) OS Version: Amazon Linux AMI 2018.03.0 (HVM)
ii) Prerequisites:Docker (18.06.1-ce), Python (2.7.x), Pip(19.2.1)
Note: Amazon Linux does not support docker latest version, it only supports docker 18.06 or below. Please refer to the above pre-reqs for docker, python and pip versions to install cfxCollector.

g) Installation on Red Hat Enterprise Linux (RHEL) 7.2 (HVM)

i) OS Version: RHEL 7.2 (HVM)
ii) Prerequisites: Docker (19.03.1), Python (2.7.x), pip version(9.0.9)
Follow cfxCollector install, configure and verify steps once the above requirements are met for RHEL 7.2 Linux Server.

h) Installation on Debian GNU / Linux 9

i) OS Version: Debian GNU/Linux 9
ii) Prerequisites: Docker (19.03.1), Python (2.7.x), pip version(19.2.1)
Follow cfxCollector install, configure and verify steps once the above requirements are met for Debian GNU / Linux 9 Server.