Skip to content

aledade/devops-coding-challenge

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 

Repository files navigation

devops-coding-challenge

Choose one of the following coding challenges to complete.

Option one

Create a git repository that contains Ansible and Terraform code for deploying two postgresql clusters to AWS with the following requirements:

  1. The Postgresql clusters will each be deployed to an EC2 instance (don’t use RDS) in a different VPC. One for Dev and one for Prod.
  2. The Ansible code will have a playbook for each environment in the root directory.
  3. The code for installing Postgresql will be in a role.
  4. You will use group vars to configure postgresql_max_connections to 30 in prod and 20 in dev.
  5. The Postgresql clusters will each have a database named db1.
  6. There will be two users in prod and four users in dev.
    1. Prod
      1. admin
      2. service1
    2. Dev
      1. admin
      2. service1
      3. user1
      4. user2
  7. The admin user in each database will be a super user.

Acceptance criteria

  • You must provide your code in full so we can deploy it (you do not need to provide access to the Postgresql clusters, only to the code)
  • Your code is clean and readable
  • Steps for deploying the Postgresql clusters are in the README.md
  • The fewer the number of steps needed to deploy, the better.

Option two

Create a git repository that contains code for deploying an AWS EKS cluster with the following requirements:

  1. There will be two Auto Scaling groups for the workers nodes
  2. Each ASG will launch 1 - 3 worker node instances
  3. The cluster will automatically update DNS records in a private Route53 zone from kubernetes resources (ingresses, Services, etc)
  4. The cluster will have one admin user and two regular users
  5. The cluster will have three namespaces
    1. default
    2. user-1
    3. user-2
  6. The admin user will have full permissions on all namespaces
  7. The users will have read/write access to only their namespaces

Acceptance criteria

  • You can use any tools you want to complete the challenge
  • You must provide your code in full so we can replicate your cluster (you do not need to provide access to the cluster, only to the code)
  • Your code is clean and readable
  • You must document any steps that are not automated in the README.md

About

Coding challenge for DevOps candidates

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published