Commit 2783b8c8 authored by Pedro Eduardo Trujillo's avatar Pedro Eduardo Trujillo
Browse files

Crea snapshots de Elasticsearch v5 en producción

Agrega nuevo servicio curator, idéntico al original, pero dedicado al
cluster de es5. Prepara también su despliegue.
parent a9bd0711
Loading
Loading
Loading
Loading
+36 −6
Original line number Diff line number Diff line
@@ -9,6 +9,8 @@ variables:
  STACK: elastic
  STATUS_CHECK_DELAY: 30
  IMAGE_TAG: ${CURATOR_IMAGE_TAG:-5.6.0}
  ELASTIC_NET_NAME: elastic6-net
  SERVICE: elastic_curator

services:
  - docker:dind
@@ -123,20 +125,18 @@ deploy-curator-stable-branch-production:
    - web
  when: manual

scheduled-run-curator-stable-branch-develop:
scheduled-run-curator-develop:
  stage: maintenance
  variables:
    SSH_REMOTE: ${DEV_SSH_REMOTE}
    SERVICE: elastic_curator
  script: relaunch.sh
  only:
    - schedules

scheduled-run-curator-stable-branch-production:
scheduled-run-curator-production:
  stage: maintenance
  variables:
    SSH_REMOTE: ${PRO_SSH_REMOTE}
    SERVICE: elastic_curator
  script: relaunch.sh
  only:
    - schedules
@@ -153,7 +153,7 @@ deploy-curator-restore-develop:
      deploy.sh IMAGE_TAG=${IMAGE_TAG} COMPOSE_FILE=${COMPOSE_FILE}
      ELASTICSEARCH_URL=${ELASTICSEARCH_URL} ELASTICSEARCH_AUTH=${ELASTICSEARCH_AUTH}
      SNAPSHOT_REPOSITORY=${SNAPSHOT_REPOSITORY} SNAPSHOT_RESTORE_NAME=${SNAPSHOT_RESTORE_NAME}
      SNAPSHOT_RESTORE_INDICES=${SNAPSHOT_RESTORE_INDICES}
      SNAPSHOT_RESTORE_INDICES=${SNAPSHOT_RESTORE_INDICES} ELASTIC_NET_NAME=${ELASTIC_NET_NAME}
  environment:
    name: dev/curator-restore
  only:
@@ -172,9 +172,39 @@ deploy-curator-restore-production:
      deploy.sh IMAGE_TAG=${IMAGE_TAG} COMPOSE_FILE=${COMPOSE_FILE}
      ELASTICSEARCH_URL=${ELASTICSEARCH_URL} ELASTICSEARCH_AUTH=${ELASTICSEARCH_AUTH}
      SNAPSHOT_REPOSITORY=${SNAPSHOT_REPOSITORY} SNAPSHOT_RESTORE_NAME=${SNAPSHOT_RESTORE_NAME}
      SNAPSHOT_RESTORE_INDICES=${SNAPSHOT_RESTORE_INDICES}
      SNAPSHOT_RESTORE_INDICES=${SNAPSHOT_RESTORE_INDICES} ELASTIC_NET_NAME=${ELASTIC_NET_NAME}
  environment:
    name: pro/curator-restore
  only:
    - web
  when: manual

# El siguiente job es temporal, hasta que se unifiquen elasticsearch v5 y v6
deploy-old-curator-supporting-branch-production:
  stage: deploy
  variables:
    SSH_REMOTE: ${PRO_SSH_REMOTE}
    SERVICES_TO_CHECK: elastic_old-curator
    COMPOSE_FILE: docker-compose.old-curator.tmpl.yml:docker-compose.old-curator.prod.yml
    ELASTICSEARCH_URL: http://es-1
    ELASTICSEARCH_AUTH: ${PRO_ELASTICSEARCH_USERNAME}:${PRO_ELASTICSEARCH_PASSWORD}
    SNAPSHOT_DISABLE: 'False'
    DELETE_OLD_LOGS_DISABLE: 'True'
    DELETE_OLD_SNAPSHOTS_DISABLE: 'True'
    RESTORE_SNAPSHOT_DISABLE: 'True'
  script:
    - >
      deploy.sh IMAGE_TAG=${IMAGE_TAG} COMPOSE_FILE=${COMPOSE_FILE}
      ELASTICSEARCH_URL=${ELASTICSEARCH_URL} ELASTICSEARCH_AUTH="${ELASTICSEARCH_AUTH}"
      DELETE_OLD_LOGS_DISABLE=${DELETE_OLD_LOGS_DISABLE} SNAPSHOT_DISABLE=${SNAPSHOT_DISABLE}
      DELETE_OLD_SNAPSHOTS_DISABLE=${DELETE_OLD_SNAPSHOTS_DISABLE}
      RESTORE_SNAPSHOT_DISABLE=${RESTORE_SNAPSHOT_DISABLE} SNAPSHOT_REPOSITORY=${SNAPSHOT_REPOSITORY}
  environment:
    name: pro/old-curator
  only:
    - branches
  except:
    - master
    - schedules
    - web
  when: manual
+1 −0
Original line number Diff line number Diff line
version: '3.5'
+8 −0
Original line number Diff line number Diff line
version: '3.5'

services:
  old-curator:
    deploy:
      placement:
        constraints:
          - node.role == worker
+53 −0
Original line number Diff line number Diff line
version: '3.5'

services:
  old-curator:
    image: bobrik/curator:${IMAGE_TAG:-latest}
    command: /.curator/actions.yml
    environment:
      - ELASTICSEARCH_URL
      - ELASTICSEARCH_AUTH
      - ELASTICSEARCH_PORT
      - CURATOR_TIMEOUT
      - LOG_INDEX_PREFIX
      - DELETE_OLD_LOGS_DAYS_COUNT
      - SNAPSHOT_REPOSITORY
      - DELETE_OLD_SNAPSHOTS_DAYS_COUNT
      - DELETE_OLD_LOGS_DISABLE=False
      - SNAPSHOT_DISABLE=False
      - DELETE_OLD_SNAPSHOTS_DISABLE=False
      - RESTORE_SNAPSHOT_DISABLE=True
    networks:
      - elastic-net
    configs:
      - source: curator-config
        target: /.curator/curator.yml
      - source: curator-actions
        target: /.curator/actions.yml
    deploy:
      mode: replicated
      replicas: 1
      restart_policy:
        condition: on-failure
        delay: 10s
        window: 1m
      resources:
        limits:
          cpus: '0.1'
          memory: 128M
        reservations:
          memory: 103M

networks:
  elastic-net:
    name: ${ELASTIC_NET_NAME:-elastic-net}
    external: true

configs:
  curator-config:
    name: ${CURATOR_CONFIG_NAME:-curator-config}
    file: ./config/curator.yml

  curator-actions:
    name: ${CURATOR_ACTIONS_NAME:-curator-actions}
    file: ./config/actions.yml