CAS ( Content-Aware Storage ) 서비스의 문제 해결 및 알려진 제한 사항
CAS 서비스의 일반적인 문제 해결 단계 및 제한 사항입니다.
CAS 쿼리 액세스 제어가 IBM Fusion에서 지원되지 않음 2.10.1
- 문제 설명
- IBM 퓨전 버전 2.10.1 및 이전 버전은 CAS v1.0.4 에서 도입된 CAS ACL 기능을 지원하지 않습니다.
- 원인
/api/v1/querysearch엔드포인트는 CAS ACL 대신 IBM Fusion의 기본 인증 방법을 계속 사용합니다.
- 분석
/querysearch엔드포인트에 대한 IBM 퓨전 인증을 일시적으로 우회하려면 다음 단계를 수행하세요: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 - 두 번째
isf-proxy포드에 대해 반복합니다.참고: 이 해결 방법은isf-proxy파드를 새로 고칠 때마다 필요합니다.
query_service 구성 맵 및 배포에 오류가 발생했습니다
- 문제 설명
- CAS를 v1.0.3 에서 v1.0.4 으로 업그레이드하는 경우 ACL(액세스 제어 목록) 처리 오류를 방지하기 위해 ConfigMap 및 일부 배포 구성을 추가해야 합니다.
- 원인
- 외부 IDP(신원 공급자) 토큰이 제공된 경우 쿼리 서비스 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 포드에 imagepullback 오류가 발생했습니다
- 문제 설명
nv-ingest파드가docker.io에 대한 요청이 너무 많아imagepullback오류 상태입니다.
- 원인 및 해결 방법
- 원인 :
docker.io에 대한 요청이 너무 많습니다.해상도 :
docker.io으로 인증하세요. - 원인 :
nv-ingest파드가 이미지를 올바르게 가져올 수 없습니다.해상도 : 확인 NVIDIA 가이드를 확인하여 문제를 해결하세요.
- 원인 :
CAS 수집 실패
- 문제 설명
cast-runtime파드의 로그에 다음 오류와 함께 CAS 수집이 실패합니다:2025-03-26 22:46:36,725 - 오류 - 가져오기 중 오류, 재시도 중... 오류: 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:오류: 쿼리 검색/시맨틱 검색 실패 연결 오류가 발생했습니다. 트레이스백(가장 최근 통화): 파일 " /opt/app-root/lib64/python3.11/site-packages/httpx/_transports/default.py", 101줄, map_httpcore_exceptions 내 수익을 내다 파일 " /opt/app-root/lib64/python3.11/site-packages/httpx/_transports/default.py", 250줄, 핸들_요청 내 resp = self._pool.handle_request (요청) 파일 " /opt/app-root/lib64/python3.11/site-packages/httpcore/_backends/sync.py", 154줄, start_tls 내 맵_예외(exc_map)를 사용합니다: 파일 " /usr/lib64/python3.11/contextlib.py ", 158줄, __exit__에서 self.gen.throw (유형, 값, 트레이스백) 파일 " /opt/app-root/lib64/python3.11/site-packages/httpcore/_exceptions.py", 14번째 줄, 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 설치 CR에서 NVMM Nemo 랭킹 서비스가 활성화된 경우 쿼리 검색 배포에서 아래 값을 변경하세요. 변수 값을 변경합니다:
- 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 사용자에게 감시자 생성을 위한 충분한 권한이 없습니다.
sConn.CreateWatch4Fileset =========>에서 반환한 오류 =====> [ EFSSG0012C 권한이 거부되었습니다: 귀하의 역할: [csiadmin, 컨테이너 운영자], 필수 역할 [admin, storageadmin, securityadmin]] 소스에 대해 클러스터된 감시를 사용할 수 없습니다 castFS:root해결 방안:
감시 생성을 사용하도록 Scale 사용자 구성에 지정된 대로 Scale의 스토리지 관리자 그룹에 Scale CSI 사용자를 추가합니다.
- 원인:
Kafka 인증 ConfigMap 이 누락되었습니다.
2025-03-28T18:21:10Z 오류 재조정자 오류 {"컨트롤러": "데이터 소스", "controllerGroup": " cas.isf.ibm.com ", "controllerKind": "DataSource", "DataSource": {"name":"mc-test","namespace":"ibm-cas"}, "네임스페이스": "ibm-cas", "name": "mc-test", "reconcileID": " 9aeda80b-4706-408a-9c05-ffcb39cb877e ", "error": "패닉: 로깅을 위해 키-값 쌍으로 전달된 인수의 홀수 [복구됨]"}해결 방안:
Kafka 브로커에 연결하도록 수동으로 설정하기 에 설명된 대로 Kafka 인증을 위한 ConfigMap 를 생성합니다.
- 원인:
데이터 소스에서 생성한 정적 PV에 대한 액세스가 거부됩니다. 정적 PV 접근성과 관련하여 기능적 문제가 감지되는 경우 액세스 거부 오류와 관련이 있을 수 있습니다. 유효성을 검사하려면 DocumentProcessor 에서 생성한 파드를 사용하여 마운트 경로에 액세스합니다. 이 파드의 이름은 DocumentProcessor.
(앱-루트) sh-5.1$ cd /gpfs/gpfs3/fileset_sample bash: cd: /app-root: 권한 거부됨
해결 방안:
스케일에서 파일세트에 알려진 GID를 추가하고 8단계에 설명된 대로 CAS에서 데이터소스에 주석을 추가합니다.
- 원인:
알려진 제한사항
- 각 도메인은 고유한 데이터 소스 위치, 즉 고유한 Scale 경로 또는 고유한 S3 위치를 사용해야 합니다. CAS는 현재 여러 도메인 간에 동일한 데이터 소스 위치 공유를 지원하지 않습니다.
- Azure Red Hat OpenShift ( ARO )에서 CAS를 지원하려면 파드의 최대 스레드 수를 변경해야 하므로 Red Hat 에서 추가 라이선스 요구 사항이 있습니다. 자세한 내용은 Red Hat 지식창고를 참조하세요.