AWS Outposts
Overview
AWS Outposts is a special offering by AWS that enables AWS to run in your own premises, enabling a truly hybrid compute and storage experience. Let's understand the key features of AWS Outposts and how you can use AWS Outposts in your hybrid workflows.
What are AWS Outposts?
AWS is a cloud computing platform where all the infrastructure is hosted in the "cloud". But the "cloud" is essentially a data center with a lot of servers located in a specific region. What if you could take one of those servers and have your own custom version of AWS?
AWS Outposts is a fully managed service that enables you to have AWS infrastructure, services, APIs, and, tools deployed in your own environment. This unlocks capabilities like low latency computing and allows companies to continue to use on-premises servers together with AWS services.
Concepts of AWS Outposts
To understand how AWS Outposts work, first let's take a look at the key concepts associated with AWS Outposts:
- Outpost Site: The physical building that is owned and managed by the customer. The site should have all the necessary requirements for power, networking, and cooling.
- Outpost Configuration: This is the configuration of AWS EC2 compute capacity, networking support, and how much AWS EBS storage capacity is required.
- Outpost Capacity: This is the compute and storage resources which are available on the Outpost, and can be viewed using the AWS Outposts console.
- Outpost Equipment: The physical hardware that is provided by AWS for the AWS Outposts service. This includes racks, servers, switches, power outlets, and network patch panels. There are two types of size configurations that will be described later - Outpost racks and Outpost servers.
- Service Link: This is the network route that enables network communication between the customer's Outpost and its associated AWS Region.
- Local Gateway: This is the virtual router that enables the communication between an Outpost rack and the customer's on-premises network.
- Local Network Interface: This is the network interface that enables the communication between an Outpost server and the customer's on-premises network.
How Does AWS Outposts Work?
Let's break down how you can order your custom AWS Outposts and how they work:
- As a pre-requisite, ensure your on-premises site supports the minimum requirements of power, networking, and cooling specified by AWS.
- Configure your AWS Outpost Rack or AWS Outpost Server using the AWS Console and place your order.
- AWS will confirm the order and provide an installation date. It will also provide you will a list of items to check for as per your chosen configuration.
- On the installation date, the AWS team will place the AWS Outpost Rack/Server in your on-premises site's server room.
- Your on-premises site manager or electrician will need to assist with connecting to the site's local power.
- After the AWS Outpost has been powered on, the AWS team will configure the service link and other network-related configurations.
- Once the complete setup has been successful, you should be able to see the AWS Outpost using your own AWS Console. You can now create AWS EC2 Instances and use other AWS Services. You can manage your AWS Outpost using the AWS Console.
For a more detailed and technical explanation of the ordering and installation process, you can check AWS's video.
AWS Outposts Family Overview
There are two size options provided by AWS Outposts:
- AWS Outpost Racks: AWS Outpost Racks are full-scale server racks, that come in an industry-standard "42U" form factor. They support more AWS Services than AWS Outpost Servers and can be installed on on-premises sites to provide a consistent hybrid experience.
- AWS Outpost Servers: AWS Outpost Servers are small-scale single servers that come in an industry-standard "1U" or "2U" form factor. They support fewer AWS Services but come with the flexibility of being installed in smaller locations like retail stores or healthcare provider locations.
For feature comparison, you can refer to the below table:
AWS Outposts Racks | AWS Outposts Servers | |
---|---|---|
Form Factor | AWS Outpost Racks are 80in x 24in x 48in. | AWS Outposts Servers need to be installed in a rack and 19 inches wide. The "1U" is 24 inches wide, whereas the "2U" is 30 inches wide. |
Installation | AWS Outpost Racks are fully assembled and installed by an AWS team that physically visits your site. | AWS Outpost Servers are sent directly to you and can be installed by onsite personnel. Once connected to your network, AWS will remotely configure the AWS Outpost. |
AWS Services Supported | Broad range of AWS Services supported as Amazon EC2, Amazon ECS, Amazon EBS, Amazon S3, Amazon EMR, etc. | Limited AWS Services supported like Amazon EC2, Amazon ECS, AWS IoT Greengrass, and Amazon Sagemaker Edge Manager. |
Power | Supports 5kVA, 10 kVA or 15kVA. | Supports 1-2 kVA. |
Networking | Supports 1 Gbps, 10 Gbps, 40 Gbps, and 100 Gbps uplink speeds. | Supports 1 Gbps and 10 Gbps uplink speeds. |
How to Use AWS Outposts?
Now that we understand the differences between AWS Outposts Racks and AWS Outposts Servers, let's see how you can actually order your own AWS Outpost and create an AWS EC2 Instance on it.
Pre-Requisites
- An Outpost site that meets the requirements for AWS Outposts
- AWS Enterprise Support Plan
Create an AWS Outpost Rack and Order Capacity
- Go to the AWS Console. Change the AWS Region as per your requirements.
- Search for "Outposts" in the search bar. Choose AWS Outposts from the options.
- Choose Place order. Then choose Racks.
- To add capacity, choose a capacity configuration from the available list.
- Choose Next.
- If you already have an AWS Outpost and site configured then you can choose Use existing Outpost and select an Outpost.
- Otherwise choose Create new Outpost and create a new Outpost configuration. You will need to enter information like:
- Name and Description
- Availability Zone
- Site ID
- Rack's Max Weigh, Power draw, Power option, Power connector, Power feed drop, Fiber type
- Select a payment option and delivery address. Choose Next.
- For Review and order, review the information and choose Place order.
- AWS will schedule a date and time with you to fulfill the order. You will also receive a checklist of items to verify or provide before the installation.
Create an AWS Outpost Server and Order Capacity
For creating an AWS Outpost Server you can follow the same steps as Create an AWS Outpost Rack and Order Capacity, but for step 3 choose Servers instead of choosing Racks.
Launch an AWS EC2 Instance
- Create a Subnet
- Go the AWS Console. Change the AWS Region as per your requirements.
- Search for "Outposts" in the search bar. Choose AWS Outposts from the options.
- Select the Outpost, and then choose Actions, and then Create subnet.
- Select the VPC and specify an IP address range for the subnet.
- Choose Create.
- Launch an instance on the AWS Outpost
- Go the AWS Console. Change the AWS Region as per your requirements.
- Search for "Outposts" in the search bar. Choose AWS Outposts from the options.
- Select the Outpost, and then choose Actions, and then View details.
- On the Outpost summary page, choose Launch instance. You will be redirected to the Amazon EC2 console.
- Follow the steps in the Amazon EC2 Launch Instance Wizard to launch the instance in your Outpost subnet.
- Configure Connectivity
- Configure the local network interface on the instance with an IP address on the local network. You can do this using DHCP.
- Test The Connectivity
- You can use network commands like ping to check for connectivity to the instance you created.
AWS Resources on AWS Outposts
Here is the current list of AWS Resouces which are supported by AWS Outposts
Resource Type | AWS Outposts Racks | AWS Outposts Servers |
---|---|---|
Amazon EC2 Instances | Yes | Yes |
Amazon ECS Cluster | Yes | Yes |
Amazon EKS Nodes | Yes | |
AWS App Mesh Envoy | Yes | Yes |
Amazon EC2 Instance Block Storage | Yes | Yes |
Amazon EBS Volumes | Yes | |
Amazon S3 Buckets | Yes | |
Amazon EMR Clusters | Yes | |
Amazon ElasticCache Instances | Yes | |
Amazon RDS DB Instances | Yes | |
Amazon VPC | Yes | Yes |
AWS ALB (Application Load Balancers) | Yes | |
AWS IoT Greengrass | Yes | Yes |
Amazon SageMaker Neo | Yes | Yes |
Features of AWS Outposts
The main features of AWS Outposts:
- Compute: You can choose from different types of AWS EC2 Instances - from general purpose (m5/m5d), compute optimized (c5/c5d), memory optimized (r5/r5d), graphics optimized (g4dn) and I/O optimized (i3en).
- Storage: AWS Outposts provides you with three tiers of storage for Amazon EBS - 11 TB, 33 TB, and 55 TB. You can also utilize Amazon S3 on Outposts, which supports 26 TB to 380 TB of object storage.
- Networking: AWS Outposts can easily extend to your Amazon VPC as well as on-premises networks - enabling a truly hybrid networking configuration.
- AWS Services: AWS Outposts enables you to use a vareity of AWS Services locally and run your applications on-premises. A few of the services include Amazon EC2, Amazon ECS, Amazon EKS, Amazon EBS, Amazon S3, Amazon RDS, Amazon ElasticCache, and Amazon EMR.
- AWS Tools and APIs: You are immediately able to use AWS Tools like the AWS CLI and utilize AWS SDK's APIs with AWS Outposts.
- Security and Compliance: AWS manages the internal security of AWS Outpost using AWS Nitro, and it is the customer's responsibility to manage the external/physical security of the AWS Outpost installation. AWS Outposts also provide data encryption at rest and data encryption at transit.
- High Availability: AWS Outposts are designed for high availability by using redundant network switches, power elements, and auto-recovery workflows.
- Resource Sharing: AWS Outposts can be configured to be used by multiple AWS Accounts under the same AWS Organization.
AWS Outposts Use Cases
AWS Outposts can be used in multiple hybrid cloud scenarios. Let's take a look at four critical use cases:
Low Latency Compute
- AWS Outposts can benefit use cases where there is a need for low latency and requirements of single-digit millisecond response times.
- This can be especially useful when the public cloud is not able to provide such low response times.
- Use cases include real-time multiplayer games, high-frequency trading, medical diagnostics, and manufacturing execution systems (MES).
Data Residency
- AWS Outposts support use cases where data is required to remain in a particular country, state, or locality for regulatory or information security reasons.
- AWS Outposts allow you to control where your workloads run and where your data resides. The data is not shared with AWS's public cloud infrastructure.
- Use cases include financial services, healthcare, oil and gas, and other highly regulated industries.
Migration and Modernization
- AWS Outposts can help in migration and modernization use cases as well.
- Some legacy on-premises applications have latency-sensitive system dependencies. This makes it difficult to migrate to the cloud easily.
- AWS Outposts enables you slowly migrate one component after the other to AWS while still maintaining the latency-sensitive connection until all components are migrated.
Local Data Processing
- AWS Outposts can enable customers to process local data, locally - this has the benefit of faster throughput and hence more optimized workloads.
- Use cases include data lakes and machine learning model training.
Benefits and Limitations of AWS Outposts
AWS Outposts come with a lot of benefits if your workflows demand a hybrid infrastructure:
- It is fully managed by AWS - including the installation and service.
- AWS also manages and automatically updates the software with the latest patches.
- You can easily deploy their applications without requiring any code changes.
- There are a wide variety of AWS Services to choose from, and these services can make use of your on-premises data to perform tasks or run applications.
- Easy monitoring of infrastructure using AWS CloudWatch.
But there are also certain limitations in using AWS Outposts
- It is a closed loop system, meaning only AWS can perform maintenance on the AWS Outpost Servers/Racks.
- The contract is for three years and cannot be made shorter than that.
- AWS Outposts does not support all types of AWS Services, and you might not be able to integrate fully with your application. For example, AWS Lambda functions are not supported.
AWS Outposts Pricing
- AWS Outposts Rack and AWS Outposts Server are based on a 3-year term.
- You can choose to pay the complete amount upfront, partially upfront, or no upfront. If you choose partially upfront or no upfront, then you will be charged monthly over the 3-year term.
- You can choose between a variety of AWS Outpost configurations featuring a combination of compute, storage, and networking. You can also increase EC2, EBS, and S3 over time by upgrading your configuration.
- The available options and pricing may vary between the following four regions - North America/Central America, South America, EMEA, and Asia Pacific.
- For AWS Outpost Rack configurations the monthly charge for no upfront ranges from $5000 to $30000 depending on the configuration, whereas AWS Outpost Server configurations range from $500 to $1500.
- S3 Storage can range from $3115 for 26 TB to $45527 for 380 TB.
- Note that you will need to pay extra for OS licenses and Enterprise support. But you will not be double charged for running supported services like AWS EC2 Instances.
Companies Using AWS Outposts
There are many companies that use AWS Outposts for their applications and workflows. Here are a few examples:
- DISH uses AWS Outposts to automate its network and bring 5G applications to the market faster.
- Philips uses AWS Outposts to accelerate the delivery of its healthcare services while keeping sensitive data on-premises.
- Morningstar has created a containerized hybrid infrastructure using AWS Outposts.
- FanDuel uses AWS Outposts in its mobile sportsbook platform to provide a low latency experience to its users.
Conclusion
- AWS Outposts is a fully managed physical server/rack solution provided by AWS to enable AWS services to work in direct connection to your on-premises services.
- AWS Outposts come in two flavors - AWS Outpost Racks and AWS Outpost Servers.
- AWS Outposts boast a lot of features - like providing a large range of compute/storage options, having a strong security model, high availability, and resource sharing among AWS Accounts in the same organization.
- AWS Outposts have multiple use cases such as - low latency computing, migration, and modernization of legacy applications, data residency, and local data processing.
- Using AWS Outposts can have a lot of benefits such as being fully managed by AWS, multiple configuration options, and AWS Services to choose from, and easy infrastructure monitoring using AWS CloudWatch.
- There are some limitations as well like AWS Outposts being a closed loop system and the pricing model being a fixed 3-year term.
- AWS Outposts allow you to configure the compute and storage options as per your needs, and the pricing scales equivalently. There is a 3-year term and the due amount can be paid upfront, monthly, or a mixture of both.
- Many companies including DISH, Philips, Morningstar, and FanDuel use AWS Outposts.