Edge Collector
Discover and collect IT assets data from hybrid cloud environments and send data to RDA Platform
An Edge Collector is a type of RDA Agent that can discover and collect IT asset data in an agentless manner and send this data to the RDA platform. If a user wants to send data from their network devices (Chassis, Fabric Extender, Interfaces) to the RDA platform, users can install Edge collector in their local environment. Currently, Edge Collector can collect data using SNMP and SSH protocols.
- Linux OS
- Memory - 8 GB
- Disk - 50 GB
- Python 3.7.4
Download RDA Fabric Configuration from the RDA SaaS portal by going to:
Configuration > Fabric Configuration and download the file to the local filesystem where the Edge Collector Agent is going to be installed
- Save the file as
rda_network_config.json
Download RDA Fabric configuration
- Copy the downloaded file to
~/network_config/rda_network_config.json
mkdir -p ~/network_config
cp rda_network_config.json ~/network_config/rda_network_config.json
$ docker login -u=readonly -p='readonly' cfxregistry.cloudfabrix.io
WARNING! Using --password via the CLI is insecure. Use --password-stdin. WARNING! Your password will be stored unencrypted in /home/ec2-user/.docker/config.json. Configure a credential helper to remove this warning. See https://docs.docker.com/engine/reference/commandline/login/#credentials-store
Download
edge-collector-docker-compose.yml
file from the following locationbash# mkdir -p ~/cfxedgecollector
bash# mkdir -p ~/cfxedgecollector/cred
create
credentials.json
file and enter credentials as shown below in the file and copy file in the directory ~/cfxedgecollector/cred/credentials.json
We need to add all required credentials for collection in the credentials.json file
bash# cat credentials.json
[
{
"ipAddress" : [
"10.95.158.*",
"10.95.123.10-10.95.123.20"
],
"id": "<unique_name>",
"type": "device-snmp-v1v2",
"credentials": {
"readCommunity": "*****",
"protocol": "snmpv2c",
"port": 161
}
},
{
"ipAddress" : [
"10.95.158.*"
],
"id": "<unique_name>",
"type": "device-host-ssh",
"credentials": {
"username": "cfxuser",
"password": "*****",
"port": 22,
"protocol": "SSHV2",
"pkey": null,
"passphrase": null
}
},
{
"ipAddress" : [
"10.95.158.9,10.95.158.10"
],
"id": "<unique_name>",
"type": "device-host-ssh",
"credentials": {
"username": "cfxuser",
"password": "*****",
"port": 22,
"protocol": "SSHV2",
"pkey": null,
"passphrase": null
}
}
]
Note: In the above
credentials.json
file, “id”
field indicates that you can give any unique name for the credential identifier,“type”
field is a standard type used for SNMP and SSH Devices. Supported types are“device-snmp-v1 or device-snmp-v2”
for SNMP data collection"device-host-ssh"
for SSH data collection for the network devices
vi edgecollector-agent-docker-compose.yml (or use your favorite editor to edit / update the file )
rda_edgecollector_agent:
image: 'cfxregistry.cloudfabrix.io/cfxcollector:3.0.0'
restart: always
ports:
- '8889:5000'
volumes:
- '~/network_config:/network_config'
- '~/cfxedgecollector:/cfxedgecollector'
- '~/cfxedgecollector/cred:/cred'
environment:
RDA_NETWORK_CONFIG: /network_config/rda_network_config.json
PYTHONPATH: /opt/cfxedgecollector/
container_name: rda_edgecollector_agent
ulimits:
nproc:
soft: 64000
hard: 128000
nofile:
soft: 64000
hard: 128000
entrypoint:
- /bin/bash
- '-c'
- >-
cd /opt/cfxedgecollector/src/; python -c 'import edgecollector_rda_agent ;
edgecollector_rda_agent.run()' --creddir /cred/ --agent-group-name <name>
docker-compose -f edgecollector-agent-docker-compose.yml up -d
Check Edge Collector Agent status using
docker p
s command and ensure that Edge Collector Agent is up and running, without any restarts. If you see that the Edge Collector Agent is restarting, make sure you copied the RDA network config file to the correct location. [macaw@sysloglinux110 ~]$ docker ps | grep rda_edgecollector_agent
0be4f22ba07e cfxcollector:cfxcollector-1.0.1 "/bin/bash -c 'cd /o…" 2 days ago Up 2 days 0.0.0.0:8889->5000/tcp rda_edgecollector_agent
[macaw@sysloglinux110 ~]$
Command: !rdac agent-bots
If you have installed an RDA Client (rdac) command-line utility, you can also verify the newly created Edge Collector Agent using rdac agents command.
Command: rdac agent-bots
Last modified 1yr ago