title: Rolling upgrade of multiple java standalone applications (apache camel instances) with hazelcast
body: <p>I have multiple instances of a standalone java application (apache camel) with hazelcast IMDG storing information (in IMaps) that should be accessed by any of the application instance.
  Each of IMaps contain String as key and some custom object as value.</p>
  
  <p>My main problem is - if the currently running and new versions have differences in IMap structures (custom object changed), when I start to deploy updated applications and they connect to active hazelcast cluster - it leads to errors and cluster shutdown. </p>
  
  <p>It's not Blue-Green deployment strategy and I need to have all previously stored hazelcast data after update.</p>
  
  <p>Is there a known opensource solution for rolling upgrade in similar situation ?
  Or maybe someone can point me in the right direction.</p>
  
  <p>P.S. Hazelcast have Rolling Upgrade feature but it's enterprise only (<a href="https://hazelcast.com/products/rolling-upgrade/" rel="nofollow noreferrer">https://hazelcast.com/products/rolling-upgrade/</a>)</p>