Azure Spring Cloud'de hazırlama ortamı ayarlama
Bu makale şu için geçerlidir: ✔️ Java
Bu makalede, kümede mavi-yeşil dağıtım deseni kullanılarak hazırlama dağıtımının nasıl ayar Azure Spring Cloud. Mavi-yeşil dağıtım, Azure DevOps (yeşil) sürümün dağıtılması sırasında mevcut (mavi) sürümü canlı tutmanın dayandırılacağı bir sürekli teslim modelidir. Bu makalede, üretim dağıtımını değiştirmeden bu hazırlama dağıtımını üretime nasıl koyabilirsiniz?
Önkoşullar
- Azure Spring Cloud fiyatlandırma katmanında örnek alma
- Azure Spring Cloud CLI için bir uzantı
Bu makalede Spring Initializr'dan yerleşik bir uygulama lanmıştır. Bu örnek için farklı bir uygulama kullanmak istemeniz, hazırlama dağıtımınızı üretimden ayırt etmek için uygulamanın genele yönelik bir bölümünde basit bir değişiklik yapmak gerekir.
İpucu
Azure Cloud Shell, bu makaledeki yönergeleri çalıştırmak için kullanabileceğiniz ücretsiz bir etkileşimli kabuk. Git, JDK, Maven ve Azure CLI'nın en son sürümleri de dahil olmak üzere yaygın olarak önceden yüklenmiş Azure araçları vardır. Azure aboneliğinde oturum kullandıysanız azure aboneliğinizi Cloud Shell. Daha fazla bilgi edinmek için bkz. Azure Cloud Shell.
Bir sonraki bölümlerde mavi-yeşil Azure Spring Cloud ayarlamak için sonraki bölümlerde yer alan yönergeleri izleyin.
Azure CLI uzantısını yükleme
Aşağıdaki Azure Spring Cloud kullanarak Azure CLI'nın Azure Spring Cloud uzantısını yükleyin:
az extension add --name spring-cloud
Uygulamayı ve dağıtımları hazırlama
Uygulamayı derlemek için şu adımları izleyin:
Spring Initializr'ı bu yapılandırmayla kullanarak örnek uygulamanın kodunu üretin.
Kodu indirin.
Aşağıdaki HelloController.java kaynak dosyasını *\src\main\java\com\example\hellospring klasörüne * ekleyin:
package com.example.hellospring; import org.springframework.web.bind.annotation.RestController; import org.springframework.web.bind.annotation.RequestMapping; @RestController public class HelloController { @RequestMapping("/") public String index() { return "Greetings from Azure Spring Cloud!"; } }.jar dosyasını derleme:
mvn clean package -DskipTestsUygulamayı Azure Spring Cloud oluşturun:
az spring-cloud app create -n demo -g <resourceGroup> -s <Azure Spring Cloud instance> --assign-endpointUygulamayı şu Azure Spring Cloud:
az spring-cloud app deploy -n demo -g <resourceGroup> -s <Azure Spring Cloud instance> --jar-path target\hellospring-0.0.1-SNAPSHOT.jarHazırlama dağıtımınız için kodu değiştirme:
package com.example.hellospring; import org.springframework.web.bind.annotation.RestController; import org.springframework.web.bind.annotation.RequestMapping; @RestController public class HelloController { @RequestMapping("/") public String index() { return "Greetings from Azure Spring Cloud! THIS IS THE GREEN DEPLOYMENT"; } }.jar dosyasını yeniden oluşturma:
mvn clean package -DskipTestsYeşil dağıtımı oluşturun:
az spring-cloud app deployment create -n green --app demo -g <resourceGroup> -s <Azure Spring Cloud instance> --jar-path target\hellospring-0.0.1-SNAPSHOT.jar
Uygulamaları ve dağıtımları görüntüleme
Aşağıdaki yordamı kullanarak dağıtılan uygulamaları görüntüleme:
Uygulamanın Azure Spring Cloud örneğinize Azure portal.
Hizmet örneğinin uygulamalarını görüntülemek için sol bölmeden Uygulamalar bölmesini açın.

Bir uygulama seçerek ayrıntıları görüntüebilirsiniz.

Uygulamanın tüm dağıtımlarını görmek için Dağıtımlar'a bakın. Kılavuz hem üretim hem de hazırlama dağıtımlarını gösterir.

Şu anda dağıtılmış olan uygulamayı açmak için URL'yi seçin.

Varsayılan uygulamayı görmek için State sütununda Üretim'i seçin.

Hazırlama uygulamasını görmek için State sütununda Hazırlama'ya tıklayın.

İpucu
- CSS dosyasının doğru yüklendiğinden emin olmak için test uç noktanız eğik çizgi (/) ile sona erer.
- Tarayıcınız sayfayı görüntülemek için oturum açma kimlik bilgilerini girmenizi gerektiriyorsa, test uç noktanızı kodunu çözmek için URL kod çözmeyi kullanın. URL kod çözme, şu biçimde bir URL <username> https://: <password> @ <cluster-name> .test.azureapps.io/gateway/green. Uç noktanıza erişmek için bu biçimi kullanın.
Not
Yapılandırma sunucusu ayarları hem hazırlama ortamınıza hem de üretim ortamınıza uygulanır. Örneğin, yapılandırma sunucusundaki uygulama ağ geçidiniz için bağlam yolunu (server.servlet.context-path) bazı yol olarak ayarlarsanız yeşil dağıtım yolunuz <username> https://: <password> @ <cluster-name> .test.azureapps.io/gateway/green/somepath/... olarak değişir.
Bu noktada genel uygulamaya yönelik uygulama ağ geçidinizi ziyaret ediyorsanız, yeni değişikliğiniz olmadan eski sayfayı görüyorsanız.
Yeşil dağıtımı üretim ortamı olarak ayarlama
Hazırlama ortamınıza değişikliğinizi doğruladıktan sonra üretim ortamına itin. Uygulama > Dağıtımları sayfasında şu anda Üretim'de olan uygulamayı seçin.
Yeşil dağıtımın Kayıt durumu'nın ardından üç noktayı seçin ve ardından Üretim olarak ayarla'ya seçin.

Uygulamanın URL'sinde yaptığınız değişikliklerin görüntü olduğunu onaylayın.

Not
Yeşil dağıtımı üretim ortamı olarak ayardikten sonra, önceki dağıtım hazırlama dağıtımı olur.
Hazırlama dağıtımını değiştirme
Değişiklikten memnun değilseniz, uygulama kodunuzu değiştirebilir, yeni bir .jar paketi derlemeniz ve Azure CLI kullanarak bunu yeşil dağıtıma yükleyebilirsiniz:
az spring-cloud app deploy -g <resource-group-name> -s <service-instance-name> -n gateway -d green --jar-path gateway.jar
Hazırlama dağıtımını silme
Hazırlama dağıtımınızı Azure portal için hazırlama dağıtımınıza gidin ve Sil düğmesini seçin.
Alternatif olarak, aşağıdaki komutu çalıştırarak hazırlama dağıtımınızı Azure CLI'dan silin:
az spring-cloud app deployment delete -n <staging-deployment-name> -g <resource-group-name> -s <service-instance-name> --app gateway