Northmill
facebook.com/northmill.se
northmill.com
by
Wojtek Dąbrowski
Michał Górski
Damian Kleczko
Artur Fityka
Amazon S3
“Object storage built to store and retrieve any amount of data from anywhere.”
Pros
Performance, scalability, availability and durability
Security, compliance and audit capabilities
Cost-effective storage classes
Use cases
Backup and Storage
Application Hosting
Media Hosting
Software Delivery
AWS CloudFront
Amazon DynamoDB
“Run code without thinking about servers. Pay only for the compute time you consume.”
AWS Lambda (FaaS)
Principles of FaaS:
Complete management of servers
Invocation based billing
Event-driven and instantaneously scalable
Use cases:
Data processing
Backends
Amazon API Gateway
Amazon Simple Email Service
AWS CloudFormation
Lists
---
# A list of tasty fruits
- Apple
- Orange
- Strawberry
- Mango
...
Dictionaries
# An employee record
martin:
name: Martin D'vloper
job: Developer
skill: Elite
Mix
# Employee records
- martin:
name: Martin D'vloper
job: Developer
skills:
- python
- perl
- pascal
- tabitha:
name: Tabitha Bitumen
job: Developer
skills:
- lisp
- fortran
- erlang
Booleans
create_key: yes
needs_agent: no
knows_oop: True
likes_emacs: TRUE
uses_cvs: false
CloudFormation template
---
AWSTemplateFormatVersion: "version date"
Description:
String
Metadata:
template metadata
Parameters:
set of parameters
Mappings:
set of mappings
Conditions:
set of conditions
Transform:
set of transforms
Resources:
set of resources
Outputs:
set of outputs
CloudFormation template
---
AWSTemplateFormatVersion: "version date"
Description:
String
Parameters:
set of parameters
Transform:
set of transforms
Resources:
set of resources
Outputs:
set of outputs
CloudFormation template
AWSTemplateFormatVersion: '2010-09-09'
Description: Creates an public S3 bucket
Resources:
PublicBucket:
Type: AWS::S3::Bucket
Properties:
AccessControl: PublicRead
Lab 0. konfiguracja konta AWS i narzędzi
aws configure
aws s3 ls
dotnet --version
dotnet tool install -g Amazon.Lambda.Tools
dotnet-lambda
npm -v
Lab 1.1. Stworzenie S3 bucketa do deploymentu zasobów
Lab 1.2. Utworzenie zasobów aplikacji frontend
Lab 1.3. Utworzenie środowiska i aplikacji backend
Lab 1.4. Utworzenie aplikacji frontend
Lab 1.5. Konfiguracja Simple Email Service
Lab 1.6. Weryfikacja działania stworzonego środowiska
Cloud Formation
Code Pipeline
Code Build
Code Deploy
Lab 2.1. Stworzenie S3 bucketa do przechowywania artefaktów
Lab 2.2. Stworzenie Code Pipeline z rolą
Lab 2.3. Zbudowanie kodu źródłowego za pomocą Code Build
Lab 2.4. Deployment stacka CloudFormation
Lab 2.5. Dodanie testów w Code Pipeline
Lab 2.6. Frontend pipeline
S3
Free tier: 5GB, 20,000 GET Requests; 2,000 PUT, COPY, POST, or LIST Requests; 15GB of Data Transfer Out each month for one year.
CloudFront
Free tier: 50 GB of Data Transfer Out and 2,000,000 HTTP/HTTPS Requests each month for one year.
API Gateway
Free tier: 1,000,000 API calls received for REST APIs, and 1,000,000 messages and 750,000 connection minutes for WebSocket APIs each month for one year.
Lambda
Free tier: 1,000,000 requests and 400,000 GB-seconds of compute time per month with no time limit.
DynamoDB
Free tier: None =(
Price depends on region, for example Frankfurt (eu-central-1):
Write request units: $1.525 per million write request units
Read request units: $0.305 per million read request units
CloudFormation
No charge*
CodePipeline
Free tier: 30 days after creation. Then, $1 per active pipeline per month.