Amazon Web Services (AWS) is a secure cloud services platform, offering computing power, database storage, content delivery and other functionality to help businesses scale and grow.
AWS allows you to do the following things:
– Run web and application servers in the cloud to host dynamic websites
– Securely store all your files on the cloud so you can access them from anywhere
– Using managed databases like MySQL, PostgreSQL, Oracle or SQL Server to store information
– Deliver static and dynamic files quickly around the world using a Content Delivery Network (CDN)
Learning AWS can be a daunting task for small business owners on top of running day-to-day operations. This article aims to simplify the process of building a website on AWS by breaking down key terms used in the software and demonstrating how you can get started on AWS for free by following a few simple steps.
As a company, all you need to do is to identify which AWS services you need, such as hosting, data storage or analytics. AWS is a way to host your website, route URLs, and have a way to store data and files like videos and images all on one platform.
Main Benefits of Using AWS
In 2006, Amazon Web Services (AWS) started to offer IT services to the market in the form of web services, which is nowadays known as cloud computing.
With this cloud, you need not plan for servers and other IT infrastructure which takes up a lot of time (and space and money). Instead, these services can instantly spin up hundreds or thousands of servers in minutes and deliver results faster. You pay only for what you use with no up-front expenses and no long-term commitments, which makes AWS cost-efficient.
Cloud computing is a model that enables the following features:
– Users can provision and release resources on-demand
– Resources can be scaled up or down automatically, depending on the load
– Resources are accessible over a network with proper security
– Cloud service providers can enable a pay-as-you-go model, where customers are charged based on the type of resources and per usage
The AWS EC2 is an example of cloud computing at the infrastructure-as-a-service (IaaS) level, providing users with the capability to handle processing, storage, and network connectivity on demand. Using this service model, the customers can develop their applications on these resources.
Here are some of the key advantages that cloud computing has to offer:
#1 Cost-Efficient
As explained above.
#2 Reliable
A cloud computing platform can provide a more reliable and consistent service than an in-house IT infrastructure. It guarantees 24×7 and 365 days of service. If any of the servers fails, then hosted applications and services can easily be transferred to any of the available servers.
#3 Unlimited Storage
Cloud computing provides almost unlimited storage capacity, i.e., you need not worry about running out of storage space or increasing our current storage space availability. You can access as much or as little as you need.
#4 Backup & Recovery
Storing data in the cloud, backing it up and restoring the same is relatively easier than storing it on a physical device. The cloud service providers also have enough capacity to recover your data, so there is the convenience of recovering your data anytime.
#5 Easy Access to Information
Once you register yourself in the cloud, you can access your account from anywhere in the world provided there is an internet connection. Various storage and security facilities vary with the account type chosen.
Disadvantages of Using AWS (Or Other Cloud Computing Providers)
Although AWS (and cloud computing in general) provides a wonderful set of advantages, it has some drawbacks as well that often raise questions about its efficiency.
#1 Cloud Security Can Be Weaker Than On-site Data Storage And Handling
Security is the major issue in cloud computing. The cloud service providers implement the best security standards and industry certifications, however, storing data and important files on external service providers always bears a risk.
#2 Technical Issues Can Still Cause Major Headaches
As cloud service providers offer services to a number of clients each day, sometimes the system can have some serious issues leading to business processes temporarily being suspended. Additionally, if the internet connection is offline then you will not be able to access any of the applications, server, or data from the cloud.
#3 Not Easy to Switch Service Providers
Cloud service providers often promise vendors that the cloud will be flexible to use and integrate, but switching cloud services is not easy. Most organisations may find it difficult to host and integrate current cloud applications on another platform. Interoperability and support issues may arise such as applications developed on the Linux platform may not work properly on Microsoft Development Framework (.Net).
Basic Terms You Need To Know Before Using AWS
Before you start using AWS, it is important to understand some of the key terms that you will encounter when you are interacting with the database.
Geography
AWS is a global network infrastructure with data centres that span the globe. You may need to switch between geographical areas when using AWS to access networks in different locations.
#1 Region — a region is a geographical area consisting of 2 or more availability zones.
#2 Availability zone — it is a data centre that will process the data you upload onto the cloud.
#3 Edge Location — they are CDN (Content Delivery Network) endpoints for CloudFront, Amazon’s native CDN.
Computation
When you operate on AWS, you are running a virtual machine; an operating system that allows you to process data and handle tasks. You can choose to operate the virtual machine in several ways.
#1 EC2 (Elastic Compute Cloud) — This is Amazon’s oldest and most used virtual machine that allows you to run applications and operations on the cloud. The EC2 Instance is an example of a virtual machine that is customisable for your needs.
#2 LightSail — If you don’t have any prior experience with AWS, this is for you. It automatically deploys and manages computation, storage and networking capabilities required to run your applications.
#3 Batch — It enables you to run batch computing workloads of any scale easily and efficiently on AWS using Amazon EC2 and EC2 spot fleet.
Networking and Content Delivery
Since the advantage of hosting your website on the cloud means that it can be easily accessible and cross-network communication can happen more seamlessly, networking and content delivery networks (CDN) play a major role in how your virtual machine will run.
#1 VPC (Virtual Private Cloud) — It is simply a data centre in the cloud where you deploy all your resources. It allows you to better isolate your resources and secure them.
#2 CloudFront — It is AWS’s Content Delivery Network (CDN) that consists of Edge locations that cache resources.
#3 API Gateway — This allows you to create, store and manage APIs at scale. APIs, or application programming interface, refers to software that allows different applications to “talk” to each other.
Security, Identity and Compliance
#1 IAM (Identity and Access Management) — Allows you to manage users, assign policies, create groups to manage multiple users. As the business owner, you will be the Root User, but you can use IAM to assign administrative roles to your team members who manage parts of AWS for you.
#2 WAF (Web Application Firewall) — Gives you application-level protection and blocks SQL injection and cross-site scripting attacks.
#3 Inspector — It is an agent that you install on your virtual machines, which then reports any security vulnerabilities.
For further reading, you can visit the core concepts of AWS Fundamentals to understand the principles behind AWS’ software architecture.
Breakdown of AWS Infrastructure
Now that you understand a bit more about the terminology behind AWS, here are the things you need to know to get started with building your application on AWS.
As a business owner, you will be building applications on the EC2 Instance under a private Virtual Private Cloud (VPC) and availability zone. When you first log into AWS, the system will guide you to set up your virtual machine according to your organisational needs.
You will have to choose which (geographical) region you want to set up your EC2 Instance in and set up your VPC. Your VPC will then consist of a public and private subnet and is assigned according to your Availability Zone, which is one or more data centres.
Through the VPC Route Table, you can then configure the router to send the data you want between your public and private subnets. The main difference between the public and private subnet is that your EC2 Instance on your public subnet will have a publicly available IP address and can use an Internet Gateway to access the internet, while the private subnet is completely private.
Your S3, or Simple Storage Service, can be used to store data like files, folders, images, documents, but cannot be used to install software, games or operating systems.
A simple analogy is that you may have an art gallery that accommodates viewers who want to see your artwork (public subnet), but your studio may be in the basement for you to experiment with different mediums while you finish your masterpieces, kept away from prying eyes (private subnet).
Different businesses across different industries require varying technology stacks, so AWS has neatly categorised all the different industries and segments into products you might be interested in, from simple database management to quantum computing and Internet-of-Things (IoT).
Launching Your Own AWS Virtual Machine
Now that you understand how the virtual machines interact with each other in the cloud, it is time to learn how to launch your very own Amazon EC2 Instance (virtual machine).
You will start by choosing an Amazon Machine Image (AMI), which is a summarised version of an operating system (running on Windows or Linux).
You can pick across different Instance types, but the general-purpose one can be obtained for free under the free tier of products available, but is low in processing power.
After you launch your EC2 Instance, you can then connect to your EC2 Instance and launch your website by pasting your code into the User Data form under Configure Instance settings or uploading a file onto the servers.
Read Also: Amazon, Lazada, Shopee, Qoo10: Which E-Commerce Platform Should You Use To Sell Your Products?
AWS can be pretty daunting for a business owner to set up without any external help, but if you need a scalable software infrastructure to build on, AWS is the market leader with over 40% market share that you can rely on for your cloud computing needs.
Celebrate with S$188 cash reward
Open an OCBC Business Growth account today and get S$188 cash reward when you make two transactions totalling at least S$100/month for two consecutive months. *T&Cs apply. Insured up to S$100k by SDIC.
Subscribe To The DollarsAndSense Business Pass
Enjoy what you are reading and want more? Join The DollarsAndSense Business Pass and unlock access to valuable tools, exclusive networking opportunities, and tap into the wisdom of industry experts to fuel your business expansion!