Mulai cepat: Menyebarkan kluster JBoss EAP di Azure Virtual Machines (VM)
Artikel ini menunjukkan kepada Anda cara menyebarkan kluster JBoss Enterprise Application Platform (EAP) dengan cepat di Azure Virtual Machines (VM) menggunakan portal Azure.
Artikel ini menggunakan penawaran Marketplace Azure untuk Kluster JBoss EAP untuk mempercepat perjalanan Anda ke Azure VM. Penawaran ini secara otomatis menyediakan sejumlah sumber daya termasuk VM Azure Red Hat Enterprise Linux (RHEL), instans JBoss EAP pada setiap VM, Build Red Hat OpenJDK pada setiap VM, konsol manajemen JBoss EAP, dan secara opsional instans Azure App Gateway. Untuk melihat penawaran, kunjungi solusi Kluster JBoss EAP pada VM RHEL menggunakan portal Azure.
Jika Anda lebih suka panduan langkah demi langkah manual untuk menginstal Red Hat JBoss EAP Cluster di Azure VM yang tidak menggunakan otomatisasi yang diaktifkan oleh penawaran Marketplace Azure, lihat Tutorial: Menginstal Red Hat JBoss EAP di Azure Virtual Machines secara manual.
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
- Langganan Azure. Jika Anda tidak memiliki Langganan Azure, buat Akun gratis Azure sebelum memulai.
- Pastikan identitas Azure yang Anda gunakan untuk masuk memiliki peran Kontributor atau peran Pemilik dalam langganan saat ini. Untuk gambaran umum peran Azure, lihat Apa itu kontrol akses berbasis peran Azure (Azure RBAC)?
- Java Development Kit (JDK), versi 17. Dalam panduan ini, kami merekomendasikan Red Hat Build dari OpenJDK. Pastikan variabel lingkungan Anda
JAVA_HOME
diatur dengan benar di shell tempat Anda menjalankan perintah. - Git. Gunakan
git --version
untuk menguji apakahgit
berfungsi. Tutorial ini diuji dengan versi 2.34.1. - Maven. Gunakan
mvn -version
untuk menguji apakahmvn
berfungsi. Tutorial ini diuji dengan versi 3.8.6.
Catatan
Penawaran Marketplace Azure yang akan Anda gunakan dalam artikel ini mencakup dukungan untuk Red Hat Satellite untuk manajemen lisensi. Menggunakan Red Hat Satellite berada di luar cakupan mulai cepat ini. Untuk gambaran umum tentang Red Hat Satellite, lihat Red Hat Satellite. Untuk mempelajari selengkapnya tentang memindahkan langganan Red Hat JBoss EAP dan Red Hat Enterprise Linux Anda ke Azure, lihat Program Red Hat Cloud Access.
Menyiapkan server fleksibel Azure Database for PostgreSQL
Langkah-langkah di bagian ini mengarahkan Anda untuk menyebarkan server fleksibel Azure Database for PostgreSQL, yang Anda gunakan untuk mengonfigurasi koneksi database saat menyiapkan kluster JBoss EAP di bagian berikutnya.
Pertama, gunakan perintah berikut untuk menyiapkan beberapa variabel lingkungan.
export RG_NAME=<db-resource-group-name>
export SERVER_NAME=<database-server-name>
export ADMIN_PASSWORD=<postgresql-admin-password>
Ganti tempat penampung dengan nilai berikut, yang digunakan di seluruh artikel:
<db-resource-group-name>
: Nama grup sumber daya yang akan digunakan untuk server fleksibel PostgreSQL - misalnya,ejb040323postgresrg
.<database-server-name>
: Nama server PostgreSQL Anda, yang harus unik di seluruh Azure - misalnya,ejb040323postgresqlserver
.<postgresql-admin-password>
: Kata sandi server PostgreSQL Anda. Kata sandi tersebut harus minimal delapan karakter dan paling banyak 128 karakter. Karakter harus berasal dari tiga kategori berikut: Huruf besar bahasa Inggris, huruf kecil bahasa Inggris, angka (0-9), dan karakter non-nufanumerik (!, $, #, %, dan sebagainya).
Selanjutnya, gunakan langkah-langkah berikut untuk membuat server fleksibel Azure Database for PostgreSQL:
Gunakan perintah berikut untuk membuat server fleksibel Azure Database for PostgreSQL:
az postgres flexible-server create \ --resource-group ${RG_NAME} \ --name ${SERVER_NAME} \ --database-name testdb \ --public-access 0.0.0.0 \ --admin-user testuser \ --admin-password ${ADMIN_PASSWORD} \ --yes
Gunakan perintah berikut untuk mendapatkan host server PostgreSQL:
export DB_HOST=$(az postgres flexible-server show \ --resource-group ${RG_NAME} \ --name ${SERVER_NAME} \ --query "fullyQualifiedDomainName" \ --output tsv)
Gunakan perintah berikut untuk mendapatkan URL koneksi Java Database Connectivity (JDBC) dari server PostgreSQL:
echo jdbc:postgresql://${DB_HOST}:5432/testdb
Catat output, yang Anda gunakan sebagai sumber data string koneksi server PostgreSQL nanti di artikel ini.
Menyebarkan kluster JBoss EAP di Azure VM
Langkah-langkah di bagian ini mengarahkan Anda untuk menyebarkan kluster JBoss EAP di Azure VM.
Gunakan langkah-langkah berikut untuk menemukan Kluster JBoss EAP pada penawaran Azure VM:
Masuk ke portal Azure dengan mengunjungi https://aka.ms/publicportal.
Di bilah pencarian di bagian atas portal Azure, masukkan JBoss EAP. Di hasil pencarian, di bagian Marketplace , pilih Kluster JBoss EAP pada VM.
Di menu drop-down, pastikan PAYG dipilih.
Atau, Anda juga dapat langsung masuk ke Kluster JBoss EAP pada penawaran Azure VM . Dalam hal ini, paket yang benar sudah dipilih untuk Anda.
Dalam kedua kasus, penawaran ini menyebarkan kluster JBoss EAP di Azure VM dengan menyediakan langganan Red Hat Anda pada waktu penyebaran. Penawaran ini menjalankan kluster di Red Hat Enterprise Linux menggunakan konfigurasi pembayaran prabayar untuk VM dasar.
Langkah-langkah berikut ini memperlihatkan kepada Anda cara mengisi panel Dasar yang diperlihatkan dalam cuplikan layar berikut ini.
- Pada halaman penawaran, pilih Buat.
- Pada panel Dasar , pastikan bahwa nilai yang diperlihatkan di bidang Langganan sama dengan yang memiliki peran yang tercantum di bagian prasyarat.
- Anda harus menyebarkan penawaran dalam grup sumber daya kosong. 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, ejb040323jbosseapcluster.
- Di bawah Detail instans, pilih wilayah untuk penyebaran.
- Biarkan ukuran VM default untuk Ukuran komputer virtual.
- Biarkan opsi default OpenJDK 17 untuk versi JDK.
- Biarkan nilai default jbossuser untuk Nama Pengguna.
- Biarkan opsi default Kata sandi untuk jenis Autentikasi.
- Berikan kata sandi untuk Kata Sandi. Gunakan nilai yang sama untuk Konfirmasi kata sandi.
- Gunakan 3 untuk Jumlah komputer virtual yang akan dibuat.
- Di bawah Konfigurasi Dasar Opsional, biarkan opsi default Ya untuk Terima default untuk konfigurasi opsional.
- Gulir ke bagian bawah panel Dasar dan perhatikan tautan bermanfaat untuk Masalah laporan, dapatkan bantuan, dan bagikan umpan balik.
- Pilih Berikutnya: Pengaturan JBoss EAP.
Langkah-langkah berikut menunjukkan cara mengisi panel Pengaturan JBoss EAP yang diperlihatkan dalam cuplikan layar berikut.
- Biarkan opsi default Domain terkelola untuk Menggunakan domain terkelola atau host mandiri untuk membentuk kluster.
- Biarkan nilai default jbossadmin untuk nama pengguna JBoss EAP Admin.
- Berikan kata sandi JBoss EAP untuk kata sandi JBoss EAP. Gunakan nilai yang sama untuk Konfirmasi kata sandi. Simpan selain nilai untuk digunakan nanti.
- Biarkan opsi default Tidak untuk Menyambungkan ke Server Satelit Red Hat yang ada?.
- Pilih Berikutnya: Azure Application Gateway.
Langkah-langkah berikut ini memperlihatkan kepada Anda cara mengisi panel Azure Application Gateway yang diperlihatkan dalam cuplikan layar berikut ini.
Pilih Ya untuk Menyambungkan ke Azure Application Gateway?.
Pilih Next: Networking.
Panel ini memungkinkan Anda menyesuaikan jaringan virtual dan subnet tempat kluster JBoss EAP disebarkan. Untuk informasi tentang jaringan virtual, lihat Membuat, mengubah, atau menghapus jaringan virtual. Terima default pada panel ini.
Pilih Berikutnya: Database.
Langkah-langkah berikut ini memperlihatkan kepada Anda cara mengisi panel Database yang diperlihatkan dalam cuplikan layar berikut, dan memulai penyebaran.
- Pilih Ya untuk Sambungkan ke database?.
- Pilih PostgreSQL untuk Pilih jenis database.
- Isi java:jboss/datasources/JavaEECafeDB untuk nama JNDI.
- Berikan URL koneksi JDBC dari server PostgreSQL, yang Anda simpan sebelumnya, untuk sumber data string koneksi (jdbc:postgresql://<host>:<port>/<database>).
- Isi testuser untuk nama pengguna Database.
- Berikan nilai untuk tempat penampung
<postgresql-admin-password>
, yang Anda tentukan sebelumnya, untuk Kata sandi database. Gunakan nilai yang sama untuk Konfirmasi kata sandi. - Pilih Tinjau + buat. Pastikan bahwa pesan Validasi Lulus berwarna hijau muncul di bagian atas. Jika pesan tidak muncul, perbaiki masalah validasi apa pun, lalu pilih Tinjau + buat lagi.
- Pilih Buat.
- 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. Setelah itu, Anda akan melihat teks Penyebaran Anda selesai ditampilkan di halaman penyebaran.
Memverifikasi fungsionalitas penyebaran
Gunakan langkah-langkah berikut untuk memverifikasi fungsionalitas penyebaran untuk kluster JBoss EAP di Azure VM dari konsol manajemen Red Hat JBoss Enterprise Application Platform :
Pada halaman penyebaran, pilih Output.
Pilih ikon salin di samping adminConsole.
Tempelkan URL ke browser web yang terhubung ke internet dan tekan Enter. Anda akan melihat layar masuk konsol manajemen Red Hat JBoss Enterprise Application Platform yang sudah dikenal, seperti yang ditunjukkan pada cuplikan layar berikut.
Isi jbossadmin untuk nama pengguna Admin JBoss EAP Berikan nilai untuk kata sandi JBoss EAP yang Anda tentukan sebelumnya untuk Kata Sandi, lalu pilih Masuk.
Anda akan melihat halaman selamat datang konsol manajemen Red Hat JBoss Enterprise Application Platform seperti yang ditunjukkan pada cuplikan layar berikut.
Pilih tab Runtime . Di panel navigasi, pilih Topologi. Anda akan melihat bahwa kluster berisi satu master pengontrol domain dan dua simpul pekerja, seperti yang ditunjukkan pada cuplikan layar berikut:
Pilih tab Konfigurasi. Di panel navigasi, pilih Profil>ha>Sumber Data & Sumber Data Driver.> Anda akan melihat bahwa datasource dataSource-postgresql tercantum, seperti yang ditunjukkan pada cuplikan layar berikut:
Biarkan konsol manajemen terbuka. Anda menggunakannya untuk menyebarkan aplikasi sampel ke kluster JBoss EAP di bagian berikutnya.
Menyebarkan aplikasi ke kluster JBoss EAP
Gunakan langkah-langkah berikut untuk menyebarkan aplikasi sampel Java EE Cafe ke kluster Red Hat JBoss EAP:
Gunakan langkah-langkah berikut untuk membuat sampel Java EE Cafe. Langkah-langkah ini mengasumsikan bahwa Anda memiliki lingkungan lokal dengan Git dan Maven yang diinstal:
Gunakan perintah berikut untuk mengkloning kode sumber dari GitHub dan lihat tag yang sesuai dengan versi artikel ini:
git clone https://github.com/Azure/rhel-jboss-templates.git --branch 20240904 --single-branch
Jika Anda melihat pesan kesalahan dengan teks
You are in 'detached HEAD' state
, Anda dapat mengabaikannya dengan aman.Gunakan perintah berikut untuk membangun kode sumber:
mvn clean install --file rhel-jboss-templates/eap-coffee-app/pom.xml
Perintah ini membuat file rhel-jboss-templates/eap-coffee-app/target/javaee-café.war. Anda akan mengunggah file ini di langkah berikutnya.
Gunakan langkah-langkah berikut di konsol manajemen Red Hat JBoss Enterprise Application Platform untuk mengunggah javaee-café.war ke Repositori Konten.
Dari tab Penyebaran konsol manajemen Red Hat JBoss EAP, pilih Repositori Konten di panel navigasi.
Pilih Tambahkan lalu pilih Unggah Konten.
Gunakan pemilih file browser untuk memilih file javaee-café.war .
Pilih Selanjutnya.
Terima default pada layar berikutnya lalu pilih Selesai.
Pilih Tampilkan konten.
Gunakan langkah-langkah berikut untuk menyebarkan aplikasi ke
main-server-group
:
Anda sekarang selesai menyebarkan aplikasi Java EE. Gunakan langkah-langkah berikut untuk mengakses aplikasi dan memvalidasi semua pengaturan:
Gunakan perintah berikut untuk mendapatkan alamat IP publik Azure Application Gateway. Ganti tempat penampung
<resource-group-name>
dengan nama grup sumber daya tempat kluster JBoss EAP disebarkan.az network public-ip show \ --resource-group <resource-group-name> \ --name gwip \ --query '[ipAddress]' \ --output tsv
Salin output, yang merupakan alamat IP publik azure Application Gateway yang disebarkan.
Buka browser web yang terhubung ke internet.
Navigasikan ke aplikasi dengan URL
http://<gateway-public-ip-address>/javaee-cafe
. Ganti tempat penampung<gateway-public-ip-address>
dengan alamat IP publik Azure Application Gateway yang Anda salin sebelumnya.Cobalah untuk menambahkan dan menghilangkan kopi.
Membersihkan sumber daya
Untuk menghindari biaya Azure, Anda harus membersihkan sumber daya yang tidak diperlukan. Ketika Anda tidak lagi memerlukan kluster JBoss EAP yang disebarkan di Azure VM, batalkan pendaftaran server JBoss EAP dan hapus sumber daya Azure.
Jalankan perintah berikut untuk membatalkan pendaftaran server JBoss EAP dan VM dari manajemen langganan Red Hat. Ganti tempat penampung <resource-group-name>
dengan nama grup sumber daya tempat kluster JBoss EAP disebarkan.
# Unregister domain controller
az vm run-command invoke \
--resource-group <resource-group-name> \
--name jbosseapVm-adminVM \
--command-id RunShellScript \
--scripts "sudo subscription-manager unregister"
# Unregister host controllers
az vm run-command invoke \
--resource-group <resource-group-name> \
--name jbosseapVm1 \
--command-id RunShellScript \
--scripts "sudo subscription-manager unregister"
az vm run-command invoke \
--resource-group <resource-group-name> \
--name jbosseapVm1 \
--command-id RunShellScript \
--scripts "sudo subscription-manager unregister"
Jalankan perintah berikut untuk menghapus dua grup sumber daya tempat kluster JBoss EAP dan server fleksibel Azure Database for PostgreSQL disebarkan. Ganti tempat penampung <resource-group-name>
dengan nama grup sumber daya tempat kluster JBoss EAP disebarkan. Pastikan variabel $RG_NAME
lingkungan diatur dengan nama grup sumber daya tempat server fleksibel PostgreSQL disebarkan.
az group delete --name <resource-group-name> --yes --no-wait
az group delete --name $RG_NAME --yes --no-wait
Langkah berikutnya
Pelajari selengkapnya tentang opsi Anda untuk menyebarkan JBoss EAP di Azure: