Know Your Environment (KYE) First !!!

Stop, Look, then Cross….simple rules to even cross roads. Then, why do we simply decide on going to cloud and start working without even going through basic prerequisite checks.

Cloud is attractive but not every application/architecture/server right fit for cloud based environment (remember IaaS and PaaS work differently). Every cloud vendor has slight different approach towards hybrid connectivity/cloud and hosting platform offerings. Enterprise Application running on Windows Server 2003 migration may not be fit foe lift & sift (simply pick and move to Cloud VM). You may need to check what is pattern of usage, need of application first. Then, explore dependencies of application to different applications/processes. It is good if you have enterprise architecture (which is generally rare, though they claim) or use automated tool (which is generally preferred as it is back by true facts and bring much more value added information on table).

Server Migration is not as straight forward like traditional application migration like Office 365 migration from respective workload running in different environments. I am in opinion that planning play vital role than migration. For migration, every vendor has their offerings or working on some directions. Some of the example: Azure has many things like Migration using PowerShell from VHDX to VHD/Using MVMC tool from VMDK/ASR/Even Back up etc. AWS launched recently AWS Migration Service, Google tying up with Migration vendors. But, bigger question remain same, where to start from???

Similarly database migration possess another threat towards failed move. Azure has interesting offering on DB as a Service known known as Azure SQL Database, Document DB for No SQL which is not only cost effective but also managed DB engine (there no more worries about maintaining uptime/patching/availability) OR even running latest DB edition on Azure VM. But question remains same, what is usage of current DB, what is need, what architecture, what is application usage pattern for this DB, can I really get all features if I’ll move to managed DB service or if my current DB is good enough to move on latest DB edition running on Azure VM.

If enterprise does not do proper due diligence, expect them to fail badly.

Use automated tool rather doing manual approach. As we all know manual approach is prone to human error and based on thoughts. While automated way is based on true facts and prone almost no error. Few of the solution are available in markets like;

  • Azure VM Readiness Assessment Tool: It does analysis on current on premise physical or virtual environment and provide you design level recommendation if there are any changes required. A step-by-step by guidance of using is available here.
  • MAP toolkit for Windows Azure Platform: This has been flagship assessment product for product for assessment Microsoft environment for long time. Be it Core IO workloads, Server Consolidation project, DB migration, Office 365 and even move to Azure. There has been constant enhancement done on this. Make sure you always use latest version of it. Follow this guide to perform action. As I mentioned, this has been flagship Assessment product of Microsoft. While installation or assessment, chose environment which you want to work on.
  • Database Assessment: Database is altogether different animal in enterprise IT environment and most important. It’ll always have separate planning and a most complex and also having so many option in market from different vendors (managed and unmanaged DB engines). Good part is Microsoft has interesting offering such Database Migration Assistance (DMA v3.0). What I like about this tool is that it helps doing assessment of current database and it can assessed with respect to target environment which can be either SQL Server (latest edition) running on VM or Azure SQL Database. Icing on the cake is it can even migrate it to destination environment. What else you need, when it can do the same job for source environment running on Oracle, IBM DB2, MySQL etc. Explore this quick video.
  • Web Application Migration: Azure App Service is very interesting offering from Microsoft Azure for Web Application Hosting. It takes away availability, patching, management part. But, I have my application and DB running on premise and that on outdated (EOL) version. How to move ahead. No worries, just use this tool as per guidance. It’ll not only assess and give your some recommendation but also help your transferring to Azure App Services with required DB engine. All this would happen seamlessly. Best part, if you have environment running on Linux it can handle that also. Follow this guide and learn about it.
  • Apart from all those, there are also 3rd party offering such as BitTitan’s HealthCheck for Azure which is exciting granular level automated assessment. It address ROI/TCO and Migration in single go without much of manual work, which I believe is more important than migration. Migration can be done either way but where to start from is most critical.

In next post I would be talking about few of those assessment tools usage in detail as well as easy way of moving to cloud.

Keep in mind that knowing your environment using such tools would only help you planning for successful transition to cloud. As a service provider organization, it should be must to do activity before you claim any project. Don’t just rely on discussion and build Scope of work on those. Your estimation should be based on facts, else it would be bad experience for customer as well as loss making deal for you.

As a service provider, if you want to be true cloud service provider and make money from happy customer. Following P2M2 would be essential.P2M2

Design it right, Do Math, Check %

Cloud is getting traction. Customer wants to get rid of existing on-premise server, as they see cloud the way forward to manage up-time, upgrades, elasticity and reduce cost. Hold-on Up-time, Yes there are SLAs for up-time. But does that mean customer has nothing to do ???  Every OEM and their every service carry its own Up-time backed by respective SLAs. Designing Highly Available Infrastructure Architecture totally depends upon customer’s Architects.

Read through SLA documents prior is highly recommended. Specifically, Microsoft Azure has made great effort to make it quite easy for customer to review SLA for every services. All Azure component SLA are available here. Then doing Simple mathematics can help setting up right expectations like below;

  • Azure Virtual Machines give 99.9% uptime (VM Connectivity) if you have premium storage as Data Disk, it becomes 99.95% if you have Availability Set configured for any scenario i.e. any type of disk any type of OS. Similar kind of SLA based available for other components. So, spend sometime and read through it as there would be lots of if’s and but’s.
  • What is ‘9’s? Two, Three, … 9’s matter to us only if we know how many hours/minutes systems would not be available. Below is simple visibility of hours, minutes available/non-available across Year/Month/Week/Day9's
  • Simple Example below may simplify further more w.r.t. to Infrastructure designing on Azure. Leveraging concept such Availability Set, Regional Replication using Hybrid Connectivity, DB replication mechanism and Solution like External Load Balancer (with rules inside) can help reducing risk of any downtime as much as possible. This is simple representation of Architecture design on Azure. It may not be covering details about it which is not objective of this blog post.Architectur Design Simple

 

  • Above mentioned example consist of an simple application using Tiers for Web, DB and Authentication. Infrastructure is being designed in two Regions (1) Region A and (2) Region B
    • Scenario 1: If we use single region HA approach. Then, we may have following amount of risk;
      S1
    • Scenario 2: If we use Single Region HA approach backed by Geo-redundant site (non-HA), then follow amount of risk;
    • Scenarion 2
    • Scenario 2: If we use Single Region HA approach backed by Geo-redundant site (non-HA), then follow amount of risk;
    • Scenarion 3

Therefore, if you really thinking of moving any mission critical application which has impact of million $$ in single minutes of transaction, then think of Highly Available architecture design which does not only depends on specific  geography but also leverage all possible component of true hyper scale cloud like Azure.