How we succeeded in implementing an openstack solution for a major Virtualization Solution provider from Japan?
Requirement
There were 2 objectives.
- Streamline customer on-boarding by simplifying the order process and reducing the signup/order time.
- Introduce a billing system that is similar to popular cloud services offerings, where customer is only billed based on their usage instead of the traditional fixed, periodic billing.
Challenges
Client wanted to tap in the surging demand for virtual private servers – a popular alternative for shared hosting and affordable compared to the price of a dedicated server. They wanted to bring in a unique spin to this by setting up a cloud based environment for provisioning that gives the user a lot of flexibility in terms of resources and billing. It was also required to integrate this system with WHMCS to automate all the invoicing and pricing operations.
Solution
A team of IC DevOPs engineers worked round the clock with the developers right from staging and all way through the development cycle.
Thus adding the following features in the customer account management panel:
- Create VPS.
- Involves creating an instance on openstack, and allocating an IP for it.
- Manage Existing VPS
- Involves functionality like reboot, destroy, rename.
- Upgrade VPS
- Backups
- SSH Keys
- DNS Management
- Involves integration with designate API’s for adding domain and domain records.
- API Key
- Support
- Involves complete integration with ticketing in WHMCS. All scenarios where any unexpected failures occur, support tickets are automatically raised.
- Usage Statistics
- Billing Information
- Based on usage statistics obtained through API integration with ceilometer and the associated cost through API integration with WHMCS, invoices are calculated. Auto-generation of invoices, auto suspension of account on defaulting are some of the critical areas handled.
IC advantage was our unique ability to imbibe the true DevOps spirit to ensure that all the separate moving parts worked in cohesion to ensure the best possible outcome.