It's closer to English structure. You'd say "it's 8 o'clock" not "he is 8 o'clock" so in the same way, it's "il est 8 heures" and therefore the question becomes "il est" inverted - "quelle heure est-il ?"
It's the same for the temperature. We use the verb "faire". Ex : Il fait 30 degrés. The question would be "quel temps fait-il ?"