gpt4 book ai didi

docker - 如果将服务扩展到超过docker节点大小,会有什么影响?

转载 作者:行者123 更新时间:2023-12-02 19:32:28 25 4
gpt4 key购买 nike

我在docker swarm模式下有3个节点。

1个Manager和2个Worker节点

我对这里有2个疑问?

  • 如果将服务扩展到大于我们拥有的节点数,将会有什么效果。 (假设将一项服务扩展到5或6)
  • 如果服务具有必须仅在管理器节点上运行的约束,并且我们将其数量扩展到大于管理器节点的数量(例如,缩放至3),那么伸缩将发生什么?

    我在管理器节点中运行了mysql服务,该服务在docker-compose中定义了一个约束放置以在管理器节点中运行。这是我尝试将其缩放到 6 时看到的效果,尽管我只有3个节点。 docker service logs 显示4/6运行,并且甚至波动,有时显示6/6,有时显示5/6

    这是docker-compose.yml
    version: '3.4'

    networks:
    smstake:
    ipam:
    config:
    - subnet: 10.0.10.0/24


    services:

    db:
    image: mysql:5.7
    networks:
    - smstake
    ports:
    - "3306"
    environment:
    MYSQL_ROOT_PASSWORD: password
    MYSQL_DATABASE: mydb
    MYSQL_USER: myuser
    MYSQL_PASSWORD: password
    volumes:
    - mysql_data_2:/var/lib/mysql
    deploy:
    mode: replicated
    replicas: 1
    placement:
    constraints:
    - node.role == manager
    app:
    image: SMSTAKE_VERSION
    ports:
    - 8000:80
    networks:
    - smstake
    depends_on:
    - db
    # - migration
    deploy:
    mode: replicated
    replicas: 3

    migration:
    # build: .
    image: SMSTAKE_VERSION
    command: sh -xc "sleep 10 && pwd && php artisan migrate:fresh --seed 2>&1"
    networks:
    - smstake
    depends_on:
    - app
    - db
    deploy:
    mode: replicated
    replicas: 1
    placement:
    constraints:
    - node.role == manager
    volumes:
    mysql_data_2:

  • 最佳答案

    What will be the effect if I scale the service to number greater than nodes we have. (Suppose scaling one service to 5 or 6)



    如果扩展到超过节点大小,则某些节点将运行同一服务的多个实例。 Docker-swarm根据您施加的约束选择了哪些节点:它随机选择一个与约束匹配的节点。

    如果没有匹配约束的节点,则该服务不会扩展(它具有零个实例)。在添加更多节点或更改约束的情况下,Docker-swarm将检查其是否可以启动新实例。 Docker-swarm始终尝试遵循所需状态(如果服务的scale = 3,则Docker-swarm将在匹配约束的任何节点上启动3个实例,即使它只是一个节点,也将在该节点上启动3个实例)。

    What will happen to the scale if the service has a constraint that it must be running on the manager nodes only and we scale the number higher than number of manager nodes .(For example scaling to 3)



    与上述相同的效果。

    关于docker - 如果将服务扩展到超过docker节点大小,会有什么影响?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49851535/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com