Azure VM'lerinde SQL Server için SQL en iyi yöntemler değerlendirmesi
Şunlar için geçerlidir: Azure VM'de SQL Server
Azure portalının SQL en iyi yöntemler değerlendirme özelliği olası performans sorunlarını tanımlar ve Azure Sanal Makineler'de (VM' ler) SQL Server'ınızın SQL Değerlendirme API'sinin sağladığı zengin kural kümesini kullanarak en iyi yöntemleri izleyecek şekilde yapılandırıldığını değerlendirir.
Daha fazla bilgi edinmek için SQL en iyi yöntemler değerlendirmesiyle ilgili bu videoyu izleyin:
Genel bakış
SQL en iyi yöntemler değerlendirme özelliği etkinleştirildikten sonra, dizinler, kullanım dışı özellikler, etkin veya eksik izleme bayrakları, istatistikler vb. için öneriler sağlamak üzere SQL Server örneğin ve veritabanlarınız taranır. Öneriler, Azure portalının SQL VM yönetim sayfasına gösterilir.
Değerlendirme sonuçları, Azure İzleyici Aracısı (AMA) kullanılarak Log Analytics çalışma alanınıza yüklenir. AMA uzantısı, henüz yüklenmemişse SQL Server VM'sine yüklenir ve DCE, DCR gibi AMA kaynakları oluşturulur ve belirtilen Log Analytics çalışma alanına bağlanır.
Değerlendirme çalışma süresi, ortamınıza (veritabanı sayısı, nesne vb.) bağlıdır ve süresi birkaç dakikadan bir saate kadardır. Benzer şekilde, değerlendirme sonucunun boyutu da ortamınıza bağlıdır. Değerlendirme, örneğinize ve bu örnekteki tüm veritabanlarına karşı çalışır. Yaptığımız testte, bir değerlendirme çalıştırmasının makine üzerinde %5-10'a kadar CPU etkisi olabileceğini gözlemledik. Bu testlerde değerlendirme, SQL Server'da TPC-C benzeri bir uygulama çalışırken gerçekleştirilir.
Önkoşullar
SQL en iyi yöntemleri değerlendirme özelliğini kullanmak için aşağıdaki önkoşullara sahip olmanız gerekir:
- SQL Server VM'nizin SQL Server IaaS uzantısına kayıtlı olması gerekir.
- Değerlendirme sonuçlarını karşıya yüklemek için SQL Server VM'nizle aynı abonelikte yer alan bir Log Analytics çalışma alanı.
- SQL Server 2012 veya üzeri.
İzinler
SQL en iyi yöntemler değerlendirmelerini etkinleştirmek için aşağıdaki izinlere ihtiyacınız vardır:
- Temel alınan sanal makine kaynağında sanal makine katkıda bulunanı .
- SQL sanal makineleri kaynağında sanal makine katkıda bulunanı .
- Log Analytics çalışma alanını içeren kaynak grubunda Log Analytics Katkıda Bulunanı .
- Azure İzleyici Aracısı kaynaklarının oluşturulduğu kaynak grubundaki okuyucu . SQL en iyi yöntemler değerlendirme özelliğini etkinleştirdiğinizde kaynak grubunun yapılandırma seçeneğini işaretleyin.
Etkinleştir
Azure portalını veya Azure CLI'yı kullanarak SQL en iyi yöntemler değerlendirmelerini etkinleştirebilirsiniz.
Azure portalını kullanarak SQL en iyi yöntemler değerlendirmelerini etkinleştirmek için şu adımları izleyin:
- Azure portalında oturum açın ve SQL sanal makineleri kaynağınıza gidin.
- Ayarlar'ın altında SQL en iyi yöntemler değerlendirmeleri'ne tıklayın.
- Yapılandırma sayfasına gitmek için SQL en iyi yöntemleri değerlendirmelerini veya Yapılandırmayı etkinleştir'i seçin.
- SQL en iyi yöntemleri değerlendirmelerini etkinleştir kutusunu işaretleyin ve aşağıdakileri sağlayın:
- Değerlendirmelerin yüklendiği Log Analytics çalışma alanı . Açılan listeden abonelikte var olan bir çalışma alanını seçin.
- Azure İzleyici Aracısı kaynaklarının DCE ve DCR oluşturulacağı bir kaynak grubu seçin. Aynı kaynak grubunu birden çok SQL Server VM'sinde belirtirseniz, bu kaynaklar yeniden kullanılır.
- Çalıştırma zamanlaması. Değerlendirmeleri isteğe bağlı olarak veya bir zamanlamaya göre otomatik olarak çalıştırmayı seçebilirsiniz. Bir zamanlama seçerseniz sıklık (haftalık veya aylık), haftanın günü, yinelenme (1-6 haftada bir) ve değerlendirmelerinizin başlaması gereken günün saatini (yerelden VM'ye) sağlayın.
- Değişikliklerinizi kaydetmek için Uygula'yı seçin ve Azure İzleyici Aracısı'nı SQL Server VM'nize dağıtın (henüz dağıtılmadıysa). Azure portalı bildirimi, SQL Server VM'niz için en iyi SQL yöntemleri değerlendirme özelliği hazır olduğunda size bildirir.
SQL Server VM'lerini değerlendirme
Değerlendirmeler çalıştırılır:
- Zamanlamaya göre
- İsteğe bağlı
Zamanlanmış değerlendirmeyi çalıştırma
Azure portalını ve Azure CLI'yı kullanarak değerlendirmeyi bir zamanlamaya göre yapılandırabilirsiniz.
Yapılandırma bölmesinde bir zamanlama ayarlarsanız, değerlendirme otomatik olarak belirtilen tarih ve saatte çalıştırılır. Değerlendirme zamanlamanızı değiştirmek için Yapılandırma'yı seçin. Yeni bir zamanlama sağladıktan sonra, önceki zamanlamanın üzerine yazılır.
İsteğe bağlı değerlendirme çalıştırma
SQL Server VM'niz için SQL en iyi yöntemler değerlendirme özelliği etkinleştirildikten sonra Azure portalını veya Azure CLI'yı kullanarak isteğe bağlı olarak bir değerlendirme çalıştırabilirsiniz.
Azure portalını kullanarak isteğe bağlı değerlendirme çalıştırmak için Azure portalındaki SQL sanal makineleri kaynak sayfasının SQL en iyi yöntemler değerlendirme bölmesinde Değerlendirmeyi çalıştır'ı seçin.
Sonuçları görüntüleme
SQL en iyi yöntemler değerlendirmeleri sayfasının Değerlendirme sonuçları bölümünde en son değerlendirme çalıştırmalarının listesi gösterilir. Her satırda bir çalıştırmanın başlangıç saati ve durum (zamanlanmış, çalışıyor, sonuçları karşıya yükleniyor, tamamlandı veya başarısız) görüntülenir. Her değerlendirme çalıştırmasının iki bölümü vardır: örneğinizi değerlendirir ve sonuçları Log Analytics çalışma alanınıza yükler. Durum alanı her iki bölümü de kapsar. Değerlendirme sonuçları Azure çalışma kitaplarında gösterilir.
Azure çalışma kitabı değerlendirme sonuçlarına üç şekilde erişin:
- SQL en iyi yöntemler değerlendirmeleri sayfasında En son başarılı değerlendirmeyi görüntüle düğmesini seçin.
- SQL en iyi yöntemler değerlendirmeleri sayfasının Değerlendirme sonuçları bölümünden tamamlanmış bir çalıştırma seçin.
- SQL VM kaynak sayfanızın Genel Bakış sayfasında yer alan İlk 10 öneriden Değerlendirme sonuçlarını görüntüle'yi seçin.
Çalışma kitabını açtıktan sonra, önceki çalıştırmaları seçmek için açılan listeyi kullanabilirsiniz. Sonuçlar sayfasını kullanarak tek bir çalıştırmanın sonuçlarını görüntüleyebilir veya Eğilimler sayfasını kullanarak geçmiş eğilimleri gözden geçirebilirsiniz.
Sonuç sayfası
Sonuçlar sayfası, aşağıdakiler için sekmeleri kullanarak önerileri düzenler:
- Tümü: Geçerli çalıştırmadaki tüm öneriler
- Yeni: Yeni öneriler (önceki çalıştırmalardan delta)
- Çözüldü: Önceki çalıştırmalardan gelen öneriler çözümlendi
- İçgörüler: En çok yinelenen sorunları ve en çok sorunu olan veritabanlarını tanımlar.
Graf, değerlendirme sonuçlarını yüksek, orta, düşük ve bilgi gibi farklı önem derecelerine göre gruplandırmaktadır. Önerilerin listesini görmek için her kategoriyi seçin veya arama kutusunda anahtar tümcecikleri arayın. En önemli önerilerle başlayıp listeye girmek en iyisidir.
İlk kılavuzda her öneri ve ortamınızda bu sorunla karşılaşan örnek sayısı gösterilir. İlk kılavuzda bir satır seçtiğinizde, ikinci kılavuz söz konusu önerinin tüm örneklerini listeler. İlk kılavuzda seçim yoksa, ikinci kılavuzda uzun bir liste olabilecek tüm öneriler gösterilir. Sonuçları filtrelemek için kılavuzun üzerindeki açılan menüleri (Ad, Önem Derecesi, Etiketler, Denetim Kimliği) kullanabilirsiniz. Ayrıca, her kılavuzun sağ üst köşesindeki küçük simgeleri seçerek Günlükler görünümü seçeneklerinde Excel'e Aktar ve Son çalıştırma sorgusunu aç seçeneklerini kullanabilirsiniz.
Grafiğin geçirilen bölümü, sisteminizin zaten izlediği önerileri tanımlar.
uzun bir açıklama ve ilgili çevrimiçi kaynaklar gibi İleti alanını seçerek her önerinin ayrıntılı bilgilerini görüntüleyin.
Eğilimler sayfası
Eğilimler sayfasında zaman içindeki değişiklikleri gösteren üç grafik vardır: tüm sorunlar, yeni sorunlar ve çözülen sorunlar. Grafikler ilerlemenizi görmenize yardımcı olur. İdeal olarak, çözümlenen sorunların sayısı yukarı çıkarken önerilerin sayısı da azaltılmalıdır. Gösterge, her önem düzeyi için ortalama sorun sayısını gösterir. Her çalıştırma için tek tek valeleri görmek için çubukların üzerine gelin.
Tek bir günde birden çok çalıştırma varsa Eğilimler sayfasındaki grafiklerde yalnızca en son çalıştırma yer alır.
Abonelikteki tüm VM'ler için etkinleştirme
Bir abonelik içindeki tüm SQL Server VM'lerinde SQL en iyi yöntemler değerlendirme özelliğini etkinleştirmek için Azure CLI'yi kullanabilirsiniz. Bunu yapmak için aşağıdaki örnek betiği kullanın:
# This script is formatted for use with Az CLI on Windows PowerShell. You may need to update the script for use with Az CLI on other shells.
# This script enables SQL best practices assessment feature for all SQL Servers on Azure VMs in a given subscription. It configures the VMs to use a Log Analytics workspace to upload assessment results. It sets a schedule to start an assessment run every Sunday at 11pm (local VM time).
# Please note that if a VM is already associated with another Log Analytics workspace, it will give an error.
$subscriptionId = 'XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX'
# Resource Group where the Log Analytics workspace belongs
$myWsRg = 'myWsRg'
# Log Analytics workspace where assessment results will be stored
$myWsName = 'myWsName'
# Resource Group where the Azure Monitor Agent resources will be created
$myAgentRg = 'myAgentRg'
# Ensure in correct subscription
az account set --subscription $subscriptionId
$sqlvms = az sql vm list | ConvertFrom-Json
foreach ($sqlvm in $sqlvms)
{
echo "Configuring feature on $($sqlvm.id)"
az sql vm update --assessment-weekly-interval 1 --assessment-day-of-week Sunday --assessment-start-time-local "23:00" --workspace-name $myWsName --workspace-rg $myWsRg -g $sqlvm.resourceGroup --agent-rg $myAgentRg -n $sqlvm.name
# Alternatively you can use this command to only enable the feature without setting a schedule
# az sql vm update --enable-assessment true --workspace-name $myWsName --workspace-rg $myWsRg -g $sqlvm.resourceGroup --agent-rg $myAgentRg -n $sqlvm.name
# You can use this command to start an on-demand assessment on each VM
# az sql vm start-assessment -g $sqlvm.resourceGroup -n $sqlvm.name
}
Bilinen sorunlar
SQL en iyi yöntemler değerlendirmelerini kullanırken aşağıdaki bilinen sorunlardan bazılarıyla karşılaşabilirsiniz.
Azure İzleyici Aracısı'na (AMA) geçiş
Daha önce SQL en iyi yöntemler değerlendirme özelliği, Değerlendirmeleri Log Analytics çalışma alanına yüklemek için Microsoft Monitoring Agent'ı (MMA) kullanıyordu. Microsoft Monitoring Agent, Azure İzleyici Aracısı (AMA) ile değiştirildi. Mevcut SQL en iyi yöntemleri değerlendirmelerini MMA'dan AMA'ya geçirmek için SQL Server VM'nizi silip uzantıyla yeniden kaydetmeniz gerekir. Değerlendirmeler etkinleştirildikten sonra mevcut sonuçlarınız kullanılabilir olmaya devam eder. MMA diğer hizmetler tarafından kullanılmıyorsa kaldırabilirsiniz. Geçirmeden önce SQL Server VM'nizin dağıtıldığı bölgede Azure İzleyici Log Analytics'in desteklendiğinden emin olun.
Değerlendirmeler etkinleştirılamadı
Başarısız olan eylemle ilişkilendirilmiş hata iletisini görüntülemek için SQL sanal makinesini içeren kaynak grubunun dağıtım geçmişine bakın.
Değerlendirme çalıştırılamadı
Azure portalında değerlendirme çalıştırmasının durumunu denetleyin. Durum başarısız olursa, hata iletisini görüntülemek için durumu seçin. Ayrıca VM'de oturum açabilir ve uzantı günlüğünde C:\WindowsAzure\Logs\Plugins\Microsoft.SqlServer.Management.SqlIaaSAgent\2.0.X.Y
başarısız değerlendirmeler için ayrıntılı hata iletilerini gözden geçirebilirsiniz. Burada 2.0.X.Y uzantının sürümüdür.
Değerlendirmeyi çalıştırırken sorun yaşıyorsanız:
- Ortamınızın tüm önkoşulları karşıladığından emin olun.
- SQL IaaS Aracısı hizmetinin VM üzerinde çalıştığından ve SQL IaaS Aracısı uzantısının iyi durumda olduğundan emin olun. SQL IaaS Aracısı uzantısı iyi durumda değilse, sorunları gidermek için uzantıyı onarın ve SQL Server kapalı kalma süresi olmadan en son sürüme yükseltin.
- için
NT SERVICE\SqlIaaSExtensionQuery
oturum açma hataları görürseniz, hesabın SQL Server'da izinleServer permission - CONTROL SERVER
var olduğundan emin olun.
Log Analytics çalışma alanına sonuç yüklenemedi
Bu hata, Microsoft Monitoring Agent'ın (MMA) sonuçları beklenen zaman dilimi içinde karşıya yükleyemediğini gösterir.
Sonuçlarınız Log Analytics çalışma alanına yüklenmiyorsa aşağıdakileri deneyin:
- Sanal makine için sistem tarafından atanan yönetilen kimliği etkinleştirin ve ardından en iyi yöntemler değerlendirme özelliğini bir kez daha etkinleştirin.
- Sorun devam ederse aşağıdakileri deneyin:
- MMA uzantısının doğru sağlanıp sağlanmediğini doğrulayın. Özel günlükler için MMA sorun giderme kılavuzunu gözden geçirin.
- Windows Güvenlik Duvarı ve Ağ Güvenlik Grubunuza (NSG) 443 numaralı bağlantı noktası için bir giden kuralı ekleyin.
Log Analytics kullanılırken yanlış TLS yapılandırmasıyla ilgili hatalar
En yaygın TLS hatası, Microsoft Monitoring Agent (MMA) uzantısı Log Analytics uç noktasına bağlanırken SSL el sıkışması oluşturamayınca oluşur. Bu durum genellikle TLS 1.0 işletim sistemi düzeyinde kayıt defteri veya GPO tarafından zorlandığında gerçekleşir ancak .NET framework için güncelleştirilmez. Windows'ta TLS 1.0 veya üzerini zorunlu kılıp Schannel'e özgü kayıt defteri anahtarlarında açıklandığı gibi eski SSL protokollerini devre dışı bırakmışsanız, .NET Framework'ün güçlü şifreleme kullanacak şekilde yapılandırıldığından da emin olmanız gerekir.
SQL Değerlendirmesi yapılandırıldıktan sonra Log Analytics çalışma alanı değiştirilemiyor
Bir sanal makine Log Analytics çalışma alanıyla ilişkilendirildikten sonra SQL sanal makine kaynağından değiştirilemez. Bunun nedeni Log Analytics'in başka kullanım örnekleri için kullanılmasını önlemektir. Azure portalındaki Sanal Makineler sayfasındaki Log Analytics kaynak dikey penceresini kullanarak VM'nin bağlantısını kesebilirsiniz.
Log Analytics çalışma alanı veri saklaması nedeniyle sonucun süresi doldu
Bu, elde tutma ilkesine bağlı olarak sonuçların artık Log Analytics çalışma alanında tutulmadığını gösterir. Çalışma alanının saklama süresini değiştirebilirsiniz.
İlgili içerik
- SQL Server'ınızı Azure VM'ye SQL IaaS Aracısı uzantısıyla kaydetmek için:
- Azure portalını kullanarak SQL Server VM'lerini yönetme