Some enterprise applications require a lot of supporting infrastructure to mimic the on-premises production environment for suitable real-world tests.
The application team – developers and IT operations team – needs to understand app performance in the real world with the best approximation of the specifics of the environment, so it can more accurately predict behaviors such as latency and performance. Operations teams can create fully-configured replicas of the on-premises production environment in the cloud in a matter of minutes.
Today most of the cloud platform like AWS, Azure & GCP offer free tier compute services which can be used for development & prototyping without incurring major cost.
Agencies or organization can use these services for testing and creating prototype and training developers for new technologies without spending much on server infra.
Simple use case
Create a simple web server for hosting a PHP based application (website) with My SQL database
So ideally one would require having a server with minimum configuration for the development. The server can be setup by installing an Operating System like Linux and so on. This will incur cost (CAPEX) that one will have to invest upfront for procuring the hardware and do the setup as well as the cost for purchasing the OS License like Windows or Linux.
Let’s see how we can create this environment at no cost or at minimal cost using AWS services and use this environment for prototype development.
AWS provides compute, storage, database and many more services which one can use, there are almost 90 + services which can be used for production & for building prototypes. Let’s see how easy it is to create a EC2 instance on AWS to host a PHP based website.
The very first step is to create an AWS account for this you need a valid e-mail id, mobile number and a valid credit card or debit card. Create the AWS ID by entering the required details, the account will be verified on the mobile/phone number provided. The credit card will be billed for Rs 2 as verification charges. That’s it you have your AWS account is done! Cheers!!
Once we log into the AWS console, select the EC2 compute from the service list. The next step is to create an instance (Compute) which is creating the server (VM). So ideally one has to be a little careful while doing this activity, so we can create or select various types of instances available from the list, each instance is billed on an hourly basis so just lookout for the actual cost by clicking on pricing details for that particular instance.
Instance is available for various purposes once can read and understand about this on the AWS website. AWS provides a small T2 instance which can be used for free for 750 hrs in a month.
This can be a free Linux VM or a Windows VM, So select the free tire t2.medium instance for LINUX from the list, so the wizard will ask a few more details on storage that is HDD to be used and just go on clicking the default options and that’s it.
In a nutshell these are the few things one needs to keep in mind while creating a free instance.
So once the instance is created, the instance can be accessed using SFTP or one can just RDP into the server if it’s a windows one. Once you have the root access to your server, you just need to install the LAMP stack and your website will be up and running. You can check your website using the public IP assigned by AWS.
So ideally you have a test /development server for free, if you need a higher configuration server you can have one, here too we can save on cost as once our testing and development is done we can just shutdown the instance.
If you have more instance and want to keep the cost down, just delete the unused instances. AWS charges on actual storage used i.e HDD/EBS ,so even if the server is shutdown, the cost of the storage still applies.
This was an example of using EC2 service for hosting web application for free. The same process applies for other cloud platform provider too, but I prefer to use AWS & GCP for now.
I will cover other services from AWS in the coming sessions where I will show how to use the database for free. Creating static site for free using S3 bucket and so on. ML services are exciting and will explore a few of them.