Sign up for Exclusive SQL Server Performance Tuning Tips
You succesfully subscribed on the Red9 mail list!
The same tips we use to double
our clients SQL Server speed
Azure Stack Summary
Today I watched Ultan Kinahan (from Microsoft Global Black Belt Consulting team) presentation on Azure Stack.
Short summary – it blew my mind.
It reminded how powerful Microsoft really is. And how advanced things are. And that really not many competitors have resources or capacity to build cool stuff like this.
Before today, I had no idea you can run Azure on premises.
Yep. Say you have requirement that data can never leave premises. But you want to take advantage of all coolness from Azure. Well now you can!
Below are some of the random notes I scriblled while listening to presentation.
Azure Stack is an extension of Azure which you can run on-premises.
– there are 50 Azure regions
– Azure services are available on-premises. There is a lot of services that are in development, just haven’t been announced yet.
– Data Lake – 10,000 servers
– Smallest services is Azure backup takes 38 servers to run. Its changing to 12 servers soon.
– Moving Container services to Kubernetes – this is new way to do containers??
– Azure Stack has its own marketplace. Each partner that gets accepted, agrees to support their offering in regular Azure and in Azure Stack (on-premises)
Use Azure Stack for:
– local data processing
Azure Stack use cases:
– oil rigs
– on back of Humvees for military
– space & SpaceX
Regulations to consider:
You can deploy Azure Stack in two ways:
– connected to internet
– disconnected – never connected to anything. You can run this completely disconnected from anything in the world
Azure Stack Competitors:
AWS is dabling with something similar. AWS competing product is GreenGrass. However, its going to be pretty hard for them, because they don’t own software products it takes to run this end to end.
Google doesn’t have any competing offers for on premises.
Azure.com – is single source of truth.
Differences between Azure and Azure Stack:
– API versions (most will never be same)
– capabilities (adding a lot more scale, storage, services, etc)
– content (marketplace, a lot of stuff in the pipeline)
Which to developer means: you now have to deploy to two end-points. There are customers that already have 14 different Azure Stacks.
Azure Stack Policy Pack – you can apply to your Azure subscription (sounds like its easier to spin up a new subscription vs. fixing existing one?)
Right now they test on all OEM kits, before new service?? goes live.
Two ways to purchase Azure Stack
– system you manage
– managed service
Cheapest Azure Stack you can get today is 4 node one, it will cost between $150K to $400K. 12 node – goes for up to $1MM.
You can not re-purpose any hardware you have today for Azure Stack.
Because things inside are very specialized. Almost like appliance.
Support is integrated into MS. When needed goes to OEMs.
Hardware pieces a single Azure Stack unit consists of: (this is called Scale Unit🙂
– redundant power supply
– switches (40GnE
– management switch
– Hardware Lifecycle Host (HLH) – monitoring, alerting, updates
– the rest are servers: 4 servers minimum. 16 max. All servers are EXACTLY same
– The unit is optimized for specific purpose
LRS – local redundant storage
Managing customer network is challenging.
Partners today that can build Azure Stack units are:
As an example, it took 20 minutes to deploy 80 VM, and 28min on Azure Stack for one of the recent customer. In comparison it used to take abou 6 weeks for that customer to spin that many machines up before.
When to use what?
– Azure with Policy
– Azure Stack Development Kit – to update you have to completely burn and re-deploy basically
– Azure Stack OEM Solution
What is for:
– First consistent Hybrid Cloud Platform
– integrated system with Iaas and PaaS
– Regularly updated to Azure-consistency
– Truly open and flexible (just like azure)
What its not for:
– Basic Virtualization-replacement solution
– DYI infrastructure
– static system you deploy and forget
– .NET/Win only
As admin you are now change roles – you have to guard capacity of the box.
Admin sets Quotas.
One nice feature, is you can price services out to and then charge your internal users.
Azure Stack Pricing
SQL/mysql is just connector
Currently working on designing how to deploy SQL Server
They are now modeling how they going to bring in SQL Server into Azure Stack
Mark Questions / thoughts:
– can sysadmin able to rdp to a certain Server – answer is no. each server is on Win Core.
– how do you get a test box to play around with? Because it seems that after you buy this, you going to want to test things out. And not necessarily on your prod Azure Stack.
– licensing – didn’t understand how things are priced if you want to install SQL server on Azure Stack. Is license extra, same??
Azure Stack reminded me what mainframes were. It seems a bit like aBetterServer or Server v2. Now – it’s a closet with a ton of hardware. Expensive. Big. Heavy. Only big customers can afford it.
You have to agree – mainframes have some similarities. But if this offering gets popular, then price, weight, size will start to shrink.
And Azure Stack can be easily become new type of “server v2” where parts are redundant, plugged into cloud. If you think about it, the way server should be…if you were building one from scratch today.
Here are few notes I took at SQLSaturday Atlanta about Azure SQL Managed Instances
Today there are two managed db options in Azure:
Azure SQL database
– Simple, easy
– most things are managed like backups, but which may be a problem if you want to log ship, migrate out, or do something more advanced.
– backups fully managed
– sql agent dont exists
– no cross db communication
– cant power down (so you cant stop billing)
– cant restore native backups
– to import into Azure SQL – you have to use Tasks -> Export -> script out all objects
Use case that works well:
– when building new app
– limitations make migrating existing apps close to impossible (that means no big clients will go here for existing heavy dbs)
Azure SQL Managed Instance
– provides the best of both of the past offerings
– infrastructure managed by Azure (not sure this is good, because now I don’t know if Azure set Lock pages in memory, maintenance volume GPOs on, or power savings are set to Balanced mode. All I can do is to just trust them)
– no more Win or SQL patching – thats good, but it doesnt seem like I can chose when this auto patching happens and I have heard SQL going down in mid business day because Azure figured its time to patch yours up
– supports multiple dbs
– cross db communication supported
– SQL Agent available
– Lift & shift migrations possible
– Backups managed by azure
– COPY_ONLY backups can be run by ad hoc
– 98% of features there (not convinced its really 98%, or closer to like 85%)
– June/July when Managed instance should become available
– if you have core licenses already, you can migrate them (kind of) to Azure
– if you have MS contact/manager, you can let them know and he can help expedite this
– Some features not available
– limited to SQL Authentication. No Active Directory. Yeah, this one is big one. Don’t remember right this sec where this will be a problem, but I am pretty sure this can be pretty big issue. Or maybe there are work around all of them now?
– currently in preview – only in General Purpose tier available. as of May 19, 2018, in limited public preview, so you cant get this yet
– cant shut this down (so billing keeps on ticking)
– in memory file groups must be empty in preview
– Initial build currently takes ~24h – additional builds in the same subnet takes 3min. Not super bad, compared to what usually takes to get new server provisioned.
– HA is built in and cannot be controlled
– password has to be min 16 characters long 🙂 – Microsoft should make this 25, because at this point number of people typing passwords in is decreasing, so why not make max a default
– azure vnet – i like this one. makes me want to do this everywhere to just separate traffic from netflix vs. stuff I care about.
– subnet and routing list
– additional subnet for Azure VM connecting to managed instance
– restore from native backup written to Azure Blob Storeage
– Azure Migrate available for VMWare environments
– MS plans to make Azure Migrate available for on-prem and Hyper-V environments
Questions I have:
1. Noisy neighbors – we ran into weird performance problems in Amazon AWS. You buy an EC2 server and on daily basis your performance fluctuates. But nothing changed on our end. Why?
After I get AWS support cornered/escalated, they go – “well it can be what else is going on that physical server and what everyone else is doing.” Umhhh… yeah, not cool. I get I on shared box, but I also get that I bought my CPU cores, RAM, etc – don’t care about what virtual neighbors need.
It just same as if you rented an apartment, one day you come back and find couple people inside, because complex decide to airbnb your space while you went to the mall.
I bought my space – and I don’t want anyone there. Doesn’t sound nice, but that’s exactly what I want on the server.
Anyway, point is this that there will be multiple managed instances on same physical server. So having a high fence around my server to prevent my resources being sucked out by other knuckleheads is important. I would like to see more data on how Microsoft Azure will handle this noisy neighbors. They probably thought this through, but I need data.
2. What does storage/disk IO throughput look like?
3. Does it make sense to keep splitting db into multiple filegroups, files to get more throughput? Does it make sense to have multiple db files in blob storage and how does that affect performance?
4. Emailing out. How do we handle emailing out from server? I like to get some reports/alerts, so yeah, I am going to need to email out.
5. Do I have any access into OS? I think the answer is No, but still would like to ask. Can I see read only?
6. What other Azure resources are needed to launch this for small setup?
7. If I need to schedule PowerShell script to run, can I do that? And no, not SQL PS, but real full feature PowerShell…
How do you change SQL Server ERRORLOG location?
You can check sql error log path in a few ways:
1. Use TSQL
2. Use SQL Configuration Manager
3. Use EventViewer
Here’s a comprehensive list of Database blogs that scour the Internet with a fine-toothed set of queries to compile the most informative posts about Database.
Congratulations to all the bloggers who made it to the list! Continue reading “Database Blogs – Top 20 List”
Some clients want a FULL SQL Health Check, while some only want to go deep on analysis for a SINGLE database.
This is a SINGLE database health check.
Even though it’s a single db health analysis, we still check for some server/instance level items. That’s intentional. Continue reading “55 Point SQL Server DATABASE Health Check Checklist”
How’d you like to see my secret stash of untapped SQL Server tuning items I personally use when setting up new SQL Servers to make them go faster and be more reliable?
Well consider yourself very lucky… Continue reading “The Guide: SQL Server Installation Checklist (settings that increase SQL Server Performance)”
Get Exclusive SQL Performance Tips
Learn how to get more speed from your SQL Server with exclusive tips and insights that we only share with our best clients.
Please enter your e-mail address to get the best tips
Your message was sent. Thank you!