Skip to content

davidescus/10minFor300Gb

Repository files navigation

10minutesFor300GB

Description:

  • Able to generate 300GB of random data and store them in less than 10 minutes
  • Infrastructure as code
  • Horizontal scale
  • Implement new cloud provider with minimum effort
  • Use only open source technologies

Requirements:

  • Scaleway account (https://scaleway.com)
  • Linux OS (tested on 18.04)
  • Terraform already install (tested on 0.11.11 version)

How it works:

``` cd infrastructure/scaleway/ mv without-passphrase-private-key.example without-passphrase-private-key (your private key without passphrase)
mv secret.tf.example secret.tf

Add your private key (your key must does not have passphrase) used for scaleway into "without-passphrase-private-key"
Add your scaleway "organisation id" and "access-token" into secret.tf

```$xslt
terraform plan
terraform apply
ssh root@{server-provision ip}
./provision.sh
salt '*' state.apply

This is it!

Modules:

  • Generator
  • Application (Business logic)
  • Storage
  • Monitoring
  • Logging

Stack:

TODO's

  • Develop app that satisfy business logic
  • Setup local DNS for easy access (ex: kibana.10minutesFor300Gb.local will hit kibana)
  • Implement "count" in terraform (scale apps easy)
  • Add predefined metrics in prometheus
  • Add predefined indexes in Kibana
  • Add proxy to Kibana, Prometheus and other components that interact with public environment
  • Remove public ips for all infrastructure
  • Remove ssh access (maybe apply bastion server for direct interactions with machines)
  • Add support for AWS, GPC, Digital Ocean

About

#DistributedSystem #InfrastructureAsCode Generate 300Gb of random data and store them into Cassandra in less then 10 minutes.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors