Skip to content

Any additional configuration required to make Orbiter autoscale? #62

Description

@jchariot

This is my first time using Orbiter. Currently, I got this swarmtest.yml :

version: '3.7'

networks:
  my_docker_network:

services:
  orbiter:
    image: gianarb/orbiter
    command: /bin/orbiter daemon --debug
    ports:
      - 8000:8000
    volumes:
      - /var/run/docker.sock:/var/run/docker.dock
    deploy:
      placement:
        constraints:
          - node.role == manager
      mode: replicated
      replicas: 1
  web:
    image: nginx:alpine
    ports:
      - "0.0.0.0:80:80"
      - "0.0.0.0:443:443"
    volumes:
      - ./web:/var/www/web
    networks:
      - my_docker_network
    deploy:
      labels:
        - "orbiter=true"
      replicas: 1
  phpfpm:
    image: php:7.3-fpm-alpine3.9
    volumes:
      - ./web:/var/www/web
    networks:
      - my_docker_network
    deploy:
      labels:
        - "orbiter=true"
      replicas: 1

which I runs with: docker stack deploy -c swarmtest.yml myswarm

I see from docker service ls that they all came up:

$ docker service ls
ID             NAME              MODE         REPLICAS   IMAGE                    PORTS
fv0c3eea5g2n   myswarm_orbiter   replicated   1/1        gianarb/orbiter:latest   *:8000->8000/tcp
ez3r46p6l297   myswarm_phpfpm    replicated   1/1        php:7.3-fpm-alpine3.9
ne5fkzualf1x   myswarm_web       replicated   1/1        nginx:alpine             *:80->80/tcp, *:443->443/tcp

However, when I do a load test using wrk . I see the CPU of the server goes up but the apps never scale up and they always stay at 1 replica no matter what.

Additionally, does this look right?:

$ curl -v -X GET http://127.0.0.1:8000/v1/orbiter/autoscaler
Note: Unnecessary use of -X or --request, GET is already inferred.
*   Trying 127.0.0.1...
* Connected to 127.0.0.1 (127.0.0.1) port 8000 (#0)
> GET /v1/orbiter/autoscaler HTTP/1.1
> Host: 127.0.0.1:8000
> User-Agent: curl/7.47.0
> Accept: */*
>
< HTTP/1.1 200 OK
< Date: Thu, 29 Jul 2021 14:55:37 GMT
< Content-Length: 11
< Content-Type: text/plain; charset=utf-8
<
* Connection #0 to host 127.0.0.1 left intact
{"data":[]}

What are other things that I must do in order to make Orbiter autoscale?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions