2

Currently we have karaf deployment like following

  • Its active-standby
  • Standby is there with startlevel as 50 so failover would be fast as system bundles are at start status and user bundles are at install status
  • As soon as active goes down standby takeover.

Now we planned to migrate to kubernetes, as per current research

Kubernetes will create 1 pod for us and we declare happy state as 1 which mean if POD goes down it will automatically launch new, but my concern is launching of new POD will take more time as in legacy deployment, standby was in semi active state.

How we can achieve such active-standby in kubernetes?

ImranRazaKhan
  • 1,955
  • 5
  • 33
  • 74
  • well, that depends on if you app is stateless or not...if its stateless that just use more then one pod (like 2 or 3) for your app, and you should be all set... – Tomislav Mikulin Jun 24 '18 at 12:53
  • @TomislavMikulin its stateless, but condition is at a time one should be up and second would be at semi start state(as mentioned above), As currently deployed on two physical servers, i thought to use docker overlay network but it requires service discovery services like etcd or consul on third server(which i dont have) – ImranRazaKhan Jun 24 '18 at 13:51
  • 1
    Well if you dont want (or cant) have multiple pods of you app already running, you could make two different deployments of the same app, and just switch them through the service object. That way you could have an extra pod running that you can switch on at any moment. – Tomislav Mikulin Jun 24 '18 at 14:06
  • @TomislavMikulin Nice suggestions, i was thinking on these lines too. now evaluating either i use docker overlay network with swarm mode or use kubernetes? As two deployment will communicate over socket to become active. – ImranRazaKhan Jun 24 '18 at 14:23
  • if you're satisfied you can accept my answer :) – Tomislav Mikulin Jun 26 '18 at 08:25

1 Answers1

0

Answer provided by Tomislav Mikulin in comments:

That depends on if you app is stateless or not...if its stateless that just use more then one pod (like 2 or 3) for your app, and you should be all set...

If you don't want (or can't) have multiple pods of you app already running, you could make two different deployments of the same app, and just switch them through the Service object. That way you could have an extra pod running that you can switch on at any moment.

VAS
  • 8,538
  • 1
  • 28
  • 39