Commit 79e3b591 authored by Pedro Eduardo Trujillo's avatar Pedro Eduardo Trujillo
Browse files

Merge branch 'dev' into 'master'

Restaura uso de volúmenes NFS en dev

See merge request redmic-project/gis/geoserver!67
parents 5833c87f 4b37dd61
Loading
Loading
Loading
Loading
+11 −1
Original line number Diff line number Diff line
@@ -22,6 +22,7 @@ GEOSERVER_SUBDOMAIN=atlas
DISK_QUOTA_SIZE=5
GEOSERVER_LOG_LEVEL=PRODUCTION_LOGGING
DISABLE_CORS=true
GEOSERVER_XSTREAM_WHITELIST=org.geotools.jdbc.**

DEV_MASTER_INITIAL_MEMORY=1G
DEV_MASTER_MAXIMUM_MEMORY=1G
@@ -41,13 +42,22 @@ PRO_NODE_MAXIMUM_MEMORY=1500M
PRO_GEOSERVER_NODE_RESOURCES_RESERVATIONS_MEMORY=2G
PRO_GEOSERVER_NODE_RESOURCES_LIMITS_MEMORY=3G

GEOSERVER_MASTER_RESOURCES_LIMITS_CPUS=1
GEOSERVER_MASTER_RESOURCES_RESERVATIONS_CPUS=0.1
GEOSERVER_NODE_RESOURCES_LIMITS_CPUS=1
GEOSERVER_NODE_RESOURCES_RESERVATIONS_CPUS=0.1

POSTGRES_GWC_WORK_MEM=16MB
POSTGRES_GWC_MAX_WAL_SIZE=256MB
POSTGRES_USER=geowebcache
POSTGRES_PASSWORD=changeme
POSTGRES_DB=gwc
PGDATA=/var/lib/postgresql/data
POSTGRES_INITDB_WALDIR=/var/lib/postgresql/wal

DEV_VOL_DRIVER=seaweedfs
VOL_TYPE=nfs4
VOL_ADDR=127.0.0.1
VOL_OPTS=rw,nolock,noatime,tcp,rsize=8192,wsize=8192,timeo=14

GEOSERVER_DATA_VOL_NAME=geoserver-data-vol
CACHE_VOL_NAME=geoserver-cache-vol

deploy/config/cluster.properties

deleted100644 → 0
+0 −15
Original line number Diff line number Diff line
CLUSTER_CONFIG_DIR=${CLUSTER_CONFIG_DIR}
instanceName=${INSTANCE_STRING}
readOnly=${READONLY}
durable=${CLUSTER_DURABILITY}
brokerURL=failover:(${BROKER_URL})
embeddedBroker=${EMBEDDED_BROKER}
connection.retry=${CLUSTER_CONNECTION_RETRY_COUNT}
toggleMaster=${TOGGLE_MASTER}
xbeanURL=./broker.xml
embeddedBrokerProperties=embedded-broker.properties
topicName=VirtualTopic.geoserver
connection=enabled
toggleSlave=${TOGGLE_SLAVE}
connection.maxwait=${CLUSTER_CONNECTION_MAX_WAIT}
group=geoserver-cluster
+34 −10
Original line number Diff line number Diff line
@@ -8,10 +8,10 @@ services:
    deploy:
      resources:
        limits:
          cpus: '${GEOSERVER_MASTER_RESOURCES_LIMITS_CPUS:-1}'
          cpus: '${GEOSERVER_MASTER_RESOURCES_LIMITS_CPUS}'
          memory: ${DEV_GEOSERVER_MASTER_RESOURCES_LIMITS_MEMORY}
        reservations:
          cpus: '${GEOSERVER_MASTER_RESOURCES_RESERVATIONS_CPUS:-0.1}'
          cpus: '${GEOSERVER_MASTER_RESOURCES_RESERVATIONS_CPUS}'
          memory: ${DEV_GEOSERVER_MASTER_RESOURCES_RESERVATIONS_MEMORY}

  geoserver-node:
@@ -21,33 +21,57 @@ services:
    deploy:
      resources:
        limits:
          cpus: '${GEOSERVER_NODE_RESOURCES_LIMITS_CPUS:-1}'
          cpus: '${GEOSERVER_NODE_RESOURCES_LIMITS_CPUS}'
          memory: ${DEV_GEOSERVER_NODE_RESOURCES_LIMITS_MEMORY}
        reservations:
          cpus: '${GEOSERVER_NODE_RESOURCES_RESERVATIONS_CPUS:-0.1}'
          cpus: '${GEOSERVER_NODE_RESOURCES_RESERVATIONS_CPUS}'
          memory: ${DEV_GEOSERVER_NODE_RESOURCES_RESERVATIONS_MEMORY}

volumes:
  geoserver-data-vol:
    name: ${GEOSERVER_DATA_VOL_NAME}
    driver: ${DEV_VOL_DRIVER}
    driver: local
    driver_opts:
      type: ${VOL_TYPE}
      o: addr=${VOL_ADDR},${VOL_OPTS}
      device: ${GEOSERVER_DATA_VOL_DEVICE:-:/geoserver-data-vol/}

  cache-vol:
    name: ${CACHE_VOL_NAME}
    driver: ${DEV_VOL_DRIVER}
    driver: local
    driver_opts:
      type: ${VOL_TYPE}
      o: addr=${VOL_ADDR},${VOL_OPTS}
      device: ${CACHE_VOL_DEVICE:-:/geoserver-cache-vol/}

  fonts-vol:
    name: ${FONTS_VOL_NAME}
    driver: ${DEV_VOL_DRIVER}
    driver: local
    driver_opts:
      type: ${VOL_TYPE}
      o: addr=${VOL_ADDR},${VOL_OPTS}
      device: ${FONTS_VOL_DEVICE:-:/geoserver-fonts-vol/}

  footprints-vol:
    name: ${FOOTPRINTS_VOL_NAME}
    driver: ${DEV_VOL_DRIVER}
    driver: local
    driver_opts:
      type: ${VOL_TYPE}
      o: addr=${VOL_ADDR},${VOL_OPTS}
      device: ${FOOTPRINTS_VOL_DEVICE:-:/geoserver-footprints-vol/}

  postgres-data-vol:
    name: ${POSTGRES_DATA_VOL_NAME}
    driver: ${DEV_VOL_DRIVER}
    driver: local
    driver_opts:
      type: ${VOL_TYPE}
      o: addr=${VOL_ADDR},${VOL_OPTS}
      device: ${POSTGRES_DATA_VOL_DEVICE:-:/postgres-gwc-data-vol/}

  wal-vol:
    name: ${WAL_VOL_NAME}
    driver: ${DEV_VOL_DRIVER}
    driver: local
    driver_opts:
      type: ${VOL_TYPE}
      o: addr=${VOL_ADDR},${VOL_OPTS}
      device: ${WAL_VOL_DEVICE:-:/postgres-gwc-wal-vol/}
+4 −4
Original line number Diff line number Diff line
@@ -11,10 +11,10 @@ services:
          - node.role == worker
      resources:
        limits:
          cpus: '${GEOSERVER_MASTER_RESOURCES_LIMITS_CPUS:-1}'
          cpus: '${GEOSERVER_MASTER_RESOURCES_LIMITS_CPUS}'
          memory: ${PRO_GEOSERVER_MASTER_RESOURCES_LIMITS_MEMORY}
        reservations:
          cpus: '${GEOSERVER_MASTER_RESOURCES_RESERVATIONS_CPUS:-0.1}'
          cpus: '${GEOSERVER_MASTER_RESOURCES_RESERVATIONS_CPUS}'
          memory: ${PRO_GEOSERVER_MASTER_RESOURCES_RESERVATIONS_MEMORY}

  geoserver-node:
@@ -27,10 +27,10 @@ services:
          - node.role == worker
      resources:
        limits:
          cpus: '${GEOSERVER_NODE_RESOURCES_LIMITS_CPUS:-1}'
          cpus: '${GEOSERVER_NODE_RESOURCES_LIMITS_CPUS}'
          memory: ${PRO_GEOSERVER_NODE_RESOURCES_LIMITS_MEMORY}
        reservations:
          cpus: '${GEOSERVER_NODE_RESOURCES_RESERVATIONS_CPUS:-0.1}'
          cpus: '${GEOSERVER_NODE_RESOURCES_RESERVATIONS_CPUS}'
          memory: ${PRO_GEOSERVER_NODE_RESOURCES_RESERVATIONS_MEMORY}

volumes:
+8 −16
Original line number Diff line number Diff line
@@ -11,9 +11,6 @@ x-geoserver-root: &geoserver-root
    - fonts-vol:${FONTS_DIR}
    - footprints-vol:${FOOTPRINTS_DATA_DIR}
    - cache-vol:${GEOWEBCACHE_CACHE_DIR}
  configs:
    - source: cluster-properties-config
      target: ${EXTRA_CONFIG_DIR}/cluster.properties
  healthcheck:
    test: >
      curl --fail --silent --write-out 'HTTP CODE : %{http_code}\n' --output /dev/null
@@ -67,6 +64,7 @@ x-geoserver-deploy: &geoserver-deploy
    delay: ${GEOSERVER_UPDATE_DELAY:-3m}

x-geoserver-traefik-common-service-labels: &geoserver-traefik-common-service-labels
  traefik.enable: ${TRAEFIK_ENABLE}
  traefik.http.services.geoserver.loadbalancer.server.port: ${GEOSERVER_PORT}
  traefik.http.services.geoserver.loadbalancer.sticky.cookie: 'true'
  traefik.http.services.geoserver.loadbalancer.sticky.cookie.name: ${TRAEFIK_COOKIE_NAME}
@@ -92,7 +90,6 @@ services:
      replicas: 1
      labels:
        << : *geoserver-traefik-common-service-labels
        traefik.enable: ${TRAEFIK_ENABLE}

        traefik.http.routers.geoserver-master-admin.entrypoints: ${TRAEFIK_ENTRYPOINT}
        traefik.http.routers.geoserver-master-admin.rule: Host(`${GEOSERVER_SUBDOMAIN}.${PUBLIC_HOSTNAME}`) && (PathPrefix(`/geoserver/web`) || PathPrefix(`/geoserver/rest`) || PathPrefix(`/geoserver/j_spring_security`) || PathPrefix(`/geoserver/gwc/rest`))
@@ -114,6 +111,7 @@ services:
      EMBEDDED_BROKER: disabled
      BROKER_URL: 'tcp://geoserver-master:${BROKER_PORT}'
      READONLY: enabled
      GEOSERVER_XSTREAM_WHITELIST:
    deploy:
      << : *geoserver-deploy
      replicas: ${GEOSERVER_NODE_REPLICAS:-1}
@@ -121,7 +119,6 @@ services:
        max_replicas_per_node: 1
      labels:
        << : *geoserver-traefik-common-service-labels
        traefik.enable: ${TRAEFIK_ENABLE}

        traefik.http.routers.geoserver-node.entrypoints: ${TRAEFIK_ENTRYPOINT}
        traefik.http.routers.geoserver-node.rule: Host(`${GEOSERVER_SUBDOMAIN}.${PUBLIC_HOSTNAME}`) && PathPrefix(`/geoserver`)
@@ -134,8 +131,8 @@ services:
  postgres-gwc:
    image: ${POSTGRES_IMAGE_NAME:-postgres}:${POSTGRES_IMAGE_TAG:-alpine}
    command: >
      -c work_mem=${POSTGRES_GWC_WORK_MEM:-16MB}
      -c max_wal_size=${POSTGRES_GWC_MAX_WAL_SIZE:-256MB}
      -c work_mem=${POSTGRES_GWC_WORK_MEM}
      -c max_wal_size=${POSTGRES_GWC_MAX_WAL_SIZE}
    environment:
      POSTGRES_USER:
      POSTGRES_PASSWORD:
@@ -148,7 +145,7 @@ services:
      - postgres-data-vol:${PGDATA}
      - wal-vol:${POSTGRES_INITDB_WALDIR}
    healthcheck:
      test: pg_isready
      test: pg_isready -U ${POSTGRES_USER} -d ${POSTGRES_DB}
      interval: ${POSTGRES_HEALTHCHECK_INTERVAL:-30s}
      timeout: ${POSTGRES_HEALTHCHECK_TIMEOUT:-15s}
      retries: ${POSTGRES_HEALTHCHECK_RETRIES:-5}
@@ -162,11 +159,11 @@ services:
        delay: ${POSTGRES_GWC_UPDATE_DELAY:-30s}
      resources:
        limits:
          cpus: '${POSTGRES_GWC_RESOURCES_LIMITS_CPUS:-0.5}'
          cpus: '${POSTGRES_GWC_RESOURCES_LIMITS_CPUS:-1}'
          memory: ${POSTGRES_GWC_RESOURCES_LIMITS_MEMORY:-128M}
        reservations:
          cpus: '${POSTGRES_GWC_RESOURCES_RESERVATIONS_CPUS:-0.001}'
          memory: ${POSTGRES_GWC_RESOURCES_RESERVATIONS_MEMORY:-32M}
          cpus: '${POSTGRES_GWC_RESOURCES_RESERVATIONS_CPUS:-0.01}'
          memory: ${POSTGRES_GWC_RESOURCES_RESERVATIONS_MEMORY:-64M}

networks:
  gis-net:
@@ -183,8 +180,3 @@ networks:
    name: ${TRAEFIK_NET_NAME:-traefik-net}
    driver: ${TRAEFIK_NET_DRIVER:-overlay}
    external: true

configs:
  cluster-properties-config:
    name: ${CLUSTER_PROPERTIES_CONFIG_NAME:-geoserver-cluster-properties-config}
    file: ./config/cluster.properties