Over time I have gradually accumulated quite a number of keys. I have my PGP keys for my mail encryptions, my SSH keys, multiple VPN certs and keys for various services, my android keystore keys. Currently I just chuck it into a folder, storing everything in plain text, which is fine as long as my computer is not compromised. Even if it is, I believe most hackers today would be looking for credit card details and not keys so it would probably still be ok. Furthermore, the keys require a passphrase to use so i guess it would still be quite safe even though it is in plain text. I never leave my laptop unattended as well so that takes care of the physical security aspect.
I do keep a copy of the keys on my cubie, just in case of hard disk failure. Never had the practice of storing anything valuable on the cloud, thankfully, considering the current hype about prism. With so many businesses migrating to the cloud in recent years, the incident will probably make companies reconsider their decision. The safest place would be to store valuable information on your own servers.
Anyway, most of my keys are asymmetric key pairs using RSA/DSA algorithm which brings the question of why I require so many keys for different purposes. Is there an "OpenID" type of implementation for keys where 1 key pair can be used for multiple purposes? It would certainly be useful for me to have a single key that can be used for various services.