Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Bu makalede, Bir Azure Red Hat OpenShift kümesinde Open/WebSphere Liberty çalıştırmaya yönelik adım adım el ile yönergeler sağlanır. Bir Liberty uygulaması hazırlama, uygulama Docker görüntüsünü oluşturma ve kapsayıcılı uygulamayı Azure Red Hat OpenShift kümesinde çalıştırma adımlarında size yol gösterir.
Özellikle aşağıdaki görevleri gerçekleştirmeyi öğrenirsiniz:
- Liberty uygulamasını hazırlama
- Uygulama görüntüsünü oluşturma
- KAPSAYıCıLı uygulamayı GUI ve CLI kullanarak Azure Red Hat OpenShift kümesinde çalıştırma
Azure Red Hat OpenShift yolculuğunuzu hızlandıran daha otomatik bir çözüm için bkz. Azure Red Hat OpenShift'te IBM WebSphere Liberty ve Open Liberty'yi dağıtma.
Open Liberty hakkında daha fazla bilgi için Open Liberty proje sayfasına bakın. WebSphere Liberty hakkında daha fazla bilgi için Bkz . WebSphere Liberty ürün sayfası.
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.
Azure'da WebSphere çözümleri geliştiren mühendislik ekibiyle geri bildirim sağlamak veya geçiş senaryolarınız üzerinde yakından çalışmak istiyorsanız, WebSphere geçişiyle ilgili bu kısa anketi doldurun ve iletişim bilgilerinizi ekleyin. Program yöneticileri, mimarlar ve mühendislerden oluşan ekip, yakın işbirliği başlatmak için sizinle hemen iletişime geçecektir.
Önemli
Azure Red Hat OpenShift tümleşik bir destek deneyimi sağlamak için Red Hat ve Microsoft tarafından birlikte tasarlanmış, çalıştırılmış ve desteklenmektedir ancak bu makalede açıklananlar da dahil olmak üzere Azure Red Hat OpenShift'in üzerinde çalıştırdığınız yazılımlar kendi destek ve lisans koşullarına tabidir. Azure Red Hat OpenShift desteği hakkında daha fazla 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 daha fazla 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 bkz . Standart kota: VM serisine göre sınırları artırma. Ücretsiz deneme aboneliğinin kota artışı için uygun olmadığını unutmayın. Kota artışı istemeden önce Kullandıkça Öde aboneliğine yükseltin.
Önkoşullar
Ubuntu, macOS veya Linux için Windows Alt Sistemi gibi Unix benzeri işletim sisteminin yüklü olduğu yerel bir makine.
Java Standard Sürümü (SE) uygulaması, sürüm 17, örneğin Eclipse Open J9.
Maven, sürüm 3.9.8 veya üzeri.
Azure CLI, sürüm 2.61.0 veya üzeri.
Azure Red Hat OpenShift 4 kümesi. Kümeyi oluşturmak için Aşağıdaki farklara dikkat ederek Azure Red Hat OpenShift 4 kümesi oluşturma başlığı altındaki yönergeleri izleyin:
Çekme gizlileri ile ilgili yönergeler isteğe bağlı olarak belirtilmiştir, ancak bu makalede, özellikle küme oluşturma için çekme gizlileri gereklidir. Çekme sırrı, Azure Red Hat OpenShift kümenizin Open Liberty Operator'ünü bulmasını sağlar.
Bu makalede, tanıtım veritabanı olarak Azure MySQL kullanılır. Azure MySQL SKU'ları tüm bölgelerde kullanılamadığından, gibi
westusçalışan bir Azure bölgesi seçmelisiniz. Aşağıdaki komutu kullanarak belirli bir Azure bölgesinde Kullanılabilir MySQL SKU'ları olup olmadığını de kontrol edebilirsiniz:az mysql flexible-server list-skus --location <location>Azure Red Hat OpenShift 4 kümesi oluşturma bölümünde tanımlanan aşağıdaki ortam değişkenleri bu makalenin devamında kullanılır:
-
RESOURCEGROUP- kümenin dağıtıldığı kaynak grubunun adı. -
CLUSTER- kümenin adı.
-
Kümede yoğun bellek kullanan uygulamalar çalıştırmayı planlıyorsanız parametresini kullanarak
--worker-vm-sizeçalışan düğümleri için uygun sanal makine boyutunu belirtin. Daha fazla bilgi için aşağıdaki makaleleri inceleyin:
Aşağıdaki yönergeleri kullanırken Azure Red Hat OpenShift 4 kümesine bağlanma başlığı altındaki adımları izleyerek kümeye bağlanın:
- Bu makalenin devamında
ockomutunu kullanacağınız için "OpenShift CLI'yi yükleme" başlığındaki adımları izlediğinizden emin olun. - Küme konsolu URL'sini bir kenara kaydedin. Şunun gibi
https://console-openshift-console.apps.<random>.<region>.aroapp.io/görünmelidir. - Kimlik bilgilerini
kubeadminnot alın. - OpenShift CLI kullanarak bağlanma adımlarını
kubeadminkimlik bilgileriyle izlediğinizden emin olun.
- Bu makalenin devamında
Open Liberty operatörünü yükleme
Kümeyi oluşturup bağlandıktan sonra Open Liberty İşleci'ni yüklemek için aşağıdaki adımları kullanın. Open Liberty Operatörünün ana başlangıç sayfası GitHub'dadır.
Kimlik bilgilerini kullanarak tarayıcınızdan OpenShift web konsolunda
kubeadminoturum açın.OperatorsOperatorHub'a gidin ve >'yi arayın.
Arama sonuçlarından Open Liberty'yi seçin.
Yükle'yi seçin.
Yükleme İşleci sayfasında aşağıdaki adımları kullanın:
- Güncelleştirme kanalı için en son kanal v1.4'i seçin.
Yükleme modu için Kümedeki tüm ad alanları (varsayılan) öğesini seçin.- Güncelleştirme onayı için Otomatik'i seçin.
Yükle'yi seçin ve yükleme tamamlanana kadar birkaç dakika bekleyin.
Open Liberty Operatörünün başarıyla yüklendiğini ve kullanıma hazır olduğunu gözlemleyin. Hazır değilse devam etmeden önce sorunu tanılayın ve çözün.
Not
Bu kılavuz, Azure Red Hat OpenShift kümesinde Liberty uygulamalarını yönetmek için Open Liberty Operatörünü yükler. WebSphere Liberty Operatörünü kullanmak istiyorsanız, WebSphere Liberty işlecini yükleme bölümünde yer alan adımları izleyerek WebSphere Liberty İşlecini kümeye yükleyin.
Java uygulaması için OpenShift ad alanı oluşturma
Uygulamanızla kullanmak üzere bir OpenShift ad alanı oluşturmak için aşağıdaki adımları kullanın:
Kimlik bilgilerini kullanarak tarayıcınızdan OpenShift web konsolunda oturum açtığınızdan
kubeadminemin olun.Yönetim>Ad Alanları>Ad Alanı Oluştur'a gidin.
Ad alanına open-liberty-demo yazın ve ardından aşağıdaki ekran görüntüsünde gösterildiği gibi Oluştur'u seçin.
MySQL için Azure Esnek Sunucu Veritabanı Oluşturun
MySQL için Azure Veritabanı Esnek Sunucu dağıtım modeli, veritabanı yönetimi işlevleri ve yapılandırma ayarları üzerinde MySQL için Azure Veritabanı tek sunucu dağıtım modundan daha ayrıntılı denetim ve esneklik sağlamak için tasarlanmış bir dağıtım modudur. Bu bölümde, Azure CLI kullanarak MySQL için Azure Veritabanı Esnek Sunucu örneğinin nasıl oluşturulacağı gösterilmektedir. Daha fazla bilgi için bkz. Hızlı Başlangıç: Azure CLI kullanarak MySQL için Azure Veritabanı - Esnek Sunucu örneği oluşturma.
MySQL için Azure Veritabanı Esnek Sunucu örneği oluşturmak için terminalinizde aşağıdaki komutu kullanın.
<location> yerine, sunucuyu oluşturmak istediğiniz kullanılabilir SKU'ların bulunduğu Azure bölgesiyle değiştirin; örneğin, westus.
<server-admin-password> simgesini, MySQL için Azure Veritabanı Esnek Sunucu'sunun parola karmaşıklığı gereksinimlerini karşılayan bir parola ile değiştirin.
export LOCATION=<location>
export ADMIN_PASSWORD='<server-admin-password>'
export ADMIN_USER=adminuser
export DATABASE_NAME=${RESOURCEGROUP}db
az mysql flexible-server create \
--name ${CLUSTER} \
--resource-group ${RESOURCEGROUP} \
--location $LOCATION \
--admin-user $ADMIN_USER \
--admin-password $ADMIN_PASSWORD \
--database-name $DATABASE_NAME \
--public-access 0.0.0.0 \
--yes
Not
Bu makale, MySQL kimlik doğrulaması ile MySQL için Azure Veritabanı Esnek Sunucu oluşturmanız için size yol gösterir. Daha güvenli bir uygulama, veritabanı sunucusu bağlantısının kimliğini doğrulamak için Microsoft Entra kimlik doğrulamasını kullanmaktır. Azure Red Hat OpenShift şu anda Microsoft Entra İş Yükü Kimliği desteklemediğinden, kullanılabilen tek seçenek MySQL kimlik doğrulamasıdır.
No available SKUs in this locationbir hata iletisi alırsanız, --location parametresini kullanarak farklı bir konum belirtin ve yeniden deneyin. Belirli bir konumdaki kullanılabilir SKU'ları listelemek için aşağıdaki komutu kullanın:
az mysql flexible-server list-skus --location <location>
Kullanılabilir SKU'ları olan bir konum bulun ve önceki az mysql flexible-server create komutu yineleyin.
Tüm Azure kaynaklarından gelen bağlantıları kabul eden sunucu, veritabanı, yönetici kullanıcı ve güvenlik duvarı kuralının oluşturulması birkaç dakika sürer. Komut başarılı olursa, çıkış aşağıdaki örneğe benzer şekilde görünür:
{
"connectionString": "mysql <database-name> --host <server-name>.mysql.database.azure.com --user <server-admin-username> --password=<server-admin-password>",
"databaseName": "<database-name>",
"firewallName": "<firewall-name>",
"host": "<server-name>.mysql.database.azure.com",
"id": "/subscriptions/REDACTED/resourceGroups/<resource-group-of-the-OpenShift-cluster>/providers/Microsoft.DBforMySQL/flexibleServers/<server-name>",
"location": "<location>",
"password": "<server-admin-password>",
"resourceGroup": "<resource-group-of-the-OpenShift-cluster>",
"skuname": "Standard_B1ms",
"username": "<server-admin-username>",
"version": "8.0.21"
}
Liberty uygulamasını hazırlama
Bu kılavuzda örneğimiz olarak jakarta EE 10 uygulaması kullanıyoruz. Open Liberty, Jakarta EE 10 tam profille uyumludur. Daha fazla bilgi için jakarta EE Platform API'sine bakın.
Uygulamayı Open Liberty'de çalıştırma
Uygulamayı Open Liberty'de çalıştırmak için, Liberty Maven eklentisinin uygulamayı dağıtım için paketleyebilmesi için bir Open Liberty sunucu yapılandırma dosyası oluşturmanız gerekir. Uygulamayı OpenShift'e dağıtmak için Liberty Maven eklentisi gerekli değildir. Ancak, bu örnekte Open Liberty'nin geliştirici (geliştirme) moduyla birlikte kullanırız. Geliştirici modu, uygulamayı yerel olarak kolayca çalıştırmanıza olanak tanır. Daha fazla bilgi edinmek için liberty-maven-plugin hakkında bkz. Maven ile web uygulaması oluşturma.
Örnek uygulamayı bu makalede daha sonra kullanmak üzere hazırlamak için bu bölümdeki adımları izleyin.
Uygulamayı gözden geçirin
Bu kılavuzun örnek kodunu kopyalamak için aşağıdaki komutları kullanı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 20250429
cd ${BASE_DIR}/3-integration/connect-db/mysql
detached HEAD durumunda olduğunuzu belirten bir mesaj görürseniz, bu mesajı görmezden gelebilirsiniz. Sadece bir etiketi incelediğiniz anlamına gelir.
Depoda birkaç örnek vardır. open-liberty-on-aro/3-integration/connect-db/mysql kullanıyoruz. Uygulamanın dosya yapısı aşağıdadır:
open-liberty-on-aro/3-integration/connect-db/mysql
├─ src/main/
│ ├─ aro/
│ │ ├─ db-secret.yaml
│ │ ├─ openlibertyapplication.yaml
│ ├─ liberty/config/
│ │ ├─ server.xml
│ ├─ java/
│ ├─ resources/
│ ├─ webapp/
├─ Dockerfile
├─ Dockerfile-wlp
├─ 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 dizinine iki dağıtım dosyası yerleştirdik. db-secret.xml, veritabanı bağlantısı kimlik bilgileriyle "Secrets" oluşturmak için kullanılır. Uygulama görüntüsünü dağıtmak için openlibertyapplication.yaml dosyası kullanılır.
Kök dizine iki Dockerfile yerleştirdik. Dockerfile ve Dockerfile-wlp , yerel hata ayıklama için ve sırasıyla Open Liberty ve WebSphere Liberty ile çalışan bir Azure Red Hat OpenShift dağıtımı için görüntü oluşturmak için kullanılır.
Liberty/config dizininde server.xml, Open Liberty ve WebSphere Liberty kümesi için veritabanı bağlantısını yapılandırmak için kullanılır.
Projeyi oluştur
Daha önce tanımlanan ortam değişkenlerini kullanarak, projeyi oluşturmak için terminalinizde aşağıdaki komutları çalıştırın. Projenin POM dosyası ortamdan birçok özelliği okur.
cd ${BASE_DIR}/3-integration/connect-db/mysql
# The following variables are used for deployment file generation
export DB_SERVER_NAME=$CLUSTER.mysql.database.azure.com
export DB_PORT_NUMBER=3306
export DB_NAME=$DATABASE_NAME
export DB_USER=$ADMIN_USER
export DB_PASSWORD=$ADMIN_PASSWORD
export NAMESPACE=open-liberty-demo
mvn clean install
(İsteğe bağlı) Uygulamanızı yerel olarak test edin
İsteğe bağlı olarak, beklendiği gibi çalıştığını doğrulamak için uygulamayı yerel olarak çalıştırabilirsiniz. İlk olarak, yerel makinenizin MySQL için Azure Veritabanı Esnek Sunucu örneğine bağlanmasına izin vermek için bir güvenlik duvarı kuralı eklemeniz gerekir. Güvenlik duvarı kuralını eklemek için aşağıdaki adımları kullanın:
- Azure portalında oturum açın ve daha önce oluşturduğunuz MySQL için Azure Veritabanı Esnek Sunucu örneğine gidin.
- Sol bölmede Ayarlar>Ağ Bağlantıları seçin.
- Geçerli istemci IP adresini ekle.
- Kaydet'i seçin ve güvenlik duvarı kuralının eklenmesini bekleyin.
Azure ile ilgili karmaşıklıklarla uğraşmadan önce projeyi ve kapsayıcı görüntüsünü yerel olarak çalıştırmak ve test etmek için liberty:devc komutunu çalıştırmak amacıyla aşağıdaki adımları kullanın. hakkında liberty:devcdaha fazla bilgi için Liberty Eklentisi belgelerine bakın.
Gerekirse yerel Docker ortamınızı başlatın. Ortamı başlatma yönergeleri, konak işletim sistemine bağlı olarak değişir.
Uygulamayı
liberty:devcmodda başlatmak için aşağıdaki komutları kullanın:cd ${BASE_DIR}/3-integration/connect-db/mysql # If you are running with Open Liberty mvn liberty:devc -DcontainerRunOpts="-e DB_SERVER_NAME=${DB_SERVER_NAME} -e DB_PORT_NUMBER=${DB_PORT_NUMBER} -e DB_NAME=${DB_NAME} -e DB_USER=${DB_USER} -e DB_PASSWORD=${DB_PASSWORD}" -Dcontainerfile=Dockerfile # If you are running with WebSphere Liberty mvn liberty:devc -DcontainerRunOpts="-e DB_SERVER_NAME=${DB_SERVER_NAME} -e DB_PORT_NUMBER=${DB_PORT_NUMBER} -e DB_NAME=${DB_NAME} -e DB_USER=${DB_USER} -e DB_PASSWORD=${DB_PASSWORD}" -Dcontainerfile=Dockerfile-wlpUygulamanı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. Tarayıcınızda adresinehttps://localhost:9443/gidin ve uygulamanın erişilebilir olduğunu ve tüm işlevlerin çalıştığını doğrulayın.liberty:devcmodunu durdurmak için Control+ + C tuşlarına basın.
Uygulama görüntüsünü hazırlama
Liberty uygulamanızı bir Azure Red Hat OpenShift kümesinde dağıtmak ve çalıştırmak için Open Liberty kapsayıcı görüntülerini veya WebSphere Liberty kapsayıcı görüntülerini kullanarak uygulamanızı Docker görüntüsü olarak kapsayıcıya alın.
Uygulamayı oluşturma ve görüntü akışına gönderme
Liberty Docker kapsayıcısında uygulamayı komutunu kullanarak liberty:devc başarıyla çalıştırdığınızdan, aşağıdaki adımları kullanarak görüntüyü kümede uzaktan oluşturacaksınız:
Kimlik bilgilerini kullanarak OpenShift CLI'da oturum açtığınızdan
kubeadminemin olun.Kaynak dizini ve Dockerfile'ı tanımlamak için aşağıdaki komutları kullanın:
cd ${BASE_DIR}/3-integration/connect-db/mysql # If you are building with the Open Liberty base image, the existing Dockerfile is ready for you # If you are building with the WebSphere Liberty base image, uncomment and execute the following two commands to rename Dockerfile-wlp to Dockerfile # mv Dockerfile Dockerfile.backup # mv Dockerfile-wlp DockerfileProjeyi
open-liberty-demoolarak değiştirmek için aşağıdaki komutu kullanın:oc project $NAMESPACEGörüntü akışı oluşturmak için aşağıdaki komutu kullanın:
oc create imagestream javaee-cafe-mysqlDerleme çı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-mysql-config --binary --strategy docker --to javaee-cafe-mysql:v1Yerel 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-mysql-config --from-dir . --follow
Azure Red Hat OpenShift kümesinde uygulama dağıtma
Artık örnek Liberty uygulamasını önkoşullar üzerinde çalışırken daha önce oluşturduğunuz Azure Red Hat OpenShift kümesine dağıtabilirsiniz.
Uygulamayı web konsolundan dağıtma
Liberty uygulamalarını yönetmek için Open Liberty Operatörünü kullandığımızdan, OpenLibertyApplicationtüründe bir Özel Kaynak Tanımı örneği oluşturmamız gerekir. Operatör, dağıtım için gereken OpenShift kaynaklarını yönetmenin tüm yönlerini üstlenir. Bu örneği oluşturmak için aşağıdaki adımları kullanın:
Kimlik bilgilerini kullanarak tarayıcınızdan OpenShift web konsolunda
kubeadminoturum açın.Home>Projects>open-liberty-demo adreslerini ziyaret ederek projeyi seçin.
İş Yükleri>Gizli Diziler'e gidin.
Seçin, YAML'den>Oluştur.
Oluşturulan YAML dosyasını, sizin
path-to-repo /3-integration/connect-db/mysql/target/db-secret.yaml konumunda bulunan dosyanızla değiştirin. Oluştur'u belirleyin. Bu seçim sizi Gizli detaylar sayfasına döndürür.
İşleçler>Yüklü İşleçler bölümüne gidin.
Sayfanın ortasında Open Liberty ifadesini görürsünüz.
Sağlanan API'ler'den OpenLibertyApplication'ı seçin. Kullanıcı arabirimindeki öğelerin gezintisi, kullanılan teknolojilerin gerçek kapsama hiyerarşisini yansıtır.
OpenLibertyApplication Oluştur'u seçin.
Aracılığıyla yapılandır için YAML görünümünü seçin.
Oluşturulan yaml dosyasını,
path-to-repo /3-integration/connect-db/mysql/target/openlibertyapplication.yaml konumunda bulunan kendi dosyanızla değiştirin. Oluştur'u belirleyin. OpenLibertyApplications listesine geri dönersiniz.
İşleçler>Yüklü İşleçler>Open Liberty>OpenLibertyApplication'a gidin.
javaee-café-mysql öğesini seçin.
Sayfanın ortasında Kaynaklar'ı seçin.
Tabloda Yol Türüile javaee-café-mysql bağlantısını seçin.
Açılan sayfada Konum'un altındaki bağlantıyı seçin.
Uygulamanın giriş sayfası tarayıcıda açılır.
Uygulamayı web konsolundan silme
Uygulamayla işiniz bittiğinde, uygulamayı Open Shift'ten silmek için aşağıdaki adımları kullanın:
- Sol gezinti bölmesinde İşleçler girişini genişletin.
- Yüklü İşleçler'i seçin.
- Open Liberty'yi seçin.
- Sayfanın ortasında OpenLibertyApplication'ı seçin.
- javaee-cafe-mysql için dikey üç noktayı seçin, ardından OpenLibertyApplication'ı Sil seçeneğine tıklayın.
- Uygulamayı silmek için Sil'i seçin.
OpenShift'teki sırrı silmek için aşağıdaki adımları kullanın:
- İş Yükleri>Gizli Diziler'e gidin.
- db-secret-mysql öğesini seçin.
- Eylemler>Sırrı Sil seçeneğini seçin.
- Gizli öğeyi silmek için Sil'i seçin.
Kaynakları temizleme
Azure Red Hat OpenShift 4 kümesini silmek için Öğretici: Azure Red Hat OpenShift 4 kümesini silme başlıklı adımları izleyerek Azure Red Hat OpenShift kümesini silin. Veritabanının ve ilişkili kaynakların da silindiğinden emin olun.
Sonraki adımlar
Bu kılavuzda kullanılan başvurulardan daha fazla bilgi edinebilirsiniz:
- Açık Özgürlük
- Azure Red Hat OpenShift
- Open Liberty İşleci
- Open Liberty Server Yapılandırması
- Liberty Maven Eklentisi
- Open Liberty Container Images
- WebSphere Liberty Kapsayıcı Görüntüleri
WebSphere ürünlerini Azure'da çalıştırma seçeneklerini keşfetmek için bkz . Azure'da WebSphere ürün ailesini çalıştırmaya yönelik çözümler nelerdir?