Öğ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 <olay-yayımcı-Azure-Kaynak-adı> Olay Yayımcısı için Azure Kaynak adı ' nı seçin. Bu liste, seçtiğiniz kaynak türüne göre farklılık gösterir. Bu öğreticide, sanal makinenizi içeren Azure Kaynak grubunun adını seçin.
    Olay türü öğesi Hayır <olay türleri> Filtre uygulamak ve olay kılavuzunuzda göndermek için bir veya daha fazla belirli olay türü seçin. Örneğin, isteğe bağlı olarak, kaynakların ne zaman değiştirildiğini veya silindiğini saptamak için bu olay türlerini ekleyebilirsiniz:

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

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

    - Kaynak grupları için Azure Event Grid olay şeması
    - Olay filtrelemeyi anlama
    - Olayları Event Grid filtrele

    İsteğe bağlı özellikler eklemek için yeni parametre Ekle' yi seçin ve ardından istediğiniz özellikleri seçin. Hayır {açıklamalara bakın} * Önek 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 öğreticide, 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 sağlayabilirsiniz.

  4. Mantıksal uygulamanızı kaydedin. Tasarımcı araç çubuğunda Kaydet' i seçin. Mantıksal uygulamanızdaki bir eylemin ayrıntılarını daraltmak ve 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ızı yalnızca belirli bir olay veya işlem gerçekleştiğinde çalıştırmak istiyorsanız, işlemi denetleyen bir koşul ekleyin Microsoft.Compute/virtualMachines/write . 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çiliyken iş akışı tasarımcısını gösteren ekran görüntüsü.

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

    "Koşul" seçiliyken 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ışına boş bir koşul eklenmiş iş akışı tasarımcısını gösteren ekran görüntüsü.

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

    Koşul düzenleyicisinin bağlam menüsünü ve "yeniden adlandır" seçiliyken iş akışı tasarımcısını gösteren ekran görüntüsü.

  4. body data operationName Özelliğin işleme eşit olduğu bir nesne için olayı denetleyen bir koşul oluşturun Microsoft.Compute/virtualMachines/write . 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 ifade' yi seçin.

      İş akışı Tasarımcısı ' nı koşul eylemi ve dinamik içerik listesi açık "Ifade" seçiliyken 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:

      Logic Apps Tasarımcısı 'nın ekran görüntüsü, işlem adının ayıklanmasına yönelik deyim ile koşul Düzenleyicisi gösteriliyor.

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

    4. Sağ kutuda, izlemek istediğiniz işlemi, bu örnek için aşağıdaki değeri girin:

      Microsoft.Compute/virtualMachines/write

    Tamamlanmış koşulunuz Şu örneğe benzer şekilde görünür:

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

    Tasarım görünümünden Kod görünümüne geçiş yapar ve Tasarım görünümüne geri döndüğünüzde, koşulda belirttiğiniz ifade Data. OperationName belirtecine dönüşür:

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

  5. Mantıksal uygulamanızı kaydedin.

E-posta bildirimleri gönderme

Şimdi, belirtilen koşul doğru olduğunda e-posta alabilmeniz için bir eylem ekleyin.

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

    İş akışı tasarımcısının koşulun "true Ise" bölmesi açık ve "Eylem Ekle" seçili olduğunu gösteren ekran görüntüsü.

  2. Eylem seç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 bağlayıcısı ile devam eder. Farklı bir sağlayıcı kullanıyorsanız, adımlar aynı kalır, ancak kullanıcı arabirimi biraz farklı görünebilir.

    "E-posta gönder" eylemini bulmak için arama kutusu açık olan 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 eylemini şu başlığa göre yeniden adlandırın: Send email when virtual machine updated

  5. Aşağıdaki tabloda belirtildiği gibi e-posta hakkında bilgi sağlayın:

    Bir doğru koşul için e-posta konu satırına eklenen dinamik içeriğe sahip iş akışı tasarımcısını gösteren ekran görüntüsü.

    İpucu

    İş akışınızın önceki adımlarındaki çıktıyı seçmek için, dinamik içerik listesinin görünmesi için bir düzenleme kutusunun içine tıklayın veya dinamik Içerik Ekle' yi seçin. Daha fazla sonuç için, listedeki her bölüm için daha fazla göster ' i seçin. Dinamik içerik listesini kapatmak için dinamik Içerik Ekle ' yi tekrar 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ştirmesi Outlook gösteren örnek e-postanın ekran görüntüsü.

  2. Mantıksal uygulamanıza yönelik çalıştırmaları ve tetikleyici geçmişini gözden geçirmek için mantıksal uygulama menüsünde Genel Bakış'ı seçin. Ç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ğunu gösteren 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.