Meraki API with cmkraw

2.3.0p28.cre:
ubuntu24.04

n/a:

Output of “cmk --debug -vvn hostname”: (If it is a problem with checks or plugins)

Hello again,

I am looking into using the Meraki API with cmkraw.

I have found other posts regarding this but am confused about host creation. I am using the RAW so cannot dynamically create Meraki hosts via piggy back.

I have configured Meraki Special Agent with my API key and created a host “api.meraki.com”, it polls buts retrieves the licensing information only.

I am happy to manually create hosts but i want to poll the API rather than add them via their local IP addresses / use snmp.

thanks in advance for any tips on this.

@VLAN-0 ou just need to create your Meraki devices manually. CMK will then add the data fetched by the Meraki special agent. To see which hosts the agent has fond (and therefore what hosts you should create), you can run a cmk -v Meraki. Where Meraki is the name of the host object form Checkmk where the agent is attached to. This should look like this:

OMD[cmk]:~$ cmk -v Meraki
+ FETCHING DATA
Get data from program
No piggyback files for 'Meraki'. Skip processing.
Get piggybacked data
Storing piggyback data for: 'GSL-SW-02-DV2'
Storing piggyback data for: 'OSG-DV4-R'
Storing piggyback data for: 'GSS-SW-02
....
....
Storing piggyback data for: 'OSG-DV3-R'
Received piggyback data for 98 hosts
Cisco Meraki API NVDCT/9876543 (enabled)
No piggyback files for 'Meraki'. Skip processing.
[agent] Success, [piggyback] Success (but no data found for this host), execution time 0.7 sec | execution_time=0.710 user_time=0.160 system_time=0.090 children_user_time=0.000 children_system_time=0.000 cmk_time_ds=0.030 cmk_time_agent=0.010
OMD[cmk]:~$ 

You can get the hostnames form the Storing piggyback data for: lines.

Thanks so much

I can see all of the devices using the command you mention.

When I attempt to add ‘MT-SERVERROOM’, for example, I get a DNS error because it does not exist in the DNS zone used by cmk.

Is this something the agent will figure out over time?

just set the “IP address family” in the host settings to “No-IP”. Then you should be fine. The agent doesn’t needs the IP-address.

image

1 Like

worked perfectly. thanks again!

Hello!

If one of the answers helped you solve your question, please mark it as the solution. This way, you thank the person who helped you and also indicate that the question has been resolved. This, in turn, helps others who come across the same question.

Solution

Thank you!