ibm.spectrum_virtualize.ibm_svc_manage_migration 模块 – 此模块管理 IBM Spectrum Virtualize 系列存储系统上集群之间的卷迁移

注意

此模块是 ibm.spectrum_virtualize 集合(版本 2.0.0)的一部分。

如果您正在使用 ansible 包,您可能已经安装了这个集合。它不包含在 ansible-core 中。要检查是否已安装,请运行 ansible-galaxy collection list

要安装它,请使用:ansible-galaxy collection install ibm.spectrum_virtualize

要在 playbook 中使用它,请指定:ibm.spectrum_virtualize.ibm_svc_manage_migration

注意

ibm.spectrum_virtualize 集合已重命名为 ibm.storage_virtualize,并将从 Ansible 12 中删除。如果您使用 ibm.spectrum_virtualize 中的内容,请更新 playbook 和角色中的 FQCN!在创建新的 playbook 或角色时,请直接使用 ibm.storage_virtualize 中的内容。

ibm.spectrum_virtualize 1.6.0 中的新增功能

概要

  • 用于管理迁移命令的 Ansible 接口。

参数

参数

注释

clustername

字符串 / 必需

Spectrum Virtualize 存储系统的主机名或管理 IP。

domain

字符串

Spectrum Virtualize 存储系统的域。

当主机名用于参数 clustername 时有效。

log_path

字符串

调试日志文件的路径。

new_pool

字符串

在 ibm.spectrum_virtualize 1.11.0 中添加

指定要将卷迁移到的池。

仅当 type_of_migration=across_pools 时有效。

password

字符串

Spectrum Virtualize 存储系统的 REST API 密码。

如果未使用 token 来验证本地系统上的用户,则需要参数 usernamepassword

relationship_name

字符串

迁移关系名称。当 state=initiatestate=switch 时是必需的。

remote_cluster

字符串

指定远程集群的名称。

state=initiate 时是必需的。

remote_password

字符串

合作伙伴 Spectrum Virtualize 存储系统的 REST API 密码。

如果未使用 remote_token 来验证合作伙伴系统上的用户,则需要参数 remote_usernameremote_password

state=initiate 时有效。

remote_pool

字符串

指定应在合作伙伴 Spectrum Virtualize 存储系统上创建卷的池。

state=initiate 时是必需的。

remote_token

字符串

用于验证合作伙伴 Spectrum Virtualize 存储系统上用户的身份验证令牌。

要生成令牌,请使用 ibm_svc_auth 模块。当 state=initiate 时有效。

remote_username

字符串

合作伙伴 Spectrum Virtualize 存储系统的 REST API 用户名。

如果未使用 remote_token 来验证合作伙伴系统上的用户,则需要参数 remote_usernameremote_password

state=initiate 时有效。

remote_validate_certs

布尔值

验证合作伙伴 Spectrum Virtualize 存储系统的证书。

state=initiate 时有效。

选择

  • false ← (默认)

  • true

replicate_hosts

布尔值

将映射到源系统上源卷的主机复制到目标系统,并将主机映射到目标卷。用户可以使用 ibm_svc_host 和 ibm_svc_vol_map 模块创建主机并将主机映射到现有迁移关系的目标卷。

state=initiate 时有效。

选择

  • false ← (默认)

  • true

source_volume

字符串

指定要在迁移中使用的现有源卷的名称。

state=initiatestate=cleanuptype_of_migration=across_pools 时是必需的。

state

字符串

type_of_migration=across_clusters 时,指定迁移过程的不同状态。

initiate,在远程集群上创建卷;可选用于复制主机,以及创建并启动迁移关系。

switch,切换迁移关系方向,允许对目标卷进行写入访问。

cleanup,在“切换”后删除源卷和迁移关系。

选择

  • "initiate"

  • "switch"

  • "cleanup"

target_volume

字符串

指定要在目标系统上创建的卷的名称。

state=initiate 时是必需的。

token

字符串

用于验证 Spectrum Virtualize 存储系统上用户的身份验证令牌。

要生成令牌,请使用 ibm_svc_auth 模块。

type_of_migration

字符串

在 ibm.spectrum_virtualize 1.11.0 中添加

指定迁移类型,无论是跨池迁移还是跨集群迁移

选择

  • "across_pools"

  • "across_clusters" ← (默认)

username

字符串

Spectrum Virtualize 存储系统的 REST API 用户名。

如果未使用 token 来验证本地系统上的用户,则需要参数 usernamepassword

validate_certs

布尔值

验证证书。

选择

  • false ← (默认)

  • true

注释

注意

  • 此模块支持 check_mode

  • 此模块支持跨池卷迁移和跨集群卷迁移。

  • 如果用户未指定 type_of_migration,则模块默认执行跨集群迁移。

  • 对于 type_of_migration=across_pools,唯一允许的参数是 new_poolsource_volume 以及集群凭据。

示例

- name: Create a target volume
        Create a relationship
        Replicate hosts from source volume to target volume
        Start a relationship
  ibm.spectrum_virtualize.ibm_svc_manage_migration:
    source_volume: "src_vol"
    target_volume: "target_vol"
    clustername: "{{ source_cluster }}"
    remote_cluster: "{{ remote_cluster }}"
    token: "{{ source_cluster_token }}"
    state: initiate
    replicate_hosts: true
    remote_token: "{{ partner_cluster_token }}"
    relationship_name: "migrate_vol"
    log_path: /tmp/ansible.log
    remote_pool: "{{ remote_pool }}"
- name: Switch replication direction
  ibm.spectrum_virtualize.ibm_svc_manage_migration:
    relationship_name: "migrate_vol"
    clustername: "{{ source_cluster }}"
    token: "{{ source_cluster_token }}"
    state: switch
    log_path: /tmp/ansible.log
- name: Delete source volume and migration relationship
  ibm.spectrum_virtualize.ibm_svc_manage_migration:
    clustername: "{{ source_cluster }}"
    state: cleanup
    source_volume: "src_vol"
    token: "{{ source_cluster_token }}"
    log_path : /tmp/ansible.log
- name: Migration an existing vol from pool0 to pool1
  ibm.spectrum_virtualize.ibm_svc_manage_migration:
    clustername: "{{ source_cluster }}"
    token: "{{ source_cluster_token }}"
    log_path : /tmp/ansible.log
    type_of_migration : across_pools
    source_volume : vol1
    new_pool : pool1

作者

  • Rohit Kumar(@rohitk-github)

  • Shilpi Jain(@Shilpi-J)