Commit df4e15dc authored by Pedro Eduardo Trujillo's avatar Pedro Eduardo Trujillo
Browse files

Define master pequeño y esclavos por separado

Añade subdominios separados para cada uno, límites de recursos y
asignación de los mismos.
parent 1a148f9d
Loading
Loading
Loading
Loading
+3 −2
Original line number Diff line number Diff line
@@ -112,7 +112,8 @@ deploy-pro:
  variables:
    DOCKER_DRIVER: overlay2
    SSH_REMOTE: ${PRO_SSH_REMOTE}
    SERVICE: ${CI_PROJECT_NAME}
    SERVICE: gis
    SERVICES_TO_CHECK: gis_geoserver-master gis_geoserver-slave
    IMAGE_NAME: ${CI_REGISTRY_IMAGE}
    IMAGE_TAG: ${CI_COMMIT_SHA}
    COMPOSE_FILE: docker-compose.tmpl.yml:docker-compose.prod.yml
@@ -125,7 +126,7 @@ deploy-pro:
    - >
      deploy.sh IMAGE_NAME=${IMAGE_NAME} IMAGE_TAG=${IMAGE_TAG}
      COMPOSE_FILE=${COMPOSE_FILE} GEOSERVER_SUBDOMAIN=${GEOSERVER_SUBDOMAIN}
      PUBLIC_HOSTNAME=${PUBLIC_HOSTNAME}
      GEOSERVER_ADMIN_SUBDOMAIN=${GEOSERVER_ADMIN_SUBDOMAIN} PUBLIC_HOSTNAME=${PUBLIC_HOSTNAME}
  environment:
    name: pro
    url: https://${GEOSERVER_SUBDOMAIN}.${PRO_PUBLIC_HOSTNAME}
+15 −10
Original line number Diff line number Diff line
@@ -10,39 +10,44 @@ services:
      labels:
        traefik.port: "${GEOSERVER_PORT}"
        traefik.docker.network: traefik-net
        traefik.admin.frontend.rule: "Host:${GEOSERVER_SUBDOMAIN}.${PUBLIC_HOSTNAME};PathPrefix:/geoserver/web,PathPrefix:/geoserver/rest"
        traefik.admin.frontend.priority: "100"
        traefik.content.frontend.rule: "Host:${GEOSERVER_SUBDOMAIN}.${PUBLIC_HOSTNAME};PathPrefix:/geoserver"
        traefik.content.frontend.priority: "99"
        traefik.frontend.rule: "Host:${GEOSERVER_ADMIN_SUBDOMAIN}.${PUBLIC_HOSTNAME};PathPrefix:/geoserver"
        traefik.backend: geoserver-master
      placement:
        constraints:
          - node.role == worker
          - node.labels.workerid == 1
          - node.role == manager
      restart_policy:
        condition: on-failure
        max_attempts: 3
      resources:
        limits:
          cpus: '0.25'
          memory: 1000M
        reservations:
          memory: 800M

  geoserver-slave:
    networks:
      - traefik-net
    deploy:
      mode: replicated
      replicas: 2
      replicas: 3
      labels:
        traefik.port: "${GEOSERVER_PORT}"
        traefik.docker.network: traefik-net
        traefik.frontend.rule: "Host:${GEOSERVER_SUBDOMAIN}.${PUBLIC_HOSTNAME};PathPrefix:/geoserver"
        traefik.frontend.priority: "99"
        traefik.backend: geoserver-slave
      placement:
        constraints:
          - node.role == worker
          - node.labels.workerid != 1
      restart_policy:
        condition: on-failure
        max_attempts: 3

      resources:
        limits:
          cpus: '0.50'
          memory: 1500M
        reservations:
          memory: 1200M
networks:
  traefik-net:
    external: true
+1 −1
Original line number Diff line number Diff line
@@ -4,7 +4,7 @@ services:
  geoserver-master:
    image: ${IMAGE_NAME}:${IMAGE_TAG:-latest}
    environment:
      - JAVA_OPTS=-Xmx1g -Xss1g
      - JAVA_OPTS=-Xmx512m -Xss512m
    networks:
      - gis-net
      - postgres-net