Managing a large number of containers

Hello everyone

What is the easiest way to manage a lot of containers (10 000+)?
My main issue currently being on how to start that many.

I have seen a few WebUi implementations for LXD and tried them out, but in regards to starting containers, they can only operate on a one-by-one basis. As far as my understanding goes, currently, my options for starting a large number of containers are either through the Go SDK, or through Ansible, or through Bash.

The LXC cli is not so approachable if I want to start a lot of containers.

While I have no problem using any of those methods, I was just wondering if there is any other less demanding option.

I’m new to the LXC/LXD space, so it is very possible that I missed something.

Thank you for the response.

When you say “manage” what do you mean?

Adding a “start all” & “stop all” button to existing web interfaces is a trivial task, but I feel like that’s an over simplification of the problem in hand!

It definitely is an oversimplification, but I am looking at a use case like this.

Define a profile with all the config options.
Define an image to use.
Instantiate and start max num of containers that the resources allow (in my case I am looking at about 1000+ containers)

Creating, instantiating, removing, and other container actions one by one is plausible when working with a manageable number of containers, however when working with 1 000 containers plus that does become a hassle.

I did manage to find how to remove all containers

lxc rm -f $(lxc ls -c n --format csv)

I think that my definition of “manage” would be :
Instantiate multiple/all containers, start multiple/all containers, stop multiple/all containers, delete multiple/all containers. (from CLI or GUI)

A little bit bash scripting can solve the case, for example.
for c in $(lxc ls -c n --format csv); do lxc stop $c; done