Operasi dan pemecahan masalah
Pantau, pelihara, dan atasi masalah deployment Model Gateway, termasuk pembaruan konfigurasi model, rotasi kredensial, pemantauan kesehatan, pengumpulan log, serta penyelesaian masalah konektivitas dan autentikasi umum.
Setelah deployment, manajemen operasional berkelanjutan dari Model Gateway membantu memastikan akses yang andal ke model AI yang dikonfigurasi dan meminimalkan gangguan layanan. Administrator dapat meninjau konfigurasi model aktif, memperbarui kredensial penyedia, merotasi secret, memantau kesehatan gateway, dan mengumpulkan informasi diagnostik saat terjadi masalah.
Melihat model yang dikonfigurasi
Ada dua tingkat dalam melihat model — apa yang ada dalam konfigurasi dan apa yang sebenarnya telah dimuat oleh bob-inference saat runtime.
- Tingkat konfigurasi — ambil konfigurasi model gateway saat ini dari ConfigMap inferensi:
oc get cm bob-inference-config -n <bob-namespace> -o yaml | yq '.data."config.yaml"' - Tingkat runtime — apa yang telah didaftarkan oleh
bob-inferencedan secara aktif dirutekan: lakukan kueri endpoint/v1/modelssecara langsung (lihat Validasi konektivitas model).
Endpoint /v1/models runtime hanya mencantumkan model dengan exposed: true. File konfigurasi adalah satu-satunya cara untuk melihat kumpulan lengkap model yang dikonfigurasi.
Memperbarui kredensial penyedia
Kredensial dipasang sebagai environment variable dari bob.modelGateway.secrets. Memperbaruinya adalah operasi dua langkah — perbarui nilai secret, lalu restart Inference Service untuk memuat pemasangan baru.
Perbarui secret
Edit CR Bob dan terapkan nilai baru:
oc edit bob <instance-name> -n <bob-namespace>
# Perbarui nilai di bawah bob.modelGateway.secretsRestart Inference Service
Restart Inference Service agar secret baru dipasang:
oc rollout restart deploy/inference-service -n <bob-namespace>
oc rollout status deploy/inference-service -n <bob-namespace>Pod Inference Service harus di-restart setelah setiap pembaruan secret. Perubahan konfigurasi model (menambah atau menghapus model, mengubah base_url) dan perubahan secret dapat digabungkan ke dalam satu pembaruan CR yang diikuti oleh satu kali restart.
Merotasi secret
Rotasi secret mengikuti pola yang sama dengan pembaruan kredensial, dengan kehati-hatian ekstra pada penentuan waktu untuk menghindari downtime.
Urutan rotasi zero-downtime yang direkomendasikan:
- Perbarui
bob.modelGateway.secretsdengan nilai kredensial baru. - Restart Inference Service:
oc rollout restart deploy/inference-service -n <bob-namespace>. - Konfirmasikan kredensial baru berfungsi menggunakan uji inferensi dari Verifikasi pasca-instalasi.
- Cabut kredensial lama di sisi penyedia hanya setelah pod dipastikan sehat.
Catatan khusus penyedia:
openai_compatible/ API keys — kunci baru langsung berlaku saat restart. Aman untuk mencabut kunci lama setelah pod sehat.bedrock— pastikan access key IAM baru aktif di AWS sebelum melakukan restart. Propagasi IAM dapat memakan waktu beberapa detik.vertex— buat dan encode service account key baru ke base64, perbarui secret, restart dan verifikasi, lalu hapus kunci lama di GCP.ca_cert_pem— untuk perpanjangan sertifikat, verifikasi bahwa sertifikat baru belum kedaluwarsa sebelum menerapkannya. Lihat Validasi sertifikat TLS.
Memantau kesehatan gateway
Jumlah restart pod — jumlah restart yang meningkat merupakan sinyal awal adanya kegagalan startup yang berulang (pemasangan secret yang buruk, error parsing konfigurasi):
oc get pods -n <bob-namespace> -l app=bob-inference \
-o custom-columns='NAME:.metadata.name,RESTARTS:.status.containerStatuses[0].restartCount'Probe liveness dan readiness — periksa konfigurasi dan status probe saat ini:
oc describe deploy/bob-inference -n <bob-namespace> | grep -A 10 "Liveness\|Readiness"Pemeriksaan kesehatan berkala — endpoint /v1/models berfungsi sebagai pemeriksaan keaktifan (liveness check) sederhana. Jika mengembalikan daftar model yang valid, gateway aktif. Ini dapat di-polling dari alat pemantauan atau cron job di dalam cluster.
Mengumpulkan log dan diagnostik
Log untuk jendela waktu tertentu (paling berguna saat menyelidiki insiden yang dilaporkan):
oc logs -n <bob-namespace> deploy/bob-inference \
--since-time="2025-01-01T12:00:00Z" > bob-inference.logLog dari instance pod sebelumnya (jika pod telah di-restart dan log kegagalan hilang):
oc logs -n <bob-namespace> deploy/bob-inference --previousBundel diagnostik lengkap untuk tim support:
oc describe pod -n <bob-namespace> -l app=bob-inference >> diagnostics.txt
oc get events -n <bob-namespace> --sort-by='.lastTimestamp' >> diagnostics.txt
oc logs -n <bob-namespace> deploy/bob-inference --since=1h >> diagnostics.txtBundel diagnostik berisi nama environment variable pod tetapi bukan nilai secret (secret dipasang, tidak dicetak ke log). Tinjau log untuk setiap keluaran kredensial yang tidak disengaja sebelum mengirimkannya ke tim support.
Memecahkan masalah konektivitas dan autentikasi
Model tidak muncul di /v1/models
- Periksa apakah
exposed: falsediatur — jika ya, ini adalah perilaku yang diharapkan. - Periksa log startup untuk mencari error pendaftaran untuk
model_nametersebut. - Verifikasi blok penyedia — pastikan
base_url, IDmodel, dan kredensial sudah benar.
401 Unauthorized pada permintaan inferensi
- Konfirmasikan nilai secret dalam
bob.modelGateway.secretssudah benar dan masih berlaku. - Konfirmasikan referensi
env.<VAR>dalam konfigurasi model sama persis dengan nama kunci secret (case-sensitive). - Restart Inference Service dan coba lagi — secret mungkin telah diperbarui tanpa restart.
- Uji kredensial di luar gateway. Lihat Validasi autentikasi.
502 Bad Gateway atau connection refused
- Konfirmasikan endpoint model aktif dan dapat dijangkau dari cluster. Lihat Pengujian konektivitas.
- Periksa masalah
base_url— trailing slash, skema yang salah (httpvshttps), port yang salah. - Periksa perubahan network policy yang mungkin memblokir lalu lintas keluar sejak instalasi.
certificate signed by unknown authority
- Konfirmasikan
ca_cert_pemdiatur dan merujuk ke env var yang valid. - Konfirmasikan env var ada di
bob.modelGateway.secrets. - Verifikasi sertifikat belum kedaluwarsa:
openssl x509 -noout -dates. - Konfirmasikan sertifikat mencakup hostname endpoint dengan memeriksa Subject Alternative Names.
Pod Inference Service dalam CrashLoopBackOff
- Periksa log dari instance sebelumnya:
oc logs --previous. - Cari error parsing konfigurasi — YAML yang salah bentuk di konfigurasi model gateway.
- Cari kegagalan pemasangan secret di bagian Events:
oc describe pod. - Konfirmasikan YAML konfigurasi model gateway valid sebelum menerapkan ulang.