IBM CP4D(Cloud Pak for Data)는 Openshift환경의 Data & AI 통합 플랫폼입니다. 플랫폼 내 데이터 저장소 역할을 담당하는 Db2U의 설치 에 대해 살펴보겠습니다. 클러스터의 인터넷 접속가능 여부에 따라 설치방법이 다소 차이가 있는데 여기서는 인터넷 접속 가능한 환경에서 설치를 시도하였습니다. 작업 순서는 아래와 같이 진행하였습니다.
작업 목록 | 설명 |
1. Db2 전용 노드 지정 | DB 서비스는 충분한 자원 (CPU, Memory) 확보가 필수이므로, 전용 노드에 설치구성하는 것이 바람직. |
2. Operator 설치 | Operator는 컨테이너 기반 애플리케이션을 관리하는 런타임 |
3. OLM(Opertor Lifecycle Mananger)설치 | OLM은 Operator 프레임워크의 일부로, Operator를 관리하기 위해 효과적이고 자동화된 확장 가능 방식으로 설계된 오픈 소스 툴킷 |
4. Db2 설치 | Custom Resource 생성 |
5. 설치 확인 | 정상 설치 확인 |
6. Instance/database 생성 | Db2 인스턴스, 데이터베이스 생성하기 |
1. Db2 전용 노드 지정 (oc 명령어 사용)
ex) 전용 노드 : compute-14.isf.kr.ibm.com
# Openshift 클러스터 로그인
$ oc login -u kubeadmin -p wDRir-6kyvF-byG65-VQKsf
# 클러스터 내 노드 목록 확인
$ oc get nodes
# 전용 노드 지정
$ oc adm taint node compute-14.isf.kr.ibm.com icp4data=database-db2wh:NoSchedule --overwrite
$ oc adm drain compute-14.isf.kr.ibm.com
$ oc adm uncordon compute-14.isf.kr.ibm.com
2. Operator 설치 (Openshift Web console 사용)
Openshift web console에서 Operator-Operator Hub에서 Db2를 선택합니다. 버전과 설치할 네임스페이스 입력 후 설치를 진행합니다.
설치가 완료되면 아래와 같이 표시됩니다.
3. OLM 설치 (cpd-cli 인터페이스)
$ oc login -u kubeadmin -p wDRir-6kyvF-byG65-VQKsf
$ cat db2wh_olm_create.sh
cpd-cli manage apply-olm \
--release=4.6.4 \
--cpd_operator_ns=ibm-common-services \
--components=db2wh
$ sh db2wh_olm_create.sh
TASK [utils : check if installedCSV: ibm-db2wh-cp4d-operator.v3.2.0 'Succeeded' for Subscription: ibm-db2wh-cp4d-operator-catalog-subscription] ***
Not ready yet - Retrying: check if installedCSV: ibm-db2wh-cp4d-operator.v3.2.0 'Succeeded' for Subscription: ibm-db2wh-cp4d-operator-catalog-subscription (20 Retries left)
Not ready yet - Retrying: check if installedCSV: ibm-db2wh-cp4d-operator.v3.2.0 'Succeeded' for Subscription: ibm-db2wh-cp4d-operator-catalog-subscription (19 Retries left)
Not ready yet - Retrying: check if installedCSV: ibm-db2wh-cp4d-operator.v3.2.0 'Succeeded' for Subscription: ibm-db2wh-cp4d-operator-catalog-subscription (18 Retries left)
Not ready yet - Retrying: check if installedCSV: ibm-db2wh-cp4d-operator.v3.2.0 'Succeeded' for Subscription: ibm-db2wh-cp4d-operator-catalog-subscription (17 Retries left)
Not ready yet - Retrying: check if installedCSV: ibm-db2wh-cp4d-operator.v3.2.0 'Succeeded' for Subscription: ibm-db2wh-cp4d-operator-catalog-subscription (16 Retries left)
ok: [localhost]
TASK [utils : confirm the Operator Deployment is ready for csv ibm-db2wh-cp4d-operator.v3.2.0] **************************
ok: [localhost]
TASK [debug] ************************************************************************************************************
skipping: [localhost]
PLAY RECAP **************************************************************************************************************
localhost : ok=119 changed=12 unreachable=0 failed=0 skipped=90 rescued=0 ignored=0
[SUCCESS] 2023-06-01T18:18:17.757890Z You may find output and logs in the /home/cpd-cli/work directory.
[SUCCESS] 2023-06-01T18:18:17.757952Z The apply-olm command ran successfully.
4. Db2U 설치 (cpd-cli 인터페이스)
$ cat db2wh_cr_create.sh
cpd-cli manage apply-cr \
--components=db2wh \
--release=4.6.4 \
--cpd_instance_ns=ibm-cpd-instance \
--license_acceptance=true
$ sh db2wh_cr_create.sh
[INFO] 2023-06-01T18:25:07.380620Z Checking architecture: amd64
[INFO] 2023-06-01T18:25:07.380672Z Checking podman or docker
[INFO] 2023-06-01T18:25:07.424013Z Dockerexe: podman
[INFO] 2023-06-01T18:25:07.424067Z User-specified workspace: /home/cpd-cli
[INFO] 2023-06-01T18:25:07.575684Z Container olm-utils-play is running already. Image: icr.io/cpopen/cpd/olm-utils:latest
[INFO] 2023-06-01T18:25:07.719091Z Processing subcommand apply-cr
[WARNING]: No inventory was parsed, only implicit localhost is available
[WARNING]: provided hosts list is empty, only localhost is available. Note that the implicit localhost does not match
'all'
PLAY [localhost] ********************************************************************************************************
TASK [include_role : utils] **********************************************
....................
TASK [utils : applying mulitple CRs for tethered namespace] *************************************************************
skipping: [localhost] => (item=init)
skipping: [localhost] => (item=db2wh)
TASK [debug] ************************************************************************************************************
skipping: [localhost]
PLAY RECAP **************************************************************************************************************
localhost : ok=38 changed=6 unreachable=0 failed=0 skipped=58 rescued=0 ignored=0
[SUCCESS] 2023-06-01T18:40:23.801229Z You may find output and logs in the /home/cpd-cli/work directory.
[SUCCESS] 2023-06-01T18:40:23.801262Z The apply-cr command ran successfully.
5. 설치 확인 (cpd-cli 인터페이스)
$ cat db2wh_validate.sh
cpd-cli manage get-cr-status \
--cpd_instance_ns=ibm-cpd-instance \
--components=db2wh
$ sh db2wh_validate.sh
[INFO] 2023-06-01T18:47:04.341473Z Checking architecture: amd64
[INFO] 2023-06-01T18:47:04.341527Z Checking podman or docker
[INFO] 2023-06-01T18:47:04.383720Z Dockerexe: podman
[INFO] 2023-06-01T18:47:04.383763Z User-specified workspace: /home/cpd-cli
[INFO] 2023-06-01T18:47:04.533877Z Container olm-utils-play is running already. Image: icr.io/cpopen/cpd/olm-utils:latest
[INFO] 2023-06-01T18:47:04.679612Z Processing subcommand get-cr-status
# component,CR-kind,CR-name,status,version,creationtimestamp,reconciled-version,operator-info
db2wh,Db2whService,db2wh-cr,Completed,4.6.4,2023-06-01T09:26:36Z,4.6.4+11.5.8.0-cn2+2039,4.6.4+11.5.8.0-cn2+2039
[SUCCESS] 2023-06-01T18:47:11.241843Z You may find output and logs in the /home/cpd-cli/work directory.
[SUCCESS] 2023-06-01T18:47:11.241894Z The get-cr-status command ran successfully.
6. 데이터베이스 생성 (CP4D Web console)
Data > Databases 에서 Create a database 선택하고 생성 할 데이터베이스를 구성합니다.
Db2 on Windows 에 'SQL1092N' 에러 해결하기 (0) | 2023.10.03 |
---|---|
Db2 테이블 파티셔닝 (0) | 2023.07.02 |
Db2U - 컨테이너형 Db2 (0) | 2023.05.20 |
스마트하게 워크로드 관리하기 (0) | 2023.03.12 |
In-DB 머신러닝 (0) | 2023.02.10 |
댓글 영역