はじめに
Oracle Cloud Infrastructure(OCI)では、OSが含まれるBoot Volumeの他、追加ディスクとしてBlock VolumeをComputeにアタッチすることができます。
Boot Volumeのアタッチには準仮想化とiSCSIの2種類が選択でき るのですが、パフォーマンスSLAを担保する為にはiSCSIでのアタッチが必要です。マニュアルにもパフォーマンスが早いのはiSCSIと記載があり ます。(実機検証レベルでは変わらないですが)
2021/06/27追記:UHA(Ultra Hight Perfomence)のBlock Volumeがリリースされてから準仮想化でもSLAの対象となり、iSCSIとのパフォーマンス差異はなくなりました。
マニュアル:ブロック・ボリュームの概要
Oracle CloudのSLA
なので、基本的にはiSCSIを選択するのですが、運用が少し面倒です。
iSCSIの場合、OCIでBlock VolumeをマウントしてもOSではまだ見えてこないため、OS内でもiSCSIマウント(OCIコンソールで表示されるコマンドをコピペ)を行う必要があります。
問題になるのが、運用面です。
拡張したい時などでBlock Volumeを切り離す際、OS内でiSCSIをアンマウントせずにOCIでBlock Volumeをデタッチしてしまうと古い情報がOS内部に残ってしまう為、次回同じBlock Volumeをアタッチして、OSでiSCSIマウントする際にマウントできなかったりと色々と問題が出てきます。
また、カスタムイメージの作成時にBlock Volumeをデタッチせずにつくってしまった場合なども。
ここではOS内(Linux) のiSCSI情報をキレイにする手順を案内します。
手順
①確認
以下で現在のiSCSIデバイスの登録を確認します。
既にファイルシステムも、追加ボリュームも無い(前提)のですが、以下で残存している設定を確認できます。
iqn.2015-12.com.oracleiaas:99534348-23d7-4bd7-9d1f-9592cc90cd99 が残っているため削除します。
# ls -la /var/lib/iscsi/nodes
合計 4
drwxr-xr-x. 9 root root 4096 2月 19 01:06 .
drwxr-xr-x. 8 root root 90 4月 11 2018 ..
drwx------. 3 root root 32 8月 14 2018 iqn.2015-02.oracle.boot:uefi
drw------- 2 root root 54 2月 19 01:06 iqn.2015-12.com.oracleiaas:99534348-23d7-4bd7-9d1f-9592cc90cd99
②iSCSI情報削除
以下で情報を削除できます。
(以下で削除できない場合、一旦OSを再起動すると削除できることが多いです)
# iscsiadm -m node -o delete -T iqn.2015-12.com.oracleiaas:99534348-23d7-4bd7-9d1f-9592cc90cd99
削除後、OSを再起動します。
③最後に確認
# ls -la /var/lib/iscsi/nodes
合計 4
drwxr-xr-x. 9 root root 4096 2月 19 01:06 .
drwxr-xr-x. 8 root root 90 4月 11 2018 ..
drwx------. 3 root root 32 8月 14 2018 iqn.2015-02.oracle.boot:uefi