Almost any 8 speed cassette will be compatible with your bike.* As far as the chain goes, that more or less depends on the cassette.
As long as you stick to 8-speed, there are basically only two things you need to worry about.
- Your cassette should fit within the range of your rear derailleur. Every derailleur has a minimum and maximum cog size that it can accommodate. Just check the specs for your derailleur and stay within that range.
- Your chain needs to be the right length for the largest ring on your new cassette. If you get a cassette that has a cog that's bigger than 32 teeth, you will almost certainly need a longer chain. If your big cog is smaller than 32 teeth, you may need a shorter chain. The venerable Sheldon Brown has a great guide on how to choose the correct length for your set up. If you're unsure, just buy a chain that has as many links as possible (at least as many as your current chain) and remove links as needed.
In short, any Shimano or Sram 8-speed 11-32 cassette and chain will work without any issues. If you're changing the range, just check your rear derailleur compatibility before you buy.
*The one major exception to this rule is Campagnolo. As a general rule, their stuff isn't compatible with anything else. That's not entirely true, and I'm not sure about 8 speed cassettes in particular, but I find it's easier to just steer clear unless you're willing to switch everything over to Campagnolo.