Azure Red Hat OpenShift'te IBM WebSphere Liberty ve Open Liberty'yi dağıtma

Bu makalede, Azure portalını kullanarak Azure Red Hat OpenShift'te (ARO) IBM WebSphere Liberty ve Open Liberty'yi nasıl hızlı bir şekilde ayağa kaldırabileceğiniz gösterilmektedir.

Bu makalede, ARO yolculuğunuzu hızlandırmak için Open/WebSphere Liberty için Azure Market teklifi kullanılır. Teklif, yerleşik OpenShift Container Registry (OCR), Liberty Operators ve isteğe bağlı olarak Liberty ile uygulamanızı içeren bir kapsayıcı görüntüsü içeren bir ARO kümesi dahil olmak üzere çeşitli kaynakları otomatik olarak sağlar. Teklifi görmek için Azure portalını ziyaret edin. Teklifin etkinleştirdiği otomasyonu kullanmayan ARO üzerinde Liberty'yi çalıştırmak için el ile adım adım kılavuzu tercih ediyorsanız bkz . Azure Red Hat OpenShift kümesinde Open Liberty/WebSphere Liberty ile Java uygulaması dağıtma.

Bu makale, dağıtıma hızlı bir şekilde başlamanıza yardımcı olmak için tasarlanmıştır. Üretime geçmeden önce Tuning Liberty'yi keşfetmeniz gerekir.

Önemli

ARO tümleşik bir destek deneyimi sağlamak için Red Hat ve Microsoft tarafından birlikte tasarlanmış, çalıştırılmış ve desteklenmiş olsa da, bu makalede açıklananlar da dahil olmak üzere ARO'nun üzerinde çalıştırdığınız yazılımlar kendi destek ve lisans koşullarına tabidir. ARO desteği hakkında ayrıntılı bilgi için bkz . Azure Red Hat OpenShift 4 için destek yaşam döngüsü. Bu makalede açıklanan yazılım desteği hakkında ayrıntılı bilgi için, makalede listelenen yazılımın ana sayfalarına bakın.

Not

Azure Red Hat OpenShift, OpenShift kümesi oluşturmak ve çalıştırmak için en az 40 çekirdeğe ihtiyaç duyar. Yeni bir Azure aboneliği için varsayılan Azure kaynak kotası bu gereksinimi karşılamaz. Kaynak sınırınızda artış istemek için VM ailesi vCPU kotalarını artırma bölümündeki Ayarlanabilir olmayan kotalar için artış isteme bölümüne bakın. Artış istemeniz gereken kota türü "ayarlanabilir değil" olduğundan bir destek bileti oluşturmanız gerekir. Ayarlanabilir olmayan kotalar için artış isteme makalesindeki adımlar, bileti doğru içerikle nasıl dosyalayabileceğinizi gösterir.

Ücretsiz deneme aboneliği kota artışı için uygun değildir. Kota artışı istemeden önce Kullandıkça Öde aboneliğine yükseltin. Daha fazla bilgi için bkz . Ücretsiz Azure hesabınızı veya Öğrenciler için Azure Başlangıç hesabınızı yükseltme.

Önkoşullar

  • Unix benzeri bir işletim sisteminin yüklü olduğu yerel makine (örneğin, Ubuntu, macOS veya Linux için Windows Alt Sistemi).
  • Azure CLI. Windows veya macOS üzerinde çalışıyorsanız Azure CLI’yi bir Docker kapsayıcısında çalıştırmayı değerlendirin. Daha fazla bilgi için bkz . Docker kapsayıcısında Azure CLI'yi çalıştırma.
  • az login komutunu kullanarak Azure CLI'da oturum açın . Kimlik doğrulama işlemini tamamlamak için terminalinizde görüntülenen adımları izleyin. Diğer oturum açma seçenekleri için bkz . Azure CLI ile oturum açma.
  • İstendiğinde, ilk kullanımda Azure CLI uzantısını yükleyin. Uzantılar hakkında daha fazla bilgi için bkz. Azure CLI ile uzantıları kullanma.
  • Yüklü sürümü ve bağımlı kitaplıkları bulmak için az version komutunu çalıştırın. En son sürüme yükseltmek için az upgrade komutunu çalıştırın. Bu makale, Azure CLI'nın en az 2.31.0 sürümünü gerektirir.

Not

Bu kılavuzu Azure Cloud Shell'den de yürütebilirsiniz. Bu yaklaşım, Docker hariç tüm önkoşul araçları önceden yüklenmiş olarak bulunur.

Red Hat çekme gizli dizisi alma

Bu makalede kullanacağınız Azure Market teklifi red hat çekme gizli dizisi gerektirir. Bu bölümde, Azure Red Hat OpenShift için Red Hat çekme gizli dizisi alma adımları gösterilmektedir. Red Hat çekme gizli dizisinin ne olduğunu ve neden ihtiyacınız olduğunu öğrenmek için Öğretici: Azure Red Hat OpenShift 4 kümesi oluşturma bölümünün Red Hat çekme gizli dizisini alma bölümüne bakın. Çekme gizli dizisini kullanmak üzere almak için bu bölümdeki adımları izleyin.

Red Hat OpenShift Karma Bulut Konsolu'nu ziyaret ederek OpenShift küme yöneticisi portalında oturum açmak için Red Hat hesabınızı kullanın. Aşağıdaki ekran görüntüsünde gösterildiği gibi daha fazla hüküm kabul etmeniz ve hesabınızı güncelleştirmeniz gerekebilir. Hesabı oluştururken kullandığınız parolanın aynısını kullanın.

Red Hat Hesabınızı Güncelleştir sayfasının ekran görüntüsü.

Oturum açtıktan sonra OpenShift'i ve ardından İndirmeler'i seçin. Tüm kategoriler açılan listesini ve ardından Belirteçler'i seçin. Aşağıdaki ekran görüntüsünde gösterildiği gibi değeri almak için Çekme gizli dizisi'nin altında Kopyala veya İndir'i seçin.

Çekme gizli dizisini gösteren Red Hat konsol portalının ekran görüntüsü.

Aşağıdaki içerik, Red Hat konsol portalından kopyalanan ve kimlik doğrulama kodlarının ile xxxx...xxxdeğiştirildiği bir örnektir.

{"auths":{"cloud.openshift.com":{"auth":"xxxx...xxx","email":"contoso-user@contoso.com"},"quay.io":{"auth":"xxx...xxx","email":"contoso-user@test.com"},"registry.connect.redhat.com":{"auth":"xxxx...xxx","email":"contoso-user@contoso.com"},"registry.redhat.io":{"auth":"xxxx...xxx","email":"contoso-user@contoso.com"}}}

Daha sonra kullanabilmek için gizli diziyi bir dosyaya kaydedin.

Azure portalından Microsoft Entra hizmet sorumlusu oluşturma

Bu makalede kullanacağınız Azure Market teklifi, Azure Red Hat OpenShift kümenizi dağıtmak için bir Microsoft Entra hizmet sorumlusu gerektirir. Teklif, hizmet sorumlusuna dağıtım sırasında uygun ayrıcalıklar atar ve rol ataması gerekmez. Kullanıma hazır bir hizmet sorumlunuz varsa bu bölümü atlayın ve teklifi dağıttığınız sonraki bölüme geçin.

Hizmet sorumlusunu dağıtmak ve Azure portalından Uygulama (istemci) kimliğini ve gizli dizisini almak için aşağıdaki adımları kullanın. Daha fazla bilgi için bkz . Azure Red Hat OpenShift kümesi dağıtmak için hizmet sorumlusu oluşturma ve kullanma.

Not

Bir uygulamayı Microsoft Entra kiracınıza kaydetmek için yeterli izinlere sahip olmanız gerekir. Bir sorunla karşılaşırsanız, hesabınızın kimliği oluşturadığından emin olmak için gerekli izinleri denetleyin. Daha fazla bilgi için, Kaynaklara erişebilen bir Microsoft Entra uygulaması ve hizmet sorumlusu oluşturmak için portalı kullanma bölümünün Uygulama kaydetmek için gereken izinler bölümüne bakın.

  1. Azure portalı üzerinden Azure hesabınızda oturum açın.

  2. Microsoft Entra Kimlik'i seçin.

  3. Uygulama kayıtları’nı seçin.

  4. Yeni kayıt öğesini seçin.

  5. Uygulamaya "liberty-on-aro-app" gibi bir ad verin. Uygulamayı kimlerin kullanabileceğini belirleyen desteklenen bir hesap türü seçin. Değerleri ayarladıktan sonra, aşağıdaki ekran görüntüsünde gösterildiği gibi Kaydet'i seçin. Uygulamanın sağlanması birkaç saniye sürer. Devam etmeden önce dağıtımın tamamlanmasını bekleyin.

    Uygulama kaydetme sayfasını gösteren Azure portalının ekran görüntüsü.

  6. Aşağıdaki ekran görüntüsünde gösterildiği gibi genel bakış sayfasından Uygulama (istemci) Kimliğini kaydedin. İşaretçiyi değerin üzerine getirin (ekran görüntüsünde yeniden uygulanır) ve görüntülenen kopyalama simgesini seçin. Araç ipucunda Panoya kopyala yazıyor. Bu bölümdeki diğer değerler de kopyalama simgelerine sahip olduğundan doğru değeri kopyalamaya dikkat edin. Daha sonra kullanabilmek için Uygulama Kimliğini bir dosyaya kaydedin.

    Hizmet sorumlusu istemci kimliğini gösteren Azure portalının ekran görüntüsü.

  7. Aşağıdaki adımları izleyerek yeni bir istemci gizli dizisi oluşturun:

    1. Sertifikalar ve gizli diziler'i seçin.
    2. İstemci gizli dizileri'ni ve ardından Yeni istemci gizli dizisi'ni seçin.
    3. Gizli dizi ve sürenin açıklamasını sağlayın. İşiniz bittiğinde Ekle'yi seçin.
    4. İstemci gizli dizisi eklendikten sonra, istemci gizli dizisinin değeri görüntülenir. Bu değeri daha sonra alamadığınız için kopyalayın.

Artık bir Microsoft Entra uygulamanız, hizmet sorumlunuz ve istemci gizli diziniz var.

Azure Red Hat OpenShift'te IBM WebSphere Liberty veya Open Liberty dağıtma

Bu bölümdeki adımlar, Azure Red Hat OpenShift'te IBM WebSphere Liberty veya Open Liberty dağıtmanızı sağlar.

Aşağıdaki adımlarda teklifi nasıl bulacağınız ve Temel Bilgiler bölmesini nasıl doldurabileceğiniz gösterilmektedir .

  1. Azure portalının üst kısmındaki arama çubuğuna Liberty yazın. Aşağıdaki ekran görüntüsünde gösterildiği gibi, otomatik olarak önerilen arama sonuçlarında Market bölümünde ARO'da IBM Liberty'yi seçin.

    Arama sonuçlarında Azure Red Hat OpenShift üzerinde IBM WebSphere Liberty ve Open Liberty'nin gösterildiği Azure portalının ekran görüntüsü.

    Bu portal bağlantısıyla doğrudan teklife de gidebilirsiniz.

  2. Teklif sayfasında Oluştur'u seçin.

  3. Temel Bilgiler bölmesinde, Abonelik alanında gösterilen değerin önkoşullar bölümünde listelenen rollere sahip değerle aynı olduğundan emin olun.

  4. Teklifin boş bir kaynak grubunda dağıtılması gerekir. Kaynak grubu alanında Yeni oluştur'u seçin ve kaynak grubu için bir değer girin. Kaynak gruplarının bir abonelik içinde benzersiz olması gerektiğinden, benzersiz bir ad seçin. Benzersiz adlara sahip olmak için, baş harflerinizin, bugünün tarihinin ve bazı tanımlayıcıların birleşimini kullanmak kolay bir yoldur. Örneğin, abc1228rg.

  5. Kaynak grubu adı için kabuğunuzda bir ortam değişkeni oluşturun.

    export RESOURCE_GROUP_NAME=<your-resource-group-name>
    
  6. Örnek ayrıntıları'nın altında dağıtım için bölgeyi seçin. OpenShift'in çalıştığı Azure bölgelerinin listesi için bkz . Azure'da Red Hat OpenShift 4.x bölgeleri.

  7. Bölgeyi seçtikten sonra İleri'yi seçin.

Aşağıdaki adımlar, aşağıdaki ekran görüntüsünde gösterilen ARO bölmesini nasıl doldurabileceğinizi gösterir:

Azure Red Hat OpenShift ARO bölmesinde IBM WebSphere Liberty ve Open Liberty'nin gösterildiği Azure portalının ekran görüntüsü.

  1. Yeni küme oluştur'un altında Evet'i seçin.

  2. Yeni küme oluşturmak için bilgi sağlayın bölümünde Red Hat çekme gizli dizisi için Red Hat çekme gizli dizisi alma bölümünde elde ettiğiniz Red Hat çekme gizli dizisini doldurun. Gizli diziyi onayla için aynı değeri kullanın.

  3. Hizmet sorumlusu istemci kimliğini, Azure portalından Microsoft Entra hizmet sorumlusu oluşturma bölümünde aldığınız hizmet sorumlusu Uygulaması (istemci) kimliğiyle doldurun.

  4. Hizmet sorumlusu istemci gizli dizisini, Azure portalından Microsoft Entra hizmet sorumlusu oluşturma bölümünde edindiğiniz hizmet sorumlusu Uygulama gizli dizisiyle doldurun. Gizli diziyi onayla için aynı değeri kullanın.

  5. Değerleri doldurduktan sonra İleri'yi seçin.

Aşağıdaki adımlar, aşağıdaki ekran görüntüsünde gösterilen İşleç ve uygulama bölmesini doldurmayı ve dağıtımı başlatmayı gösterir.

Azure Red Hat OpenShift Operatörü ve uygulama bölmesinde IBM WebSphere Liberty ve Open Liberty'nin gösterildiği Azure portalının ekran görüntüsü.

  1. IBM destekleniyor mu? bölümünde Evet'i seçin.

    Not

    Bu hızlı başlangıçta IBM tarafından desteklenen WebSphere Liberty Operatörü dağıtılır, ancak Bunun yerine Open Liberty Operatörünü dağıtmak için Hayır'ı seçebilirsiniz.

  2. Uygulamayı dağıtmak için varsayılan Hayır seçeneğini değiştirmeyin.

    Not

    Bu hızlı başlangıçta örnek bir uygulama daha sonra el ile dağıtılır, ancak isterseniz Uygulama dağıtmak için Evet'i seçebilirsiniz.

  3. Gözden geçir ve oluştur’u seçin. Yeşil Doğrulama Başarılı iletisinin en üstte göründüğünden emin olun. İleti görünmüyorsa doğrulama sorunlarını düzeltin ve gözden geçir ve yeniden oluştur'u seçin.

  4. Oluştur'u belirleyin.

  5. Dağıtım devam ediyor sayfasında dağıtımın ilerleme durumunu izleyin.

Seçtiğiniz bölgedeki ağ koşullarına ve diğer etkinliklere bağlı olarak dağıtımın tamamlanması 40 dakika kadar sürebilir.

Dağıtımın işlevselliğini doğrulama

Bu bölümdeki adımlarda, dağıtımın başarıyla tamamlandığını nasıl doğruladığınız gösterilmektedir.

Dağıtım devam ediyor sayfasından uzaklaştıysanız, aşağıdaki adımlarda bu sayfaya nasıl geri döndüğünüz gösterilir. Hala Dağıtımınızın tamamlandığını gösteren sayfadaysanız 5. adıma atlayabilirsiniz.

  1. Herhangi bir portal sayfasının köşesinde hamburger menüsünü ve ardından Kaynak grupları'nı seçin.

  2. Herhangi bir alan için Filtre uygula metnini içeren kutuya, daha önce oluşturduğunuz kaynak grubunun ilk birkaç karakterini girin. Önerilen kuralı uyguladıysanız baş harflerinizi girin ve uygun kaynak grubunu seçin.

  3. 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.

  4. 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. Aşağıdaki ekran görüntüsünde gösterildiği gibi en eski dağıtımı seçin.

    En eski dağıtımın vurgulandığı Azure Red Hat OpenShift dağıtımlarında IBM WebSphere Liberty ve Open Liberty'yi gösteren Azure portalının ekran görüntüsü.

  5. Gezinti bölmesinde Çıkışlar'ı seçin. Bu liste, dağıtımdan bazı yararlı bilgiler içeren çıkış değerlerini gösterir.

  6. Terminalinizi açın ve cmdToGetKubeadminCredentials alanındaki değeri yapıştırın. OpenShift kümesi konsol portalında oturum açmak için yönetici hesabını ve kimlik bilgilerini görürsünüz. Aşağıdaki içerik bir yönetici hesabı örneğidir.

    az aro list-credentials --resource-group abc1228rg --name clusterf9e8b9
    {
      "kubeadminPassword": "xxxxx-xxxxx-xxxxx-xxxxx",
      "kubeadminUsername": "kubeadmin"
    }
    
  7. clusterConsoleUrl alanındaki değeri İnternet'e bağlı bir web tarayıcısına yapıştırın ve enter tuşuna basın. Yönetici kullanıcı adını ve parolasını girin ve oturum açın.

  8. Liberty için uygun Kubernetes işlecinin yüklü olduğunu doğrulayın. Gezinti bölmesinde, aşağıdaki ekran görüntüsünde gösterildiği gibi İşleçler'i ve ardından Yüklü İşleçler'i seçin:

    Yüklü İşleçler sayfasını gösteren Red Hat OpenShift küme konsol portalının ekran görüntüsü.

    WebSphere Liberty işlecini veya Open Liberty işlecini yüklediyseniz not edin. Operatör değişkeni, dağıtım zamanında seçtiğiniz değerle eşleşir. IBM Supported'ı seçtiyseniz WebSphere Liberty işlecine sahipsinizdir. Aksi takdirde Open Liberty operatörünüz var. Bu bilgilerin sonraki adımlarda bilinmesi önemlidir.

  9. OpenShift CLI'yı yükleme öğreticisindeki adımları izleyerek OpenShift CLI'yi ocindirip yükleyin, ardından bu belgelere dönün.

  10. Çıkışlar bölmesine geçin, cmdToLoginWithKubeadmin alanındaki değeri kopyalayın ve terminalinize yapıştırın. OpenShift kümesinin API sunucusunda oturum açmak için komutunu çalıştırın. Konsolunda aşağıdaki örneğe benzer bir çıktı görmeniz gerekir:

    Login successful.
    
    You have access to 71 projects, the list has been suppressed. You can list all projects with 'oc projects'
    
    Using project "default".
    

Azure SQL Veritabanı oluşturma

Aşağıdaki adımlar, uygulamanızla kullanmak üzere tek Azure SQL Veritabanı veritabanı oluşturma işleminde size yol gösterir:

  1. Hızlı Başlangıç: Azure SQL Veritabanı tek veritabanı oluşturma başlığı altındaki adımları izleyerek Azure SQL Veritabanı'de tek bir veritabanı oluşturun ve aşağıdaki notta açıklanan farklara dikkat edin. Veritabanı sunucusunu oluşturduktan ve yapılandırdıktan sonra bu makaleye dönün.

    Not

    Temel bilgiler adımında Kaynak grubu, Veritabanı adı, sunucu-adı.database.windows.net<>, Sunucu yöneticisi oturum açma bilgileri ve Parola değerlerini not edin. Veritabanı Kaynak grubuna bu makalenin sonraki bölümlerinde adı <db-resource-group> verilmiştir.

    Ağ adımında Bağlan ivity yöntemini Genel uç nokta, Azure hizmetlerinin ve kaynaklarının bu sunucuyaerişmesine izin ver ve Geçerli istemci IP adresini Evet olarak ayarlayın.

    Bağlan ivity yöntemi ve Güvenlik duvarı kuralları ayarlarının vurgulandığı SQL Veritabanı oluştur sayfasının Ağ sekmesini gösteren Azure portalının ekran görüntüsü.

  2. Veritabanı için kaynak grubu adı için kabuğunuzda bir ortam değişkeni oluşturun.

    export DB_RESOURCE_GROUP_NAME=<db-resource-group>
    

Artık veritabanını ve ARO kümesini oluşturduğunuza göre, WebSphere Liberty uygulamanızı barındırmak için ARO'nuzu hazırlayabilirsiniz.

Örnek uygulamayı yapılandırma ve dağıtma

Liberty çalışma zamanında örnek uygulamayı dağıtmak için bu bölümdeki adımları izleyin. Bu adımlarda Maven kullanılır.

Uygulamayı gözden geçirin

Aşağıdaki komutları kullanarak bu kılavuzun örnek kodunu kopyalayın. Örnek GitHub'dadır.

git clone https://github.com/Azure-Samples/open-liberty-on-aro.git
cd open-liberty-on-aro
export BASE_DIR=$PWD
git checkout 20240223
cd 3-integration/connect-db/mssql

"Ayrılmış HEAD" durumunda olduğunu belirten bir ileti görürseniz, bu iletiyi yoksaymak güvenlidir. Sadece bir etiketi kullanıma aldırdığınız anlamına gelir.

Depoda birkaç örnek vardır. 3 tümleştirme/connect-db/mssql/ kullanıyoruz. Uygulamanın dosya yapısı aşağıdadır:

mssql
├─ src/main/
│  ├─ aro/
│  │  ├─ db-secret.yaml
│  │  ├─ openlibertyapplication.yaml
│  │  ├─ webspherelibertyapplication.yaml
│  ├─ docker/
│  │  ├─ Dockerfile
│  │  ├─ Dockerfile-ol
│  ├─ liberty/config/
│  │  ├─ server.xml
│  ├─ java/
│  ├─ resources/
│  ├─ webapp/
├─ pom.xml

Java, resources ve webapp dizinleri örnek uygulamanın kaynak kodunu içerir. Kod adlı jdbc/JavaEECafeDBbir veri kaynağı bildirir ve kullanır.

aro dizininde üç dağıtım dosyası vardır. db-secret.xml, VERITABANı bağlantı kimlik bilgileriyle Kubernetes Gizli Dizileri oluşturmak için kullanılır. WebSphere Liberty Uygulamasını dağıtmak için bu hızlı başlangıçta webspherelibertyapplication.yaml dosyası kullanılır. Azure Red Hat OpenShift'te IBM WebSphere Liberty veya Open Liberty'yi dağıtma bölümünde Open Liberty Operatörünü dağıttıysanız Open Liberty Uygulamasını dağıtmak için openlibertyapplication.yaml dosyasını kullanın.

Docker dizininde, Open Liberty veya WebSphere Liberty ile uygulama görüntüsünü oluşturmak için iki dosya vardır. Bu dosyalar sırasıyla Dockerfile ve Dockerfile-ol dosyalarıdır. Bu hızlı başlangıçta WebSphere Liberty ile uygulama görüntüsünü derlemek için Dockerfile dosyasını kullanırsınız. Benzer şekilde, Azure Red Hat OpenShift'te IBM WebSphere Liberty veya Open Liberty'yi dağıtma bölümünde Open Liberty Operatörünü dağıttıysanız Open Liberty ile uygulama görüntüsünü oluşturmak için Dockerfile-ol dosyasını kullanın.

Liberty/config dizininde, server.xml dosyası Open Liberty ve WebSphere Liberty kümesi için VERITABANı bağlantısını yapılandırmak için kullanılır.

Projeyi derleme

Artık gerekli özellikleri topladığınıza göre, aşağıdaki komutları kullanarak uygulamayı oluşturabilirsiniz. Projenin POM dosyası ortamdan birçok değişken okur. Maven derlemesinin bir parçası olarak, bu değişkenler src/main/aro içinde bulunan YAML dosyalarındaki değerleri doldurmak için kullanılır. İsterseniz Maven dışında uygulamanız için benzer bir şey yapabilirsiniz.

cd ${BASE_DIR}/3-integration/connect-db/mssql

# The following variables are used for deployment file generation into target.
export DB_SERVER_NAME=<server-name>.database.windows.net
export DB_NAME=<database-name>
export DB_USER=<server-admin-login>@<server-name>
export DB_PASSWORD=<server-admin-password>

mvn clean install

(İsteğe bağlı) Projenizi yerel olarak test etme

Artık aşağıdaki adımları kullanarak Azure'a dağıtmadan önce projeyi yerel olarak çalıştırabilir ve test edebilirsiniz. Kolaylık sağlamak için kullanırız liberty-maven-plugin. hakkında liberty-maven-plugindaha fazla bilgi edinmek için bkz . Maven ile web uygulaması oluşturma. Uygulamanız için, yerel IDE'niz gibi başka bir mekanizma kullanarak benzer bir şey yapabilirsiniz. Ayrıca kapsayıcılarla geliştirme için tasarlanan liberty:devc seçeneği de kullanabilirsiniz. Liberty belgeleri hakkında daha fazla bilgi liberty:devcedinebilirsiniz.

  1. Aşağıdaki örnekte gösterildiği gibi kullanarak liberty:runuygulamayı başlatın. liberty:run ayrıca önceki bölümde tanımlanan ortam değişkenlerini kullanır.

    cd ${BASE_DIR}/3-integration/connect-db/mssql
    mvn liberty:run
    
  2. Uygulamanın beklendiği gibi çalıştığını doğrulayın. Başarılı olursa komut çıkışında şuna benzer [INFO] [AUDIT] CWWKZ0003I: The application javaee-cafe updated in 1.930 seconds. bir ileti görmeniz gerekir. http://localhost:9080/ Tarayıcınızda veya https://localhost:9443/ adresine gidin ve uygulamanın erişilebilir olduğunu ve tüm işlevlerin çalıştığını doğrulayın.

  3. Durdurmak için Ctrl C tuşlarına+basın.

Ardından, Docker kullanarak projenizi kapsayıcıya almak ve Azure'a dağıtmadan önce yerel olarak kapsayıcı olarak çalıştırmak için aşağıdaki adımları kullanın:

  1. docker build Görüntüyü oluşturmak için komutunu çalıştırın.

    cd ${BASE_DIR}/3-integration/connect-db/mssql/target
    docker buildx build --platform linux/amd64 -t javaee-cafe:v1 --pull --file=Dockerfile .
    
  2. Aşağıdaki komutu kullanarak görüntüyü çalıştırın. Daha önce tanımlanan ortam değişkenlerini kullandığımızı unutmayın.

    docker run -it --rm -p 9080:9080 -p 9443:9443 \
        -e DB_SERVER_NAME=${DB_SERVER_NAME} \
        -e DB_NAME=${DB_NAME} \
        -e DB_USER=${DB_USER} \
        -e DB_PASSWORD=${DB_PASSWORD} \
        javaee-cafe:v1
    
  3. Kapsayıcı başlatıldıktan sonra, uygulamaya erişmek için http://localhost:9080/ tarayıcınızda veya https://localhost:9443/ adresine gidin.

  4. Durdurmak için Ctrl C tuşlarına+basın.

Görüntü oluşturma ve görüntü akışına gönderme

Uygulamanın durumundan memnun olduğunuzda, aşağıdaki adımları kullanarak görüntüyü kümede uzaktan oluşturursunuz.

  1. Kaynak dizini ve Dockerfile'ı kimlik doğrulamak için aşağıdaki komutları kullanın:

    cd ${BASE_DIR}/3-integration/connect-db/mssql/target
    
    # If you are deploying the application with WebSphere Liberty Operator, the existing Dockerfile is ready for you
    
    # If you are deploying the application with Open Liberty Operator, uncomment and execute the following two commands to rename Dockerfile-ol to Dockerfile
    # mv Dockerfile Dockerfile.backup
    # mv Dockerfile-ol Dockerfile
    
  2. Görüntü akışı oluşturmak için aşağıdaki komutu kullanın:

    oc create imagestream javaee-cafe
    
  3. Derleme çıkışının görüntü akışı etiketini belirten bir derleme yapılandırması oluşturmak için aşağıdaki komutu kullanın:

    oc new-build --name javaee-cafe-config --binary --strategy docker --to javaee-cafe:v1
    
  4. Yerel içerikleri karşıya yüklemek, kapsayıcıya almak ve daha önce belirtilen görüntü akışı etiketine çıkış yapmak üzere derlemeyi başlatmak için aşağıdaki komutu kullanın:

    oc start-build javaee-cafe-config --from-dir . --follow
    

Uygulamayı dağıtma ve test edin

Uygulamayı dağıtmak ve test etmek için aşağıdaki adımları kullanın:

  1. Veritabanı gizli dizisini uygulamak için aşağıdaki komutu kullanın:

    cd ${BASE_DIR}/3-integration/connect-db/mssql/target
    oc apply -f db-secret.yaml
    

    çıktısını secret/db-secret-mssql createdgörmeniz gerekir.

  2. Dağıtım dosyasını uygulamak için aşağıdaki komutu kullanın:

    oc apply -f webspherelibertyapplication.yaml
    
  3. Aşağıdaki komutu kullanarak tüm podlar başlatılana ve başarıyla çalıştırılana kadar bekleyin:

    oc get pods -l app.kubernetes.io/name=javaee-cafe --watch
    

    Tüm podların çalıştığını belirtmek için aşağıdaki örneğe benzer bir çıktı görmeniz gerekir:

    NAME                          READY   STATUS    RESTARTS   AGE
    javaee-cafe-67cdc95bc-2j2gr   1/1     Running   0          29s
    javaee-cafe-67cdc95bc-fgtt8   1/1     Running   0          29s
    javaee-cafe-67cdc95bc-h47qm   1/1     Running   0          29s
    
  4. Sonuçları doğrulamak için aşağıdaki adımları kullanın:

    1. Uygulamayla dağıtılan Route kaynağının ana bilgisayarını almak için aşağıdaki komutu kullanın:

      echo "route host: https://$(oc get route javaee-cafe --template='{{ .spec.host }}')"
      
    2. Çıktıdan değerini route host kopyalayın, ardından uygulamayı test etmek için tarayıcınızda açın. Web sayfası doğru şekilde işlenmiyorsa, bunun nedeni uygulamanın arka planda çalışmaya devam ediyor olmasıdır. Birkaç dakika bekleyin ve yeniden deneyin.

    3. Uygulamanın ve veritabanı bağlantısının işlevselliğini doğrulamak için birkaç kahve ekleyin ve silin.

      Çalışan uygulamanın ekran görüntüsü.

Kaynakları temizleme

Azure ücretlerinden kaçınmak için gereksiz kaynakları temizlemeniz gerekir. Küme artık gerekli olmadığında az group delete komutunu kullanarak kaynak grubunu, ARO kümesini, Azure SQL Veritabanı ve tüm ilgili kaynakları kaldırın.

az group delete --name $RESOURCE_GROUP_NAME --yes --no-wait
az group delete --name $DB_RESOURCE_GROUP_NAME --yes --no-wait

Sonraki adımlar

Şu bağlantıları izleyerek IBM WebSphere ailesini Azure'da dağıtma hakkında daha fazla bilgi edinin: