kubernauts / jmeter-kubernetes

Load testing as a service (LTaaS) with Apache Jmeter on kubernetes

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

curl not installed on grafana container

ndmacioce opened this issue · comments

When running ./dashboard.sh, I get the following output:

Creating Influxdb jmeter Database
Creating the Influxdb data source
OCI runtime exec failed: exec failed: container_linux.go:348: starting container process caused "exec: "curl": executable file not found in $PATH": unknown
command terminated with exit code 126

When I use kubectl exec to connect to the jmeter-grafana container and try to run curl, I see the following output:

sh: 1: curl: not found

It appears as if curl is not installed in the container. Running apt-get install curl requires root password.

commented

Which k8s version and kubectl are you using?

Hm that may be the problem, I am using minikube v0.30.0 and kubectl version shows

Client Version: version.Info{Major:"1", Minor:"12", GitVersion:"v1.12.0", GitCommit:"0ed33881dc4355495f623c6f22e7dd0b7632b7c0", GitTreeState:"clean", BuildDate:"2018-09-28T15:20:58Z", GoVersion:"go1.11", Compiler:"gc", Platform:"darwin/amd64"}
Server Version: version.Info{Major:"1", Minor:"10", GitVersion:"v1.10.0", GitCommit:"fc32d2f3698e36b93322a3465f63a14e9f0eaead", GitTreeState:"clean", BuildDate:"2018-03-26T16:44:10Z", GoVersion:"go1.9.3", Compiler:"gc", Platform:"linux/amd64"}

commented

try to downgrade the client version to 1.10, or use minishift 1.10, this works.
We tested the whole thing on 1.11.x and it works.

I found a workaround to my problem which I think is an edge case to my minikube implementation. I will mark this issue as closed but the workaround is as follows:

  1. Tested ping to the jmeter_grafana pod from my local machine (Mac OS)
    • This timed out, leading me to think it was a networking problem
  2. Using kubectl exec to connect to the jmeter influxdb pod's shell, I tested a ping to the jmeter_grafana pod. This was successful.
  3. JMeter_Influxdb had curl installed so I ran the curl command in ./dashboard.sh from the InfluxDB pod, substituting the grafana local IP (127.0.01) for the IP of the pod.
  4. Curl was successful and rest of implementation worked successfully.