You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@cassandra.apache.org by "techpyaasa ." <te...@gmail.com> on 2016/11/16 10:12:34 UTC

Can nodes in c* cluster run different versions ?

Hi all,

We are currently running c*-2.0.17 with 2 datacenters each with 18 nodes.

We like to upgrade to c*-2.1.16. Can we upgrade first all nodes(one by one)
in one dc and then go to next data center.

As it might take few days as it will have 'upgrade sstables' , so just
wanted to know would be there any possibility during this mismatch of c*
version among nodes in cluster during this upgrade process?

Thanks
Techpyaasa

Re: Can nodes in c* cluster run different versions ?

Posted by "techpyaasa ." <te...@gmail.com>.
Thank you @Alain

On Wed, Nov 16, 2016 at 9:13 PM, Alain RODRIGUEZ <ar...@gmail.com> wrote:

> Hey Techpyaasa,
>
> Are you aware of this documentation?
>
> https://docs.datastax.com/en/upgrade/doc/upgrade/cassandra/
> upgrdCassandraDetails.html
>
> Basically yes, you can have multiple versions, but you want to make this
> multi-version time it as short as possible.
>
> As it might take few days as it will have 'upgrade sstables' , so just
>> wanted to know would be there any possibility during this mismatch of c*
>> version among nodes in cluster during this upgrade process?
>
>
> To make the upgrade as short as possible I use to migrate the whole
> cluster and only after upgrade sstables. This minimises the time you're
> running multiple version.
>
> The only (soft) limitation, is that you shouldn't be streaming data around
> (do not bootstrap, repair or remove a node). It might work, that's why I
> say "soft limitation" but it might not work, there is no guarantee, it
> mainly depends on changes that were made between versions I believe.
>
> C*heers,
> -----------------------
> Alain Rodriguez - @arodream - alain@thelastpickle.com
> France
>
> The Last Pickle - Apache Cassandra Consulting
> http://www.thelastpickle.com
>
>
>
> 2016-11-16 11:12 GMT+01:00 techpyaasa . <te...@gmail.com>:
>
>> Hi all,
>>
>> We are currently running c*-2.0.17 with 2 datacenters each with 18 nodes.
>>
>> We like to upgrade to c*-2.1.16. Can we upgrade first all nodes(one by
>> one) in one dc and then go to next data center.
>>
>> As it might take few days as it will have 'upgrade sstables' , so just
>> wanted to know would be there any possibility during this mismatch of c*
>> version among nodes in cluster during this upgrade process?
>>
>> Thanks
>> Techpyaasa
>>
>
>

Re: Can nodes in c* cluster run different versions ?

Posted by Alain RODRIGUEZ <ar...@gmail.com>.
Hey Techpyaasa,

Are you aware of this documentation?

https://docs.datastax.com/en/upgrade/doc/upgrade/cassandra/upgrdCassandraDetails.html

Basically yes, you can have multiple versions, but you want to make this
multi-version time it as short as possible.

As it might take few days as it will have 'upgrade sstables' , so just
> wanted to know would be there any possibility during this mismatch of c*
> version among nodes in cluster during this upgrade process?


To make the upgrade as short as possible I use to migrate the whole cluster
and only after upgrade sstables. This minimises the time you're running
multiple version.

The only (soft) limitation, is that you shouldn't be streaming data around
(do not bootstrap, repair or remove a node). It might work, that's why I
say "soft limitation" but it might not work, there is no guarantee, it
mainly depends on changes that were made between versions I believe.

C*heers,
-----------------------
Alain Rodriguez - @arodream - alain@thelastpickle.com
France

The Last Pickle - Apache Cassandra Consulting
http://www.thelastpickle.com



2016-11-16 11:12 GMT+01:00 techpyaasa . <te...@gmail.com>:

> Hi all,
>
> We are currently running c*-2.0.17 with 2 datacenters each with 18 nodes.
>
> We like to upgrade to c*-2.1.16. Can we upgrade first all nodes(one by
> one) in one dc and then go to next data center.
>
> As it might take few days as it will have 'upgrade sstables' , so just
> wanted to know would be there any possibility during this mismatch of c*
> version among nodes in cluster during this upgrade process?
>
> Thanks
> Techpyaasa
>

Re: Can nodes in c* cluster run different versions ?

Posted by Fabrice Facorat <fa...@gmail.com>.
As said already by Alain you should make this as short as possible:
- streaming operations won't work (repair, bootstrap)
- Hinted Handoff won't work as 2 differents major version of cassandra
can't shared the same schema version
- So no DDL operations (CREATE/ALTER) as you change won't be propagated

you don't need to wait for the end of "nodetool upgradesstable" to upgrade
next node: this can be done after you upgrade all nodes and satrt as an
asynchronous planified job.

My take on this:
- disable repairs
- backup date and especially system table on all nodes
- upgrade 1 node on DC1
- if everything is fine, rolling upgrade all nodes on DC1
- ensure that everything is working (you can still rollback at this point
by rebuild entirely DC1 if something is wrong or restore previous cassandra
version with previous backup files)
- once you are confident enough, upgrade DC2
- when done, schedule upgradesstables and try to spread upgradesstable
throughout your DC and racks if you don't want to impact your read latency
too much
- once finished, reenable repairs




2016-11-16 11:12 GMT+01:00 techpyaasa . <te...@gmail.com>:

> Hi all,
>
> We are currently running c*-2.0.17 with 2 datacenters each with 18 nodes.
>
> We like to upgrade to c*-2.1.16. Can we upgrade first all nodes(one by
> one) in one dc and then go to next data center.
>
> As it might take few days as it will have 'upgrade sstables' , so just
> wanted to know would be there any possibility during this mismatch of c*
> version among nodes in cluster during this upgrade process?
>
> Thanks
> Techpyaasa
>



-- 
Close the World, Open the Net
http://www.linux-wizard.net