Reliable, Repeatable, Configurable & Automated Validation with

Slides:



Advertisements
Similar presentations
James Boother Blog: INTRODUCTION TO POWERSHELL.
Advertisements

Esri UC 2014 | Demo Theater | Using ArcGIS for Server in the Microsoft Azure Cloud Nikhil Shampur.
Remote Service Solutions ATS 8550
Maintaining a Mirrored Database Tips and Tricks by Paul G. Hiles.
Microsoft SharePoint Server 2010 for the Microsoft ASP.NET Developer Yaroslav Pentsarskyy
Database Change Management One solution to an often complex problem Kevin Hurwitz Headspring Systems
4/24/2017 © 2014 Microsoft Corporation. All rights reserved. Microsoft, Windows, and other product names are or may be registered trademarks and/or trademarks.
1 Chapter Overview Defining Operators Creating Jobs Configuring Alerts Creating a Database Maintenance Plan Creating Multiserver Jobs.
Microsoft Management Seminar Series SMS 2003 Change Management.
Azure Automation Tao Yang & Pete Zerger ARC311 Microsoft Ignite 2015
Adxstudio Portals Training
Copyright © New Signature Who we are: Focused on consistently delivering great customer experiences. What we do: We help you transform your business.
Inspirirani ljudima. Ugasite mobitele. Hvala.. Paolo Pialorsi Senior Consultant PiaSys ( Publishing apps for SharePoint 2013 on Microsoft.
Rob Sewell Making PowerShell Useful Real-Life Examples of Powershell in Action Slides available here -
Using Power BI with my DBA Database
Stress Free Deployments with Octopus Deploy
Turning Your Checklists
Fun with Reporting Services Tools
[+] Title Should Be 'Introduction to Pester‘ 89ms
Simplifying XEvents Management with dbatools
Administrating SQL Server with PowerShell dbatools
Solving ETL Bottlenecks with SSIS Scale Out
Reliable, Repeatable, Configurable & Automated Validation with
Administrating SQL Server with PowerShell dbatools
Universal SQL Installations Framework (Script review and Demo)
dbatools! The reason to finally start learning and using Powershell
Making PowerShell Useful
dbachecks! DBA Checklists: Reliable, Repeatable, & Automated
Administrating SSRS without boring web based clicks!
Making PowerShell Useful
Re-Indexing - The quest of ultimate automation
Use PowerShell & dbatools to Manage your SQL Server Environment
Chrissy LeMaire, MVP & Rob Sewell, MVP
dbatools - PowerShell and SQL Server Working Together
Unit testing for your database infrastructure
SQL Server and PowerShell Let’s Get Serious
Work Smarter Not Harder
dbatools! The reason to finally start learning and using Powershell
PowerShell & PowerBi Reducing DBAs Context Switching
Making PowerShell Useful
PowerShell & PowerBi Reducing DBAs Context Switching
PowerShell & PowerBi Reducing DBAs Context Switching
Making PowerShell Useful
SQLSERVER:\ Using the SQL Server Provider with PowerShell
Automating the install and upgrade of SQL scripts
PowerShell & PowerBi Reducing DBAs Context Switching
Commands for SQL Server
PowerShell SQL Server I will be tweeting links as we go
The 6 P’s Powershell Profile Prepares Perfect Production Purlieu
JENKINS TIPS Ideas for making your life with Jenkins easier
The 6 P’s Powershell Profile Prepares Perfect Production Purlieu
Real World Scrum with TFS & VSTS / Azure DevOps
The 6 P’s Powershell Profile Prepares Perfect Production Purlieu
Administrating SQL Server with PowerShell dbatools
Test and Verify Instances with DBAchecks
Reliable, Repeatable, Configurable & Automated Validation with
Use PowerShell & dbatools to Manage your SQL Server Environment
HCL’s Viewpoint – DevOps on MS Cloud
Administrating SQL Server with PowerShell dbatools
dbatools! The reason to finally start learning and using Powershell
Michael Wall Senior DBA, Great Western Malting
Managing and monitoring SQL Server on Linux from the command line
Using Dbatools to Automate Database Migrations
The Future of Database Development
What it is and why you should use it
The Future of Database Development
Database Testing Adam Anderson
The Future of Database Development (with containers)
The DBA Quit and now you’re it:
Life Hacks: dbatools Edition
Presentation transcript:

Reliable, Repeatable, Configurable & Automated Validation with PowerShell dbachecks Rob Sewell @sqldbawithbeard https://sqldbawithAbeard.com

Speaker Questionnaire Name : Rob Occupation : DBA, Automator, Do-er, Trainer Interests : PowerShell, Automation And SQL (PaaS geddit?) Interesting Fact : Beard. (Still) Plays Cricket, Flies Drone Speaker : SQL Saturdays, SQL Relay, PowerShell Events Community : SQL South West , SQL Sat Exeter , PowerShell VG, PowerShell Conference EU Organiser, dbareports, dbatools, dbachecks, MVP

Quick Poll Contact Me robsewellsqldba @sqldbawithbeard RobSewell.info sqldbawithAbeard.com RobSewell.info mrrobsewell@outlook.com

Check Lists Photo by Glenn Carstens-Peters on Unsplash

What is Pester? Test Runner for PowerShell A Unit Testing Framework An Infrastructure Testing Framework https://github.com/pester https://www.youtube.com/watch?v=lNCR5yLSwi0 -- Test your Powershell with Pester and PSScriptAnalyzer “Untested Code is Broken Code” Infrastructure Testing with Pester - https://www.youtube.com/watch?v=zSEK74_fsLw Pester is a unit-testing framework for PowerShell, and perhaps the first open-source software product that ships with Windows itself! Author Adam Bertram will walk you through the Pester philosophy, syntax, and numerous real-world examples in this "Agile-published" book. The Pester Book https://leanpub.com/creatinghtmlreportsinwindowspowershell https://leanpub.com/powershell-scripting-toolmaking https://leanpub.com/pesterbook

Pester Writing Pester Tests for one SQL instance is easy once you “get” Pester Writing slightly different Pester Tests for slightly different instances is copy and paste

Pester Writing slightly different Pester Tests for slightly different instances is copy and paste It is possible to parameterize Pester tests (but not so easy to say!)

Challenges & Goals

Consider Your SQL Environment

Consider Your SQL Environment PRODUCTION No SA account Backup Compression FULL Recovery Secure Backup Location Agent Alerts Production Agent Jobs Only Certain Production AD Groups allowed And much more

Consider Your SQL Environment TEST Different Backup Strategy Test Agent Jobs Needs the Testers AD Groups And much more

Consider Your SQL Environment Development Simple Recovery No Agent Jobs Definitely no Production AD Information SA Account And much more

Consider Your SQL Environment Widget One Global view of one ‘widgets’ environments might be needed for Project Managers Team Leaders Release Managers Agile Teams

Consider Your SQL Environment Special Snowflakes For those ‘special’ SQL Servers that don’t fit in the usual boxes I.E. SharePoint

Challenge - Output DBAs may need output instantly

Challenge - Output DBAs may want to automate and integrate with other solutions (DevOps, Daily Checks, Incident Response, Maintenance Windows)

Challenge - Output Management want output they understand – (and with pretty interactive pictures !)

Our Goal Create redistributable, easily configurable Pester tests using industry leaders checklists Enable output to suit the requirements of different types of end users human and machine

Recommende d Minimum System Requirements Client Client PowerShell v4 Modules dbatools Pester PSFramework Client PowerShell v5.1 Server Everything dbatools supports From SQL2000 to SQL vNext

Installation is easy PowerShell Gallery Install-Module dbachecks Install-Module dbachecks –Scope CurrentUser * Automatically installs required modules

Need an offline install? Save-Module dbachecks, dbatools, Pester, PSFramework

What Checks Are Available? Use Get-DbcCheck PowerShell > Get-DbcCheck

What Checks Are Available? Use Get-DbcCheck

What Checks Are Available? Use Get-DbcCheck

What Configs Are Available? Use Get-DbcConfig PowerShell > Get-DbcConfig

What Configs Are Available? Use Get-DbcConfig

What Configs Are Available? Use Get-DbcConfig

How Do I Run A Check? PowerShell > Invoke-DbcCheck –SqlInstance ROB-XPS –Check FailedJob

Invoke-DbcCheck – Run A Check

Configurations? > # Set the instances to check > Set-DbcConfig -Name app.sqlinstance Rob-XPS > Invoke-DbcCheck -Check OlaInstalled

Configurations? I don’t have Ola installed in the default database (master) > Set-DbcConfig -Name policy.ola.database -Value DBA-Admin > Invoke-DbcCheck -Check OlaInstalled

Configurations? I don’t have Ola installed in the default database (master) > Set-DbcConfig -Name policy.ola.database -Value DBA-Admin > Invoke-DbcCheck -Check OlaInstalled

Configurations?

Export-DbcConfig/Import-DbcConfig Export-DbcConfig –Path C:\Users\Beard\git\PesterConfigs\Application1_PROD.json Export-DbcConfig -Path C:\Users\Hair\git\PesterConfigs\Client1_System2_Quick.json Import-DbcConfig -Path Git:\PesterConfigs\Application1_PROD.json Invoke-DbcCheck Import-DbcConfig -Path Git:\PesterConfigs\Client1_System2_Quick.json

Start-DbcPowerBi Import-DbcConfig –path Git:\PesterConfigs\App1_Dev.json Invoke-DbcCheck -Show Summary -PassThru | Update-DbcPowerBiDataSource –Environment Development Import-DbcConfig –path Git:\PesterConfigs\App1_Test.json Invoke-DbcCheck -Show Summary -PassThru | Update-DbcPowerBiDataSource –Environment Test Import-DbcConfig –path Git:\PesterConfigs\App1_PROD.json Invoke-DbcCheck -Show Summary -PassThru | Update-DbcPowerBiDataSource –Environment Production Start-DbcPowerbi

Start-DbcPowerBi

Got your own Checks? Set-DbcConfig –Name app.checkrepos –Value ‘Path To PesterTests’

Hey Beardy ! MUST BE TIME FOR A DEMO

Questions? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? Rob Sewell @sqldbawithbeard https://sqldbawithAbeard.com

Just like Jimi Hendrix … We love to get feedback Please complete the session feedback forms

Quick Poll Contact Me robsewellsqldba @sqldbawithbeard RobSewell.info sqldbawithAbeard.com RobSewell.info mrrobsewell@outlook.com