Platform engineering vs DevOps & SRE



Is platform engineering DevOps or SRE? Are they all the same thing? what is the difference?

You have probably heard all of these different terms mentioned a lot recently and you have been wondering what they all mean and what are the differences? 

In order to break this down as simply as possible to someone who is new to these terms lets start at the beginning. In the past we had on-premises infrastructure which was generally servers, networking, storage and other equipment housed in a local or colocation datacenters. This was the core infrastructure used for providing access to business applications used internally and externally. These servers were generally used as physical machines running the operating system and applications locally. These applications were generally monolithic and isolated. We then moved to using virtual machines on top of hypervisors to split many machines onto one physical box. Virtualization was born. The operations team was responsible for managing this infrastructure and the development team would focus on actually coding the application to be hosted on this physical infrastructure.

As the cloud became the next generation we started migrating workloads to cloud providers and started to share the infrastructure operation with cloud companies. Applications started being hosted within cloud datacenters to be used as IaaS, PaaS or SaaS internally or externally. Next we started using started using containers and container orchestration like Kubernetes to abstract and manage the applications and infrastructure more effectively. The monolithic applications were broken up into microservices which made deployment and management smoother. Google pioneered these developments on Kubernetes and open sourced the platform which is now the standard.

SRE

The term SRE was initially created by Google in order to help maintain the reliability of these container and cloud based microservice workloads. The SRE* discipline was invented to manage, automate, reduce toil*, monitor and ultimately increase reliability across infrastructure and apps, using various SLI's,  SLO's, error budgets* and postmortems to improve the end user experience. SRE was Google's internal approach to DevOps, which in itself was a methodology of bringing together Development and Operations teams on working towards a common goal. Whereas before operations were more focused on the actual infrastructure and development on coding. SRE bridged this gap and started to be adopted as a new culture within organizations.

DevOps

The term DevOps* was and still is interpreted very differently between different organizations and individuals, where some understand the term to be focused on development coding work and others on infrastructure management. Some organizations understand it as job titles and tooling, using different automation or software delivery tools to improve the flow and testing of software from development to production. Ideally it should possibly be viewed as a cultural philosophy of the management of software delivery by operations and development teams working together. Tooling is very important but can be interchangeable based on the specific use case and can depend on the requirements of the project at hand. DevOps can be related to most modern software delivery practices and can contain various aspects related to SRE, such as reducing toil, automation, postmortems and monitoring and observability of systems. DevOps can also help to reduce the finger pointing and placing blame on ops vs dev as per the SRE principals.

Platform engineering

Platform engineering can probably be best explained as the next evolution of DevOps, it is focused on improving the velocity of development and making it easier on development teams to get their code working as quickly and reliably as possible. This can potentially be by automating infrastructure deployment using developer-centric self service portals or infrastructure as code. Platform engineering focuses on reliable, uniform deployment of resources as quickly and efficiently as possible. Monitoring, alerting and observability are also very important areas to make sure that the applications are running correctly. This can make a big difference in the more agile approach to development which introduces constant iterations. By using CI/CD and other methods we can automate the deployment of updates and new features reliably at velocity.

Platform engineering future

At its essence platform engineering is taking DevOps to a new level where cloud computing, development, infrastructure deployment and operations work hand in hand and focus on automations and reliability of services. These can also start to introduce DevSecOps to include security monitoring and compliance. Once again platform engineering will probably be used differently by various organizations based on their interpretations of the term, culture and methodologies but in the end this is a great new method to adopt slowly, focusing on continual improvements, learning from incidents, and improving the reliability of systems as a whole forward.

Here are some great articles and further in depth information on platform engineering, DevOps and SRE:

https://cloud.google.com/blog/products/application-development/common-myths-about-platform-engineering

https://cloud.google.com/blog/products/application-development/another-five-myths-about-platform-engineering

https://cloud.google.com/blog/products/application-development/how-to-become-a-platform-engineer

https://dora.dev/devops-capabilities/

https://sre.google

https://sre.google/sre-book

https://sre.google/sre-book/eliminating-toil/

https://cloud.google.com/blog/products/devops-sre/systems-engineering-learning-resources-to-become-an-sre

https://cloud.google.com/blog/products/devops-sre/sre-fundamentals-slis-slas-and-slos

Pass the Google Cloud Professional Cloud Architect in 2024!

Hi everyone, this an updated version of the previous Google Cloud Professional Cloud Architect post from 2022 to include the updated material, tips, resources to pass the exam in 2024! The below guide is related to the new version of the Google Cloud Professional Cloud Architect certification in 2024.

It's really amazing how fast time goes and this will now be my third renewal of this certification and am really excited to share my study guide, advice, hints and helpful information on the latest version of the exam. This exam guide is based on the Cloud Architect exam written and passed in 2024.

As of 2022, Google made a complete revision of the Cloud Architect exam which was really needed in order to keep up with the pace of innovation being displayed on the Google Cloud Platform over the last few years. This exam has changed dramatically but still followed the same underlying architecture principals that we have grown accustomed to over the last four years. The version of the exam being offered in 2024 is still using the same base content as the 2022 exam with some revisions and updates.

As previously, the exam is based on 50 questions, which are displayed across four separate case studies as well as additional questions. You have two hours to complete the exam and the cost is $200. The exam is able to be taken at a testing center or remotely through https://webassessor.com/googlecloud. The exam is an advanced level certification so it is recommended to have some extensive real life experience hands on working with Google Cloud. The Google Cloud Associate Cloud Engineer (ACE) exam would be a good starting point if just entering the world of Google Cloud: https://cloud.google.com/certification/cloud-engineer

The latest 2024 exam is still using the same four case studies, namely EHR Healthcare, Helicopter Racing League Mountkirk Games and Terram Earth. These case studies are really vital to the exam and are the core focus that you need to spend your time on. When spending time studying these case studies you will be introduced or updated on various new products and skills that are vital in order to cover off the exam guide requirements.

For further updates exam details and the latest requirements please check the official Google Cloud material: https://cloud.google.com/certification/cloud-architect https://cloud.google.com/certification/guides/professional-cloud-architect/

Please see below link to all four case studies that can be downloaded and reviewed from Google:

https://services.google.com/fh/files/blogs/master_case_study_ehr_healthcare.pdf

https://services.google.com/fh/files/blogs/master_case_study_helicopter_racing_league.pdf

https://services.google.com/fh/files/blogs/master_case_study_mountkirk_games.pdf

https://services.google.com/fh/files/blogs/master_case_study_terramearth.pdf

For the study material I highly recommend the following books which can assist with the full content on the study material in detail as well as some really useful helpful information on understanding the case studies:

https://www.amazon.com/Google-Professional-Cloud-Architect-Study/dp/1119602440

https://www.amazon.com/Professional-Cloud-Architect-Google-Certification/dp/1801812292

It's sometimes a lot easier to be able to visually see diagrams and watch videos on advice around the various solutions to solve the case study problems. These can be a great backup to using and actually writing your own solutions on the case studies. All areas and solutions that are mentioned need further research and reading to understand. The best place to go is always the Google Cloud documentation: https://cloud.google.com/docs and https://www.youtube.com/@googlecloudtech

Exam hint: You will not have enough time to read and learn the case studies prior to taking the exam, so please take advantage of the fact that you can download and work through these in your preparation.

I'm going to also link below further resources that are really helpful in the study process for this exam and I can recommend spending time going through all of these in detail before attempting your exam:

https://cloud.google.com/architecture - Architecture designs and guides from Google.

https://cloud.google.com/architecture/framework - More architecture information

https://www.cloudskillsboost.google/paths/12- Qwiklabs hands on labs *** highly recommended

https://www.googlecloudcommunity.com/gc/Community-Blogs/Guide-to-Preparing-for-the-Professional-Cloud-Architect/ba-p/496772 - Guide to preparing for the Professional Cloud Architect exam from the Google Cloud Community.

Overall the exam is not easy and there is a huge volume of knowledge areas that can be asked in the exam. Its really helpful in focusing on different formats during this study process. Watch video courses, YouTube, reading official Google Cloud architecture frameworks, reading documentation and understanding concepts that you are not familiar with. Hands on labs and/or experience are essential!

The only official practice test is the Google version which you can use to judge your skill set:

https://docs.google.com/forms/d/e/1FAIpQLSf54f7FbtSJcXUY6-DUHfBG31jZ3pujgb8-a5io_9biJsNpqg/viewform?usp=sf_link

With the above information you will also be ready to certify Cloud Architect in 2024!

Google Cloud Professional Cloud Architect

 



Hello everyone, once again its that time of the year for certification renewals! The below guide is related to the new version of the Google Cloud Professional Cloud Architect certification in 2022.

It's really amazing how fast time goes and this will now be my second renewal of this certification and am really excited to share my study guide, advice, hints and helpful information on the latest version of the exam. This exam guide is based on the Cloud Architect exam written in March 2022.

As of last year, 2021, Google made a complete revision of the Cloud Architect exam which was really needed in order to keep up with the pace of innovation being displayed on the Google Cloud Platform over the last few years. This exam has changed dramatically but still follows the same underlying architecture principals that we have grown accustomed to over the last four years.

As previously, the exam is based on 50 questions, which are displayed across four separate case studies as well as additional questions. You have two hours to complete the exam and the cost is $200. The exam is able to be taken at a testing center or remotely through https://webassessor.com/googlecloud. The exam is an advanced level certification so it is recommended to have some extensive real life experience hands on working with Google Cloud. The Google Cloud Associate Cloud Engineer (ACE) exam would be a good starting point if just entering the world of Google Cloud: https://cloud.google.com/certification/cloud-engineer

The biggest change in the new exam is the introduction of two brand new case studies, namely EHR Healthcare and Helicopter Racing League and the complete update of two previous case studies, Mountkirk Games and Terram Earth. These case studies are really vital to the exam and are the core focus that you need to spend your time on. When spending time studying these case studies you will be introduced or updated on various new products and skills that are vital in order to cover off the exam guide requirements.

For further exam details and requirements please check the official Google Cloud material: https://cloud.google.com/certification/cloud-architect https://cloud.google.com/certification/guides/professional-cloud-architect/

Please see below link to all four case studies that can be downloaded and reviewed from Google:

https://services.google.com/fh/files/blogs/master_case_study_ehr_healthcare.pdf

https://services.google.com/fh/files/blogs/master_case_study_helicopter_racing_league.pdf

https://services.google.com/fh/files/blogs/master_case_study_mountkirk_games.pdf

https://services.google.com/fh/files/blogs/master_case_study_terramearth.pdf

Please note: These case studies are at a high level and can be difficult to understand and digest. I will link some really great YouTube playlists that can assist you to study these in a practical way:

https://www.youtube.com/watch?v=tSTDaMV8ZFc&list=PLiGDmIpNsrc3tOl-95mzKqXaHc3KoMblW&index=6&t=5s - All case studies explained with diagrams and hints

https://www.youtube.com/watch?v=wJqmcacktOE - All case studies explained with solutions

It's sometimes a lot easier to be able to visually see diagrams and watch videos on advice around the various solutions to solve the case study problems. These can be a great backup to using and actually writing your own solutions on the case studies. All areas and solutions that are mentioned need further research and reading to understand. The best place to go is always the Google Cloud documentation: https://cloud.google.com/docs

Exam hint: You will not have enough time to read and learn the case studies prior to taking the exam, so please take advantage of the fact that you can download and work through these in your preparation.

I'm going to also link below further resources that are really helpful in the study process for this exam and I can recommend spending time going through all of these in detail before attempting your exam:

https://docs.google.com/spreadsheets/d/1LUtqhOEjUMySCfn3zj8Arhzcmazr3vrPzy7VzJwIshE/edit#gid=0 - Google Sheet with direct links to reading areas inside Google Cloud documentation. Time saver!

https://www.linkedin.com/pulse/preparing-google-cloud-certification-professional-architect-mohan?trk=articles_directory - Nice sum up of study resources.

https://cloud.google.com/architecture - Architecture designs and guides from Google.

https://cloud.google.com/architecture/framework - More architecture information

https://www.pluralsight.com/paths/cloud-architecture-with-google-cloud - Official on demand courses

https://www.pluralsight.com/courses/preparing-professional-cloud-architect-exam-1- More courses

https://www.coursera.org/professional-certificates/gcp-cloud-architect - More courses

https://www.cloudskillsboost.google/course_templates/78?utm_source=gcp_training&utm_medium=website&utm_campaign=cgc - Qwiklabs hands on labs

I also really recommend watching all of the Next 21 YouTube playlist, as this is really great content that provides you with the updates and information across all of the Google Cloud services and products:

https://www.youtube.com/playlist?list=PLIivdWyY5sqK5sIM83V8rOHWMoXaA2m4H

Overall the exam is not easy and there is a huge volume of knowledge areas that can be asked in the exam. Its really helpful in focusing on different formats during this study process. Watch video courses, YouTube, reading official Google Cloud architecture frameworks, reading documentation and understanding concepts that you are not familiar with. Hands on labs and/or experience are essential!

The only official practice test is the Google version which you can use to judge your skill set:

https://docs.google.com/forms/d/e/1FAIpQLSdvf8Xq6m0kvyIoysdr8WZYCG32WHENStftiHTSdtW4ad2-0w/viewform

With the above information you will also be ready to certify Cloud Architect in 2022!

https://www.credential.net/2cfdbb42-e43e-433c-a898-b475740f356d



Azure Solutions Architect Expert Renewal

Once again its that time to recertify, 2022 is going to be the year of renewal and recertification!

After holding the Azure Solutions Architect Expert certification since 2018, I noticed that Microsoft have changed the process in which renewal takes place on this and other Azure certifications.

In place of just writing another exam based on the syllabus you have already studied and been tested on, Microsoft have implemented a renewal process focused on studying Microsoft Learn modules and then writing an online assessment annually to regain and renew your certification. This is a really a great approach as it gets you to keep learning constantly as well as forces you to recertify annually to keep current.

This effectively replaces the previous method of recertifying every two years with a recertification exam. This process has been seamlessly implemented and really gets you to focus in on key study areas that you may or may not have had recent experience in. This is a great way to get you to use Microsoft Learn modules to increase your skills, get exposure to new concepts and recertify your existing certification that you have already had to write numerous official exams in order to gain. This online assessment is completed annually in order to keep your certification and automatically extends the expiration date on the certificate based on your existing transcript.

Please take note: Microsoft will send you reminders on a monthly basis from three months before the expiration of the certificate which gives you ample time to study the Learn modules and complete the assessment before expiration. The certification will renew for a year from the expiration date. The online assessment can also be written at any time during the renewal period. You will get multiple attempts to write if you do not pass the first time, but there are some waiting periods between attempts.

I really think that this is a great innovation from Microsoft Azure and think it would be great if other public cloud platforms could also look into implementing a similar renewal process in order to assist students. There is also, of course, the fact that there is no cost involved in this renewal process which is really a game changer for people who have invested so much time and costs in achieving these certifications.

Azure Solutions Architect Expert: Microsoft Learn Modules

The below list of Microsoft Learn modules can be studied prior to the online assessment. Please note: This is not compulsory in order to complete the assessment but they are really good if you are trying to brush up on or have not been exposed to these concepts since writing your last exam. The Learn modules focus in on a few of the Well-Architected Framework pillars: performance efficiency, security, Cost and also focus in on designing monitoring on Azure. Further reading on the Well-Architected Framework: https://docs.microsoft.com/en-us/azure/architecture/framework/

They then move into Azure Site Recovery (ASR) and Azure backups. There are also some practical labs on Azure SQL DB's. Overall, its around six and half hours on Learn modules before going ahead to take your assessment.

  • Design a holistic monitoring strategy on Azure
  • Microsoft Azure Well-Architected Framework - Performance efficiency
  • Microsoft Azure Well-Architected Framework - Security
  • Protect your Azure infrastructure with Azure Site Recovery
  • Protect your virtual machines by using Azure Backup
  • Back up and restore your Azure SQL database
  • Use monitoring and analytics to gain cost insights
  • Analyze your Azure infrastructure by using Azure Monitor logs

Please see the below link to the official Microsoft Learn modules required for study: https://docs.microsoft.com/en-us/learn/certifications/azure-solutions-architect/renew

By using the above link you are also able to check whether you are eligible for renewal. 

Quick tip: Make sure you sign into the above portal using your existing MCP login details. You are also able to add additional Learn profiles within your account if these are separate.

Please find the below link for further reading on the renewal process: https://aka.ms/CertRenewalOverview

I have found the overall renewal process simple, well implemented and innovative!

Good luck on completing your Azure Solutions Architect renewal in 2022!

Google Cloud Professional Cloud Architect



I have just recently completed the Google Cloud Professional Cloud Architect exam for the renewal. It's crazy that the two years is already up and time to re certify! Please find some below information on this exam as well as study resources and a guide on being able to tackle this certification.

Firstly, I have to say that after completing the exam two years ago in 2018 a lot has changed in the Google Cloud landscape in 2020. It's absolutely vital to update these exams every two years in order to keep up with the rapid innovation and release of new features and products by Google Cloud!

About the exam

Two years ago there were only two Google Cloud certifications available, the Professional Cloud Architect and the Data Engineer. Now with the release of numerous new role based certifications it has become a bit easier to certify on the track that represents your job role a bit better. However the Professional Cloud Architect still represents the high level solutions architect approach to GCP.

I suggest you have a look at all the various Google Cloud exams as it may be best suited to start with the Cloud Engineer if you are looking at beginning or starting on the cloud infrastructure track.
https://cloud.google.com/certification

In my personal opinion this is still the most vital and valuable cloud solutions architect exam available in the market currently, and will continue to be so for quite some time. The reason? It's really due to the innovation that Google is investing in their cloud platform. The growth in the platform in just two years has been impressive and many enterprises are investigating migration or are in the process of migrating into the platform. The Professional Cloud Architect is also still rated as the highest paid certification in the market currently. Please view the link below:

https://www.globalknowledge.com/us-en/resources/resource-library/articles/top-paying-certifications/

Study Resources

The exam itself is not an easy one unfortunately and Google does strive to keep a very high standard on the certifications on the exam. It encompasses both the design and implementation of cloud architecture. The Professional Cloud Architect exam assesses your ability to:

- Design and plan a cloud solution architecture
- Manage and provision the cloud solution infrastructure
- Design for security and compliance
- Analyze and optimize technical and business processes
- Manage implementations of cloud architecture
- Ensure solution and operations reliability

The exam is delivered on a high level knowledge of solution architecture, for example in trying to identify the best solutions and services to map to organisation requirements and migrations.  By going through and reading the official exam guide it will give you a good idea of the scope that the exam encompasses which is really large. https://cloud.google.com/certification/guides/cloud-architect

However this exam also deep dives into technical skills across the products and tests your knowledge of actually understanding the integration of the services as well as infrastructure management.

I have outlined some study resources below that I have used personally for this exam. My advice is to read through the official guides first in order to get an understanding of the requirements. The second step is to hit the labs really hard. Unless you have a great deal of experience using GCP you are really going to need to do the labs as it's absolutely vital to get the hand on experience of GCP. Qwiklabs is the best place to do this and please find some links below to some relevant Qwiklabs content.

https://google.qwiklabs.com/courses/1070?utm_source=gcp&utm_medium=site&utm_campaign=certification

https://google.qwiklabs.com/courses/879&utm_source=cloud-dot-google&utm_medium=website

I also find that a really good training resource is using Youtube and watching all the past Google Cloud Next 19 sessions on the various GCP products and resources. This can give you some really useful information and help you prepare on areas you are unsure of. https://www.youtube.com/watch?v=XGrlWVWlpgE&list=PLIivdWyY5sqIXvUGVrFuZibCUdKVzEoUw

Please find some links to official study guides and further information:

Study links:
https://cloud.google.com/certification/cloud-architect

Exam Guide:
https://cloud.google.com/certification/guides/cloud-architect

Google also offers a free practise test on their website which is really helpful to judge your study progress and whether you are ready to take the exam or should spend some more time preparing:

Practise Exam:
https://cloud.google.com/certification/practice-exam/cloud-architect

One nice thing about the exam is that Google gives you all the applicable case studies on their website which really helps you to plan and map out the various GCP service requirements:

The case studies for the exam are available online:
https://cloud.google.com/certification/guides/cloud-architect/casestudy-mountkirkgames-rev2
https://cloud.google.com/certification/guides/cloud-architect/casestudy-dress4win-rev2
https://cloud.google.com/certification/guides/cloud-architect/casestudy-terramearth-rev2

Another great resource for learning on GCP is the Google Cloud documentation, this is a really great place to read up on services and gain more understanding on specific technical requirements.

https://cloud.google.com/docs

Google Cloud also offers classroom training sessions which are a great way to introduce you to the platform at any level and have an instructor guide you through GCP by using a delivery of slides as well as hands on labs in order build of your real world skills on the platform.
https://cloud.google.com/training/courses

This exam will take a lot of time to prepare for, but this time is really a great investment and it will be a really great learning experience in order to further your career and cloud skill development.

Good luck!

AZ-302 Transition into Architecture



I had the opportunity last week to write the new beta Microsoft AZ-302 transition exam for the new role based Azure Solutions Architect qualification being provided by Microsoft on their Azure Cloud Platform. This exam is only available if you have completed the 70-535 exam for Architecting Azure Solutions which I have previously written about.

This is a new exam that was released at the end of September 2018 and is still currently in beta meaning that you do not receive any results immediately after writing this exam. Microsoft confirms that you should receive transcript entry two weeks later if you pass.

As this is a new exam in beta there is currently very limited available study materials. In fact Microsoft have not released any practise tests or courses on this exam as of October 2018.

https://www.microsoft.com/en-us/learning/exam-az-302.aspx

The best pace to start preparing for this exam is by viewing the official exam page listed above. On this page you will find the exam section breakdown on the AZ-302:

Determine Workload Requirements (15-20%)
Design for Identity and Security (5-10%)
Design a Business Continuity Strategy (15-20%)
Implement Workloads and Security (5-10%)
Implement Authentication and Secure Data (5-10%)

Develop for the Cloud (45-50%)

As you can see from the breakdown the last section is Develop for the Cloud (45-50%) this section is very important and something that was not tested at this level in the 70-535. If you do not have extensive Cloud development background its best to start doing so now.

I used the following sources for studying for this exam including hands on labs and practising within an Azure subscription. The best place to find these is in the new Microsoft Learning portal within the Azure website. This is a great place to run through study courses and labs without having to create an Azure trial. Experience and skills are really key here.

https://docs.microsoft.com/en-gb/learn/azure

I also used the following free resource on Microsoft Azure courses which is great!

https://www.getazureready.com/

The Microsft Azure documentation is another great place to read up and study, here are some sample links to read that are related to this exam and that I read before writing:

https://docs.microsoft.com/en-us/azure/active-directory/develop/v1-protocols-openid-connect-code
https://docs.microsoft.com/en-us/azure/active-directory/develop/v1-protocols-oauth-code
https://docs.microsoft.com/en-us/azure/site-recovery/vmware-azure-set-up-replication
https://docs.microsoft.com/en-us/azure/storage/common/storage-redundancy
https://docs.microsoft.com/en-us/azure/site-recovery/site-recovery-test-failover-to-azure
https://docs.microsoft.com/en-us/azure/site-recovery/site-recovery-network-design
https://docs.microsoft.com/en-us/azure/site-recovery/site-recovery-failover
https://docs.microsoft.com/en-us/azure/site-recovery/site-recovery-workload
https://docs.microsoft.com/en-us/azure/site-recovery/concepts-traffic-manager-with-site-recovery
https://docs.microsoft.com/en-us/azure/architecture/guide/design-principles/
https://docs.microsoft.com/en-us/azure/architecture/guide/design-principles/redundancy
https://docs.microsoft.com/en-us/azure/architecture/guide/design-principles/self-healing
https://docs.microsoft.com/en-us/azure/security/security-azure-encryption-overview
https://azure.microsoft.com/en-us/solutions/confidential-compute/
https://docs.microsoft.com/en-us/azure/azure-functions/durable-functions-overview

https://docs.microsoft.com/en-us/azure/sql-database/sql-database-elastic-transactions-overview 

I would go through all the documentation related to the exam sections above and constantly keep reading through the relevant documentation on the study section that you are focusing on as this gives you some good perspective and a high level understanding on solutions.

To sum up the above resources are a good place to start for this exam but this exam is not  at all easy especially if you don't have strong cloud development background. Developing for the Cloud would be a great place to start learning or brushing up before tackling this exam. The key take away is that you really need strong Azure experience and high level understanding. This is not a standard architect level exam and will really take you into a technical deep dive so practise, skills and deep knowledge are really important.

Are Containers the future?




What are containers? How do containers work? Can I use containers? These are some common questions being asked about this application "virtualisation" technology. In this post we will be trying to simplify the basics of containers and answer some of these questions.

What are containers?

Containers can be compared to virtual machines but are very different. Containers contain groups of applications that can run directly on an underlying host operating system unlike virtual machines that require a hypervisor layer. This is greatly beneficial as you are able to achieve higher density, better elasticity, increased portability and advanced scalability. These advantages are achieved with less overhead management and administration.


The older way of achieving this same function was to have virtual machines running over a hypervisor which was running within a host operating system. Each of these layers require management and support and even the virtual machine had to run its own operating system. All of these operating systems require patching and other administration to operate. As you can see containers just contain the actual application and no other overheads are required.

How do containers work?

Containers are implemented using specific technology like Docker which was originally run within the Linux operating system. Nowadays containers can also be run on Windows. Docker containers are really the standard way of doing things now. If you require multiple containers, clusters or are looking to run containers in the cloud you need to look at Kubernetes which is the most popular container orchestration platform currently.

Kubernetes is an open-source container-orchestration system for automating deployment, scaling and management of containerized applications. It was originally designed by Google and is now maintained by the Cloud Native Computing Foundation.

Can I use containers?

This question really depends on your specific workload and application. Most applications should be able to be ported into containers and then launched either onsite or in the cloud. One great thing about containers is that they can be run both onsite and in the cloud and are extremely portable between different operating systems and cloud platforms. With this flexibility its much easier to be able to move your containers anywhere you would like to run them. I would suggest further consultation with your developers and cloud architects to determine your use case and the best applicable solution for your use case.



Containers in the cloud

The easiest way to test and use containers in production is to launch them through your cloud platform. Each public cloud provider offers a widespread range of managed container solutions. Google Cloud Platform offers the original GKE Google Kubernetes Engine. This is currently the most advanced offering of managed Kubernetes in the cloud with Azure coming in second with the recently generally available AKS. Azure Kubernetes Service. Please read the below links in order to learn more about these platforms and containers.




Are containers the future?

Yes containers are the future of application technology in the cloud as well as on-premise. Containers are becoming more and more popular and learning and understanding some background in them whether you are a developer or operations engineer is really required. There are so many courses and further information out there and I suggest starting by looking at your cloud providers documentation to set you in the right direction.

Some great further information can be read here:


Cloud Based Compute Solutions



One of the most popular reasons for businesses moving to the cloud is for the use of compute power. This can be for migrating existing on premise workloads or transitioning to a cloud based virtualisation platform. Another reason with be the use of high performance computing. We will discuss some of the various compute options in this blog post.

Compute

Running compute power in the cloud is becoming the standard way to run virtual servers, application services as well as high performance computing. Using older approaches such as onsite data centres and servers with virtualisation has become costly and underused. Often the capacity is not fully used and there is also the cost of hardware maintenance.

By migrating your existing compute workloads to the cloud you can reduce cost, maintenance and increase your reliability and up time. You can migrate your virtual machines (VM's) directly into cloud platforms with minimum or no downtime. Once in the cloud you can then only focus on the management of the software layer and not hardware.

These days its become fairly standard to migrate existing on premises VM's into the cloud despite which hypervisor platform you are using i.e VMware or Hyper-V. You are also able to Physical 2 Virtual physial servers and migrate these to cloud. Please be careful to check your chosen cloud platforms operating system requirements prior to starting any migrations.




HPC High Performance Computing

Another very interesting use of cloud computing is for high performance computing (HPC) using large scale batch compute tasks to run huge loads like rendering. This can be much easier and cheaper than trying to build and run this in an on premise data centre. In the cloud you only pay for what you use and not the spare unused capacity. In HPC you may not be constantly running these workloads so you will not pay for unused compute time.

IaaS and PaaS

You are able to run compute functions in Infrastructure as a Service (IaaS) whereby you manage and look after your own infrasructue or VM's or via Platform as a Service (PaaS) were you can directly spin up specific functions like web apps that run in the cloud. IaaS may be more suited to a business looking to import existing infrastructure into the cloud and PaaS may be better suited to developers not interested in maintaining any infrastructure.

Containers

Containers are pretty much the future of running applications in the cloud (or even on premises) and with using solutions like Docker and Kubernetes the process of deploying containers has become much easier. In the cloud you can use the relevant cloud platforms Kubernetes engines to spin up containers in seconds and to mange them going forward. Google Cloud's GKE is really leading in this space with Microsoft's AKS which has just become GA (Generally Available) quickly catching up. I will be writing a blog post post about Containers in the near future as this is becoming a really hot topic in cloud computing. 

Serverless Functions

Serverless and functions are used by developers to write and run code immediately and not have to deal with any servers or infrastructure at all. Code can be directly run and actioned without any need to worry about capacity planning or server management. Of course there are servers required but these are all managed by the cloud platforrms.

Further information on cloud compute solutions can be read here as well as getting trials activated to actually test the cloud compute options which is highly recommended:

https://cloud.google.com/products/compute/
https://azure.microsoft.com/en-us/product-categories/compute/

Cloud Based Virtual Networks



While discussing the implementation of cloud infrastructure we touched on the base of core infrastructure that will need to be provisioned in the cloud in order to begin your migration or greenfield cloud deployment. The core infrastructure required is cloud storage, compute resource and virtual networks. Today we will be going into virtual networks in more depth.

Virtual Networks

As previously discussed virtual networks are absolutely vital to understand in order to correctly provision and deploy cloud resources. These virtual networks are used to connect, segment and link your cloud based resources as well as on premises networks.

Virtual network segmentation is completed with the use of subnets. These subnets are used to seperate various cloud based networks using different IP ranges. These are seperate networks that can be used for different functions, for example the front end and back end tier of an application.

Another aspect to understand is the use of firewalls within these virtual networks. Traditionally a firewall is used on premises between the internal network and external network (internet). In cloud services a firewall is used in the same way but also internally, so you are able to secure internal as well as external networks and applications.

As mentioned above another incredibly important aspect of cloud based virtual networks is the ability to connect to your on premises environment. This is valuable in order to build and architect hybrid cloud solutions. This can be achieved by using direct ISP based links that bypass the public internet to keep things internally secure and fast or via VPN tunnels.

These VPN tunnels are encrypted but do run over the public internet so may not be as secure as your policies allow. Also, you may need a higher speed redundant link.

Cloud Platforms

There are some differences between the different cloud providers but basically cloud based virtual networks are quite similar and perform reasonably the same function. In Azure you get Virtual Networks which are the base of your cloud based network infrastructure and in Google Cloud Platform you get Virtual Private Cloud Networks (VPC's) both offer a few different features so its always important to read the relevant documentation and use a trial account to test for your specific requirements. 


To  sum up though you need to brush up on your general network skills (get out the Network+ manual) before planning your cloud based networks and I highly recommend some courses in the cloud platform you are looking into going with. There are literally loads of in depth free video courses available on any platform to learn the necessary skills.

Training

Please see below Coursera GCP and Pluralsight Azure on demand courses:

https://www.coursera.org/specializations/gcp-architecture

https://www.pluralsight.com/courses/planning-designing-microsoft-azure-network-solutions?twoid=e7d045ab-0691-4def-896a-8db6cb74790b&aid=7010a000001xDURAA2



Implementing Cloud Infrastructure



One of the most important concepts to think about when implementing cloud solutions is your core infrastructure. This will be your base when building infrastructure in the cloud. This will comprise of virtual networks, cloud storage and compute at the base layer order to build upon in IaaS (Infrastructure as a Service)

To break it down this is very comparable to on premises infrastructure as when looking to physical storage,  physical servers, virtualisation, virtual networks and virtual machines. The cloud reduces the need have the physical infrastructure in place. You are able to utilise this on a pay per use model in any of the public cloud providers for example Google Cloud Platform or Microsoft Azure. You are charged for what you use which is great!

Virtual Networks

After activating your cloud subscription you can begin setting up your virtual network. This has different names depending on what provider you are using i.e in Microsoft Azure its called Virtual Networks and in Google Cloud Platform its called Virtual Private Cloud Networks (VPC's) Basically these are similar ways to perform network segmentation in the cloud based on virtualised networks. Subnets are used to segment these virtual networks or VPC's. You are also able to integrate load balancers and firewalls:


Within these virtual networks you can isolate specific services, i.e virtual machines, you can implement load balancers as well as connect networks from different regions togeather. You are also able to implement security with firewall's across these virtual networks both internally and externally. Another feature of virtual networks is the ability to connect them with your existing on premises networks. There are various methods available in order to achieve this as in a direct Interconnect (GCP) or Express Route (Azure) link from your site to the applicable cloud provider. Another way do to this is be using secure encrypted VPN tunnels:



Cloud Storage

Cloud Storage is absolutely critical as this is where all of your resources will be stored in the cloud. I have previously written about cloud storage if you would like to read further:

In the context of this article we will be referencing more towards storage of infrastructure like virtual machine files, virtual machine disks and general file storage. These will be the locations where your compute workloads will be stored when created. There are various different types of storage but for virtual machines you will look at options like HDD or SSD depending on workload. Google GCP has persistent disks and Azure has managed disks for VM's. http://www.ruckcloud.ml/2018/04/lets-talk-about-managed-disks.html


Compute

The compute layer is all about the computing resources that you will be utilising. This is based on virtual machines in one form or the other. You can spin up traditional VM's one at a time with a large selection of different operating systems from Windows to Linux. These are called IaaS (Infrastructure as a Service) VM's. You can also leverage batch operation with automating a large number VM creation to achieve a large processing job for example. These VM's can automatically scale up and down based on load and you are only charged when they are in use. With IaaS you have direct control and management of your VM's.

You are also able to make use of virtual machines in PaaS (Platform as a Service) where you can immediately spin up app's for computing needs without the need of managing IaaS VM's. This is very handy for developers that are not too concerned with managing VM's.

In this article I have touched on the core base infrastructure required with cloud computing. These areas all go into much more depth but sometimes its nice to get a simple overview of what they are and how they work. This is really essential to understand when first looking into the cloud to either build new services or migrate your existing infrastructure.

Further information on cloud infrastructure is available at:



Lets talk about managed disks


What are Azure managed disks? Why are these the best practise to roll out on new virtual machine builds? What are the advantages of using managed disks? Today we will be discussing these questions in more detail and providing useful information about managed disks.

Managed disks are Azure managed virtual machine disks that are easily added during virtual machine (VM) builds. When activating the managed disk its added to your VM in replacement of the traditional storage account based unmanaged disk. Originally this was the only way of doing this as all VM disks had to be placed into storage accounts. Adding a managed disk though VM creation is a very easy process and literally takes one click:


There are many advantages for using manged disks opposed to traditional unmanaged disk storage which are mainly related to less overhead management, less resource sprawl, secured disk storage, better high availability and reliability on virtual machine disk storage.

Simplified Management - You can specify the type of disk and size needed and Azure will automatically create and manage the disks for you.

Scalable virtual machine deployments - Create thousands of managed disks within minutes. Create up to 1000 virtual machines in scale sets in a single large cluster.

More Secure - Using Azure RBAC (Role Based Access Control) you are able to create granular role based access control on your managed disks.

Highly durable and available - Your data is replicated simultaneously to three different replicas. If one replica fails there are two others to take over.

The below is a great comparison between unmanaged and managed disks:


There are also various further advantages of using managed disks. Namely multiple storage options like SSD premium managed disks for critical performance intensive workloads, and HDD for standard managed disk non-critical workloads. Easy migration from standard to premium managed disks as well as your existing ARM (Azure Resource Manager) virtual machines into managed disks. Point in time backup snapshot of your managed disk to create new managed disks later. Simple custom image management and encryption with bringing your own keys is available.

Managed disks are now the best way to use virtual machine disks in Azure. It's actually much easier to roll out and less admin than unmanaged disks as well as more reliable.

Please read the following for additional information:


Is Cloud Certification worth it?



Yes. Cloud Certification is rapidly becoming one of the most sought after IT qualifications to have. As Cloud is growing massively in popularity and business workloads are being migrated at a high pace these skills are in great demand and just growing everyday!

Cloud skills are absolutely essential for anyone working in IT, from developers to operations engineers you need to rapidly skill up in order to handle the changes in the industry. Most on premises workloads are currently being migrated or plans are being made to migrate shortly.

Where Cloud Certification itself fits in is being able to provide the necessary training and exams to validate these Cloud skills. By getting cloud certified this can assist you with gaining professional credibility as well as improve your hiring and promotion chances.

In my opinion the best Cloud certification paths are with the two biggest currently growing cloud providers in the market. Microsoft Azure and Google Cloud Platform. These providers are in the process of quick growth and constantly growing their product portfolios.

Lets discuss the certification options provided by both Microsoft and Google. Both vary slightly in exams and certification paths. Microsoft's are more complicated requiring a series of exams to achieve various certifications... MCSA Cloud Platform as well as the MCSE Cloud platform and Infrastructure. I will be focusing on these certifications as coming from an infrastructure background in an operations team or technical architect experience. There are other cloud certifications related to data science, machine learning and big data.

Microsoft Azure



Microsoft's Cloud certification for Azure starts with the 70-533 exam. This is related to implementing Azure Infrastructure Solutions. Once this is achieved you will require one more exam from the 70-532, 70-535, 70-473, 70-475 in order to achieve the MCSA Cloud Platform. However this is the path that I took but any two of these exams will count towards the MCSA Cloud Platform certification. If you would like to go further to achieve the MCSE Cloud Platform and Infrastructure you will need to achieve an additional elective exam also from this list. So to achieve the MSCE in Cloud Platform you will need to pass 3 exams.

Microsoft has partnered with Acclaim which provides badges for your passed exams as well as certifications. Microsoft also provides downloadable certificates from your MCP profile.

The Acclaim badges can be used to verify your certifications:


Google Cloud Platform

Google makes certification a lot more simple and only one exam is required in order to become Google Cloud Certified Professional Cloud Architect. However this exam is high level and contains a very large course content. Once passed you will become certified. This is not an easy exam and is comparable to Microsoft's 70-535 Architecting Azure Solutions. These are both architect level exams that require strong cloud architect knowledge.
Google provides certificates for your achievement that are verified by credential.net

I strongly recommend certifying across different cloud providers. The reason for this is that a lot of businesses these days are adopting multi-cloud deployment strategies which means you are quite likely to find multiple cloud providers in production or even cross platform migrations. Being able to work across the various cloud providers is becoming essential.

Please find below additional reading and information: