Earlier quoted context omitted.
Agreed, though I keep wanting to take the time to get VRRP working with a web server to have redundancy. OpenBSD uses this to coordinate stateful firewalls with 2 or more systems, if 1 goes down all state info is present on the second node which takes over.
Hi, OP author here: I have actually set up a VRRP (well, UCARP) on Docker, so it's possible even to containerize this facet of running a HA ops stack with Docker as the infrastructure. It is however, as you say, it is only used for one active node + a number of fail-overs in case that one goes down. In terms of maintenance (hosts do go down, scheduled downtime is common), it's priceless to have this part of the puzzl…
Running 1000 containers in Docker Swarm
21–30 of 37 posts
Re: Running 1000 containers in Docker Swarm
#22Earlier quoted context omitted.
When that single web server goes down, it's not so "fast" anymore.
That sounds like a fixable problem. I'm pretty sure Erlang programmers could give some tips. Why is worrying about a single web server going down more worrisome than some part of the Docker stack going down and causing the same issue?
Re: Running 1000 containers in Docker Swarm
#232k nodes, 100k containers https://blog.online.net/2016/07/29/docker-swarm-an-analysis-...
5k nodes, 1 million containers, 5 minutes https://www.hashicorp.com/c1m/ (Disclaimer: I'm on the Nomad team but wasn't at the time of the post)
Disclosure: by coincidence of market forces, we're mortal enemies. Let's send christmas cards!
Re: Running 1000 containers in Docker Swarm
#24I always wonder, why not isolate on a process level, or even withing a single, multi-threaded app. Sure you can run some sort of web service on hundreds of docker containers or you can run a single, fast web server that scales?
They are part of the same app.
They should not have the same level of privilege.
The secrets in endpoint A's memory should not be visible to endpoint B and vice versa.
Containers increase assurance that this is so.
Re: Running 1000 containers in Docker Swarm
#25I always wonder, why not isolate on a process level, or even withing a single, multi-threaded app. Sure you can run some sort of web service on hundreds of docker containers or you can run a single, fast web server that scales?
Sometimes you have endpoint A and endpoint B. They are part of the same app. They should not have the same level of privilege. The secrets in endpoint A's memory should not be visible to endpoint B and vice versa. Containers increase assurance that this is so.
Re: Running 1000 containers in Docker Swarm
#262k nodes, 100k containers https://blog.online.net/2016/07/29/docker-swarm-an-analysis-...
Since we're playing this game: 1.55k nodes, 250k containersed applications[0]. Mind you, it's hard to compare these as there's no real "cloud bench". For pure benchmark porn Nomad are the undisputed champs on their 1 million case. The Cloud Foundry scaling test was intended to show a system with fully service-configured, fully-routed apps, with varying app characteristics (memory and RPS). To further stress the syste…
Re: Running 1000 containers in Docker Swarm
#27Earlier quoted context omitted.
5k nodes, 1 million containers, 5 minutes https://www.hashicorp.com/c1m/ (Disclaimer: I'm on the Nomad team but wasn't at the time of the post)
I don't know much about Nomad and couldn't work out from the repo what the jobs were. If I guess correctly, it's an app using Redis. Is that correct? Disclosure: by coincidence of market forces, we're mortal enemies. Let's send christmas cards!
Yup! Repo could definitely be clearer, but here's the code:
https://github.com/hashicorp/c1m/blob/master/schedbench/test...
Basically calls an increment in Redis and then blocks forever.
> Disclosure: by coincidence of market forces, we're mortal enemies. Let's send christmas cards!
Haha, hi mortal enemy! Christmas cards it is! If you're ever in Portland, OR I'll buy a beverage of your choice as well. :)
Re: Running 1000 containers in Docker Swarm
#28Does anyone know how easy it is to set up autoscaling with Docker Swarm running on Google Cloud or AWS? We're looking to get starting with Docker Swarm or Kubernetes soon, and are considering using Docker Swarm because of its simplicity and developer familiarity with Docker Compose (we use it for our dev environment). We just want to add nodes to a cluster as traffic spikes and subsides.
In the context of Docker Swarm and Kubernetes, autoscaling refers to container level scaling ie. given a set of nodes, any autoscaling function would manage the number of containers that are currently running on these nodes. For instance/node level autoscaling (which is closer to what you need), I would recommend using the autoscaling features provided by AWS/Google Cloud.
It would have to be integrated with Kubernetes though -- when we push a new docker container, the container would need to be updated on any new machines created. We'll look into GCP's autoscale solution.
Re: Running 1000 containers in Docker Swarm
#29Earlier quoted context omitted.
In the context of Docker Swarm and Kubernetes, autoscaling refers to container level scaling ie. given a set of nodes, any autoscaling function would manage the number of containers that are currently running on these nodes. For instance/node level autoscaling (which is closer to what you need), I would recommend using the autoscaling features provided by AWS/Google Cloud.
> I would recommend using the autoscaling features provided by AWS/Google Cloud It would have to be integrated with Kubernetes though -- when we push a new docker container, the container would need to be updated on any new machines created. We'll look into GCP's autoscale solution.
Even if you don't need autoscaling, I'd suggest still using autoscaling groups and setting it to a fixed number of instances, so that instances will automatically get restarted if they go down.
Re: Running 1000 containers in Docker Swarm
#30Earlier quoted context omitted.
In the context of Docker Swarm and Kubernetes, autoscaling refers to container level scaling ie. given a set of nodes, any autoscaling function would manage the number of containers that are currently running on these nodes. For instance/node level autoscaling (which is closer to what you need), I would recommend using the autoscaling features provided by AWS/Google Cloud.
> I would recommend using the autoscaling features provided by AWS/Google Cloud It would have to be integrated with Kubernetes though -- when we push a new docker container, the container would need to be updated on any new machines created. We'll look into GCP's autoscale solution.
As for image management, it would depend on how you would like to propagate new images. With a private docker registry, you could potentially point each new instance to the registry and take care of propagating new images. I favor this approach since it keeps everything separate and easier to manage.