Skip to content

Installation skeleton

Murray Resinski edited this page May 21, 2018 · 6 revisions

Notes

  1. Requires an F5 for ingres, may need to make region api capable of supporting nginx ingress as well.
  2. LDAP isn't required, but if its used you'll need to install corp-auth
  3. Quay can be replaced with any docker registry that has credentials/protected write access to place gold master images, only tested with quay
  4. Need to make brokers (twilio, aws rds, papertrail, all of 'em optional)
  5. Need to make route 53 pluggable with other dns systems(?)
  6. Need to make digicert pluggable and replacable with lets encrypt.
  7. Support more than just AWS?... in brokers? and terraforming kube?

Steps

  1. Check Third Party Systems:
    1. Papertrail log drain
    2. Twilio account
    3. AWS account/keys
    4. DigiCert account/keys
    5. Quay account/keys
    6. LDAP service account
    7. Master credentials for on-prem postgres?
    8. Github Bot Account / org
  2. Check Domains/Security:
    1. Check domain systems (route 53)
    2. LDAP Elevated access group, normal group, base dn, etc
  3. Check Network:
    1. Check elb-ingress-certificate systems
    2. Check F5 systems (install f5 via virtual edition on AWS?) check perms on existing F5, partitions, etc, ask inside vs. outside VIP)
    3. Check f5-ingress-certificate systems
  4. Begin AWS Provisioning
    1. Create one or two kubernetes (engineering cluster + runtime, or combined?)
      1. ETCD (EC2)
      2. Controllers/Workers (EC2)
    2. Kafka (EC2 or kubrerenetes w/helm? — requires statefulsets — https://github.com/kubernetes/charts/tree/master/incubator/kafka)
    3. InfluxDB (EC2 or kubernetes w/helm? — https://github.com/kubernetes/charts/tree/master/stable/influxdb)
    4. MongoDB (EC2 or kubernetes w/helm? — https://github.com/kubernetes/charts/tree/master/stable/mongodb)
    5. RabbitMQ (EC2 or kubernetes w/helm? — https://github.com/kubernetes/charts/tree/master/stable/rabbitmq)
    6. Syslog F5/kafka collector (EC2)
    7. Provision initial alamo-api database (postgres ris)
  5. Service Installations:
    1. Installation of vault (helm? https://github.com/kubernetes/charts/tree/master/incubator/vault)
    2. Installation of jenkins build system (helm? https://github.com/kubernetes/charts/tree/master/stable/jenkins)
      1. Kafkalogs plugin, docker pipeline etc plugin, ec2 slaves
    3. Installation of jenkins test system (helm? https://github.com/kubernetes/charts/tree/master/stable/jenkins)
    4. Installation of quay/registry (helm? https://github.com/kubernetes/charts/tree/master/stable/docker-registry)
    5. Installation of prometheus
    6. Installation of fluentd + config for kafka (zookeepers)
    7. Installation of nagios/monitoring/check systems (?) setup on opsgenie?
    8. Installation of membanks (helm? ) + default dashboards
    9. Installation of alamo-api
    10. Terraform RDS DB parameter groups for postgres
    11. Terraform RDS DB parameter groups for mysql
    12. Terraform RDS option groups for memcached
    13. Terraform RDS option groups for redis
    14. Terraform RDS hobby database
    15. Installation of postgres aws broker + prepro
    16. Installation of mysql aws broker + prepro
    17. Installation of memcached aws broker + prepro
    18. Installation of redis aws broker + prepro
    19. Installation of elastic search aws broker
    20. Installation of mongodb broker
    21. Installation of rabbitmq broker
    22. Installation of postgres-on-prem broker
    23. Installation of s3 aws broker
    24. Installation of service watcher
    25. Installation of node watcher
  6. Run alamo-api tests or any other tests
  7. Install in-akkeris services:
    1. Install log shuttle
    2. Install log session
    3. Install controller-api
    4. Install akkeris-api
    5. Install auth-api
    6. Install build shuttle
    7. Install corporate oauth (optional, if using ldap)
  8. Install site/routes for apps and auth sites
  9. Reset config or backfill config with sites
    1. Installation of metrics sampler
    2. Installation of app watcher
    3. Installation of self diagnostics
    4. Installation of cache scanner
    5. Installation of rabbitmq scanner
    6. Installation of postgres scanner
    7. Installation of anomaly/metrics-syslog-collector
    8. Installation of router scanner
  10. Run region-api tests, controller-api tests, ui tests
Clone this wiki locally