From dc227abefac0266173910546bb07475d238df097 Mon Sep 17 00:00:00 2001 From: Akis Kesoglou Date: Tue, 9 Oct 2018 01:29:45 +0300 Subject: [PATCH] Add S3 and Redis components --- compose/services.yml | 81 +++++++++++++++----------------------------- haproxy/haproxy.cfg | 51 +++++++++------------------- scripts/patch-hosts | 3 +- 3 files changed, 44 insertions(+), 91 deletions(-) diff --git a/compose/services.yml b/compose/services.yml index 6c8feba..5f38ed4 100644 --- a/compose/services.yml +++ b/compose/services.yml @@ -3,8 +3,8 @@ version: '2.1' volumes: db: registry: - # FIXME: remove - img: + s3: + redis: services: api: @@ -14,6 +14,8 @@ services: image: resin/resin-api:${OPENBALENA_API_VERSION_TAG:-master} depends_on: - db + - s3 + - redis environment: ADMIN_LIST: AUTH_RESINOS_REGISTRY_CODE: ${OPENBALENA_RESINOS_REGISTRY_CODE} @@ -99,6 +101,8 @@ services: image: resin/open-balena-registry:${OPENBALENA_REGISTRY_VERSION_TAG:-master} depends_on: - api + - s3 + - redis volumes: - registry:/data environment: @@ -150,6 +154,22 @@ services: volumes: - db:/var/lib/postgresql/data + s3: + extends: + file: ./common.yml + service: system + image: resin/open-balena-s3:${OPENBALENA_S3_VERSION_TAG:-master} + volumes: + - s3:/export + + redis: + extends: + file: ./common.yml + service: system + image: redis:alpine + volumes: + - redis:/data + haproxy: extends: file: ./common.yml @@ -160,14 +180,14 @@ services: - registry - vpn - db - # FIXME: remove - - proxy - - img + - s3 + - redis ports: - "80:80" - "222:222" - "443:443" - "5432:5432" + - "6379:6379" networks: default: aliases: @@ -175,57 +195,10 @@ services: - registry.${OPENBALENA_HOST_NAME} - vpn.${OPENBALENA_HOST_NAME} - db.${OPENBALENA_HOST_NAME} - # FIXME: remove - - proxy.${OPENBALENA_HOST_NAME} - - img.${OPENBALENA_HOST_NAME} + - s3.${OPENBALENA_HOST_NAME} + - redis.${OPENBALENA_HOST_NAME} environment: BALENA_ROOT_CA: ${OPENBALENA_ROOT_CA} BALENA_HAPROXY_CRT: ${OPENBALENA_ROOT_CRT} BALENA_HAPROXY_KEY: ${OPENBALENA_ROOT_KEY} HAPROXY_HOSTNAME: ${OPENBALENA_HOST_NAME} - -# FIXME: remove the following - - proxy: - extends: - file: ./common.yml - service: component - image: resin/resin-proxy:${OPENBALENA_PROXY_VERSION_TAG:-master} - depends_on: - - api - - vpn - environment: - BALENA_ROOT_CA: ${OPENBALENA_ROOT_CA} - DEBUG: '${OPENBALENA_DEBUG}' - DEVICE_URLS_BASE: devices.${OPENBALENA_HOST_NAME} - IDLE_CONNECTION_TIMEOUT: 50 - JSON_WEB_TOKEN_SECRET: ${OPENBALENA_JWT_SECRET} - LOGENTRIES_TOKEN: - PRODUCTION_MODE: '${OPENBALENA_PRODUCTION_MODE}' - PROXY_PROTOCOL_PORTS: - PROXY_SERVICE_API_KEY: __unused__5 - RESIN_API_HOST: api.${OPENBALENA_HOST_NAME} - SENTRY_DSN: - - img: - extends: - file: ./common.yml - service: component - image: resin/resin-img:${OPENBALENA_IMG_VERSION_TAG:-master} - depends_on: - - api - volumes: - - img:/prepdir - environment: - BALENA_ROOT_CA: ${OPENBALENA_ROOT_CA} - DEVELOPMENT: 1 - LKL_MEMORY: 268435456 - LOGENTRIES_TOKEN: - NODEPING_KEY: xxx - RESIN_IMG_S3_ACCESS_KEY: abcdef1234 - RESIN_IMG_S3_BUCKET: resin-image-maker - RESIN_IMG_S3_ENDPOINT: s3.${OPENBALENA_HOST_NAME} - RESIN_IMG_S3_FORCE_PATH_STYLE: 'true' - RESIN_IMG_S3_SECRET_KEY: 1234567890 - RESIN_IMG_STORAGE_DRIVER: passthrough - SENTRY_DSN: diff --git a/haproxy/haproxy.cfg b/haproxy/haproxy.cfg index 5e0bed9..848689f 100644 --- a/haproxy/haproxy.cfg +++ b/haproxy/haproxy.cfg @@ -21,13 +21,8 @@ frontend http-in acl host_vpn hdr_dom(host) -i "vpn.${HAPROXY_HOSTNAME}" use_backend backend_vpn if host_vpn - # FIXME: remove - acl host_proxy hdr_dom(host) -i "devices.${HAPROXY_HOSTNAME}" - use_backend backend_proxy if host_proxy - - # FIXME: remove - acl host_img hdr_dom(host) -i "img.${HAPROXY_HOSTNAME}" - use_backend backend_img if host_img + acl host_s3 hdr_dom(host) -i "s3.${HAPROXY_HOSTNAME}" + use_backend backend_s3 if host_s3 frontend ssl-in mode tcp @@ -56,13 +51,11 @@ frontend https-in acl host_registry hdr_dom(host) -i "registry.${HAPROXY_HOSTNAME}" use_backend backend_registry if host_registry - # FIXME: remove - acl host_proxy hdr_dom(host) -i "devices.${HAPROXY_HOSTNAME}" - use_backend backend_proxy if host_proxy + acl host_vpn hdr_dom(host) -i "vpn.${HAPROXY_HOSTNAME}" + use_backend backend_vpn if host_vpn - # FIXME: remove - acl host_img hdr_dom(host) -i "img.${HAPROXY_HOSTNAME}" - use_backend backend_img if host_img + acl host_s3 hdr_dom(host) -i "s3.${HAPROXY_HOSTNAME}" + use_backend backend_s3 if host_s3 backend backend_api mode http @@ -82,31 +75,10 @@ backend backend_vpn balance roundrobin server resin_vpn_1 vpn:80 check port 80 -# FIXME: remove -backend backend_proxy +backend backend_s3 mode http option forwardfor balance roundrobin - server resin_proxy_1 proxy:80 send-proxy check-send-proxy port 80 - -# FIXME: remove -backend backend_img - mode http - option forwardfor - balance roundrobin - server resin_img_1 img:80 check port 80 - -# FIXME: remove -frontend devices-ssh-gateway - mode tcp - bind *:222 - default_backend devices-ssh-gateway - timeout client 1h - -# FIXME: remove -backend devices-ssh-gateway - mode tcp - server resin_proxy_1 proxy:2222 check port 2222 backend vpn-devices mode tcp @@ -121,3 +93,12 @@ frontend db backend db mode tcp server resin_db_1 db:5432 check port 5432 + +frontend redis + mode tcp + bind *:6379 + default_backend redis + timeout client 1h + +backend redis + mode tcp diff --git a/scripts/patch-hosts b/scripts/patch-hosts index 8b03cc5..3a1054d 100755 --- a/scripts/patch-hosts +++ b/scripts/patch-hosts @@ -1,7 +1,6 @@ #!/bin/bash -eu -SERVICES="api registry vpn db" -SERVICES="${SERVICES} img devices" # FIXME: remove +SERVICES="api registry vpn db s3 redis" usage() { echo "usage: $0 DOMAIN"