All Apps and Add-ons

Why am I unable to install Python eggs for Cisco ACI Add-on for Splunk Enterprise?

robkelley50
Engager

The instructions for this app indicate that you should install the python eggs for the Cisco SDK using easy_install. However Splunk's python installation does include easy_install or other common Python installation utilities. Using a standalone python27 would mean that the collect.py script would be unable to leverage the Splunk python modules.

I've attempted two separate approaches to overcome this problem. I first tried installing a standalone python27 with easy install. I was able to extract the acicobra and acimodel eggs and copy them to Splunks python library, but I ran into issues with the script erroring on dependencies required by the script, (or perhaps by Splunk itself). I also tried installing easy_install using Splunk's python interpreter, but it failed, indicating that it was unable to bring down the dependencies. I'm stuck on both approaches. Has anyone encountered and overcome these issues?

Thank you

1 Solution

savithamr
Path Finder

You mentioned you copied the egg directory into splunk python library.

You need to copy them (acicobra, acimodel, requests) into app's bin directory..
e.g /$SPLUNK_HOME/etc/apps/TA_cisco-ACI/bin/ where $SPLUNK_HOME is splunk installation directory (ie /opt/splunk).
( Note: remove previous .egg directories if they exists in the same location before copying)

After copying you can test by running below commands:

cd /opt/splunk/etc/apps/TA_cisco-ACI/bin/ ### collect.py will be here.

/opt/splunk/bin/splunk cmd python collect.py

ACI Error: Did not receive a session key from splunkd. Please enable passAuth in inputs.conf for this script

It should solve import errors.
Can you also mention version of APIC you are using?

Thanks,

View solution in original post

savithamr
Path Finder

You mentioned you copied the egg directory into splunk python library.

You need to copy them (acicobra, acimodel, requests) into app's bin directory..
e.g /$SPLUNK_HOME/etc/apps/TA_cisco-ACI/bin/ where $SPLUNK_HOME is splunk installation directory (ie /opt/splunk).
( Note: remove previous .egg directories if they exists in the same location before copying)

After copying you can test by running below commands:

cd /opt/splunk/etc/apps/TA_cisco-ACI/bin/ ### collect.py will be here.

/opt/splunk/bin/splunk cmd python collect.py

ACI Error: Did not receive a session key from splunkd. Please enable passAuth in inputs.conf for this script

It should solve import errors.
Can you also mention version of APIC you are using?

Thanks,

robkelley50
Engager

Thanks savithamr, that did it!

Because the Splunk python install does not include easy_install, I had to install a separate python27 with easy_install, extract the cobra eggs and copy them over to the TA's bin directory along with the request modules from Splunk's python library.

Note, our APIC host would not accept HTTPS connection so it was necessary for me to update the apicURL variable in the _connectACI definition in the collect.py script in order for it to connect. Before that I was seeing auth errors.

Thanks again!

0 Karma

smaniramkrish
New Member

Is the APIC certificates are already in safe certificate list

0 Karma
Get Updates on the Splunk Community!

Introducing the 2024 SplunkTrust!

Hello, Splunk Community! We are beyond thrilled to announce our newest group of SplunkTrust members!  The ...

Introducing the 2024 Splunk MVPs!

We are excited to announce the 2024 cohort of the Splunk MVP program. Splunk MVPs are passionate members of ...

Splunk Custom Visualizations App End of Life

The Splunk Custom Visualizations apps End of Life for SimpleXML will reach end of support on Dec 21, 2024, ...