This was probably the most challenging task that I set out to do. I am just getting into containers. Which means I am fairly new with Kubernetes and all the different management platforms that are built around Kubernetes. I have been working with Pivotal’s Container Service (PKS) a lot more lately. Which to be honest, and contrary to what some of my peers think I think of it, is actually very cool product. (I love ditching my peers! Come on, they love ditching on me as well! After all, I am the kool aid drinking Microsoft fanboy in the group.) I have also been working a lot with Azure Kubernetes Service (AKS) in Azure and also the preview release version of Kubernetes for Azure Stack. I am really looking forward to having AKS actually on Azure Stack with the same capabilities we find with AKS on Azure. One step at a time!
So the more I seem to cram in my old head, the more I seem to want to punish myself by learning more! I would never had thought I would even be working with some of the tools and platforms I am working with today. I am so looking forward to all the new knowledge. I am hoping I can keep it all in my brain, which in the long run allows me to share on my blog and at user conferences as well.
At Ignite, David Armour and Scott Napolitan did a quick theater session called Machine learning applications in Microsoft Azure Stack that caught my eye and interest. It was something I really wanted to try out myself but just never had the time. In fact, I really still don’t have the time but will try to replicate what they showed that day in several blogs.
Long story short, they showed a few demo of applications that used data from SQL Server 2019 running in containers. A perfect use case for a hybrid cloud solution running on Azure and Azure Stack. I highly recommend you watch that session along with so many other awesome sessions around Azure Stack and Hybrid Cloud.
So this brings me to this blog. I will be honest, I haven’t yet decided if I want to make this a series or just one really long blog about SQL 2019 Always On Availability Groups running on Kubernetes on Azure and Azure Stack. I know my past history with series. They seem never to get completed before I move on to another technology or the technology changes so fast the material I was writing is already irrelevant. However, If I go the route of Hybrid Cloud then I will have a good number of blogs within a single series.
No matter what I decide, I do know that I want to blog about my experiences the past few days deploying SQL Server 2019 on Kubernetes clusters both on Azure and Azure Stack. I also want to try and deploy a single availability group that spans across both Azure and Azure Stack. Pardon my terminology, I am not a SQL guy so I may kill some technical terms throughout these next few blogs. I also want to try and build my first true hybrid application that will have worker process and services in both Azure and Azure Stack, which will store data on SQL running on Azure Stack. I would even like to have some data upload back to Log Analytics to replicate a use case for data that isn’t protected and can still go to the cloud.
So for now I will blog about deploying SQL Server 2019 in Kubernetes. One blog will focus on my experience with Azure and the other will focus my experience with Azure Stack. Even though we are using the same Kubernetes engine across both clouds, there are a lot of different experiences between the two.
Hybrid Cloud Series – Introduction (Part I)
For my first two blogs that I will be publishing in this series I will talk about my experiences deploying a SQL Server 2019 Always On Availability group using Kubernetes clusters on Azure and Azure Stack. My first blog will go into my experiences on Azure. I will then write my 2nd blog about my experiences on Azure Stack. Even though both use Kubernetes, there was a good difference between the two deployments that I think deserve two separate blogs.
- Hybrid Cloud Series – Deploying SQL Server 2019 Always On Availability Group on Azure Kubernetes Services (AKS).
- Hybrid Cloud Series – Deploying SQL Server 2019 Always On Availability Group on Azure Stack’s Kubernetes Preview.
- Hybrid Cloud Series – …… (more to come)
Kubernetes and SQL Server
As I have mentioned I am not a Subject Matter Expert (SME) when it comes to Kubernetes, Containers, SQL, etc. I love sharing what I have learned and hope that it may assist someone looking for the same answers I tried to answer. This section and Part I will go into a high level view of what my next two blogs will be about. I will also borrow a lot of stuff for this section since I am not an expert but also I want to make sure I am not writing anything that isn’t accurate. I will give credit where and when credit is due.
First of all I would love for you to go to the following Microsoft Docs page.
High availability for SQL Server containers. This is where I was able to get most everything I needed to successfully deploy SQL Server 2019 on Kubernetes clusters.
The site is a good resource and explains a lot about SQL Server on Kubernetes. The differences between SQL Server 2017 and SQL Server 2019 on Kubernetes. It goes into how Kubernetes plays a role of the container orchestrator and how it orchestrates the deployment of these SQL Server 2019 images.
So without re-writing what has already been written I will end Part I and my introduction to my upcoming blogs. Looking forward to sharing my experience with everyone!
Hybrid Cloud Series – Deploying SQL Server 2019 Always On Availability Group on Azure Kubernetes Services (AKS).