Post4VPS Forum | Free VPS Provider

Full Version: AWS from deployment to launch
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
Pages: 1 2
Hi all! It's been a little bit since I've done a in-depth post, but I am back and I've got hopefully a great writeup for Amazon Web Services (AWS). This is going to be a little bit of a different writeup because of how modular the components for AWS are so I will start with development and end with deployment and scalability. Hopefully this is a great resource for those looking at AWS deployment!

Development:
So the task at hand was to create a new website for work, that was scalable and would be able to host an active Community, eCommerce and Support Services. We began by creating our EC2 which is the server itself. With Amazon EC2 servers, you have a large variety of OSs to select from, starting at Amazon Linux 2 all the way to macOS and Windows. I selected a Linux Ubuntu EC2, as that is what I am the most familiar with on the Linux side and Amazon Linux 2 uses an entirely different package manager and firewall that I've researched and is a little more difficult to deploy and Apache or NGINX server. The next part of our Development Stack was to select storage requirements, networking components, and modular elements such as off server storage, cdn, load balancers etc. On our server, we allocated 30gb to host Wordpress, Apache, PHP 8.0.4 with modules and your basic odds and ends to get the Wordpress Framework up and running. Knowing that we will have customers all around the globe, I created an S3 attachment which in simple terms is a storage block that we are offloading all of our images, videos and other uploadable content. We attached a CDN on the S3, that way we get great SEO management and customers are able to visit our website and have content delivered as quickly and responsibly as possible. With an Amazon S3, you can use their native CDN service Cloud Front, or you can implement CDNs like CloudFlare as well. With the S3, we also have the website backing up to a separate bucket so if things crash, corrupt, or we need to continue to scale we will EASILY be able to scale up our server needs and redeploy with little to no downtime. The next step of our development process here in the next few weeks is to add on a load balancer, which will work with the CDN to help cache and serve assets so that the main server is not taking a total beating all the time, and add on RDS which is external database block storage, so we will be able to keep our database separate from the main server just for additional security and scalability options.

Deployment:
As we neared closer to launch day, it was super simple to port and migrate our domains and secure the server for live use. We had a few issues with Images caching between the CDN and the live version, but things quickly resolved themselves once GoDaddy made the official DNS transfer from our old host to our EC2 deployment. We also used Yoast SEO paired with SEM Rush and our SEO scoring with google is already up 25% from where we are and the organic traffic we are collecting is already paying for itself just optimizing our website, services and frameworks.

Scalability:
If you are looking at scalable development AWS is honestly an amazing route for you to consider especially if you are looking at eCommerce or Community Driven content. We will be able to easily upgrade our services, storage, hardware without a second of down time. There is a cost associated with all of this, but we went from spending about $600 USD a month to spending about $350-400 USD a month, so it is not cheap, but having the modular scalability is going to make it so simple for our business to scale as we continue to grow. I would love to show off specs, but since this is my job I can't share this information, but I can provide a TL;DR.

TLDR:

Deployment: 7/10 - The AWS console is a little intimidating at first, but they provide amazing documentation to get your EC2, IP, Storage and more created and associated together.

Scalability: 10/10 - Everything is separate from the storage to the IP, so you can easily upgrade and plug and play with little to no downtime!

Security: 10/10 - Amazon has thought of everything when it comes to security, so in my case only myself and my counterpart can access our SSH and console and it takes both of us to unlock or reset a password.

Price: 5/10 - Services is not the cheapest, by any means, but you get so much for what you pay for. If you can overlook the cost and/or are using this for clients that have a significant budget, this will be honestly an amazing route for you to investigate.

Overall: 8/10 - I highly recommend this solution, with some exceptions for smaller developers.
Thanks for the write up!.. although I would prefer if it was in the form of a real case report with actual code every step of the way!

Are they still giving a free first year trial?..

I did try to register with them when they started that service a decade or so ago but aborted the whole thing when they asked for the CC and went for their competition which still didn't catch that virus at that time, ie GCP, RedHat Openshift Online, IBM.

(06-12-2021, 01:51 AM)tbelldesignco Wrote: [ -> ]Overall: 8/10 - I highly recommend this solution, with some exceptions for smaller developers.
Did you try the other solutions(/Cloud services)?.. I think you're going easy on Jeff Bezos' Child here :-)
(06-12-2021, 07:45 AM)fChk Wrote: [ -> ]Thanks for the write up!.. although I would prefer if it was in the form of a real case report with actual code every step of the way!

Are they still giving a free first year trial?..

I did try to register with them when they started that service a decade or so ago but aborted the whole thing when they asked for the CC and went for their competition which still didn't catch that virus at that time, ie GCP, RedHat Openshift Online, IBM.

Did you try the other solutions(/Cloud services)?.. I think you're going easy on Jeff Bezos' Child here :-)

I’ve used Google Cloud Services and Azure Cloud and this by far is one of the more simple solutions I’ve used. Azure Development Services seemed like they were just released to be released and a lot of the functionality with the panel and container management was missing and Google had quite the price hike from what I remember and they did not have a whole lot of scalable options which I’d what we are more drawn to with not only our website, but some software and other bits we are developing.

AWS could use some enhancements like having the panels integrated a little better, because with it being modular you have a panel for everything and then you have to go and sync everything from the different panels.
 although I understand why you posted the discussion in the "Other" "Advertising" section, I thought it would be buried there and it does have to do with web development. Thanks very much for sharing your experience with us.

I can imagine this would be too much of a tall order, you've already provided us a volume of info, but one day it would be interesting to have a step by step AWS along 's suggestion if you do have time available of course.

To be honest, I doubt I'll ever get to AWS because of the cost factor.  But from your discussion I get it that this is high-end professional web development territory.  That's probably what Amazon is banking on.  Big bucks from the big professional web developers.

You must be on an awesome learning curve. Cool
(06-12-2021, 07:41 PM)deanhills Wrote: [ -> ]  although I understand why you posted the discussion in the "Other" "Advertising" section, I thought it would be buried there and it does have to do with web development. Thanks very much for sharing your experience with us.

I can imagine this would be too much of a tall order, you've already provided us a volume of info, but one day it would be interesting to have a step by step AWS along 's suggestion if you do have time available of course.

To be honest, I doubt I'll ever get to AWS because of the cost factor.  But from your discussion I get it that this is high-end professional web development territory.  That's probably what Amazon is banking on.  Big bucks from the big professional web developers.

You must be on an awesome learning curve.  Cool

There is still so much to learn! Amazon had some training courses that I’m going to take!
(06-12-2021, 09:58 PM)tbelldesignco Wrote: [ -> ]There is still so much to learn! Amazon had some training courses that I’m going to take!

Yet another reason to write about it!.. Writing about subjects that we've just learned (or in the process of learning) has a powerful effect on the long-term retention of that information (because it helps consolidate it for long-term storage.)

Good luck anyway!
(06-12-2021, 01:51 AM)tbelldesignco Wrote: [ -> ]..... The next step of our development process here in the next few weeks is to add on a load balancer, which will work with the CDN to help cache and serve assets so that the main server is not taking a total beating all the time, and add on RDS which is external database block storage....


Hey I am also interested in how you get AWS work as a load balancer.

Load balancing is so important now for websites with good global traffic sources.

So if you can write more about this particular topic later on, that would be perfect. Smile
(06-13-2021, 09:23 AM)tryp4vps Wrote: [ -> ]Hey I am also interested in how you get AWS work as a load balancer.

Load balancing is so important now for websites with good global traffic sources.

So if you can write more about this particular topic later on, that would be perfect. Smile

Good Question! Part of the AWS Services offered, like Elastic Block Storage, S3 Storage Buckets, CloudFront CDN and the like is a load balancer. I've not played with it yet, but from what I've collected it will take the static IP of our EC2 container and use that as a "mask" over top of the load balancer. The load balancer then will delegate with CloudFront CDN, RDS (database) and so on how to best serve the content to the end user. Many things, like JS, CSS, static images and so on will be cached, and repeat database requests will be cached to prevent heavy load on our EC2 container. I will begin working on that here soon, and can provide more of an update of how the process works and maybe do an in-depth tutorial from A to Z on how to setup an AWS EC2 optimized for scalability.
(06-13-2021, 05:48 PM)tbelldesignco Wrote: [ -> ]..... Many things, like JS, CSS, static images and so on will be cached, and repeat database requests will be cached to prevent heavy load on our EC2 container. I will begin working on that here soon, and can provide more of an update of how the process works and maybe do an in-depth tutorial from A to Z on how to setup an AWS EC2 optimized for scalability.


Understand, and thanks for your answer. One thing I would wonder, if only JS, CSS and static images will be cached, then why not just use Cloudflare.

But I believe that AWS load balancer should work better than Cloudflare.

That is why I would love to see how you will report your findings after you actually try it out. Smile
(06-16-2021, 07:12 AM)tryp4vps Wrote: [ -> ]Understand, and thanks for your answer. One thing I would wonder, if only JS, CSS and static images will be cached, then why not just use Cloudflare.

But I believe that AWS load balancer should work better than Cloudflare.

That is why I would love to see how you will report your findings after you actually try it out. Smile

Upon even more research, I have findings! So CloudFront, Amazon's CDN works in conjunction with the LoadBalancer to help serve static images, CSS and JS. The load balancer however, is for hardware management. So we currently have our EC2 here in the United States, located in Ohio, and we are now looking at an EC2 in the UK. What happens with the load balancer is depending on your location, it will route you to the EC2 instance that is closest to your IP address. Both instances are EXACT mirrors of each other, but the hardware is localized and the Load Balancer shifts you off on to what it believes is the best instance for your location.
Pages: 1 2