<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>Forem: MOHAMMAD ALTRKAWI</title>
    <description>The latest articles on Forem by MOHAMMAD ALTRKAWI (@maltrkawi).</description>
    <link>https://forem.com/maltrkawi</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F662071%2F1821e497-5bf3-4d8a-a44b-3f2206949b40.JPG</url>
      <title>Forem: MOHAMMAD ALTRKAWI</title>
      <link>https://forem.com/maltrkawi</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://forem.com/feed/maltrkawi"/>
    <language>en</language>
    <item>
      <title>Hybrid Cloud with AWS | AWS Whitepaper Summary</title>
      <dc:creator>MOHAMMAD ALTRKAWI</dc:creator>
      <pubDate>Fri, 10 Sep 2021 07:51:54 +0000</pubDate>
      <link>https://forem.com/awsmenacommunity/hybrid-cloud-with-aws-aws-whitepaper-summary-5g9b</link>
      <guid>https://forem.com/awsmenacommunity/hybrid-cloud-with-aws-aws-whitepaper-summary-5g9b</guid>
      <description>&lt;p&gt;In this whitepaper summary (originally published at November 2020), we will navigate through various offerings from AWS for hybrid technical and organizational adoption of cloud services. AWS is a pioneer in this field, as it understands the need to integrate cloud, on-premises and edge infrastructure of existing and potential customers.&lt;/p&gt;

&lt;p&gt;In addition, and with respect to the huge effort the contributors of this whitepaper did, we will try to update the information and figures that represent the current offerings. Finally, the inspiring use case of Dropbox adoption of AWS hybrid cloud will be presented.&lt;/p&gt;

&lt;h2&gt;
  
  
  Considerations of Hybrid Cloud with AWS
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Create a Hybrid Cloud Strategy
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Ongoing migration to the cloud.&lt;/li&gt;
&lt;li&gt;Ensuring business continuity during disaster.&lt;/li&gt;
&lt;li&gt;Expanding on-premises cloud infrastructure to support low-latency apps.&lt;/li&gt;
&lt;li&gt;Expanding international footprint with AWS.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Create a Technical Strategy
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Identify the guiding tenets for hybrid cloud architecture.&lt;/li&gt;
&lt;li&gt;Define guiding principles for a planned hybrid cloud implementation.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Hybrid Cloud Use Cases
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Application Migration to the Cloud
&lt;/h3&gt;

&lt;p&gt;&lt;strong&gt;&lt;em&gt;VMware cloud with AWS&lt;/em&gt;&lt;/strong&gt; delivers a faster, easier, and cost-effective path to the hybrid cloud while allowing customers to modernize applications enabling faster time-to-market and increased innovation, especially with the &lt;strong&gt;new Amazon EC2 i3en.metal instances powered by Intel® Xeon® Scalable processors.&lt;/strong&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Cloud Services On-premises
&lt;/h3&gt;

&lt;p&gt;&lt;strong&gt;&lt;em&gt;AWS Outposts&lt;/em&gt;&lt;/strong&gt; is a fully managed service that offers the same AWS infrastructure, AWS services, APIs, and tools to virtually any datacenter, co-location space, or on-premises facility for a truly consistent hybrid experience.&lt;/p&gt;

&lt;h3&gt;
  
  
  Data Center Extension
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;em&gt;Cloud Bursting&lt;/em&gt;, with offerings of bursting for compute resource through &lt;strong&gt;Amazon EC2, Amazon ECS, Amazon EKS, and AWS Fargate&lt;/strong&gt;, or bursting for storage through &lt;strong&gt;Amazon S3 APIs and AWS Storage Gateway&lt;/strong&gt; for block and file storage.&lt;/li&gt;
&lt;li&gt;
&lt;em&gt;Backup and Disaster Recovery&lt;/em&gt;, with offerings such as &lt;strong&gt;Amazon S3 APIs, AWS Storage Gateway, AWS DataSync and AWS Transfer for SFTP&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;
&lt;em&gt;Distributed Data Processing&lt;/em&gt;, where low-latency or local data reside on-premises, while asynchronous processing, archiving, compliance, business analytics processing and machine learning-based predictions reside on AWS. AWS offerings for those purposes include &lt;strong&gt;AWS Storage Gateway, AWS Backup, AWS DataSync, AWS Transfer Family, Amazon Kinesis Data Firehose and Amazon Managed Streaming for Apache Kafka (Amazon MSK)&lt;/strong&gt; for data importing, and leverage &lt;strong&gt;AWS Analytics, AWS Machine Learning, AWS Serverless, AWS Containers&lt;/strong&gt; for data processing.&lt;/li&gt;
&lt;li&gt;
&lt;em&gt;Geographic Expansion&lt;/em&gt;, where customers take benefit of &lt;strong&gt;AWS Outposts&lt;/strong&gt; in countries where AWS regions do not exist, and &lt;strong&gt;AWS Global Infrastructure&lt;/strong&gt; in countries covered by AWS regions.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Edge Computing
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;AWS Snowball, AWS Snowcone and AWS Snowmobile.&lt;/li&gt;
&lt;li&gt;AWS IoT Greengrass, which is an open-source edge runtime and cloud service for building, deploying, and managing device software.&lt;/li&gt;
&lt;li&gt;AWS Wavelength for mobile edge computing applications.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  ISV and Software Compatibility
&lt;/h3&gt;

&lt;p&gt;AWS has built the most complete and proven approach for rapidly migrating tens to thousands of applications to the AWS Cloud to help you leverage your existing on-premises ISV software investments. Find out more at &lt;a href="https://www.google.com" rel="noopener noreferrer"&gt;AWS Marketplace&lt;/a&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  Operations and Management Framework for Hybrid Cloud with AWS
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fq9qp24bnak7ioi096ljg.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fq9qp24bnak7ioi096ljg.png" alt="image"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Hybrid Cloud Infrastructure
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Foklcbwtp38o9gu6xbr37.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Foklcbwtp38o9gu6xbr37.png" alt="image"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Core Services
&lt;/h3&gt;

&lt;h4&gt;
  
  
  Device and Fleet Management
&lt;/h4&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fq7bpkq24uz8lq08kdrb3.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fq7bpkq24uz8lq08kdrb3.png" alt="image"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h4&gt;
  
  
  Identity, Security and Access Management
&lt;/h4&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fc2709nlw1gotteon1c12.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fc2709nlw1gotteon1c12.png" alt="image"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Unified Hybrid Cloud Management
&lt;/h3&gt;

&lt;h4&gt;
  
  
  Compute Services
&lt;/h4&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F6v54isciq9zsezfr5lf5.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F6v54isciq9zsezfr5lf5.png" alt="image"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h4&gt;
  
  
  Storage Services
&lt;/h4&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F2ha4p3mojrg70f51zhhj.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F2ha4p3mojrg70f51zhhj.png" alt="image"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h4&gt;
  
  
  Networking Services
&lt;/h4&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fkkrisndlyejzdkmvp4dh.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fkkrisndlyejzdkmvp4dh.png" alt="image"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Dropbox Hybrid Cloud Architecture
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F9d39wi3ineyssm2yn6j1.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F9d39wi3ineyssm2yn6j1.png" alt="image"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h4&gt;
  
  
  References
&lt;/h4&gt;

&lt;ul&gt;
&lt;li&gt;Original Whitepaper: &lt;a href="https://bit.ly/3zLhxSe" rel="noopener noreferrer"&gt;https://bit.ly/3zLhxSe&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;AWS Global Infrastructure: &lt;a href="https://aws.amazon.com/about-aws/global-infrastructure/" rel="noopener noreferrer"&gt;https://aws.amazon.com/about-aws/global-infrastructure/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Hybrid Cloud with AWS: &lt;a href="https://aws.amazon.com/hybrid/" rel="noopener noreferrer"&gt;https://aws.amazon.com/hybrid/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Dropbox’s re:Invent Presentation: &lt;a href="https://www.youtube.com/watch?v=1_hKrGjYteQ" rel="noopener noreferrer"&gt;https://www.youtube.com/watch?v=1_hKrGjYteQ&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>aws</category>
      <category>hybrid</category>
      <category>architecture</category>
      <category>cloud</category>
    </item>
    <item>
      <title>Best Practices for Designing Amazon API Gateway Private APIs and Private Integration | AWS Whitepaper Summary</title>
      <dc:creator>MOHAMMAD ALTRKAWI</dc:creator>
      <pubDate>Sun, 15 Aug 2021 19:41:54 +0000</pubDate>
      <link>https://forem.com/awsmenacommunity/best-practices-for-designing-amazon-api-gateway-private-apis-and-private-integration-7kc</link>
      <guid>https://forem.com/awsmenacommunity/best-practices-for-designing-amazon-api-gateway-private-apis-and-private-integration-7kc</guid>
      <description>&lt;p&gt;In this whitepaper summary (originally created by &lt;a href="https://www.linkedin.com/in/takakimatsumoto/" rel="noopener noreferrer"&gt;Takaki Matsumoto&lt;/a&gt;), we will introduce the best practices for deploying private APIs and private integrations in API Gateway, and discusses security, usability, and architecture.&lt;/p&gt;

&lt;h1&gt;
  
  
  Introduction
&lt;/h1&gt;

&lt;p&gt;Private APIs provide a secure means to invoke APIs via an interface VPC endpoint. API Gateway private integration makes it simple to expose your HTTP/HTTPS resources integration can integrate with private APIs, so the APIs can send requests to a Network Load Balancer (NLB), or through Application Load Balancer (ALB) or AWS Cloud Map for HTTP APIs. Private Integration forwards external traffic sent to APIs to private resources, without exposing the APIs to the internet.&lt;/p&gt;

&lt;h1&gt;
  
  
  Amazon API Gateway
&lt;/h1&gt;

&lt;p&gt;Amazon API Gateway is a fully managed service that helps you easily create, publish, maintain, monitor, and secure APIs at any scale. This service offers the following types of APIs:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;REST API, which comes with multiple endpoint types, like edge-optimized, regional, and private (the one we will focus on here)&lt;/li&gt;
&lt;li&gt;WebSocket APIs, which is preferred for building real-time, 2-way communication apps. Private integration is provided by creating a route with VPC link.&lt;/li&gt;
&lt;li&gt;HTTP APIs, which is the newest offering in API Gateway, with support for auto deployment, CORS and enhanced performance. Private integration is support through ALB, AWS Cloud Map, and NLB.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  REST API
&lt;/h2&gt;

&lt;p&gt;To make APIs accessible only from Amazon VPCs, you can use REST APIs with the private endpoint type. The traffic to the APIs will not leave the AWS network. There are three options to invoke a private API through different &lt;a href="https://docs.aws.amazon.com/whitepapers/latest/best-practices-api-gateway-private-apis-integration/rest-api.html#:~:text=about%20each%20option.-,DNS%20Names%20for%20Private%20APIs,-Table%201%20%E2%80%93%20Private" rel="noopener noreferrer"&gt;domain name system (DNS) names&lt;/a&gt;.&lt;/p&gt;

&lt;h3&gt;
  
  
  Resource-Based Policy
&lt;/h3&gt;

&lt;p&gt;Resource-based policies are attached to a resource like a REST API in API Gateway. For resource-based policies, you can specify who has access to the resource and what actions are permitted. Private APIs require the use of a resource policy, and Deployments without a resource policy will fail.&lt;/p&gt;

&lt;h3&gt;
  
  
  Private Integration
&lt;/h3&gt;

&lt;p&gt;Private integration is used to allow traffic routing from API Gateway to VPCs, which is achieved using VPC links and VPC endpoint service that is tied to NLBs. A common use case is to invoke EC2-hosted apps behind NLB through VPC links.&lt;/p&gt;

&lt;h3&gt;
  
  
  Sample Architecture Patterns
&lt;/h3&gt;

&lt;h4&gt;
  
  
  Basic Architecture
&lt;/h4&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8ss4khocat7egtxazkmz.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8ss4khocat7egtxazkmz.png" alt="apigateway-basicarch-modified"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Points of interest&lt;/em&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Security group attached with the endpoint must allow TCP port 443.&lt;/li&gt;
&lt;li&gt;Private API resource policy must allow requests from VPC and interface VPC endpoint.&lt;/li&gt;
&lt;/ul&gt;

&lt;h4&gt;
  
  
  Cross-Account Architecture
&lt;/h4&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Flnm7fbxnbawpopvas8ry.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Flnm7fbxnbawpopvas8ry.png" alt="apigateway-crossaccount-modified"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Points of interest&lt;/em&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Both accounts must exist in the same region.&lt;/li&gt;
&lt;li&gt;Private API resource policy must allow access from other account’s VPC or interface VPC endpoint.&lt;/li&gt;
&lt;/ul&gt;

&lt;h4&gt;
  
  
  On-Premises Architecture
&lt;/h4&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Flppm2chnzupo6xqn1qxi.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Flppm2chnzupo6xqn1qxi.png" alt="apigateway-onprem-modified"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Points of interest&lt;/em&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Use Route53 alias records for access through web app to avoid CORS issues.&lt;/li&gt;
&lt;/ul&gt;

&lt;h4&gt;
  
  
  Private Integration Architecture with ECS
&lt;/h4&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fmnng1qh44brbnhm9h6ys.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fmnng1qh44brbnhm9h6ys.png" alt="apigateway-ecs-modified"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Points of interest&lt;/em&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Use NLB to route traffic to Amazon ECS cluster&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  WebSocket API
&lt;/h2&gt;

&lt;p&gt;This API type of API Gateway allow creating APIs that is accessible using WebSocket protocol. WebSocket APIs allow bidirectional connections that is often used with real-time apps, such as chats apps, multiplayer games, and financial trading apps.&lt;/p&gt;

&lt;h3&gt;
  
  
  Private Integration
&lt;/h3&gt;

&lt;p&gt;The same design principles apply to WebSocket APIs as for REST APIs, except for response handling, which is optional in WebSocket APIs.&lt;/p&gt;

&lt;h3&gt;
  
  
  Sample Architectural Pattern
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fahm27io5qoeohrscz4zg.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fahm27io5qoeohrscz4zg.png" alt="apigateway-websocket-modified"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Points of interest&lt;/em&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;NLB has TLS listener on TCP port 443.&lt;/li&gt;
&lt;li&gt;The target group points to Amazon ECS service.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  HTTP API
&lt;/h2&gt;

&lt;p&gt;This API type is the newest of API Gateway, which comes with enhanced features, performance, easier developer experience, and reduced request pricing.&lt;/p&gt;

&lt;h3&gt;
  
  
  Private Integration
&lt;/h3&gt;

&lt;p&gt;HTTP APIs offers three types of private integration targets, which widen the design choices according the backend service to create VPC endpoints.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;NLB: with a TCP or TLS listener.&lt;/li&gt;
&lt;li&gt;ALB: with a HTTP or HTTPS listener.&lt;/li&gt;
&lt;li&gt;AWS Cloud Map, with Service Discovery features.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Sample Architectural Patterns
&lt;/h3&gt;

&lt;h4&gt;
  
  
  ALB Architecture (ECS)
&lt;/h4&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fgsgvdcdvbiw476fdjxgw.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fgsgvdcdvbiw476fdjxgw.png" alt="apigateway-http-alb-modified"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Points of interest&lt;/em&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;ALB uses path-based routing rules to route traffic to two different ECS services.&lt;/li&gt;
&lt;/ul&gt;

&lt;h4&gt;
  
  
  Cloud Map Architecture (Microservices)
&lt;/h4&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F5xm8r1vzshh44eade7xi.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F5xm8r1vzshh44eade7xi.png" alt="apigateway-http-cloudmap-modified"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Points of interest&lt;/em&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Service discovery in Cloud Map allow routing requests to different endpoints.&lt;/li&gt;
&lt;/ul&gt;

&lt;h1&gt;
  
  
  Security
&lt;/h1&gt;

&lt;p&gt;Private APIs and associated integration comes with extra security, due to limited access to resources within a private network. The following tables lists supported authorization options for all API Gateway offerings:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;IAM: which serves with all API types.&lt;/li&gt;
&lt;li&gt;Amazon Cognito: which serves with REST and WebSocket, and commonly used with web and mobile apps&lt;/li&gt;
&lt;li&gt;Lambda: also works with all API types, and allow developers to design business logic around authorization.&lt;/li&gt;
&lt;li&gt;JWT: which serves with HTTP API only.&lt;/li&gt;
&lt;/ul&gt;

&lt;h1&gt;
  
  
  Cost Optimization
&lt;/h1&gt;

&lt;p&gt;As mentioned before, HTTP APIs offers the lowest pricing tiers if the application design accepts both REST APIs and HTTP APIs. &lt;a href="https://docs.aws.amazon.com/wellarchitected/latest/serverless-applications-lens/welcome.html?did=wp_card&amp;amp;trk=wp_card" rel="noopener noreferrer"&gt;Serverless Application Lens&lt;/a&gt; offers cost optimization practices for, like cost-effective resources, matching supply and demand, and expenditure awareness.&lt;br&gt;
The following list show a highlight of the pricing tiers for REST and HTTP, but more information can be found at &lt;a href="https://aws.amazon.com/api-gateway/pricing/" rel="noopener noreferrer"&gt;Amazon API Gateway Pricing&lt;/a&gt;:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;REST API: ranging from one million calls/12 months at free tier to over 20 billion requests/month with $1.15 per million.&lt;/li&gt;
&lt;li&gt;HTTP API: ranging from one million calls/12 months at free tier to over 300 million requests/month at $0.9 per million
Private Integration in REST and WebSocket requires NLB, but it’s billed per hour. For infrequent usage of the APIs, a VPC-enabled Lambda function is more cost effective, because it’s billed per request.&lt;/li&gt;
&lt;/ul&gt;

&lt;h1&gt;
  
  
  Conclusion
&lt;/h1&gt;

&lt;p&gt;Amazon API Gateway provides different API types and endpoint types. This paper primarily covered private API and integration design patterns, and best practices. Additionally, it covered security and cost optimization. You can leverage the information provided in this whitepaper to determine the best-suited architecture for your application.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;References&lt;/em&gt;&lt;br&gt;
&lt;a href="https://docs.aws.amazon.com/whitepapers/latest/best-practices-api-gateway-private-apis-integration/best-practices-api-gateway-private-apis-integration.html" rel="noopener noreferrer"&gt;Original Whitepaper&lt;/a&gt;&lt;/p&gt;

</description>
      <category>aws</category>
      <category>cloud</category>
      <category>apigateway</category>
      <category>architecture</category>
    </item>
  </channel>
</rss>
