Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

26 Commits
 
 
 
 

Repository files navigation

Cloud Computing Final Project

Cloud Computing is a service provided over the internet, usually these services spand from domain registering, website hosting and online forms of storage like DropBox and Google Drive. AWS provides all of these cloud services and more. In this report we will go over all the many uses of AWS and how it can benefit your business.

Here are the main sections of this report:

  • Cloud Concepts
  • Cloud Economics & Billing
  • AWS Global Infrastructure
  • AWS Cloud Security
  • Networking & Content Delivery
  • Computing
  • Storage
  • Databases
  • Cloud Architecture
  • Auto Scaling & Monitoring

The Amazon Cloud platform provides users with cloud-based products and services that are designed to work together. There are many different catogories of services, each with their own unique tools and softwares for developmemt in the cloud, many of these services provide specific uses for an organization's goals. Shifting to a Cloud services can be tricky for businesses because most companies rely on technology for technical infrastructure and record keeping. Luckily AWS Cloud Adoption Framework can support businesses while they make their shift over to AWS, so, how does AWS help business make this leap to a whole new system? AWS CAF provides guidance when it comes to making the big switch to a new platform, IT professional at AWS aim to help the adoption of businesses by breaking down the process into managable steps. So what are the advantages of using Amazon Cloud Services vs the traditional IT structure.
  1. Trade Capital expense for variable expense: Managing something yourself, let's say a database. When creating a large scale database it requires physical space, power, cooling, maintenance and upkeep costs. Managing all of these expenses can be time consuming for a business and some of those databases may never be used, or on the other hand, a business may have underestimated it's work load and need to buy more equipment. With Cloud services you do not need to manage anything on the hardware, and you need only to pay for what you use. A system like this allows businesses to easily set a budget on the resources used and manage those resources effectively.

  2. Benefits from massive economies of scale: By using cloud computing you can achiece lower cost of services than you would on your own. AWS is built for scale so huge amounts of computational power can be easily managed by the AWS platform, giving the user a better service while keeping the cost low.

  3. Stop guessing capacity: As stated before the cost of setting a IT system up can be a rigorious task, a business needs an accurate idea of the technical capacity. Guessing too high can cause a business to invest for money and time than need. Guessing too low can cause a business to run into problems with load management later down the line. Using AWS helps to remove that problem by allowing the user to manage the amount of capacity need and maximize cost effectiveness.

  4. Increase speed and agility: In AWS, services are just a click away most of the time. Allowing users to create new resources and remove ones that are no longer in us or needed. This kind of flexability allows users to easily experiment with new IT structures while not having to commit to one way of achieving a desired outcome.

  5. Stop spending money on running and maintaining data centers: This is a simple idea, the less time you spend on maintaining what you have, the more time you can spend improving it. Having AWS professionals managae the upkeep tasks allows business to focus on moving foreword and improving other aspects of the business.

  6. Go global in minutes: Easily deploy your application to multiple regions around the world fast any easy with AWS. Using AWS for this reasons can improve low latency and provide a better user experience.

Unlike many cloud service providers, AWS is a pay as you go system. Which mean that unlike many online services it does not generally ask for a static payment like many other providers. That is because AWS's pay as you go system only charges you for resources you use, meaning that you pay for what you use rather the pay for what you get.

Main financial benefits of using AWS:

  1. You only have to pay for the resources, processing power and data transmission that are used.

  2. Paying a larger up front amount on services can save you up to 75 percent over the equivalent on-demand capacity.

  3. Pay less for using more, pay for more storage and procession power can actually decrease the cost of those resources over all.

  4. Pay less as AWS becomes larger, since 2006 AWS has lowered pricing 75 times.

AWS Global Infastructure is designed and built to deliver flexible, reliabel, fast, scalable and secure cloud computing enviroment to many regions around the world. This allows you to develop and deploy applications across many regions based on variables like data governance, proximity to customers, service availability and cost. Availability zones are made for these exact reasons, they are comprised of a data center that holds information in that region.

What are the benefits of setting up availablility zones:

  1. They are designed for fault isolation

  2. They are interconnected with other availability zones by using high-speed private networking.

  3. You choose the availability zone

  4. Multiple availability zones allows faster latency speeds for users.

Security is one of the most important aspect of the modern business world, in todays world every business needs a website and a IT system in order to function and get their product/service out into market. Thankfully AWS Cloud Security cuts the physical need for security out of the equation. Seeing how AWS manages the hardware, that only leaves the actual business to take care of the data security, this is called the AWS shared responsibility model.

Responsibilities of AWS:

  • Compute
  • Storage
  • Database
  • Networking
  • Regions
  • Availability zones
  • Edge locations

Responsibilities of Customer:

  • Customer data
  • Platform
  • Application
  • Identity
  • Access Management
  • Encryption
  • Firewalls
  • Network traffic

Software offered by AWS to better protect your business:

  1. AWS Trusted Advisor: A tool that analyzes your AWS enviroment and provides real-time guidance to help manage your resources and keep them safe

  2. AWS Shield: A tool that allows you to set up anti-DDOS protection against attackers by always being on the lookout for attacks and mitigation service down time.

  3. AWS Identity and Access Management: A software that manages the access, editing and viewing of AWS resources by setting up control groups that allow for only certain actions. This allows you to safe guard who can access the resource, which resources can be access, and how resources can be accessed.

Long past the days of managing a messy network closet with wires hanging from every rack possible. AWS has made networking easier and simpler with AWS VPC(Virual Private Cloud). From setting up a virtual enviroment to testing a new software to setting up internet gateways to your webpage, AWS makes networking easy so that you can focus on your business. VPC allows for secure connection for websites, applications, data centers, regions and availability zones.

VPC networking options:

  • Internet gateway
  • NAT gateway
  • VPC endpoint
  • VPC peering
  • VPC sharing
  • AWS site-to-site VPN
  • AWS direct connect
  • AWS transit gateway

Computing power is an important aspect of any IT system. Managing what takes priority in computing power is important when it comes to cost and time. Over estimation an aspect of the IT system can lead to larger expenses and underestimating can lead to not having enough processing power for work loads. AWS EC2 instances make these tasks cost affective by allowing you to easily delete, edit and create instances in order to fulfill the current work load requirements.

Example uses of AWS EC2 instances:

  • Application server
  • Web server
  • Database server
  • Game server
  • Mail server
  • Media server
  • Catalog server
  • File server
  • Computing server
  • Proxy server

Digital storage has become a large part of managing a business's records, images, projects and accounting files are all example of data that can be kept on a normal dark drive. AWS has made managing files and documents easy with EBS and S3, with these tools you can create storage instances with the size of your choosing, and upload/download files from anywhere in the world.

Benefits of using EBS and S3:

  1. Build a data lake: Run large data analysis with machine learning and AI to gather data insights.

  2. Back up and restore critical data: You can use (RPO)Recovery Point Objectives and (RTO)Recovery Time Objectives to create backups and recovery files.

  3. Archive data at the lowest cost: Move data archives to the Amazon S3 Glacier storage classes to lower costs.

  4. Run Cloud-native application: Build fast, powerful mobile and web-based cloud-native apps.

AWS RDS(Relational Database System) is unique because like many of the other services provided by AWS it is super flexible and cost affective. It allows for a reliable and fast SQL database that bills you based on how many resources you actually use per day. AWS allows you to stop database instances whenever needed, take snapshots to record information and it even has a fault tolerance system so that your database stays up and running no matter what.

Other database engines offered by AWS:

  • Amazon Aurora
  • RDS for PostgreSQL
  • RDS for MySQL
  • RDS for SQL Server
  • RDS for Oracle
  • RDS for Db2

Architecture is the art of and science of design that goes into creating a structure like a building. In the world of IT infastructure it is needed to create a well designed system that implements your business function and business goals. AWS Well-Architected Framework is a system designed so that users follow the best business and technical practices when designing an IT infrastructure. The main pillars of cloud architecture are Operational Excellence, Security, Reliability, Performance, Cost Optimization and Sustainability.
  1. Operational Excellence Pillar: Focuses on running and monitoring systems, and continually improving processes and procedures.

  2. Security Pillar: Focuses on protecting information systems and private data, like managing user permissions and establishing controls to detect security events.

  3. Reliability Pillar: Focues on workloads performing their intended functions and how to recover quickly from failure, designing system that have fault tolorance, and distrubition of tasks.

  4. Performance Efficiency Pillar: Focuses on structured allocation of IT and computing resources, selecting resource types and sizes optomized for certain work loads.

  5. Cost Optimization Pillar: Focuses on avoiding unnecessary costs, selecting resources at of the right type and quantity.

  6. Sustainability Pillar: Focuses on minimizing the enviromental import of running cloud workloads, understanding impact and using resources effectively to mitigate down stream impact.

Modern websites and application must take in hundreds of request without being slowed down or being overwhelmed. AWS Elastic Load Balancing is created to distribute data across multiple targets such as EC2 instances, containers and IP addresses across multiple availability zones. Elastic Load balancer is designed to be flexible with application loads, website loads and network loads, automatically scaling in order to fit the current need.

Use cases for Elastic Load Balancer:

  1. Achieve high availablility and better fault tolerance: Elastic Load Balancer balances traffic across healthy targets in multiple availability zones. If one target becomes unhealthy, it is designed to automatically use a different target in an availability zone and then switch back to the original once it becomes healthy again.

  2. Auto scale applications: Remember in the Compute section when we talked about EC2 instances? Well you can use auto scaling in order to auto create more instances in order to handle larger work loads. When a application is handling more than it can, Elastic Load Balancing can be triggered to create more instances to handle the current load and then shut those instances down when the load returns to normal.

  3. Enable hybrid Load balancing: Elastic Load Balancing allows you to split load balancing across AWS and on-premises resources by using the same load balancer for both.

To be as cost effective as possible AWS has created CloudWatch, allowing you to monitor instances, websites and applications that run on the AWS Cloud. It gives you insite on how much of your infrastructure is actually being used, how effectively your applications are running or if you should launch more EC2 instances to take on a greater work load. Infact CloudWatch can be used to set alarms that trigger certain actions like senting you a notification or creating more instances using the Elastic Load Balancing system.

About

This is a final project for a college class based on the Amazon Cloud Services.

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors