The answer is (as so often) here too “It depends”
Here are some examples of solutions you can choose based on your needs. (Of course, there are many other solutions “out there” but the tools are usually the same.)
If all users are able to establish new teams then you must get a provisioning solution in place before the roll-out, otherwise I can guarantee that you will get a chaos and lose control in very short time.
In the post “Provisioning Teams with a Site Design, Flow and Microsoft Graph” Laura Kokkarinen shows a solution for Teams provisioning using Site Design, Microsoft Flow and Microsoft Graph.
The blog post “AUTO-PROVISIONING SHAREPOINT SITES AND TEAMS: A BLOG POST LIST” by Joanne Klein has also a useful list of solutions.
In the post “Automate Teams for Education with School Data Sync” Magnus Sandtorv shows how to use School Data Sync in order to automate Teams for Education.
Managed by “The chosen few”
In Microsoft Docs we can read the article “Manage who can create Office 365 Groups” to find out how to control who has the ability to create groups (and thus Microsoft Teams).