Regarding Russia: 80% of the population lives in the European part of Russia and the two largest cities are Moscow and St. Petersburg. If the Russian Hockey Federation thought they could sell more tickets by having it in Kazan or Omsk, they would.
That's not how things work in Russia. The outcome is essentially determined by personal relationships and the games take place in St. Petersburg because Rotenberg and Timchenko want it so. Whether any tickets are sold is completely secondary, beyond Russia's games in the new arena of course.
Regarding Czechia (it will take some time to get used to that name): Prague and Ostrava hosted the best and fourth-best attended Championships. Why change?
Because Xth time in Ostrava has no additional value anymore. The tournament should also help hockey grow as a game, it does not mean that every edition has to be in a new and exotic location but at the moment the rotation is way too conservative altogether.
Do Great Britain and Norway have the venues capable of hosting the event? I would be surprised if they did.
In 1999 Norway used Håkons Hall in Lillehammer, CC Amfi in Hamar, and Jordal Amfi in Oslo. New options could be Spektrum in Oslo or DNB Arena in Stavanger. In Trondheim there's also a new arena being built for the European Handball Championships but I don't know how well suited it's going to be for hockey.
Great Britain has a wide range of options, the most obvious would be Sheffield Arena and the National Ice Centre in Nottingham. Manchester Arena or the O2 in London are larger alternatives. Or to avoid two English venues for example the Odyssey in Belfast.