İşlemler ve sorun giderme
Model yapılandırma güncellemeleri, kimlik bilgisi rotasyonu, sağlık izleme, log toplama ve yaygın bağlantı ile kimlik doğrulama sorunlarının çözümü dahil olmak üzere Model Gateway dağıtımlarını izleyin, bakımını yapın ve sorunlarını giderin.
Dağıtımdan sonra Model Gateway'in sürekli operasyonel yönetimi, yapılandırılan yapay zeka modellerine güvenilir erişim sağlamaya yardımcı olur ve hizmet kesintilerini en aza indirir. Yöneticiler etkin model yapılandırmalarını gözden geçirebilir, sağlayıcı kimlik bilgilerini güncelleyebilir, secret'ları döndürebilir (rotate), ağ geçidi sağlığını izleyebilir ve sorunlar ortaya çıktığında tanılama bilgileri toplayabilir.
Yapılandırılan modelleri görüntüleme
Modelleri görüntülemenin iki düzeyi vardır — yapılandırmada ne olduğu ve bob-inference bileşeninin çalışma zamanında gerçekte ne yüklediği.
- Yapılandırma düzeyi — çıkarım ConfigMap'inden mevcut model gateway yapılandırmasını alın:
oc get cm bob-inference-config -n <bob-namespace> -o yaml | yq '.data."config.yaml"' - Çalışma zamanı düzeyi —
bob-inferencebileşeninin neyi kaydettiği ve etkin olarak neye yönlendirdiği:oc exec -n <bob-namespace> deploy/bob-gateway -- \ curl -sk https://bob-inference.<bob-namespace>.svc.cluster.local:7330/v1/model/info | jq .
Çalışma zamanı /v1/model/info endpoint'i yalnızca exposed: true olan modelleri listeler. Yapılandırılan modellerin tamamını görmenin tek yolu yapılandırma dosyasıdır.
Sağlayıcı kimlik bilgilerini güncelleme
Kimlik bilgileri config.yaml içindeki bob.modelGateway.secrets bölümünde saklanır. Güncellenmiş kimlik bilgilerini kümeye aktarmak için bobctl update-model-config --update-secrets komutunu kullanın.
Kimlik bilgisini güncelleyin
config.yaml içindeki bob.modelGateway.secrets bölümünde kimlik bilgisini güncelleyin.
Güncellenmiş secret'ı kümeye gönderin
bobctl update-model-config --update-secretsibm-bob-operator, bob-inference dağıtımını yeni secret ile otomatik olarak mutabık kılar.
Aynı anda hem model yapılandırma dosyasını hem de kimlik bilgilerini güncelliyorsanız, ikisini tek bir komutla gönderebilirsiniz:
bobctl update-model-config --model-config ./my-model-config.yaml --update-secretsSecret rotasyonu (döndürme)
Secret rotasyonu, kesinti süresini önlemek için zamanlamaya ekstra özen gösterilerek bir kimlik bilgisi güncellemesiyle aynı modeli izler.
Önerilen kesintisiz (zero-downtime) rotasyon sırası:
config.yamliçindekibob.modelGateway.secretsalanını yeni kimlik bilgisi değeriyle güncelleyin.- Yeni secret'ı kümeye gönderin:
bobctl update-model-config --update-secrets. - Yeni secret'ı uygulamak için Inference Service'i yeniden başlatın:
oc rollout restart deploy/inference-service -n <bob-namespace> - Kurulum sonrası doğrulama bölümündeki çıkarım testini kullanarak yeni kimlik bilgisinin çalıştığını onaylayın.
- Eski kimlik bilgisini sağlayıcı tarafında yalnızca dağıtımın sağlıklı olduğu onaylandıktan sonra iptal edin.
Sağlayıcıya özgü notlar:
openai_compatible/ API anahtarları — yeni anahtar secret güncellendikten hemen sonra geçerli olur. Dağıtım sağlıklı olduğunda eski anahtarı iptal etmek güvenlidir.bedrock—update-model-configkomutunu çalıştırmadan önce yeni IAM erişim anahtarının AWS'de etkin olduğundan emin olun. IAM yayılımı birkaç saniye sürebilir.vertex— yeni servis hesabı anahtarını oluşturun ve base64 ile kodlayın,config.yamldosyasını güncelleyin,bobctl update-model-config --update-secretskomutunu çalıştırıp doğrulayın ve ardından GCP'de eski anahtarı silin.ca_cert_pem— sertifika yenileme için, uygulamadan önce yeni sertifikanın süresinin dolmadığını doğrulayın. Bkz. TLS sertifikası doğrulama.
Ağ geçidi sağlığını izleme
Pod yeniden başlatma sayısı — artan bir yeniden başlatma sayısı, yinelenen bir başlangıç arızasının (hatalı secret bağlantısı, yapılandırma ayrıştırma hatası) erken bir işaretidir:
oc get pods -n <bob-namespace> -l app=bob-inference \
-o custom-columns='NAME:.metadata.name,RESTARTS:.status.containerStatuses[0].restartCount'Liveness ve readiness probları — mevcut prob yapılandırmasını ve durumunu kontrol edin:
oc describe deploy/bob-inference -n <bob-namespace> | grep -A 10 "Liveness\|Readiness"Periyodik sağlık kontrolü — /v1/model/info endpoint'i basit bir liveness kontrolü görevi görür. Geçerli bir model listesi döndürürse ağ geçidi ayaktadır. Bu, bir izleme aracından veya küme içindeki bir cron job'dan sorgulanabilir.
Logları ve tanılamaları toplama
Belirli bir zaman aralığı için loglar (bildirilen bir olayı incelerken en kullanışlı olanıdır):
oc logs -n <bob-namespace> deploy/bob-inference \
--since-time="2025-01-01T12:00:00Z" > bob-inference.logÖnceki bir pod örneğinden loglar (pod yeniden başlatılmışsa ve arıza logları gitmişse):
oc logs -n <bob-namespace> deploy/bob-inference --previousDestek için tam tanılama paketi:
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.txtTanılama paketi pod ortam değişkeni adlarını içerir ancak secret değerlerini içermez (secret'lar bağlanır, loglara yazdırılmaz). Desteğe göndermeden önce kazara kimlik bilgisi çıktısı olup olmadığını görmek için logları inceleyin.
Bağlantı ve kimlik doğrulama sorunlarını giderme
Model /v1/model/info içinde görünmüyor
exposed: falseolarak ayarlanıp ayarlanmadığını kontrol edin — öyleyse bu beklenen bir davranıştır.- Bu
model_nameiçin başlangıç loglarında bir kayıt hatası olup olmadığını kontrol edin. - Sağlayıcı bloğunu doğrulayın — doğru
base_url,modelID'si ve kimlik bilgileri.
Çıkarım isteklerinde 401 Unauthorized
bob.modelGateway.secretsiçindeki secret değerinin doğru ve güncel olduğunu onaylayın.- Model yapılandırmasındaki
env.<VAR>referansının secret anahtar adıyla tam olarak eşleştiğini (büyük/küçük harfe duyarlı) onaylayın. - Inference Service'i yeniden başlatın ve tekrar deneyin — secret yeniden başlatılmadan güncellenmiş olabilir.
- Kimlik bilgisini bant dışı (out-of-band) test edin. Bkz. Kimlik doğrulama doğrulaması.
502 Bad Gateway veya connection refused
- Model endpoint'inin ayakta olduğunu ve kümeden erişilebilir olduğunu onaylayın. Bkz. Bağlantı testi.
base_urlsorunlarını kontrol edin — sondaki eğik çizgiler, yanlış şema (httpvehttps), yanlış port.- Kurulumdan bu yana giden trafiği engellemiş olabilecek ağ politikası değişikliklerini kontrol edin.
certificate signed by unknown authority
ca_cert_pemayarlandığını ve geçerli bir ortam değişkenine referans verdiğini onaylayın.- Ortam değişkeninin
bob.modelGateway.secretsiçinde bulunduğunu onaylayın. - Sertifikanın süresinin dolmadığını doğrulayın:
openssl x509 -noout -dates. - Subject Alternative Names (SAN) kontrol ederek sertifikanın endpoint'in hostname bilgisini kapsadığını onaylayın.
Inference Service pod'u CrashLoopBackOff durumunda
- Önceki örnekten logları kontrol edin:
oc logs --previous. - Yapılandırma ayrıştırma hatalarını arayın — model gateway yapılandırmasında hatalı biçimlendirilmiş YAML.
- Events bölümünde eksik secret bağlantılarını arayın:
oc describe pod. - Yeniden uygulamadan önce model gateway yapılandırma YAML'ının geçerli olduğunu onaylayın.