SlideShare uma empresa Scribd logo
1 de 33
Building Efficient, Scalable,
and Resilient Front-end
Logging Service with AWS
KOKILAVANI KATHIRESAN | 27/07/2019
Introduction
- Containers, Serverless, Microservice Architecture change the way the software is
built
- The systems are more distributed, and more ephemeral
- No Complex system is ever fully healthy
- Better Resilience and Fault Tolerance is the goal
- Ease of debugging is a cornerstone to maintain and evolve robust systems
Observability
- Internal states of the system should be inferred by
its external outputs
- Reduce MTTD and MTTR
- Verifying the health of the service proactively
- To know what’s broken, and why?
- Provides the all-important feedback that drives
future iterations
Our Business Case
- To Collect logs, traces and metrics from Mobile/Web Browser
- Get insights of the application
- Understanding the user behavior patterns
- Monitor application performance
Front-end Logging Service
- Exposed a REST Endpoint
- Spring boot application which accepts the
compressed log message
- Decompress and Validate the Payload
- Forward it to the application’s log
destination (Splunk)
Requirements:
- 20000 Transactions per second
- 1 second latency
Internet
Logging
Service
AWS Account
Compressed Batched Logs
Latency Improvement
We split the service into two microservices.
Producer:
- Receives request and Validate the sender
- Accepts the payload
- Puts the data to queue
Consumer:
- Polls the data from queue
- Extract the payload and Validate the data
- Sends it to log destination
Logging
Service -
Producer
Logging
Service -
Consumer
SQS
FE Architecture in AWS
SHAILJA AGARWALA
Well Architected Framework
Five pillars :
- Operational excellence
- Security
- Reliability
- Performance efficiency
- Cost optimization
EC2 Setup
Producer:
- Compute Intensive (c5.2xlarge)
- No of instances : 3 to 20
Consumer:
- Memory Intensive (m5.2xlarge)
- No of Instances : 3 to 20
Alarms:
- Based on JVM metrics sent to Cloud watch
Load Balancer
EC2
EC2
EC2
EC2
EC2
EC2
SQS ELB
ELB
Route 53
- Expose the producer ELB through Route 53
- Route 53 endpoint is hosted behind Intuit API
gateway
- Disaster recovery through multiple CName across
region
EC2 EC2 EC2
Route 53 config
Route 53 config
contd.
Auto Scaling Group
Log generated varies during tax peak across the year
Producer:
- Request Processing Time decides scaling
Consumer:
- SQS depth
Auto Scaling Policies
Target Groups
- With auto scaling and load balancers involved, target groups will route
requests to EC2s and microservices
- Requests are being sent to new targets as soon as the registration is
complete and initial health check is passed
Cloud formation – Infrastructure as Code
Deployment & AMI Restack
RAVIKUMAR KOTTA
AMI Restack
Background:
- Intuit compliance team applies security patches and new baseline images are
released every 2 weeks
- App teams must either use these AMIs or derive AMIs from those baseline images
- Automated this entire process by using CW Rule and Codebuild services
Config: CW Rule on rhel7.4
Code build logs - Baking Logging service AMI
- Launch the new EC2 instance from Baseline AMI
- Copy chef recipes required to install software like java etc.. and
configuration required for Splunk forwarder and log rotation
- Bake logging service AMI
- Publish cloud watch event with the AMI id
Code build logs - Baking Logging service AMI
CW rule on Baked AMI
- Cloud watch rule configured to trigger on baked logging service AMI
- We have 2 targets configured on this CW Rule
- Lambda function: Creates new launch config with new AMI and updates
ASG
- Code pipeline: CD service to automate the steps to release logging
service
CW rule on Baked AMI
Code Pipeline to automate Deployment process.
- Source Stage: Downloads app config files
- Code deployment stage: Reads app file from source stage and
triggers code deploy for all environments
- Blue-Green deployment
- Re-routing traffic to new instances
Deployment
Lifecycle hooks
- BeforeInstall: Setup application configuration for ex: install jre, collectd, splunk
forwarder and pulls the latest code from S3 and deploy it
- ApplicationStop: Stops application
- ApplicationStart: Starts application
- ValidateService: Invokes automation tests against deployed code(Green)
App Spec Config
Installing Application and dependencies
Performance Test Report
Title + Content
Golden Signal
Metrics
Enhancements
- Extension for Metrics and Traces
- Dockerize the service code
- Deploy in Kubernetes
Thank you!

Mais conteúdo relacionado

Mais procurados

Glue con2011 Jeff Malek from BigDoor
Glue con2011 Jeff Malek from BigDoorGlue con2011 Jeff Malek from BigDoor
Glue con2011 Jeff Malek from BigDoor
Carrie Peters
 

Mais procurados (19)

Network Configuration Management - Mumbai Seminar
Network Configuration Management - Mumbai SeminarNetwork Configuration Management - Mumbai Seminar
Network Configuration Management - Mumbai Seminar
 
Server and application monitoring webinars [Applications Manager] - Part 3
Server and application monitoring webinars [Applications Manager] - Part 3Server and application monitoring webinars [Applications Manager] - Part 3
Server and application monitoring webinars [Applications Manager] - Part 3
 
Openstack based WebRTC PaaS - Kamailio World 2015
Openstack based WebRTC PaaS - Kamailio World 2015 Openstack based WebRTC PaaS - Kamailio World 2015
Openstack based WebRTC PaaS - Kamailio World 2015
 
Considerations for East-West Traffic Security and Analytics for Kubernetes En...
Considerations for East-West Traffic Security and Analytics for Kubernetes En...Considerations for East-West Traffic Security and Analytics for Kubernetes En...
Considerations for East-West Traffic Security and Analytics for Kubernetes En...
 
Mtbc cloud ehr
Mtbc cloud ehrMtbc cloud ehr
Mtbc cloud ehr
 
Server and application monitoring webinars [Applications Manager] - Part 4
Server and application monitoring webinars [Applications Manager] - Part 4Server and application monitoring webinars [Applications Manager] - Part 4
Server and application monitoring webinars [Applications Manager] - Part 4
 
OpsWorks for Chef Automate - Auckland AWS
OpsWorks for Chef Automate - Auckland AWS OpsWorks for Chef Automate - Auckland AWS
OpsWorks for Chef Automate - Auckland AWS
 
Enhanced Security and Visibility for Microservices Applications
Enhanced Security and Visibility for Microservices ApplicationsEnhanced Security and Visibility for Microservices Applications
Enhanced Security and Visibility for Microservices Applications
 
Automate, monitor and manage MongoDB cluster deployment
Automate, monitor and manage MongoDB cluster deploymentAutomate, monitor and manage MongoDB cluster deployment
Automate, monitor and manage MongoDB cluster deployment
 
Integration with dropbox using mule esb
Integration with dropbox using mule esbIntegration with dropbox using mule esb
Integration with dropbox using mule esb
 
Enterprise Beacon Object Hive - Siebel Version Control
Enterprise Beacon Object Hive - Siebel Version ControlEnterprise Beacon Object Hive - Siebel Version Control
Enterprise Beacon Object Hive - Siebel Version Control
 
AWS Community Day 2019
AWS Community Day 2019AWS Community Day 2019
AWS Community Day 2019
 
Medlife's journey with AWS from 0(zero) orders to 6 digit mark
Medlife's journey with AWS from 0(zero) orders to 6 digit markMedlife's journey with AWS from 0(zero) orders to 6 digit mark
Medlife's journey with AWS from 0(zero) orders to 6 digit mark
 
Azure realtime-interview questions - part 7
Azure realtime-interview questions - part 7Azure realtime-interview questions - part 7
Azure realtime-interview questions - part 7
 
Aws Azure-gcp-architecture-for starter
Aws Azure-gcp-architecture-for starterAws Azure-gcp-architecture-for starter
Aws Azure-gcp-architecture-for starter
 
Glue con2011 Jeff Malek from BigDoor
Glue con2011 Jeff Malek from BigDoorGlue con2011 Jeff Malek from BigDoor
Glue con2011 Jeff Malek from BigDoor
 
BigDoor's Jeff Malek Gluecon Presentation
BigDoor's Jeff Malek Gluecon PresentationBigDoor's Jeff Malek Gluecon Presentation
BigDoor's Jeff Malek Gluecon Presentation
 
AWS EC2 and ELB troubleshooting
AWS EC2 and ELB troubleshootingAWS EC2 and ELB troubleshooting
AWS EC2 and ELB troubleshooting
 
Delivering the right end user experience with your application performance
Delivering the right end user experience with your application performanceDelivering the right end user experience with your application performance
Delivering the right end user experience with your application performance
 

Semelhante a Building Efficient, Scalable and Resilient Front-end logging service with AWS

Service-Level Objective for Serverless Applications
Service-Level Objective for Serverless ApplicationsService-Level Objective for Serverless Applications
Service-Level Objective for Serverless Applications
alekn
 
Service Mesh on Kubernetes with Istio
Service Mesh on Kubernetes with IstioService Mesh on Kubernetes with Istio
Service Mesh on Kubernetes with Istio
Michelle Holley
 
AWS CloudFormation Automation, TrafficScript, and Serverless architecture wit...
AWS CloudFormation Automation, TrafficScript, and Serverless architecture wit...AWS CloudFormation Automation, TrafficScript, and Serverless architecture wit...
AWS CloudFormation Automation, TrafficScript, and Serverless architecture wit...
PolarSeven Pty Ltd
 
Resume_Ashok-updated (1) (1)
Resume_Ashok-updated (1) (1)Resume_Ashok-updated (1) (1)
Resume_Ashok-updated (1) (1)
chimmili ashok
 

Semelhante a Building Efficient, Scalable and Resilient Front-end logging service with AWS (20)

Lessons Learned during IBM SmartCloud Orchestrator Deployment at a Large Tel...
Lessons Learned during IBM SmartCloud Orchestrator Deployment at a Large Tel...Lessons Learned during IBM SmartCloud Orchestrator Deployment at a Large Tel...
Lessons Learned during IBM SmartCloud Orchestrator Deployment at a Large Tel...
 
Distributed Services Scheduling and Cloud Provisioning
Distributed Services Scheduling and Cloud ProvisioningDistributed Services Scheduling and Cloud Provisioning
Distributed Services Scheduling and Cloud Provisioning
 
Refactoring Web Services on AWS cloud (PaaS & SaaS)
Refactoring Web Services on AWS cloud (PaaS & SaaS)Refactoring Web Services on AWS cloud (PaaS & SaaS)
Refactoring Web Services on AWS cloud (PaaS & SaaS)
 
Service-Level Objective for Serverless Applications
Service-Level Objective for Serverless ApplicationsService-Level Objective for Serverless Applications
Service-Level Objective for Serverless Applications
 
Microservices @ Work - A Practice Report of Developing Microservices
Microservices @ Work - A Practice Report of Developing MicroservicesMicroservices @ Work - A Practice Report of Developing Microservices
Microservices @ Work - A Practice Report of Developing Microservices
 
Spirent CloudScore
Spirent CloudScoreSpirent CloudScore
Spirent CloudScore
 
IBM SmartCloud Orchestration
IBM SmartCloud OrchestrationIBM SmartCloud Orchestration
IBM SmartCloud Orchestration
 
Service Mesh on Kubernetes with Istio
Service Mesh on Kubernetes with IstioService Mesh on Kubernetes with Istio
Service Mesh on Kubernetes with Istio
 
IBM IMPACT 2014 - AMC-1882 Building a Scalable & Continuously Available IBM M...
IBM IMPACT 2014 - AMC-1882 Building a Scalable & Continuously Available IBM M...IBM IMPACT 2014 - AMC-1882 Building a Scalable & Continuously Available IBM M...
IBM IMPACT 2014 - AMC-1882 Building a Scalable & Continuously Available IBM M...
 
Enterprise Application to Infrastructure Integration - SDN Apps
Enterprise Application to Infrastructure Integration - SDN AppsEnterprise Application to Infrastructure Integration - SDN Apps
Enterprise Application to Infrastructure Integration - SDN Apps
 
What's new in smart cloud enterprise 2.2
What's new in smart cloud enterprise 2.2What's new in smart cloud enterprise 2.2
What's new in smart cloud enterprise 2.2
 
DEVNET-1153 Enterprise Application to Infrastructure Integration – SDN Apps
DEVNET-1153	Enterprise Application to Infrastructure Integration – SDN AppsDEVNET-1153	Enterprise Application to Infrastructure Integration – SDN Apps
DEVNET-1153 Enterprise Application to Infrastructure Integration – SDN Apps
 
Pure Systems Patterns of Expertise - John Kaemmerer and Gerry Kovan, 11th Sep...
Pure Systems Patterns of Expertise - John Kaemmerer and Gerry Kovan, 11th Sep...Pure Systems Patterns of Expertise - John Kaemmerer and Gerry Kovan, 11th Sep...
Pure Systems Patterns of Expertise - John Kaemmerer and Gerry Kovan, 11th Sep...
 
Microservices
MicroservicesMicroservices
Microservices
 
AWS Serverless concepts and solutions
AWS Serverless concepts and solutionsAWS Serverless concepts and solutions
AWS Serverless concepts and solutions
 
Microservice creation using spring cloud, zipkin, ribbon, zull, eureka
Microservice creation using spring cloud, zipkin, ribbon, zull, eurekaMicroservice creation using spring cloud, zipkin, ribbon, zull, eureka
Microservice creation using spring cloud, zipkin, ribbon, zull, eureka
 
IEEE 2014 JAVA CLOUD COMPUTING PROJECTS Automatic scaling of internet applica...
IEEE 2014 JAVA CLOUD COMPUTING PROJECTS Automatic scaling of internet applica...IEEE 2014 JAVA CLOUD COMPUTING PROJECTS Automatic scaling of internet applica...
IEEE 2014 JAVA CLOUD COMPUTING PROJECTS Automatic scaling of internet applica...
 
AWS CloudFormation Automation, TrafficScript, and Serverless architecture wit...
AWS CloudFormation Automation, TrafficScript, and Serverless architecture wit...AWS CloudFormation Automation, TrafficScript, and Serverless architecture wit...
AWS CloudFormation Automation, TrafficScript, and Serverless architecture wit...
 
Resume_Ashok-updated (1) (1)
Resume_Ashok-updated (1) (1)Resume_Ashok-updated (1) (1)
Resume_Ashok-updated (1) (1)
 
Get Well Prepared for Google Professional Cloud Developer (GCP-PCD) Certifica...
Get Well Prepared for Google Professional Cloud Developer (GCP-PCD) Certifica...Get Well Prepared for Google Professional Cloud Developer (GCP-PCD) Certifica...
Get Well Prepared for Google Professional Cloud Developer (GCP-PCD) Certifica...
 

Mais de AWS User Group Bengaluru

Mais de AWS User Group Bengaluru (20)

Demystifying identity on AWS
Demystifying identity on AWSDemystifying identity on AWS
Demystifying identity on AWS
 
AWS Secrets for Best Practices
AWS Secrets for Best PracticesAWS Secrets for Best Practices
AWS Secrets for Best Practices
 
Cloud Security
Cloud SecurityCloud Security
Cloud Security
 
Lessons learnt building a Distributed Linked List on S3
Lessons learnt building a Distributed Linked List on S3Lessons learnt building a Distributed Linked List on S3
Lessons learnt building a Distributed Linked List on S3
 
Medlife journey with AWS
Medlife journey with AWSMedlife journey with AWS
Medlife journey with AWS
 
Building Efficient, Scalable and Resilient Front-end logging service with AWS
Building Efficient, Scalable and Resilient Front-end logging service with AWSBuilding Efficient, Scalable and Resilient Front-end logging service with AWS
Building Efficient, Scalable and Resilient Front-end logging service with AWS
 
Exploring opportunities with communities for a successful career
Exploring opportunities with communities for a successful careerExploring opportunities with communities for a successful career
Exploring opportunities with communities for a successful career
 
Slack's transition away from a single AWS account
Slack's transition away from a single AWS accountSlack's transition away from a single AWS account
Slack's transition away from a single AWS account
 
Log analytics with ELK stack
Log analytics with ELK stackLog analytics with ELK stack
Log analytics with ELK stack
 
Serverless Culture
Serverless CultureServerless Culture
Serverless Culture
 
Refactoring to serverless
Refactoring to serverlessRefactoring to serverless
Refactoring to serverless
 
Amazon EC2 Spot Instances Workshop
Amazon EC2 Spot Instances WorkshopAmazon EC2 Spot Instances Workshop
Amazon EC2 Spot Instances Workshop
 
AWS Secrets for Best Practices
AWS Secrets for Best PracticesAWS Secrets for Best Practices
AWS Secrets for Best Practices
 
Exploring opportunities with communities for a successful career
Exploring opportunities with communities for a successful careerExploring opportunities with communities for a successful career
Exploring opportunities with communities for a successful career
 
Lessons learnt building a Distributed Linked List on S3
Lessons learnt building a Distributed Linked List on S3Lessons learnt building a Distributed Linked List on S3
Lessons learnt building a Distributed Linked List on S3
 
Cloud Security
Cloud SecurityCloud Security
Cloud Security
 
Amazon EC2 Spot Instances
Amazon EC2 Spot InstancesAmazon EC2 Spot Instances
Amazon EC2 Spot Instances
 
Cost Optimization in AWS
Cost Optimization in AWSCost Optimization in AWS
Cost Optimization in AWS
 
Keynote - Chaos Engineering: Why breaking things should be practiced
Keynote - Chaos Engineering: Why breaking things should be practicedKeynote - Chaos Engineering: Why breaking things should be practiced
Keynote - Chaos Engineering: Why breaking things should be practiced
 
Decentralized enterprise architecture using Blockchain & AWS
Decentralized enterprise architecture using Blockchain & AWSDecentralized enterprise architecture using Blockchain & AWS
Decentralized enterprise architecture using Blockchain & AWS
 

Último

Último (20)

A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 

Building Efficient, Scalable and Resilient Front-end logging service with AWS

  • 1. Building Efficient, Scalable, and Resilient Front-end Logging Service with AWS KOKILAVANI KATHIRESAN | 27/07/2019
  • 2. Introduction - Containers, Serverless, Microservice Architecture change the way the software is built - The systems are more distributed, and more ephemeral - No Complex system is ever fully healthy - Better Resilience and Fault Tolerance is the goal - Ease of debugging is a cornerstone to maintain and evolve robust systems
  • 3. Observability - Internal states of the system should be inferred by its external outputs - Reduce MTTD and MTTR - Verifying the health of the service proactively - To know what’s broken, and why? - Provides the all-important feedback that drives future iterations
  • 4.
  • 5. Our Business Case - To Collect logs, traces and metrics from Mobile/Web Browser - Get insights of the application - Understanding the user behavior patterns - Monitor application performance
  • 6. Front-end Logging Service - Exposed a REST Endpoint - Spring boot application which accepts the compressed log message - Decompress and Validate the Payload - Forward it to the application’s log destination (Splunk) Requirements: - 20000 Transactions per second - 1 second latency Internet Logging Service AWS Account Compressed Batched Logs
  • 7. Latency Improvement We split the service into two microservices. Producer: - Receives request and Validate the sender - Accepts the payload - Puts the data to queue Consumer: - Polls the data from queue - Extract the payload and Validate the data - Sends it to log destination Logging Service - Producer Logging Service - Consumer SQS
  • 8. FE Architecture in AWS SHAILJA AGARWALA
  • 9. Well Architected Framework Five pillars : - Operational excellence - Security - Reliability - Performance efficiency - Cost optimization
  • 10. EC2 Setup Producer: - Compute Intensive (c5.2xlarge) - No of instances : 3 to 20 Consumer: - Memory Intensive (m5.2xlarge) - No of Instances : 3 to 20 Alarms: - Based on JVM metrics sent to Cloud watch
  • 12. Route 53 - Expose the producer ELB through Route 53 - Route 53 endpoint is hosted behind Intuit API gateway - Disaster recovery through multiple CName across region EC2 EC2 EC2
  • 15. Auto Scaling Group Log generated varies during tax peak across the year Producer: - Request Processing Time decides scaling Consumer: - SQS depth
  • 17. Target Groups - With auto scaling and load balancers involved, target groups will route requests to EC2s and microservices - Requests are being sent to new targets as soon as the registration is complete and initial health check is passed
  • 18. Cloud formation – Infrastructure as Code
  • 19. Deployment & AMI Restack RAVIKUMAR KOTTA
  • 20. AMI Restack Background: - Intuit compliance team applies security patches and new baseline images are released every 2 weeks - App teams must either use these AMIs or derive AMIs from those baseline images - Automated this entire process by using CW Rule and Codebuild services
  • 21. Config: CW Rule on rhel7.4
  • 22. Code build logs - Baking Logging service AMI - Launch the new EC2 instance from Baseline AMI - Copy chef recipes required to install software like java etc.. and configuration required for Splunk forwarder and log rotation - Bake logging service AMI - Publish cloud watch event with the AMI id
  • 23. Code build logs - Baking Logging service AMI
  • 24. CW rule on Baked AMI - Cloud watch rule configured to trigger on baked logging service AMI - We have 2 targets configured on this CW Rule - Lambda function: Creates new launch config with new AMI and updates ASG - Code pipeline: CD service to automate the steps to release logging service
  • 25. CW rule on Baked AMI
  • 26. Code Pipeline to automate Deployment process. - Source Stage: Downloads app config files - Code deployment stage: Reads app file from source stage and triggers code deploy for all environments - Blue-Green deployment - Re-routing traffic to new instances
  • 28. Lifecycle hooks - BeforeInstall: Setup application configuration for ex: install jre, collectd, splunk forwarder and pulls the latest code from S3 and deploy it - ApplicationStop: Stops application - ApplicationStart: Starts application - ValidateService: Invokes automation tests against deployed code(Green) App Spec Config
  • 31. Title + Content Golden Signal Metrics
  • 32. Enhancements - Extension for Metrics and Traces - Dockerize the service code - Deploy in Kubernetes