Bob 설치
네트워크 환경에 맞는 설치 방법을 선택하고 bobctl을 사용하여 IBM Bob을 OpenShift 클러스터에 배포합니다.
설치 방법을 사용하기 전에 cluster-admin 권한이 있는 계정으로 대상 OpenShift 클러스터에 로그인하고 올바른 클러스터 컨텍스트가 활성화되어 있는지 확인하세요:
oc login <api-server> --token=<cluster-admin-token>설치 방법 선택
| 항목 | 연결됨 | 에어갭 (직접 미러링) | 에어갭 (간접 미러링) |
|---|---|---|---|
| 이미지 소스 | IBM Container Registry에서 직접 가져옴 | 내부 레지스트리로 미러링 | 내부 레지스트리로 미러링 |
| 모델 추론 | 호스팅 또는 온프레미스 추론 서비스 | 온프레미스 추론 서비스만 | 온프레미스 추론 서비스만 |
| 업데이트 | 외부 소스에서 직접 다운로드 | 오프라인 업데이트 번들을 통해 가져옴 | 오프라인 업데이트 번들을 통해 가져옴 |
| 인증서 발급 | 공개 인증 기관(예: ACME) | 내부 또는 프라이빗 인증 기관 | 내부 또는 프라이빗 인증 기관 |
| 원격 측정 | 기본적으로 활성화됨(비활성화 가능) | 비활성화됨 | 비활성화됨 |
OpenShift 클러스터가 IBM Container Registry에 직접 접근할 수 있을 때 이 방법을 사용합니다. 이미지는 설치 중에 다운로드되며 이미지 미러링이 필요하지 않습니다.
설치 구성
환경에 맞는 값으로 배포 구성 파일을 생성하고 업데이트합니다:
cp config-template.yaml config.yaml
# 특정 값으로 config.yaml 편집자세한 내용은 클러스터 설치 구성을 참조하세요.
클러스터 리소스 생성
설치에 필요한 클러스터 범위 리소스를 생성합니다. 이렇게 하면 클러스터에 적용하기 전에 생성된 아티팩트를 검토할 수 있습니다.
./bobctl generate-cluster-resources이 명령은 work/cluster-resources.yaml 파일을 생성합니다. 파일을 검토한 후 클러스터에 적용합니다:
oc apply -f work/cluster-resources.yaml --force-conflicts --server-side생성된 oc apply 명령도 명령 출력에 표시됩니다.
Bob 설치
구성 값과 레지스트리 자격 증명을 사용하여 Bob을 배포합니다:
./bobctl install --registry-creds <username:password> --accept-license설치 중에 bobctl은 필요한 리소스를 생성하고 모든 Bob 컴포넌트를 대상 네임스페이스에 배포합니다.
| 옵션 | 필수 여부 | 설명 |
|---|---|---|
--registry-creds <username:password> | 예 | 이미지 풀 시크릿을 생성하는 데 사용되는 레지스트리 자격 증명. |
--accept-license | 예 | IBM 라이선스 조건에 대한 동의를 확인합니다. 이 옵션을 지정하지 않으면 설치가 진행되지 않습니다. |
--model-config <file> | 아니요 | Model Gateway 구성 파일의 경로입니다. 생략하면 Bob이 모델 액세스 없이 설치되며, 설치 후 bobctl update-model-config를 사용하여 추가할 수 있습니다. |
--dry-run | 아니요 | 변경 사항을 적용하지 않고 계획된 변경 사항을 표시합니다. |
워크스테이션이 IBM Container Registry와 대상 프라이빗 레지스트리 모두에 접근할 수 있을 때 이 방법을 사용합니다. 이미지는 오프라인 전송 없이 레지스트리 간에 직접 복사됩니다.
이미지 미러링
IBM Container Registry에서 프라이빗 레지스트리로 필요한 Bob 이미지를 미러링합니다:
./bobctl mirror-images \
--dest-registry <your-registry> \
--src-creds <username:password> \
--dest-creds <username:password> \
--arch amd64이 명령은 필요한 모든 이미지를 복사하고 대상 환경에 대한 저장소 참조를 업데이트합니다.
| 옵션 | 필수 여부 | 설명 |
|---|---|---|
--dest-registry <registry> | 예 | 대상 레지스트리. |
--src-creds <username:password> | 예 | IBM 레지스트리 자격 증명. |
--dest-creds <username:password> | 아니요 | 대상 레지스트리 자격 증명. |
--arch amd64 | 아니요 | 아키텍처별로 이미지를 필터링합니다. |
미러링된 이미지 검증
미러링이 완료된 후 대상 레지스트리에서 필요한 모든 이미지에 접근할 수 있는지 확인합니다:
./bobctl verify-images \
--creds <username:password> \
--arch amd64bobctl verify-images는 config.yaml에서 global.imagePullPrefix를 읽어 대상 레지스트리를 찾습니다. 이 명령은 IBM 퍼블릭 레지스트리(icr.io)와 함께 사용할 수 없습니다.
| 옵션 | 설명 |
|---|---|
--creds <username:password> | 대상 레지스트리의 자격 증명입니다. mirror-images 명령의 --dest-creds와 동일한 값을 사용하세요. |
--arch amd64 | 클러스터 아키텍처별로 이미지를 필터링합니다. |
클러스터 리소스 생성
./bobctl generate-cluster-resources생성된 work/cluster-resources.yaml 파일을 검토한 후 클러스터에 적용합니다:
oc apply -f work/cluster-resources.yaml --force-conflicts --server-sideBob 설치
config.yaml을 업데이트하여 프라이빗 레지스트리를 참조합니다. 클러스터 설치 구성을 참조하세요.
구성이 업데이트된 후 제품을 설치합니다:
./bobctl install --registry-creds <username:password> --accept-licenseModel Gateway 구성을 포함하려면 --model-config <file>을 추가하세요. 생략한 경우 설치 후 bobctl update-model-config를 사용하여 모델 액세스를 추가하세요. Model Gateway 구성을 참조하세요.
워크스테이션이 IBM Container Registry와 프라이빗 레지스트리에 동시에 접근할 수 없을 때 이 방법을 사용합니다. 이미지는 인터넷 연결 워크스테이션에서 다운로드되고, 에어갭 환경으로 전송된 후 프라이빗 레지스트리에 업로드됩니다.
이미지 다운로드
인터넷에 연결된 워크스테이션에서 다음 명령을 실행합니다:
./bobctl download-images \
--to-dir /path/to/images \
--src-creds <username:password> \
--arch amd64| 옵션 | 필수 여부 | 설명 |
|---|---|---|
--to-dir <directory> | 예 | 로컬 이미지 다운로드 위치. |
--src-creds <username:password> | 예 | IBM 레지스트리 자격 증명. |
--arch amd64 | 아니요 | 아키텍처 필터. |
이미지 전송
이동식 미디어 또는 보안 파일 전송 어플라이언스 등 조직의 승인된 전송 메커니즘을 사용하여 다운로드된 이미지 디렉터리를 에어갭 환경으로 전송합니다.
프라이빗 레지스트리에 이미지 업로드
./bobctl upload-images \
--from-dir /path/to/images \
--dest-registry <your-registry> \
--dest-creds <username:password>| 옵션 | 필수 여부 | 설명 |
|---|---|---|
--from-dir <directory> | 예 | 다운로드된 이미지가 포함된 디렉터리. |
--dest-registry <registry> | 예 | 대상 레지스트리. |
--dest-creds <username:password> | 아니요 | 레지스트리 자격 증명. |
업로드된 이미지 검증
업로드가 완료된 후 대상 레지스트리에서 필요한 모든 이미지에 접근할 수 있는지 확인합니다:
./bobctl verify-images \
--creds <username:password> \
--arch amd64bobctl verify-images는 config.yaml에서 global.imagePullPrefix를 읽어 대상 레지스트리를 찾습니다. 이 명령은 IBM 퍼블릭 레지스트리(icr.io)와 함께 사용할 수 없습니다.
| 옵션 | 설명 |
|---|---|
--creds <username:password> | 대상 레지스트리의 자격 증명입니다. upload-images 명령의 --dest-creds와 동일한 값을 사용하세요. |
--arch amd64 | 클러스터 아키텍처별로 이미지를 필터링합니다. |
클러스터 리소스 생성
./bobctl generate-cluster-resources생성된 work/cluster-resources.yaml 파일을 검토한 후 클러스터에 적용합니다:
oc apply -f work/cluster-resources.yaml --force-conflicts --server-sideBob 설치
config.yaml을 업데이트하여 프라이빗 레지스트리를 참조합니다. 클러스터 설치 구성을 참조하세요.
구성이 업데이트된 후 제품을 설치합니다:
./bobctl install --registry-creds <username:password> --accept-licenseModel Gateway 구성을 포함하려면 --model-config <file>을 추가하세요. 생략한 경우 설치 후 bobctl update-model-config를 사용하여 모델 액세스를 추가하세요. Model Gateway 구성을 참조하세요.