dazza-codes/aws-ops

Restructure config/settings/{stage}.yml data

Opened this issue · 0 comments

Allow the services to be an array of services, so that one compute resource (node, network, security group, etc.) can host multiple services. This can allow co-hosting services, like zookeeper and mesos-master services running on the same node.

Consider alternative settings structure (don't use aws as the root key?), e.g.

zookeeper:
  config:
    {general config settings}

kafka:
  {general kafka settings}

spark:
  {general spark settings}

mesos:
  {general mesos settings}

nodes:
  - node_name:
    - {node settings}
    - services:
      - zookeeper
      - mesos-master

network:
  - security_group_name:
    - {security group settings}
      - services:
        - zookeeper
        - mesos-master

Use the keys to find the general settings for each service. The top level key should be the service name. Use the services attribute on compute resources to identify what services to manage (install/configure) for that compute resource (nodes).