Skip to content
This repository has been archived by the owner on Jan 4, 2022. It is now read-only.

Releases: rancher/cattle

v0.183.46: Add mount cleanup logic

03 Apr 18:40
Compare
Choose a tag to compare
Find and remove mounts referencing purged instances and host bind mounts
or anonymous docker volumes

Backport of table cleanup logic fixes

03 Apr 23:31
e7a5635
Compare
Choose a tag to compare
Merge pull request #3190 from cjellick/branch-v0.183.37

Backport cleanup logic fixes

v0.183.45

16 Mar 18:14
Compare
Choose a tag to compare
agent:v1.2.10

v0.183.44: Svc upgrade: wait for last batch to become healthy

14 Mar 17:49
Compare
Choose a tag to compare
Before marking service as successfully upgraded

v0.183.43: Fix Hazelcast message amplification

12 Mar 22:41
Compare
Choose a tag to compare
Cattle will create topics such as "ping;agent=4" on demand per agent.  The
approach taken previously was to create one topic named "ping;" and then
multiplex all "ping;*" messages over the same topic.  This kept down the
number of topics we create, but also avoided the need to have some type
of GC logic of deleting topics.

If two topics, "ping;agent=1" and "ping;agent=2" were needed then one
topic "ping;" was created with two subscriptions.  The subscribers would
then check the message key if it matched "agent=1" or "agent=2".

Unfortunately this approach has some fairly bad side effects in
Hazelcast which has lead to a fairly large amplification of traffic.
What has been often seen is if you X bytes flowing over port 8080, you'd
have 10X flowing over port 9345.

The reason for this is that when one publishes to a topic there is one
message sent per subscriber, not one per node that has a subscriber.
The later was assumed to be the behavior.  For example, if node A
published a message to a topic that has 10 subscribers on node B, node B
will get 10 messages across the wire.  Not one message for node B that
is then seen by the 10 subscribers.

Topics are used quite a bit in Cattle but one distinct example is
pinging nodes.  One topic per node (which is described as an agent in
the system) is created.  If one had 100 nodes, in the previous code, 1
topic is created with 100 subscriptions.  Every 15 seconds an agent is
pinged.  100 nodes would translate to 100 published messages every 15
seconds.  Given an HA setup with worst case distribution you would
expect 100 messages across the wire every 15 seconds. Unfortunately,
due to how Hazelcast works it is actually N^2 every 15 seconds, so 10000
messages.

To fix this issue we no longer multiplex messages across topics and
create one topic per full name, thus reducing the subscription count.
This does mean we dynamically create and delete topics now.  GC logic
has been added such that a topic with 0 subscription for 15 seconds will
be deleted.  If that topic is needed later it will be created again.

v0.183.42: Update Windows agent version

02 Mar 03:33
Compare
Choose a tag to compare

v0.183.41

13 Feb 00:48
Compare
Choose a tag to compare
networkDriverService should be active to process healthcheck

v0.183.40

01 Feb 00:35
Compare
Choose a tag to compare
agent-windows:v0.2.0-rc2

v0.183.39

26 Jan 06:35
Compare
Choose a tag to compare
lb-service-haproxy:v0.7.20

v0.183.38

13 Jan 06:22
Compare
Choose a tag to compare
go-agent v0.13.0