I'm using SCDF 2.2.1.RELEASE
with the Skipper Kubernetes deployer 2.1.2.RELEASE
and I'm facing a weird behaviour which I would like to understand whether it's actually intended or an issue or just a no-feature.
When I deploy a stream, I can initially specify the number of replicas per element, following this pattern:
deployer.<appName>.count=2
This works great because as many instances as indicated by me are deployed into Kubernetes. Then if I get back to the stream's definition, I see that a new property has been added probably derived from the deployer.<app>.count
one provided by me:
app.<appName>.spring.cloud.stream.instanceCount=2
However, it's not clear anymore how to update such count, because if I try to just change the deployer.<appName>.count
property to something different such as 1
(without changing the other derived property), then SCDF replies with an error and does nothing:
Package to upgrade has no difference than existing deployed/deleted package. Not upgrading.
Then, if I also change the derived property app.<appName>.spring.cloud.stream.instanceCount=1
, a non-expected behaviour occurs: SCDF generates a new version for the specific app, but still starts it up with the original 2
instances, completely ignoring the new value. And if I check the new definition of the stream, it shows not-synced values:
app.<appName>.spring.cloud.stream.instanceCount=1
deployer.<appName>.count=2
Therefore I'm not sure whether this is intended behaviour or just an issue or event something not yet implemented, so SCDF just interprets the change of the app.<appName>.spring.cloud.stream.instanceCount
as a new version, but it is always overridden by deployer.<appName>.count
. It's very confusing.
Anybody maybe from the SCDF team can throw light on this matter to determine whether this is actually an issue?
Thanks!