cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Issue registering a cluster agent to the controller.

Gustavo.Marconi
Builder

Hi everybody,

I'm trying to monitor a demo web app deployed with Kubernetes, but even following the documentation I end up short in that pursue, the web app consiste in 4 containers, all running properly on a Ubuntu Server 24.04, using MicroK8s and kubectl.

I followed this guide in the documentation:
https://docs.appdynamics.com/appd/24.x/latest/en/infrastructure-visibility/monitor-kubernetes-with-t...

Everything was clear for the seven steps, but I have to point it out that in the step 6, the YML example is showing the port 8080 for the controllerUrl, and since I have the SaaS version, I changed it to 443.

When I validate the installation noticed that the cluster agent was not registered, so I started following the troubleshooting docs, when I retrieve the logs for the namespace with the operator and the cluster-agent I checked the following error:
[ERROR]: 2024-07-03 15:52:57 - secretconfig.go:68 - Problem With Getting /opt/appdynamics/cluster-agent/secret-volume/api-user Secret: open /opt/appdynamics/cluster-agent/secret-volume/api-user: no such file or directory
I don't know why is searching for that specific path and in which moment should I create or where to find that api-user, that was not in the docs.

So I'll be really thankful if someone could help me with this issue.

Hope everybody have a nice day.

Regards

12 REPLIES 12

Rajesh.Ganapavarapu
AppDynamics Team

Hello @Gustavo.Marconi,

Thank you for contacting us.

Looks like the access key is not setup properly. Can you please confirm if you have created the access key correctly ?

You can run the below command and check if you have setup the access key  or not.

kubectl get secret cluster-agent-secret -n appdynamics -o jsonpath='{.data.controller-key}' | base64 --decode

Also can you please confirm the agent version and the operator version that you're deploying ?

 

If you are using lessthan 23.11 version I would recommend you to dopwnload the latest version.

 

Could you please follow below:

  1. Download the latest version if the current version is 23.11 or less.
  2. Delete old Controller Access Key Secret:
  3. Create Controller Access Key Secret:
     kubectl -n appdynamics create secret generic cluster-agent-secret --from-literal=controller-key=<access-key>

Give a try and let me know how it goes.

 

Happy Friday and weekend.

 

Best Regards,
Rajesh Ganapavarapu

 

 

Ryan.Paredez
Community Manager

Hi @Gustavo.Marconi,

Have you had a chance to check out the reply from @Rajesh.Ganapavarapu? I wanted to let you know I have also contacted the Docs team and shared your feedback regarding the documentation. 


Thanks,

Ryan, Cisco AppDynamics Community Manager




Found something helpful? Click the Accept as Solution button to help others find answers faster.

Liked something? Click the Thumbs Up button.



Check out Observabiity in Action

new deep dive videos weekly in the Knowledge Base.

Hi @Rajesh.Ganapavarapu ,

I applied the command:
kubectl get secret cluster-agent-secret -n appdynamics -o jsonpath='{.data.controller-key}' | base64 --decode 
And it replies me with my controller-key.

The agent version that I'm using is 24.6.0-481, appdynamics-cluster-agent-alpine_linux_amd64-24.6.0.481.zip was the version that I downloaded. 

In the cluster-agent.yaml the image is set to: "docker.io/appdynamics/cluster-agent:latest".

I re-deployed everything and check again the logs for the  cluster-agent, it shows me this:
root@ubuntu-k8s-test:/home/gmarconi/appdynamics/cluster-agent# microk8s kubectl logs -n appdynamics k8s-cluster-agent-df58dfdc5-wtl7b
CA_PROPERTIES= -appdynamics.agent.accountName=pracso-nfr -appdynamics.controller.hostName=pracso-nfr.saas.appdynamics.com -appdynamics.controller.port=443 -appdynamics.controller.ssl.enabled=false -appdynamics.agent.monitoredNamespaces="default" -appdynamics.agent.event.upload.interval=10 -appdynamics.docker.container.registration.interval=120 -appdynamics.agent.httpClient.timeout.interval=30
APPDYNAMICS_AGENT_CLUSTER_NAME=Tasks-Webapp
[ERROR]: 2024-07-08 16:17:58 - secretconfig.go:68 - Problem With Getting /opt/appdynamics/cluster-agent/secret-volume/api-user Secret: open /opt/appdynamics/cluster-agent/secret-volume/api-user: no such file or directory
[INFO]: 2024-07-08 16:17:58 - main.go:57 - check env variables and enable profiling if needed
[INFO]: 2024-07-08 16:17:58 - agentprofiler.go:22 - Cluster Agent Profiling not enabled!
[INFO]: 2024-07-08 16:17:58 - main.go:60 - Starting APPDYNAMICS CLUSTER AGENT version 24.6.0-481
[INFO]: 2024-07-08 16:17:58 - main.go:61 - Go lang version: go1.22.3
W0708 16:17:58.556623 8 client_config.go:618] Neither --kubeconfig nor --master was specified. Using the inClusterConfig. This might not work.
[INFO]: 2024-07-08 16:17:58 - main.go:78 - Kubernetes version: v1.29.4
[INFO]: 2024-07-08 16:17:58 - main.go:236 - Registering cluster agent with
controller host : pracso-nfr.saas.appdynamics.com
controller port : 443
account name : pracso-nfr
[WARNING]: 2024-07-08 16:17:58 - agentregistrationmodule.go:359 - "default" is not a valid namespace in your kubernetes cluster
[INFO]: 2024-07-08 16:17:58 - agentregistrationmodule.go:363 - Established connection to Kubernetes API
[INFO]: 2024-07-08 16:17:58 - agentregistrationmodule.go:68 - Cluster name: Tasks-Webapp
[INFO]: 2024-07-08 16:17:58 - agentregistrationmodule.go:119 - Initial Agent registration
[ERROR]: 2024-07-08 16:17:58 - agentregistrationmodule.go:131 - Failed to send agent registration request: Post "http://pracso-nfr.saas.appdynamics.com:443/sim/v2/agent/clusterRegistration": EOF

Noticed that -appdynamics.controller.ssl.enabled is set to false, but I don't know how to set it to true, also not sure if that's the problem.

Hope you can help me Rajesh.

Have a great day!

Regards
Gustavo Marconi

Hello @Gustavo.Marconi ,

By default SaaS controller is SSL enabled but I see the error message is "http". Could you please check your config if you have provided http or https. 

[ERROR]: 2024-07-08 16:17:58 - agentregistrationmodule.go:131 - Failed to send agent registration request: Post "http://pracso-nfr.saas.appdynamics.com:443/sim/v2/agent/clusterRegistration": EOF

 1. Now ssh into your appdynamics-operator pod or cluster agent pod
kubectl -n <namespace> exec -it <appdynamics-operator-pod> -- /bin/sh

2. Run the following command and send us the output for this:

curl -v -k -u singularity-agent@tatadigital:<access_key> https://pracso-nfr.saas.appdynamics.com.com:443/sim/v2/agent/clusterRegistration

 

Hope this will figure it out what is the cause. Keep us posted.

 

Best Regards,
Rajesh Ganapavarapu

Hi @Ryan.Paredez ,

Yes, I checked the reply from Rajesh, thank you!

Glad to know that my feedback helps to do a minor contribution to the community.

Hope you have a great day too!

Regards
Gustavo Marconi

Hi @Rajesh.Ganapavarapu ,

I tried the command that you just gave me with my access_key, but I think curl is not installed in the operator pod, and also don't have the permission to install it, it just replies me:
/bin/sh: curl: not found

Regards
Gustavo Marconi

Hello @Gustavo.Marconi ,

Yes, you should have the full rights to install the curl on the pod. Can you check the network connection by running curl after the curl installation ?

Best Regards,
Rajesh

Ryan.Paredez
Community Manager

Hi @Gustavo.Marconi,

Have you been able to check out the reply? Did it help? Let us know by clicking the Accept as Solution button or continue the conversation. 


Thanks,

Ryan, Cisco AppDynamics Community Manager




Found something helpful? Click the Accept as Solution button to help others find answers faster.

Liked something? Click the Thumbs Up button.



Check out Observabiity in Action

new deep dive videos weekly in the Knowledge Base.

Hi Rajesh,

Sorry for the delay in my reply, I tried to made the curl that you asked me, but I'm afraid can't do it, or install it.
curl k8s.png

Should I re-install the operator?

Thank you very much for the help.

Regards
Gustavo Marconi