Copying SSH IDs between servers

Is it good practice to copy SSH IDs a la ssh-copy-id between remote servers in production, so that they can perform various SSH tasks with one another easier?

Yes, absolutely. Keep separate keys for each system, assigned to accounts with the least-needed privileges on each server. If possible use the command= directive in the authorized_keys file to restrict each key to a specific command, instead of having access to a full shell.

Another good practice you should do ASAP is to disable password authentication.