Infrastructure at your Service

All Posts By

David Barbarin

David Barbarin

Deploying SQL Server 2019 container on RHEL 8 with podman

By | Database Administration & Monitoring, DevOps, Docker, SQL Server | No Comments

Having a fresh install of RHEL8 on my lab environment, I was curious to take a look at new containerization stuff from Red Hat in the context of SQL Server 2019. Good chances are the future version of SQL Server should be available and supported on with the latest version of Red Hat but for now this blog post is purely experimental. This time I wanted to share with you some thoughts about the new…

Read More
David Barbarin

SQL Server 2019 availability group R/W connection redirection, routing mesh and load balancing

By | Database Administration & Monitoring, SQL Server | No Comments

SQL Server 2019 availability group feature will provide secondary to primary replica read/write connection redirection. I wrote about it in a previous blog post here. It consists in redirecting client application connections to the primary replica regardless of the target server specified in the connections string. That’s pretty interesting in some scenarios as read scale-out or specific multi-subnet configurations where creating the traditional AG listener is not an viable option. The new R/W connection redirection…

Read More
David Barbarin

SQL Server containers and docker network driver performance considerations

By | Database Administration & Monitoring, DevOps, Docker, SQL Server | No Comments

Few months ago I attended to the Franck Pachot session about Microservices and databases at SOUG Romandie in Lausanne on 2019 May 21th. He covered some performance challenges that can be introduced by Microservices architecture design and especially when database components come into the game with chatty applications. One year ago, I was in a situation where a customer installed some SQL Server Linux 2017 containers in a Docker infrastructure with user applications located outside…

Read More
David Barbarin

Deploying SQL Server on Azure virtual machine with Terraform

By | Cloud, DevOps, SQL Server | One Comment

We are entering now to the infrastructure as code world and provisioning a SQL Server infrastructure is not excluded from the equation. This is especially true when it comes the Cloud regardless we are using IaaS or PaaS. One great tool to use in such scenario is certainly terraform and I introduced it during the last PowerSaturday pre-conference named “DBA modern competencies”. Installation paradigms in the cloud differ from what we usually do on-premises either…

Read More
David Barbarin

Windocks and K8s support

By | DevOps, Docker, Kubernetes, SQL Server | No Comments

I got recently the 4.08 update from the Windocks team and I was very excited to evaluate some of new features. The first cool one I want to present in this blog concerns the Kubernetes support for deploying Windocks containers that will make my application deployment definitely easier. Let’s say you want to deploy your application that is tied to a Windocks container for SQL Server. In a previous blog post I explained why we…

Read More
David Barbarin

RCSI with foreign keys, NULL values and paramater sniffing behavior

By | Development & Performance, SQL Server | No Comments

In this blog post let’s go back to the roots (DBA concern) with a discussion with one of my friends about a weird transaction locking issue. In fact, this discussion was specifically around two questions. The first one was why SQL Server continues to use shared locks in RCSI mode leading to blocking scenarios and the second one was about compiled objects with weird NULL value parameter sniffing behavior. This discussion was very funny for…

Read More
David Barbarin

Windocks, SQL Server and Azure in our internal CI pipeline

By | Cloud, DevOps, Docker, Kubernetes, SQL Server | One Comment

During the last DevOps Day in Geneva, I presented a sample of our CI implementation related to our MSSQL DMK maintenance product. It was definitely a very good experience for me and good opportunity to get feedback from DevOps community as well. During the session I explained our CI pipeline includes SQL Server containers both on AKS (K8s as managed service in Azure) and Windocks. I got questions from some of attendees who asked me…

Read More
David Barbarin

Upgrading SQL Server pods on K8s and helm charts

By | Database Administration & Monitoring, DevOps, Docker, Kubernetes, SQL Server | No Comments

It has been while since my last blog. Today it is about continuing with helm charts and how to upgrade / downgrade SQL Server containers to a specific cumulative update. My first write-up in my to-do list. Last year, I wrote an introduction of SQL Server containers on K8s. I remembered to face some issues when testing upgrade scenarios (probably a lack of knowledge). Since then, I have discovered helm charts and I use them…

Read More
David Barbarin

Deploying SQL Server 2019 AGs on K8s with helm charts

By | Database Administration & Monitoring, DevOps, Docker, Kubernetes, SQL Server | No Comments

This write-up follows my first article about helm chart with SQL Server. This time, I would like to cover the availability groups topic and how to deploy them with helm charts. In fact, to go through this feature for AGs was motivated to its usage in our Azure DevOps CI pipeline in order to deploy a configurable one on an AKS cluster with SQL Server 2019. If you look carefully at the release pipeline, Windocks…

Read More