Tanzu için Uygulama Yapılandırma Hizmeti’ni kullanma
Not
Azure Spring Apps, Azure Spring Cloud hizmetinin yeni adıdır. Hizmetin yeni bir adı olsa da, ekran görüntüleri, videolar ve diyagramlar gibi varlıkları güncelleştirmek için çalışırken bazı yerlerde eski adı bir süre görürsünüz.
Bu makale şunlar için geçerlidir:❌ Temel/Standart ✔️ Kurumsal
Bu makalede, Azure Spring Apps Enterprise planıyla VMware Tanzu için Uygulama Yapılandırma Hizmeti'nin nasıl kullanılacağı gösterilmektedir.
VMware Tanzu için Uygulama Yapılandırma Hizmeti, ticari VMware Tanzu bileşenlerinden biridir. Bir veya daha fazla Git deposunda tanımlanan özelliklerden doldurulan Kubernetes yerel ConfigMap
kaynaklarının yönetimini sağlar.
Uygulama Yapılandırma Hizmeti ile tüm ortamlardaki uygulamaların dış özelliklerini yönetmek için merkezi bir yeriniz vardır. Temel ve Standart planlarda Spring Cloud Config Server arasındaki farkları anlamak için Azure Spring Apps Temel veya Standart plan örneğini Kurumsal plana geçirme bölümünün Dış yapılandırma için Uygulama Yapılandırma Hizmeti'ni kullanma bölümüne bakın.
Uygulama Yapılandırma Hizmeti iki sürümde sunulur: 1. Nesil ve 2. Nesil. 1. Nesil sürümü temel olarak geriye dönük uyumluluk amacıyla mevcut müşterilere hizmet vermektedir ve yalnızca 30 Nisan 2024'e kadar desteklenmektedir. Yeni hizmet örnekleri 2. Nesil kullanmalıdır. 2. Nesil sürümü, Git depolarıyla iletişim kurmak için arka uç olarak flux kullanır ve 1. Nesil ile karşılaştırıldığında daha iyi performans sağlar.
Aşağıdaki tabloda alt bileşen ilişkileri gösterilmektedir:
Uygulama Yapılandırma Hizmeti oluşturma | Alt bileşenler |
---|---|
1. Nesil | application-configuration-service |
Gen2 | application-configuration-service flux-source-controller |
Aşağıdaki tabloda, başvurunuz için bazı karşılaştırma verileri gösterilmektedir. Ancak Git deposu boyutu, performans verilerini önemli ölçüde etkileyen önemli bir faktördür. Küçük tutmak için git deposunda yalnızca gerekli yapılandırma dosyalarını depolamanızı öneririz.
Uygulama Yapılandırma Hizmeti oluşturma | 100 desenin altında yenileme süresi | 250 desenin altında yenileme süresi | 500 desenin altında yenileme süresi |
---|---|---|---|
1. Nesil | 330 sn | 840 sn | 1500 sn |
Gen2 | 13 sn | 100 sn | 378 sn |
2. Nesil ayrıca uzak bir Git deposuna bağlandığınızda daha fazla güvenlik doğrulaması sağlar. 2. Nesil, HTTPS kullanıyorsanız güvenli bir bağlantı gerektirir ve SSH bağlantısı kullanırken doğru konak anahtarı ve konak algoritmasını doğrular.
Bir Azure Spring Apps Enterprise hizmet örneği oluştururken Uygulama Yapılandırma Hizmeti sürümünü seçebilirsiniz. Varsayılan sürüm 1. Nesil'dir. Örnek oluşturulduktan sonra 2. Nesil'e de yükseltebilirsiniz, ancak eski sürüme düşürme desteklenmez. Yükseltme sıfır kapalı kalma süresidir, ancak yine de üretim ortamına geçmeden önce hazırlama ortamında test yapmanızı öneririz.
Önkoşullar
- Uygulama Yapılandırma Hizmeti'nin etkinleştirildiği, önceden sağlanmış bir Azure Spring Apps Kurumsal plan örneği. Daha fazla bilgi için bkz . Hızlı Başlangıç: Kurumsal planı kullanarak uygulamaları derleme ve Azure Spring Apps'e dağıtma.
Uygulama Yapılandırma Hizmeti ayarlarını yönetme
Uygulama Yapılandırma Hizmeti, yapılandırma dosyalarınızı depolamak için Azure DevOps, GitHub, GitLab ve Bitbucket'i destekler.
Hizmet ayarlarını yönetmek için Ayarlar bölümünü açın. Bu bölümde, aşağıdaki önemli yönleri yapılandırabilirsiniz:
- Oluşturma: Hizmet neslini yükseltin.
- Yenileme Aralığı: Hizmetin Git depolarından güncelleştirmeleri denetleme sıklığını ayarlayın.
- Depolar: Yeni girdiler ekleyin veya mevcut girdileri değiştirin. Bu işlev, hizmet izleyicilerinin verileri çekmek için hangi depoları kullandığını denetlemenizi sağlar.
Geçerli hizmet nesliniz 1. Nesil ise daha iyi performans için 2. Nesil'e yükseltebilirsiniz. Daha fazla bilgi için 1. Nesilden 2. Nesil'e yükseltme bölümüne bakın.
Yenileme Aralığı, depodaki güncelleştirmeleri denetleme sıklığını (saniye cinsinden) belirtir. En düşük değer 0'dır ve bu da otomatik yenilemeyi devre dışı bırakır. En iyi performans için bu aralığı en az 60 saniye olarak ayarlayın.
Aşağıdaki tabloda her depo girdisinin özellikleri açıklanmaktadır:
Özellik | Gerekli mi? | Açıklama |
---|---|---|
Name |
Yes | Her Git deposunu etiketlemek için benzersiz bir ad. |
Patterns |
Yes | Git depolarında aranacak desenler. Her desen için {application}-{profile}.yml yerine {application} veya {application}/{profile} gibi bir biçim kullanın. Desenleri virgülle ayırın. Daha fazla bilgi için bu makalenin Desen bölümüne bakın. |
URI |
Yes | Git URI'si (örneğin, https://github.com/Azure-Samples/piggymetrics-config veya git@github.com:Azure-Samples/piggymetrics-config ) |
Label |
Yes | Git deposunda aranacak dal adı. |
Search path |
Hayır | Git deposunun alt dizinlerini aramak için virgülle ayrılmış isteğe bağlı arama yolları. |
Desen
Yapılandırma, bir desende tanımladığınız bilgiler kullanılarak Git arka uçlarından çekilir. Desen, aşağıdaki yönergelerde açıklandığı gibi {application}/{profile} birleşimidir.
- {application} - Yapılandırmasını almakta olduğunuz bir uygulamanın adı. Değeri
application
varsayılan uygulama olarak kabul edilir ve birden çok uygulama arasında paylaşılan yapılandırma bilgilerini içerir. Diğer tüm değerler belirli bir uygulamaya başvurur ve hem belirli uygulamanın hem de varsayılan uygulamanın paylaşılan özelliklerinin özelliklerini içerir. - {profile} -Isteğe bağlı. Özelliklerini alabildiğiniz bir profilin adı. Boş bir değer veya değeri
default
, profiller arasında paylaşılan özellikleri içerir. Varsayılan olmayan değerler, belirtilen profilin özelliklerini ve varsayılan profilin özelliklerini içerir.
Kimlik Doğrulaması
Aşağıdaki ekran görüntüsünde Uygulama Yapılandırma Hizmeti tarafından desteklenen üç tür depo kimlik doğrulaması gösterilmektedir.
Aşağıdaki listede üç kimlik doğrulama türü açıklanmaktadır:
Genel depo.
Genel depo kullanırken ek kimlik doğrulaması yapılandırmasına ihtiyacınız yoktur. Kimlik Doğrulama formunda Genel'i seçin.
Aşağıdaki tabloda, genel Git deposu ayarlamak için kullanabileceğiniz yapılandırılabilir özellik gösterilmektedir:
Özellik Gerekli mi? Açıklama CA certificate
Hayır Yalnızca Git deposu URL'si için otomatik olarak imzalanan bir sertifika kullanıldığında gereklidir. Temel kimlik doğrulaması ile özel depo.
Aşağıdaki tabloda, temel kimlik doğrulamasıyla özel bir Git deposu ayarlamak için kullanabileceğiniz yapılandırılabilir özellikler gösterilmektedir:
Özellik Gerekli mi? Açıklama username
Yes Depoya erişmek için kullanılan kullanıcı adı. password
Yes Depoya erişmek için kullanılan parola. CA certificate
Hayır Yalnızca Git deposu URL'si için otomatik olarak imzalanan bir sertifika kullanıldığında gereklidir. SSH kimlik doğrulaması ile özel depo.
Aşağıdaki tabloda, SSH ile özel bir Git deposu ayarlamak için kullanabileceğiniz yapılandırılabilir özellikler gösterilmektedir:
Özellik Gerekli mi? Açıklama Private key
Yes Git kullanıcısını tanımlayan özel anahtar. Parolayla şifrelenmiş özel anahtarlar desteklenmez. Host key
1. Nesil için Hayır
2. Nesil için EvetGit sunucusunun konak anahtarı. Komut satırında Git aracılığıyla sunucuya bağlanırsanız, konak anahtarı .ssh/known_hosts dosyanızdadır. içinde belirtildiğinden Host key algorithm
algoritma ön ekini eklemeyin.Host key algorithm
1. Nesil için Hayır
2. Nesil için Evetiçin hostKey
algoritma: birissh-dss
,ssh-rsa
,ecdsa-sha2-nistp256
,ecdsa-sha2-nistp384
veecdsa-sha2-nistp521
. (SağlanıyorsaHost key
gereklidir).Strict host key checking
Hayır Sağlanan Host key
kullanılırken bir hatayla karşılaşırsa arka ucun yoksayılıp yoksayılmayacağını gösteren isteğe bağlı değer. Geçerli değerler:true
vefalse
. Varsayılan değertrue
değeridir.
Hedef URI'ye erişimi doğrulamak için Doğrula'yı seçin. Doğrulama başarıyla tamamlandıktan sonra, yapılandırma ayarlarını güncelleştirmek için Uygula'yı seçin.
1. Nesil'den 2. Nesil'e yükseltme
Uygulama Yapılandırma Hizmeti 2. Nesil, özellikle çok sayıda yapılandırma dosyanız olduğunda 1. Nesil'e kıyasla daha iyi performans sağlar. Özellikle 1. Nesil yakında kullanımdan kaldırıldığı için 2. Nesil'i kullanmanızı öneririz. 1. Nesil'den 2. Nesil'e yükseltme sıfır kapalı kalma süresidir, ancak yine de üretim ortamına geçmeden önce hazırlama ortamında test yapmanızı öneririz.
2. Nesil, SSH kimlik doğrulaması kullanılırken 1. Nesil'den daha fazla yapılandırma özelliği gerektirir. 2. Nesil ile çalışması için uygulamanızdaki yapılandırma özelliklerini güncelleştirmeniz gerekir. Aşağıdaki tabloda SSH kimlik doğrulaması kullanılırken 2. Nesil için gerekli özellikler gösterilmektedir:
Özellik | Açıklama |
---|---|
Host key |
Git sunucusunun konak anahtarı. Komut satırında Git aracılığıyla sunucuya bağlanırsanız, konak anahtarı .ssh/known_hosts dosyanızdadır. içinde belirtildiğinden Host key algorithm algoritma ön ekini eklemeyin. |
Host key algorithm |
için hostKey algoritma: biri ssh-dss , ssh-rsa , ecdsa-sha2-nistp256 , ecdsa-sha2-nistp384 veya ecdsa-sha2-nistp521 . |
1. Nesil'den 2. Nesil'e yükseltmek için aşağıdaki adımları kullanın:
Azure portalında, Azure Spring Apps hizmet örneğinizin Uygulama Yapılandırma Hizmeti sayfasına gidin.
Ayarlar bölümünü seçin ve ardından Oluşturma açılan menüsünde 2. Nesil'i seçin.
Hedef URI'ye erişimi doğrulamak için Doğrula'yı seçin. Doğrulama başarıyla tamamlandıktan sonra, yapılandırma ayarlarını güncelleştirmek için Uygula'yı seçin.
Polyglot desteği
Uygulama Yapılandırma Hizmeti, Spring Boot uygulamalarıyla sorunsuz çalışır. Hizmet tarafından oluşturulan özellikler Spring Boot tarafından dış yapılandırmalar olarak içeri aktarılır ve çekirdeklere eklenir. Ek kod yazmanız gerekmez. Değerleri, Spring's Environment soyutlaması aracılığıyla erişilen ek açıklamayı @Value
kullanarak kullanabilir veya ek açıklamayı @ConfigurationProperties
kullanarak yapılandırılmış nesnelere bağlayabilirsiniz.
Uygulama Yapılandırma Hizmeti dotNET, Go, Python gibi çok teknolojili uygulamaları da destekler. Uygulamalarda çok teknolojili uygulama dağıtımı sırasında yüklemek üzere belirttiğiniz yapılandırma dosyalarına erişmek için, gibi AZURE_SPRING_APPS_CONFIG_FILE_PATH
bir adla ortam değişkeni aracılığıyla alabildiğiniz bir dosya yoluna erişmeyi deneyin. Hedeflenen tüm yapılandırma dosyalarınıza bu yol altında erişebilirsiniz. Yapılandırma dosyalarındaki özellik değerlerine erişmek için uygulamanızın mevcut okuma/yazma dosya kitaplıklarını kullanın.
Yenileme stratejileri
Yapılandırmalarınızı bir Git deposunda değiştirip işlediğinizde, bu değişikliklerin uygulamalarınıza yansıtılması için birkaç adım uygulanır. Otomatikleştirilmiş olsa da bu işlem, her biri kendi zamanlamasına ve davranışına sahip aşağıdaki ayrı aşamaları ve bileşenleri içerir:
- Uygulama Yapılandırma Hizmeti tarafından yoklama: Uygulama Yapılandırma Hizmeti, değişiklikleri algılamak için arka uç Git depolarını düzenli olarak yoklar. Bu yoklama, yenileme aralığı tarafından tanımlanan belirli bir sıklıkta gerçekleşir. Bir değişiklik algılandığında, Uygulama Yapılandırma Hizmeti Kubernetes'i
ConfigMap
güncelleştirir. ConfigMap
güncelleştirme ve kubelet önbelleğiyle etkileşim: Azure Spring Apps'te buConfigMap
, ilgili uygulamaya bir veri birimi olarak bağlanır. Ancak kubelet'in içindeki değişiklikleri tanımak için önbelleğini yenileme sıklığı nedeniyle bu işlemdeConfigMap
doğal bir gecikme yaşanır.- Uygulama güncelleştirilmiş yapılandırmayı okur: Azure Spring Apps ortamında çalışan uygulamanız güncelleştirilmiş yapılandırma değerlerine erişebilir. Spring Bağlamı'ndaki mevcut çekirdekler, güncelleştirilmiş yapılandırmaları kullanacak şekilde otomatik olarak yenilenmez.
Bu aşamalar aşağıdaki diyagramda özetlenir:
Uygulama Yapılandırma Hizmeti'nin yoklama yenileme aralığını, özel gereksinimlerinizle uyumlu olacak şekilde ayarlayabilirsiniz. Uygulamanızda güncelleştirilmiş yapılandırmaları uygulamak için bir yeniden başlatma veya yenileme eylemi gereklidir.
Spring uygulamalarında, özellikler Spring Bağlamı içinde fasulye olarak tutulur veya başvurulur. Yeni yapılandırmaları yüklemek için aşağıdaki yöntemleri kullanmayı göz önünde bulundurun:
Uygulamayı yeniden başlatın. Uygulamanın yeniden başlatılması her zaman yeni yapılandırmayı yükler.
/actuator/refresh
Spring Actuator aracılığıyla yapılandırma istemcisinde kullanıma sunulan uç noktayı çağırın.Bu yöntemi kullanmak için yapılandırma istemcinizin pom.xml dosyasına aşağıdaki bağımlılığı ekleyin.
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-actuator</artifactId> </dependency>
Aşağıdaki yapılandırmayı ekleyerek aktüatör uç noktasını da etkinleştirebilirsiniz:
management.endpoints.web.exposure.include=refresh, bus-refresh, beans, env
Uç noktayı çağırarak
/actuator/refresh
özellik kaynaklarını yeniden yükledikten sonra, ek açıklamayı@RefreshScope
içeren çekirdeklerde ile@Value
ilişkili öznitelikler yenilenir.@Service @Getter @Setter @RefreshScope public class MyService { @Value private Boolean activated; }
Aşağıdaki örnekte gösterildiği gibi yeni yapılandırmayı yenilemek için uygulama uç noktasıyla curl kullanın:
curl -X POST http://{app-endpoint}/actuator/refresh
Dosya değişikliğini izlemek ve isteğe bağlı olarak bağlamı yenilemek için kullanın
FileSystemWatcher
.FileSystemWatcher
, dosya değişiklikleri için belirli dizinleri izleyen ile birliktespring-boot-devtools
gönderilen bir sınıftır veya benzer işleve sahip başka bir yardımcı program kullanabilirsiniz. Önceki seçenek kullanıcıların yenilemeyi etkin bir şekilde başlatmasını gerektirirken, ikincisi dosya değişikliklerini izleyebilir ve güncelleştirmeleri algıladıktan sonra yenilemeyi otomatik olarak çağırabilir. Polyglot desteği bölümünde belirtildiği gibi ortam değişkeniniAZURE_SPRING_APPS_CONFIG_FILE_PATH
kullanarak dosya yolunu alabilirsiniz.
Uygulama Yapılandırma Hizmeti ayarlarını yapılandırma
Uygulama Yapılandırma Hizmeti'ni yapılandırmak için aşağıdaki adımları kullanın:
Uygulama Yapılandırma Hizmeti'ne tıklayın.
Uygulama Yapılandırma Hizmeti'ne ayrılan çalışma durumunu ve kaynakları görüntülemek için Genel Bakış'ı seçin.
Ayarlar'ı seçin ve Depolar bölümüne Git arka uç bilgilerini içeren yeni bir giriş ekleyin.
Hedef URI'ye erişimi doğrulamak için Doğrula'yı seçin. Doğrulama başarıyla tamamlandıktan sonra, yapılandırma ayarlarını güncelleştirmek için Uygula'yı seçin.
TLS sertifikasını, 2. Nesil için otomatik olarak imzalanan bir sertifikayla Git arka ucuna erişecek şekilde yapılandırın
Bu adım isteğe bağlıdır. Git arka ucu için otomatik olarak imzalanan bir sertifika kullanıyorsanız, TLS sertifikasını Git arka ucuna erişecek şekilde yapılandırmanız gerekir.
Önce sertifikayı Azure Spring Apps'e yüklemeniz gerekir. Daha fazla bilgi için Azure Spring Apps'te uygulamanızda TLS/SSL sertifikalarını kullanma bölümünün Sertifikayı içeri aktarma bölümüne bakın.
TLS sertifikasını yapılandırmak için aşağıdaki adımları kullanın:
Uygulama Yapılandırma Hizmeti'ni uygulamalarla kullanma
Git arka ucuyla Uygulama Yapılandırma Hizmeti'ni ve merkezi yapılandırmaları kullandığınızda, uygulamayı Uygulama Yapılandırma Hizmeti'ne bağlamanız gerekir.
Uygulama Yapılandırma Hizmeti'ni uygulamalarla birlikte kullanmak için aşağıdaki adımları kullanın:
Uygulama bağlama sekmesini açın.
Uygulamayı bağla'yı seçin ve açılan listeden bir uygulama seçin. Bağlamak için Uygula'yı seçin.
Not
Bağlama/bağlamayı kaldırma durumunu değiştirdiğinizde, bağlamanın etkili olması için uygulamayı yeniden başlatmanız veya yeniden dağıtmanız gerekir.
Gezinti menüsünde Uygulamalar'ı seçerek tüm uygulamaların listesini görüntüleyin.
Sütun desenlerini yapılandırmak için
name
hedef uygulamayı seçin.Gezinti bölmesinde Yapılandırma'yı ve ardından Genel ayarlar'ı seçin.
Yapılandırma dosyası desenleri açılan listesinden bir veya daha fazla desen seçin. Daha fazla bilgi için Desen bölümüne bakın.
Kaydet'i seçin.
Uygulamayı Uygulama Yapılandırma Hizmeti'ne bağlama
Artık yeni bir uygulama oluştururken uygulamanızı Uygulama Yapılandırma Hizmeti'ne bağlamayı seçebilirsiniz.
Yeni bir uygulama oluşturmak ve bunu Uygulama Yapılandırma Hizmeti'ne bağlamak için aşağıdaki adımları kullanın:
Tüm uygulamalarınızı görmek için gezinti bölmesinde Uygulamalar'ı seçin.
Yeni bir uygulama oluşturmak için Uygulama Oluştur'u seçin.
Yeni uygulamanız için bir ad girin.
Bağla sekmesini ve ardından açılan listeden Uygulama Yapılandırma Hizmeti'ni seçin.
Uygulamanızı oluşturmayı tamamlamak ve Uygulama Yapılandırma Hizmeti'ne bağlamak için Oluştur'u seçin.
Hizmet oluşturulduktan sonra Uygulama Yapılandırma Hizmetini etkinleştirme/devre dışı bırakma
Hizmet oluşturulduktan sonra Azure portalını veya Azure CLI'yı kullanarak Uygulama Yapılandırma Hizmeti'ni etkinleştirebilir ve devre dışı bırakabilirsiniz. Uygulama Yapılandırma Hizmetini devre dışı bırakmadan önce tüm uygulamalarınızın bağlantısını kaldırmanız gerekir.
Uygulama Yapılandırma Hizmeti'ni etkinleştirmek veya devre dışı bırakmak için aşağıdaki adımları kullanın:
- Hizmet kaynağınıza gidin ve Uygulama Yapılandırma Hizmeti'ne tıklayın.
- Yönet'i seçin.
- Uygulama Yapılandırma Hizmetini Etkinleştir'i seçin veya seçimini kaldırın ve ardından Kaydet'i seçin.
- Artık Uygulama Yapılandırma Hizmeti sayfasında Uygulama Yapılandırma Hizmeti'nin durumunu görüntüleyebilirsiniz.
ConfigMap'te yapılandırma dosyasını inceleme
Aşağıdaki bölümde, ilgili Kubernetes içindeki yukarı akış Git depolarından Application Configuration Service tarafından çekilen yapılandırma dosyasının içeriğinin nasıl incelendiği gösterilmektedir ConfigMap
. Daha fazla bilgi için bu makalenin Yenileme stratejileri bölümüne bakın.
Azure rolü atama
İlk olarak, Azure rolünün Azure Spring Apps Application Configuration Service Config File Pattern Reader Role
size atanmış olması gerekir.
Azure rolü atamak için aşağıdaki adımları kullanın:
Azure portalını açın ve Azure Spring Apps hizmet örneğinize gidin.
Gezinti bölmesinde Erişim Denetimi (IAM) öğesini seçin.
Erişim Denetimi (IAM) sayfasında Ekle'yi ve ardından Rol ataması ekle'yi seçin.
Rol ataması ekle sayfasında, Ad listesinde hedef rolü arayıp seçin ve ardından İleri'yi seçin.
Üyeler'i seçin ve ardından kullanıcı adınızı arayın ve seçin.
Gözden geçir + ata'yı seçin.
Azure CLI ile yapılandırma dosyasını inceleme
Yapılandırma dosyasının içeriğini Desene göre görüntülemek için aşağıdaki komutu kullanın:
az spring application-configuration-service config show \
--resource-group <resource-group-name> \
--service <Azure-Spring-Apps-instance-name> \
--config-file-pattern <pattern>
Bu komut aşağıdaki örneğe benzer bir JSON çıkışı oluşturur:
{
"configurationFiles": {
"application.properties": [
"example.property.application.name: example-service",
"example.property.cloud: Azure"
]
},
"metadata": {
"gitRevisions": "[{\"url\":\"{gitRepoUrl}\",\"revision\":\"{revisionInfo}\"}]"
}
}
Not
metadata
ve gitRevisions
özellikleri, Uygulama Yapılandırma Hizmeti'nin 1. Nesil sürümünde kullanılamaz.
Yapılandırma dosyasını belirtilen klasöre aktarmak için parametresiyle --export-path {/path/to/target/folder}
bu komutu da kullanabilirsiniz. Hem göreli yolları hem de mutlak yolları destekler. Yolu belirtmezseniz, komut varsayılan olarak geçerli dizinin yolunu kullanır.
Uygulamadaki yapılandırma dosyasını inceleme
Uygulamayı Uygulama Yapılandırma Hizmeti'ne bağladıktan ve uygulama dağıtımı için Desen'i ayarladıktan sonra, bu makalenin Uygulama Yapılandırma Hizmeti'ni uygulamalarla kullanma bölümünde açıklandığı gibi, ConfigMap
desenin yapılandırma dosyasını içeren uygulama kapsayıcısına bağlanmalıdır. Uygulama dağıtımının her örneğindeki yapılandırma dosyalarını denetlemek için aşağıdaki adımları kullanın:
Uygulama örneklerinden birine Bağlan. Daha fazla bilgi için bkz. Sorun giderme için uygulama örneğine Bağlan.
echo $AZURE_SPRING_APPS_CONFIG_FILE_PATH
Yapılandırma dosyalarını içeren klasörleri bulmak için komutunu kullanın. Aşağıdaki örnekte gösterildiği gibi konum listesi virgülle ayrılmış olarak gösterilir:$ echo $AZURE_SPRING_APPS_CONFIG_FILE_PATH /etc/azure-spring-cloud/configmap/acs-default-payment-default-e9d46,/etc/azure-spring-cloud/configmap/acs-default-catalog-default-616f4
gibi
cat
komutları kullanarak yapılandırma dosyasının içeriğini denetleyin.
Not
Git düzeltme bilgileri uygulamada kullanılamaz.
Günlükleri denetleme
Aşağıdaki bölümlerde, Azure CLI'yi veya Azure portalını kullanarak uygulama günlüklerini görüntüleme adımları gösterilmektedir.
Gerçek zamanlı günlük akışını kullanma
Azure CLI ile günlükleri gerçek zamanlı olarak akışla aktarabilirsiniz. Daha fazla bilgi için bkz . Azure Spring Apps yönetilen bileşen günlüklerini gerçek zamanlı olarak akışla aktarma. Aşağıdaki örneklerde ve flux-source-controller
alt bileşenleri için sürekli olarak yeni günlük akışı yapmak için application-configuration-service
Azure CLI komutlarını nasıl kullanabileceğiniz gösterilmektedir.
günlüklerinin akışını yapmak için application-configuration-service
aşağıdaki komutu kullanın:
az spring component logs \
--resource-group <resource-group-name> \
--service <Azure-Spring-Apps-instance-name> \
--name application-configuration-service \
--all-instances \
--follow
günlüklerinin akışını yapmak için flux-source-controller
aşağıdaki komutu kullanın:
az spring component logs \
--resource-group <resource-group-name> \
--service <Azure-Spring-Apps-instance-name> \
--name flux-source-controller \
--all-instances \
--follow
Log Analytics kullanma
Aşağıdaki bölümlerde Log Analytics kullanarak Sistem Günlüklerini nasıl açabileceğiniz ve görüntüleyebileceğiniz gösterilmektedir.
Log Analytics için tanılama ayarları
Uygulama Yapılandırma Hizmeti günlüklerini sorgulamadan önce Sistem Günlükleri'ni açmanız ve günlükleri Log Analytics örneğine göndermeniz gerekir. Azure portalında Sistem Günlüklerini etkinleştirmek için aşağıdaki adımları kullanın:
Azure Spring Apps örneğinizi açın.
Gezinti bölmesinde Tanılama ayarları'nı seçin.
Tanılama ayarı ekle'yi veya var olan bir ayar için Ayarı düzenle'yi seçin.
Günlükler bölümünde Sistem Günlükleri kategorisini seçin.
Hedef ayrıntıları bölümünde Log Analytics çalışma alanına gönder'i ve ardından çalışma alanınızı seçin.
Ayarı güncelleştirmek için Kaydet'i seçin.
Log Analytics'te günlükleri denetleme
Azure portalını kullanarak ve flux-source-controller
günlüklerini application-configuration-service
denetlemek için aşağıdaki adımları kullanın:
Sistem Günlüklerini açtığınızdan emin olun. Daha fazla bilgi için Log Analytics için tanılama ayarları bölümüne bakın.
Azure Spring Apps örneğinizi açın.
Gezinti menüsünde Günlükler'i ve ardından Genel Bakış'ı seçin.
Sorgu düzenleme bölmesinde aşağıdaki örnek sorguları kullanın. Zaman aralığını ayarlayın ve ardından Günlükleri aramak için Çalıştır'ı seçin.
günlüklerini görüntülemek için
application-configuration-service
aşağıdaki sorguyu kullanın:AppPlatformSystemLogs | where LogType in ("ApplicationConfigurationService") | project TimeGenerated , ServiceName , LogType, Log , _ResourceId | limit 100
günlüklerini görüntülemek için
flux-source-controller
aşağıdaki sorguyu kullanın:AppPlatformSystemLogs | where LogType in ("Flux") | project TimeGenerated , ServiceName , LogType, Log , _ResourceId | limit 100
Not
Günlükler Log Analytics'te kullanılabilir duruma gelmeden önce birkaç dakika gecikme olabilir.
Bilinen sorunları giderme
En son değişiklikler uygulamalara yansıtılamıyorsa Yenileme stratejileri bölümüne göre aşağıdaki öğeleri denetleyin:
- Aşağıdaki öğeleri denetleyerek Git deposunun doğru güncelleştirildiğini onaylayın:
- İstenen yapılandırma dosyası değişikliklerinin dalının güncelleştirildiğini onaylayın.
- Uygulama Yapılandırma Hizmeti'nde yapılandırılan desenin güncelleştirilmiş yapılandırma dosyalarıyla eşleştiklerini onaylayın.
- Uygulamanın Uygulama Yapılandırma Hizmeti'ne bağlı olduğunu onaylayın.
- Bu makalenin
ConfigMap
Yapılandırma Haritasında yapılandırma dosyasını inceleme bölümünde açıklandığı gibi, uygulama tarafından kullanılan Desen için yapılandırma dosyasını içeren dosyanın güncelleştirildiğini onaylayın. Güncelleştirilmezse bir bilet oluşturun. - öğesinin, bu makalenin Uygulama bölümündeki Yapılandırma dosyasını inceleme bölümünde açıklandığı gibi bir dosya olarak uygulamaya bağlandığını
ConfigMap
onaylayın. Dosya güncelleştirilmezse Kubernetes yenileme aralığını (1 dakika) bekleyin veya uygulamayı yeniden başlatarak yenilemeye zorlayın.
Bu öğeleri denetledikten sonra, uygulamaların güncelleştirilmiş yapılandırmaları okuyabilmesi gerekir. Uygulamalar hala güncelleştirilmezse bir bilet oluşturun.