+ All Categories
Home > Documents > Future Unleashed_Speaker ZingHR

Future Unleashed_Speaker ZingHR

Date post: 21-Mar-2017
Category:
Upload: raj-chaudhary
View: 190 times
Download: 0 times
Share this document with a friend
41
Migrating from IaaS to PaaS Ravi Bajaj Head Product Engineering – ZingHR Raj Chaudhary Cloud Solution Architect - ZingHR
Transcript
Page 1: Future Unleashed_Speaker ZingHR

Migrating from IaaS to PaaSRavi Bajaj

Head Product Engineering – ZingHR

Raj Chaudhary

Cloud Solution Architect - ZingHR

Page 2: Future Unleashed_Speaker ZingHR

Agenda• Introduction

• The Legacy - It matters

• Embracing the Cloud - IaaS

• The next step- PaaS

• Experiences – Its’ not Magic

• Plan the journey - Treading with Caution

• Live Demos

• Reach out

Page 3: Future Unleashed_Speaker ZingHR

About ZingHRZingHR is an integrated Hire to Retire HCM Cloud Platform

ZingHR product functionalities include Manpower Planning, Recruitment, On boarding, Attendance Management, Payroll & Statutory Compliance, Expense Management, Performance Appraisals, Training and Separation Management

ZingHR Caters to 350+ organizations adding up to 400,000+ end-users with 100,000+ users using our application daily

Page 4: Future Unleashed_Speaker ZingHR

Legacy and the Numbers• 20 Feature rich Modules

• Over 2,000 man months of development

• VB, ASP to MVC and latest . Net frameworks

• 30+ Physical Servers at multiple IDC’s

• Web farm deployments

• Customer specific Load balanced environments

• High OPEX

Page 5: Future Unleashed_Speaker ZingHR

Embracing the Cloud

Page 6: Future Unleashed_Speaker ZingHR

Here starts the Confusion• Business says Cost Reduction ??

• Market Players – Amazon or Azure or Google??

• Deployment – IaaS or PaaS ??

• How will the Application Architecture adapt to cloud ??

• How do we go about it ??

• Do we need a consultant ??

Page 7: Future Unleashed_Speaker ZingHR

IaaS was the easiest natural transition route for us to begin with

Page 8: Future Unleashed_Speaker ZingHR

Advantages & Challenges• Reduced number of physical servers

• Biggest Gain was Elasticity

• Number of Servers could be increased or decreased based on need

• Cost Reduction of over 25%

• Architecture Changes for Session Management – InProc to SQL

• Maintenance efforts were still the same

• Real time scalability still not possible

Page 9: Future Unleashed_Speaker ZingHR
Page 10: Future Unleashed_Speaker ZingHR

Comparing deployment models

Page 11: Future Unleashed_Speaker ZingHR

PaaS Advantages• Designed for Scalability

• The OS and all services are managed for you

• Access to an expanding list of services• Existing Services - Service Bus, Active Directory, Media

Services, Push Notifications• New Services - DocumentDB, Azure Search, Machine Learning• SaaS - SendGrid, Twilio

• More control over Application diagnostics

• Deploy on Staging and easily switch between Production

• Seems like a no-brainer as the benefits become clear

Page 12: Future Unleashed_Speaker ZingHR

Initial Shockers – App Migration• Migrated one module that was

already in MVC using Framework 4.0

• All hell broke loose, app crashes, code breaks, etc.

• Took a week to identify issues • Changes for automated load balanced

environment• Session State• Output Cache

• Upgrade Framework 4.0 to 4.5• Document Management using File

System

Page 13: Future Unleashed_Speaker ZingHR

Initial Shockers – Database Migration• Determine if your database is compatible –

which in all probability will be no

• Fix database compatibility issues

• Migrate the Compatible database

• Suggestions• Fill factor• Cross database queries• Tables without Primary Keys / Clustered Indexes

Page 14: Future Unleashed_Speaker ZingHR
Page 15: Future Unleashed_Speaker ZingHR

PaaS Essentials• Plan your architecture well

• Make your application Multi tenant ready if not already

• Code for Scale Out instead of Scale Up

• Code for High Availability

• Automate your development and deployment

• Test in Production environment

• Deploy often, Test often

Page 16: Future Unleashed_Speaker ZingHR

Plan your journey• Make a detailed plan and list down all action

items

• Channelize your own resources – Train internal dev team

• Take Help from Microsoft Evangelists – We managed to get their full support at all stages and they actually hand-hold you

• Hire a Cloud Architect or a Partner or have a dedicated internal resource who would focus only on PaaS Migration

Page 17: Future Unleashed_Speaker ZingHR
Page 18: Future Unleashed_Speaker ZingHR

PAAS Deployment Model

Page 19: Future Unleashed_Speaker ZingHR

Azure Web Apps• Web Apps Gallery

• Select from an ever-growing list of existing web application templates. Leverage the best of the OSS app community with one-click installation of packages such as Wordpress, Joomla and Drupal. Get your application development process start right by leveraging frameworks like .NET MVC, Django and CakePHP

Page 20: Future Unleashed_Speaker ZingHR

Azure Web Apps• Continuous Integration

• Set up continuous integration and deployment workflows with VSO, GitHub, TeamCity, Hudson or BitBucket – enabling you to automatically build, test and deploy your web app on each successful code check-in or integration tests

Page 21: Future Unleashed_Speaker ZingHR

Azure Web Apps• Deployment Slots

• Implement Staged Deployment to verify your code in a pre-production environment which is identical to your production web app in Azure App Service. When satisfied, release a new version of your App with zero downtime by performing a swap operation

Page 22: Future Unleashed_Speaker ZingHR

Azure Web Apps• Testing in Production

• Take Staged Deployments to the next level and perform A/B testing to verify your new code with a configurable fraction of your live traffic

Page 23: Future Unleashed_Speaker ZingHR

Azure Web Apps• Webjobs

• Run any program or script on Web Apps VMs. Run jobs continuously or on a schedule and scale to run on multiple VMs. Use the Azure WebJobs SDK to integrate with Azure Storage or Service Bus

Page 24: Future Unleashed_Speaker ZingHR

Azure SQL DB• Self Managed

• Easy provisioning and deployment

• Auto high-availability and fault tolerance

• Self-maintaining infrastructure; self-healing

• No need for server or VM administration

• Business-ready SLAs

Page 25: Future Unleashed_Speaker ZingHR

Azure SQL DB• Developer Agility

• Build cloud-based database solutions on consistent relational model

• Leverage existing skills through existing ecosystem of developer and management tools

Page 26: Future Unleashed_Speaker ZingHR

Azure SQL DB• Service Tiers

• Basic: 5 DTUs, 2 GB, 7 days PIT Restore

• Standard: Upto 100 DTUs, 250 GB, 14 days PIT Restore, Standard Geo-Replication

• Premium: Upto 1750 DTUs, Upto 1 TB, 35 days PIT Restore, Active Geo-Replication

Page 27: Future Unleashed_Speaker ZingHR

Azure SQL DB

Page 28: Future Unleashed_Speaker ZingHR

Azure SQL DB

Page 29: Future Unleashed_Speaker ZingHR

Azure SQL DB• Dynamic Scaling

• Geo-Replication

Page 30: Future Unleashed_Speaker ZingHR

Azure Redis Cache• Redis Cache

• Based on the popular open-source Redis cache

• High throughput (150k / sec on C6 Standard)

• Consistent low latency (< 100 ms)

• High performance (StackExchange)

• Secure (HTTPS)

Page 31: Future Unleashed_Speaker ZingHR

Azure Redis Cache• Easy to use and manage

• Provision a cache in minutes using the Azure preview portal and start using it

• If you've used Redis before, you already know how to use Azure Redis Cache

• Easily monitor the health and performance of your cache through the preview portal

• Fully managed by Microsoft

Page 32: Future Unleashed_Speaker ZingHR

Azure Redis Cache• Service Tiers

• Basic: Single node, multiple sizes

• Standard: Two node, master/subordinate, multiple sizes. Includes 99.9% SLA and replication support

• Premium: Preview, Better Performance, Data Persistence, Redis Cluster, Virtual Network

Page 33: Future Unleashed_Speaker ZingHR

Azure Redis Cache• ASP.NET Integration

• Session state provider

• Output cache provider

• Dynamic Scaling

• Performance Monitoring

Page 34: Future Unleashed_Speaker ZingHR

Azure Redis Cache

Page 35: Future Unleashed_Speaker ZingHR

Azure Redis Cache

Page 36: Future Unleashed_Speaker ZingHR

PaaS Takeaways• Embrace & plan for failures - fail early, fail

often• Take advantage of phased deployments (IaaS

+ PaaS if required)

• Commitment - dedicated internal resource to drive PaaS

• Training for dev team is essential!

Page 37: Future Unleashed_Speaker ZingHR

PaaS Takeaways• Database readiness for Azure SQL DB

• SQL Server Migration Wizard

• SSMS

• Application readiness for Azure Web Apps

• File System - move to Blob Storage

• Session State - In Proc to Redis

• Output Cache – In Proc to Redis

Page 38: Future Unleashed_Speaker ZingHR

Feel free to reach out to us if you need any assistance.

[email protected]@zinghr.com

Page 40: Future Unleashed_Speaker ZingHR

Tell us what you think Help us shape future events by sharing your valuable feedback.

Scan the QR code to evaluate this session.

< QR Code will be given 2 days before the Conference >

Page 41: Future Unleashed_Speaker ZingHR

Thank you

Twitter: @ravibajaj1971 Twitter: @junoondotme

Follow us online


Recommended