+40 256 706 057 [email protected]
Cloud Strategy for Your Organization: Migrating Workloads to PaaS

Cloud Strategy for Your Organization: Migrating Workloads to PaaS

Mihai Tataran General Manager & Partner | Microsoft Regional Director, Azure MVP

Before we begin

This is a continuation of the first article in the “Cloud Strategy for Your Organization” series and focuses on another of the steps we usually take with our customers who migrate to the Cloud.

Click on the image to enlarge

Some of the considerations described in the “Lift and Shift to the Cloud” article apply to PaaS migrations as well, even though they are more focused on general Lift-and-Shift scenarios.

Here we will focus more on the most important architectural decisions one has to make when either migrating an application to Azure PaaS, or creating a new application for Azure PaaS.

Why PaaS?

A very short explanation of why PaaS vs IaaS can be found in the article referenced above. But, to give more details, here is why having applications run in PaaS is better than in Infrastructure as a Service:

  • You don’t need to manage and support Virtual Machines. You simply use services provided by Azure.
  • Better Disaster Recovery mechanisms, since all these services in Azure already have DR incorporated by design.
  • Higher availability. The typical PaaS service uptime in Azure is 99.99%, reaching 99.999% in some cases.
  • Lower cost with Azure: PaaS services are usually cheaper than their equivalent in IaaS (which would be VMs running a piece of software).
  • Access to technology: access to Artificial Intelligence, Machine Learning, Big Data.

Watch a video (in Romanian) where Mihai talks about the cloud strategy and migrating workloads in PaaS, as a follow-up to this article.

 

 

Options and more options

The great thing about the Cloud in general and Microsoft Azure, in particular, is that it provides many options for everything you want to achieve. For example, there are at least 4-5 options to host an application or run code in Azure PaaS: Cloud Services, App Service, Service Fabric, Functions, Logic Apps, etc. What is great with many options is that you have very granular features designed for very specific needs, but the penalty is that you really need to understand them very well, otherwise you might make very bad architectural decisions with costly consequences down the line.

From the architecture perspective, there are at least two major design decisions you need to make:

  1. What kind of architecture does my application have (if it is an existing application and I just need to migrate it to Azure), or what kind of architecture does my application need.
  2. What is the best Azure PaaS option for my application to run on.

Architecture style

Here are some typical architecture styles for Cloud applications:

The first thing you need to do is make sure you understand in what major category does your application fall into.

Decision time

And now you must decide upon which Azure PaaS service to primarily use for your application, depending of course on the architecture style it needs and other business criteria. Here is a great chart which describes a decision tree for this phase:

Migrating to or designing new applications for Azure PaaS has tremendous advantages, but it also means we need to think differently.

Other architectural decisions

There are many other aspects you need to decide upon and here are just a few examples.

Multi-tenant applications

Let’s say your application is multi-tenant, meaning you have more than 1 customer accessing your application. Each customer might access your solution via a specific URL (e.g.: https://customer1.application.com, https://customer2.application.com, etc.), or it might simply be the same URL for everyone.

The first question we need to ask is if it makes sense or not to have a single deployment for all customers or not, considering the simplified scenario that all customers have the exact same version of the application (the same code base). The right-hand side of the picture describes a single deployment for all customers.

Here is why it seems logical to do it: you only must maintain one single application, one version of deployment, for all customers. It appears to be cheaper, easier, straightforward! Or is it?

Here is another way to look at it: what if you have different customers with different expectations regarding uptime and performance? What if, to make it simple, you have some Free / Basic customers (who don’t pay for your solution) and you have some Premium customers (who pay and expect a high quality of service – QoS)? Obviously, if you have one deployment for all customers, in order to offer the QoS needed for Premium customers you end up offering it to everyone. And maybe 80% of resources’ needs come from the Free customers.

So, a more pragmatic approach is to consider the non-functional aspects of your solution, the QoS needed by different categories of customers, and maybe it makes more sense to separate them into different deployments by category. One deployment for Free / Basic customers, one deployment for Premium customers. And then you can allocate more resources only for Premium customers, you can configure that solution to autoscale, etc.

Transient faults

If you start using PaaS functionalities – like SQL Database, Storage, Service Bus, etc. – you need to understand a basic concept: they are offered from a shared environment, and that can cause some unexpected behaviors sometimes. We call these situations “transient faults”, errors which happen because of the environment where our service resides, they have nothing to do with our code, and they will automatically disappear. A specific example of a transient fault is: when another Azure customer using SQL Database from the same physical infrastructure as our SQL Database service, is triggering a query which brings (momentarily) the CPU to 100% – in this case, for a very short time, our queries or commands to our SQL Database will result in a SQL error. The Azure Fabric, of course, resolves the problem very fast, but there is a short time window within which we can have errors which have nothing to do with our application but the environment.

What you must do is design your application code for such events, meaning the code should expect some types of errors or exceptions, which clearly identify transient faults, and act accordingly. One way to tackle this situation is a pattern called Retry Policy, and there is already a framework created for it, called Transient Fault Handling Application Block.

Conclusion

Migrating to or designing new applications for Azure PaaS has tremendous advantages, but it also means we need to think differently: we must understand the Azure services better, what they do and what are their limitations, and in the case of applications’ migration we need to rearchitect or change some small parts of the code.

If you are interested to explore more on this topic, Mihai talks about the cloud strategy and migrating workloads in PaaS in a video available here.

Mihai_Tataran

Mihai TATARAN, Microsoft Azure MVP, is the General Manager of Avaelgo, and Microsoft Regional Director, Microsoft MVP on Microsoft Azure, Microsoft Azure Insider, and Microsoft Certified Professional. Mihai has been teaching Microsoft technologies courses to software companies in Romania and abroad, being invited by Microsoft Romania to deliver many such trainings for their customers. Mihai has very good experience with large audiences at international conferences: DevReach in Bulgaria, Codecamp Macedonia; TechEd North America 2011, 2012 and 2013 – speaker and Technical Learning Center (Ask the Experts), Windows AzureConf. He is also the co-organizer for the ITCamp conference in Romania.

Webinar: Modern IT Risk Management

Webinar: Modern IT Risk Management

 30 October 2018, 15:00 – 16:00
This webinar is designed for a technical audience, such as System Administrators, IT Administrators, IT Engineers, IT Managers.

About the webinar

Almost every business decision requires executives and managers to balance risk and reward, and efficiency in that process is essential to an enterprise’s success. Too often though, IT risk (business risk related to the use of IT) is overlooked.

While other business risks such as market, credit and operational risks have long been incorporated into the decision-making processes, IT risk has usually been relegated to technical specialists outside the boardroom, despite falling under the same risk category as other business risks: failure to achieve strategic objectives. With the emergence of the Cloud, IT Risk has suffered yet another radical transformation.

Agenda

  • IT risk overview
  • COBIT & Risk IT framework
  • Risk Governance
  • Risk Appetite and Risk Tolerance
  • Risk Evaluation
  • Risk Response
  • IT risk management as a continuous process

This webinar focuses on real-world examples and specific plans on how to implement IT Risk Management on every level of your company in a Cloud-enabled world.

About the trainer

Tudor_Damian_portret_square
Tudor DAMIAN, is the Executive Manager of Avaelgo, an IT consultant and tech support specialist. With more than 10 years of experience in managing complex IT infrastructures, he is a Certified Ethical Hacker, a Microsoft Cloud and Datacenter Management MVP and a technical speaker at local and regional community events. Tudor often talks about the latest technologies and trends with themes including general networking & security, virtualization technologies, OS deployment and maintenance, social engineering and information security awareness, web application security, white-hat hacking and penetration testing techniques. He is also an organizer for the ITCamp conference in Romania. His day to day activities cover designing and implementing IT solutions, performing tech support and maintenance work, and delivering training sessions for experts and beginners alike.
Cloud Strategy for Your Organization: Things You Need to Consider First

Cloud Strategy for Your Organization: Things You Need to Consider First

Mihai Tataran General Manager & Partner | Microsoft Regional Director, Azure MVP

Before we begin

Last year I wrote a series of articles focused on migrating to the Cloud, with examples on Microsoft Azure: on how to start and lift and shift 101. In this article, we are going to discuss how to start your strategy to migrate to the Cloud, based on the experienced we’ve got in the meantime, with enterprise customers, working on Microsoft Azure but also on Office 365 and Microsoft 365 migration projects. You may consider the road to the Cloud as a pipeline of steps, a minimalistic set of them being the ones presented in this diagram:

Click on the image to enlarge

We are going to focus on the very first step, just before actually moving to the Cloud.

Migrating to the Cloud: Options and scenarios

We usually have two types of customers or two types of migration projects:

  • Custom / Bespoke: complex organizations, complex projects;
  • Standard: most of the small and medium organizations can be approached in a standardized way.

Standard

While nothing is really standard in the IT Services world, we have some common methodologies created for similar projects. One example would be migrating to Office 365. There are differences from customer to the customer: they might currently use Exchange Server on premises (maybe 2010 or maybe 2006), they might use a Zimbra email server, they might have the server on-premises or hosted at a co-location provider, etc. But there are some common steps and a common methodology to migrate that customer to Office 365: email server, documents and much more. The same can be applied to projects involving migration to Microsoft Azure, and in the end, our customers benefit from the “Peace Of Mind” standard services suite that we are offering.

Custom

The rest of this article is focused on complex projects or organizations, where we typically don’t only talk about migrating a solution, but a suite of solutions with interdependencies and sometimes the whole IT of that organization.

Watch a video (in Romanian) where Mihai talks about the cloud strategy and how to start approaching the migration into the Cloud, as a follow-up to this article.

Drivers for Cloud migration

There can be many drivers toward such a move and here is a short list.

Efficiency

There are many scenarios where the customer sees huge cost savings. If you consider one of the key attributes of the Cloud, which is that you pay for what you use, the monthly cost of some complex workloads in IT can be much smaller that on premises. Among such scenarios I would enumerate:

  • DevTest: machines for testing, staging, etc. – which don’t need to run 24/7 but a mere few hours per day.
  • On/Off operations, e.g.: salary calculation, 3D rendering, etc. – operations which require computational power a few days per month or a few hours per day.
  • Disaster Recovery

This is another reason for the Cloud, and here is an article on this very subject.

Access to technology

Technologies like: Big Data, Machine Learning, Artificial Intelligence, etc. – are very expensive or simply cannot be installed and managed on-premises because of the complexity they imply. The Cloud is great also because it gives access to such amazing technologies to everyone, in a pay-per-use cost model.

Startup

If you are a greenfield investment or a startup your entire IT infrastructure can be operational in a matter of days. Your email, documents sharing, collaboration tools, your invoicing application, your CRM, your ERP, etc. – all of them can be provisioned easily and fast in the Cloud, without the need to acquire any IT equipment except for employees’ laptops, tablets, and smartphones.

We should not see the Cloud as just another location for some servers. If we only see it like that, we fail to optimize the Cloud usage.

Initial things to consider

It is an IT project, but before starting any actual IT work we should consider a few aspects.

Complexity

Migrating an organization or a set of solutions to the Cloud is not a simple, risk-free project. It takes time, usually months or years, and it impacts many more departments than IT.

Current IT state

From the migration perspective, there is the need to analyze the initial state of the IT infrastructure. Questions like these need to be asked in the beginning:

  • Is there a consolidated infrastructure?
  • Is there a common identity mechanism for all users? Are there multiple identities, Single-Sign-On, Federation mechanisms in place?
  • Are current workloads virtualized, or are they running directly on physical machines? Which virtualization technology is being used?
  • Is the customer already using the Cloud? From which providers? If using Azure, which kind of contract (pay as you go / Enterprise Agreement / CSP)?

Vision

The current state analysis needs to be augmented with envisioning what IT could do for the business if it had the tools. Another key attribute of the Cloud is that it delivers technology which does not exist or is very expensive to have on premises. Aspects like: Big Data, Machine Learning, Artificial Intelligence are such examples, and in this phase, we should discuss with the customer what could be done for the business. Or even simpler than that: you might need a machine with huge computational power or a new piece of software that the company just bought. In the Cloud, provisioning such machines with tens of cores and hundreds of GB of RAM (or even TB of RAM) takes minutes.

Financial

What is the preferred payment strategy? Does the client need a pay-per-use type of contract or a capital multi-year investment? Both are possible, with advantages on each side, and the decision to choose one over the other depends very much on the specifics of every customer.

HR

Some roles within the IT department will need to change. There will be new technologies, new mechanisms to be operated and supported, so a skill upgrade needs to be done. Before that, there is also a paradigm shift: we should not see the Cloud as just another location for some servers. If we only see it like that, we fail to optimize the Cloud usage. In that respect, the IT personnel from the customer needs to go through a mindset transformation before acquiring the specific technical skills needed for the Cloud.

Roles

Roles within the project team must be clearly identified: the customer must understand what their role is, and what is expected from his team before, during and after the migration project.

Buy-in

Especially from top management, but also from all department/business unit leaders who are using the IT systems which will move to the Cloud. A strategy is needed for how the users will be impacted by this change, and what we need to do to help them. The easiest way to get the client’s organization buy-in we found is to start with a pilot or a simple and quick project which delivers immediate benefits, within the first months of the whole program.

Conclusion

This article described just the first step of a Cloud migration program for an organization. There are multiple steps, that will cover in the upcoming weeks. While others are optional, many of them are essential. In the next article, you’ll find out what you need to know about migrating workloads to PaaS.

If you are interested to explore more on this topic, Mihai talks about the cloud strategy and the things you need to consider before actually starting the migration into the Cloud in a video available here.

Mihai_Tataran

Mihai TATARAN, Microsoft Azure MVP, is the General Manager of Avaelgo, and Microsoft Regional Director, Microsoft MVP on Microsoft Azure, Microsoft Azure Insider, and Microsoft Certified Professional. Mihai has been teaching Microsoft technologies courses to software companies in Romania and abroad, being invited by Microsoft Romania to deliver many such trainings for their customers. Mihai has very good experience with large audiences at international conferences: DevReach in Bulgaria, Codecamp Macedonia; TechEd North America 2011, 2012 and 2013 – speaker and Technical Learning Center (Ask the Experts), Windows AzureConf. He is also the co-organizer for the ITCamp conference in Romania.

New Free Workshop in Bucharest: Microsoft Tools & Services for GDPR Compliance

New Free Workshop in Bucharest: Microsoft Tools & Services for GDPR Compliance

30 OCtober 2018, 9:30 – 14

Bd. Dimitrie Pompeiu 6E, Clădirea Pipera Business Tower, Etaj 8, Sector 2, București

This workshop is designed for technical decision makers from EPG & SMC companies, such as CTO, CIO, IT managers, IT directors, DPOs or any other technical decision makers.

Why attend this workshop

If your company is using Microsoft Azure, Office 365 or Microsoft 365, most probably you know that you are in charge of securing data from those environments. Microsoft already provides some tools that help you to secure data access. Dedicate time to understand what you need to do in order to become compliant and use the practical recommendations, services and tips shared in this workshop to help you get started. Then, create a plan of action for your journey to GDPR so you can ensure you and your business are complaint sooner, rather than later.

Join us on October 30th and let’s have a look at some of the key tools and services to consider!

Cloud Strategy for Your Organization: Migrating Workloads to PaaS webinar

Cloud Strategy for Your Organization: Migrating Workloads to PaaS webinar

5 September 2018, 18:00 – 19:00
This workshop is designed for technical decision makers from EPG & SMC companies, such as CTO, CIO, IT managers, IT directors or any other technical decision makers.

We are announcing another webinar on Cloud strategy for your organization, in collaboration with BrightTALK. In this session, you will understand the technical and financial aspects of migrating an existing solution to Microsoft Azure Platform-as-a-Service. We will explore the technical options, how existing functionalities on premises can be replaced by Services provided by Azure, with pros and cons, and will consider the risks of migrating legacy applications.

Register to watch it live online September 5th at 6:00 PM or after on-demand.

Meet the Presenter

Mihai_Tataran

Mihai TATARAN, Microsoft Azure MVP, is the General Manager of Avaelgo, and a Microsoft Regional Director, Microsoft MVP on Microsoft Azure, Microsoft Azure Insider, and Microsoft Certified Professional. Mihai has been teaching Microsoft technologies courses to software companies in Romania and abroad, being invited by Microsoft Romania to deliver many such trainings for their customers. Mihai has very good experience with large audiences at international conferences: DevReach in Bulgaria, Codecamp Macedonia; TechEd North America 2011, 2012 and 2013 – speaker and Technical Learning Center (Ask the Experts), Windows AzureConf. He is also the co-organizer for the ITCamp conference in Romania.

Cloud Strategy for Your Organization: How to Start

Cloud Strategy for Your Organization: How to Start

29 August 2018, 18:00 – 19:00
This workshop is designed for technical decision makers from EPG & SMC companies, such as CTO, CIO, IT managers, IT directors or any other technical decision makers.

We are announcing a new webinar on Cloud strategy for your organization, in collaboration with BrightTALK. You will understand what should be the strategic approach for a Cloud Migration or Initiation project, at a solution level and at an enterprise level. There are multiple things to consider, not all technical, including Financials, HR, Commercial aspects, and this is not a walk in the park.

This session is based on Mihai Tataran’s experience of more than 8 years of Azure development projects, and on migrating enterprises to the Microsoft cloud (Azure, Office 365, EM+S).

Register to watch it live online August 29th at 6:00 PM or after on-demand.

Meet the Presenter

Mihai_Tataran

Mihai TATARAN, Microsoft Azure MVP, is the General Manager of Avaelgo, and a Microsoft Regional Director, Microsoft MVP on Microsoft Azure, Microsoft Azure Insider, and Microsoft Certified Professional. Mihai has been teaching Microsoft technologies courses to software companies in Romania and abroad, being invited by Microsoft Romania to deliver many such trainings for their customers. Mihai has very good experience with large audiences at international conferences: DevReach in Bulgaria, Codecamp Macedonia; TechEd North America 2011, 2012 and 2013 – speaker and Technical Learning Center (Ask the Experts), Windows AzureConf. He is also the co-organizer for the ITCamp conference in Romania.

Pin It on Pinterest