Commit 24eb1e86 authored by Nacho's avatar Nacho
Browse files

Se elimina jerarquía master - slave

Al usar HazelCast no es necesario utilizar una
jerarquía maestro - esclavo, se eliminan compose
innecesarios
parent b2de2a53
Loading
Loading
Loading
Loading
+12 −90
Original line number Diff line number Diff line
@@ -53,42 +53,17 @@ container-scanning:
  artifacts:
    paths: [gl-sast-container-report.json]

deploy-geoserver-master-dev:
deploy-geoserver-dev:
  stage: deploy
  image: registry.gitlab.com/redmic-project/docker/docker-deploy
  variables:
    SSH_REMOTE: ${DEV_SSH_REMOTE}
    STACK: gis
    SERVICES_TO_CHECK: gis_geoserver-master
    SERVICES_TO_CHECK: gis_geoserver
    STATUS_CHECK_DELAY: 180
    IMAGE_NAME: ${CI_REGISTRY_IMAGE}
    IMAGE_TAG: ${CI_COMMIT_SHA}
    COMPOSE_FILE: docker-compose.geoserver-master.tmpl.yml:docker-compose.geoserver-master.dev.yml
    GEOSERVER_SUBDOMAIN: ${DEV_GEOSERVER_ADMIN_SUBDOMAIN}
    PUBLIC_HOSTNAME: ${DEV_PUBLIC_HOSTNAME}
  script:
    - create-nets.sh gis-net
    - >
      deploy.sh IMAGE_NAME=${IMAGE_NAME} IMAGE_TAG=${IMAGE_TAG} COMPOSE_FILE=${COMPOSE_FILE}
      GEOSERVER_SUBDOMAIN=${GEOSERVER_SUBDOMAIN} PUBLIC_HOSTNAME=${PUBLIC_HOSTNAME}
  environment:
    name: geoserver-master-dev
    url: https://${DEV_GEOSERVER_ADMIN_SUBDOMAIN}.${DEV_PUBLIC_HOSTNAME}
  only:
    - dev
  when: manual

deploy-geoserver-slave-dev:
  stage: deploy
  image: registry.gitlab.com/redmic-project/docker/docker-deploy
  variables:
    SSH_REMOTE: ${DEV_SSH_REMOTE}
    STACK: gis
    SERVICES_TO_CHECK: gis_geoserver-slave
    STATUS_CHECK_DELAY: 180
    IMAGE_NAME: ${CI_REGISTRY_IMAGE}
    IMAGE_TAG: ${CI_COMMIT_SHA}
    COMPOSE_FILE: docker-compose.geoserver-slave.tmpl.yml:docker-compose.geoserver-slave.dev.yml
    COMPOSE_FILE: docker-compose.tmpl.yml:docker-compose.dev.yml
    GEOSERVER_SUBDOMAIN: ${DEV_GEOSERVER_SUBDOMAIN}
    PUBLIC_HOSTNAME: ${DEV_PUBLIC_HOSTNAME}
  script:
@@ -97,51 +72,23 @@ deploy-geoserver-slave-dev:
      deploy.sh IMAGE_NAME=${IMAGE_NAME} IMAGE_TAG=${IMAGE_TAG} COMPOSE_FILE=${COMPOSE_FILE}
      GEOSERVER_SUBDOMAIN=${GEOSERVER_SUBDOMAIN} PUBLIC_HOSTNAME=${PUBLIC_HOSTNAME}
  environment:
    name: geoserver-slave-dev
    name: geoserver-dev
    url: https://${DEV_GEOSERVER_SUBDOMAIN}.${DEV_PUBLIC_HOSTNAME}
  only:
    - dev
  when: manual

deploy-geoserver-master-supporting-branch:
  stage: deploy
  image: registry.gitlab.com/redmic-project/docker/docker-deploy
  variables:
    SSH_REMOTE: ${DEV_SSH_REMOTE}
    STACK: gis
    SERVICES_TO_CHECK: gis_geoserver-master
    STATUS_CHECK_DELAY: 180
    IMAGE_NAME: ${CI_REGISTRY_IMAGE}
    IMAGE_TAG: ${CI_COMMIT_SHA}
    COMPOSE_FILE: docker-compose.geoserver-master.tmpl.yml:docker-compose.geoserver-master.dev.yml
    GEOSERVER_SUBDOMAIN: ${DEV_GEOSERVER_ADMIN_SUBDOMAIN}
    PUBLIC_HOSTNAME: ${DEV_PUBLIC_HOSTNAME}
  script:
    - create-nets.sh gis-net
    - >
      deploy.sh IMAGE_NAME=${IMAGE_NAME} IMAGE_TAG=${IMAGE_TAG} COMPOSE_FILE=${COMPOSE_FILE}
      GEOSERVER_SUBDOMAIN=${GEOSERVER_SUBDOMAIN} PUBLIC_HOSTNAME=${PUBLIC_HOSTNAME}
  environment:
    name: geoserver-master-dev
    url: https://${DEV_GEOSERVER_ADMIN_SUBDOMAIN}.${DEV_PUBLIC_HOSTNAME}
  only:
    - branches
  except:
    - master
    - dev
  when: manual

deploy-geoserver-slave-supporting-branch:
deploy-geoserver-supporting-branch:
  stage: deploy
  image: registry.gitlab.com/redmic-project/docker/docker-deploy
  variables:
    SSH_REMOTE: ${DEV_SSH_REMOTE}
    STACK: gis
    SERVICES_TO_CHECK: gis_geoserver-slave
    SERVICES_TO_CHECK: gis_geoserver
    STATUS_CHECK_DELAY: 180
    IMAGE_NAME: ${CI_REGISTRY_IMAGE}
    IMAGE_TAG: ${CI_COMMIT_SHA}
    COMPOSE_FILE: docker-compose.geoserver-slave.tmpl.yml:docker-compose.geoserver-slave.dev.yml
    COMPOSE_FILE: docker-compose.tmpl.yml:docker-compose.dev.yml
    GEOSERVER_SUBDOMAIN: ${DEV_GEOSERVER_SUBDOMAIN}
    PUBLIC_HOSTNAME: ${DEV_PUBLIC_HOSTNAME}
  script:
@@ -150,7 +97,7 @@ deploy-geoserver-slave-supporting-branch:
      deploy.sh IMAGE_NAME=${IMAGE_NAME} IMAGE_TAG=${IMAGE_TAG} COMPOSE_FILE=${COMPOSE_FILE}
      GEOSERVER_SUBDOMAIN=${GEOSERVER_SUBDOMAIN} PUBLIC_HOSTNAME=${PUBLIC_HOSTNAME}
  environment:
    name: geoserver-slave-dev
    name: geoserver-dev
    url: https://${DEV_GEOSERVER_SUBDOMAIN}.${DEV_PUBLIC_HOSTNAME}
  only:
    - branches
@@ -159,42 +106,17 @@ deploy-geoserver-slave-supporting-branch:
    - dev
  when: manual

deploy-geoserver-master-pro:
  stage: deploy
  image: registry.gitlab.com/redmic-project/docker/docker-deploy
  variables:
    SSH_REMOTE: ${PRO_SSH_REMOTE}
    STACK: gis
    SERVICES_TO_CHECK: gis_geoserver-master
    STATUS_CHECK_DELAY: 180
    IMAGE_NAME: ${CI_REGISTRY_IMAGE}
    IMAGE_TAG: ${CI_COMMIT_SHA}
    COMPOSE_FILE: docker-compose.geoserver-master.tmpl.yml:docker-compose.geoserver-master.prod.yml
    GEOSERVER_SUBDOMAIN: ${PRO_GEOSERVER_ADMIN_SUBDOMAIN}
    PUBLIC_HOSTNAME: ${PRO_PUBLIC_HOSTNAME}
  script:
    - create-nets.sh gis-net
    - >
      deploy.sh IMAGE_NAME=${IMAGE_NAME} IMAGE_TAG=${IMAGE_TAG} COMPOSE_FILE=${COMPOSE_FILE}
      GEOSERVER_SUBDOMAIN=${GEOSERVER_SUBDOMAIN} PUBLIC_HOSTNAME=${PUBLIC_HOSTNAME}
  environment:
    name: geoserver-master-pro
    url: https://${PRO_GEOSERVER_ADMIN_SUBDOMAIN}.${PRO_PUBLIC_HOSTNAME}
  only:
    - master
  when: manual

deploy-geoserver-slave-pro:
deploy-geoserver-pro:
  stage: deploy
  image: registry.gitlab.com/redmic-project/docker/docker-deploy
  variables:
    SSH_REMOTE: ${PRO_SSH_REMOTE}
    STACK: gis
    SERVICES_TO_CHECK: gis_geoserver-slave
    SERVICES_TO_CHECK: gis_geoserver
    STATUS_CHECK_DELAY: 180
    IMAGE_NAME: ${CI_REGISTRY_IMAGE}
    IMAGE_TAG: ${CI_COMMIT_SHA}
    COMPOSE_FILE: docker-compose.geoserver-slave.tmpl.yml:docker-compose.geoserver-slave.prod.yml
    COMPOSE_FILE: docker-compose.tmpl.yml:docker-compose.prod.yml
    GEOSERVER_SUBDOMAIN: ${PRO_GEOSERVER_SUBDOMAIN}
    PUBLIC_HOSTNAME: ${PRO_PUBLIC_HOSTNAME}
  script:
@@ -202,7 +124,7 @@ deploy-geoserver-slave-pro:
      deploy.sh IMAGE_NAME=${IMAGE_NAME} IMAGE_TAG=${IMAGE_TAG} COMPOSE_FILE=${COMPOSE_FILE}
      GEOSERVER_SUBDOMAIN=${GEOSERVER_SUBDOMAIN} PUBLIC_HOSTNAME=${PUBLIC_HOSTNAME}
  environment:
    name: geoserver-slave-pro
    name: geoserver-pro
    url: https://${PRO_GEOSERVER_SUBDOMAIN}.${PRO_PUBLIC_HOSTNAME}
  only:
    - master
+2 −6
Original line number Diff line number Diff line
GEOSERVER_PORT=8080
GEOSERVER_USER=admin
GEOSERVER_PASS=geoserver
SLAVE_SERVICE_NAME=geoserver-slave
SLAVES_MANAGEMENT_DELAY=180
SLAVES_MANAGEMENT_INTERVAL=1800
SLAVE_MANAGEMENT_TIMEOUT=300
CLUSTER_NAME="geoserver-cluster"
CLUSTER_PASSWORD="changeme"
+2 −2
Original line number Diff line number Diff line
version: '3.5'

services:
  geoserver-slave:
  geoserver:
    deploy:
      mode: replicated
      replicas: 1
@@ -9,7 +9,7 @@ services:
        traefik.port: "${GEOSERVER_PORT}"
        traefik.docker.network: traefik-net
        traefik.frontend.rule: "Host:${GEOSERVER_SUBDOMAIN}.${PUBLIC_HOSTNAME};PathPrefix:/geoserver"
        traefik.backend: geoserver-slave
        traefik.backend: geoserver
      restart_policy:
        delay: 1m
        window: 3m
+0 −29
Original line number Diff line number Diff line
version: '3.5'

services:
  geoserver-master:
    ports:
      - target: ${GEOSERVER_PORT}
        published: 8095
        mode: host
    deploy:
      mode: replicated
      replicas: 1
      labels:
        traefik.port: "${GEOSERVER_PORT}"
        traefik.docker.network: traefik-net
        traefik.frontend.rule: "Host:${GEOSERVER_SUBDOMAIN}.${PUBLIC_HOSTNAME};PathPrefix:/geoserver"
        traefik.backend: geoserver-master
      restart_policy:
        delay: 1m
        window: 3m
      resources:
        limits:
          cpus: '0.5'
          memory: 1G
        reservations:
          memory: 820M

volumes:
  geoserver-vol:
    name: geoserver-vol
+0 −31
Original line number Diff line number Diff line
version: '3.5'

services:
  geoserver-master:
    deploy:
      mode: replicated
      replicas: 1
      labels:
        traefik.port: "${GEOSERVER_PORT}"
        traefik.docker.network: traefik-net
        traefik.frontend.rule: "Host:${GEOSERVER_SUBDOMAIN}.${PUBLIC_HOSTNAME};PathPrefix:/geoserver"
        traefik.backend: geoserver-master
      placement:
        constraints:
          - node.role == manager
      restart_policy:
        delay: 1m
        window: 3m
      resources:
        limits:
          cpus: '0.5'
          memory: 1G
        reservations:
          memory: 820M

volumes:
  geoserver-vol:
    name: "geoserver-vol"
    driver: "cloudstor:aws"
    driver_opts:
      backing: shared
Loading