I've reviewed your charm - looks pretty good - I was able to get a terracotta cluster up and running using the LXC provider really quickly.
I have two comments:
1) hooks/terracotta - configDefaults function
I would use default-java rather that the explicit openjdk-6 path - the next release of Ubuntu will ship openjdk-7 as default so using this link will mean you get auto-upgraded :-)
2) Source of distribution
I like the way you are validating the checksums on the distribution of terracotta - and the fact that this is configuration.
Around 12 months ago we did some work to package terracotta from the upstream binary distribution:
This was getting some limited use based on feedback I had from users but it would be a nice complement to this charm and would move the stuff I would expect to see in packaging out of the charm.
Note that this point won't block entry to official charm status - but would be nice to discuss at UDS next week.
3) metadata.yaml - peer relationship
The way you have your peer relationship defined in metadata.yaml works fine (although I'm not sure why):
However its not formed as per spec:
So I'm a little concerned that it might break at a later date is something in juju changes - I think this is correct:
Marking 'Incomplete' pending fixup of points 1) and 3).