Personally I wouldn’t use “do a role”; it is not good English.
“Take a role” is certainly possible, as Nicole says above.
Example: Imagine that we are law students, about to act a mock trial. The organizer might say, “Mai, will you please take the role of judge. Nicholas, you take the role of counsel for the defense…”
You can also play a role (this is a frequent usage), take up a role, take on a role, assume a role … and so on.