Aerospike Upgrade


#1

Hi Team,

Currently We are using Aerospike Enterprise Edition build 3.7.1[with spring-data-areospike (not updated from 2014)] and planning to upgrade with latest Enterprise Edition.

Do i need to update aerospike client in sprind-data-aerospike? if yes then what would be the impact?

And how we can move the existing data from old edition cluster to a new cluster [latest edition] [Note:xdr is disable on our old cluster and node restart is almsot impossible]

Thanks Akash Singh


#2

A few things you need to consider separately here.

Regardless of clients, if you want to upgrade from EE 3.7.1 to EE 4.2 you need to go through EE 3.13, which is a jump version. You first need to do a rolling upgrade to EE 3.13 and switch the clustering protocol. Version 4.2 has a different, more efficient storage format. You can do a rolling upgrade from EE 3.13 to EE 4.2 and handle the format change node by node.

The Java client needs certain server versions for certain features, for example using the atomic MapOperation API, so you won’t be able to use those before you’re ahead of EE 3.7.1. You can look at the release notes of the Java client to see if there are any incompatible API changes that require modification in your application.

aerospike/spring-data-aerospike is a community project, seeded by Aerospike, and contributed by several others (heavily by Playtika, for example). If you look at the pom.xml, it’ll build with Java client 4.1.8. As with any change, stage this before trying to roll out to production. I don’t believe you need to make changes if you’re already using the latest Spring Data for Aerospike.


#3

Hi rbotzer,

Thanks for the quick reply!!!

We are not planning to upgrade our cluster as our servers are old and up from 2 years[without any restart] plus we cannot risk the data/downtime while upgrading the production .Instead we are planning to form a new cluster with latest aerospike edition and then we will move only required persisted data.

1>Is it possible to use XDR for migration between two cluster with two different version [3.7.1 -> latest aerospike enterprise edition].

2>let say above migration is possible! can we run xdr process on different machine[as xdr is a seperate process in 3.7.1]

3>can we use same old aerospike client with same old features along with latest aerospike cluster.

Thanks Akash


#4

Any Update Guys?

we are runnig out of time for this upgrade…

Thanks Akash


#5
  1. Yes
  2. Likely not - all your init scripts sit with the node where you installed the server. The XDR process will talk to the server on localhost, rather than using up network capacity to query for updated records (from the digest log) ahead of shipping them out.
  3. Test. Shouldn’t be a problem, but investigate the release notes for incompatible changes, and you should always test ahead of a rollout to production.