1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

Db2 on CP4D 4.6.2 導入と構成 - 1.(準備)Db2専用ノードの設定

Last updated at Posted at 2023-04-21

Db2 on Cloud Pak for Data 4.6.2 導入と構成

シリーズ"Db2 on CP4D 4.6.2 導入と構成"は 2023年02月の経験をベースに 次のようなCloud Pak for Data (以下CP4D)4.6.2環境へ Db2を導入デプロイする手順をご紹介します。 

  • Managed OpenShift cluster (ROKS) on IBM Cloud (VPC/"Gen2")
  • OpenShift Container Platform (OCP) 4.10 , OpenShift Data Foundation (ODF) 4.10
  • Cloud Pak for Data (CP4D) 4.6.2

本シリーズの目次はこちらです。
ここでは Db2専用ノードを設定します。

1.(準備)Db2専用ノードの設定

Db2では 専用ノードを使用することを推奨されています。 とくに 本番環境では専用ノードで稼働させる必要があります。ここでは Db2専用ノード 10.244.128.70にして dedicated_specifier(ノードラベル)database-db2oltpを設定します。

手順

作業は踏み台マシンでおこないます。

(1) 環境変数シェルスクリプトを次のようにして実行して環境変数を定義してOpenShiftクラスターにログインしましょう。 ここで実行している$OCLOGINはcpd_vars.sh内で環境変数として定義しています。

# source ./cpd_vars.sh
# $OCLOGIN

シリーズ"Db2 on CP4D 4.6.2 導入と構成"で使用している環境変数登録用のシェルcpd_vars.shについてはDb2 on CP4D 4.6.2 導入と構成 - 前提, 環境変数定義シェルcpd_vars.shをご参照ください。

(2) ワーカーノードをリストして Db2専用ノードにするノードを決定します。

# oc get nodes
NAME            STATUS   ROLES           AGE   VERSION
10.244.128.63   Ready    master,worker   27h   v1.23.12+8a6bfe4
10.244.128.64   Ready    master,worker   27h   v1.23.12+8a6bfe4
10.244.128.65   Ready    master,worker   27h   v1.23.12+8a6bfe4
10.244.128.67   Ready    master,worker   27h   v1.23.12+8a6bfe4
10.244.128.68   Ready    master,worker   27h   v1.23.12+8a6bfe4
10.244.128.69   Ready    master,worker   27h   v1.23.12+8a6bfe4
10.244.128.70   Ready    master,worker   27h   v1.23.12+8a6bfe4
10.244.128.72   Ready    master,worker   27h   v1.23.12+8a6bfe4
#

(3) この後の作業で使用するDb2専用ノード 10.244.128.70 dedicated_specifierdatabase-db2oltpを環境変数に登録しておきましょう。

# db2node=10.244.128.70; dedicated_specifier=database-db2oltp

(4) NoSchedule オプションをつけて oc adm taint nodeを実行します。 taintが適用されたノードにポッドがデプロイされないようにします。

# oc adm taint node ${db2node} icp4data=${dedicated_specifier}:NoSchedule --overwrite
node/10.244.128.70 modified
#

(5) oc adm drain コマンドを実行して すべてのPodを taint したノードから 安全に退避させます。drainをオプションなしで実行するとほとんどのケースで 次のようなエラーがします。
(注)エラーの出力は異なる環境のものであるため nodeのIPアドレスが異なります。

# oc adm drain ${db2node}
node/10.245.0.96 cordoned
error: unable to drain node "10.245.0.96" due to error:[cannot delete Pods not managed by ReplicationController, (省略)
There are pending nodes to be drained:
 10.245.0.96
cannot delete Pods not managed by ReplicationController, ReplicaSet, Job, DaemonSet or StatefulSet (use --force to override): (省略)
cannot delete DaemonSet-managed Pods (use --ignore-daemonsets to ignore): (省略)
cannot delete Pods with local storage (use --delete-emptydir-data to override): (省略)
#

oc adm drain コマンドで エラーが発生する場合、エラーメッセージを吟味して 問題ないようであれば エラーメッセージで指定されたオプションをつかって 再度 oc adm drain コマンドを実行します。

# oc adm drain ${db2node} --ignore-daemonsets --delete-emptydir-data --force
node/10.244.128.70 cordoned
WARNING: deleting Pods not managed by ReplicationController,(省略)
evicting pod kube-system/ibm-worker-info-agent-10.248.128.75-yx1r2-drptv
evicting pod ibm-odf-validation-webhook/managed-storage-validation-webhooks-d9f78d586-xxxgb
:(省略)
pod/certified-operators-dsgpx evicted
node/10.244.128.70 drained
#

(6) oc adm drain 実行中にスケジュール対象外とされた(cordoned)ノードを スケジュール対象としてマーク(uncordon)します。

# oc adm uncordon ${db2node}
node/10.244.128.70 uncordoned
#

(7) ノードにラベルを付けます。

# oc label node ${db2node} icp4data=${dedicated_specifier} --overwrite
node/10.244.128.70 labeled
#

(8) 8. オプション : ノードにラベルがつけられたことを確認しましょう。

# oc get node --show-labels | grep ${dedicated_specifier}
10.244.128.70   Ready    master,worker   28h   v1.23.12+8a6bfe4   arch=amd64,(省略),icp4data=database-db2oltp,(省略)
#

↑の出力例は大半を省略していて、実際の出力では1000文字目以降にicp4data=database-db2oltpが出現していました。

これで Db2専用ノードの設定ができました。 

(メモ) taint の削除 node labelの削除方法

ノード 10.245.0.89につけたラベルキーicp4dataを削除するコマンドの例が次です。

oc adm taint nodes 10.245.0.89 icp4data-
oc label node 10.245.0.89 icp4data- --overwrite

参考文書

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?