I’ve migrated all presentations content over to GitHub…check it out here!| Anthony Nocentino's Blog
Anthony Nocentino is a highly accomplished technology professional, author, and speaker with over 25 years of experience in the IT industry. He currently is as a Senior Principal Field Solution Architect at Pure Storage. Recognized globally for his expertise in SQL Server, Kubernetes, and public cloud infrastructure, Anthony is a Microsoft Data Platform expert. He has authored several technical books and created dozens of PPluralsight courses, including “SQL Server on Kubernetes” and “A...| Anthony Nocentino's Blog
SQL Server - Best Practices and Architecture Optimizing SQL Server Operations and Scale with Pure Storage Pure Storage SQL Server Platform Guides Pure Storage SQL Server Best Practices Microsoft SQL Server on VMware vSphere with FlashArray | Reference Architecture Best Practices for SQL Server on VMware - Distilled Architecting Microsoft SQL Server on VMware vSphere - 2023 Version Architecting SQL Server on VMware Best Practices Guide Understanding SQL Server IO Size [Video] - Architecting fo...| Anthony Nocentino's Blog
I provide online training though Pluralsight. Access our resources anytime and from anywhere. Pluralsight offers the highest quality online training available with very affordable options. Check it out here. Here is a list of our current online training offerings: Kubernetes Kubernetes Administration Learning Path Kubernetes Installation and Configuration Fundamentals Managing the Kubernetes API Server and Pods Managing Kubernetes Controllers and Deployments Configuring and Managing Kubernete...| Anthony Nocentino's Blog
SQL Server on Kubernetes - Designing and Building a Modern Data Platform| www.nocentino.com
Getting Started with Vector Search in SQL Server 2025 Using Ollama| www.nocentino.com
Posts| www.nocentino.com
As AI continues to evolve, many of us are looking for ways to leverage large language models (LLMs) without relying on cloud services. As we learned in my previous post “Using a Local Large Language Model (LLM): Running Ollama on Your Laptop”, running models locally gives you complete control over your data, eliminates API costs, and can be integrated seamlessly into your existing workflows. Today, I’d like to share how you can interact with local LLMs using PowerShell through the Ollam...| Anthony Nocentino's Blog
You can now run powerful LLMs like Llama 3.1 directly on your laptop using Ollama. There is no cloud, and there is no cost. Just install, pull a model, and start chatting, all in a local shell.| www.nocentino.com
In this post, the fifth in our series, I want to illustrate an example of using the T-SQL Snapshot Backup feature in SQL Server 2022 to seed Availability Groups (AGs) with storage-based snapshots. Efficiently seeding an Availability Group is essential for maintaining high availability and ensuring effective disaster recovery. With the introduction of T-SQL Snapshot Backup in SQL Server 2022, snapshots can now be created at the storage layer. This advancement significantly speeds up the initia...| www.nocentino.com
In this post, the fourth in our series, I want to share an example demonstrating SQL Server 2022’s T-SQL Snapshot Backup feature in a scenario where a database spans multiple storage arrays. If you’re dealing with multi-array environments, you’ll appreciate how this technique freezes database write I/O to take coordinated snapshots across volumes on two FlashArrays. In this post, I’ll walk you through the process, point out some of the script’s key elements, and show you how long th...| www.nocentino.com
Introducing SQL Server 2025 - Enterprise Ready AI SQL Server 2025 is an upcoming release focused on AI, analytics, and modern database development, backed by innovations in mission-critical engine features for security, performance, and high availability. Let’s dive into what this means for your AI and data-driven applications. We’ll walk through some of the new features announced by Azure Data Principal Architect Bob Ward in his post Announcing SQL Server 2025, and I’ll give some thoug...| Anthony Nocentino's Blog
Introduction In this post, the third in our series on using T-SQL Snapshot Backup, I will guide you through using the new T-SQL Snapshot Backup feature in SQL Server 2022 to take a snapshot backup and then perform point-in-time database restores using that snapshot backup as the base, but this time using an Azure Virtual Machine. We will explore how to manage Azure storage-level operations, such as taking snapshots, cloning snapshots, and executing an instantaneous point-in-time database rest...| Anthony Nocentino's Blog
Introduction In this post, the second in our series, I will guide you through using the new T-SQL Snapshot Backup feature in SQL Server 2022 to take a snapshot backup and perform point-in-time database restores using a snapshot backup as the base of the restore. We will explore how to manage storage-level operations, such as cloning snapshots and executing an instantaneous point-in-time restore of a database from the snapshot with minimal impact on your infrastructure.| Anthony Nocentino's Blog
Introduction Traditional SQL Server backups can struggle with large databases, resulting in longer backup times and resource contention. T-SQL Snapshot Backup, a new feature in SQL Server 2022, addresses these challenges by allowing storage-based snapshots to be coordinated through T-SQL. This feature delivers faster, more efficient backups, especially for large-scale environments with the most aggressive of recovery objectives. Anatomy of a Full Backup Before we start learning about T-SQL Sn...| Anthony Nocentino's Blog
Introduction Welcome back to the fifth installment of our blog series on using the Pure Storage PowerShell SDK2. In this post, we’re diving into a hands-on demonstration of using the Pure Storage FlashArray API to track replication performance between two arrays. This is especially useful for DBAs and storage admins, who must ensure their data replication processes run smoothly and efficiently. A typical scenario here is ensuring a snapshot is entirely replicated between sites before kickin...| Anthony Nocentino's Blog
We’re working through the major refresh of my Certified Kubernetes Administrator series at Pluralsight! The next course “Certified Kubernetes Administrator: Performing Cluster Version Upgrades” in the updated series is now available on Pluralsight here! If you want to learn about the course, check out the trailer here, or if you’re going to dive right in, check it out here! This course will teach you the how to perform worker node maintenance and upgrading a Kubernetes cluster using k...| Anthony Nocentino's Blog
This post shows you how to install containerd as the container runtime in a Kubernetes cluster. I will also cover setting the cgroup driver for containerd to systemd, which is the preferred cgroup driver for Kubernetes. In Kubernetes version 1.20 Docker was deprecated as a container runtime in a Kubernetes cluster and support was removed in 1.22. Kubernetes 1.26 requires that you use a runtime that conforms with the Container Runtime Interface (CRI).| Anthony Nocentino's Blog
We’re working through the major refresh of my Certified Kubernetes Administrator series at Pluralsight! The next course “Certified Kubernetes Administrator: Working With Your Cluster” in the updated series is now available on Pluralsight here! If you want to learn about the course, check out the trailer here, or if you’re going to dive right in, check it out here! This course will teach you the first steps in interacting with a Kubernetes cluster using kubectl.| Anthony Nocentino's Blog
We’re kicking off a major refresh of my Certified Kubernetes Administrator series at Pluralsight! The second course “Certified Kubernetes Administrator: Using kubeadm to Install a Basic Cluster” in the updated series is now available on Pluralsight here! If you want to learn about the course, check out the trailer here, or if you’re going to dive right in, check it out here! This course will teach you the fundamentals needed to get using kubeadm to install a basic Kubernetes cluster!| Anthony Nocentino's Blog
We’re kicking off a major refresh of my Certified Kubernetes Administrator series at Pluralsight! The first course “Certified Kubernetes Administrator: Kubernetes Foundations” in the updated series is now available on Pluralsight here! If you want to learn about the course, check out the trailer here, or if you’re going to dive right in, check it out here! This course will teach you the fundamentals needed to get started with Kubernetes!| Anthony Nocentino's Blog
Welcome back to the fourth installment of our blog series on using the Pure Storage PowerShell SDK2. In this post, you’ll learn how to use Purity Tags to classify workloads, giving you the ability to search and manage resources in FlashArray and Cloud Block Store based on the types of workloads you’re running. Using the techniques in this post, combined with those learned in our last post, Using the Pure Storage PowerShellSDK2 - Part 3 - Getting Performance Data from FlashArray you can re...| Anthony Nocentino's Blog
SQL Server 2022 introduces a new feature to enable application-consistent snapshot backups. TSQL Snapshot Backups enable the SQL Server to control the database quiesce without external tools. Using TSQL Snapshot backups enables instantaneous restores, independent of the size of data, for a database, group, or server backups, including point-in-time recovery. When you use this feature, it freezes I/O. You’ll see a record like this in your error log when you execute the command ALTER DATABASE...| Anthony Nocentino's Blog
Welcome back to the third installment of our blog series on using the Pure Storage PowerShell SDK2. In this post, we’ll learn how to retrieve performance data from FlashArray and Cloud Block Store. Here, you’ll uncover the intricacies of extracting performance data across several object types, including Volumes and Hosts. We will dig into the object model that exposes crucial performance insights. Moreover, we’ll delve into the realm of performance analysis, addressing common customer q...| Anthony Nocentino's Blog
Welcome back to the second installment of our series on using the Pure Storage PowerShell SDK2. In this post, we’ll dive into working with object data using Pure Storage PowerShell SDK2. When it comes to manipulating data in PowerShell, the ability to effortlessly pipe objects and their associated data between cmdlets is a game-changer. However, when it comes to Pure Storage PowerShell SDK2, there’s an even more efficient way to handle this.| Anthony Nocentino's Blog
Welcome to our blog series on using the Pure Storage PowerShell SDK2. In this series, we will provide you with practical insights and examples on how to harness the power of the Pure Storage PowerShell SDK2 to enhance your storage management capabilities. Throughout this series, we will cover a wide range of topics, including performance data gathering, snapshot management, performance bottleneck identification, and resource management within your FlashArray and Cloud Block Store.| Anthony Nocentino's Blog
In this blog post, I will show you how to build a hello world container-based web application in the go programming language. The reason I want to do this is because I need a very small container image to do some testing in Kubernetes. I’ll also highlight some of the pitfalls I ran into to hopefully have you some time in your learnings. Let’s build and test it locally first Before you build a container-based application, you need an application.| Anthony Nocentino's Blog
My new course “Securing Azure Kubernetes Service (AKS) Clusters”, co-authored with my good friend and colleague Ben E. Weissman, is now available on Pluralsight here! If you want to learn about the course, check out the trailer here, or if you’re going to dive right in, check it out here! This course completes the learning path, Managing and Orchestrating Containers with Azure Kubernetes Service (AKS), that Ben and I built together.| Anthony Nocentino's Blog
Introduction Purity is the operating environment that runs Pure Storage products like FlashArray and Cloud Block Store. Starting in Purity 6.0, you can assign tags to objects. This post shows you how to perform some basic tagging operations for volumes. What’s a Tag and Why Do I Care? A tag is a key/value pair that can be attached to an object in FlashArray, like a volume or a snapshot. Using tags enables you to attach additional metadata to objects for classification, sorting, and searching.| Anthony Nocentino's Blog
This post introduces you to the Pure Storage FlashArray OpenMetrics Exporter. It shows you how to get started quickly using Docker Compose so you can monitor your Pure Storage FlashArray environment. I implemented this in Docker Compose since that handles all the implementation and configuration steps for you. It specifically configures Prometheus’ data source and a Grafana dashboard for monitoring. Tip: If you’re building a persistent monitoring solution, I suggest using a dedicated Linu...| Anthony Nocentino's Blog
I’m pleased to announce that I will be presenting at this year’s PASS Summit. PASS Data Community Summit 2022 is the year’s largest gathering of data platform professionals in the US. This year I have a pre-conference workshop, a regular session, and a Learning Path session. Let’s dive into each. Pre-Conference Workshop: Become a Hybrid Architect My good friend Ben E. Weissman and I will teach a pre-conference workshop called “Become a Hybrid Architect” in this workshop we will co...| Anthony Nocentino's Blog
In this blog post, I’ve implemented two example environments for using SQL Server 2022’s s3 object integration. One for backup and restore to s3 compatible object storage and the other for data virtualization using Polybase connectivity to s3 compatible object storage. This work aims to get you up and running as quickly as possible to work with these new features. I implemented this in Docker Compose since that handles all the implementation and configuration steps for you.| Anthony Nocentino's Blog
Introduction In this post, I will walk you through how to set up MinIO, so you can use it to work with SQL Server 2022’s s3 object integrations. Working with s3 and SQL Server requires a valid and trusted TLS certificate. This can be a pain for some users and environments. So I’m writing this post so you can get off the ground running with this new feature set in SQL Server 2022.| Anthony Nocentino's Blog
Introducing S3 in SQL Server 2022 S3 compatible object storage integration is a new feature introduced in SQL Server 2022. There are two significant areas where SQL Server leverages this: backup and restore and data virtualization. This article will focus on getting started with using S3 compatible object storage for backups. Now let’s unpack that phrase ‘S3 compatible object storage’ a bit. AWS Simple Cloud Storage Service (S3) is a storage service AWS provides in their cloud.| Anthony Nocentino's Blog
My new course “Deploying and Managing Azure Kubernetes Service (AKS) Networking” is now available on Pluralsight here! If you want to learn about the course, check out the trailer here, or if you’re going to dive right in, check it out here! Azure Kubernetes Service is a platform-as-a-service that provides Kubernetes Services in the Azure Cloud. This course will teach you to design, configure, and manage networking, services, and disaster recovery in Azure Kubernetes Service.| Anthony Nocentino's Blog
Background If you’ve been using Availability Groups, you’re familiar with the replica seeding (sometimes called initializing, preparing or data sychronization) process. Seeding is a size of data operation, copying data from a primary replica to one or more secondary replicas. This is required before joining a database to an Availability Group. You can seed a replica with backup and restore or automatic seeding, each with its own challenges. Regardless of which method you use, the seeding ...| Anthony Nocentino's Blog
My updated course “Configuring and Managing Kubernetes Security” is now available on Pluralsight here! If you want to learn about the course, check out the trailer here, or if you’re going to dive right in, check it out here! This course will teach you the fundamentals needed to configure and manage security in Kubernetes clusters. This course targets IT professionals who design and maintain Kubernetes and container-based solutions. The course can be used by the IT pro learning new skil...| Anthony Nocentino's Blog
My updated course “Maintaining, Monitoring and Troubleshooting Kubernetes” is now available on Pluralsight here! If you want to learn about the course, check out the trailer here, or if you’re going to dive right in, check it out here! This course will teach you to maintain, monitor, and troubleshoot production Kubernetes clusters. This course targets IT professionals who design and maintain Kubernetes and container-based solutions. The course can be used by the IT pro learning new skil...| Anthony Nocentino's Blog
I’m super proud to announce that Ben E. Weissman and I have published Azure Arc-Enabled Data Services Revealed - Second Edition available now at Apress and your favorite online booksellers! Buy the book now or keep reading below if you need to be more convinced :) A couple of notes about the book first, I enjoyed working with this bleeding-edge tech and collaborating with the SQL Server Engineering Team at Microsoft on this.| Anthony Nocentino's Blog
At work, I get to work with some fantastic tech that pushes the boundaries of performance. I needed to do some performance testing from a Windows server into a FlashBlade using s3. I reached out to a colleague of mine, Joshua Robinson, who told me about s5cmd. s5cmd is a very fast, parallel s3 compatible command-line client. Check out Joshua’s post for some performance numbers. Here’s a direct quote from his post.| Anthony Nocentino's Blog
I’m proud to announce that I will be speaking at SQLBits! I had the absolute pleasure of speaking at SQLBits in the past, both in person and virtual, and experienced first hand how great this event is and cannot wait to get back and speak again (in person)! And this year, I have several sessions with some of my best friends on our data community!!! One on building and deploying container based applications in Kubernetes and the other on deploying SQL Server in Kubernetes| Anthony Nocentino's Blog
My updated course “Configuring and Managing Kubernetes Storage and Scheduling” is now available on Pluralsight here! If you want to learn about the course, check out the trailer here, or if you’re going to dive right in, check it out here! This course teaches you how to decouple state and configuration from your Pod’s lifecycle using persistent storage and configuration as data and how to schedule Pods to Nodes in your Kubernetes cluster.| Anthony Nocentino's Blog
This blog post shows you how NTFS stores data, what the NTFS Allocation Unit means, and how SQL Server performs IOs of variable size. How NTFS Stores Data on Disk A Master File Table (MFT) is the data structure that describes files and directories on NTFS. In Figure 1, you can see an MTF record has several sections describing the metadata about the file and pointers to blocks that make up the file.| Anthony Nocentino's Blog
In this post, we’re going to walk through configuring Active Directory authentication for SQL Server on Linux. We will start by joining the Linux server to the domain, configuring SQL Server on Linux to communicate to the domain, and then use adutil to create our AD users and set up Kerberos for SQL Server login authentication. Before getting started First, let’s get some environment requirements set. We’ll need an Active Directory domain, a Linux host to install SQL Server on, some DNS...| Anthony Nocentino's Blog
My updated course “Configuring and Managing Kubernetes Networking, Services, and Ingress” is now available on Pluralsight here! If you want to learn about the course, check out the trailer here, or if you’re going to dive right in, check it out here! It’s time to dig deeper into Kubernetes networking! You will learn Kubernetes cluster networking fundamentals and configuring and accessing applications in a Kubernetes Cluster with Services and Ingress.| Anthony Nocentino's Blog
The intent of this post is a quick reference guide based on the recommendations made on Pure Storage Support page in the Microsoft Platform Guide. The target audience for this blog post is for SQL Server DBAs introducing them to the most impactful configurations and settings for running SQL Server on physical machines on Pure Storage. Physical Host Configuration Check with your hardware vendor to see if they publish a guide for SQL Server-specific configurations for their server platforms.| Anthony Nocentino's Blog
This post is a reference post for retrieving IO statistics for data and log files in SQL Server. We’ll look at where we can find IO statistics in SQL Server, query it to produce meaningful metrics, and discuss some key points when interpreting this data. The Source DMF The primary source for file latency data is the dynamic management function sys.dm_io_virtual_file_stats. The data in this DMF is per file. The query below joins with sys.| Anthony Nocentino's Blog
The intent of this post is a quick reference guide based on the recommendation made in “Architecting Microsoft SQL Server on VMware vSphere” April 2019 version. The target audience for this blog post is for SQL Server DBAs introducing them to the most impactful configurations and settings for running SQL Server in VMware. For the explanations for each of these settings and how to configure the base VMware infrastructure, please read the “Architecting Microsoft SQL Server on VMware vSphe...| Anthony Nocentino's Blog
This post will walk you through setting file permissions on database files copied into a container. The SQL Server process sqlservr running in containers runs as the non-privileged user mssql. The appropriate permissions on files are needed, so the SQL Server process has the proper access to any database files, log files, and backup files. Start up a container First up, let’s start up a container. Here’s we’re starting up SQL Server 2019 CU11 and attaching a Docker data volume for our p...| Anthony Nocentino's Blog
Every once in a while when I’m recording a Pluralsight course, I’ll take a photo of my desk to let people see the behind the scenes of the process. Well, my friend Steve Jones (@way0utwest) encouraged me to write a desk setup post…so here we go! Desk Autonomous SmartDesk 2 - Home Office Most standup desks come at a much higher price point, and this one lands somewhere between $379-$500 depending on the features.| Anthony Nocentino's Blog
By Argenis Fernandez This post is archived here. Pleae reach out to me, Anthony Nocentino if you have any questions. I gotta admit, some of you are really hard to convince. I’ve been saying for years that given a large enough database size (or a really small RTO storage based snapshots should be Plan A for recovering the database in the event of a disaster. Yes, you will have a Plan B, likely native backups.| Anthony Nocentino's Blog
My updated course “Managing Kubernetes Controllers and Deployments” is now available on Pluralsight here! If you want to learn about the course, check out the trailer here or if you want to dive right in check it out here! Learn how to deploy and maintain applications using Kubernetes Controllers. In this course you’ll learn how to select a Controller for your workload, deploy it, and maintain your container-based applications in your Kubernetes cluster.| Anthony Nocentino's Blog
In this blog post, we will walk through a few examples of configuring SQL Server in Kubernetes. First, we will create a Deployment for SQL Server, override the container’s command, and specify a Database Engine Service Startup Option. Second, we will create a Deployment for SQL Server using a ConfigMap to inject an mssql.conf configuration file. Creating a SQL Server Deployment and Overriding the Container’s Command and Arguments First up, let’s create a Deployment for SQL Server and ov...| Anthony Nocentino's Blog
In this blog post, we will walk through a few examples of how to configure SQL Server in Docker Containers. First, we will configure a container at runtime by overriding the default docker command for the container and setting Database Engine Service Startup Options. Second, we’re going to inject a configuration file into our container to configure SQL Server. Let’s go! Starting a Container with a Trace Flag First up, let’s configure a container at runtime using Database Engine Service ...| Anthony Nocentino's Blog
I’m super proud to announce that Ben E. Weissman and I have published SQL Server on Kubernetes – Designing and Building a Modern Data Platform available now at Apress and your favorite online book sellers! Buy the book now…or keep reading below if you need to be more convinced :) A couple of notes about the book, I saw Kubernetes showcased at a Microsoft event a few years back. I immediately saw the value and dedicated time to learning how Kubernetes and SQL Server on Kubernetes works.| Anthony Nocentino's Blog
Limits in Containers Docker gives you the ability to control a container’s access to CPU, Memory, and network and disk IO using resource constraints, sometimes called Limits. You define limits as parameters when creating containers. In its default configuration, a container will have no resource constraints for accessing resources of the host operating system. This post will look at how to configure resource constraints in Docker and look at how SQL Server sees the resources when CPU and Me...| Anthony Nocentino's Blog
I want to start by saying thank you to all who submitted, and an amazing collection of people submitted some fantastic content. Also, thanks to Steve for asking me to host and being patient with me for mixing up the dates and the hashtag. It’s #tsql2sday and it’s on Tuesday not Wednesday :P Now, onto the posts in submission order. Rob Farley – On containers Rob discusses how he uses containers to quickly spin up SQL Server instances without installing them on his local OS, replacing the...| Anthony Nocentino's Blog
In recent years containers have come into the data platform world, exposing new technologies to data professionals. Microsoft put SQL Server in Linux, and shortly after that, SQL Server made its way into containers. SQL Server in Containers has become the foundation for things like Big Data Clusters and Azure Arc-enabled Data Services My invitation to you for this month’s #tsql2sday is… I want to invite you to share your experiences using containers and not just SQL Server in containers…| Anthony Nocentino's Blog
Where I’ve Been Since January 1, 2012 I’ve been the principal consultant at Centino Systems. Jokingly, I refer to myself as The Centino of Systems. I learned a lot of lessons running my own business. Such as how to be a consultant and also how to scale the business even as the only employee/consultant. There’s been ups and downs, successes and failures and I couldn’t be more happy with how things went.| Anthony Nocentino's Blog
Ever need to set your web server a specific protocol version of TLS for web servers and need a quick way to test that out to confirm? Let’s check out how to use curl to go just that. This code here uses curl with the parameters --tlsv1.1 --tls-max 1.1, which will force the max TLS protocol version to 1.1. Using the --verbose parameter gives you the ability to see the TLS handshake and get the output sent to standard out.| Anthony Nocentino's Blog
My updated course “Managing the Kubernetes API Server and Pods” is now available on Pluralsight here! If you want to learn about the course, check out the trailer here or if you want to dive right in check it out here! This course targets IT professionals that design and maintain Kubernetes and container based solutions. The course can be used by both the IT pro learning new skills and the system administrator or developer preparing for using Kubernetes both on premises and in the C...| Anthony Nocentino's Blog
My updated course “Kubernetes Installation and Configuration Fundamentals” is now available on Pluralsight here! If you want to learn about the course, check out the trailer here or if you want to dive right in check it out here! This course targets IT professionals that design and maintain Kubernetes and container based solutions. The course can be used by both the IT pro learning new skills and the system administrator or developer preparing for using Kubernetes both on premises ...| Anthony Nocentino's Blog
I’m super proud to announce that Ben E. Weissman and I have published Azure Arc-Enabled Data Services Revealed available now at Apress and your favorite online booksellers! Buy the book now; or keep reading below if you need to be more convinced :) A couple of notes about the book first, I enjoyed working with this bleeding-edge tech and collaborating with the SQL Server Engineering Team at Microsoft on this. I want to call out the support from our tech reviewer, and Program Managed for Azu...| Anthony Nocentino's Blog
Recently I needed to take a look at all of the SQL Server Agent Jobs and their Jobs Steps for a customer. Specifically, I needed to review all of the Jobs and Job Steps for Ola Hallengren’s Maintenance Solution and look at the Backup, Index Maintenance and Integrity Jobs to ensure they’re configured properly and also account for any customizations and one-offs in the Job definitions. This customer has dozens of SQL Server instances and well, I wasn’t about to click through everything in...| Anthony Nocentino's Blog
Pre-conference Workshop at Data Platform Virtual Summit 2020 I’m proud to announce that I will be be presenting pre-conference workshop at Data Platform Virtual Summit 2020 split into Two four hour sessions on 30 November and 1 December! This one won’t let you down! Here is the start and stop times in various time zones: Time Zone Start Stop EST 5.00 PM 9 PM CET 11.00 PM 3.00 AM (+1) IST 3.| Anthony Nocentino's Blog
The first EightKB back in July was a real blast. Five expert speakers delivered mind-melting content to over 1,000 attendees! We were honestly blown away by how successful the first event was and we had so much fun putting it on, we thought we’d do it again 🙂 The next EightKB is going to be on January 27th 2021 and the schedule has just been announced! Once again we have five top-notch speakers delivering the highest quality sessions you can get!| Anthony Nocentino's Blog
In this post, we will explore how a Pod name is generated, Pod Name lifecycle, how it’s used inside a Pod to set the system hostname, and how the system hostname is used by SQL Server to set its server name metadata. Pod Naming in Deployments When deploying SQL Server in Kubernetes using a Deployment, the Pod created by the Deployment Controller will have a name with a structure of <DeploymentName>-<PodTemplateHash>-<PodID> for example, mssql-deployment-8cbdc8ddd-9n7jh.| Anthony Nocentino's Blog
I’m pleased to announce that I will be presenting at PASS Summit. This year I have a pre-conference workshop and a regular session. Let’s dive into each. Pre-Conference Workshop: The Future of Deployment for Modern Data Platform Applications Ben Weissman and I teach a pre-conference workshop called “The Future of Deployment for Modern Data Platform Applications” in this workshop. We’re going to cover how you will be deploying data platform applications in the near future.| Anthony Nocentino's Blog
My new course “Configuring and Managing Kubernetes Security” is now available on Pluralsight here! Check out the trailer here or if you want to dive right in head over to Pluralsight! This course will teach you to configure and manage security in Kubernetes clusters. This course targets IT professionals that design and maintain Kubernetes and container-based solutions. The course can be used by both the IT pro learning new skills and the system administrator or developer preparing...| Anthony Nocentino's Blog
My new course “Maintaining, Monitoring, and Troubleshooting Kubernetes” is now available on Pluralsight here! Check out the trailer here or if you want to dive right in head over to Pluralsight! This course will teach you to maintain, monitor, and troubleshoot production Kubernetes clusters. This course targets IT professionals that design and maintain Kubernetes and container-based solutions. The course can be used by both the IT pro learning new skills and the system administrato...| Anthony Nocentino's Blog
My new course “Configuring and Managing Kubernetes Networking, Services, and Ingress” is now available on Pluralsight here! Check out the trailer here or if you want to dive right in go here! In this course you will learn Kubernetes cluster networking fundamentals and configuring and accessing applications in a Kubernetes Cluster with Services and Ingress. This course targets IT professionals that design and maintain Kubernetes and container-based solutions. The course can be used ...| Anthony Nocentino's Blog
My new course “Designing a Site Recovery Strategy on Microsoft Azure” in now available on Pluralsight here! Check out the trailer here or if you want to dive right in go here! This course targets IT professionals that design and maintain business continuity and disaster recovery solution, on premises or in the cloud.The course can be used by both the IT pro learning new skills and the system administrator or architect preparing for Microsoft Azure Architect Design (AZ-301) and upc...| Anthony Nocentino's Blog
I’m proud to announce that I will be speaking at PSConf EU 2020 in Hannover, Germany. The conference runs from 2 June 2020 to 5 June 2020 and brings together some of the titans of the PowerShell community and members of the PowerShell team from Microsoft. <p> This is an incredible event packed with fantastic, deep dive content. <a href="https://psconf.eu/schedule">Check out the amazing schedule</a>! Head on over to the site and <a href="https://psconf.| Anthony Nocentino's Blog
I’m proud to announce that I will be speaking at Data Grillen 2020 the conference runs from 28 May 2020 through 29 May 2020. This is an incredible event packed with fantastic content, speakers, bratwurst and Beer! **Check out the amazing schedule (**and when I say check out the amazing schedule, I really mean it. Some of the world’s best Data Platform speakers are going to be there) On Thursday**, May 28th at 15:00** – I’m presenting “Containers – Day 2” in the Handschuh...| Anthony Nocentino's Blog
I’m proud to announce that I will be speaking at PowerShell + DevOps Global Summit 2020 the conference runs from April 27th through April 30. This is an incredible event packed with fantastic content and speakers. Check out the amazing schedule! All the data you need on going is in this excellent brochure right here! <p> This year I have two sessions! </p> <p> On Wednesday<strong>, April 29th at 09:00AM</strong> – I’m presenting “<a href="https://sessions.| Anthony Nocentino's Blog
I’m proud to announce that I will be speaking at SQLBits! I had the absolute pleasure of speaking at SQLBits last year for the first time and saw first hand how great this event is and cannot wait to get back and speak again! And this year, I have two sessions!!! One on building and deploying container based applications in Kubernetes and the other on deploying SQL Server in Kubernetes If you haven’t been to SQLBits before, what are you waiting for!| Anthony Nocentino's Blog
I’m very pleased to announce that I will be speaking at SQL Intersection April 2020! This is my first time speaking at SQL Intersection and I’m very excited to be doing so! <p> Speaking at SQL Intersection means so much to me because in 2014 I got my first exposure to the SQL Server community via <a href="https://www.sqlskills.com/">SQLskills</a> and their training. Then to follow up on their training workshops I attended my very first IT conference, SQL Intersection and now I get to come...| Anthony Nocentino's Blog
My new course “Configuring and Managing Kubernetes Storage and Scheduling” in now available on Pluralsight here! Check out the trailer here or if you want to dive right in go here! This course offers practical tips from my experiences managing Kubernetes Clusters and workloads for Centino Systems clients. This course targets IT professionals that design and maintain Kubernetes and container based solutions.The course can be used by both the IT pro learning new skills and the system...| Anthony Nocentino's Blog
Yesterday in this post I described a method to correct permissions when upgrading a SQL Server 2017 container using Data Volumes to 2019’s non-root container on implementations that use the Moby or HyperKit VM. My friend Steve Jones’ on Twitter wondered if you could do this in one step by attaching a shell (bash) in the 2017 container prior to shutdown. Absolutely…let’s walk through that here in this post. I opted to use an intermediate container in the prior post out of an abundance...| Anthony Nocentino's Blog
Recently Microsoft released a Non-Root SQL Server 2019 container and that’s the default if you’re pulling a new container image. But what if you’re using a 2017 container running as root and want to upgrade your system the SQL Server 2019 container…well something’s going to break. As you can see here, my friend Grant Fritchey came across this issue recently and asked for some help on Twitter’s #sqlhelp. This article describe a solution to getting things sorted and running again.| Anthony Nocentino's Blog
I’m very pleased to announce that I will be speaking at PASS Summit 2019! This is my second time speaking at PASS Summit and I’m very excited to be doing so! What’s more, is I get to help blaze new ground with an emerging technology,** Kubernetes and how to run SQL Server in Kubernetes**! My session is “Inside Kubernetes – An Architectural Deep Dive” if you’re a just getting started in the container space and want to learn how Kubernetes works and dive into how to deploy SQL...| Anthony Nocentino's Blog
Let’s get you started on your Kubernetes journey with installing Kubernetes and creating a cluster in virtual machines. Kubernetes is a distributed system, you will be creating a cluster which will have a master node that is in charge of all operations in your cluster. In this walkthrough we’ll create three workers which will run our applications. This cluster topology is, by no means, production ready. If you’re looking for production cluster builds check out Kubernetes documentation.| Anthony Nocentino's Blog
People often ask me what’s the number one thing to look out for when running SQL Server on Kubernetes…the answer is memory settings. In this post, we’re going to dig into why you need to configure resource limits in your SQL Server’s Pod Spec when running SQL Server workloads in Kubernetes. I’m running these demos in Azure Kubernetes Service (AKS), but these concepts apply to any SQL Server environment running in Kubernetes.| Anthony Nocentino's Blog
Recently I needed to write a PowerShell script that could build a backup set from a collection of backups stored in Azure Blob Storage without any backup history available from MSDB. And as with all things SQL Server and PowerShell related I went straight to dbatools.io to see if Restore-DbaDatabase was up to the task…and of course, it is…let’s talk about how I solved this challenge. When restoring from Azure Blob, the main challenge you have is accessing the blobs and building a backup...| Anthony Nocentino's Blog
When working with SQL Server running containers the Error Log is written to standard out. Kubernetes will expose that information to you via kubectl. Let’s check out how it works. If we start up a Pod running SQL Server and grab the Pod name kubectl get pods NAME READY STATUS RESTARTS AGE mssql-deployment-56d8dbb7b7-hrqwj 1/1 Running 0 22m We can use follow flag and that will continuously write the error log to your console, similar to using tail with the -f option.| Anthony Nocentino's Blog
My new course “Managing Kubernetes Controllers and Deployments” in now available on Pluralsight here! Check out the trailer here or if you want to dive right in go here! This course offers practical tips from my experiences managing Kubernetes Clusters and workloads for Centino Systems clients. <div> </div> <p> This course targets IT professionals that design and maintain Kubernetes and container based solutions.The course can be used by both the IT pro learning new skills and the ...| Anthony Nocentino's Blog
Pre-conference Workshop at SQLSaturday Denver I’m proud to announce that I will be be presenting an all day pre-conference workshop at SQL Saturday Denver on October 11th 2019! This one won’t let you down! The workshop is **“Kubernetes Zero to Hero – Installation, Configuration, and Application Deployment” ** <p> <strong>Here’s the abstract for the workshop</strong> </p> </div> <div> <blockquote> <p> Modern application deployment needs to be fast and consistent to keep up with...| Anthony Nocentino's Blog
So, if you’ve been following my blog you know my love for internals. Well, I needed to find out exactly how something worked at the startup of a SQL Server process running inside a docker container and my primary tool for this is strace, well how do you run strace against processes running in a container? I hadn’t done this before and needed to figure this out…so let’s go through how I pulled this off.| Anthony Nocentino's Blog
A quick post about pulling docker containers (this applies to docker run too)…when specifying the container image, the container image name and tag are case sensitive. We’re not going to discuss how much time troubleshooting it too me to figure this out…but let’s just say it’s more than I care to admit publicly. In this code you can see I’m specifying the following image and tag server:2019-rc1-ubuntu (notice the lowercase rc in the tag)| Anthony Nocentino's Blog
In the first two posts in this series we discussed the need for data persistency in containers then we discussed where the data actually lives on our systems. Now let’s look at specifying the location of the data on the underlying file system of the base OS. This is the third post in a three part series on Persisting SQL Server Data in Docker Containers. The first post introducing Docker Volumes is here.| Anthony Nocentino's Blog
So in my previous post, we discussed Docker Volumes and how they have a lifecycle independent of the container enabling us to service the container image independent of the data inside the container. Now let’s dig into Volumes a little bit more and learn where Docker actually stores that data on the underlying operating system. This is the second post in a three part series on Persisting SQL Server Data in Docker Containers.| Anthony Nocentino's Blog
What’s the number one thing a data professional wants to do with their data…keep it around. Let’s talk about running SQL Server in Containers using Docker Volumes on a Mac This is the first post in a three part series on Persisting SQL Server Data in Docker Containers. The second post on where Docker actually stores your data is here. And the third post on mapping base OS directories directly into containers is here.| Anthony Nocentino's Blog
Today, I’m proud to announce that I have been renewed as an Microsoft MVP – Data Platform for the 2019-2020 award year, my third MVP award. This is an truly an honor and I’m humbled to be included in this group of exceptional data professionals. I really look forward to continuing to work with everyone in the MVP community and continuing to contribute to our unmatched Data Platform Community! ****| Anthony Nocentino's Blog
Speaking at SQLSaturday Dallas! I’m proud to announce that I will be speaking at SQL Saturday Dallas on May 17th 2018! This one won’t let you down! Check out the amazing schedule! <p> If you don’t know what SQLSaturday is, it’s a whole day of free SQL Server training available to you at no cost! </p> <p> If you haven’t been to a SQLSaturday, what are you waiting for! <a href="https://www.| Anthony Nocentino's Blog
Pre-conference Workshop at SQLSaturday Baton Rouge I’m proud to announce that I will be be presenting an all day pre-conference workshop at SQL Saturday Baton Rouge on August 16th 2019! This one won’t let you down! The workshop is **“Kubernetes Zero to Hero – Installation, Configuration, and Application Deployment” ** <p> <strong>Here’s the abstract for the workshop</strong> </p> </div> <div> <blockquote> <p> Modern application deployment needs to be fast and consistent to kee...| Anthony Nocentino's Blog
New Pluralsight Course – Managing the Kubernetes API Server and Pods My new course “Managing the Kubernetes API Server and Pods” in now available on Pluralsight here! Check out the trailer here or if you want to dive right in go here! This course offers practical tips from my experiences managing Kubernetes Clusters and workloads for Centino Systems clients. <p> This course targets IT professionals that design and maintain Kubernetes and container based solutions.The course can ...| Anthony Nocentino's Blog
Last week I purchased a shiny new MacBook Air with an M2 processor. After I got all the standard stuff up and running, I set out to learn how to run SQL Server containers on this new hardware. This post shows you how to run SQL Server on Apple Silicon using colima.| www.nocentino.com