7.12. 删除 iSCSI 配置
要删除 iSCSI 配置,请使用 gwcli
实用程序删除主机和磁盘,以及 Ansible purge-iscsi-gateways.yml
playbook 来删除 iSCSI 目标配置。
使用 purge-iscsi-gateways.yml
playbook 是针对 iSCSI 网关环境的破坏性操作。
如果 RBD 镜像有快照或克隆并且通过 Ceph iSCSI 网关导出,则尝试使用 purge-iscsi-gateways.yml
会失败。
先决条件
断开所有 iSCSI 启动器:
Red Hat Enterprise Linux 启动程序:
语法
iscsiadm -m node -T TARGET_NAME --logout
使用配置的 iSCSI 目标名称替换
TARGET_NAME
,例如:示例
# iscsiadm -m node -T iqn.2003-01.com.redhat.iscsi-gw:ceph-igw --logout Logging out of session [sid: 1, target: iqn.2003-01.com.redhat.iscsi-gw:iscsi-igw, portal: 10.172.19.21,3260] Logging out of session [sid: 2, target: iqn.2003-01.com.redhat.iscsi-gw:iscsi-igw, portal: 10.172.19.22,3260] Logout of [sid: 1, target: iqn.2003-01.com.redhat.iscsi-gw:iscsi-igw, portal: 10.172.19.21,3260] successful. Logout of [sid: 2, target: iqn.2003-01.com.redhat.iscsi-gw:iscsi-igw, portal: 10.172.19.22,3260] successful.
Windows 启动器:
如需了解更多详细信息,请参阅 Microsoft 文档。
VMware ESXi 启动器:
如需了解更多详细信息,请参阅 VMware 文档。
流程
运行 iSCSI 网关命令行工具:
[root@iscsigw ~]# gwcli
删除主机:
语法
/> cd /iscsi-target/iqn.2003-01.com.redhat.iscsi-gw:$TARGET_NAME/hosts /> /iscsi-target...TARGET_NAME/hosts> delete CLIENT_NAME
使用配置的 iSCSI 目标名称替换
TARGET_NAME
,并将CLIENT_NAME
替换为 iSCSI initiator 名称,例如:示例
/> cd /iscsi-target/iqn.2003-01.com.redhat.iscsi-gw:ceph-igw/hosts /> /iscsi-target...eph-igw/hosts> delete iqn.1994-05.com.redhat:rh7-client
删除磁盘:
语法
/> cd /disks/ /disks> delete POOL_NAME.IMAGE_NAME
将
POOL_NAME
替换为池的名称,将IMAGE_NAME
替换为镜像的名称。示例
/> cd /disks/ /disks> delete rbd.disk_1
作为 root 用户,对于 容器化部署,请确保 iSCSI 网关节点上启用了所有 Red Hat Ceph Storage 工具和存储库:
Red Hat Enterprise Linux 7
[root@admin ~]# subscription-manager repos --enable=rhel-7-server-rpms [root@admin ~]# subscription-manager repos --enable=rhel-7-server-extras-rpms [root@admin ~]# subscription-manager repos --enable=rhel-7-server-rhceph-4-tools-rpms --enable=rhel-7-server-ansible-2.9-rpms
Red Hat Enterprise Linux 8
[root@admin ~]# subscription-manager repos --enable=rhel-8-for-x86_64-baseos-rpms [root@admin ~]# subscription-manager repos --enable=rhel-8-for-x86_64-appstream-rpms [root@admin ~]# subscription-manager repos --enable=rhceph-4-tools-for-rhel-8-x86_64-rpms --enable=ansible-2.9-for-rhel-8-x86_64-rpms
注意对于 裸机部署,客户端安装启用了 Ceph 工具。
在每个 iSCSI 网关节点上,安装
ceph-common
和ceph-iscsi
软件包:Red Hat Enterprise Linux 7
[root@admin ~]# yum install -y ceph-common [root@admin ~]# yum install -y ceph-iscsi
Red Hat Enterprise Linux 8
[root@admin ~]# dnf install -y ceph-common [root@admin ~]# dnf install -y ceph-iscsi
-
运行
yum history list
命令,并获取ceph-iscsi
安装的事务 ID。 切换到 Ansible 用户:
示例
[root@admin ~]# su ansible
进入
/usr/share/ceph-ansible/
目录:示例
[ansible@admin ~]# cd /usr/share/ceph-ansible
以 ansible 用户身份,运行 iSCSI 网关清除 Ansible playbook:
[ansible@admin ceph-ansible]$ ansible-playbook purge-iscsi-gateways.yml
在提示时输入清除类型:
lio
- 在此模式下,在定义的所有 iSCSI 网关上清除 Linux iSCSI 目标配置。创建的磁盘在 Ceph 存储集群中保持不变。
all
-
当选择
all
时,Linux iSCSI 目标配置会与 iSCSI 网关环境中定义的 all RBD 镜像一起移除,其他不相关的 RBD 镜像不会被删除。请务必选择正确的模式,因为此操作会删除数据。
示例
[ansible@rh7-iscsi-client ceph-ansible]$ ansible-playbook purge-iscsi-gateways.yml Which configuration elements should be purged? (all, lio or abort) [abort]: all PLAY [Confirm removal of the iSCSI gateway configuration] ********************* GATHERING FACTS *************************************************************** ok: [localhost] TASK: [Exit playbook if user aborted the purge] ******************************* skipping: [localhost] TASK: [set_fact ] ************************************************************* ok: [localhost] PLAY [Removing the gateway configuration] ************************************* GATHERING FACTS *************************************************************** ok: [ceph-igw-1] ok: [ceph-igw-2] TASK: [igw_purge | purging the gateway configuration] ************************* changed: [ceph-igw-1] changed: [ceph-igw-2] TASK: [igw_purge | deleting configured rbd devices] *************************** changed: [ceph-igw-1] changed: [ceph-igw-2] PLAY RECAP ******************************************************************** ceph-igw-1 : ok=3 changed=2 unreachable=0 failed=0 ceph-igw-2 : ok=3 changed=2 unreachable=0 failed=0 localhost : ok=2 changed=0 unreachable=0 failed=0
检查是否删除了活跃的容器:
Red Hat Enterprise Linux 7
[root@admin ~]# docker ps
Red Hat Enterprise Linux 8
[root@admin ~]# podman ps
Ceph iSCSI 容器 ID 已移除。
可选:删除
ceph-iscsi
软件包:语法
yum history undo TRANSACTION_ID
示例
[root@admin ~]# yum history undo 4
警告不要删除
ceph-common
软件包。这会删除/etc/ceph
的内容,并使该节点上的守护进程无法启动。