Repacking in a container

Summary

I’m trying to get ATRESYS running in a container. Stages 3-6 all seem to be working, but stage 2 fails with errors like

[ERROR] [run_cmd] Command failed: /usr/bin/cta-admin --json repack add --vid FA7092 --mountpolicy public_repack (STDERR: Must specify the buffer URL using --bufferurl option or using the frontend configuration file.).

I have added the buffer configuration variable to the frontend which ATRESYS is communicating with, but the same errors persist. How does cta-admin get the value of the buffer url if it’s not running on the same “machine” as the frontend itself?

I also note that there doesn’t seem to be a way in the cta-ops-config.yaml file to specify the buffer url. Would that be a reasonable addition as a way to get around this?

I guess a related question. Does the frontend somehow need to be able to read or write from the bufferURL? We are using a file:// URL to a shared dCache area using the NFS protocol and this has worked fine in the past. But it is visible from the frontend machine.

Now, with a frontend in Kubernetes it is not visible.

Hello Eric,
Active CTA experts will probably be able to give a more precise answer, but in the mean time:
ATRESYS and the operator utilities have no concept of the buffer URL.
I see that the cta-admin command has the bufferurl param, so one could conceivably add it to the ops tools where they invoke the command.
But in its absence, the cli tools would rely on the default one that is specified in the CTA frontend config file [1].
Could you check that config and see what is set there, or if the option is missing altogether and could be added?

[1] Repack - CTA Documentation

I did add it. But what I didn’t do is restart the frontend. So that is probably my issue. The clarity of a few hours away from the problem….

1 Like