Upgrade to Pro — share decks privately, control downloads, hide ads and more …

From Cloudformation to Marketplace By Bassel Al...

From Cloudformation to Marketplace By Bassel Al Anan

From Cloudformation to Marketplace
By Bassel Al Anan

AWS MENA Community

September 26, 2020
Tweet

More Decks by AWS MENA Community

Other Decks in Technology

Transcript

  1. COMMUNITY DAY MENA Agenda Overview of Infrastructure as a Code.

    Introduction to AWS CloudFormation. AWS Cloud Development Kit (CDK) Overview of AWS Marketplace Benefits of AWS Marketplace How to Deliver Software to Clients
  2. COMMUNITY DAY MENA Introduction to AWS CloudFormation. CloudFormation is a

    service that allows you to manage configure and provision your AWS Infrastructure as a Code. Resources are defined using a CloudFormation template. Supports YAML or JSON. CloudFormation interprets the template and makes the appropriate API calls to create the resources you have defined. Free to use (charged for what you create). You can version control your templates. Can be used to rollback and delete the entire stack.
  3. COMMUNITY DAY MENA Scalable Infrastructure • 1 VPC • 2

    Public Subnets • 2 Private Subnets • 1 IGW • 1 NAT Gateway • 1 Bastion Host • 1 Route Table • 7 Security Groups • 4 EC2 Instances • 2 Application load Balancer VPC AWS Cloud Availability Zone 1 Auto Scaling group Availability Zone 2 Auto Scaling group NAT gateway NAT gateway Instance Instance Instance Instance Amazon EC2 Auto Scaling
  4. COMMUNITY DAY MENA AWSTemplateFormatVersion:”2010-09-09” Description:”Template to create an EC2 instance”

    Parameters: EnvType: Description: ”Environment type” Type: String AllowedValues: - prod - dev Mappings: RegionMap: eu-west-1: ”ami”: ”ami-0bdbld6c15a40392c” us-east-1: "ami-0bdb828fd58c52235” Conditions: CreateProdResources: !Equals [ !Ref EnvType, prod ] CloudFormation Template Structure (YAML)
  5. COMMUNITY DAY MENA Resources: EC2Instance: Type:AWS::EC2::Instance Properties: Instance Type: t2.micro

    ImageID: !FindInMap [RegionMap, !Ref "AWS::Region"] WaitHandle: Type: 'AWS::CloudFormation::WaitConditionHandle’ Transform: Name: ‘AWS::Include’ Parameters: Location: ‘s3://MyS3Bucket/FileName.yaml’ Outputs: InstanceID: Description: The Instance ID Value: !Ref EC2Instance CloudFormation Template Structure (YAML)
  6. COMMUNITY DAY MENA AWS Cloud Development Kit (CDK) Supported Languages:

    • TypeScript • JavaScript • Python • Java • C#
  7. COMMUNITY DAY MENA Benefits of AWS Marketplace • Marketing &

    New Users • Simplified Delivery • Billing
  8. COMMUNITY DAY MENA How to Deliver Software to Clients •

    Amazon Machine Image • Amazon SageMaker • CloudFormation • Container • SaaS