Öğretici: Azure Event Grid ve Logic Apps'i kullanarak sanal makine değişikliklerini izleme

Azure kaynaklarında veya üçüncü taraf kaynaklarda gerçekleşen belirli olayları izlemek ve yanıtlamak için Azure Logic Apps kullanarak en az kodla bir otomatik mantıksal uygulama iş akışı oluşturabilirsiniz. Bu kaynakların Azure Event Grid'e olay yayımlamasını sağlayabilirsiniz. Olay kılavuzu da bu olayları uç nokta olarak kuyruk, web kancası veya olay hub’ları olan abonelere gönderir. Abone olarak, iş akışınız olayları işlemek için adımları çalıştırmadan önce bu olayların olay kılavuzuna gelmesini bekler.

Örneğin, yayımcıların Azure Event Grid hizmeti üzerinden abonelere gönderebileceği bazı olaylar şunlardır:

  • Kaynağı oluşturun, okuyun, güncelleştirin veya silin. Örneğin, Azure aboneliğinizde ücretlendirmeye neden olabilecek ve faturanızı etkileyebilecek değişiklikleri izleyebilirsiniz.

  • Bir Azure aboneliğine kişi ekleyin veya kaldırın.

  • Uygulamanız belirli bir eylemi gerçekleştirir.

  • Bir kuyrukta yeni bir ileti görüntülenir.

bu öğretici, çok kiracılı Azure Logic Apps çalışan ve tüketim fiyatlandırma modelinitemel alan bir mantıksal uygulama kaynağı oluşturur. Bu mantıksal uygulama kaynağını kullanarak, bir sanal makinede yapılan değişiklikleri izleyen ve bu değişiklikler hakkında e-posta gönderen bir iş akışı oluşturursunuz. Bir Azure kaynağına olay aboneliği olan bir iş akışı oluşturduğunuzda, olaylar iş akışına bir olay kılavuzuyla bir olay aracılığıyla akar. çoklu kiracı ile tek kiracılı Azure Logic Apps karşı daha fazla bilgi için, tek kiracılı ve çok kiracılı ve tümleştirme hizmeti ortamına karşıgözden geçirin.

Azure Event Grid kullanarak bir sanal makineyi izleyen iş akışı tasarımcısını gösteren ekran görüntüsü.

Bu öğreticide şunların nasıl yapıldığını öğreneceksiniz:

  • Bir olay kılavuzlarından olayları izleyen bir mantıksal uygulama kaynağı ve iş akışı oluşturun.
  • Özellikle sanal makine değişikliklerini izleyen bir koşul ekleyin.
  • Sanal makineniz değiştiğinde e-posta gönderin.

Önkoşullar

Mantıksal uygulama kaynağı oluşturma

  1. Azure hesabınızla Azure portalında oturum açın.

  2. Ana Azure menüsünden kaynak > tümleştirme > mantıksal uygulaması oluştur ' u seçin.

    Mantıksal uygulama kaynağı oluşturmak için Azure portal, düğme gösteren ekran görüntüsü.

  3. Mantıksal uygulama altında, mantıksal uygulama kaynağınız hakkında bilgi sağlayın. İşiniz bittiğinde Oluştur'u seçin.

    Logic Apps oluşturma menüsünün, ad, abonelik, kaynak grubu ve konum gibi ayrıntıları gösteren ekran görüntüsü.

    Özellik Gerekli Değer Açıklama
    Ad Yes <Logic-App-adı> Mantıksal uygulamanız için benzersiz bir ad sağlayın.
    Abonelik Yes <Azure-abonelik-adı> Bu öğreticideki tüm hizmetler için aynı Azure aboneliğini seçin.
    Kaynak grubu Yes <Azure-Resource-Group> Mantıksal uygulamanızın Azure Kaynak grubu adı, bu öğreticideki tüm hizmetler için seçim yapabilirsiniz.
    Konum Yes <Azure-bölge> Bu öğreticideki tüm hizmetler için aynı bölgeyi seçin.
  4. Azure mantıksal Uygulamanızı dağıttıktan sonra, iş akışı Tasarımcısı tanıtım videosu ve yaygın olarak kullanılan tetikleyicilerle bir sayfa gösterir. Video ve tetikleyicileri kaydırın.

  5. Şablonlar altında Boş Mantıksal Uygulama'yı seçin.

    Boş bir mantıksal uygulama oluşturmak için seçimi gösteren Logic Apps şablonlarının ekran görüntüsü.

    İş akışı Tasarımcısı artık mantıksal uygulamanızı başlatmak için kullanabileceğiniz Tetikleyicileri gösterir. Her mantıksal uygulama, belirli bir olay gerçekleştiğinde ya da belirli bir koşul karşılandığında tetiklenen bir tetikleyiciyle başlamalıdır. tetikleyici her tetiklendiğinde, Azure Logic Apps mantıksal uygulamanızı çalıştıran bir iş akışı örneği oluşturur.

Event Grid tetikleyicisi ekleme

Şimdi, sanal makinenizin kaynak grubunu izlemek için kullandığınız Event Grid tetikleyicisini ekleyin.

  1. Tasarımcıda arama kutusuna girin event grid . Tetikleyiciler listesinden, bir kaynak olayı ne zaman tetiklenir ' ı seçin.

    Seçili Event Grid tetikleyicisine sahip iş akışı tasarımcısını gösteren ekran görüntüsü.

  2. İstendiğinde, Azure hesabı kimlik bilgilerinizle Azure Event Grid için oturum açın. Azure aboneliğinizle ilişkili Azure Active Directory kiracıyı gösteren kiracı listesinde, doğru kiracının göründüğünden emin olun, örneğin:

    Event Grid bağlanmak için Azure oturum açma istemiyle iş akışı tasarımcısını gösteren ekran görüntüsü.

    Not

    @outlook.com veya @hotmail.com gibi kişisel bir Microsoft hesabında oturum açtıysanız, Event Grid tetikleyicisi doğru görüntülenmeyebilir. geçici bir çözüm olarak, hizmet sorumlusu ile Bağlanseçin veya Azure aboneliğinizle ilişkili Azure Active Directory bir üyesi olarak kimlik doğrulaması yapın; örneğin, kullanıcı adı @emailoutlook.onmicrosoft.com .

  3. Şimdi, mantıksal uygulamanızı yayımcıdaki olaylara abone olur. Aşağıdaki tabloda açıklandığı gibi olay Aboneliğinizle ilgili ayrıntıları sağlayın, örneğin:

    Tetikleyici ayrıntıları Düzenleyicisi açık olan iş akışı tasarımcısını gösteren ekran görüntüsü.

    Özellik Gerekli Değer Açıklama
    Abonelik Yes <olay-yayımcı-Azure-abonelik-adı> Olay yayımcıyla ilişkili Azure aboneliğinin adını seçin. Bu öğreticide, sanal makineniz için Azure abonelik adını seçin.
    Kaynak Türü Yes <olay-yayımcı-Azure-Resource-Type> Olay Yayımcısı için Azure Kaynak türünü seçin. Azure Kaynak türleri hakkında daha fazla bilgi için bkz. Azure kaynak sağlayıcıları ve türleri. Bu öğreticide, Microsoft.Resources.ResourceGroups Azure kaynak gruplarını izlemek için değeri seçin.
    Kaynak Adı Yes <event-publisher-Azure-resource-name> Olay yayımcısı için Azure kaynak adını seçin. Bu liste, seçtiğiniz kaynak türüne göre değişir. Bu öğretici için, sanal makinenizi içeren Azure kaynak grubunun adını seçin.
    Olay Türü Öğesi No <olay türleri> Filtrelemek ve olay kılavuzuna göndermek için bir veya daha fazla belirli olay türü seçin. Örneğin, kaynakların ne zaman değiştirdiğini veya silindiğini algılamak için isteğe bağlı olarak bu olay türlerini ekebilirsiniz:

    - Microsoft.Resources.ResourceActionSuccess
    - Microsoft.Resources.ResourceDeleteSuccess
    - Microsoft.Resources.ResourceWriteSuccess

    Daha fazla bilgi için şu konulara bakın:

    - Azure Event Grid grupları için olay şemasını güncelleştirme
    - Olay filtrelemeyi anlama
    - Olayları Event Grid

    İsteğe bağlı özellikler eklemek için Yeni parametre ekle'yi ve ardından istediğiniz özellikleri seçin. No {açıklamalara bakın} * Ön Ek Filtresi: Bu öğretici için bu özelliği boş bırakın. Varsayılan davranış tüm değerlerle eşleşir. Ancak filtre olarak bir ön ek dizesi (örneğin belirli bir kaynak için bir yol ve bir parametre) belirtebilirsiniz.

    * SonEk Filtresi: Bu öğretici için bu özelliği boş bırakın. Varsayılan davranış tüm değerlerle eşleşir. Ancak yalnızca belirli dosya türlerini istediğinizde filtre olarak bir sonek dizesi (örneğin dosya adı uzantısı) belirtebilirsiniz.

    * Abonelik Adı: Bu öğretici için olay aboneliğiniz için benzersiz bir ad sebilirsiniz.

  4. Mantıksal uygulamanızı kaydedin. Tasarımcı araç çubuğunda Kaydet'i seçin. Mantıksal uygulamanıza bir eylemin ayrıntılarını daraltarak gizlemek için eylemin başlık çubuğunu seçin.

    İş akışı tasarımcısını ve "Kaydet" düğmesinin seçili olduğunu gösteren ekran görüntüsü.

    Mantıksal uygulamanızı bir olay kılavuzu tetikleyicisiyle kaydettiğinizde, Azure seçtiğiniz kaynağa mantıksal uygulamanız için otomatik olarak bir olay aboneliği oluşturur. Bu nedenle kaynak bir olayı olay kılavuzuna yayımladığında, bu olay kılavuzu otomatik olarak olayı mantıksal uygulamanıza gönderir. Bu olay mantıksal uygulamanızı tetikler ve ardından sonraki adımlarda yapılandıracağınız iş akışının bir örneğini oluşturur ve çalıştırır.

Mantıksal uygulamanız artık canlı ve olay kılavuzundan olayları dinliyor ancak siz eylemleri iş akışına ekleyene kadar herhangi bir işlem yapmayacak.

Koşul ekleme

Mantıksal uygulamanın yalnızca belirli bir olay veya işlem olduğunda çalışması için, işlemi kontrol etmek için bir koşul Microsoft.Compute/virtualMachines/write ekleyin. Bu koşul true olduğunda, mantıksal uygulamanız size güncelleştirilen sanal makine hakkında ayrıntıları içeren bir e-posta gönderir.

  1. Mantıksal Uygulama Tasarımcısı'nda, olay kılavuzu tetikleyicisi altında Yeni adım'ı seçin.

    "Yeni adım" seçili iş akışı tasarımcısını gösteren ekran görüntüsü.

  2. Eylem seçin'in altında, arama kutusuna condition filtreniz olarak girin. Eylemler listesinden Koşul eylemlerini seçin.

    "Koşul" seçili iş akışı tasarımcısını gösteren ekran görüntüsü.

    Logic App Tasarımcısı iş akışınıza koşulun true veya false olmasına bağlı olarak izlenecek eylem yolları dahil boş bir koşul ekler.

    İş akışı tasarımcısını, iş akışına boş koşul eklenmiş olarak gösteren ekran görüntüsü.

  3. Koşul başlığını olarak yeniden If a virtual machine in your resource group has changed adlandırarak. Koşulun başlık çubuğunda üç nokta (...) düğmesini ve ardından Yeniden Adlandır'ı seçin.

    Koşul düzenleyicisinin bağlam menüsünün ve "Yeniden Adlandır"ın seçili olduğu iş akışı tasarımcısını gösteren ekran görüntüsü.

  4. özelliğinin işlemle eşit body olduğu bir nesne için olayı kontrol etmek için bir koşul data operationName Microsoft.Compute/virtualMachines/write oluşturun. Event Grid olay şeması hakkında daha fazla bilgi edinin.

    1. Ve altındaki ilk satırda, sol kutunun içine tıklayın. Görüntülenen dinamik içerik listesinde İfade'yi seçin.

      Koşul eyleminin ve dinamik içerik listesinin "İfade" seçili olarak açık olduğu iş akışı tasarımcısını gösteren ekran görüntüsü.

    2. İfade düzenleyicisinde, tetikleyiciden işlem adını döndüren bu ifadeyi girin ve Tamam'ı seçin:

      triggerBody()?['data']['operationName']

      Örnek:

      İşlem adını Logic Apps ifade ile koşul düzenleyicisini gösteren bir tasarımcının ekran görüntüsü.

    3. Ortadaki kutuda eşittir işlecini tutun.

    4. Sağ kutuya bu değeri girin; bu, izleyilen işlemdir:

      Microsoft.Compute/virtualMachines/write

    Bitmiş koşulun şimdi şu örnekteki gibi görünüyor:

    İş akışı tasarımcısını, işlemi karşılaştıran bir koşulla gösteren ekran görüntüsü.

    Tasarım görünümünden kod görünümüne geçiş ve tasarım görünümüne geri dönersiniz, koşulda belirttiğiniz ifade data.operationName belirtecsine çözüm olur:

    Belirteçleri çözümlenen bir koşula sahip iş akışı tasarımcısını gösteren ekran görüntüsü.

  5. Mantıksal uygulamanızı kaydedin.

E-posta bildirimleri gönderme

Şimdi, belirtilen koşul true olduğunda e-posta alasınız diye bir eylem ekleyin.

  1. Koşulun Doğru ise kutusunda, Eylem ekle'yi seçin.

    Koşulun "True ise" bölmesi açık ve "Eylem ekle"nin seçili olduğu iş akışı tasarımcısını gösteren ekran görüntüsü.

  2. Eylem seçin'in altında, arama kutusuna send an email filtreniz olarak girin. E-posta sağlayıcınıza uygun bağlayıcıyı bulun ve seçin. Ardından bağlayıcı için "e-posta gönder" eylemini seçin. Örnek:

    • Azure iş veya okul hesabı için Office 365 Outlook bağlayıcısını seçin.

    • Kişisel Microsoft hesapları için Outlook.com bağlayıcısını seçin.

    • Gmail hesapları için Gmail bağlayıcısını seçin.

    Bu öğretici, Office 365 Outlook devam eder. Farklı bir sağlayıcı kullanıyorsanız adımlar aynı kalır ancak kullanıcı arabiriminiz biraz farklı görünebilir.

    "E-posta gönder" eylemlerini bulmak için arama kutusunun açık olduğu iş akışı tasarımcısını gösteren ekran görüntüsü.

  3. E-posta sağlayıcınız için henüz bir bağlantınız yoksa, kimlik doğrulaması istendiğinde e-posta hesabınızda oturum açın.

  4. E-posta gönder eylemlerini şu baş adla yeniden adlandırabilirsiniz: Send email when virtual machine updated

  5. E-posta hakkında aşağıdaki tabloda belirtilen bilgileri girin:

    Gerçek bir koşul için e-posta konu satırına dinamik içerik ekli iş akışı tasarımcısını gösteren ekran görüntüsü.

    İpucu

    İş akışınıza önceki adımlardan bir çıkış seçmek için, dinamik içerik listesinin görünür olduğu bir düzenleme kutusunun içine tıklayın veya Dinamik içerik ekle'yi seçin. Daha fazla sonuç için, listede her bölüm için Daha fazla'ya bakın'ı seçin. Dinamik içerik listesini kapatmak için Dinamik içerik ekle'yi yeniden seçin.

    Özellik Gerekli Değer Açıklama
    Kime Yes <alıcı etki @ alanı> Alıcının e-posta adresi girin. Test için kendi e-posta adresinizi kullanabilirsiniz.
    Konu Yes Resource updated:Konu E-posta konusunun içeriğini girin. Bu öğretici için belirtilen metni girin ve olayın Konu alanını seçin. Burada, e-postanızın konusu güncelleştirilen kaynağın (sanal makine) adını içerir.
    Gövde Yes Resource: Konu

    Event type: Olay Türü

    Event ID: ID

    Time:Olay Zamanı

    E-posta gövdesinin içeriğini girin. Bu öğretici için belirtilen metni girin ve e-postanız güncelleştirme için olayı, olay türünü, olay zaman damgasını ve olay kimliğini içeren kaynağı eklemek üzere olayın Konu Başlığı, Olay Türü, Kimlik ve Olay Zamanı alanlarını seçin. Bu öğreticide kaynak, tetikleyicide seçilen Azure kaynak grubu olacak.

    İçeriğinize boş satır eklemek için Shift + Enter tuşlarını kullanın.

    Not

    Bir diziyi temsil eden bir alan seçerseniz, tasarımcı eyleme otomatik olarak diziye başvuran bir For each döngüsü ekler. Bu şekilde mantıksal uygulamanız ilgili eylemi dizideki tüm öğeler için gerçekleştirir.

    Şimdi, e-posta eyleminiz bu örnekteki gibi görünebilir:

    VM güncelleştirildiğinde e-posta ile gönderilecek seçili çıkışları içeren iş akışı tasarımcısını gösteren ekran görüntüsü.

    Tamamlanmış mantıksal uygulamanız örnekteki gibi görünebilir:

    İş akışı tasarımcısını, tetikleyici ve eylemlere ilişkin ayrıntıları ve bitmiş mantıksal uygulamayı gösteren ekran görüntüsü.

  6. Mantıksal uygulamanızı kaydedin. Mantıksal uygulamanıza her bir eylemin ayrıntılarını daraltarak gizlemek için eylemin başlık çubuğunu seçin.

    Mantıksal uygulamanız artık canlıdır ancak herhangi bir işlem gerçekleştirmeden önce sanal makinenizde yapılan değişiklikleri bekler. Mantıksal uygulamanızı şimdi test etmek için sonraki bölüme geçin.

Mantıksal uygulama iş akışınızı test etme

  1. Mantıksal uygulamanızın belirtilen olayları alıp almadığını denetlemek için, sanal makinenizi güncelleştirin.

    Örneğin, sanal makinenizi yeniden boyutlandırabilirsiniz.

    Birkaç dakika sonra bir e-posta almanız gerekir. Örnek:

    VM güncelleştirme ayrıntılarını gösteren Outlook örnek e-postanın ekran görüntüsü.

  2. Mantıksal uygulamanıza ilişkin çalıştırmaları ve tetikleyici geçmişini gözden geçirmek için mantıksal uygulama menüsünde Genel Bakış'ı seçin. Bir çalıştırma hakkında daha fazla ayrıntı görüntülemek için bu çalıştırmanın satırına tıklayın.

    Seçilen başarılı bir çalıştırmayı gösteren mantıksal uygulamanın genel bakış sayfasının ekran görüntüsü.

  3. Her bir adımın giriş ve çıkışlarını görüntülemek için gözden geçirmek istediğiniz adımı genişletin. Bu bilgiler mantıksal uygulamanızdaki sorunları tespit etmenize ve gidermenize yardımcı olabilir.

    Her çalıştırmanın ayrıntılarını gösteren mantıksal uygulama çalıştırma geçmişinin ekran görüntüsü.

Tebrikler, bir olay kılavuzuyla kaynak olaylarını izleyen ve bu olaylar gerçekleştiğinde size e-posta gönderen bir mantıksal uygulama oluşturdunuz. Ayrıca, süreçleri otomatik hale getiren iş akışlarını ne kadar kolay oluşturabileceğinizi ve sistemler ile bulut hizmetlerini tümleştirmeyi öğrendiniz.

Olay kılavuzları ve mantıksal uygulamalarla diğer yapılandırma değişikliklerini izleyebilirsiniz, örneğin:

  • Sanal makine, Azure rol tabanlı erişim denetimi (Azure RBAC) haklarını alır.
  • Değişiklikler bir ağ arabirimi (NIC) üzerindeki bir ağ güvenlik grubunda (NSG) yapılır.
  • Bir sanal makine için diskler eklenir veya kaldırılır.
  • Bir sanal makine NIC’sine genel bir IP adresi atanır.

Kaynakları temizleme

Bu öğreticide Azure aboneliğinize ücret uygulanmasına neden olan kaynaklar kullanılmakta ve eylemler gerçekleştirilmektedir. Bu nedenle öğreticiyi ve testlerinizi tamamladıktan sonra ücret uygulanmasını istemediğiniz kaynakları devre dışı bırakmayı veya silmeyi unutmayın.

  • Çalışmanızı silmeden mantıksal uygulamanızı durdurmak için uygulamanızı devre dışı bırakın. Mantıksal uygulama menüsünde Genel Bakış'ı seçin. Araç çubuğunda Devre Dışı Bırak'ı seçin.

    Mantıksal uygulamayı devre dışı bırakmak için Devre Dışı Bırak düğmesinin seçili olduğu mantıksal uygulamaya genel bakışın ekran görüntüsü.

    İpucu

    Mantıksal uygulama menüsü görünmüyorsa Azure panosuna dönüp mantıksal uygulamanızı yeniden açmayı deneyin.

  • Mantıksal uygulamanızı kalıcı olarak silmek için mantıksal uygulama menüsünde Genel Bakış'ı seçin. Araç çubuğunda Sil'i seçin. Mantıksal uygulamanızı silmek istediğinizden emin olarak Sil'i seçin.

Sonraki adımlar

Farklı programlama dillerini kullanarak olayları yayımlama ve bu Event Grid kullanma hakkında bilgi edinmek için aşağıdaki örneklere bakın.