Share via


Öğretici: Service Fabric kümesine CI/CD ile kapsayıcı uygulaması dağıtma

Bu öğretici, bir serinin ikinci bölümüdür ve Visual Studio ve Azure DevOps kullanarak bir Azure Service Fabric kapsayıcı uygulaması için sürekli tümleştirme ve dağıtımın nasıl ayarlanacağı açıklanır. Var olan bir Service Fabric uygulaması gereklidir; örnek olarak Bir Windows kapsayıcısındaki .NET uygulamasını Azure Service Fabric’e dağıtma öğreticisinde oluşturulan uygulama örnek olarak kullanılmıştır.

Serinin ikinci bölümünde şunları öğrenirsiniz:

  • Projenize kaynak denetimi ekleme
  • Visual Studio Ekip Gezgini'nde derleme tanımı oluşturma
  • Visual Studio Ekip Gezgini'nde yayın tanımı oluşturma
  • Uygulamayı otomatik olarak dağıtma ve yükseltme

Önkoşullar

Bu öğreticiye başlamadan önce:

Yayımlama profili hazırlama

Bir kapsayıcı uygulaması dağıttığınıza göre, sürekli tümleştirmeyi ayarlamaya hazırsınız. İlk olarak, uygulamanızda Azure DevOps içinde yürütülen dağıtım işleminin kullanacağı yayımlama profilini hazırlayın. Yayımlama profili, daha önce oluşturduğunuz kümeyi hedefleyecek şekilde yapılandırılmalıdır. Visual Studio’yu başlatın ve mevcut Service Fabric uygulaması projesini açın. Çözüm Gezgini'nde uygulamaya sağ tıklayın ve Yayımla... öğesini seçin.

Sürekli tümleştirme iş akışınızda kullanmak üzere uygulama projenizin içinde bir hedef profil seçin (örneğin Bulut). Küme bağlantısı uç noktasını belirtin. Azure DevOps’daki her dağıtımda uygulamanızın yükseltilmesi için Uygulamayı Yükselt onay kutusunu işaretleyin. Ayarları yayımlama profiline kaydetmek için Kaydet bağlantısına tıklayın ve ardından İptal’e tıklayarak iletişim kutusunu kapatın.

Push profile

Visual Studio çözümünüzü yeni bir Azure DevOps Git deposunda paylaşma

Derlemeler oluşturabilmek için uygulama kaynak dosyalarınızı Azure DevOps'taki bir ekip projesinde paylaşın.

Visual Studio'nun sağ alt köşesindeki durum çubuğunda Kaynak Denetimine Ekle ->Git'i seçerek projeniz için yeni bir yerel Git deposu oluşturun.

Takım Gezgini’ndeki Gönderim görünümünde Azure DevOps’a Gönder’in altında yer alan Git Deposunda Yayımla düğmesini seçin.

Screenshot of the Team Explorer - Synchronization window in Visual Studio. Under Push to Azure DevOps, the Publish to Git Repo button is highlighted.

E-postanızı doğrulayın ve Hesap açılan listesinden kuruluşunuzu seçin. Henüz bir kuruluşunuz yoksa bir kuruluş ayarlamanız gerekebilir. Deponuzun adını girin ve Depoyu yayımla’yı seçin.

Screenshot of the Push to Azure DevOps window. The settings for Email, Account, Repository name, and the Publish Repository button are highlighted.

Depoyu yayımlamak, hesabınızda yerel depoyla aynı adda yeni bir takım projesi oluşturur. Mevcut takım projesinde depoyu oluşturmak için, Depo adının yanındaki Gelişmiş’e tıklayın ve bir takım projesi seçin. Web üzerinde görüntüleyin’i seçerek kodunuzu web’de görüntüleyebilirsiniz.

Azure Pipelines ile Sürekli Teslimi Yapılandırma

Azure DevOps derleme tanımı, sıralı olarak yürütülen bir dizi derleme adımından oluşan bir iş akışını açıklar. Service Fabric kümenize dağıtmak üzere Service Fabric uygulama paketini ve diğer yapıtları üreten bir derleme tanımı oluşturun. Azure DevOps derleme tanımları hakkında daha fazla bilgi edinin.

Azure DevOps yayın tanımı, bir uygulama paketini kümeye dağıtan bir iş akışını açıklar. Derleme tanımı ve yayın tanımı birlikte kullanıldığında kaynak dosyalardan başlayıp kümenizde çalışan bir uygulamada biten iş akışının tamamını yürütür. Azure DevOps yayın tanımları hakkında daha fazla bilgi edinin.

Derleme tanımı oluşturma

Web tarayıcısında adresine gidip https://dev.azure.com kuruluşunuzu ve ardından yeni projeyi seçerek yeni ekip projenizi açın.

Sol panelde İşlem Hatları seçeneğini belirleyin, ardından Yeni İşlem Hattı'na tıklayın.

Dekont

Derleme tanımı şablonunu görmüyorsanız Yeni YAML işlem hattı oluşturma deneyimi özelliğinin kapalı olduğundan emin olun. Bu özellik, DevOps hesabınızın Önizleme Özellikleri bölümünde yapılandırılır.

New Pipeline

Kaynak olarak Azure Repos Git'i, Ekip projenizin adını, proje Deponuzu ve ana Varsayılan dalını veya el ile ve zamanlanmış derlemeleri seçin. Daha sonra Devam’a tıklayın.

Şablon seç alanında Docker desteğine sahip Azure Service Fabric uygulaması şablonunu seçin ve Uygula'ya tıklayın.

Choose build template

Görevler’de, Aracı havuzu olarak Hosted VS2017’yi seçin.

Select tasks

Görüntüleri etiketle’ye tıklayın.

Kapsayıcı Kayıt Defteri Türü’nde, Azure Container Kayıt Defteri’ni seçin. Bir Azure Aboneliği seçin ve ardından Yetkilendir’e tıklayın. Bir Azure Container Kayıt Defteri seçin.

Select Docker Tag images

Görüntüleri gönder’e tıklayın.

Kapsayıcı Kayıt Defteri Türü’nde, Azure Container Kayıt Defteri’ni seçin. Bir Azure Aboneliği seçin ve ardından Yetkilendir’e tıklayın. Bir Azure Container Kayıt Defteri seçin.

Select Docker Push images

Tetikleyiciler sekmesinde, Sürekli tümleştirmeyi etkinleştir'i işaretleyerek sürekli tümleştirmeyi etkinleştirin. Dal filtreleri bölümünde + Ekle'ye tıklayın, Dal belirtimiana varsayılan değerine döner.

El ile bir derleme başlatmak için, Derleme işlem hattını ve kuyruğunu kaydet iletişim kutusunda, Kaydet ve kuyruğa al’a tıklayın.

Select triggers

Derlemeler gönderme veya iade işlemleriyle de tetiklenir. Derleme ilerlemenizi denetlemek için Derlemeler sekmesine geçin. Derlemenin başarıyla yürütüldüğünü doğruladıktan sonra, uygulamanızı bir kümeye dağıtan bir yayın tanımı tanımlayın.

Yayın tanımı oluşturma

Sol panelde İşlem Hatları seçeneğini, ardından Yayınlar'ı ve ardından + Yeni işlem hattı'nı seçin. Şablon seç alanında, listeden Azure Service Fabric Dağıtımı şablonunu ve sonra da Uygula'yı seçin.

Choose release template

Yeni bir küme bağlantısı eklemek için Görevler’i, ardından Ortam 1’, ve daha sonra +Yeni’yi seçin.

Add cluster connection

Yeni Service Fabric Bağlan ion ekle görünümünde Sertifika Tabanlı veya Microsoft Entra Id kimlik doğrulaması'nı seçin. Bağlantı adı olarak "mysftestcluster" ve küme uç noktası olarak "tcp://mysftestcluster.southcentralus.cloudapp.azure.com:19000" (veya dağıtım yaptığınız kümenin uç noktası) belirtin.

Sertifika tabanlı kimlik doğrulaması için, kümeyi oluştururken kullanılan sunucu sertifikasının Sunucu sertifikası parmak izi'ni ekleyin. İstemci sertifikası alanında, istemci sertifika dosyasının base-64 kodlamasını ekleyin. Sertifikanın bu base-64 kodlamalı gösterimini nasıl alacağınızı öğrenmek için bu alanın yardım açılan kutusuna bakın. Ayrıca sertifika için Parola ekleyin. Ayrı bir istemci sertifikanız yoksa, küme veya sunucu sertifikasını kullanabilirsiniz.

Microsoft Entra kimlik bilgileri için, kümeyi oluşturmak için kullanılan sunucu sertifikasının Sunucu sertifikası parmak izini ve kümeye bağlanmak için kullanmak istediğiniz kimlik bilgilerini Kullanıcı Adı ve Parola alanlarına ekleyin.

Ekle'ye tıklayarak küme bağlantısını kaydedin.

Aracı Aşaması altında Service Fabric Uygulaması Dağıtma’ya tıklayın. Docker Ayarları’na ve ardından Docker Ayarlarını Yapılandır’a tıklayın. Kayıt Defteri Kimlik Bilgileri Kaynağı’nda, Azure Resource Manager Hizmeti Bağlantısı’nı seçin. Ardından Azure aboneliğinizi seçin.

Release pipeline agent

Ardından, yayın tanımının derlemeden çıkışı bulabilmesi için işlem hattına bir derleme yapıtı ekleyin. İşlem Hattı ve Yapıtlar->+Ekle'yi seçin. Kaynak (Derleme tanımı) alanında, daha önce oluşturmuş olduğunuz derleme tanımını seçin. Ekle’ye tıklayarak derleme yapıtını kaydedin.

Add artifact

Derleme tamamlandığında otomatik olarak bir yayın oluşturulması için sürekli dağıtım tetikleyicisini etkinleştirin. Yapıttaki şimşek simgesine tıklayın, tetikleyiciyi etkinleştirin ve Kaydet'e tıklayarak yayın tanımını kaydedin.

Enable trigger

Bir sürümü el ile oluşturmak için + Yayın ->Yayın Oluştur ->Oluştur'u seçin. Yayının ilerleme durumunu Yayınlar sekmesinden takip edebilirsiniz.

Dağıtımın başarılı olduğunu ve uygulamanın kümede çalıştığını doğrulayın. Bir web tarayıcısı açın ve http://mysftestcluster.southcentralus.cloudapp.azure.com:19080/Explorer/ sayfasına gidin. Uygulama sürümünü not alın (bu örnekte "1.0.0.20170616.3").

Değişiklikleri işleme ve gönderme, yayını tetikleme

Azure DevOps'da yapılan bazı kod değişikliklerini denetleyerek sürekli tümleştirme işlem hattının çalıştığını doğrulayın.

Siz kodunuzu yazarken, değişiklikleriniz Visual Studio tarafından otomatik olarak izlenir. Sağ alttaki durum çubuğundan bekleyen değişiklikler simgesini (Pending changes icon shows a pencil and a number.) seçerek değişiklikleri yerel Git deponuza işleyin.

Takım Gezgini'ndeki Değişiklikler görünümünde, güncelleştirmenizi açıklayan bir ileti ekleyin ve değişikliklerinizi işleyin.

Commit all

Yayımlanmamış değişiklikler durum çubuğu simgesini (Unpublished changes) veya Ekip Gezgini'nde Eşitle görünümünü seçin. Azure DevOps’da kodunuzu güncelleştirmek için Gönder'i seçin.

Push changes

Değişikliklerin Azure DevOps'a gönderilmesi otomatik olarak derlemeyi tetikler. Derleme tanımı başarıyla tamamlandığında, otomatik olarak bir yayın oluşturulur ve kümede uygulamayı yükseltme işlemini başlatır.

Derlemenizin ilerleme durumunu denetlemek için, Visual Studio'nun Takım Gezgini'nde Derlemeler sekmesine geçin. Derlemenin başarıyla yürütüldüğünü doğruladıktan sonra, uygulamanızı kümeye dağıtan bir yayın tanımı belirleyin.

Dağıtımın başarılı olduğunu ve uygulamanın kümede çalıştığını doğrulayın. Bir web tarayıcısı açın ve http://mysftestcluster.southcentralus.cloudapp.azure.com:19080/Explorer/ sayfasına gidin. Uygulama sürümünü not alın (bu örnekte "1.0.0.20170815.3").

Screenshot of the Voting app in Service Fabric Explorer. In the Essentials tab, the app version

Uygulamayı güncelleştirme

Uygulamada kod değişikliklerini yapın. Önceki adımları izleyerek değişiklikleri kaydedin ve işleyin.

Uygulamanın yükseltmesi başladığında, Service Fabric Explorer'da yükseltmenin ilerleme durumunu izleyebilirsiniz:

Screenshot of the Voting app in Service Fabric Explorer. An

Uygulama yükseltmesi birkaç dakika sürebilir. Yükseltme tamamlandığında, uygulama bir sonraki sürümde çalışıyor olacaktır. Bu örnekte "1.0.0.20170815.4".

Screenshot of the Voting app in Service Fabric Explorer. In the Essentials tab, the updated app version

Sonraki adımlar

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

  • Projenize kaynak denetimi ekleme
  • Derleme tanımı oluşturma
  • Yayın tanımı oluşturma
  • Uygulamayı otomatik olarak dağıtma ve yükseltme

Öğreticinin sonraki bölümünde kapsayıcınızı izlemeyi nasıl ayarlayacağınızı öğrenebilirsiniz.