Open yashbhutwala opened 4 years ago
Hi @yashbhutwala, I see that you've opened up a ticket with our support team. Our team is investigating and will reach back out on the ticket as soon as we have more information. We'll also update this github issue with the findings from support's investigation for other users that run into the same issue.
Awesome, thanks @khewonc in advance!
Here is the latest info from DataDog's containers team for others finding their way here.
"We have confirmed that it is not possible at the moment to use Kubernetes log collection when using a non-root user. Mainly, this is due to the strict permissions on the docker folders. Moving forward, we have two options to fix this issue:
1) Changing to a root user 2) Or you will have to switch the log collection method if you wish to run the agent as a non-root. You can either could Docker log collection or getting the logs through journald."
2021-01-19 09:27:20 UTC | CORE | ERROR | (pkg/autodiscovery/config_poller.go:123 in collect) | Unable to collect configurations from provider docker: temporary failure in dockerutil, will retry later: try delaynot elapsed yet 2021-01-19 09:27:21 UTC | CORE | ERROR | (pkg/autodiscovery/config_poller.go:123 in collect) | Unable to collect configurations from provider docker: temporary failure in dockerutil, will retry later: try delaynot elapsed yet 2021-01-19 09:27:22 UTC | CORE | ERROR | (pkg/autodiscovery/config_poller.go:123 in collect) | Unable to collect configurations from provider docker: temporary failure in dockerutil, will retry later: try delaynot elapsed yet
I have the above logs from my container and integration is failing. I am using an AWS Private link for the traffic routing. Looking for help from @yashbhutwala and DD team
I am getting this error message as well when using the below to force using root to get around this. Any ideas on why the error message would exist when using
securityContext:
runAsUser: 0
@yashbhutwala I would like documentation for your second option, because running as root is something I would like to avoid unless it's 100% necessary.
Additionally, there are a number of containers being deployed in helm, are all containers as part of the datadog/datadog
chart required to run as root?
Any update on this?
I found the way that worked for me
datadog:
securityContext:
runAsUser: 101
if you use an APM add
apm:
enabled: true
socketEnabled: false
portEnabled: true
Any workaround for this when the datadog agent running as a secondary container on the AWS ECS
I found the way that worked for me
datadog: securityContext: runAsUser: 101
if you use an APM add
apm: enabled: true socketEnabled: false portEnabled: true
Hello, Does logging work as well?
What to set the securityContext to in order to run DataDog as non-root in plain Kubernetes?
I tried the following variations:
and all resulted in the following errors:
I do see the dd-agent configured in Dockerfile here, which is why I chose uid 101, but I do not see a
USER
directive in the Dockerfile.