Aracılığıyla paylaş


SQL Insights'ı etkinleştirme (önizleme)

Şunlar için geçerlidir: Azure SQL Veritabanı Azure SQL Yönetilen Örneği

Bu makalede, SQL dağıtımlarınızı izlemek için SQL Insights'ın (önizleme) nasıl etkinleştirileceği açıklanır. İzleme, SQL dağıtımlarınızla bağlantı oluşturan ve izleme verilerini toplamak için Dinamik Yönetim Görünümlerini (DMV) kullanan bir Azure sanal makinesinden gerçekleştirilir. Bir izleme profili kullanarak hangi veri kümelerinin toplandığını ve toplama sıklığını denetleyebilirsiniz.

Not

Bir resource manager şablonu kullanarak izleme profili ve sanal makine oluşturarak SQL Insights'ı (önizleme) etkinleştirmek için bkz . SQL Insights için Resource Manager şablon örnekleri (önizleme).

SQL Insights'ı (önizleme) etkinleştirmeyi öğrenmek için bu Kullanıma Sunulan Veri bölümüne de başvurabilirsiniz.

Log Analytics çalışma alanı oluşturma

SQL Insights, verilerini bir veya daha fazla Log Analytics çalışma alanında depolar. SQL Insights'ı etkinleştirebilmeniz için önce bir çalışma alanı oluşturmanız veya var olan bir çalışma alanını seçmeniz gerekir. Tek bir çalışma alanı birden çok izleme profiliyle kullanılabilir, ancak çalışma alanı ve profillerin aynı Azure bölgesinde bulunması gerekir. SQL Insights'taki özellikleri etkinleştirmek ve bu özelliklere erişmek için çalışma alanında Log Analytics katkıda bulunan rolüne sahip olmanız gerekir.

İzleme kullanıcısı oluşturma

İzlemek istediğiniz SQL dağıtımlarında bir kullanıcı (oturum açma) gerekir. Farklı SQL dağıtım türleri için aşağıdaki yordamları izleyin.

Aşağıdaki yönergeler, izleyebileceğiniz SQL türüne göre işlemi kapsar. Bunu birkaç SQL kaynağında aynı anda bir betikle gerçekleştirmek için lütfen aşağıdaki BENIOKU dosyasına ve örnek betiğine bakın.

Not

SQL Insights (önizleme) aşağıdaki Azure SQL Veritabanı senaryolarını desteklemez:

SQL Insights (önizleme) aşağıdaki Azure SQL Veritabanı senaryoları için sınırlı desteğe sahiptir:

  • Sunucusuz katman: Ölçümler, sunucusuz işlem katmanı kullanılarak veritabanları için toplanabilir. Ancak, ölçümleri toplama işlemi otomatik duraklatma gecikme zamanlayıcısını sıfırlar ve veritabanının otomatik duraklatılmış duruma girmesini engeller.

SQL Server Management Studio, Azure portalında Sorgu Düzenleyicisi (önizleme) veya başka bir SQL istemci aracı ile bir Azure SQL veritabanına bağlanın.

Gerekli izinlere sahip bir kullanıcı oluşturmak için aşağıdaki betiği çalıştırın. kullanıcı adını ve mystrongpassword değerini güçlü bir parolayla değiştirin.

CREATE USER [user] WITH PASSWORD = N'mystrongpassword'; 
GO 
GRANT VIEW DATABASE STATE TO [user]; 
GO 

Telegraf kullanıcı betiği oluşturma ile Sorgu Düzenleyicisi ekran görüntüsü.

Kullanıcının oluşturulduğunu doğrulayın.

Telegraf kullanıcı betiğini doğrulayan Sorgu Düzenleyicisi sorgu penceresinin ekran görüntüsü.

select name as username,
       create_date,
       modify_date,
       type_desc as type,
       authentication_type_desc as authentication_type
from sys.database_principals
where type not in ('A', 'G', 'R', 'X')
       and sid is not null
order by username

Azure Sanal Makinesi oluşturma

SQL'i izlemek için veri toplamak için kullanılacak bir veya daha fazla Azure sanal makinesi oluşturmanız gerekir.

Not

İzleme profilleri, izlemek istediğiniz farklı SQL türlerinden hangi verileri toplayacağınız belirtir. Her izleme sanal makinesinin kendisiyle ilişkilendirilmiş yalnızca bir izleme profili olabilir. Birden çok izleme profiline ihtiyacınız varsa her biri için bir sanal makine oluşturmanız gerekir.

Azure sanal makine gereksinimleri

Azure sanal makinesi aşağıdaki gereksinimlere sahiptir:

  • İşletim sistemi: Azure Market görüntüsünü kullanan Ubuntu 18.04. Özel görüntüler desteklenmez. Ubuntu'nun bu sürümü için Genişletilmiş Güvenlik Bakımı (ESM) elde etmek için Ubuntu Pro 18.04 LTS market görüntüsünü kullanmanızı öneririz. Daha fazla bilgi için bkz . Azure'da Linux ve açık kaynak teknolojisi desteği.
  • Önerilen en düşük Azure sanal makine boyutları: Standard_B2s (2 CPU, 4 GiB bellek)
  • Azure İzleyici aracısı tarafından desteklenen herhangi bir Azure bölgesine dağıtılır ve tüm Azure İzleyici aracısı önkoşullarını karşılar.

Not

Standard_B2s (2 CPU, 4 GiB bellek) sanal makine boyutu en fazla 100 bağlantı dizesi destekler. Tek bir sanal makineye 100'den fazla bağlantı ayırmamalısınız.

SQL kaynaklarınızın ağ ayarlarına bağlı olarak, izleme verilerini toplamak için ağ bağlantıları oluşturabilmeleri için sanal makinelerin SQL kaynaklarınızla aynı sanal ağa yerleştirilmesi gerekebilir.

Ağ ayarlarını yapılandırma

Her SQL türü, izleme sanal makinenizin SQL'e güvenli bir şekilde erişmesi için yöntemler sunar. Aşağıdaki bölümlerde SQL dağıtım türüne göre seçenekler ele alınmaktadır.

SQL Insights, Azure SQL Veritabanı hem genel uç noktası hem de sanal ağı üzerinden erişmeyi destekler.

Genel uç nokta üzerinden erişim için, Azure portalındaki Güvenlik duvarı ayarları sayfasının ve IP güvenlik duvarı ayarları bölümünün altına bir kural eklersiniz. Sanal ağdan erişim belirtmek için, sanal ağ güvenlik duvarı kurallarını ayarlayabilir ve Azure İzleyici aracısı için gereken hizmet etiketlerini ayarlayabilirsiniz.

Azure portalındaki Azure SQL Veritabanı sayfasının ekran görüntüsü. Sunucu güvenlik duvarını ayarla düğmesi vurgulanır.

Azure portalında Azure SQL Veritabanı Güvenlik Duvarı ayarları sayfasının ekran görüntüsü. Güvenlik duvarı ayarları.

Azure Key Vault'ta izleme parolasını depolama

En iyi güvenlik uygulaması olarak, SQL kullanıcı (oturum açma) parolalarınızı doğrudan izleme profili bağlantı dizesi girmek yerine bir Key Vault'ta depolamanızı kesinlikle öneririz.

PROFILInizi SQL izleme için ayarlarken, kullanmayı planladığınız Key Vault kaynağında aşağıdaki izinlerden birine ihtiyacınız olacaktır:

  • Microsoft.Authorization/roleAssignments/write
  • Microsoft.Authorization/roleAssignments/delete

Bu izinlere sahipseniz, belirttiğiniz Key Vault'u kullanan SQL İzleme profilinizi oluşturmanın bir parçası olarak yeni bir Key Vault erişim ilkesi otomatik olarak oluşturulur.

Önemli

Ağ ve güvenlik yapılandırmasının izleme VM'sinin Key Vault'a erişmesine izin verdiğinden emin olmanız gerekir. Daha fazla bilgi için bkz . Güvenlik duvarının arkasındaki Azure Key Vault'a erişme ve Azure Key Vault ağ ayarlarını yapılandırma.

SQL izleme profili oluşturma

Azure portalındaki Azure İzleyici menüsünün İçgörüler bölümünden SQL (önizleme) öğesini seçerek SQL İçgörüleri'ni (önizleme) açın. Yeni profil oluştur'u seçin.

Azure portalında Azure İzleyici sayfasının ekran görüntüsü. Yeni profil oluştur düğmesi vurgulanır.

Profil, SQL sistemlerinizden toplamak istediğiniz bilgileri depolar. Bunun için belirli ayarları vardır:

  • Azure SQL Veritabanı
  • Azure SQL Yönetilen Örnek
  • Azure VM’lerinde SQL Server

Örneğin, veri toplama sıklığı, hangi verilerin toplanması ve verilerin hangi çalışma alanına gönderilmesi için farklı ayarlarla SQL Üretim adlı bir profil ve sql Hazırlama adlı başka bir profil oluşturabilirsiniz.

Profil, seçtiğiniz abonelikte ve kaynak grubunda veri toplama kuralı kaynağı olarak depolanır. Her profilin şunlara ihtiyacı vardır:

  • Adı. Oluşturulduktan sonra düzenlenemez.
  • Konum. Bu bir Azure bölgesidir.
  • İzleme verilerini depolamak için Log Analytics çalışma alanı.
  • Toplayacak sql izleme verilerinin sıklığı ve türü için koleksiyon ayarları.

Not

Profilin konumu, izleme verilerini göndermeyi planladığınız Log Analytics çalışma alanıyla aynı konumda olmalıdır.

Azure portalında Yeni profil ayrıntıları oluştur sayfasının ekran görüntüsü.

İzleme profilinizin ayrıntılarını girdikten sonra İzleme profili oluştur'u seçin. Profilin dağıtılması bir dakika kadar sürebilir. İzleme profili birleşik giriş kutusunda listelenen yeni profili görmüyorsanız, yenile düğmesini seçin; dağıtım tamamlandıktan sonra görünmelidir. Yeni profili seçtikten sonra profille ilişkilendirilecek bir izleme makinesi eklemek için Profili yönet sekmesini seçin.

İzleme makinesi ekleme

SQL örneklerinizin izleneceği ve bağlantı dizesi sağlandığı sanal makineyi seçmek üzere bir Add monitoring virtual machine bağlam paneli açmak için İzleme makinesi ekle'yi seçin.

İzleme sanal makinenizin aboneliğini ve adını seçin. İzleme oturum açma bilgilerinin parolalarını depolamak için Key Vault kullanıyorsanız (kesinlikle önerilir), altında Key vault subscriptionsbu Key Vault aboneliğini seçin ve ardından altında KeyVaultgizli dizileri depolayan Key Vault'ı seçin. Connection strings alanına kasa URI'sini ve bağlantı dizesi kullanılacak her parolanın gizli dizi adını girin.

Örneğin, Key Vault URI'si https://mykeyvault.vault.azure.net/ise ve gizli dizi adları sqlPassword1 ve sqlPassword2ise alandaki JSON Connection strings şunları içerir:

{
   "secrets": {
      "telegrafPassword1": {
         "keyvault": "https://mykeyvault.vault.azure.net/",
         "name": "sqlPassword1"
      },
      "telegrafPassword2": {
         "keyvault": "https://mykeyvault.vault.azure.net/",
         "name": "sqlPassword2"
      }
   }
}

Artık bu gizli dizilere alanda daha fazla Connection strings başvurabilirsiniz. Aşağıdaki örnekte, iki bağlantı dizesi daha önce tanımlanan ve telegrafPassword2 gizli dizilerine başvururtelegrafPassword1:

{
   "sqlAzureConnections": [
      "Server=mysqlserver.database.windows.net;Port=1433;Database=mydatabase;User Id=telegraf;Password=$telegrafPassword1;"
   ],
   "sqlVmConnections": [
      "Server=mysqlserver1;Port=1433;Database=master;User Id=telegraf;Password=$telegrafPassword2;"
   ]
}

Azure portalı İzleme sanal makinesi ekle sayfasının ekran görüntüsü. VM'yi seçin, KV url'sini (kullanılıyorsa) ve gizli dizi adını belirtin. İzlenecek her sistem için bağlantı dizesi girin. bağlantı dizesi'lerde kullanılan gizli diziyi oluşturduğunuz KV'yi seçin.

Farklı SQL dağıtımları için bağlantı dizesi belirleme hakkında ayrıntılı bilgi için sonraki bölüme bakın.

bağlantı dizesi ekleme

bağlantı dizesi, SQL Insights'ın (önizleme) izleme verilerini toplamak için SQL'de oturum açarken kullanması gereken oturum açma adını belirtir. İzleme kullanıcınızın parolasını depolamak için Key Vault kullanıyorsanız Key Vault URI'sini ve parolayı içeren gizli dizinin adını sağlayın.

Bağlantı dizesi her SQL kaynağı türü için farklılık gösterir:

İzleme makinesinden VERITABANı tarafından kullanılan IP adresine ve bağlantı noktasına yapılan TCP bağlantılarına, ağ yolunda mevcut olabilecek tüm güvenlik duvarları veya ağ güvenlik grupları (NSG) tarafından izin verilmelidir. IP adresleri ve bağlantı noktaları hakkında ayrıntılı bilgi için bkz. Azure SQL Veritabanı bağlantı mimarisi.

Forma bağlantı dizesi girin:

"sqlAzureConnections": [
   "Server=mysqlserver1.database.windows.net;Port=1433;Database=mydatabase;User Id=$username;Password=$password;",
   "Server=mysqlserver2.database.windows.net;Port=1433;Database=mydatabase;User Id=$username;Password=$password;"
]

Bağlantı dizeleri sayfasından ve veritabanı için uygun ADO.NET uç noktasından ayrıntıları alın.

Okunabilir bir ikincil değeri izlemek için bağlantı dizesi sonuna ekleme;ApplicationIntent=ReadOnly. SQL İçgörüleri, tek bir ikincil izlemeyi destekler. Toplanan veriler birincil veya ikincil verileri yansıtacak şekilde etiketlenir.