The Ember core team started announcing too soon that Ember will have controllers removed and instead introduce routable components “soon” (as early as Ember 1.12), and then due to apparent technical issues they prioritized other projects. Unfortunately, that back-and-forth has caused a great deal of confusion but we need to understand their position.
Controllers are still part of Ember. For now it doesn’t matter if they will be deprecated (curious, where did you hear about Ember 3.0?).
I, personally, rarely use controllers. Not because I hate them but because I find that all of my Ember code fits nicely in other parts of the application. If you’d like to understand why, here is a beginners tutorial that doesn’t use controllers but uses actions in routes instead: https://emberigniter.com/getting-started-ember-cli-data-down-actions-up-tutorial/ . Again, this does not mean that when the app gets more complex you won’t have to use a controller.
The “router” is the place where URL are mapped to routes, so there’s not much work to do there. I think you mean “routes”.