Bringing together the Apache Cassandra experts from the community and DataStax.

Want to learn? Have a question? Want to share your expertise? You are in the right place!

Not sure where to begin? Getting Started

 

question

Gangadhara M.B avatar image
Gangadhara M.B asked Erick Ramirez commented

How do we update the seeds list after replacing the nodes with new hardware?

We have DSE 5.1.11 version Cassandra cluster with 09 nodes ,now we have added another set of 09 new nodes (i3.2x EC2 Instances) to replace old C5.4x large Instances.

After adding new i3.2x nodes to the existing cluster we decommissioned old C5.4x nodes .Currently cluster is having some IP in the seeds list from both old C5.4x nodes and i3.2x EC2 Instances.

Now question is how to remove old C5.4x nodes entries in the seeds list dynamically without requiring to bounce Cassandra service on i3.2x EC2 Instance nodes ? . I can update/modify cassandra.yaml manually to include only i3.2x IPs in the seeds list but want to update Cassandra configuration dynamically without requiring service bounce.

Is there option to dynamically update seeds list so that seeds list will have only IPs from i3.2x EC2 instances when i run "nodetool getseeds" it should show only seeds IPs of i3.2x EC2 Instances .

Why this question arising is to avoid bouncing of service on i3.2x nodes with the intension of removing seeds list IPs of old/decommissioned nodes.

Thanks

Gangadhara

seeds
10 |1000 characters needed characters left characters exceeded

Up to 8 attachments (including images) can be used with a maximum of 1.0 MiB each and 10.0 MiB total.

1 Answer

Erick Ramirez avatar image
Erick Ramirez answered Erick Ramirez commented

After you have updated cassandra.yaml with the new seeds list, you can make the gossiper refresh its in-memory list of seeds with the following command:

$ nodetool reloadseeds

To illustrate, I started off with just one seed in my cluster:

seed_provider:
    - class_name: org.apache.cassandra.locator.SimpleSeedProvider
      parameters:
          - seeds: "10.1.2.100"

When I try to get the seeds list on the same node:

$ nodetool getseeds
Seed node list does not contain any remote node IPs

When I update the seeds list to:

          - seeds: "10.1.2.100,10.1.2.200,10.1.2.300"

and reload:

$ nodetool reloadseeds
Updated seed node IP list excluding the current node IP: /10.1.2.200 /10.1.2.300

Similarly, the seeds list is now:

$ nodetool getseeds
Current list of seed node IPs excluding the current node IP: /10.1.2.200 /10.1.2.300

Cheers!

2 comments Share
10 |1000 characters needed characters left characters exceeded

Up to 8 attachments (including images) can be used with a maximum of 1.0 MiB each and 10.0 MiB total.

You are genius ,your explanation with example makes everything crystal clear

0 Likes 0 ·

Not a problem. I also noted that you logged ticket #67537 with DataStax Support and marked it as resolved. Cheers!

0 Likes 0 ·