Friday, April 1, 2016

Abandon All Servers Ye Who Enter Here

So, you still have on-premise servers, and you want to move to the cloud.  Or perhaps, you have moved to the cloud, but you have kept your server-centric mindset, and used Infrastructure-as-a-Service (IaaS) to build your servers in the cloud, directly mimicking what you had on premises.

You are doing in incorrectly, and you are not helping your organization as much as you think.  Sure, there might be a modicum of cost-savings related to moving to the cloud.  However, maintaining a server-centric mindset, while consuming cloud resources is an anti-pattern.

Server Centricity
How do you know if you are still trapped in server-centricity?  Let's take a short quiz:

Question #1:  Do you name your servers?

Question #2:  When clients must integrate to your applications, do they need to know the name of your servers, or worse yet, their IP addresses?

Question #3:  Do you even have cloud resources that you label as "servers"?

Question #4:  When the servers fail, how do you respond?  Do you manually build a new server and manually reconnect clients?  Even if you have a hot/warm/cold standby server, was it built with at least some manual intervention?

Question #5:  When you need additional capacity, do you manually scale horizontally, or vertically?

If you answered yes to any of these questions, your cloud usage is still immature.  How immature is relative, and a matter of opinion, but most would agree that manual intervention should be minimal, and a last resort.

Abandon Your Servers
To use the cloud effectively and move towards maturity, your organization must lessen, and eventually remove, the importance of individual servers.  Servers are fleeting; applications are more important.  In the realm of IaaS, instances and/or containers replace servers.  Instances, and even more so, containers, are designed to be volatile.  In fact, with proper automation in place, instances and containers come and go with little or no impact to applications.  Applications stick around, underpinned by instances, containers, and automation.  Availability and partition tolerance are easily achieved with proper automation and design.

Platform-as-a-Service (PaaS), underpinned by IaaS, is even more application centric, and relies on automation even more so than IaaS.  In a properly designed PaaS implementation, automation allows the end users, the application owners, to place their applications into the cloud without having to build the instances and/or containers.  PaaS users either supply the deployment artifacts, or use PaaS Ci/CD services to build and deploy the artifacts.  In fact, for PaaS subscribers, the term "environment" takes on new meaning; it is the intersection of code and logical application definition, controlled by CI/CD processes and automation.  They don't care where their applications run, just as long as they run and their users can successfully use them to complete their respective tasks.

Automation and Indirection
Automation is in place to abstract the need for PaaS users to build and maintain IaaS resources.  There is also a layer of indirection that exists between the applications and the underlying infrastructure.  With PaaS, application owners never need to worry about that underlying infrastructure; instead, they focus on code and application definitions.  Overtime, this places them in the same category with application users, or even SaaS subscribers.

This PaaS-like abstraction and layer of indirection should also be the goal of cloud-enablement teams that are using IaaS resources to deliver services to application teams.  With automation, and well-defined practices, and well-designed stacks, cloud-enablement teams are now able to deliver more self-service resources with IaaS.  This self-service allows development and deployment teams to consume IaaS similarly to PaaS users.  With proper automation, there is little to no manual configuration or intervention needed by the application teams.

Where are the Servers?
And, where are the servers?  They are forgotten, replaced by instances, containers, and stacks, whose count shrinks and grows with the needs of the individual teams consuming them.  Configuration-as-code and automation, for resource formation and autoscaling have reduced the need for manual intervention.

So, if you really want to enter the cloud and be successful, be prepared to abandon your servers.

64 comments:

  1. I have read your blog. Your information is really useful for beginner. information provided here are unique and easy to understand. Thanks for this useful information. This is a great inspiring article. I am pretty much pleased with your good work.
    AWS Training Institute in Chennai | AWS Training Center in Velachery | AWS Certification Training in Velachery

    ReplyDelete
  2. Excellent post... Thank you for sharing such a informative and information blog with us.keep updating such a wonderful post..
    MicorSoft Azure Training Institute in Chennai | Azure Training Center in Chennai | Azure Certification Training in velachery | Online Azure training in Velachery

    ReplyDelete
  3. Extraordinary blog with amazing content.Thanks for posting such intersting post.keep sharing....
    Linux Training Institute in Chennai | Linux Training Center in Velachery

    ReplyDelete
  4. “Nice post!” Keep up the Amazing Good Work. Really your post was very interesting to read. Waiting for your upcoming update. Good Luck….

    Python Training Institute in Velachery | Python Training Institute in Chennai

    ReplyDelete
  5. Very Excellent and awesome Blog you are posted each and every Points are unique. Thanks for sharing such a nice Blog, keep on updating more
    Summer Courses Training in Tharamani|
    JAVA Training in Tharamani |
    Web Designing Training Center in Tharamani |
    Software Testing Training in Tharamani |
    Selenium Training in Tharamani |

    ReplyDelete
  6. The information you have here is really useful . It is truly supportive for us and I have accumulated some essential data from this blog.
    Web Designing Training Center in Chennai |
    Tally Training in Chennai |
    Selenium Training in Chennai |
    Summer Courses Training in Chennai|
    JAVA Training in Chennai |

    ReplyDelete
  7. Excellent Post! Thank you so much for sharing this pretty post, it was so good to read and useful to improve my knowledge as updated one, keep blogging…
    Python Training in Chennai|
    Web Designing Training Center in Chennai |
    Tally Training in Chennai |
    AWS Training in Chennai|
    Hardware and Networking Training in Chennai |

    ReplyDelete
  8. Really you are done a wonderful job. I learn more knowledge while reading this blog Please keep on updating More ...
    PMP Exams in Velachery|
    PMP Exams in Chennai|
    PMP Exams in Tharamani|
    PMP Exams in Perungudi|
    PMP Exams in Thambaram

    ReplyDelete
  9. Wonderful information and really its very much useful Blog . Thanks for sharing and keep updating like this …….
    ITIL Exams in Chennai|
    ITIL Exams in Velachery|
    ITIL Exams in Tharamani|
    ITIL Exams in Perungudi|
    ITIL Exams in Thambaram

    ReplyDelete
  10. This is useful post for me. I learn lot of new information from your post. keep sharing. thank you for share us...
    GRE Test Center in Chennai | GRE Test Center in Velachery | GRE Test in Chennai | Online GRE Exams in Velachery | Online GRE Certification in Velachery

    ReplyDelete
  11. Impressive blog with Usefull information. Really very useful article for us thanks for sharing such a wonderful blog...
    ITIL Exams in Chennai|
    ITIL Exams in Velachery|
    ITIL Exams in Tharamani|
    ITIL Exams in Perungudi|
    ITIL Exams in Thambaram

    ReplyDelete
  12. Nice post.. Its really an amazing with informative information and useful for everyone. Thanks for sharing your wonderful article..

    AWS Certification in Chennai | AWS Exam Center in Chennai | AWS Exams in Velacheri | AWS Online Exams in Velachery | Online Certification in Chennai

    ReplyDelete
  13. “Nice post!” Keep up the Amazing Good Work. Really your post was very interesting to read. Waiting for your upcoming update. Good Luck….



    AWS Training Institute in Velachery |
    AWS Training Institute in Chennai |
    AWS Training Institute in Tambaram |
    AWS Training Institute in Taramani|
    AWS Training Institute in Medavakkam

    ReplyDelete
  14. Nice blog. You put Good stuff. All the topics were explained briefly. So easily understand for me. I am waiting for your next awesome blog. Thanks for sharing.


    Python Training Institute in Velachery |
    Python Training Institute in Chennai |
    Python Training Institute in Tambaram |
    Python Training Institute in Taramani|
    Python Training Institute in Medavakkam

    ReplyDelete
  15. Amazing blog with informative information... Thanks a lot for sharing such an wonderful post with us...
    PCB Design Training in Chennai | PCB Training Institute in Velachery

    ReplyDelete
  16. Really amazing information you have shared with us. Thanks for sharing your wonderful post..
    ISTQB Certification in Chennai | ISTQB Exams in Velachery

    ReplyDelete
  17. Really it was an awesome article...very interesting to read. You have provided an nice article....Thanks for sharing..
    MBA Project Center in Chennai | MBA Projects in Velachery

    ReplyDelete
  18. Really it was an awesome article...very interesting to read..You have provided an nice article....Thanks for sharing..
    PMP Certification in Chennai | PMP Exam Center in Velachery

    ReplyDelete
  19. Thank you so much for such valuable information sharing. It’s highly appreciated
    Agile Scrum Master Training in Chennai | Agile Scrum Master Training in Velachery

    ReplyDelete
  20. Awesome post. Really you are shared very informative concept... Thank you for sharing. Keep on updating...
    GMAT Test Center in Chennai | GMAT Test Center in Velachery

    ReplyDelete
  21. Thank you so much for sharing your nice post with us.. keep updating..
    GMAT Test Center in Chennai | GMAT Test Center in Velachery

    ReplyDelete