创建和使用 Oracle® Solaris 区域

退出打印视图

更新时间: 2015 年 5 月
 
 

如何使用 ZFS 归档文件迁移非全局区域

您必须是全局管理员或在全局区域中具有相应授权的用户才能执行此过程。

本例介绍如何创建区域的归档文件,然后将该归档文件附加到另外一个系统。假定源和目标主机上的管理员能够访问共享 NFS 服务器进行临时文件存储。如果共享的临时空间不可用,可使用其他方式(如 scp 安全复制,一个远程文件复制程序)在源和目标计算机之间复制文件。如果需要提供口令或口令短语进行验证,scp 程序会请您提供口令或口令短语。

  1. 成为管理员。

    有关更多信息,请参见在 Oracle Solaris 11.2 中确保用户和进程的安全 中的使用所指定的管理权限

  2. 关闭要迁移的区域,在此过程中为 my-zone
    host1# zoneadm -z my-zone shutdown
  3. (可选)分离该区域。
    host1# zoneadm -z my-zone detach

    分离的区域现在处于已配置状态。下次引导全局区域时,该区域将不会自动引导。

  4. 导出区域配置。
    host1# mkdir /net/server/zonearchives/my-zone
    host1# zonecfg -z my-zone export > /net/server/zonearchives/my-zone/my-zone.zonecfg
  5. 创建 gzip ZFS 归档文件。
    host1# zfs list -H -o name /zones/my-zone
    rpool/zones/my-zone
    host1# zfs snapshot -r rpool/zones/my-zone@v2v
    host1# zfs send -rc rpool/zones/my-zone@v2v | gzip > /net/server/zonearchives/my-zone/my-zone.zfs.gz

    您可以选择使用压缩功能,这样通常会更快一些,因为在写入及后续读取归档文件期间,占用的 I/O 较少。有关更多信息,请参见在 Oracle Solaris 11.2 中管理 ZFS 文件系统

  6. 在新主机上,对该区域进行配置。
    host2# zonecfg -z my-zone -f /net/server/zonearchives/my-zone/my-zone.zonecfg

    将显示以下系统消息:

    my-zone: No such zone configured
    Use 'create' to begin configuring a new zone.
  7. (可选)查看配置。
    host2# zonecfg:my-zone> info
    zonename: my-zone
    zonepath: /zones/my-zone
    autoboot: false
    pool:
    net:
             address: 192.168.0.90
             physical: net0
  8. 对配置进行所需的任何调整。

    例如,新主机上的网络物理设备有所不同,或者属于配置组成部分的设备在新主机上可能具有不同的名称。

    host2# zonecfg -z my-zone
    zonecfg:my-zone> select net physical=net0
    zonecfg:my-zone:net> set physical=net100
    zonecfg:my-zone:net> end
  9. 提交配置并退出。
    zonecfg:my-zone> commit
    zonecfg:my-zone> exit
  10. 使用下列方法之一在新主机上安装区域。建议使用 install 子命令。
    • 安装区域,执行保证 install 成功所必需的最小更新:
      host2# zoneadm -z my-zone install -p -a /net/server/zonearchives/my-zone/my-zone.zfs.gz

      在此发行版中,您也可以对区域执行 attach,执行保证附加成功所必需的最小更新。如果允许更新,则会在执行 zoneadm attach 期间刷新发布者的目录。

      host2# zoneadm -z my-zone attach -u -a /net/server/zonearchives/my-zone/my-zone.zfs.gz
    • 安装区域,将区域中的所有软件包更新到与全局区域相兼容的最新版本。
      host2# zoneadm -z my-zone install -U -p -a /net/server/zonearchives/my-zone/my-zone.zfs.gz

      在此发行版中,您也可以对区域执行 attach,将区域中的所有软件更新到与全局区域相兼容的最新版本。

      host2# zoneadm -z my-zone install -U -a /net/server/zonearchives/my-zone/my-zone.zfs.gz
    • 向新主机附加区域,但不更新任何软件。
      host2# zoneadm -z my-zone attach -a /net/server/zonearchives/my-zone/my-zone.zfs.gz

    注 -  建议使用install子命令。在此发行版中,您也可以对区域执行attach,将区域中的所有软件更新到与全局区域相兼容的最新版本。

故障排除

如果存储对象包含预先存在的分区、zpool 或 UFS 文件系统,则 install 会失败并显示错误消息。要继续安装和覆盖所有预先存在的数据,请使用 zoneadm install 的相应 –x 选项。