I'm working on building a new Cassandra cluster and I'd like to create a DNS record that will hold the IP addresses of all of the nodes. I build all of my servers in the cloud and they automatically create a new A record for themselves when they come online, but I don't know how to add to an existing record without overwriting the existing info.
The DNS server is a Windows 2008 domain controller and my Cassandra nodes are Ubuntu 10.04 servers.
I would use a script to convert "nodetool ring" results into A records. The data used by nodetool is also available in Cassandra's JMX interface. By using that data, you don't have to worry about amending the existing data because you can overwrite it with a new, complete set of IP addresses. You also don't have to worry about the complexity of removing IPs for removed or replaced cluster members; "nodetool ring" will always have the right data.