Tags: andmos/faas
Tags
Extract scaling from zero - extracting this package means it can be used in other components such as the asynchronous nats-queue-worker which may need to invoke functions which are scaled down to zero replicas. Ref: openfaas/nats-queue-worker#32 Tested on Docker Swarm for scaling up, already scaled and not found error. Signed-off-by: Alex Ellis (VMware) <alexellis2@gmail.com>
Update for scaling edge-case - as reported on Slack and in issue openfaas#931 the gateway scaling code was scaling to zero replicas as a result of the "proportional scaling" added by @Templum's PR. This commit added a failing test which was fixed by adding boundary checking - now if the scaling amount is "0" we keep the current amount of replicas. Signed-off-by: Alex Ellis (VMware) <alexellis2@gmail.com>
Update for scaling edge-case - as reported on Slack and in issue openfaas#931 the gateway scaling code was scaling to zero replicas as a result of the "proportional scaling" added by @Templum's PR. This commit added a failing test which was fixed by adding boundary checking - now if the scaling amount is "0" we keep the current amount of replicas. Signed-off-by: Alex Ellis (VMware) <alexellis2@gmail.com>
Update for scaling edge-case - as reported on Slack and in issue openfaas#931 the gateway scaling code was scaling to zero replicas as a result of the "proportional scaling" added by @Templum's PR. This commit added a failing test which was fixed by adding boundary checking - now if the scaling amount is "0" we keep the current amount of replicas. Signed-off-by: Alex Ellis (VMware) <alexellis2@gmail.com>
Enable basic auth for service query / scaling on provider - this is a blocking issue for auth with Docker Swarm fixes openfaas#879 Signed-off-by: Alex Ellis (VMware) <alexellis2@gmail.com>
Alter graceful shutdown sequence - the shutdown sequence meant that the kubelet was still passing work to the watchdog after the HTTP socket was closed. This change means that the kubelet has a chance to run its check before we finally stop accepting new connections. It will require some basic co-ordination between the kubelet's checking period and the "write_timeout" value in the container. Tested with Kubernetes on GKE - before the change some Pods were giving a connection refused error due to them being not detected as unhealthy. Now I receive 0% error rate even with 20 qps. Issue was shown by scaling to 20 replicas, starting a test with hey and then scaling to 1 replica while tailing the logs from the gateway. Before I saw some 502, now I see just 200s. Signed-off-by: Alex Ellis (VMware) <alexellis2@gmail.com>
Fix issue with direct_functions and path behaviour - The path clipping / transforming behaviour must be turned-off when we are not using direct_functions as is used in faas-nomad and faas-ecs. This will need a change in each provider to strip paths, but fixes a 404 error these users will see if they upgrade to 0.9.2 or newer. 0.9.3 will have a this fix meaning the whole un-edited path is passed to the provider when direct_functions is set to false. Signed-off-by: Alex Ellis (VMware) <alexellis2@gmail.com>