Aracılığıyla paylaş


IoT Edge modüllerini ve bağlantılarını ayarlama

Önemli

Azure SQL Edge, 30 Eylül 2025 itibarıyla kullanımdan kaldırılmıştır. Daha fazla bilgi ve geçiş seçenekleri için Kullanımdan kaldırma bildirimine bakın.

Uyarı

Azure SQL Edge artık ARM64 platformunu desteklememektedir.

Azure SQL Edge'de demir cevzı kirliliklerini tahmin etmek için bu üç bölümden oluşan öğreticinin ikinci bölümünde aşağıdaki IoT Edge modüllerini ayarlayacaksınız:

  • Azure SQL Edge
  • Veri oluşturucu IoT Edge modülü

Kapsayıcı kayıt defteri kimlik bilgilerini belirtme

Modül görüntülerini barındıran kapsayıcı kayıt defterlerinin kimlik bilgilerinin belirtilmesi gerekir. Bu kimlik bilgileri, kaynak grubunuzda oluşturulan kapsayıcı kayıt defterinde bulunabilir. Erişim Anahtarları bölümüne gidin. Aşağıdaki alanları not edin:

  • Kayıt defteri adı
  • Oturum açma sunucusu
  • Kullanıcı adı
  • Şifre

Şimdi IoT Edge modülünde kapsayıcı kimlik bilgilerini belirtin.

  1. Kaynak grubunuzda oluşturulan IoT hub'ına gidin.

  2. Otomatik Cihaz Yönetimi altındaki IoT Edge bölümünde Cihaz Kimliği'ni seçin. Bu öğreticide kimlik değeridir IronOrePredictionDevice.

  3. Modülleri Ayarla bölümünü seçin.

  4. Kapsayıcı Kayıt Defteri Kimlik Bilgileri'nin altında aşağıdaki değerleri girin:

    Veri Alanı Değer
    İsim Kayıt defteri adı
    Adres Oturum açma sunucusu
    Kullanıcı Adı Kullanıcı adı
    Şifre Şifre

Veri Oluşturucu Modülünü oluşturma, gönderme ve dağıtma

  1. Proje dosyalarını makinenize kopyalayın.

  2. Visual Studio 2019 kullanarak dosya IronOre_Silica_Predict.sln açma

  3. deployment.template.json kapsayıcı kayıt defteri ayrıntılarını güncelleştirme

    "registryCredentials": {
         "RegistryName": {
             "username": "",
             "password": "",
             "address": ""
         }
    }
    
  4. hedef kapsayıcı kayıt defterini (veya modülün deposunu) belirtmek için modules.json dosyasını güncelleştirin

    "image": {
         "repository":"samplerepo.azurecr.io/ironoresilicapercent",
         "tag":
    }
    
  5. Projenin sorunsuz çalıştığından emin olmak için projeyi hata ayıklama veya yayın modunda yürütme

  6. Proje adına sağ tıklayıp Oluştur ve IoT Edge Modülleri Gönder'i seçerek projeyi kapsayıcı kayıt defterinize gönderin.

  7. Data Generator modülünü Edge cihazınıza IoT Edge modülü olarak dağıtın.

Azure SQL Edge modülünü dağıtma

  1. + Ekle ve ardından IoT Edge Modülü'ne tıklayarak Azure SQL Edge modülünü dağıtın.

  2. Azure SQL Edge modülünü dağıtmak için IoT Edge Modülleri Ekle sayfasında yapılandırma seçeneklerini ayarlayın. Yapılandırma seçenekleri hakkında daha fazla bilgi için bkz . Azure SQL Edge'i dağıtma.

  3. Ortam değişkenini MSSQL_PACKAGE Azure SQL Edge modülü dağıtımına ekleyin ve bu öğreticinin birinci bölümünün 8. adımında oluşturulan veritabanı dacpac dosyasının SAS URL'sini belirtin.

  4. Güncelleştirme'yi seçin

  5. Cihazdaki modülleri ayarla sayfasında İleri: Yollar'ı >seçin.

  6. Cihazdaki modülleri ayarla sayfasının yollar bölmesinde, modülün IoT Edge hub iletişimi için yollarını aşağıda açıklandığı gibi belirtin. Aşağıdaki yol tanımlarında modül adlarını güncelleştirdiğinden emin olun.

    FROM /messages/modules/<your_data_generator_module>/outputs/IronOreMeasures
    INTO BrokeredEndpoint("/modules/<your_azure_sql_edge_module>/inputs/IronOreMeasures")
    

    Örneğin:

    FROM /messages/modules/ASEDataGenerator/outputs/IronOreMeasures
    INTO BrokeredEndpoint("/modules/AzureSQLEdge/inputs/IronOreMeasures")
    
  7. Cihazdaki modülleri ayarla sayfasında İleri: Gözden geçir + oluştur'u seçin >

  8. Cihazdaki modülleri ayarla sayfasında Oluştur'u seçin

Azure SQL Edge'de T-SQL Akış İşi oluşturun ve başlatın.

  1. Azure Data Studio'yu açın.

  2. Hoş Geldiniz sekmesinde, aşağıdaki ayrıntılarla yeni bir bağlantı başlatın:

    Veri Alanı Değer
    Bağlantı türü Microsoft SQL Server
    Server Bu tanıtım için oluşturulan VM'de bahsedilen genel IP adresi
    Kullanıcı adı Sa
    Şifre Azure SQL Edge örneği oluşturulurken kullanılan güçlü parola
    Veritabanı Varsayılan
    Sunucu grubu Varsayılan
    Ad (isteğe bağlı) İsteğe bağlı bir ad belirtin
  3. Bağlan seçeneğini seçin.

  4. Dosya menü sekmesinde yeni bir not defteri açın veya Ctrl + N klavye kısayolunu kullanın.

  5. Yeni Sorgu penceresinde aşağıdaki betiği yürüterek T-SQL Akış işini oluşturun. Betiği yürütmeden önce aşağıdaki değişkenleri değiştirdiğinizden emin olun:

    • @SQL_SA_Password MSSQL_SA_PASSWORD: Azure SQL Edge Modülü dağıtılırken belirtilen değer.
    USE IronOreSilicaPrediction;
    GO
    
    DECLARE @SQL_SA_Password VARCHAR(200) = '<SQL_SA_Password>';
    DECLARE @query VARCHAR(MAX);
    
    /* Create objects required for streaming */
    
    CREATE MASTER KEY ENCRYPTION BY PASSWORD = 'MyStr0ng3stP@ssw0rd';
    
    IF NOT EXISTS (
            SELECT name
            FROM sys.external_file_formats
            WHERE name = 'JSONFormat'
            )
    BEGIN
        CREATE EXTERNAL FILE FORMAT [JSONFormat]
            WITH (FORMAT_TYPE = JSON)
    END
    
    IF NOT EXISTS (
            SELECT name
            FROM sys.external_data_sources
            WHERE name = 'EdgeHub'
            )
    BEGIN
        CREATE EXTERNAL DATA SOURCE [EdgeHub]
            WITH (LOCATION = N'edgehub://')
    END
    
    IF NOT EXISTS (
            SELECT name
            FROM sys.external_streams
            WHERE name = 'IronOreInput'
            )
    BEGIN
        CREATE EXTERNAL STREAM IronOreInput
            WITH (
                    DATA_SOURCE = EdgeHub,
                    FILE_FORMAT = JSONFormat,
                    LOCATION = N'IronOreMeasures'
                    )
    END
    
    IF NOT EXISTS (
            SELECT name
            FROM sys.database_scoped_credentials
            WHERE name = 'SQLCredential'
            )
    BEGIN
        SET @query = 'CREATE DATABASE SCOPED CREDENTIAL SQLCredential
                     WITH IDENTITY = ''sa'', SECRET = ''' + @SQL_SA_Password + ''''
    
        EXECUTE (@query)
    END
    
    IF NOT EXISTS (
            SELECT name
            FROM sys.external_data_sources
            WHERE name = 'LocalSQLOutput'
            )
    BEGIN
        CREATE EXTERNAL DATA SOURCE LocalSQLOutput
            WITH (
                    LOCATION = 'sqlserver://tcp:.,1433',
                    CREDENTIAL = SQLCredential
                    )
    END
    
    IF NOT EXISTS (
            SELECT name
            FROM sys.external_streams
            WHERE name = 'IronOreOutput'
            )
    BEGIN
        CREATE EXTERNAL STREAM IronOreOutput
            WITH (
                    DATA_SOURCE = LocalSQLOutput,
                    LOCATION = N'IronOreSilicaPrediction.dbo.IronOreMeasurements'
                    )
    END
    
    EXEC sys.sp_create_streaming_job @name = N'IronOreData',
        @statement = N'Select * INTO IronOreOutput from IronOreInput';
    
    EXEC sys.sp_start_streaming_job @name = N'IronOreData';
    
  6. Veri oluşturma modülündeki verilerin veritabanına akışının yapıldığını doğrulamak için aşağıdaki sorguyu kullanın.

    SELECT TOP 10 *
    FROM dbo.IronOreMeasurements
    ORDER BY timestamp DESC;
    

Bu öğreticide veri oluşturucu modülünü ve SQL Edge modülünü dağıttık. Ardından, veri oluşturma modülü tarafından oluşturulan verileri SQL'e akışla aktaracak bir akış işi oluşturduk.