Interested in getting started in the cloud but unsure where to start? Already working in the cloud but feeling a bit overwhelmed? In this session we're going to take a look at how you can kickstart your cloud journey by leveraging open source blueprints on Amazon Lightsail. We will start with a quick overview of cloud computing and Amazon Lightsail, from there we'll look at how Lightsail supports a variety of open source applications and dev stacks. We'll deploy and scale a MEAN stack application and finish up showing how you can use custom blueprints to deploy whatever package you like. - a talk by Mike Coleman,
Developer Advocate, Amazon Web Services, at the Open Source Summit North America, August 2018.
Jumpstarting Your Cloud Journey with OSS on Amazon Lightsail
1. Jumpstarting Your Cloud Journey with
OSS and Amazon Lightsail
Mike Coleman
Developer Advocate, AWS
@mikegcoleman
2. Who am I
• Developer Advocate for Amazon Lightsail
• But, I’m not a developer
• Based out of Portland, Oregon
• Previous: Docker, Puppet (Labs), VMware,
Microsoft, Intel, HP(E)
• @mikegcoleman (but I tweet about soccer, a lot)
• mikegcol@amazon.com
3. What you will learn
After today you will be understand how to:
• Launch an application on Lightsail
• Break out app components
• Scale an application using load balancer
• Get started with containers (bonus)
4. Why Cloud?
• Agility
• Breadth of Services
• Cost savings
• Global Deployments
• Elasticity
5. What you need to set up an instance in AWS:
Launch
VM
Attach
SSD storage
Manage
IAM
Create
Security Groups
Manage
SSH Keys
Go!
Under the hood
6. Amazon Lightsail: Cloud made easy
•Bundled compute, storage, networking
•Fully configured server
•Low, predictable price
•Intuitive, global Lightsail console
•Easy growth path
•Access to AWS services
•Tailored API & CLI
7. What do Lightsail plans include?
• CPU core(s)
• SSD block storage • Networking, data transfer,
and Load Balancing
• DNS management • 1 Static IP/instance • Access to AWS
services
CPU core(s)
8. Jumpstart or Build Your Own with Blueprints
Preconfigured Applications
and Dev Stacks
Operating System Only
9. When to choose Lightsail?
• Small-scale multi-tier apps
• Websites
• Web apps
• Testing environment
• Line-of-business software
• Large, multi-tier applications
(several dozens of instances)
• Anything requiring instances
that are workload optimized,
highly configurable, or resource
intensive
– E.g., Big data analytics, High
performance computing,
Scientific computing
• Advanced networking
13. • Node / Express Web Front End
• MongoDB back end
Phase 1:
• Deploy monolithic app into
Lightsail MEAN blueprint
Phase 2:
• Separate front end from Database
• Scale front end
• Deploy a Lightsail load balancer
The Application: Simple Todo List
18. Refining our application
Potential issues:
• Single point of failure
• Responding to increasing demand
• Database / web front end tied closely together
Solution:
• Separate database / web front end
• Created multiple front end instances
• Add a Lightsail load balancer
19. Lightsail load balancers
• Simplified Amazon load balancer
implementation
• Set up in a few clicks
• Handles http / https traffic
• Balances across ports 80 and 443
20. What You Won’t See Me Do
• Deployed two OS only instances
• Installed and configured Mongo in
one instance
• Installed and configured application
in the other
22. Scaling the front end
• Front end is stateless
• Create Lightsail snapshot
• Deploy multiple instances from snapshot
• Create Lightsail load balancer
• And front-end instances to Load balancer
25. Containers are the new(ish) hotness
• Greatly simplify developing
and deploying applications
• AWS has several great
container offerings
• Getting started can be
intimidating
– You don’t need an orchestrator
on day one
26. Docker containers on Lightsail
Easy to get started
• Build your container image
• Use an OS only blueprint
• Install Docker and Docker Compose
• Copy over a Docker compose file
• docker compose up -d
• Profit
When you’re ready look at EKS/ECS/Fargate