Anda dapat menyiapkan Agen Google Clouduntuk Compute Workloads di host bersama dengan Oracle Database untuk mengumpulkan metrik dan memantau workload Oracle Database.
Dokumen ini menunjukkan cara menginstal, mengonfigurasi, dan memverifikasi Agen untuk Compute Workloads di instance Compute Engine yang menjalankan workload Oracle Database.
Agen mengumpulkan berbagai metrik Oracle dengan membuat kueri tampilan performa Oracle Database (seperti V$DATABASE
, V$INSTANCE
, dan V$DATAGUARD_STATS
) dan tampilan kamus data (seperti DBA_DATA_FILES
dan DBA_FREE_SPACE
). Metrik ini kemudian dikirim ke Cloud Monitoring tempat metrik tersebut dapat divisualisasikan dan dianalisis. Lihat Metrik yang didukung.
Persyaratan sistem
Sistem Operasi | Versi Oracle | Edisi Oracle |
---|---|---|
|
|
|
Prasyarat
Sebelum menginstal Agen untuk Workload Komputasi guna memantau workload Oracle Database, pastikan prasyarat berikut terpenuhi:
Buat instance Compute Engine jika Anda belum memilikinya. Konfigurasi cakupan akses ke
cloud-platform
.Aktifkan konektivitas ke endpoint API, baik melalui akses jaringan publik maupun akses jaringan pribadi. Google Cloud
Jika Anda ingin mengaktifkan pengumpulan metrik, buat secret di Secret Manager untuk menyimpan sandi database bagi pengguna database yang akan dibuat nanti dalam panduan ini.
Untuk contoh dalam panduan ini, kita asumsikan bahwa nilainya adalah
wlmagent-password
.Berikan peran Identity and Access Management (IAM) ke akun layanan.
AgenGoogle Cloud's untuk Compute Workloads menggunakan akun layanan Identity and Access Management (IAM) yang dilampirkan ke VM untuk autentikasi dengan Google Cloud dan untuk izin mengakses resource Google Cloud . Gunakan akun layanan baru yang menyertakan peran IAM berikut:
- Compute Viewer (roles/compute.viewer)
- Monitoring Metric Writer (roles/monitoring.metricWriter)
Secret Manager Secret Accessor (roles/secretmanager.secretAccessor)
Untuk mengikuti prinsip hak istimewa terendah, sebaiknya Anda memberikan peran
Secret Manager Secret Accessor
di tingkat secret, bukan di tingkat project. Hal ini membatasi akses hanya ke secret tertentu yang dibutuhkan akun layanan.
Untuk mempelajari cara memberikan peran, lihat Mengelola akses ke akun layanan.
Aktifkan akses ke Google Cloud API.
Untuk mengaktifkan akses ke Google Cloud API, lihat Membuat VM dan melampirkan akun layanan.
Sebaiknya konfigurasi instance VM Anda untuk mengakses Google Cloud API dan mengelola kontrol akses menggunakan izin IAM yang ditetapkan ke akun layanan. Lihat Akun layanan yang dikelola pengguna dan Otorisasi.
Jika Anda menjalankan Oracle Database pada instance VM yang tidak memiliki alamat IP eksternal, aktifkan Akses Google Pribadi di subnet VM agar Agen untuk Compute Workloads dapat mengakses Google Cloud API dan layanan. Untuk mengaktifkan Akses Google Pribadi di subnet, lihat Mengonfigurasi Akses Google Pribadi.
Menginstal agen
Untuk menginstal Agen untuk Workload Komputasi, lakukan hal berikut:
Buat file konfigurasi repositori.
sudo tee /etc/yum.repos.d/google-cloud-workload-agent.repo << EOM [google-cloud-workload-agent] name=Google Cloud Workload Agent baseurl=https://packages.cloud.google.com/yum/repos/google-cloud-workload-agent-\$basearch enabled=1 gpgcheck=0 repo_gpgcheck=1 gpgkey=https://packages.cloud.google.com/yum/doc/yum-key.gpg https://packages.cloud.google.com/yum/doc/rpm-package-key.gpg EOM
Perbarui metadata pengelola paket.
sudo yum makecache
Instal paket rpm
google-cloud-workload-agent
.sudo yum install google-cloud-workload-agent
Setelah menginstal agen untuk Oracle, verifikasi penginstalan agen.
Memverifikasi penginstalan agen
Untuk memverifikasi bahwa agen sedang berjalan, pilih sistem operasi Anda, lalu ikuti langkah-langkah berikut:
- Gunakan SSH untuk terhubung ke instance VM Anda.
Jalankan perintah berikut:
systemctl status google-cloud-workload-agent
Jika agen berfungsi dengan baik, output akan berisi
active (running)
. Contoh:google-cloud-workload-agent.service - Google Cloud Workload Agent Loaded: loaded (/usr/lib/systemd/system/google-cloud-workload-agent.service; enabled; preset: disabled) Active: active (running) since Tue 2024-09-03 22:29:57 UTC; 3s ago Main PID: 274972 (google_cloud_wo) Tasks: 10 (limit: 100440) Memory: 51.2M (max: 1.0G limit: 1.0G available: 972.7M) CPU: 625ms CGroup: /system.slice/google-cloud-workload-agent.service └─274972 /usr/bin/google_cloud_workload_agent startdaemon Sep 03 22:29:57 my_gce_instance systemd[1]: Started Google Cloud Workload Agent.
Jika agen tidak berjalan, coba mulai ulang agen.
Mengonfigurasi agen
Setelah menginstal Agen untuk Compute Workloads, Anda dapat mengaktifkan fitur lain agen dengan memperbarui file konfigurasi agen. Untuk mengetahui daftar parameter yang dapat Anda konfigurasi untuk workload Oracle Database, lihat Parameter konfigurasi.
Setelah mengonfigurasi agen, Anda dapat memverifikasi penginstalan sekali lagi untuk memastikan agen dikonfigurasi dengan benar.
Parameter konfigurasi
Agen untuk Workload Komputasi mendukung parameter konfigurasi berikut untuk Oracle:
Parameter | Deskripsi | |
---|---|---|
log_level |
INFO .
|
|
log_to_cloud |
Untuk mengalihkan log agen ke Cloud Logging,
tentukan |
|
oracle_configuration.enabled |
Opsional. Menentukan apakah layanan Oracle aktif. Jika disetel ke
|
|
Parameter turunan berikut hanya berlaku jika
Anda menentukan oracle_configuration.enabled: true . |
||
oracle_configuration.oracle_discovery.enabled |
Opsional. Menentukan apakah Penemuan Oracle aktif. Nilai defaultnya adalah |
|
oracle_configuration.oracle_discovery.update_frequency |
Opsional. Tentukan interval sampel, dalam detik, yang menentukan frekuensi saat Agen untuk Compute Workloads menjalankan proses penemuan. Nilai default-nya adalah 3.600 detik (1 jam). Pastikan nilai diakhiri dengan "s" huruf kecil untuk menunjukkan detik. Contoh: |
|
oracle_configuration.oracle_metrics.enabled |
Opsional. Agar dapat mengaktifkan Agen untuk Workload Komputasi guna mengumpulkan metrik pemantauan Oracle, tentukan |
|
Parameter turunan berikut hanya berlaku jika Anda menentukan
|
||
oracle_configuration.oracle_metrics.collection_frequency |
Opsional. Tentukan interval sampel, dalam detik, yang menentukan frekuensi saat Agen untuk Compute Workloads mengkueri instance Database Oracle Anda untuk mengumpulkan metrik pemantauan Oracle. Nilai default-nya adalah 60 detik. Pastikan nilai diakhiri dengan "s" huruf kecil untuk menunjukkan detik. Contoh: |
|
oracle_configuration.oracle_metrics.query_timeout |
Opsional. Tentukan waktu tunggu untuk setiap kueri yang diajukan ke instance Oracle Database. Nilai default-nya adalah 10 detik. Pastikan nilai diakhiri dengan "s" huruf kecil untuk menunjukkan detik. Contoh: |
|
oracle_configuration.oracle_metrics.connection_parameters.username |
Menentukan akun pengguna yang digunakan untuk membuat kueri instance Oracle Database. Pastikan pengguna ini memiliki izin yang diperlukan untuk membaca tampilan performa di Oracle Database Anda. |
|
oracle_configuration.oracle_metrics.connection_parameters.host |
Menentukan ID mesin lokal yang menghosting instance database Anda. |
|
oracle_configuration.oracle_metrics.connection_parameters.port |
Menentukan port tempat instance Oracle Database Anda menerima kueri. |
|
oracle_configuration.oracle_metrics.connection_parameters.service_name |
Menentukan nama layanan untuk instance Oracle Database yang ingin dipantau oleh agen. |
|
oracle_configuration.oracle_metrics.connection_parameters.secret.project_id |
Menentukan project ID Secret Manager untuk mengambil sandi bagi pengguna yang membuat kueri ke database. |
|
oracle_configuration.oracle_metrics.connection_parameters.secret.secret_name |
Menentukan nama secret di Secret Manager yang menyimpan sandi akun pengguna. |
Mengumpulkan dan melihat metrik Oracle
Anda dapat mengaktifkan pengumpulan metrik untuk workload Oracle Database. Lihat Metrik yang didukung.
Mengaktifkan pengumpulan metrik
Untuk mengaktifkan pengumpulan metrik Oracle menggunakan Agent for Compute Workloads, lakukan hal berikut:
Gunakan SSH untuk terhubung ke instance VM Anda.
Sebagai pengguna OS Oracle, jalankan alat
oraenv
untuk menetapkan variabel lingkungan. Kami mengasumsikan bahwa Anda telah menentukan penggunaoracle
danORACLE_SID
dalam file/etc/oratab
.sudo su - oracle export PATH=$PATH:/usr/local/bin . oraenv sqlplus / as sysdba
Sebagai pengguna
SYSDBA
atauSYSOPER
, di Oracle Database, buat pengguna untuk pemantauan dengan sandi yang cocok dengan secret yang Anda buat di Prasyarat.CREATE USER wlmagent IDENTIFIED BY password;
Sebagai pengguna
SYSDBA
atauSYSOPER
, berikan izin berikut kepada pengguna pemantauan untuk membuat kueri tampilan performa:SESSION
SELECT_CATALOG_ROLE
SYSDG
GRANT CREATE SESSION,SELECT_CATALOG_ROLE,SYSDG TO wlmagent;
Keluar dari
sqlplus
dan penggunaoracle
.Sebagai pengguna root, edit file konfigurasi agen menggunakan editor pilihan Anda.
sudo nano /etc/google-cloud-workload-agent/configuration.json
Di file konfigurasi, edit bagian
oracle_metrics
untuk melakukan pembaruan berikut:- Tetapkan parameter
enabled
ketrue
. - Tetapkan parameter
service_name
untuk menentukan nama layanan instance Oracle yang ingin Anda pantau oleh agen. - Tentukan nama pengguna Oracle agar agen dapat terhubung ke database Anda.
- Tetapkan parameter
host
danport
agar agen terhubung ke database Anda. - Tetapkan parameter
secret
agar agen mengambil sandi untuk nama pengguna:project_id
: ID project yang berisi data Secret Manager.secret_name
: Nama secret di Secret Manager.
Berikut adalah contoh file konfigurasi:
{ "log_level": "INFO", "common_discovery": {"collection_frequency": "3600s" }, "oracle_configuration": { "enabled": true, "oracle_metrics": { "enabled": true, "collection_frequency": "30s", "connection_parameters": [ { "host": "localhost", "port": 1521, "service_name": "orcl", "username": "wlmagent", "secret": { "project_id": "my-project", "secret_name": "wlmagent_password" } } ] } } }
- Tetapkan parameter
Simpan file konfigurasi.
Mulai ulang agen agar setelan baru diterapkan.
Melihat metrik
Anda dapat melihat metrik yang dikumpulkan dan memantau performa serta status Oracle menggunakan Metrics Explorer atau dengan mengimpor dasbor kustom.
Melihat Metrik di Metrics Explorer
Untuk melihat metrik Oracle di Metrics Explorer, lakukan hal berikut:
- Di konsol Google Cloud , buka Monitoring.
- Klik Metrics Explorer.
- Di bagian Temukan jenis resource dan metrik, lakukan hal berikut:
- Untuk Jenis resource, pilih Instance VM.
- Untuk Metric, pilih metrik Oracle yang ingin Anda lihat.
Anda dapat melihat data real-time dan historis untuk metrik Oracle yang dipilih, menggunakan filter dan agregasi sesuai kebutuhan.
Mengimpor Dasbor Kustom
Untuk melihat metrik Oracle yang dikumpulkan oleh agen, Anda dapat membuat dasbor Cloud Monitoring kustom dengan mengikuti petunjuk di Membuat dan mengelola dasbor kustom.
Kami menyediakan contoh dasbor oracle-status-overview.json
dan petunjuk
cara mengimpornya. Dasbor oracle-status-overview.json
menampilkan diagram metrik Oracle berikut:
- Uraian waktu database
- Penggunaan memori database
- Sesi Aktif Rata-Rata menurut Kelas Tunggu
- I/O Disk
- Pemakaian CPU
- Traffic Jaringan
Untuk mengimpor dasbor oracle-status-overview.json
, lakukan tindakan berikut:
Pastikan gcloud CLI sudah diinstal dan diupdate. Untuk mengetahui petunjuknya, lihat Menginstal gcloud CLI.
Dari repositori GitHub Agent for Compute Workloads, download dasbor
oracle-status-overview.json
:$ curl -H "Accept: application/vnd.github.v3.raw" -o oracle-status-overview.json https://api.github.com/repos/GoogleCloudPlatform/workloadagent/contents/observability/dashboards/oracle-status-overview.json
Jalankan perintah berikut untuk mengimpor dasbor:
gcloud alpha monitoring dashboards create --config-from-file=oracle-status-overview.json
Setelah perintah dijalankan, dasbor kustom akan dibuat di Cloud Monitoring. Untuk mempelajari cara melihat dasbor, lihat Menemukan dan melihat dasbor.
Metrik yang didukung
Semua metrik Oracle yang dikumpulkan oleh Agen untuk Workload Compute tersedia di jalur workload.googleapis.com/oracle
.
Berikut adalah daftar metrik Oracle yang didukung dan jalur Cloud Monitoring yang sesuai:
-
Memori Proses (PGA) yang digunakan, dalam byte.
process/pga_memory/total_used_size
Memori proses (PGA) yang dialokasikan, dalam byte
process/pga_memory/total_allocated_size
-
Ukuran item memori bersama (SGA), dalam byte
process/sga_memory/size
-
Jumlah total penantian untuk kelas tunggu terdaftar
sys_wait/count
Total waktu yang dihabiskan dalam kelas tunggu ini, dalam detik
sys_wait/time
Total penantian di latar depan dalam kelas penantian ini
sys_wait/foreground/count
Total waktu tunggu di latar depan untuk kelas tunggu ini, dalam detik
sys_wait/foreground/time
-
Waktu berlalu yang dihabiskan untuk melakukan panggilan tingkat pengguna database, dalam detik
sys_time/db_time
Waktu CPU yang dihabiskan untuk panggilan tingkat pengguna database, dalam detik
sys_time/db_cpu
Jumlah waktu yang berlalu saat pernyataan SQL dijalankan
sys_time/sql_execute_elapsed_time
Jumlah waktu berlalu yang dihabiskan untuk mengurai pernyataan SQL
sys_time/parse_time_elapsed
Jumlah waktu berlalu yang dihabiskan untuk menjalankan interpreter PL/SQL
sys_time/pl_sql_execution_elapsed_time
Waktu berlalu yang digunakan oleh proses latar belakang database, dalam detik
sys_time/background_elapsed_time
-
Jumlah total operasi baca (kecil + besar)
iostat/read_ops_count
Jumlah total operasi tulis (kecil + besar)
iostat/write_ops_count
Total jumlah byte yang dibaca
iostat/read_bytes_count
Jumlah total byte yang ditulis
iostat/write_bytes_count
Latensi rata-rata per operasi I/O
iostat/average_latency_seconds
-
Ukuran file data yang dialokasikan, dalam byte
data_files/total_bytes
Ruang file data yang digunakan, dalam byte
data_files/bytes_used
Ruang kosong file data, dalam byte
data_files/available_bytes
Batas ekstensi otomatis file data, dalam byte
data_files/max_bytes
Persentase file data yang digunakan
data_files/percent_used
-
Waktu operasional instance, dalam detik
instance/uptime
Status instance
instance/status
Metrik ini dapat memiliki nilai berikut:
UNKNOWN
0
STARTED
1
MOUNTED
2
OPEN
3
OPEN MIGRATE
4
Mode terbuka
instance/db_open_mode
Metrik ini dapat memiliki nilai berikut:
UNKNOWN
0
MOUNTED
1
READ WRITE
2
READ ONLY
3
READ ONLY WITH APPLY
4
-
Penundaan penerapan pengulangan, dalam detik
dataguard/apply_lag
Penundaan transportasi pengulangan, dalam detik
dataguard/transport_lag
Mengelola agen
Memulai ulang agen
Jika Agen untuk Compute Workloads berhenti berfungsi atau Anda memperbarui konfigurasinya, mulai ulang agen.
- Gunakan SSH untuk terhubung ke instance VM.
Jalankan perintah berikut:
sudo systemctl restart google-cloud-workload-agent
Memeriksa versi agen
Untuk memeriksa versi agen Anda, selesaikan langkah-langkah berikut:
- Gunakan SSH untuk terhubung ke instance VM.
Jalankan perintah berikut:
yum info google-cloud-workload-agent
Memeriksa update
- Gunakan SSH untuk terhubung ke instance VM.
Jalankan perintah berikut:
sudo yum check-update google-cloud-workload-agent
Memperbarui agen
Untuk memastikan Anda memiliki agen versi terbaru, periksa update secara berkala dan update agen:
- Gunakan SSH untuk terhubung ke instance VM.
Jalankan perintah berikut:
sudo yum --nogpgcheck update google-cloud-workload-agent
Melihat log agen
Log Agent for Compute Workloads tersedia di
/var/log/google-cloud-workload-agent.log
.
Keberagaman log dikontrol oleh parameter log_level
. Menyetel tingkat log DEBUG
mencakup informasi tambahan untuk memecahkan masalah tertentu, tetapi menghasilkan
log yang jauh lebih besar.
Secara default, log untuk Agen untuk Compute Workloads dialihkan dari instance VM Anda ke Cloud Logging.
Untuk melihat log agen di Logging, ikuti langkah-langkah berikut:
Di konsol Google Cloud , buka halaman Logs Explorer.
Buka panel Query.
Dari menu drop-down Resources, pilih Global, lalu klik Apply.
Di editor kueri, masukkan
google-cloud-workload-agent
.Klik Run query.
Anda dapat melihat log yang dihasilkan oleh agen yang berjalan di semua instance VM Anda. Anda dapat memfilter log untuk instance tertentu.
Mengonfigurasi log agen di Cloud Logging
Untuk menonaktifkan pengalihan default log agen ke Cloud Logging, ikuti langkah-langkah berikut:
Gunakan SSH untuk terhubung ke instance VM Anda.
Buka file konfigurasi agen:
/etc/google-cloud-workload-agent/configuration.json
Untuk properti
log_to_cloud
, perbarui nilai menjadifalse
.Simpan file konfigurasi.
Mulai ulang agen agar perubahan ini diterapkan.
Pemecahan masalah
Bagian berikut memberikan informasi tentang masalah umum terkait penggunaan agen untuk workload Oracle Database, penyebab, dan penyelesaiannya.
Izin IAM tidak memadai
Masalah: Log Agen untuk Compute Workloads menampilkan error izin IAM yang tidak memadai.
googleapi: Error 403: The client is not authorized to make this request.
Penyebab: Akun layanan yang digunakan oleh agen tidak memiliki izin IAM yang diperlukan untuk mengakses API Google Cloud atau sandi untuk pengguna Oracle di Secret Manager.
Penyelesaian: Untuk mengatasi masalah ini, pastikan akun layanan VM memiliki peran dan izin IAM yang disebutkan dalam Prasyarat.
Cakupan autentikasi tidak memadai
Masalah: Log Agen untuk Compute Workloads menampilkan cakupan autentikasi yang tidak memadai.
googleapi: Error 403: Request had insufficient authentication scopes.
Penyebab: Akun layanan yang digunakan oleh agen tidak memiliki cakupan akses yang diperlukan.
Penyelesaian: Untuk mengatasi masalah ini, konfigurasi
cakupan akses VM ke
cloud-platform
.
Metrik tidak muncul di Cloud Monitoring
Masalah: Metrik dari Agen untuk Beban Kerja Compute tidak terlihat di Cloud Monitoring.
Penyebab:
Berikut adalah kemungkinan penyebab masalah ini:
- Akun layanan yang digunakan oleh Agen untuk Compute Workloads tidak memiliki izin IAM yang diperlukan.
- Pengguna Oracle yang digunakan oleh agen tidak memiliki hak istimewa yang memadai untuk membuat kueri tampilan performa.
- Terjadi error dalam konfigurasi agen.
Penyelesaian:
Untuk mengatasi masalah izin yang tidak memadai untuk akun layanan, lakukan langkah-langkah berikut:
- Di konsol Google Cloud , buka halaman detail instance VM dan catat akun layanan yang digunakan oleh instance yang menjalankan agen.
- Buka halaman IAM & admin dan pastikan akun layanan memiliki semua peran dan izin yang diperlukan yang disebutkan dalam Prasyarat. Berikan salah satu peran yang diperlukan yang belum diberikan ke akun layanan.
Untuk mengatasi masalah izin yang tidak memadai bagi pengguna Oracle, lakukan hal berikut:
Pastikan pengguna Oracle memiliki izin yang diperlukan berikut untuk membuat kueri tampilan performa:
SESSION
SELECT_CATALOG_ROLE
SYSDG
Berikan izin yang belum diberikan dengan menjalankan perintah SQL berikut:
-- Grant the "wlmagent" user the required permissions GRANT CREATE SESSION,SELECT_CATALOG_ROLE,SYSDG TO USERNAME;
Untuk mengatasi masalah terkait kesalahan konfigurasi agen, lakukan hal berikut:
- Gunakan SSH untuk terhubung ke instance VM Anda.
Tinjau log agen untuk mengidentifikasi error atau masalah yang mencegah pengumpulan metrik. Anda dapat menemukan log di
/var/log/google-cloud-workload-agent.log
.Cari error izin, kesalahan konfigurasi, atau masalah konektivitas.
Mengatasi error
Mulai ulang agen dan periksa apakah pengumpulan metrik dimulai.
Gagal memuat file konfigurasi
Masalah: Jika file konfigurasi memiliki nilai yang tidak valid, Anda akan melihat error berikut.
"Failed to load configuration","pid":3524,"error":"proto: (line 19:42): unknown field "{field_name}"
Penyelesaian: Untuk mengatasi masalah ini, perbarui file konfigurasi menggunakan detail di Parameter konfigurasi.
Gagal melakukan inisialisasi pengumpulan data
Masalah: Setelah menginstal agen, jika file konfigurasi tidak diperbarui, Anda akan melihat error berikut:
"Failed to initialize guest collection","pid":2112,"error":"invalid value for "user_name" "secret_name"
Penyelesaian: Untuk mengatasi masalah ini, inisialisasi konfigurasi kredensial menggunakan Parameter konfigurasi.