7.3. 安装 iSCSI 网关


作为存储管理员,您必须先安装必要的软件包,然后才能利用 Ceph iSCSI 网关的优势。您可以使用 Ansible 部署工具或 命令行界面 来安装 Ceph iSCSI 网关。

每个 iSCSI 网关运行 Linux I/O 目标内核子系统 (LIO) 以提供 iSCSI 协议支持。LIO 利用用户空间透传 (TCMU) 与 Ceph librbd 库交互,将 RBD 镜像公开给 iSCSI 客户端。利用 Ceph iSCSI 网关,您可以有效地运行完全集成的块存储基础架构,其具备传统存储区域网络 (SAN) 的所有功能和好处。

7.3.1. 先决条件

  • Red Hat Enterprise Linux 8 或 7.7 或更高版本。
  • 正在运行的 Red Hat Ceph Storage 4 或更高版本集群。

7.3.2. 使用 Ansible 安装 Ceph iSCSI 网关

使用 Ansible 实用程序安装软件包,并为 Ceph iSCSI 网关设置守护进程。

先决条件

  • 安装了 ceph-ansible 软件包的 Ansible 管理节点。

流程

  1. 在 iSCSI 网关节点上,启用 Red Hat Ceph Storage 4 工具存储库。详情请参阅 Red Hat Ceph Storage 安装指南中的启用 Red Hat Ceph Storage 存储库一节。
  2. 在 Ansible 管理节点上,在 /etc/ansible/hosts 文件中为 gateway 组添加一个条目。如果您将 iSCSI 网关与 OSD 节点并置,请将 OSD 节点添加到 [iscsigws] 部分中。

    [iscsigws]
    ceph-igw-1
    ceph-igw-2
    Copy to Clipboard Toggle word wrap
  3. Ansible 将文件放置在 /usr/share/ceph-ansible/group_vars/ 目录中,名为 iscsigws.yml.sample。创建 iscsigws.yml.sample 文件的副本,名为 iscsigws.yml
  4. 打开 iscsigws.yml 文件进行编辑。
  5. 取消注释 trusted_ip_list 选项,并使用 IPv4 或 IPv6 地址相应地更新值。

    示例

    使用 IPv4 地址 10.172.19.21 和 10.172.19.22 添加两个网关,以配置 trusted_ip_list

    trusted_ip_list: 10.172.19.21,10.172.19.22
    Copy to Clipboard Toggle word wrap
  6. (可选)查看 iSCSI 网关变量部分中的 Ansible 变量和描述,并根据需要更新 iscsigws.yml

    警告

    网关配置更改一次仅受一个网关的支持。尝试通过多个网关同时运行更改可能会导致配置不稳定和不一致。

    警告

    在使用 ansible-playbook 命令时,Ansible 安装 ceph-iscsi 软件包,创建和更新 /etc/ceph/iscsi-gateway.cfg 文件,具体取决于 group_vars/iscsigws.yml 文件中的设置。如果您之前已经使用命令行界面安装了 ceph-iscsi 软件包(如 Installing the iSCSI gateway using the command-line interface 所述),请将现存的设置从 iscsi-gateway.cfg 文件复制到 group_vars/iscsigws.yml 文件。

  7. 在 Ansible 管理节点上,执行 Ansible playbook。

    • 裸机部署:

      [admin@ansible ~]$ cd /usr/share/ceph-ansible
      [admin@ansible ceph-ansible]$ ansible-playbook site.yml -i hosts
      Copy to Clipboard Toggle word wrap
    • 容器部署:

      [admin@ansible ~]$ cd /usr/share/ceph-ansible
      [admin@ansible ceph-ansible]$ ansible-playbook site-container.yml -i hosts
      Copy to Clipboard Toggle word wrap
      警告

      在独立 iSCSI 网关节点上,验证是否已启用正确的 Red Hat Ceph Storage 4 软件存储库。如果它们不可用,Ansible 可能会安装不正确的软件包。

  8. 若要创建目标、LUN 和客户端,可使用 gwcli 实用程序或 Red Hat Ceph Storage 仪表板。

    重要

    不要使用 targetcli 实用程序来更改配置,这会导致以下问题: ALUA 配置错误和路径故障转移问题。可能会导致数据损坏,跨 iSCSI 网关进行不匹配的配置,并且 WWN 信息不匹配,从而导致客户端路径问题。

其它资源

7.3.3. 使用命令行界面安装 Ceph iSCSI 网关

Ceph iSCSI 网关是 iSCSI 目标节点,也是 Ceph 客户端节点。Ceph iSCSI 网关可以是单机节点,也可以并置在 Ceph 对象存储磁盘(OSD)节点上。完成以下步骤,安装 Ceph iSCSI 网关。

先决条件

  • Red Hat Enterprise Linux 8 或 7.7 及更新的版本
  • Red Hat Ceph Storage 4 集群或更新版本
  • 在存储集群的所有 Ceph 监控节点上,以 root 用户身份重启 ceph-mon 服务:

    语法

    systemctl restart ceph-mon@MONITOR_HOST_NAME
    Copy to Clipboard Toggle word wrap

    示例

    [root@mon ~]# systemctl restart ceph-mon@monitor1
    Copy to Clipboard Toggle word wrap

  • 如果 Ceph iSCSI 网关不在 OSD 节点上并置,请将位于 /etc/ceph/ 目录下的 Ceph 配置文件从存储集群中正在运行的 Ceph 节点复制到所有 iSCSI 网关节点。Ceph 配置文件必须存在于 /etc/ceph/ 的 iSCSI 网关节点上。
  • 在所有 Ceph iSCSI 网关节点上,启用 Ceph Tools 存储库。详情请参阅安装指南中的启用 Red Hat Ceph Storage 存储库一节。
  • 在所有 Ceph iSCSI 网关节点上,安装和配置 Ceph 命令行界面。详情请参阅 Red Hat Ceph Storage 4 安装指南中的安装 Ceph 命令行界面一章。
  • 如果需要,在所有 Ceph iSCSI 节点上的防火墙上打开 TCP 端口 3260 和 5000。
  • 新建或使用现有的 RADOS 块设备 (RBD)。

流程

  1. 在所有 Ceph iSCSI 网关节点上,安装 ceph-iscsitcmu-runner 软件包:

    [root@iscsigw ~]# yum install ceph-iscsi tcmu-runner
    Copy to Clipboard Toggle word wrap
    重要

    如果这些软件包以前的版本存在,请在安装更新的版本前将其删除。您必须从 Red Hat Ceph Storage 存储库安装这些较新版本。

  2. (可选)在所有 Ceph iSCSI 网关节点上,根据需要安装和配置 OpenSSL 实用程序。

    1. 安装 openssl 软件包:

      [root@iscsigw ~]# yum install openssl
      Copy to Clipboard Toggle word wrap
    2. 在主 iSCSI 网关节点上,创建一个目录来存放 SSL 密钥:

      [root@iscsigw ~]# mkdir ~/ssl-keys
      [root@iscsigw ~]# cd ~/ssl-keys
      Copy to Clipboard Toggle word wrap
    3. 在主 iSCSI 网关节点上,创建证书和密钥文件。出现提示时,输入环境信息。

      [root@iscsigw ~]# openssl req -newkey rsa:2048 -nodes -keyout iscsi-gateway.key -x509 -days 365 -out iscsi-gateway.crt
      Copy to Clipboard Toggle word wrap
    4. 在主 iSCSI 网关节点上,创建一个 PEM 文件:

      [root@iscsigw ~]# cat iscsi-gateway.crt iscsi-gateway.key > iscsi-gateway.pem
      Copy to Clipboard Toggle word wrap
    5. 在主 iSCSI 网关节点上,创建一个公钥:

      [root@iscsigw ~]# openssl x509 -inform pem -in iscsi-gateway.pem -pubkey -noout > iscsi-gateway-pub.key
      Copy to Clipboard Toggle word wrap
    6. 从主 iSCSI 网关节点,将 iscsi-gateway.crtiscsi-gateway.pemiscsi-gateway-pub.keyiscsi-gateway.key 文件复制到其他 iSCSI 网关节点上的 /etc/ceph/ 目录中。
  3. 在 Ceph iSCSI 网关节点上创建配置文件,然后将它复制到所有 iSCSI 网关节点。

    1. /etc/ceph/ 目录中创建一个名为 iscsi-gateway.cfg 的文件:

      [root@iscsigw ~]# touch /etc/ceph/iscsi-gateway.cfg
      Copy to Clipboard Toggle word wrap
    2. 编辑 iscsi-gateway.cfg 文件并添加以下几行:

      语法

      [config]
      cluster_name = CLUSTER_NAME
      gateway_keyring = CLIENT_KEYRING
      api_secure = false
      trusted_ip_list = IP_ADDR,IP_ADDR
      Copy to Clipboard Toggle word wrap

      示例

      [config]
      cluster_name = ceph
      gateway_keyring = ceph.client.admin.keyring
      api_secure = false
      trusted_ip_list = 192.168.0.10,192.168.0.11
      Copy to Clipboard Toggle word wrap

    3. iscsi-gateway.cfg 文件复制到所有 iSCSI 网关节点。请注意,该文件在所有 iSCSI 网关节点上必须相同。
  4. 在所有 Ceph iSCSI 网关节点上,启用并启动 API 服务:

    [root@iscsigw ~]# systemctl enable rbd-target-api
    [root@iscsigw ~]# systemctl start rbd-target-api
    [root@iscsigw ~]# systemctl enable rbd-target-gw
    [root@iscsigw ~]# systemctl start rbd-target-gw
    Copy to Clipboard Toggle word wrap
  5. 接下来,配置目标、LUN 和客户端。详情请参阅使用命令行界面配置 iSCSI 目标 部分。

其它资源

7.3.4. 其它资源

返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

Theme

© 2025 Red Hat