openwhisk-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "David P Grove" <gro...@us.ibm.com>
Subject possible approaches for dynamic assignment of invoker ids
Date Sun, 03 Sep 2017 00:17:45 GMT


Hi,

	I prototyped one possible approach for supporting dynamic assignment
of invoker instance ids in [1].  This approach adds a round of messaging to
invoker startup where the invoker communicates with the controller(s) to be
assigned an instance id.   It preserves the current dense numbering of
invokers, but adds a little latency to system startup.
	I think it would be possible (with marginally more work) to instead
change invoker ids to be random UUIDs that the invokers could self
generate.  This would eliminate the extra round of communication, but would
make invoker names more cumbersome to humans and would need some tweaks in
the load balancer to add a mapping between sparse UUIDs to a dense
numbering to be used during the hash-based assignment of incoming work to
invokers.

	The motivation for dynamic assignment of invoker instance ids is (a)
elasticity support (frequent resizing of invoker pool to match load) and
(b) making it easy to use DaemonSets instead of StatefulSets for invokers
when deploying openwhisk on kubernetes.

	If people have thoughts on the merits of the two possible approaches
or thoughts on other possible approaches, please comment on the PR or
discuss here on the dev list

thanks,

--dave

[1] https://github.com/apache/incubator-openwhisk/pull/2689

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message