How to add a namespace in a production cluster


#1

We have a production environment with many Aerospike nodes. Now we need to add a new namespace to that cluster, so we changed all the configuration files, but we yet have to restart the servers so the change take place.

Which is the best way to apply the config change (with the new namespace) and keeping the whole cluster active without interfering with production operations? Is there a way to restart one by one?

Thanks!


#2

Currently you cannot add a namespace without a cluster wide restart.


#3

Hello kporter, thanks for your answer!

Then how do you add a namespace in your cluster without downtime? Is that possible?

Thanks,


#4

There isn’t a way to add a namespace without downtime at this time.


#5

Is this a feature that you are currently working on, and if so, do you have a time frame on when the feature will be completed?


#6

It isn’t a direct priority at the moment; however, we are currently working on many of the prerequisites required to roll in a new namespace.


#7

So is there any way possible for me to effectively add a new namespace without users not being able to access the data during the process?


#8

This question has already been answered in this thread.


#9

so this post doesn’t hint at a solution to this at all?:


#10

That solution is very involved and requires using an enterprise feature (XDR) and asbackup as well as being able to trigger your clients to “cut over to the new cluster”.

What I believe is being asked in this thread is the ability to add a namespace to an existing cluster without downtime. I assume this means either dynamically or through rolling restart were at most (replication factor - 1) nodes are down at any given instant. The latter is frequently discussed internally and many of the major obstacles for rolling in a namespace intersect with current feature development efforts.


#11

The ability to add/remove namespaces with rolling restart of the cluster is added starting server version 3.13.0.1 for both Community and Enterprise versions on paxos-protocol version v5.

[AER-3485] - (KVS) Support adding/removing namespaces with rolling restart. http://www.aerospike.com/download/server/notes.html#3.13.0.1


#12

@anushree. What does

Support adding/removing namespaces with rolling restart

mean?

Does it has to modify the aerospace.conf file and restart the cluster?

I do not see any API with namespace in the latest Java Client (4.0.2).


#13

It means that you can add/remove a namespace in aerospike.conf and restart the cluster one node at a time (which means no downtime for existing namespaces).

Please do not dual post in the forums.


#14

Sorry, but I am afraid that this may not be what this post expected: Create a new namespace dynamically, without restart. I thought we can dynamically add/remove namespaces instead of configuring it and restart the cluster, I think that is more attractive. Any plan for this feature? Thanks.


#15

There aren’t any plans to make namespace addition/removal dynamic at this time.