@FMcK-uk wrote: I want to introduce additional modules to increase the Uplinks to 10Gbps, do I need all the switches in the stack to have the same additional module?
No, you don't need to equip the very same module on each stack's member...simmetry is not mandatory (your second question is thus automatically answered).
The basic principle should be to not create a weak link to a resilient stack by just terminating uplinks only to some (and not to all) of its members from the same peer (where a peer could be a Switch or a Server, it doesn't matter)...following this principle will require that each stack member should be involved.
Clearly there are corner cases or scenarios where a reasonable compromise, in terms of resilency versus weak link, would fit well too avoiding to use a lot of aggregated links across the whole stack (so just terminating a LACP Port Trunk to two stack members would suffice).