SlideShare a Scribd company logo
EVENT	
  DRIVEN	
  INFRASTRUCTURE	
  
DevOpsDays	
  Melbourne,	
  2015	
  
Shiva	
  N	
  (@shivamaan)	
  
Event driven infrastructure
A	
  BANANA	
  WAREHOUSE	
  AT	
  THE	
  ZOO	
  
RUN	
  A	
  BANANA	
  INVENTORY	
  EVERY	
  HOUR	
  
GIVE	
  ME	
  5	
  BANANAS	
  
MONKEY	
  TOOK	
  5	
  BANANAS	
  
Run	
  a	
  banana	
  
inventory	
  
Plot	
  monkeys	
  
banana	
  consumption	
  
pattern	
  
	
  
	
  
Analytics	
  on	
  
monkey	
  banana	
  
consumption	
  across	
  
all	
  zoos	
  
	
  
EVENT	
  DRIVEN	
  INFRASTRUCTURE	
  
Event	
  Bus	
  
Event	
  
Producers	
  
Event	
  
Transport	
  
Event	
  
Consumers	
  
- Real	
  time	
  (or	
  near	
  real	
  time)	
  
- Push	
  notifications	
  
- One-­‐way	
  ‘fire-­‐and-­‐forget’	
  
- Immediate	
  action	
  at	
  event	
  consumer	
  
- Informational	
  (“monkey	
  took	
  
bananas”)	
  and	
  not	
  commands	
  
(“perform	
  banana	
  inventory”)	
  
5	
  CHARACTERISTICS	
  
WHY?	
  
- Decouple	
  responsibilities	
  
- Communicate	
  by	
  triggering	
  events	
  
- Scale	
  out	
  components	
  horizontally	
  
- Higher	
  responsiveness	
  
- High	
  availability	
  &	
  Resiliency	
  
WHAT	
  ABOUT	
  INFRASTRUCTURE?	
  
AUTOMATED	
  CONFIGURATION	
  
MANAGEMENT	
  
- Puppet	
  
- Chef	
  
- Ansible	
  
- Salt	
  
- Etc.	
  
INFRASTRUCTURE	
  AS	
  CODE	
  
CLOUDFORMATION	
  +	
  CUSTOM	
  RESOURCES	
  =	
  NO	
  LIMITS	
  
STACKSTORM	
  
HOMEGROWN	
  TOOLS/SCRIPTS	
  
AWS	
  LAMBDA	
  
A	
  whole	
  new	
  world	
  
-  A	
  zero-­‐administration	
  compute	
  platform	
  
-  Stored	
  procedures	
  for	
  the	
  cloud	
  
-  Function-­‐as-­‐a-­‐Service	
  (NodeJS/Java)	
  	
  
-  Event	
  driven	
  from	
  other	
  services	
  	
  
-  …or	
  triggered	
  externally	
  and	
  even	
  
chained	
  
WHAT	
  IS	
  LAMBDA?	
  
WHAT	
  EVENTS	
  DOES	
  YOUR	
  
INFRASTRUCTURE	
  REACT	
  TO?	
  
SIMPLE	
  EVENTS	
  
SPIKY	
  LOAD	
  EVENTS	
  
-  Pre	
  warming	
  (Time)	
  
-  Auto	
  scaling	
  (Metrics)	
  
-  Feed	
  forward	
  loops	
  
(Predictive)	
  	
  
COMPONENT	
  FAILURE	
  EVENTS	
  
- EC2	
  auto	
  healing	
  
- SQS	
  design	
  pattern	
  
- Service	
  discovery	
  +	
  Container	
  
recycling	
  
– Consul	
  
– Serf	
  
DISASTER	
  RECOVERY	
  EVENT	
  
SECURITY	
  EVENTS	
  
- DDos	
  Attacks	
  
- Instance	
  compromise	
  
STREAMING	
  EVENTS	
  
Cloudtrail	
  logs	
  
streaming	
  to	
  
Cloudwatch	
  
Subscribe	
  Kinesis	
  
stream	
  to	
  
Cloudwatch	
  logs	
  
Lambda	
  func8on	
  
subscribed	
  to	
  
Kinesis	
  watching	
  
for	
  pa:erns	
  
SNS	
  no8fica8on	
  for	
  
insecure	
  pa:erns	
  in	
  
Cloudtrail	
  logs	
  
COMPLEX	
  EVENTS	
  
- Event	
  Observer	
  Pattern	
  
- Intelligent	
  build	
  pipelines	
  
Event driven infrastructure
SENTIENT	
  EVENTS	
  ?!	
  
HOW	
  DOES	
  THIS	
  AFFECT	
  “THE	
  
DEVOPS”	
  
OPERATIONAL	
  LIFECYCLE	
  
– Immutable	
  infrastructure	
  
– No	
  patching	
  or	
  in	
  place	
  deployments	
  
SERVERLESS	
  ARCHITECTURES	
  
MONITORING	
  AND	
  METRICS	
  
– Centralized	
  logging	
  
– Log	
  Analytics	
  
– Build	
  metrics,	
  application	
  metrics,	
  
customer	
  experience	
  metrics	
  instead	
  
of	
  CPU,	
  memory	
  and	
  OS	
  metrics	
  
– Event	
  Storms	
  
	
  
	
  
IS	
  THIS	
  A	
  SCARY	
  PATH?	
  
THANK	
  YOU	
  

More Related Content

Event driven infrastructure