Closed mabuaisha closed 4 years ago
Hi there,
I don't think you are following the documentation correctly, but I can't be sure.
Can you share how you are deploying the functions? Give me the exact commands please.
https://docs.openfaas.com/architecture/autoscaling/#1-faas-idler
Alex
/set title: Support question on Docker Swarm and faas-idler
@alexellis I followed the instructions based on the link doc you shared.
curl https://raw.githubusercontent.com/openfaas-incubator/faas-idler/master/docker-compose.yml -o faas-idler.yml
docker stack deploy func -c faas-idler.yml
2. Deploying functions
faas-cli deploy -yaml MY_FUNCTION_YAML.yaml [I already have my function build and pushed to docker hub]
I need to see your stack.yml file please.
version: 1.0
provider:
name: openfaas
# This can be override upon request/need
gateway: http://gateway.openfaas.local
functions:
fibfunction:
lang: node12
handler: ./fibfunction
image: mabuaisha/fibfunction:latest
labels:
com.openfaas.scale.min: 1
com.openfaas.scale.max: 20
com.openfaas.scale.zero: true
environment:
read_timeout: 30s
write_timeout: 30s
write_debug: true
the gateway.openfaas.local
already added to my hosts file
Have you invoked your function at least once, to generate a series of data for it?
Yeah I did invoke my functions before and it working fine but for scaling and idler never fired
What are the logs of the idler?
I deployed a sample function on on swarm with idler and it is working fine for me.
Logs from idler:
docker service logs -f func_faas-idler
func_faas-idler.1.yc04kgo1z40e@docker-desktop | 2020/04/15 12:16:38 Gateway version: 0.18.13, SHA: f6526929665cb05ceaca7c9c90a6bd7c5f32dca2
func_faas-idler.1.yc04kgo1z40e@docker-desktop | dry_run: false
func_faas-idler.1.yc04kgo1z40e@docker-desktop | gateway_url: http://gateway:8080/
func_faas-idler.1.yc04kgo1z40e@docker-desktop | inactivity_duration: 5m0s
func_faas-idler.1.yc04kgo1z40e@docker-desktop |
func_faas-idler.1.yc04kgo1z40e@docker-desktop |
func_faas-idler.1.yc04kgo1z40e@docker-desktop |
func_faas-idler.1.yc04kgo1z40e@docker-desktop |
func_faas-idler.1.yc04kgo1z40e@docker-desktop |
func_faas-idler.1.yc04kgo1z40e@docker-desktop |
func_faas-idler.1.yc04kgo1z40e@docker-desktop |
func_faas-idler.1.yc04kgo1z40e@docker-desktop |
func_faas-idler.1.yc04kgo1z40e@docker-desktop |
func_faas-idler.1.yc04kgo1z40e@docker-desktop | {{200 figlet} [1.586953298319e+09 0.016109163453030834]}
func_faas-idler.1.yc04kgo1z40e@docker-desktop | figlet active: 0.016109
func_faas-idler.1.yc04kgo1z40e@docker-desktop |
func_faas-idler.1.yc04kgo1z40e@docker-desktop | {{200 figlet} [1.586953328297e+09 0.01444700793078587]}
func_faas-idler.1.yc04kgo1z40e@docker-desktop | figlet active: 0.014447
func_faas-idler.1.yc04kgo1z40e@docker-desktop |
func_faas-idler.1.yc04kgo1z40e@docker-desktop | {{200 figlet} [1.586953358279e+09 0.014032707921329095]}
func_faas-idler.1.yc04kgo1z40e@docker-desktop | figlet active: 0.014033
func_faas-idler.1.yc04kgo1z40e@docker-desktop |
func_faas-idler.1.yc04kgo1z40e@docker-desktop | {{200 figlet} [1.586953388258e+09 0.013843906168928699]}
func_faas-idler.1.yc04kgo1z40e@docker-desktop | figlet active: 0.013844
func_faas-idler.1.yc04kgo1z40e@docker-desktop |
func_faas-idler.1.yc04kgo1z40e@docker-desktop | {{200 figlet} [1.586953418243e+09 0.0137364002258654]}
func_faas-idler.1.yc04kgo1z40e@docker-desktop | figlet active: 0.013736
func_faas-idler.1.yc04kgo1z40e@docker-desktop |
func_faas-idler.1.yc04kgo1z40e@docker-desktop | {{200 figlet} [1.586953448235e+09 0.013667229880131497]}
func_faas-idler.1.yc04kgo1z40e@docker-desktop | figlet active: 0.013667
func_faas-idler.1.yc04kgo1z40e@docker-desktop |
func_faas-idler.1.yc04kgo1z40e@docker-desktop | {{200 figlet} [1.586953478232e+09 0.013619549436795995]}
func_faas-idler.1.yc04kgo1z40e@docker-desktop | figlet active: 0.013620
func_faas-idler.1.yc04kgo1z40e@docker-desktop |
func_faas-idler.1.yc04kgo1z40e@docker-desktop | {{200 figlet} [1.586953508216e+09 0.013583318586010957]}
func_faas-idler.1.yc04kgo1z40e@docker-desktop | figlet active: 0.013583
func_faas-idler.1.yc04kgo1z40e@docker-desktop |
func_faas-idler.1.yc04kgo1z40e@docker-desktop | {{200 figlet} [1.586953538206e+09 0.01355565357155764]}
func_faas-idler.1.yc04kgo1z40e@docker-desktop | figlet active: 0.013556
func_faas-idler.1.yc04kgo1z40e@docker-desktop |
func_faas-idler.1.yc04kgo1z40e@docker-desktop | {{200 figlet} [1.586953568189e+09 0.013533483028033056]}
func_faas-idler.1.yc04kgo1z40e@docker-desktop | figlet active: 0.013533
func_faas-idler.1.yc04kgo1z40e@docker-desktop |
func_faas-idler.1.yc04kgo1z40e@docker-desktop | {{200 figlet} [1.586953598171e+09 0]}
func_faas-idler.1.yc04kgo1z40e@docker-desktop | figlet idle
func_faas-idler.1.yc04kgo1z40e@docker-desktop | 2020/04/15 12:26:38 Scale figlet 202 0
func_faas-idler.1.yc04kgo1z40e@docker-desktop |
func_faas-idler.1.yc04kgo1z40e@docker-desktop | {{200 figlet} [1.586953628179e+09 0]}
func_faas-idler.1.yc04kgo1z40e@docker-desktop | figlet idle
func_faas-idler.1.yc04kgo1z40e@docker-desktop |
func_faas-idler.1.yc04kgo1z40e@docker-desktop | {{200 figlet} [1.586953658185e+09 0]}
func_faas-idler.1.yc04kgo1z40e@docker-desktop | figlet idle
func_faas-idler.1.yc04kgo1z40e@docker-desktop |
func_faas-idler.1.yc04kgo1z40e@docker-desktop | {{200 figlet} [1.586953688185e+09 0]}
func_faas-idler.1.yc04kgo1z40e@docker-desktop | figlet idle
func_faas-idler.1.yc04kgo1z40e@docker-desktop |
func_faas-idler.1.yc04kgo1z40e@docker-desktop | {{200 figlet} [1.586953718183e+09 0]}
func_faas-idler.1.yc04kgo1z40e@docker-desktop | figlet idle
func_faas-idler.1.yc04kgo1z40e@docker-desktop |
func_faas-idler.1.yc04kgo1z40e@docker-desktop | {{200 figlet} [1.586953748179e+09 0]}
func_faas-idler.1.yc04kgo1z40e@docker-desktop | figlet idle
func_faas-idler.1.yc04kgo1z40e@docker-desktop |
func_faas-idler.1.yc04kgo1z40e@docker-desktop | {{200 figlet} [1.586953778176e+09 0.003393914710923314]}
func_faas-idler.1.yc04kgo1z40e@docker-desktop | figlet active: 0.003394
func_faas-idler.1.yc04kgo1z40e@docker-desktop |
func_faas-idler.1.yc04kgo1z40e@docker-desktop | {{200 figlet} [1.586953808161e+09 0.003393891673765557]}
func_faas-idler.1.yc04kgo1z40e@docker-desktop | figlet active: 0.003394
func_faas-idler.1.yc04kgo1z40e@docker-desktop |
func_faas-idler.1.yc04kgo1z40e@docker-desktop | {{200 figlet} [1.586953838145e+09 0.003393972305185989]}
func_faas-idler.1.yc04kgo1z40e@docker-desktop | figlet active: 0.003394
func_faas-idler.1.yc04kgo1z40e@docker-desktop |
func_faas-idler.1.yc04kgo1z40e@docker-desktop | {{200 figlet} [1.586953868134e+09 0.003393983824273093]}
func_faas-idler.1.yc04kgo1z40e@docker-desktop | figlet active: 0.003394
@viveksyngh @alexellis when I checked the logs for my functions it was only contains the info about the settings, I did not have the full logs but what I can remembered is that only the the configuration info was shown to me
dry_run: false
gateway_url: http://gateway:8080/
inactivity_duration: 5m0s
But did not get the other logs as you attached
Did you add this label com.openfaas.scale.zero=true
to the deployed function ?
You can do that while deploying the function.
faas-cli store deploy figlet --label "com.openfaas.scale.zero=true"
@viveksyngh yeah I'm aware of this and this is my stack.yaml
version: 1.0
provider:
name: openfaas
# This can be override upon request/need
gateway: http://gateway.openfaas.local
functions:
fibfunction:
lang: node12
handler: ./fibfunction
image: mabuaisha/fibfunction:latest
labels:
com.openfaas.scale.min: 1
com.openfaas.scale.max: 20
com.openfaas.scale.zero: true
environment:
read_timeout: 30s
write_timeout: 30s
write_debug: true
in all cases I will give a try and use a sample function from the store and see how it goes for both scaling and idler because the issue for me was for both auto scaling and idler
Have you messed about with any of the settings in the compose file or elsewhere? I see you set an odd looking gateway URL.
@mabuaisha I don't see much difference. I guess there is some other problem.
@alexellis well that http://gateway.openfaas.local:8080
is actually mapped in hosts files which map the ip with that name and use the same compose file provided without any changes
@viveksyngh will give a try today and see if this is happening again or not
Closing as a support issue since we cannot reproduce this and the software appears to be working as designed. Feel free to use Slack or if this is for work, contact OpenFaaS Ltd for paid support.
Vivek thank you for investigating.
Expected Behaviour
I'm expecting that auto scaling will triggered and the faas-idler also work
Current Behaviour
Right now I'm testing openfaas on docker swarm and the auto scaling is not triggered and also faas-idler seems not working after the function being idle for 5 minutes
Steps to Reproduce (for bugs)
Your Environment
docker version
:I'm using Docker Swarm
Operating System and version: Centos 7
Linux serverless-env 3.10.0-957.1.3.el7.x86_64 #1 SMP Thu Nov 29 14:49:43 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux
Deploy any simple function to the cluster
Troubleshooting Info