THE PLATFORM IS DEAD
LONG LIVE THE PLATFORM @kll Adriatic AWS Innovation Days 2019.
Slide 2
WHO? Luka Kladaric Chaos Manager @ Sekura Collective recovering web developer of 10+ years architecture, infrastructure & security consultant also a startup founder and remote work evangelist 2 — @kll Adriatic AWS Innovation Days 2019.
Slide 3
PLATFORM? 3 — @kll Adriatic AWS Innovation Days 2019.
Slide 4
AWS ADRIA 2017 Zero-downtime datacenter failovers (switching hosting providers for dummies)
4 — @kll Adriatic AWS Innovation Days 2019.
Slide 5
OLD STACK > Ansible > Jenkins > HAProxy > nginx > Icinga 5 — @kll Adriatic AWS Innovation Days 2019.
Slide 6
ANSIBLE 6 — @kll Adriatic AWS Innovation Days 2019.
Slide 7
JENKINS 7 — @kll Adriatic AWS Innovation Days 2019.
Slide 8
HAPROXY 8 — @kll Adriatic AWS Innovation Days 2019.
Slide 9
NGINX 9 — @kll Adriatic AWS Innovation Days 2019.
Slide 10
ICINGA 10 — @kll Adriatic AWS Innovation Days 2019.
Slide 11
AND IT WAS GOOD. 11 — @kll Adriatic AWS Innovation Days 2019.
Slide 12
IT LET US GROW 12 — @kll Adriatic AWS Innovation Days 2019.
Slide 13
AND SCALE OUT 13 — @kll Adriatic AWS Innovation Days 2019.
Slide 14
WE DIDN’T NEED MORE 14 — @kll Adriatic AWS Innovation Days 2019.
Slide 15
FOR ABOUT A YEAR 15 — @kll Adriatic AWS Innovation Days 2019.
Slide 16
THE REQUEST? 16 — @kll Adriatic AWS Innovation Days 2019.
Slide 17
PYTHON 3 17 — @kll Adriatic AWS Innovation Days 2019.
Slide 18
GOLANG 18 — @kll Adriatic AWS Innovation Days 2019.
Slide 19
BUT… 19 — @kll Adriatic AWS Innovation Days 2019.
Slide 20
I LIKED WHAT WE HAD. 20 — @kll Adriatic AWS Innovation Days 2019.
Slide 21
NO EXPERTISE WITH KUBERNETES 21 — @kll Adriatic AWS Innovation Days 2019.
Slide 22
IT SERVED US WELL 22 — @kll Adriatic AWS Innovation Days 2019.
Slide 23
SO WHAT BROKE? 23 — @kll Adriatic AWS Innovation Days 2019.
Slide 24
END OF THE ROAD 24 — @kll Adriatic AWS Innovation Days 2019.
Slide 25
EACH THING HAD IT’S OWN DEPLOY PIPELINE
25 — @kll Adriatic AWS Innovation Days 2019.
Slide 26
THE ANSWER? 26 — @kll Adriatic AWS Innovation Days 2019.
Slide 27
CONTAINERS 27 — @kll Adriatic AWS Innovation Days 2019.
Slide 28
DEVELOPER AUTONOMY 28 — @kll Adriatic AWS Innovation Days 2019.
Slide 29
HOW DO I CONTAINERS? 29 — @kll Adriatic AWS Innovation Days 2019.
Slide 30
JENKINS TRAVIS 30 — @kll Adriatic AWS Innovation Days 2019.
Slide 31
HOW DO YOU RUN A CONTAINER ON THE INTERNET TODAY? 31 — @kll Adriatic AWS Innovation Days 2019.
Slide 32
ECS 32 — @kll Adriatic AWS Innovation Days 2019.
Slide 33
FARGATE 33 — @kll Adriatic AWS Innovation Days 2019.
Slide 34
ABOUT KUBERNETES 34 — @kll Adriatic AWS Innovation Days 2019.
Slide 35
SO, ECS. FARGATE. 35 — @kll Adriatic AWS Innovation Days 2019.
Slide 36
ANSIBLE
CLOUDFORMATION 36 — @kll Adriatic AWS Innovation Days 2019.
Slide 37
CLOUDFORMATION CONSOLE 37 — @kll Adriatic AWS Innovation Days 2019.
Slide 38
ICINGA CLOUDWATCH 38 — @kll Adriatic AWS Innovation Days 2019.
Slide 39
HAPROXY ELB 39 — @kll Adriatic AWS Innovation Days 2019.
Slide 40
ACTUAL IMPLEMENTATION 40 — @kll Adriatic AWS Innovation Days 2019.
Slide 41
BASE NETWORKING CF STACK > VPC, subnets, gateways… > DNS zone > ELBs (private & public) > ECS cluster, security groups.. > deployed from github, via travis, to all AWS accounts 41 — @kll Adriatic AWS Innovation Days 2019.
Slide 42
APP CF STACK > Task Definition, Service, CPU/RAM spec > ELB target group > ELB listener rule > Log group > Task role & policies > DNS entries 42 — @kll Adriatic AWS Innovation Days 2019.
Slide 43
EVERYTHING IN ONE REPO > app code > dockerfile > app cf template > travis file
43 — @kll Adriatic AWS Innovation Days 2019.
Slide 44
CI/CD FLOW > github push > travis build image -> ECR > travis deploy -> run CF > different branches = different environments (dev/test/prod) 44 — @kll Adriatic AWS Innovation Days 2019.
Slide 45
BENEFITS 45 — @kll Adriatic AWS Innovation Days 2019.
Slide 46
ALL CONTEXT & COMPLEXITY ABOUT AN APP IN A SINGLE REPO
46 — @kll Adriatic AWS Innovation Days 2019.
Slide 47
NO SELF-MANAGED SINGLE POINT OF FAILURE
47 — @kll Adriatic AWS Innovation Days 2019.
Slide 48
TRIVIAL ADDITION OF ENVIRONMENTS
48 — @kll Adriatic AWS Innovation Days 2019.
Slide 49
SEE PULL REQUESTS LIVE BEFORE MERGE
49 — @kll Adriatic AWS Innovation Days 2019.
Slide 50
TRIVIAL AUTOSCALING 50 — @kll Adriatic AWS Innovation Days 2019.
Slide 51
HURDLES 51 — @kll Adriatic AWS Innovation Days 2019.
Slide 52
CF EXTREMELY FRAGILE STARTING OUT
52 — @kll Adriatic AWS Innovation Days 2019.
Slide 53
FIRST DEPLOY FAILING ->
HAVE TO DELETE TO RETRY 53 — @kll Adriatic AWS Innovation Days 2019.