View
417
Download
5
Category
Preview:
Citation preview
Paul Wakeford
au.linkedin.com/in/paulwakeford
github.com/paulwakeford
www.paulwakeford.info
@paulwakeford
Agenda
1. Creating a cost control culture
2. Identifying and measuring usage
3. Reducing usage
4. Designing for cost
5. Non-functional cost reductions
6. Next steps
Cost Control
Culture
Who is responsible for cost control?
• Business owners
• Solution architects
• Developers
• Operations
• Finance
• …EVERYONE
Cost Control
Culture
New solutions
• Include a
clear,
signed-off
BOM
• Build to
design
• 'Just in time'
provisioning
Existing solutions
• Identifying
cost savings
• Gamification
• KPIs
• Incentives
Identifying and
measuring usage
Tagging standard:
• Match your company, IT or
project structure
• Crowd source it - get buy in
• Untagged resource policy
• Document it and set a start date
Identifying and
measuring usage
Tag enforcement:
• Easier if you crowd sourced
• Use autotagging and missing
tag detection tools -
bit.ly/awsbillingtools
• You may need a 'tagging
policeman'
Identifying and measuring usage
Treat cost like any other metric:
• Monitor
• Establish your baseline
• Alert on exception
Identifying and measuring usage
Third-party tools:
• Many paid SaaS cost monitoring & reporting services
available: CloudCheckr, Cloudability, CloudHealth,
Cloud Conformity etc
• Free tools: Netflix ICE, AWS tools
• Check Github for other tools
• See bit.ly/awsbillingtools
Reducing usage
EVERYTHING is consumption based:
• Instance based:
o Instance hours
o Instance type (size)
o Region
o Lifecycle
• Add storage, data transfer, software licensing
Reducing usage
EVERYTHING is consumption based:
• Other services - follow the same principles: reduce
hours of usage, reduce size of data, utilise all service
offerings
• Everything has a dial or lever to scale up or down
Designing for cost
Design Goals:
• Meet business objectives
• High availability
• Maintainable
• Cost effective
These goals often compete!
Designing for cost
EC2
● Traditional
workloads
● High perf
● High isolation
● Windows
Containers
● Increase
resource
utilisation
● Microservices
● Standardisation
Serverless
● Secure
● Low
management
● Event driven
Solution options for compute
Designing for cost
Serverless components
• API Gateway
• Lambda
• DynamoDB
• Kinesis
• Cloudfront
• The 'Simple' Services - S3, SQS, SNS, SES
Designing for cost
If you have to use EC2:
• Autoscaling
o Small instances
o Stateless - cattle, not pets
o Build AMIs
• Consider t2 for variable load applications
• Combine with Spot instances.. even in production
Reserved instances
Instance options
• Region and AZ
• Instance size
• OS
• Tenancy
• Convertible
• Scheduled RIs
Payment options
• 1 or 3 years (3 years
only for convertibles)
• Amount of upfront
payment
Very complicated, mistakes
are expensive
Reserved instances
RI tools:
● AWS supplied: Trusted Advisor & RI
utilization report
● SaaS tools - CloudCheckr, Cloudability,
CloudHealth, etc.
● bit.ly/awsbillingtools
Other cost options
● Get Enterprise support
○ Access to Peter :)
○ Technical and sales account managers
● Contact AWS Sales for very high usage
levels
● Look at currency options
Next steps
• Establish your baseline
• Create a cost control
culture
• Evaluate tools
• Consider Enterprise
support
• Consider using a
partner for dedicated
cost resourcing
• Training:
www.vaultsolutions.info/
awscostcontrol
Recommended