Dear Nomad Community,
I have a problem getting the Autoscaler Plugin for Openstack (OS-Nova) running. I think I am missing something.
I downloaded the OS-Nova Plugin from Github (GitHub - jorgemarey/nomad-nova-autoscaler) and put the files into the /plugins/os-nova folder inside the autoscaler container. So far so good but I am getting the following error:
2024-09-25T13:25:34.450Z [INFO] agent: starting Nomad Autoscaler agent
2024-09-25T13:25:34.450Z [INFO] agent: Nomad Autoscaler agent configuration:
2024-09-25T13:25:34.450Z [INFO] agent
2024-09-25T13:25:34.450Z [INFO] agent: Bind Addrs: 0.0.0.0
2024-09-25T13:25:34.450Z [INFO] agent: High Availability: false
2024-09-25T13:25:34.450Z [INFO] agent: Log Level: DEBUG
2024-09-25T13:25:34.450Z [INFO] agent: Plugins: //plugins
2024-09-25T13:25:34.450Z [INFO] agent: Policies: local/policies
2024-09-25T13:25:34.450Z [INFO] agent: Version: v0.4.5 (2664dc0)
2024-09-25T13:25:34.450Z [INFO] agent
2024-09-25T13:25:34.450Z [INFO] agent: Nomad Autoscaler agent started! Log data will stream in below
2024-09-25T13:25:34.451Z [INFO] agent.http_server: server now listening for connections: address=0.0.0.0:8080
2024-09-25T13:25:34.455Z [DEBUG] external_plugin: starting plugin: path=/plugins/os-nova args=["/plugins/os-nova"]
2024-09-25T13:25:34.455Z [WARN] external_plugin: plugin failed to exit gracefully
2024-09-25T13:25:34.455Z [INFO] agent.plugin_manager: successfully launched and dispensed plugin: plugin_name=nomad-apm
2024-09-25T13:25:34.455Z [INFO] agent.plugin_manager: successfully launched and dispensed plugin: plugin_name=prometheus
2024-09-25T13:25:34.455Z [INFO] agent.plugin_manager: successfully launched and dispensed plugin: plugin_name=fixed-value
2024-09-25T13:25:34.455Z [INFO] agent.plugin_manager: successfully launched and dispensed plugin: plugin_name=pass-through
2024-09-25T13:25:34.455Z [INFO] agent.plugin_manager: successfully launched and dispensed plugin: plugin_name=target-value
2024-09-25T13:25:34.455Z [INFO] agent.plugin_manager: successfully launched and dispensed plugin: plugin_name=threshold
2024-09-25T13:25:34.456Z [INFO] agent.plugin_manager: successfully launched and dispensed plugin: plugin_name=nomad-target
2024-09-25T13:25:34.456Z [INFO] agent.plugin_manager: shutting down plugin: plugin_name=fixed-value
2024-09-25T13:25:34.456Z [INFO] agent.plugin_manager: shutting down plugin: plugin_name=pass-through
2024-09-25T13:25:34.456Z [INFO] agent.plugin_manager: shutting down plugin: plugin_name=target-value
2024-09-25T13:25:34.456Z [INFO] agent.plugin_manager: shutting down plugin: plugin_name=threshold
2024-09-25T13:25:34.456Z [INFO] agent.plugin_manager: shutting down plugin: plugin_name=nomad-target
2024-09-25T13:25:34.456Z [INFO] agent.plugin_manager: shutting down plugin: plugin_name=nomad-apm
2024-09-25T13:25:34.456Z [INFO] agent.plugin_manager: shutting down plugin: plugin_name=prometheus
2024-09-25T13:25:34.456Z [ERROR] agent: failed to start agent:
error=
| failed to setup plugins: 1 error occurred:
| \t* failed to dispense plugin os-nova: failed to instantiate plugin os-nova client: fork/exec /plugins/os-nova: permission denied
The folder structure in the container looks like this:
/ $ ls -la plugins/os-nova
total 68
drwxr-xr-x 5 root root 4096 Sep 25 13:24 .
drwxr-xr-x 3 root root 4096 Sep 25 13:25 ..
drwxr-xr-x 8 root root 4096 Sep 25 11:08 .git
drwxr-xr-x 3 root root 4096 Sep 25 11:08 .github
-rw-r--r-- 1 root root 310 Sep 25 11:08 .gitignore
-rw-r--r-- 1 root root 2581 Sep 25 11:08 CHANGELOG.md
-rw-r--r-- 1 root root 1068 Sep 25 11:08 LICENSE
-rw-r--r-- 1 root root 5661 Sep 25 11:08 README.md
-rw-r--r-- 1 root root 2390 Sep 25 13:12 go.mod
-rw-r--r-- 1 root root 20229 Sep 25 11:08 go.sum
-rw-r--r-- 1 root root 359 Sep 25 11:08 main.go
drwxr-xr-x 2 root root 4096 Sep 25 11:08 plugin
and this is my config.hcl
http {
bind_address = "0.0.0.0"
bind_port = "8080"
}
policy {
dir = "local/policies"
}
nomad {
address = "https://10.0.0.173:4646"
token = ""
client_cert = "/opt/nomad/agent_certs/agent.crt"
client_key = "/opt/nomad/agent_certs/agent.key"
ca_cert = "/opt/nomad/agent_certs/ca.crt"
}
apm "prometheus" {
driver = "prometheus"
config = {
address = "http://localhost:8081"
}
}
target "os-nova" {
driver = "os-nova"
config = {
auth_url = ""
username = ""
password = ""
domain_name = "default"
project_id = ""
}
}
strategy "pass-through" {
driver = "pass-through"
}
Any help would be much appreciated, I am stuck here for a while.
Thank you
Best