コンテンツ・アウェア・ストレージ (CAS) サービスにおける問題と既知の制限事項のトラブルシューティング
CAS サービスにおける一般的なトラブルシューティングの手順と制限。
IBM Fusionでは CASクエリアクセスコントロールはサポートされていません。 2.10.1
- 問題提起
- IBM Fusion のバージョン およびそれ以前のバージョンは、 2.10.1 CAS v1.0.4 で導入された CAS ACL 機能をサポートしていません。
- 原因
/api/v1/querysearchエンドポイントでは、 CAS ACL の代わりに IBM Fusion のネイティブ認証メソッドが引き続き使用されます。
- 解決策
/querysearchエンドポイントの IBM Fusion 認証を一時的にバイパスするには、以下の手順を実行します:fusionネームスペースで、isf-proxy-XXXXポッドのターミナルを開く:cd /etc/nginx vi nginx.conf/querysearchブロックを探し、以下の行を削除する:auth_request /auth;更新されたコードは次のようになるはずだ:
location /api/v1/querysearch { set $upstreamem 'https://query-search.ibm-cas.svc.cluster.local:8000'; proxy_pass $upstreamem$request_uri; }- 保存してエディタを終了します:
wq! - NGINXをリロードします:
nginx -s reload - 2つ目の
isf-proxyポッドも同様にする。注: この回避策は、isf-proxyポッドを更新するたびに必要です。
query_service configmapとデプロイメントでのエラー
- 問題提起
- CAS を v1.0.3 から v1.0.4 にアップグレードする場合、アクセス制御リスト (ACL)処理のエラーを防ぐために、 ConfigMap といくつかのデプロ イメント設定を追加する必要があります。
- 原因
- 外部のIDP(Identity Provider)トークンが提供されている場合に、クエリサービスAPIが機能しない。
- 解決策
- 以下を作成する。 ConfigMap:
kind: ConfigMap apiVersion: v1 metadata: name: query-search-config namespace: ibm-cas data: use_self_cert: 'false' - クエリ検索の配置を更新する:
readOnlyRootFilesystem属性を'true'に設定する。- クエリサービスデプロイの
envセクションに、次のエントリを追加します:- name: ENABLE_FILE_LEVEL_SECURITY value: false volumes、以下のセクションを追加する:- name: query-search-config configMap: name: query-search-config defaultMode: 420 - name: ibm-cas-cabundle configMap: name: openshift-service-ca.crt items: - key: service-ca.crt path: service-ca.crtvolumeMounts、以下のセクションを追加する:- name: "query-search-config" readOnly: true mountPath: "/etc/config/cm/" - name: ibm-cas-cabundle readOnly: true mountPath: /etc/config/cabundle
- 以下を作成する。 ConfigMap:
nv-ingest pod は imagepullback エラー中です
- 問題提起
docker.ioへのリクエストが多すぎるため、nv-ingestポッドがimagepullbackエラー状態になっています。
- 原因と解決策
- 原因がある :
docker.io。解決方法
docker.io。 - 原因がある :
nv-ingestポッドが画像を正しく引き出せない。解決チェック NVIDIA ガイドを参照してください。
- 原因がある :
CAS インジェストに失敗
- 問題提起
- CASの取り込みに失敗し、
cast-runtimeポッドのログに以下のエラーが表示されました:2025-03-26 22:46:36,725 - ERROR - 取得中にエラーが発生しました。 エラー: HTTPSConnectionPool(host='nv-ingest. nv-ingest.svc.cluster.local ', port=7670 ): url で最大再試行回数を超えました: /v1/fetch_job/ (SSLError(SSLError(1,'[SSL]レコード層の失敗( _ssl.c:1006 )')が原因))
- 原因
httpsNVIDIA NIM サービスが利用できないことを意味する。
- 解決策
cast-runtime。- value パラメーターで、
httpsをhttpに変更する:- name: NVMM_NIM_SERVICE value: https://nv-ingest.nv-ingest.svc.cluster.localへ- name: NVMM_NIM_SERVICE value: http://nv-ingest.nv-ingest.svc.cluster.local
semantic_searchのエラー
- 問題提起
- クエリ検索ポッドでは、
semantic_search中に以下のエラーが発生することがあります:ERROR: querysearch/semantic_search failed 接続エラー。 トレースバック (最近の呼び出しの最後): ファイル " /opt/app-root/lib64/python3.11/site-packages/httpx/_transports/default.py", 行 101, in map_httpcore_exceptions 歩留まり ファイル " /opt/app-root/lib64/python3.11/site-packages/httpx/_transports/default.py", 行 250, in handle_request resp = self._pool.handle_request (req) ファイル " /opt/app-root/lib64/python3.11/site-packages/httpcore/_backends/sync.py", 行 154, in start_tls map_exceptions(exc_map) を使用する: ファイル " /usr/lib64/python3.11/contextlib.py ", 行 158, in __exit__ self.gen.throw (typ、値、トレースバック) ファイル " /opt/app-root/lib64/python3.11/site-packages/httpcore/_exceptions.py", 行 14, in map_exceptions raise to_exc(exc) from exc
- 原因
- サービスのTLSバージョンが利用できないことを意味する。 NVIDIA サービスが利用できないことを意味する。
- 解決策
- クエリーサーチの配備を縮小する。
- クエリーサーチのデプロイメントで、変数の値を変更する:
- name: NVMM_EMBED_SERVICE value: 'https://nv-ingest-embedqa.nv-ingest.svc.cluster.local'へ- name: NVMM_EMBED_SERVICE value: 'http://nv-ingest-embedqa.nv-ingest.svc.cluster.local' - Cas Install CR で NVMM Nemo Ranking サービスが有効になっている場合は、クエリサーチデプロイメントで以下の値を変更してください。 変数の値を変更する:
- name: NVMM_NEMO_RANKER_SERVICE value: 'https://nemo-ranker-text-reranking-nim.nv-ingest.svc.cluster.local'へ
- name: NVMM_NEMO_RANKER_SERVICE value: 'http://nemo-ranker-text-reranking-nim.nv-ingest.svc.cluster.local' - 配備を元の数に戻す。
データソースが "接続中 "エラーで動かない
- 問題提起
- データソースの作成は、さまざまな理由で "接続中 "状態になることがあります。 適切な診断を行うには、 CAS オペレータのログをチェックしてエラーメッセージを見つけます。
- 原因と解決策
- このエラーの原因として考えられるのは以下の通りである:
- 原因がある:
Scale CSI ユーザーには、Watcher を作成するのに十分な権限がありません。
sConn.CreateWatch4Fileset が返したエラー ===============> =====> [ EFSSG0012C パーミッションが拒否されました:あなたの役割です:[csiadmin, containeroperator], 必須 の役割を果たす:[admin、storageadmin、securityadmin]]。ソースのクラスタ化された監視を有効にできない castFS:root解決策:
Scale CSIユーザーを Scaleの Storage Administratorグループに追加する。
- 原因がある:
Kafka 認証 が欠落している。 ConfigMap
2025-03-28T18:21:10Z ERROR リコンシラー・エラー {"controller":"datasource", " ",, "namespace":"ibm-cas", "name":"mc-test", " ", "error":"panic: logging [recored]"のキーと値のペアとして渡された引数の数が奇数です。 "controllerGroup":cas.isf.ibm.com "controllerKind": "DataSource", "DataSource": {"name":"mc-test","namespace":"ibm-cas"} "reconcileID":9aeda80b-4706-408a-9c05-ffcb39cb877e解決策:
Kafka ブローカーに接続するための手動セットアップで説明したように、 Kafka 認証用の ConfigMap を作成する。
- 原因がある:
Datasource が作成した静的 PV へのアクセスを拒否する。 静的PVのアクセシビリティに関して機能的な問題が検出された場合、アクセス拒否エラーに関連している可能性がある。 検証するには、 DocumentProcessor によって生成されたポッドを使用してマウントパスにアクセスします。 ポッドは DocumentProcessor と同じ名前であることに注意。
(app-root) sh-5.1$ cd /gpfs/gpfs3/fileset_sample bash: cd:/app-root:パーミッションが拒否されました
解決策:
ステップ8で説明したように、ScaleのFilesetに既知のGIDを追加し、 CASの Datasourceにアノテーションを追加します。
- 原因がある:
既知の制限事項
- 各ドメインは、一意なデータソースの場所、つまり一意なスケールパスまたは一意な S3 の場所を使用しなければならない。 CASは現在、複数のドメイン間で同じデータソースの場所を共有することをサポートしていません。
- Azure Red Hat OpenShift ( ARO ) でのCASのサポートは、ポッドの最大スレッド数を変更する必要があるため、 Red Hat からライセンス要件が追加されます。 詳しくは、 Red Hat ナレッジベースをご覧ください。