Öğ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:
- Azure’da bir kümeye sahip olmak veya bu öğreticide küme oluşturmak
- Buna kapsayıcılı bir uygulama dağıtmak
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.
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.
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.
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.
Not
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.
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.
Görevler’de, Aracı havuzu olarak Hosted VS2017’yi seçin.
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.
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.
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.
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.
Yeni bir küme bağlantısı eklemek için Görevler’i, ardından Ortam 1’, ve daha sonra +Yeni’yi seçin.
Yeni Service Fabric Bağlantısı 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.
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.
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.
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 () 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.
Yayımlanmamış değişiklikler durum çubuğu simgesini () 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.
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").
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:
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".
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.