Öğretici: Prometheus Ölçümlerini temel alan KEDA ölçeklendiricisi ile Oracle WebLogic Server'ı Azure Kubernetes Service'e (AKS) geçirme

Bu öğreticide Oracle WebLogic Server'ı (WLS) Azure Kubernetes Service'e (AKS) geçirme ve Prometheus ölçümlerine göre otomatik yatay ölçeklendirmeyi yapılandırma adımları gösterilmektedir.

Bu öğreticide aşağıdaki görevleri yerine getirebilirsiniz:

  • WebLogic Monitoring Exporter kullanarak hangi WebLogic uygulama ölçümlerini dışarı aktarabileceğinizi öğrenin.
  • Azure market teklifi kullanarak AKS'de WebLogic uygulaması dağıtın ve çalıştırın.
  • Bir Azure market teklifi kullanarak Prometheus için Azure İzleyici yönetilen hizmetini etkinleştirin.
  • Azure market teklifini kullanarak WLS ölçümlerini Azure İzleyici çalışma alanına sağlayın.
  • Azure market teklifini kullanarak Kubernetes Olay Odaklı Otomatik Ölçeklendirmeyi (KEDA) AKS kümesiyle tümleştirin.
  • Prometheus Ölçümlerini temel alan bir KEDA ölçeklendiricisi oluşturun.
  • Ölçekleyici yapılandırmasını doğrulayın.

Aşağıdaki diyagramda oluşturduğunuz mimari gösterilmektedir:

Prometheus Ölçümlerini temel alan KEDA ölçeklendiricisi ile AKS üzerinde WLS'nin çözüm mimarisinin diyagramı.

AKS üzerinde Oracle WebLogic Server teklifi, AKS üzerinde bir WLS işleci ve WLS etki alanı çalıştırır. WLS işleci, görüntü etki alanı kaynak türündeki bir model kullanılarak dağıtılan bir WLS etki alanını yönetir. WLS işleci hakkında daha fazla bilgi edinmek için bkz . Oracle WebLogic Kubernetes İşleci.

WebLogic Monitoring Exporter, WebLogic Server ölçümlerini kazır ve Bunları Prometheus'a besler. Veren, çalışma zamanı durumuna ve ölçümlerine erişmek için WebLogic Server 12.2.1.x RESTful Yönetim Arabirimini kullanır.

Prometheus için Azure İzleyici yönetilen hizmeti, Cloud Native Computing Foundation'ın Prometheus projesini temel alan Prometheus uyumlu bir izleme çözümü kullanarak WLS'den ölçümleri büyük ölçekte toplar ve kaydeder. Daha fazla bilgi için bkz . Prometheus için Azure İzleyici yönetilen hizmeti.

Bu makale, Azure İzleyici çalışma alanından Prometheus ölçümlerine göre WLS kümesini ölçeklendirmek için KEDA'yi AKS kümenizle tümleştirir. KEDA, Prometheus için Azure İzleyici yönetilen hizmetini izler ve bu verileri AKS ve Yatay Pod Otomatik Ölçeklendiricisi'ne (HPA) besleyerek WLS iş yükünün hızlı bir şekilde ölçeklendirilmesini sağlar.

Aşağıdaki WLS durumu ve ölçümleri varsayılan olarak dışarı aktarılır. Dışarı aktarıcıyı diğer ölçümleri isteğe bağlı olarak dışarı aktaracak şekilde yapılandırabilirsiniz. WebLogic Monitoring Exporter yapılandırmasının ve kullanımının ayrıntılı açıklaması için bkz . WebLogic Monitoring Exporter.

WebLogic Ölçümleri.

Önkoşullar

  • Azure aboneliği. Azure aboneliğiniz yoksa başlamadan önce ücretsiz bir hesap oluşturun.
  • Abonelikte rolüne Owner veya Contributor ve User Access Administrator rollerine sahip olduğunuzdan emin olun. Azure portalını kullanarak Azure rol atamalarını listeleme bölümünde yer alan adımları izleyerek atamayı doğrulayabilirsiniz.
  • WSL, GNU/Linux veya macOS yüklü windows ile yerel bir makine hazırlayın.
  • Azure CLI komutlarını çalıştırmak için Azure CLI sürüm 2.54.0 veya üzerini yükleyin.
  • kubectl'yi yükleyin ve ayarlayın.
  • cURL'yi yükleyin.
  • Oracle çoklu oturum açma (SSO) hesabının kimlik bilgilerine sahip olun. Hesap oluşturmak için bkz . Oracle Hesabınızı Oluşturma.
  • WLS lisans koşullarını kabul etmek için aşağıdaki adımları kullanın:
    1. Oracle Container Registry'yi ziyaret edin ve oturum açın.
    2. Destek yetkilendirmeniz varsa Ara Yazılım'ı seçin, ardından weblogic_cpu'ı arayın ve seçin.
    3. Oracle'dan destek yetkilendirmeniz yoksa Ara Yazılım'ı seçin, ardından weblogic araması yapın ve seçin.
    4. Lisans sözleşmesini kabul edin.

Örnek uygulamayı hazırlama

Bu makalede örnek uygulama olarak weblogic-kubernetes-operator deposundaki testwebapp kullanılmaktadır.

Önceden oluşturulmuş örnek uygulamayı indirmek ve bir dizine genişletmek için aşağıdaki komutları kullanın. Bu makalede birkaç dosya yazdığından, bu komutlar her şeyi içeren bir üst düzey dizin oluşturur.

export BASE_DIR=$PWD/wlsaks
mkdir $BASE_DIR && cd $BASE_DIR
curl -L -o testwebapp.war https://aka.ms/wls-aks-testwebapp
unzip -d testwebapp testwebapp.war

Örnek uygulamayı değiştirme

Bu makalede, WLS kümesinin ölçeğini büyütmek ve küçültmek için ölçüm openSessionsCurrentCount kullanılır. Varsayılan olarak, WebLogic Server'da oturum zaman aşımı 60 dakikadır. Ölçeği azaltma özelliğini hızla gözlemlemek için kısa bir zaman aşımı ayarlamak için aşağıdaki adımları kullanın:

  1. kullanarak wls:timeout-secs150 saniyelik bir oturum zaman aşımı belirtmek için aşağıdaki komutu kullanın. biçimiHEREDOC, testwebapp/WEB-INF/weblogic.xml dosyasının üzerine istenen içerikle yazmak için kullanılır.

    cat <<EOF > testwebapp/WEB-INF/weblogic.xml
    <?xml version="1.0" encoding="UTF-8"?>
    
    <wls:weblogic-web-app xmlns:wls="http://xmlns.oracle.com/weblogic/weblogic-web-app" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd http://xmlns.oracle.com/weblogic/weblogic-web-app http://xmlns.oracle.com/weblogic/weblogic-web-app/1.4/weblogic-web-app.xsd">
        <wls:weblogic-version>12.2.1</wls:weblogic-version>
        <wls:jsp-descriptor>
        <wls:keepgenerated>false</wls:keepgenerated>
        <wls:debug>false</wls:debug>
      </wls:jsp-descriptor>
      <wls:context-root>testwebapp</wls:context-root>
      <wls:session-descriptor>
        <wls:timeout-secs>150</wls:timeout-secs>
     </wls:session-descriptor>
    </wls:weblogic-web-app>
    EOF
    
  2. Örnek uygulamayı yeniden başlatmak için aşağıdaki komutu kullanın:

    cd testwebapp && zip -r ../testwebapp.war * && cd ..
    

Azure Depolama hesabı oluşturma ve uygulamayı karşıya yükleme

Depolama hesabı ve kapsayıcı oluşturmak için aşağıdaki adımları kullanın. Bu adımlardan bazıları sizi diğer kılavuzlara yönlendirir. Adımları tamamladıktan sonra, WLS'de dağıtmak üzere örnek bir uygulamayı karşıya yükleyebilirsiniz.

  1. Azure Portal’ında oturum açın.
  2. Depolama hesabı oluşturma bölümünde yer alan adımları izleyerek bir depolama hesabı oluşturun. Bu makaledeki değerler için aşağıdaki özelleştirmeleri kullanın:
    • Depolama hesabı için yeni bir kaynak grubu oluşturun.
    • Bölge için Doğu ABD'yi seçin.
    • Depolama hesabı adı için kaynak grubu adıyla aynı değeri kullanın.
    • Performans alanında Standart’ı seçin.
    • Kalan sekmelerde özelleştirme gerekmez.
  3. Hesabı doğrulamaya ve oluşturmaya devam edin, ardından bu makaleye dönün.
  4. Hızlı Başlangıç' ın Kapsayıcı oluşturma bölümündeki adımları izleyerek hesap içinde bir depolama kapsayıcısı oluşturun: Azure portalı ile blobları karşıya yükleme, indirme ve listeleme.
  5. Aynı makalede, testwebapp.war dosyasını karşıya yüklemek için Blok blobu yükleme bölümündeki adımları izleyin. Ardından bu makaleye dönün.

Azure Market teklifini kullanarak AKS üzerinde WLS dağıtma

Bu bölümde AKS üzerinde Oracle WebLogic Server teklifini kullanarak AKS üzerinde bir WLS kümesi oluşturacaksınız. Teklif, AKS'de WebLogic Server'ı kolayca dağıtmak için tam bir özellik kümesi sağlar. Bu makale, teklifin gelişmiş dinamik ölçeklendirme özelliklerine odaklanır. Teklif hakkında daha fazla bilgi için bkz . Azure Kubernetes Service (AKS) kümesinde WebLogic Server ile Java uygulaması dağıtma. Teklifle ilgili tüm başvuru belgeleri için Oracle belgelerine bakın.

Bu teklif, yatay otomatik ölçeklendirme için aşağıdaki seçenekleri uygular:

  • Kubernetes Ölçüm Sunucusu. Bu seçim, dağıtım zamanında gerekli tüm yapılandırmayı ayarlar. Yatay pod otomatik ölçeklendiricisi (HPA) çeşitli ölçümlerle dağıtılır. Dağıtımdan sonra HPA'yi daha da özelleştirebilirsiniz.

  • WebLogic İzleme İhracatçısı. Bu seçenek, Prometheus için WebLogic Monitoring Exporter, Azure İzleyici yönetilen hizmeti ve KEDA'yı otomatik olarak sağlar. Teklif dağıtımı tamamlandıktan sonra WLS ölçümleri dışarı aktarılır ve Azure İzleyici çalışma alanına kaydedilir. KEDA, Azure İzleyici çalışma alanından ölçümleri alma özelliğiyle yüklenir.

    Bu seçenekle, yapılandırmayı tamamlamak için dağıtımdan sonra daha fazla adım atmalısınız.

Bu makalede ikinci seçenek açıklanmaktadır. Yapılandırmayı tamamlamak için aşağıdaki adımları kullanın:

  1. Tarayıcınızda AKS üzerinde Oracle WebLogic Server teklifini açın ve Oluştur'u seçin. Teklifin Temel Bilgiler bölmesini görmeniz gerekir.

  2. Temel Bilgiler bölmesini doldurmak için aşağıdaki adımları kullanın:

    1. Abonelik için gösterilen değerin, önkoşullar bölümünde listelenen rollere sahip değerle aynı olduğundan emin olun.
    2. Kaynak grubu alanında Yeni oluştur'u seçin ve kaynak grubu için benzersiz bir değer (örneğin, wlsaks-eastus-20240109) doldurun.
    3. Örnek ayrıntıları'nın altında Bölge için Doğu ABD'yi seçin.
    4. Kimlik Bilgileri WebLogic altında, sırasıyla WebLogic Administrator ve WebLogic Model şifrelemesi için bir parola sağlayın. WebLogic Yöneticisi için kullanıcı adını ve parolayı bir kenara kaydedin.
    5. İsteğe Bağlı Temel Yapılandırma'nın yanında Hayır'ı seçin.
    6. İsteğe Bağlı Temel Yapılandırma'nın altında En büyük dinamik küme boyutu'nu 10 olarak ayarlayın. Bu değer, otomatik ölçeklendirme davranışını gözlemlemenizi sağlar.

    AKS Temel Bilgileri bölmesinde Oracle WebLogic Server'ın gösterildiği Azure portalının ekran görüntüsü.

  3. İleri'yi seçin ve AKS sekmesine gidin.

  4. Görüntü seçimi'nin altında aşağıdaki adımları kullanın:

    1. Oracle Çoklu Oturum Açma kimlik doğrulaması için önkoşullardan Oracle SSO kullanıcı adınızı doldurun.
    2. Oracle Çoklu Oturum Açma kimlik doğrulaması parolası için önkoşullardan Oracle SSO kimlik bilgilerinizi doldurun.

    AKS bölmesinde Oracle WebLogic Server - Görüntü Seçimi'ni gösteren Azure portalının ekran görüntüsü.

  5. Uygulama'nın altında aşağıdaki adımları kullanın:

    1. Uygulama bölümünde, Uygulama dağıtın mı? seçeneğinin yanındaki Evet'i seçin.

    2. Uygulama paketi (.war,.ear,.jar) öğesinin yanındaki Gözat'ı seçin.

    3. Önceki bölümden depolama hesabının adını yazmaya başlayın. İstenen depolama hesabı göründüğünde seçin.

    4. Önceki bölümden depolama kapsayıcısını seçin.

    5. Önceki bölümde yüklediğiniz testwebapp.war öğesinin yanındaki onay kutusunu seçin. Seç'i seçin.

    6. İleri'yi seçin.

      AKS bölmesinde Oracle WebLogic Server - Uygulama Seçimi'ni gösteren Azure portalının ekran görüntüsü.

  6. VARSAYıLAN değerleri TLS/SSL Yapılandırması bölmesinde bırakın. Yük Dengeleme bölmesine gitmek için İleri'yi seçin ve aşağıdaki adımları kullanın:

    1. Yönetim Konsolu için giriş oluşturma dışındaki tüm seçenekler için varsayılan değerleri bırakın. /console* yoluna sahip bir uygulama olmadığından emin olun; bu, Yönetim Konsolu yolu ile çakışmaya neden olur. Bu seçenek için Evet'i seçin.
    2. Kalan alanlar için varsayılan değerleri bırakın.
    3. İleri'yi seçin.

    AKS Yük Dengeleme bölmesinde Oracle WebLogic Server Kümesini gösteren Azure portalının ekran görüntüsü.

  7. DNS bölmesi için varsayılan değerleri bırakın, ardından Veritabanı bölmesine gitmek için İleri'yi seçin.

  8. Veritabanı bölmesi için varsayılan değerleri bırakın, İleri'yi seçerek Otomatik Ölçeklendirme bölmesine gidin ve aşağıdaki adımları kullanın:

    1. Yatay otomatik ölçeklendirme için kaynak sağlansın mı? seçeneğinin yanındaki Evet'i seçin.
    2. Yatay otomatik ölçeklendirme ayarları'nın altında, Otomatik ölçeklendirme seçeneğini seçin'in yanındaki WebLogic monitor Exporter (gelişmiş otomatik ölçeklendirme) öğesini seçin.
    3. Gözden geçir ve oluştur’u seçin.

    AKS Yatay Otomatik Ölçeklendirme bölmesinde Oracle WebLogic Server Kümesini gösteren Azure portalının ekran görüntüsü.

  9. Son doğrulamayı çalıştırılıyor... başarıyla tamamlanana kadar bekleyin, ardından Oluştur'u seçin. Bir süre sonra, Dağıtım işleminin devam ettiği Dağıtım sayfasının görüntülendiğini görmeniz gerekir.

Son doğrulamayı çalıştırma sırasında herhangi bir sorun görürseniz bunları düzeltin ve yeniden deneyin.

AKS kümesine bağlanma

Aşağıdaki bölümlerde WLS kümesini yönetmek için yüklü bir terminal kubectl gerekir. Yerel olarak yüklemek kubectl için az aks install-cli komutunu kullanın.

AKS kümesine bağlanmak için aşağıdaki adımları kullanın:

  1. Azure portalını açın ve Azure Market teklifini kullanarak AKS'de WLS dağıtma bölümünde sağladığınız kaynak grubuna gidin.
  2. Kaynak listesinden Kubernetes hizmeti türündeki kaynağı seçin.
  3. Bağlan'ı seçin. AKS kümesini bağlama yönergeleri görüntülenir.
  4. Azure CLI'yı seçin ve yerel terminalinizde AKS kümesine bağlanma adımlarını izleyin.

Azure İzleyici çalışma alanından ölçümleri alma

Prometheus Sorgu Dili (PromQL) sorgularını kullanarak Azure İzleyici çalışma alanında ölçümleri görmek için aşağıdaki adımları kullanın:

  1. Azure portalında, Azure Market teklifi kullanarak AKS'de WLS dağıtma bölümünde kullandığınız kaynak grubunu görüntüleyin.

  2. Azure İzleyici çalışma alanı türündeki kaynağı seçin.

  3. Yönetilen Prometheus'un altında Prometheus gezgini'ne tıklayın.

  4. webapp_config_open_sessions_current_count Aşağıdaki ekran görüntüsünde gösterildiği gibi, açık oturumların geçerli hesabını sorgulamak için giriş:

    Prometheus gezginini gösteren Azure portalının ekran görüntüsü.

Not

WebLogic Monitoring Exporter'ı kullanıma sunarak ölçümlere erişmek için aşağıdaki komutu kullanabilirsiniz:

cat <<EOF | kubectl apply -f -
apiVersion: v1
kind: Service
metadata:
  name: sample-domain1-cluster-1-exporter
  namespace: sample-domain1-ns
spec:
  ports:
  - name: default
    port: 8080
    protocol: TCP
    targetPort: 8080
  selector:
    weblogic.domainUID: sample-domain1
    weblogic.clusterName: cluster-1
  sessionAffinity: None
  type: LoadBalancer
EOF

kubectl get svc -n sample-domain1-ns -w

Ip adresinden EXTERNAL-IP ip adresine geçmek sample-domain1-cluster-1-exporter için <pending> satırdaki sütunu bekleyin. Ardından URL'yi http://<exporter-public-ip>:8080/metrics bir tarayıcıda açın ve teklifi dağıtırken belirttiğiniz kimlik bilgileriyle oturum açın. Burada tüm kullanılabilir ölçümleri bulabilirsiniz. Bunlardan herhangi birini Azure İzleyici'de görüntülemek için PromQL penceresine giriş yapabilirsiniz. Örneğin, heap_free_percent ilginç bir grafik gösterir. Yük uygulamaya uygulanırken bellek baskısını izlemek için Otomatik yenileme ve Zaman aralığını mümkün olan en küçük aralığa ayarlayın ve sekmeyi açık bırakın.

KEDA ölçeklendiricisi oluşturma

Ölçekleyiciler, KEDA'nın bir dağıtımı nasıl ve ne zaman ölçeklendirmesi gerektiğini tanımlar. Bu makalede, Azure İzleyici çalışma alanından Prometheus ölçümlerini almak için Prometheus ölçeklendiricisi kullanılır.

Bu makalede tetikleyici olarak kullanılır openSessionsCurrentCount . Bu ölçümün kuralı aşağıdaki gibi açıklanmıştır. Ortalama açık oturum sayısı 10'dan fazla olduğunda, WLS kümesinin ölçeğini en yüksek çoğaltma boyutuna ulaşana kadar büyütün. Aksi takdirde, WLS kümesinin ölçeğini en düşük çoğaltma boyutuna ulaşana kadar azaltabilirsiniz. Aşağıdaki tabloda önemli parametreler listelemektedir:

Parametre adı Değer
serverAddress Azure İzleyici çalışma alanınızın Sorgu uç noktası.
metricName webapp_config_open_sessions_current_count
query sum(webapp_config_open_sessions_current_count{app="app1"})
threshold 10
minReplicaCount 1
maxReplicaCount Varsayılan değer 5'tir. Teklif dağıtımı sırasında en büyük küme boyutunu değiştirdiyseniz değerini en büyük küme boyutunuzla değiştirin.

Dağıtım zamanında WebLogic Monitoring Exporter'ı seçtiğinizden, KEDA ölçeklendiricisi dağıtıma hazırdır. Aşağıdaki adımlarda, AKS kümenizle kullanmak üzere KEDA ölçeklendiricisini yapılandırma adımları gösterilmektedir:

  1. Azure portalını açın ve Azure Market teklifini kullanarak AKS'de WLS dağıtma bölümünde sağladığınız kaynak grubuna gidin.

  2. Gezinti bölmesindeki Ayarlar bölümünde Dağıtımlar'ı seçin. Bu kaynak grubuna yapılan dağıtımların sıralı bir listesini ve en son dağıtımları görürsünüz.

  3. Bu listedeki en eski girdiye kaydırın. Bu giriş, önceki bölümde başlattığınız dağıtıma karşılık gelir. Adı gibi oracle.20210620-wls-on-aksbir şeyle başlayan en eski dağıtımı seçin.

  4. Çıkışlar’ı seçin. Bu seçenek, dağıtımdan alınan çıkışların listesini gösterir.

  5. kedaScalerServerAddress değeri, WLS ölçümlerini kaydeden sunucu adresidir. KEDA, adresten ölçümlere erişebilir ve ölçümler alabilir.

  6. shellCmdtoOutputKedaScalerSample değeri, ölçekleyici örneğinin dizesidirbase64. Değeri kopyalayın ve terminalinizde çalıştırın. Komut aşağıdaki örneğe benzer görünmelidir:

    echo -e YXBpVm...XV0aAo= | base64 -d > scaler.yaml
    

    Bu komut geçerli dizinde bir scaler.yaml dosyası oluşturur.

  7. metric: Aşağıdaki örnekte gösterildiği gibi scaler.yaml dosyasındaki ve query: satırlarını değiştirin:

    metricName: webapp_config_open_sessions_current_count
    query: sum(webapp_config_open_sessions_current_count{app="app1"})
    

    Not

    Teklifle bir uygulama dağıttığınızda, varsayılan olarak bu uygulama adlandırılır app1 . Uygulama adını almak için WLS yönetici konsoluna erişmek için aşağıdaki adımları kullanabilirsiniz:

    1. Dağıtım çıkışlarını görüntülemek için önceki adımları kullanın.
    2. adminConsoleExternalUrl değeri, WLS yönetim konsoluna yönelik tam ve genel İnternet görünür bağlantısıdır. Bağlantıyı panonuza kopyalamak için alan değerinin yanındaki kopyala simgesini seçin.
    3. Değeri tarayıcınıza yapıştırın ve WLS yönetici konsolunu açın.
    4. Azure Market teklifi kullanarak AKS'de WLS dağıtma bölümünde bir kenara kaydettiğiniz WLS yönetici hesabıyla oturum açın.
    5. Etki Alanı Yapısı'nın altında Dağıtımlar'ı seçin. App1'i listede bulabilirsiniz.
    6. Uygulamanın Ad değerinin Sorguda uygulama adı olarak kullanın app1 .
  8. İsterseniz, aşağıdaki örnekte gösterildiği gibi scaler.yamlmaxReplicaCount:değiştirin. Bu değeri AKS sekmesinde dağıtım zamanında belirttiğinizden daha yüksek bir değere ayarlamak bir hatadır.

    maxReplicaCount: 10
    
  9. KEDA ölçekleyici kuralını oluşturmak için scaler.yaml uygulayarak aşağıdaki komutu kullanın.

    kubectl apply -f scaler.yaml
    

    KEDA'nın Azure İzleyici çalışma alanından ölçümleri alması birkaç dakika sürer. Aşağıdaki komutu kullanarak ölçekleyici durumunu izleyebilirsiniz:

    kubectl get hpa -n sample-domain1-ns -w
    

    Ölçekleyici çalışmaya hazır olduktan sonra çıktı aşağıdaki içeriğe benzer şekilde görünür. Sütundaki TARGETS değer olarak <unknown>0değiştirilir.

    NAME                                       REFERENCE                          TARGETS              MINPODS   MAXPODS   REPLICAS   AGE
    keda-hpa-azure-managed-prometheus-scaler   Cluster/sample-domain1-cluster-1   0/10 (avg)           1         5         2          15s
    

Otomatik ölçeklendirmeyi test etme

Artık otomatik ölçeklendirme özelliğini gözlemlemek için hazırsınız. Bu makale, uygulamasına erişmek için kullanarak curl yeni oturumlar açar. Ortalama oturum sayısı 10'dan büyük olduğunda, ölçeklendirme eylemi gerçekleşir. Oturumlar 150 saniye sürer ve oturumların süresi doldukçe açık oturum sayısı azalır. Ortalama oturum sayısı 10'dan az olduktan sonra ölçeklendirme azaltma eylemi gerçekleşir. Ölçeği artırma ve azaltma eylemlerine neden olmak için aşağıdaki adımları kullanın:

  1. Uygulama URL'sini almak için aşağıdaki adımları kullanın:

    1. Dağıtım çıkışlarını görüntülemek için önceki adımları kullanın.
    2. clusterExternalUrl değeri, bu AKS kümesindeki WLS'de dağıtılan örnek uygulamanın tam, genel, İnternet'te görünür bağlantısıdır. Bağlantıyı panonuza kopyalamak için alan değerinin yanındaki kopyala simgesini seçin.
    3. testwebapp.war'a erişmek
  2. curl Uygulamaya erişmek ve yeni oturumlara neden olmak için komutunu çalıştırın. Aşağıdaki örnek 22 yeni oturum açar. Oturumların süresi 150 saniye sonra dolar. WLS_CLUSTER_EXTERNAL_URL değerini sizinkiyle değiştirin.

    COUNTER=0
    MAXCURL=22
    WLS_CLUSTER_EXTERNAL_URL="http://wlsgw202403-wlsaks0314-domain1.eastus.cloudapp.azure.com/"
    APP_URL="${WLS_CLUSTER_EXTERNAL_URL}testwebapp/"
    
    while [ $COUNTER -lt $MAXCURL ]; do curl ${APP_URL}; let COUNTER=COUNTER+1; sleep 1;done
    
  3. İki ayrı kabukta aşağıdaki komutları kullanın:

    • Ölçekleyiciyi gözlemlemek için aşağıdaki komutu kullanın:

      kubectl get hpa -n sample-domain1-ns -w
      

      Bu komut, aşağıdaki örneğe benzer bir çıktı oluşturur:

      $ kubectl get hpa -n sample-domain1-ns -w
      NAME                                       REFERENCE                          TARGETS          MINPODS   MAXPODS   REPLICAS   AGE
      keda-hpa-azure-managed-prometheus-scaler   Cluster/sample-domain1-cluster-1   0/10 (avg)       1         10         1         24m
      keda-hpa-azure-managed-prometheus-scaler   Cluster/sample-domain1-cluster-1   0/10 (avg)       1         10         1         24m
      keda-hpa-azure-managed-prometheus-scaler   Cluster/sample-domain1-cluster-1   5/10 (avg)       1         10         1         26m
      keda-hpa-azure-managed-prometheus-scaler   Cluster/sample-domain1-cluster-1   22/10 (avg)      1         10         1         27m
      keda-hpa-azure-managed-prometheus-scaler   Cluster/sample-domain1-cluster-1   7334m/10 (avg)   1         10         3         29m
      keda-hpa-azure-managed-prometheus-scaler   Cluster/sample-domain1-cluster-1   14667m/10 (avg)  1         10         3         48m
      keda-hpa-azure-managed-prometheus-scaler   Cluster/sample-domain1-cluster-1   0/10 (avg)       1         10         3         30m
      keda-hpa-azure-managed-prometheus-scaler   Cluster/sample-domain1-cluster-1   0/10 (avg)       1         10         3         35m
      keda-hpa-azure-managed-prometheus-scaler   Cluster/sample-domain1-cluster-1   0/10 (avg)       1         10         1         35m
      keda-hpa-azure-managed-prometheus-scaler   Cluster/sample-domain1-cluster-1   0/10 (avg)       1         10         5         53m
      
    • WLS podlarını gözlemlemek için ayrı bir kabukta aşağıdaki komutu kullanın:

      kubectl get pod -n sample-domain1-ns -w
      

      Bu komut, aşağıdaki örneğe benzer bir çıktı oluşturur:

      $ kubectl get pod -n sample-domain1-ns -w
      NAME                             READY   STATUS              RESTARTS   AGE
      sample-domain1-admin-server      2/2     Running             0          28h
      sample-domain1-managed-server1   2/2     Running             0          28h
      sample-domain1-managed-server1   2/2     Running             0          28h
      sample-domain1-managed-server2   0/2     Pending             0          0s
      sample-domain1-managed-server2   0/2     Pending             0          0s
      sample-domain1-managed-server2   0/2     ContainerCreating   0          0s
      sample-domain1-managed-server3   0/2     Pending             0          0s
      sample-domain1-managed-server3   0/2     Pending             0          0s
      sample-domain1-managed-server3   0/2     ContainerCreating   0          0s
      sample-domain1-managed-server3   1/2     Running             0          1s
      sample-domain1-admin-server      2/2     Running             0          95m
      sample-domain1-managed-server1   2/2     Running             0          94m
      sample-domain1-managed-server2   2/2     Running             0          56s
      sample-domain1-managed-server3   2/2     Running             0          55s
      sample-domain1-managed-server4   1/2     Running             0          9s
      sample-domain1-managed-server5   1/2     Running             0          9s
      sample-domain1-managed-server5   2/2     Running             0          37s
      sample-domain1-managed-server4   2/2     Running             0          42s
      sample-domain1-managed-server5   1/2     Terminating         0          6m46s
      sample-domain1-managed-server5   1/2     Terminating         0          6m46s
      sample-domain1-managed-server4   1/2     Running             0          6m51s
      sample-domain1-managed-server4   1/2     Terminating         0          6m53s
      sample-domain1-managed-server4   1/2     Terminating         0          6m53s
      sample-domain1-managed-server3   1/2     Running             0          7m40s
      sample-domain1-managed-server3   1/2     Terminating         0          7m45s
      sample-domain1-managed-server3   1/2     Terminating         0          7m45s
      

Azure İzleyici çalışma alanında yer alan grafik aşağıdaki ekran görüntüsüne benzer:

Prometheus gezgini grafiğini gösteren Azure portalının ekran görüntüsü.

Kaynakları temizleme

Azure ücretlerinden kaçınmak için gereksiz kaynakları temizlemeniz gerekir. Kümeye artık ihtiyacınız kalmadığında az group delete komutunu kullanın. Aşağıdaki komutlar kaynak grubunu, kapsayıcı hizmetini, kapsayıcı kayıt defterini ve tüm ilgili kaynakları kaldırır:

az group delete --name <wls-resource-group-name> --yes --no-wait
az group delete --name <ama-resource-group-name> --yes --no-wait

Sonraki adımlar

Otomatik ölçeklendirme çözümleri oluşturmaya ve WLS'yi Azure'da çalıştırmaya yönelik daha fazla seçenek için aşağıdaki başvuruları keşfetmeye devam edin: