Apparently, you can run multiple Discourse instances on the same server – search Meta. There are lots of info on this. I haven’t tried it though; I use separate VM’s for each forum.
Even if you put all the instances into one single server, I suppose you’ll still have to upgrade them one by one… so probably not much of a time saving here.
SSO is a completely separate issue which is unrelated to how many servers you have.
EDIT: Remember, each Discourse instance includes its own database and Ruby/Rails, so you’ll need [n] times the amount of resources on the VM for [n] instances. If you use separate VM’s you can use the cheapest VM size for each.
You can spin off the database into its own container, thus saving some resources, but then this is a very advanced installation.