Skip to main content

Cloud adoption, paradigm shift and watch list

So while some of organisations may have security concerns, others may want to take benefit from economy of scale and may want to migrate from on-premises (in-house or colocated) hosting to cloud infrastructures such as Amazon Web Services (AWS), Google Cloud platform (GCP) or Microsoft's Azure etc.

In reality, security should be your real concern for all types of infrastructures. While public cloud is open to world and requires stringent security controls within cloud, your on-premises data stored on encrypted disks requires more or local access and physical security controls.

There are benefits of cloud and flexibility or pay as much as you use would suit most of its tenants. There are cases where cloud could become too expensive for certain applications where on-premises infrastructure may be beneficial for your organisation, however you are talking an extreme scale here.

Majority of enterprise solutions are still hosted on on-premises infrastructure and some are sceptic about cloud maturity and others are waiting for right time or right person to make the shift. There are also some adopters who followed the time and speed but without a complete understanding on benefits of cloud ecosystem the migrations resulted in dearer and more complex solutions since they simply lifted and shifted application on like for like infrastructure in the cloud.

So without mentioning any names if a Fortune 100 company moved from cloud ecosystem to in-house infrastructure, they would have gone through the learning curve of most advanced cloud architecture and would have been taking full advantage or benefit of cloud. The reason they would move to on-premises would be further cost savings and they are well equipped to create that mini cloud in-house cutting down on cloud provider costs.

Cloud adoption should be on everyone's agenda these days however to check thermometer and make it reality you should have the target model in your mind and fully understand how you will get there. Working on on-premises for years has created many experts in the field from operations to management and while cloud is pretty much same infrastructure in the cloud it really is the next generation and an enormous mindshift for users of legacy systems. If you are not there yet, there is nothing wrong to play with it at small cost but get your vision and economies right before you make the final decision.

So the questions you should be asking yourself when deciding migration to Cloud should include below;

a) Solution Architecture

You have to have right architecture to be able to run your solution or application. However the better your architecture is, the resilient, the scaleable, the reliable, the economical, the secure and the innovative your solution will be.

b) Application design

The application designed to run on specific hardware or computers may not be as cost effective as if you redesign your application to be able to interact with cloud and take advantage of modern technologies such as serverless architecture including AWS Lambda or Google Cloud Function.

c) Security & Governance

Cloud security can be as secure as you design and as weak as you leave. No matter what type of business you run the security should be paramount and there should be no compromise in investing on security. While you may want to deliver latency based content, you may be required to maintain high availability in certain regions. 

d) Test/ DR/ Resilience & data protection

You may or may not have dedicated UAT, development or DR environments in the past but it will be good idea to introduce these while migrating to the cloud as it is today's requirement and you can now do it in cloud at very low cost. If you already had these, the cloud works differently and these environments need to be factored within design and architecture of your solution.

e) Operational management

The changes in cloud can all be automated or in other words scripted including the pre-test exact changes in very much like for like temporary environment at fraction of cost. However it all needs an entirely different approach on how you plan and implement those changes. Backup and patching type activities will have to become more sophisticated and automated processes that work without failing. The monitoring and alarming will take a different direction on what events may trigger incidents and how many of those can trigger self healing system. Your operational resources will have to be trained up to become DevOps engineers rather than technology isolated engineers. It may also reduce the number of resources you require to manage the infrastructure but you'll need more architects to continuously improve and optimise your environment.

f) Continuously improvement

While I recommend you to invest as much time and resources as you can do to start an ideal cloud based architecture and even if you get it perfect for once I guarantee there will always be improvements and optimisations you can make. You should not hesitate to invest in good architects always working on your infrastructure as they will make it more reliable, more optimised and more economical every day.

g) Staged approach

Unless you have the beans and brain, you could take staged approach by transferring your UAT, development and DR environments to cloud where you can spin up solution for the time and scale you require at a small cost. This also gives you opportunity to understand what non-conventional approaches you can adopt while working on cloud and eventually you will find it more sensible to roll-out your production environment within cloud more efficiently and more economically.



Popular posts from this blog

TrueCrypt on macOS X Mojave 10.14

If you have updated your macOS recently to Mojave otherwise known as verison 10.14 you may not be able to install the last version of Truecrypt in order to access your old volumes encrypted with Truecrypt software. This article will guide you to get this working on your MacOS v10.14 (Mjoave) . Download the package from  https://truecrypt.ch/downloads/  or  https://www.truecrypt71a.com/downloads/ . Find downloaded package using Finder in your HDD/Users/username/Downloads folder and will look like  TrueCrypt 7.1a Mac OS X.dmg . Open file location in Finder and open or double click on  TrueCrypt 7.1a Mac OS X.dmg . This will mount Truecrypt 7.1a and will have Truecrypt 7.1a.mpkg in it. Drag the package T rueCrypt 7.1a.mpkg and drop in your Downloads folder. From Locations in Finder you can eject your TrueCrypt mount. Now go to your Downloads location, find the file  TrueCrypt 7.1a.mpkg , right click and select Show Package Contents . Find the file Contents/distribution.di

Tools you need before you start using Terraform for orchestration infrastructure in cloud

Terraform one of the famous open source tool used for planning, deploying and maintaining infrastructure as a code and the beauty of this tool is that it works across various cloud service providers. Even though I personally like the AWS Cloudformation, it is AWS only and most probably it will always remain limited to Amazon Web Services. It has few advantages over other tools when using with AWS and will be the first to have new AWS features incorporated before other tools and APIs catch up. However if you are not limiting yourself to AWS only or have hybrid environment you may want to use a 3rd party tool compatible for all cloud infrastructures. Terraform being one of them is youngest client only tool and this article will help you setting up your desktop environment and give you understanding of how it works before you can start to code. Prerequisites: Computer running Windows, Linux, Solaris or MacOS operating system. Downloads: Download Terraform directly from the crea

Running VNC Server as a Service on Ubuntu

Method 1: VNC Server as a Service on Ubuntu desktop similar to Redhat sysconfig sudo apt-get install vncserver sudo mkdir -p /etc/sysconfig sudo touch /etc/sysconfig/vncservers sudo vi /etc/sysconfig/vncservers # Add following VNC Server instances where username and arguments are defined for each session. VNCSERVERS=" 1:user1 2:user2 3:user3 " VNCSERVERARGS[1]=" -geometry 1280x992 -depth 16 " VNCSERVERARGS[2]=" -geometry 800x600 -depth 8 " VNCSERVERARGS[3]=" -geometry 980x720 " sudo vi /etc/init.d/vncserver # Add below to the service script #!/bin/bash # # chkconfig: - 91 35 # description: Starts and stops vncserver. \ # used to provide remote X administration services. # Source function library. # . /etc/init.d/functions # Source networking configuration. # . /etc/sysconfig/network # Check that networking is up. # [ ${NETWORKING} = "no" ] && exit 0 unset VNCSERVERARGS VNC