10.3. iSCSI ゲートウェイのインストール
ストレージ管理者は、必要なソフトウェアパッケージをインストールしてからでないと、Ceph iSCSI ゲートウェイの利点を活用できません。コマンドラインインターフェイス を使用して、Ceph iSCSI ゲートウェイをインストールできます。
各 iSCSI ゲートウェイは、Linux I/O ターゲットカーネルサブシステム (LIO) を実行して、iSCSI プロトコルをサポートします。LIO はユーザー空間パススルー (TCMU) を使用して Ceph librbd
ライブラリーと対話し、RBD イメージを iSCSI クライアントに公開します。Ceph の iSCSI ゲートウェイの場合には、従来のストレージエリアネットワーク (SAN) のすべての機能および利点を使用して、完全に統合されたブロックストレージインフラストラクチャーを効率的に実行できます。
10.3.1. 前提条件
- Red Hat Enterprise Linux 8.4 以降。
- 稼働中の Red Hat Ceph Storage 5 以降のクラスター。
10.3.2. コマンドラインインターフェイスを使用した Ceph iSCSI ゲートウェイのインストール
Ceph iSCSI ゲートウェイは、iSCSI ターゲットノードおよび Ceph クライアントノードです。Ceph iSCSI ゲートウェイはスタンドアロンノードにすることも、Ceph Object Store Disk (OSD) ノードと同じ場所に配置することもできます。Ceph iSCSI ゲートウェイをインストールするには、以下の手順を実施します。
前提条件
- Red Hat Enterprise Linux 8.4 以降
- Red Hat Ceph Storage 5 のクラスター以上
-
Ceph iSCSI ゲートウェイが OSD ノードと同じ場所に配置されていない場合には、
/etc/ceph/
ディレクトリーにある Ceph 設定ファイルを、ストレージクラスターにある実行中の Ceph ノードから iSCSI ゲートウェイホストすべてにコピーしてください。Ceph 設定ファイルは、/etc/ceph/
の iSCSI ゲートウェイノードに存在している必要があります。 - すべての Ceph iSCSI ゲートウェイホストで、Ceph Tools リポジトリーを有効にします。
- すべての Ceph iSCSI ゲートウェイホストに、Ceph コマンドラインインターフェイスをインストールおよび設定します。
- 必要に応じて、すべての Ceph iSCSI ノードのファイアウォールで TCP ポート 3260 および 5000 を開きます。
- 新規を作成するか、既存の RADOS ブロックデバイス (RBD) を使用します。
手順
ホスト上の iSCSI コンテナーの情報を取得します。
例
podman ps
[root@iscsigw ~]# podman ps
Copy to Clipboard Copied! Cephadm シェルにログインします。
例
cephadm shell
[root@iscsigw ~]# cephadm shell
Copy to Clipboard Copied! オプション: すべての Ceph iSCSI ゲートウェイホストで OpenSSL ユーティリティーをインストールし、設定します。
openssl
パッケージをインストールします。例
[ceph: root@iscsigw /]# yum install openssl
[ceph: root@iscsigw /]# yum install openssl
Copy to Clipboard Copied! プライマリー iSCSI ゲートウェイノードで、SSL キーを保存するディレクトリーを作成します。
例
[ceph: root@iscsigw /]# mkdir ~/ssl-keys [ceph: root@iscsigw /]# cd ~/ssl-keys
[ceph: root@iscsigw /]# mkdir ~/ssl-keys [ceph: root@iscsigw /]# cd ~/ssl-keys
Copy to Clipboard Copied! プライマリー iSCSI ゲートウェイノードで、証明書およびキーファイルを作成します。プロンプトが表示されたら、環境情報を入力します。
例
[ceph: root@iscsigw /]# openssl req -newkey rsa:2048 -nodes -keyout iscsi-gateway.key -x509 -days 365 -out iscsi-gateway.crt
[ceph: root@iscsigw /]# openssl req -newkey rsa:2048 -nodes -keyout iscsi-gateway.key -x509 -days 365 -out iscsi-gateway.crt
Copy to Clipboard Copied! プライマリー iSCSI ゲートウェイノードで、PEM ファイルを作成します。
例
[ceph: root@iscsigw /]# cat iscsi-gateway.crt iscsi-gateway.key > iscsi-gateway.pem
[ceph: root@iscsigw /]# cat iscsi-gateway.crt iscsi-gateway.key > iscsi-gateway.pem
Copy to Clipboard Copied! プライマリー iSCSI ゲートウェイノードで、公開鍵を作成します。
例
[ceph: root@iscsigw /]# openssl x509 -inform pem -in iscsi-gateway.pem -pubkey -noout > iscsi-gateway-pub.key
[ceph: root@iscsigw /]# openssl x509 -inform pem -in iscsi-gateway.pem -pubkey -noout > iscsi-gateway-pub.key
Copy to Clipboard Copied! -
プライマリー iSCSI ゲートウェイノードから、
iscsi-gateway.crt
、iscsi-gateway.pem
、iscsi-gateway-pub.key
およびiscsi-gateway.key
ファイルを、他の iSCSI ゲートウェイホストの/etc/ceph/
ディレクトリーにコピーします。
以下のコマンドを使用してプールを作成します。
構文
ceph osd pool create POOL_NAME PG_NUM ceph osd pool application enable POOL_NAME rbd rbd pool init -p POOL_NAME
ceph osd pool create POOL_NAME PG_NUM ceph osd pool application enable POOL_NAME rbd rbd pool init -p POOL_NAME
Copy to Clipboard Copied! 例
[ceph: root@iscsigw /]# ceph osd pool create pool1 100 [ceph: root@iscsigw /]# ceph osd pool application enable pool1 rbd [ceph: root@iscsigw /]# rbd pool init -p pool1
[ceph: root@iscsigw /]# ceph osd pool create pool1 100 [ceph: root@iscsigw /]# ceph osd pool application enable pool1 rbd [ceph: root@iscsigw /]# rbd pool init -p pool1
Copy to Clipboard Copied! Ceph iSCSI ゲートウェイノードに設定ファイルを作成します。
/etc/ceph/
ディレクトリーにiscsi-gateway.yaml
という名前のファイルを作成します。例
[ceph: root@iscsigw /]# touch /etc/ceph/iscsi-gateway.yaml
[ceph: root@iscsigw /]# touch /etc/ceph/iscsi-gateway.yaml
Copy to Clipboard Copied! iscsi-gateway.yaml
ファイルを編集し、以下の行を追加します。構文
service_type: iscsi service_id: iscsi placement: hosts: - HOST_NAME - HOST_NAME spec: pool: POOL_NAME # RADOS pool where ceph-iscsi config data is stored. trusted_ip_list: "IP_ADDRESS_1,IP_ADDRESS_2"
service_type: iscsi service_id: iscsi placement: hosts: - HOST_NAME - HOST_NAME spec: pool: POOL_NAME # RADOS pool where ceph-iscsi config data is stored. trusted_ip_list: "IP_ADDRESS_1,IP_ADDRESS_2"
Copy to Clipboard Copied! 例
service_type: iscsi service_id: iscsi placement: hosts: - host01 - host02 spec: pool: iscsipool1 trusted_ip_list: "10.80.100.100,10.8.100.113"
service_type: iscsi service_id: iscsi placement: hosts: - host01 - host02 spec: pool: iscsipool1 trusted_ip_list: "10.80.100.100,10.8.100.113"
Copy to Clipboard Copied!
/etc/ceph/
へのパスを変更し、以下のコマンドで仕様を適用します。例
[ceph: root@iscsigw /]# ceph orch apply -i iscsi-gateway.yaml
[ceph: root@iscsigw /]# ceph orch apply -i iscsi-gateway.yaml
Copy to Clipboard Copied! - 次に、ターゲット、LUN、およびクライアントを設定します。詳細は、コマンドラインインターフェイスを使用した iSCSI ターゲットの設定 セクションを参照してください。