Here at ClickIT, our missions have always been to implement the bleeding edge technologies available on the market to allow our customers to benefit from their page, website or application performance. As today, we receive a lot of requests to explain the creation of a cloud hosting environment on Amazon Web Services (AWS Cloud) which would allow the allocation of WordPress or other CMS, eCommerce, and websites.
Today we are going to explain how we do to create a cloud hosting environment to offer your clients an easy way to manage their websites with WHM and CPanel and get some revenue out of this service using Open Source Technologies and owning a Low-cost infrastructure or even FREE on AWS.
Let's get to the Basics: (Items we must have)
Let’s start spinning up our default server or instance as Amazon named them. For this step, the client must have an AWS registered account and he should be able to provide us a user which will be assigned privileges on the Identity and Access Management (IAM) Service on AWS and Attach a Policy for “specific permissions on EC2” or “Full Permissions on EC2.”
Our server would be provisioned with CentOS 6 (which is the most compatible and almost free of errors OS with WHM and Cpanel). Now we have the OS installed, we will install our web server which will be Apache, our SQL database with MySQL and Php 5.6. All of this created a brand new Amazon VPC.
Now we have everything installed, our server provisioned, let’s provide an Elastic IP (a service offered by Amazon which allows us to allocate static Ip addresses for servers) We can go to our AWS console and allocate one for our server on the Network and Security menu, and assign it to our “AWS Cloud hosting” server.
We should have access to our instance using the ip address we allocated, let’s proceed with our hosting management tool installation.
This is the main feature we will be managing. It will help us in the administration of all our clients domains, Configurations, Backups, DNS management and users & Cpanel accounts management.
So, we will focus on creating a package, this feature is what may vary from one hosting to another, the amount and specifications they offer on a hosting package, this may vary on how much do you want to pay for the resources used, services enabled, server specifications and bandwidth usage. Also, you can assign here the domains available, databases, dedicated IPs available and Shell access.
Warning: Default creation of packages limit the accounts by not enabling the Shell access to Cpanel users. Now that we have our package created, we can start hosting websites on our AWS Server.
What About Monitoring?
That’s a good point to talk about. Amazon Web Services offer a service called Amazon Cloud Watch, which will help us a lot on the monitoring of our server, it already has some custom alarms you can set and configure the thresholds to trigger the alarm if a specific event happens in your server.
Well, having a good backup strategy is essential for any business, so Amazon offers a solution for data storage which is “Amazon Simple Storage Service” or “S3”. Luckily WHM offers a solution with a few clicks. Simply go to “Backup Configuration” and select the options there for the accounts you need backed up and select the destination: “Amazon S3” there you will be required to set the information of your S3 Bucket.
After having everything set up, we can start offering our Cloud Hosting Running under Amazon Web Services for all the WordPress, Magento or Drupal sites.
The creation of a AWS Cloud Hosting environment in your page, website or application is a really important step because of your clients and their manage. This service would let you use Open Source technologies plus the own of a low cost infrastructure. Contact us for any doubt you’d have through the process.