Bagikan melalui


Mulai Cepat: Menyebarkan JBoss EAP di Azure Red Hat OpenShift

Artikel ini memperlihatkan kepada Anda cara menyiapkan JBoss Enterprise Application Platform (EAP) dengan cepat di Azure Red Hat OpenShift menggunakan portal Azure.

Artikel ini menggunakan penawaran Marketplace Azure untuk JBoss EAP untuk mempercepat perjalanan Anda ke Azure Red Hat OpenShift. Penawaran ini secara otomatis menyediakan sumber daya termasuk kluster Azure Red Hat OpenShift dengan OpenShift Container Registry (OCR) bawaan, Operator JBoss EAP, dan secara opsional gambar kontainer termasuk JBoss EAP dan aplikasi Anda menggunakan Source-to-Image (S2I). Untuk melihat penawaran, kunjungi portal Azure. Jika Anda lebih suka panduan langkah demi langkah manual untuk menjalankan JBoss EAP di Azure Red Hat OpenShift yang tidak menggunakan otomatisasi yang diaktifkan oleh penawaran, lihat Menyebarkan aplikasi Java dengan Red Hat JBoss Enterprise Application Platform (JBoss EAP) pada kluster Azure Red Hat OpenShift 4.

Jika Anda tertarik untuk memberikan umpan balik atau bekerja erat pada skenario migrasi Anda dengan tim teknik yang mengembangkan solusi JBoss EAP di Azure, isi survei singkat ini tentang migrasi JBoss EAP dan sertakan informasi kontak Anda. Tim manajer program, arsitek, dan insinyur akan segera menghubungi Anda untuk memulai kolaborasi yang erat.

Prasyarat

  • Sebuah langganan Azure. Jika Anda tidak memiliki akun Azure, buat akun gratis sebelum memulai.

  • Akun Red Hat dengan profil lengkap. Jika Anda tidak memilikinya, Anda dapat mendaftar untuk langganan pengembang gratis melalui Langganan Pengembang Red Hat untuk Individu.

  • Baris perintah pengembang lokal dengan lingkungan perintah seperti UNIX - misalnya, Ubuntu, macOS, atau Subsistem Windows untuk Linux - dan Azure CLI terinstal. Untuk mempelajari cara menginstal Azure CLI, lihat Cara menginstal Azure CLI.

  • The mysql CLI. Misalnya, Anda dapat menginstal CLI dengan menggunakan perintah berikut pada sistem berbasis Ubuntu atau Debian:

    sudo apt update
    sudo apt install mysql-server
    
  • Identitas Azure yang Anda gunakan untuk masuk yang memiliki peran Kontributor dan peran Administrator Akses Pengguna atau peran Pemilik dalam langganan saat ini. Untuk gambaran umum peran Azure, lihat Apa itu kontrol akses berbasis peran Azure (Azure RBAC)?

Nota

Azure Red Hat OpenShift memerlukan minimal 40 inti untuk membuat dan menjalankan kluster OpenShift. Kuota sumber daya Azure default untuk langganan Azure baru tidak memenuhi persyaratan ini. Untuk meminta peningkatan batas sumber daya Anda, lihat Meningkatkan kuota vCPU VM-family. Perhatikan bahwa langganan uji coba gratis tidak memenuhi syarat untuk penambahan kuota. Tingkatkan ke langganan Pay-As-You-Go sebelum Anda meminta penambahan kuota. Untuk informasi selengkapnya, lihat Meningkatkan akun gratis Azure atau akun Azure for Students Starter Anda.

Dapatkan rahasia penarikan Red Hat

Penawaran Marketplace Azure yang digunakan dalam artikel ini memerlukan rahasia penarikan Red Hat. Bagian ini menunjukkan kepada Anda cara mendapatkan rahasia penarikan Red Hat untuk Azure Red Hat OpenShift. Untuk mempelajari tentang apa itu rahasia penarikan Red Hat dan mengapa Anda membutuhkannya, lihat bagian Dapatkan rahasia penarikan Red Hat dari Tutorial: Membuat kluster Azure Red Hat OpenShift 4.

Gunakan langkah-langkah berikut untuk mendapatkan rahasia penarikan:

  1. Buka Red Hat OpenShift Hybrid Cloud Console, lalu gunakan akun Red Hat Anda untuk masuk ke portal manajer kluster OpenShift. Anda mungkin perlu menerima lebih banyak istilah dan memperbarui akun Anda seperti yang ditunjukkan pada cuplikan layar berikut. Gunakan kata sandi yang sama seperti saat Anda membuat akun.

    Cuplikan layar halaman Red Hat Perbarui Akun Anda.

  2. Setelah Anda masuk, pilih OpenShift lalu Unduhan.

  3. Pilih daftar dropdown Semua kategori lalu pilih Token.

  4. Di bawah Tarik rahasia, pilih Salin atau Unduh untuk mendapatkan nilainya, seperti yang diperlihatkan dalam cuplikan layar berikut.

    Cuplikan layar portal konsol Red Hat yang menampilkan rahasia penarikan.

    Konten berikut adalah contoh yang disalin dari portal konsol Red Hat, dengan kode autentikasi diganti dengan xxxx...xxx.

    {"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"}}}
    
  5. Simpan rahasia ke file sehingga Anda dapat menggunakannya nanti.

Membuat akun layanan Red Hat Container Registry

Nantinya, artikel ini menunjukkan kepada Anda cara menyebarkan aplikasi secara manual ke OpenShift menggunakan Source-to-Image (S2I). Akun layanan Red Hat Container Registry diperlukan untuk menarik gambar kontainer untuk JBoss EAP tempat menjalankan aplikasi Anda. Jika Anda memiliki akun layanan Red Hat Container Registry yang siap digunakan, lewati bagian ini dan lanjutkan ke bagian berikutnya, tempat Anda menyebarkan penawaran.

Gunakan langkah-langkah berikut untuk membuat akun layanan Red Hat Container Registry dan mendapatkan nama pengguna dan kata sandinya. Untuk informasi selengkapnya, lihat Membuat Akun Layanan Registri di dokumentasi Red Hat.

  1. Gunakan akun Red Hat Anda untuk masuk ke Aplikasi Manajemen Akun Layanan Registri.
  2. Dari halaman Akun Layanan Registri, pilih Akun Layanan Baru.
  3. Berikan nama untuk Akun Layanan. Nama ini didahului dengan string acak tetap.
    • Masukkan deskripsi.
    • Pilih Buat.
  4. Navigasikan kembali ke Akun Layanan Anda.
  5. Pilih Akun Layanan yang Anda buat.
    • Catat nama pengguna, termasuk string yang telah ditentukan sebelumnya (yaitu, XXXXXXX|username). Gunakan nama pengguna ini saat Anda masuk ke registry.redhat.io.
    • Catat kata sandi. Gunakan kata sandi ini saat Anda masuk ke registry.redhat.io.

Anda membuat akun layanan Red Hat Container Registry.

Membuat perwakilan layanan Microsoft Entra dari portal Azure

Penawaran Marketplace Azure yang digunakan dalam artikel ini memerlukan perwakilan layanan Microsoft Entra untuk menyebarkan kluster Azure Red Hat OpenShift Anda. Penawaran menetapkan perwakilan layanan dengan hak istimewa yang tepat selama waktu penyebaran, tanpa penetapan peran yang diperlukan. Jika Anda memiliki perwakilan layanan yang siap digunakan, lewati bagian ini dan lanjutkan ke bagian berikutnya, tempat Anda membuat akun layanan Red Hat Container Registry.

Gunakan langkah-langkah berikut untuk menyebarkan perwakilan layanan dan mendapatkan ID dan rahasia Aplikasi (klien) dari portal Azure. Untuk informasi selengkapnya, lihat Membuat dan menggunakan perwakilan layanan untuk menyebarkan kluster Azure Red Hat OpenShift.

Nota

Anda harus memiliki izin yang memadai untuk mendaftarkan aplikasi dengan penyewa Microsoft Entra Anda. Jika Anda mengalami masalah, periksa izin yang diperlukan untuk memastikan akun Anda dapat membuat identitas. Untuk informasi selengkapnya, lihat Mendaftarkan aplikasi Microsoft Entra dan membuat perwakilan layanan.

  1. Masuk ke akun Azure Anda melalui portal Azure.

  2. Pilih Microsoft Entra ID.

  3. Pilih Pendaftaran aplikasi.

  4. Pilih Pendaftaran baru.

  5. Beri nama aplikasi - misalnya, jboss-eap-on-aro-app. Pilih jenis akun yang didukung, yang menentukan siapa yang bisa menggunakan aplikasi. Setelah mengatur nilai, pilih Daftar, seperti yang ditunjukkan pada cuplikan layar berikut. Dibutuhkan beberapa detik untuk menyediakan aplikasi. Tunggu hingga penyebaran selesai sebelum melanjutkan.

    Cuplikan layar portal Azure yang memperlihatkan halaman Daftarkan aplikasi.

  6. Simpan ID Aplikasi (klien) dari halaman gambaran umum, seperti yang ditunjukkan pada cuplikan layar berikut. Arahkan penunjuk ke nilai, yang diredaksi dalam cuplikan layar, dan pilih ikon salin yang muncul. Tipsalat mengatakan Salin ke clipboard. Berhati-hatilah untuk menyalin nilai yang benar, karena nilai lain di bagian tersebut juga memiliki ikon salin. Simpan ID Aplikasi ke file sehingga Anda dapat menggunakannya nanti.

    Cuplikan layar portal Azure yang memperlihatkan halaman Gambaran Umum dengan ID Aplikasi (klien) disorot.

  7. Buat rahasia klien baru dengan mengikuti langkah-langkah berikut:

    1. Pilih Sertifikat & rahasia.
    2. Pilih Rahasia klien, lalu Rahasia klien baru.
    3. Berikan deskripsi rahasia dan durasi. Setelah selesai, pilih Tambahkan.
    4. Setelah rahasia klien ditambahkan, nilai rahasia klien ditampilkan. Salin nilai ini karena Anda tidak dapat mengambilnya nanti. Pastikan untuk menyalin Nilai dan bukan ID Rahasia.

Anda membuat aplikasi Microsoft Entra, perwakilan layanan, dan rahasia klien Anda.

Memvalidasi perwakilan layanan

Gunakan perintah berikut untuk memvalidasi perwakilan layanan:

az login \
    --service-principal \
    --username <service-principal-client-id> \
    --password <service-principal-client-secret> \
    --tenant <tenant-id>
az account show

Ganti <service-principal-client-id>, <service-principal-client-secret>, dan <tenant-id> dengan nilai yang Anda peroleh di langkah sebelumnya. Jika Anda melihat informasi akun, perwakilan layanan valid.

Menyebarkan JBoss EAP di Azure Red Hat OpenShift

Langkah-langkah di bagian ini mengarahkan Anda untuk menyebarkan JBoss EAP di Azure Red Hat OpenShift.

Langkah-langkah berikut menunjukkan kepada Anda cara menemukan penawaran dan mengisi panel Dasar .

  1. Di bilah pencarian di bagian atas portal Azure, masukkan JBoss EAP. Di hasil pencarian, di bagian Marketplace , pilih JBoss EAP di Azure Red Hat OpenShift, seperti yang ditunjukkan pada cuplikan layar berikut.

    Cuplikan layar portal Azure yang memperlihatkan JBoss EAP di Azure Red Hat OpenShift di hasil pencarian.

    Anda juga dapat langsung membuka JBoss EAP pada penawaran Azure Red Hat OpenShift di portal Azure.

  2. Pada halaman penawaran, pilih Buat.

  3. Pada panel Dasar , pastikan bahwa nilai yang diperlihatkan di bidang Langganan sama dengan yang memiliki peran yang tercantum di bagian prasyarat.

  4. Di bidang Grup sumber daya, pilih Buat baru dan isi nilai untuk grup sumber daya. Karena grup sumber daya harus unik di dalam langganan, pilih nama unik. Cara mudah untuk memiliki nama unik adalah dengan menggunakan kombinasi inisial Anda, tanggal hari ini, dan beberapa pengidentifikasi. Misalnya, eaparo033123rg.

  5. Di bawah Detail instans, pilih wilayah untuk penyebaran. Untuk daftar wilayah Azure tempat OpenShift beroperasi, lihat Wilayah untuk Red Hat OpenShift 4.x di Azure.

  6. Pilih Berikutnya: ARO.

Langkah-langkah berikut ini memperlihatkan kepada Anda cara mengisi panel ARO yang diperlihatkan dalam cuplikan layar berikut:

Cuplikan layar portal Azure yang memperlihatkan JBoss EAP di panel Azure Red Hat OpenShift ARO.

  1. Di bawah Buat kluster baru, pilih Ya.

  2. Di bawah Berikan informasi untuk membuat kluster baru, untuk rahasia penarikan Red Hat, isi rahasia penarikan Red Hat yang Anda peroleh di bagian Dapatkan rahasia penarikan Red Hat. Gunakan nilai yang sama untuk Konfirmasi rahasia.

  3. Isi ID klien perwakilan layanan dengan ID Aplikasi perwakilan layanan (klien) yang Anda peroleh di bagian Membuat perwakilan layanan Microsoft Entra dari bagian portal Azure.

  4. Isi rahasia klien perwakilan layanan dengan rahasia Aplikasi perwakilan layanan yang Anda peroleh di bagian Buat perwakilan layanan Microsoft Entra dari portal Azure. Gunakan nilai yang sama untuk Konfirmasi rahasia.

  5. Pilih Aplikasi EAP Berikutnya.

Langkah-langkah berikut menunjukkan kepada Anda cara mengisi panel Aplikasi EAP yang diperlihatkan dalam cuplikan layar berikut, lalu memulai penyebaran.

Cuplikan layar portal Azure yang memperlihatkan JBoss EAP di panel Aplikasi Azure Red Hat OpenShift EAP.

  1. Biarkan opsi default Tidak untuk Menyebarkan aplikasi ke OpenShift menggunakan Source-to-Image (S2I)?.

    Nota

    Nantinya, mulai cepat ini menunjukkan kepada Anda cara menyebarkan aplikasi secara manual dengan koneksi database.

  2. Pilih Berikutnya: Tinjau + buat.

  3. Pilih Tinjau + kreasikan. Pastikan bahwa pesan Validasi Lulus berwarna hijau muncul di bagian atas. Jika pesan tidak muncul, perbaiki masalah validasi, lalu pilih Tinjau + buat lagi.

  4. Pilih Buat.

  5. Lacak kemajuan penyebaran pada halaman Penyebaran sedang berlangsung .

Bergantung pada kondisi jaringan dan aktivitas lain di wilayah yang Anda pilih, penyebaran mungkin memerlukan waktu hingga 35 menit untuk diselesaikan.

Saat menunggu, Anda bisa menyiapkan database.

Menyiapkan Azure Database for MySQL - Server Fleksibel

Bagian berikut ini memperlihatkan kepada Anda cara menyiapkan Azure Database for MySQL - Server Fleksibel.

Mengatur variabel lingkungan dalam shell baris perintah

Sampelnya adalah aplikasi Java yang didukung oleh database MySQL, dan disebarkan ke kluster OpenShift menggunakan Source-to-Image (S2I). Untuk informasi selengkapnya tentang S2I, lihat Dokumentasi S2I.

Nota

Karena Identitas Beban Kerja Azure belum didukung oleh Azure OpenShift, artikel ini masih menggunakan nama pengguna dan kata sandi untuk autentikasi database alih-alih menggunakan koneksi database tanpa kata sandi.

Buka shell dan atur variabel lingkungan berikut. Ganti substitusi sebagaimana mestinya.

RG_NAME=<resource-group-name>
SERVER_NAME=<database-server-name>
DB_DATABASE_NAME=testdb
ADMIN_USERNAME=myadmin
ADMIN_PASSWORD=Secret123456
DB_USERNAME=testuser
DB_PASSWORD=Secret123456
PROJECT_NAME=eaparo-sample
CON_REG_SECRET_NAME=eaparo-sample-pull-secret
CON_REG_ACC_USER_NAME="<red-hat-container-registry-service-account-username>"
CON_REG_ACC_PWD="<red-hat-container-registry-service-account-password>"
APPLICATION_NAME=javaee-cafe
APP_REPLICAS=3

Ganti tempat penampung dengan nilai berikut, yang digunakan di seluruh sisa artikel:

  • <resource-group-name>: Nama grup sumber daya yang Anda buat sebelumnya - misalnya, eaparo033123rg.
  • <database-server-name>: Nama server MySQL Anda, yang harus unik di seluruh Azure - misalnya, eaparo033123mysql.
  • ADMIN_PASSWORD: Kata sandi admin server database MySQL Anda. Artikel ini diuji menggunakan kata sandi yang ditampilkan. Lihat dokumentasi database untuk aturan kata sandi.
  • <red-hat-container-registry-service-account-username> dan <red-hat-container-registry-service-account-password>: Nama pengguna dan kata sandi akun layanan Red Hat Container Registry yang Anda buat sebelumnya.

Sebaiknya simpan pasangan nama/nilai yang diisi penuh dalam file teks, jika shell keluar sebelum Anda selesai menjalankan perintah. Dengan begitu, Anda dapat menempelkannya ke dalam instans baru shell dan dengan mudah melanjutkan.

Pasangan nama/nilai ini pada dasarnya adalah "rahasia". Untuk cara siap produksi mengamankan Azure Red Hat OpenShift, termasuk manajemen rahasia, lihat Keamanan untuk akselerator zona pendaratan Azure Red Hat OpenShift.

Membuat dan menginisialisasi database

Selanjutnya, gunakan langkah-langkah berikut untuk membuat Azure Database for MySQL - Server Fleksibel, dan buat pengguna dengan izin untuk membaca/menulis dari/ke database tertentu.

  1. Gunakan perintah berikut untuk membuat Azure Database for MySQL - Server Fleksibel:

    az mysql flexible-server create \
        --resource-group ${RG_NAME} \
        --name ${SERVER_NAME} \
        --database-name ${DB_DATABASE_NAME} \
        --public-access 0.0.0.0  \
        --admin-user ${ADMIN_USERNAME} \
        --admin-password ${ADMIN_PASSWORD} \
        --yes
    

    Perintah ini mungkin memerlukan waktu sepuluh menit atau lebih untuk diselesaikan. Ketika perintah berhasil diselesaikan, Anda akan melihat output yang mirip dengan contoh berikut:

    {
      "connectionString": "mysql testdb --host ejb010406adb.mysql.database.azure.com --user myadmin --password=Secret#123345",
      "databaseName": "testdb",
      "firewallName": "AllowAllAzureServicesAndResourcesWithinAzureIps_2023-4-6_21-21-3",
      "host": "ejb010406adb.mysql.database.azure.com",
      "id": "/subscriptions/redacted/resourceGroups/ejb010406a/providers/Microsoft.DBforMySQL/flexibleServers/ejb010406adb",
      "location": "East US",
      "password": "Secret#123345",
      "resourceGroup": "ejb010406a",
      "skuname": "Standard_B1ms",
      "username": "myadmin",
      "version": "5.7"
    }
    
  2. Gunakan perintah berikut untuk mendapatkan host server MySQL yang dibuat:

    DB_HOST=$(az mysql flexible-server show \
        --resource-group ${RG_NAME} \
        --name ${SERVER_NAME} \
        --query "fullyQualifiedDomainName" \
        --output tsv)
    echo $DB_HOST
    

    Simpan pasangan nama/nilai ke file teks Anda.

  3. Gunakan perintah berikut untuk membuat aturan firewall sementara untuk mengizinkan koneksi ke server MySQL dari internet publik:

    az mysql flexible-server firewall-rule create \
        --resource-group ${RG_NAME} \
        --name ${SERVER_NAME} \
        --rule-name "AllowAllIPs" \
        --start-ip-address 0.0.0.0 \
        --end-ip-address 255.255.255.255
    
  4. Gunakan perintah berikut untuk membuat pengguna database baru dengan izin untuk membaca dan menulis database tertentu. Perintah ini berguna untuk mengirim SQL langsung ke database.

    mysql --host ${DB_HOST} --user ${ADMIN_USERNAME} --password=${ADMIN_PASSWORD} << EOF
    CREATE USER '${DB_USERNAME}'@'%' IDENTIFIED BY '${DB_PASSWORD}';
    GRANT ALL PRIVILEGES ON ${DB_DATABASE_NAME} . * TO '${DB_USERNAME}'@'%';
    FLUSH PRIVILEGES;
    EOF
    
  5. Gunakan perintah berikut untuk menghapus aturan firewall sementara:

    az mysql flexible-server firewall-rule delete \
        --resource-group ${RG_NAME} \
        --name ${SERVER_NAME}  \
        --rule-name "AllowAllIPs" \
        --yes
    

Anda sekarang memiliki server database MySQL yang berjalan dan siap untuk terhubung dengan aplikasi Anda.

Memverifikasi fungsionalitas penyebaran

Langkah-langkah di bagian ini menunjukkan kepada Anda cara memverifikasi bahwa penyebaran berhasil diselesaikan.

Jika Anda menavigasi jauh dari halaman Penyebaran sedang berlangsung , langkah-langkah berikut menunjukkan kepada Anda cara kembali ke halaman tersebut. Jika Anda masih berada di halaman yang memperlihatkan Penyebaran Anda selesai, Anda dapat melompat ke langkah 5.

  1. Di sudut halaman portal Azure mana pun, pilih menu hamburger lalu pilih Grup sumber daya.

  2. Dalam kotak dengan teks Filter untuk bidang apa pun, masukkan beberapa karakter pertama grup sumber daya yang Anda buat sebelumnya. Apabila Anda mengikuti konvensi yang direkomendasikan, masukkan inisial Anda, kemudian pilih grup sumber daya yang sesuai.

  3. Di panel navigasi, di bagian Pengaturan, pilih Penyebaran. Anda melihat daftar penyebaran yang diurutkan ke grup sumber daya ini, dengan yang terbaru terlebih dahulu.

  4. Gulir ke entri terlama dalam daftar ini. Entri ini sesuai dengan penyebaran yang Anda mulai di bagian sebelumnya. Pilih penyebaran terlama, seperti yang ditunjukkan pada cuplikan layar berikut.

    Cuplikan layar portal Azure yang memperlihatkan JBoss EAP pada penyebaran Azure Red Hat OpenShift dengan penyebaran terlama yang disorot.

  5. Di panel navigasi, pilih Output. Daftar ini menunjukkan nilai output dari penyebaran, yang mencakup beberapa informasi yang berguna.

  6. Buka shell, tempelkan nilai dari bidang cmdToGetKubeadminCredentials , dan jalankan. Anda melihat akun admin dan kredensial untuk masuk ke portal konsol kluster OpenShift. Contoh berikut menunjukkan akun admin:

    az aro list-credentials --resource-group eaparo033123rg --name clusterf9e8b9
    

    Perintah ini menghasilkan output yang mirip dengan contoh berikut:

    {
      "kubeadminPassword": "xxxxx-xxxxx-xxxxx-xxxxx",
      "kubeadminUsername": "kubeadmin"
    }
    
  7. Tempelkan nilai dari bidang consoleUrl ke browser web yang terhubung ke Internet, lalu tekan Enter. Isi nama pengguna dan kata sandi admin, lalu pilih Masuk. Di konsol admin Azure Red Hat OpenShift, pilih , tempat Anda dapat menemukan bahwa > berhasil diinstal, seperti yang ditunjukkan pada cuplikan layar berikut.

    Cuplikan layar portal konsol kluster Red Hat OpenShift yang menampilkan halaman Operator terinstal.

Selanjutnya, gunakan langkah-langkah berikut untuk menyambungkan ke kluster OpenShift menggunakan OpenShift CLI:

  1. Di shell, gunakan perintah berikut untuk mengunduh OpenShift 4 CLI terbaru untuk GNU/Linux. Jika berjalan pada OS selain GNU/Linux, unduh biner yang sesuai untuk OS tersebut.

    cd ~
    wget https://mirror.openshift.com/pub/openshift-v4/clients/ocp/latest/openshift-client-linux.tar.gz
    
    mkdir openshift
    tar -zxvf openshift-client-linux.tar.gz -C openshift
    echo 'export PATH=$PATH:~/openshift' >> ~/.bashrc && source ~/.bashrc
    
  2. Tempelkan nilai dari bidang cmdToLoginWithKubeadmin ke dalam shell, dan jalankan. Anda akan melihat login successful pesan dan proyek yang Anda gunakan. Konten berikut adalah contoh perintah untuk menyambungkan ke kluster OpenShift menggunakan OpenShift CLI.

    oc login \
        $(az aro show \
            --resource-group ${RG_NAME} \
            --name aro-cluster \
            --query apiserverProfile.url \
            --output tsv) \
        -u $(az aro list-credentials \
            --resource-group ${RG_NAME} \
            --name aro-cluster \
            --query kubeadminUsername \
            --output tsv) \
        -p $(az aro list-credentials \
            --resource-group ${RG_NAME} \
            --name aro-cluster \
            --query kubeadminPassword \
            --output tsv)
    

    Perintah ini menghasilkan output yang mirip dengan contoh berikut:

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

Menyebarkan aplikasi JBoss EAP ke kluster OpenShift

Langkah-langkah di bagian ini menunjukkan kepada Anda cara menyebarkan aplikasi pada kluster.

Membangun gambar untuk disebarkan

Gunakan langkah-langkah berikut untuk menyebarkan aplikasi ke kluster. Aplikasi ini dihosting di repositori GitHub rhel-jboss-templates/eap-coffee-app.

  1. Instal Helm dengan menggunakan perintah berikut:

    curl https://raw.githubusercontent.com/helm/helm/master/scripts/get-helm-3 | bash
    # Add the JBoss EAP Helm chart repository
    helm repo add jboss-eap https://jbossas.github.io/eap-charts/
    
  2. Siapkan variabel lingkungan untuk penyebaran dengan menggunakan perintah berikut:

    export SRC_REPO_URL="https://github.com/azure-javaee/rhel-jboss-templates.git"
    export SRC_REPO_REF="20250609"
    export SRC_REPO_DIR="eap-coffee-app"
    
  3. Buat proyek baru di kluster OpenShift dengan menggunakan perintah berikut:

    oc new-project ${PROJECT_NAME}
    
  4. Buat rahasia penarikan untuk Red Hat Container Registry dengan menggunakan perintah berikut:

    oc create secret docker-registry ${CON_REG_SECRET_NAME} \
         --docker-server=registry.redhat.io \
         --docker-username=${CON_REG_ACC_USER_NAME} \
         --docker-password=${CON_REG_ACC_PWD}
    
  5. Buat gambar dengan menggunakan perintah berikut:

    helmDeployment=helm.yaml
    cat <<EOF >${helmDeployment}
    build:
       uri: ${SRC_REPO_URL}
       ref: "${SRC_REPO_REF}"
       contextDir: ${SRC_REPO_DIR}
       pullSecret: ${CON_REG_SECRET_NAME}
    deploy:
       enabled: false
    EOF
    
    helm install ${APPLICATION_NAME} -f helm.yaml jboss-eap/eap8 --namespace ${PROJECT_NAME}
    

Membuat rahasia untuk kata sandi database

Selanjutnya, gunakan langkah-langkah berikut untuk membuat rahasia:

  1. Gunakan perintah berikut untuk membuat rahasia untuk menyimpan kata sandi database:

    oc create secret generic db-secret --from-literal=password=${DB_PASSWORD}
    
  2. Gunakan perintah berikut untuk menyebarkan dan menjalankan tiga replika aplikasi dalam kontainer di kluster:

    cat <<EOF | oc apply -f -
    apiVersion: wildfly.org/v1alpha1
    kind: WildFlyServer
    metadata:
      name: ${APPLICATION_NAME}
    spec:
      applicationImage: ${APPLICATION_NAME}:latest
      replicas: ${APP_REPLICAS}
      env:
        - name: DB_SERVICE_PREFIX_MAPPING
          value: TEST-MYSQL=DS1
        - name: TEST_MYSQL_SERVICE_HOST
          value: ${DB_HOST}
        - name: TEST_MYSQL_SERVICE_PORT
          value: '3306'
        - name: DS1_JNDI
          value: java:jboss/datasources/JavaEECafeDB
        - name: DS1_URL
          value: jdbc:mysql://${DB_HOST}:3306/${DB_DATABASE_NAME}
        - name: DS1_DRIVER
          value: mysql
        - name: DS1_DATABASE
          value: ${DB_DATABASE_NAME}
        - name: DS1_USERNAME
          value: ${DB_USERNAME}
        - name: DS1_PASSWORD
          valueFrom:
            secretKeyRef:
              name: db-secret
              key: password
      secrets:
        - db-secret
    EOF
    

    Jika perintah berhasil diselesaikan, Anda akan melihat wildflyserver.wildfly.org/javaee-cafe created. Jika Anda tidak melihat output ini, pecahkan masalah dan selesaikan masalah sebelum melanjutkan.

  3. Jalankan oc get pod -w | grep 1/1 untuk memantau apakah semua pod aplikasi berjalan. Saat Anda melihat output yang mirip dengan contoh berikut, tekan Ctrl + C untuk menghentikan pemantauan:

    javaee-cafe-2         1/1     Running             0          31s
    javaee-cafe-1         1/1     Running             0          30s
    javaee-cafe-0         1/1     Running             0          30s
    

    Mungkin perlu waktu beberapa menit untuk mencapai status yang tepat. Anda bahkan mungkin melihat STATUS nilai kolom termasuk ErrImagePull dan ImagePullBackOff sebelumnya Running ditampilkan.

  4. Jalankan perintah berikut untuk mengembalikan URL aplikasi. Anda dapat menggunakan URL ini untuk mengakses aplikasi sampel yang disebarkan. Salin output ke clipboard.

    echo http://$(oc get route ${APPLICATION_NAME}-route -o=jsonpath='{.spec.host}')/javaee-cafe
    
  5. Tempelkan output ke browser web yang terhubung ke Internet, lalu tekan Enter. Anda akan melihat UI aplikasi Java EE Cafe yang mirip dengan cuplikan layar berikut:

    Cuplikan layar antarmuka pengguna aplikasi sampel Java EE Cafe.

  6. Tambahkan dan hapus beberapa baris untuk memverifikasi bahwa konektivitas database berfungsi dengan benar.

Membersihkan sumber daya

Jika Anda tidak akan terus menggunakan kluster OpenShift, navigasikan kembali ke grup sumber daya kerja Anda. Di bagian atas halaman, di bawah teks Grup sumber daya, pilih grup sumber daya. Lalu, pilih Hapus grup sumber daya.

Langkah selanjutnya

Untuk informasi selengkapnya tentang menyebarkan JBoss EAP di Azure, lihat Red Hat JBoss EAP di Azure.