zstack-cli命令 使用手册

Size: px
Start display at page:

Download "zstack-cli命令 使用手册"

Transcription

1 zstack-cli命令 使用手册 产品版本 ZStack 2.2

2

3 zstack-cli命令 使用手册 / 版权声明 版权声明 版权所有 上海云轴信息科技有限公司 2017 保留一切权利 非经本公司书面许可 任何单位和个人不得擅自摘抄 复制本文档内容的部分或全部 并不得以任 何形式传播 商标说明 ZStack商标和其他云轴商标均为上海云轴信息科技有限公司的商标 本文档提及的其他所有商标或注册商标 由各自的所有人拥有 注意 您购买的产品 服务或特性等应受上海云轴公司商业合同和条款的约束 本文档中的全部或部 分产品 服务或特性可能不在您的购买或使用范围之内 除非合同另有约定 上海云轴公司对本文 档内容不做任何明示或暗示的声明或保证 由于产品版本升级或其他原因 本文档内容会不定期进行更新 除非另有约定 本文档仅作为使用 指导 本文档中的所有陈述 信息和建议不构成任何明示或暗示的担保 I

4 zstack-cli命令 使用手册 / 目录 目录 版权声明... I 1 引言 系统架构 ZStack功能架构 ZStack资源结构 命令行工具 概览 查询 概览 架构 Architect 示例 硬件设施 区域 概览 清单 Inventory 操作 Operations 创建区域 CreateZone 删除区域 DeleteZone 查询区域 QueryZone 更新区域 UpdateZone 更改区域的可用状态 ChangeZoneState 标签 Tags 集群 概览 清单 操作 Operations 创建一个集群 CreateCluster 删除一个集群 DeleteCluster 查询集群 QueryCluster 更新集群 UpdateCluster 改变一个集群的可用状态 ChangeClusterState 标签 Tags 物理机 概览 清单 操作 Operations 查询物理机 QueryHost 更新物理机信息 UpdateHost 更新物理机启用状态 ChangeHostState 重连物理机 ReconnectHost 删除物理机 DeleteHost 获取物理机分配策略 GetHostAllocatorStrategies 获取云主机虚拟化技术类型 GetHypervisorTypes 更新KVM主机信息 UpdateKVMHost II

5 zstack-cli命令 使用手册 / 目录 添加KVM主机 AddKVMHost KVM运行Shell命令 KvmRunShell 标签 Tags 全局配置 Global Configurations 主存储 概览 清单 操作 Operations 删除主存储 DeletePrimaryStorage 查询主存储 QueryPrimaryStorage 向集群添加主存储 AttachPrimaryStorageToCluster 从集群卸载主存储 DetachPrimaryStorageFromCluster 重连主存储 ReconnectPrimaryStorage 获取主存储容量 GetPrimaryStorageCapacity 刷新主存储容量 SyncPrimaryStorageCapacity 更改主存储状态 ChangePrimaryStorageState 更新主存储信息 UpdatePrimaryStorage 清除主存储镜像缓存 CleanUpImageCacheOnPrimaryStorage 获取主存储分配策略清单 GetPrimaryStorageAllocatorStrategies 获取主存储类型列表 GetPrimaryStorageTypes 获取候选列表 GetPrimaryStorageCandidatesForVolumeMigration 跨主存储迁移云盘 PrimaryStorageMigrateVolume 本地存储 添加本地存储为主存储 AddLocalPrimaryStorage 查询本地存储资源引用 QueryLocalStorageResourceRef 迁移本地存储上存放的云盘 LocalStorageMigrateVolume 获取主机本地存储容量 GetLocalStorageHostDiskCapacity 获取迁移物理机 LocalStorageGetVolumeMigratableHosts NFS主存储 添加NFS主存储 AddNfsPrimaryStorage Shared Mount Point主存储 添加SMP主存储 AddSharedMountPointPrimaryStorage Ceph主存储 添加Ceph主存储 AddCephPrimaryStorage 查询Ceph主存储 QueryCephPrimaryStorage 为Ceph主存储添加mon节点 AddMonToCephPrimaryStorage 删除mon节点 RemoveMonFromCephPrimaryStorage 更新Ceph主存储mon节点 UpdateCephPrimaryStorageMon 标签 Tags 全局配置 Global Configurations 镜像服务器 概览 清单 操作 Operations 删除镜像服务器 DeleteBackupStorage 查询镜像服务器 QueryBackupStorage 重连镜像服务器 ReconnectBackupStorage 更改镜像服务器可用状态 ChangeBackupStorageState 获取镜像服务器存储容量 GetBackupStorageCapacity 获取镜像服务器类型列表 GetBackupStorageTypes...85 III

6 zstack-cli命令 使用手册 / 目录 更新镜像服务器信息 UpdateBackupStorage 从镜像服务器导出镜像 ExportImageFromBackupStorage 删除导出镜像 DeleteExportedImageFromBackupStorage 挂载镜像服务器至区域 AttachBackupStorageToZone 卸载已挂载镜像服务器 DetachBackupStorageFromZone 跨镜像服务器迁移镜像 BackupStorageMigrateImage 获取候选列表 GetBackupStorageCandidatesForImageMigration 镜像仓库 添加镜像仓库服务器 AddImageStoreBackupStorage 查询镜像服务器 QueryBackupStorage 更新镜像仓库服务器信息 UpdateImageStoreBackupStorage 重连镜像仓库服务器 ReconnectImageStoreBackupStorage 从镜像仓库回收磁盘空间 ReclaimSpaceFromImageStore Ceph镜像服务器 添加Ceph镜像服务器 AddCephBackupStorage 查询Ceph镜像服务器 QueryCephBackupStorage 更新Ceph镜像服务器mon节点 UpdateCephBackupStorageMon 为Ceph镜像服务器添加mon节点 AddMonToCephBackupStorage Ceph镜像服务器删除mon RemoveMonFromCephBackupStorage 标签 Tags 全局配置 Global Configurations 云资源池 云主机 概览 清单 操作 Operations 创建云主机 CreateVmInstance 删除云主机 DestroyVmInstance 恢复已删除云主机 RecoverVmInstance 彻底删除云主机 ExpungeVmInstance 查询云主机 QueryVmInstance 启动云主机 StartVmInstance 停止云主机 StopVmInstance 重启云主机 RebootVmInstance 暂停云主机 PauseVmInstance 恢复暂停的云主机 ResumeVmInstance 重置云主机 ReimageVmInstance 热迁移云主机 MigrateVm 获取可热迁移的物理机列表 GetVmMigrationCandidateHosts 获取云主机可加载ISO列表 GetCandidateIsoForAttachingVm 获取ISO可加载云主机列表 GetCandidateVmForAttachingIso 加载ISO到云主机 AttachIsoToVmInstance 卸载云主机上的ISO DetachIsoFromVmInstance 获取云主机可加载云盘列表 GetVmAttachableDataVolume 获取云主机可加载L3网络列表 GetVmAttachableL3Network 加载L3网络到云主机 AttachL3NetworkToVm 从云主机卸载网络 DetachL3NetworkFromVm 查询云主机网卡 QueryVmNic 设置云主机网卡限速 SetNicQoS 获取云主机网卡限速 GetNicQoS IV

7 zstack-cli命令 使用手册 / 目录 取消云主机网卡限速 DeleteNicQoS 获取镜像和L3依赖 GetInterdependentL3NetworksImages 设置云主机SSH Key SetVmSshKey 获取云主机SSH Key GetVmSshKey 删除云主机SSH Key DeleteVmSshKey 变更云主机密码 ChangeVmPassword 设置云主机控制台密码 SetVmConsolePassword 获取云主机控制台密码 GetVmConsolePassword 删除云主机控制台密码 DeleteVmConsolePassword 获取云主机控制台地址和访问协议 GetVmConsoleAddress 设置云主机Hostname SetVmHostname 获取云主机Hostname GetVmHostname 删除云主机Hostname DeleteVmHostname 获得云主机启动设备列表 GetVmBootOrder 指定云主机启动设备 SetVmBootOrder 获取目的地列表 GetCandidateZonesClustersHostsForCreatingVm 获取VM启动目的地列表 GetVmStartingCandidateClustersHosts 指定云主机IP SetVmStaticIp 删除云主机指定IP DeleteVmStaticIp 获取云主机能力 GetVmCapabilities 更新云主机信息 UpdateVmInstance 克隆云主机到指定物理机上 CloneVmInstance 设置云主机高可用级别 SetVmInstanceHaLevel 获取云主机高可用级别 GetVmInstanceHaLevel 取消云主机高可用 DeleteVmInstanceHaLevel 获取云主机Qga GetVmQga 设置云主机Qga SetVmQga 标签 Tags 全局配置 Global Configurations 镜像 概览 清单 操作 Operations 添加镜像 AddImage 删除镜像 DeleteImage 彻底删除镜像 ExpungeImage 查询镜像 QueryImage 恢复镜像 RecoverImage 修改镜像状态 ChangeImageState 更新镜像信息 UpdateImage 刷新镜像大小信息 SyncImageSize 获取镜像服务器候选 GetCandidateBackupStorageForCreatingImage 创建根云盘镜像 CreateRootVolumeTemplateFromRootVolume 标签 Tags 云盘 概览 云盘 清单 操作 Operations 创建云盘 CreateDataVolume V

8 zstack-cli命令 使用手册 / 目录 删除云盘 DeleteDataVolume 彻底删除云盘 ExpungeDataVolume 恢复云盘 RecoverDataVolume 开启或关闭云盘 ChangeVolumeState 从镜像创建云盘 CreateDataVolumeFromVolumeTemplate 从快照创建云盘 CreateDataVolumeFromVolumeSnapshot 获取云盘清单 QueryVolume 获取云盘格式 GetVolumeFormat 获取云盘支持的类型的能力 GetVolumeCapabilities 同步云盘大小 SyncVolumeSize 修改云盘属性 UpdateVolume 设置云盘限速 SetVolumeQoS 获取云盘限速 GetVolumeQoS 取消云盘网卡限速 DeleteVolumeQoS 获取云盘否能被加载 GetDataVolumeAttachableVm 挂载云盘到云主机上 AttachDataVolumeToVm 从云主机上卸载云盘 DetachDataVolumeFromVm 从云盘创建快照 CreateVolumeSnapshot 查询云盘快照 QueryVolumeSnapshot 查询快照树 QueryVolumeSnapshotTree 更新云盘快照信息 UpdateVolumeSnapshot 删除云盘快照 DeleteVolumeSnapshot 将云盘回滚至指定快照 RevertVolumeFromSnapshot 标签 Tags 计算规格 概览 清单 操作 Operations 创建云主机规格 CreateInstanceOffering 删除云主机规格 DeleteInstanceOffering 查询云主机规格 QueryInstanceOffering 更改云主机规格 ChangeInstanceOffering 更新云主机规格 UpdateInstanceOffering 更改云主机规格的启用状态 ChangeInstanceOfferingState 标签 Tags 云盘规格 概览 清单 操作 Operations 创建云盘规格 CreateDiskOffering 删除云盘规格 DeleteDiskOffering 查询云盘规格 QueryDiskOffering 更改云盘规格的启用状态 ChangeDiskOfferingState 更新云盘规格 UpdateDiskOffering 标签 Tags 网络 二层网络 概览 清单 操作 Operations VI

9 zstack-cli命令 使用手册 / 目录 创建普通二层网络 CreateL2NoVlanNetwork 删除二层网络 DeleteL2Network 查询二层网络 QueryL2Network 获取二层网络类型 GetL2NetworkTypes 挂载二层网络到集群 AttachL2NetworkToCluster 从集群上卸载二层网络 DetachL2NetworkFromCluster 更新二层网络 UpdateL2Network 创建二层Vlan网络 CreateL2VlanNetwork 查询二层Vlan网络 QueryL2VlanNetwork 创建VXLAN网络池 CreateL2VxlanNetworkPool 查询VXLAN网络资源池 QueryL2VxlanNetworkPool 创建VXLAN网络 CreateL2VxlanNetwork 查询VXLAN网络 QueryL2VxlanNetwork 创建Vni Range CreateVniRange 查询Vni Range QueryVniRange 删除Vni Range DeleteVniRange 标签 Tags 三层网络 概览 清单 操作 Operations 创建三层网络 CreateL3Network 删除三层网络 DeleteL3Network 查询三层网络 QueryL3Network 更新三层网络 UpdateL3Network 获取三层网络类型 GetL3NetworkTypes 改变三层网络状态 ChangeL3NetworkState 获取网络DHCP服务所用地址 GetL3NetworkDhcpIpAddress 从三层网络移除DNS RemoveDnsFromL3Network 向三层网络添加DNS AddDnsToL3Network 获取空闲IP GetFreeIp 检查IP可用性 CheckIpAvailability 获取IP网络地址容量 GetIpAddressCapacity 添加IP地址范围 AddIpRange 删除IP地址范围 DeleteIpRange 查询IP地址范围 QueryIpRange 更新IP地址范围 UpdateIpRange 通过网络CIDR添加IP地址范围 AddIpRangeByNetworkCidr 标签 Tags 云路由 概览 清单 操作 Operations 创建云路由 CreateVirtualRouterVm 查询云路由 QueryVirtualRouterVm 重连云路由 ReconnectVirtualRouter 创建云路由规格 CreateVirtualRouterOffering 查询云路由规格 QueryVirtualRouterOffering 查询云路由设备 QueryApplianceVm 获取云路由可加载外部网络 GetAttachablePublicL3ForVRouter VII

10 zstack-cli命令 使用手册 / 目录 云路由路由表 创建云路由路由表 CreateVRouterRouteTable 删除云路由路由表 DeleteVRouterRouteTable 查询云路由路由表 QueryVRouterRouteTable 获取路由器实时路由表 GetVRouterRouteTable 添加云路由路由条目 AddVRouterRouteEntry 删除云路由路由条目 DeleteVRouterRouteEntry 查询云路由路由条目 QueryVRouterRouteEntry 绑定路由表到云路由设备 AttachVRouterRouteTableToVRouter 解绑云路由路由表 DetachVRouterRouteTableFromVRouter 查询绑定关系 QueryVirtualRouterVRouterRouteTableRef 标签 Tags 全局配置 Global Configurations 网络服务 概览 安全组 虚拟IP 弹性IP 端口转发 负载均衡 IPsec 操作 Operations 获取网络服务类型 GetNetworkServiceTypes 查询网络服务模块 QueryNetworkServiceProvider 查询网络服务与三层网络引用 QueryNetworkServiceL3NetworkRef 挂载网络服务到三层网络 AttachNetworkServiceToL3Network 从三层网络卸载网络服务 DetachNetworkServiceFromL3Network 安全组 创建安全组 CreateSecurityGroup 删除安全组 DeleteSecurityGroup 查询安全组 QuerySecurityGroup 更新安全组 UpdateSecurityGroup 改变安全组状态 ChangeSecurityGroupState 挂载安全组到L3网络 AttachSecurityGroupToL3Network 从L3网络卸载安全组 DetachSecurityGroupFromL3Network 获取网卡列表清单 GetCandidateVmNicForSecurityGroup 添加虚拟机网卡到安全组 AddVmNicToSecurityGroup 从安全组删除虚拟机网卡 DeleteVmNicFromSecurityGroup 查询应用了安全组的网卡列表 QueryVmNicInSecurityGroup 添加规则到安全组 AddSecurityGroupRule 查询安全组规则 QuerySecurityGroupRule 删除安全组规则 DeleteSecurityGroupRule 虚拟IP 创建虚拟IP CreateVip 删除虚拟IP DeleteVip 查询虚拟IP QueryVip 更新虚拟IP UpdateVip 更改虚拟IP启用状态 ChangeVipState 获取虚拟IP所有业务端口列表 GetVipUsedPorts 弹性IP 创建弹性IP CreateEip VIII

11 zstack-cli命令 使用手册 / 目录 删除弹性IP DeleteEip 查询弹性IP QueryEip 更新弹性IP UpdateEip 更改弹性IP启用状态 ChangeEipState 获取可绑定指定弹性IP的云主机网卡 GetEipAttachableVmNics 绑定弹性IP AttachEip 解绑弹性IP DetachEip 端口转发 创建端口转发规则 CreatePortForwardingRule 删除端口转发规则 DeletePortForwardingRule 查询端口转发规则 QueryPortForwardingRule 更新端口转发规则 UpdatePortForwardingRule 改变端口转发规则的状态 ChangePortForwardingRuleState 获取云主机网卡列表 GetPortForwardingAttachableVmNics 挂载规则到虚拟机网卡上 AttachPortForwardingRule 从虚拟机网卡卸载规则 DetachPortForwardingRule 负载均衡 创建负载均衡器 CreateLoadBalancer 删除负载均衡器 DeleteLoadBalancerListener 查询负载均衡器 QueryLoadBalancerListener 获取云主机网卡 GetCandidateVmNicsForLoadBalancer 添加云主机网卡到负载均衡器 AddVmNicToLoadBalancer 从负载均衡器移除云主机网卡 RemoveVmNicFromLoadBalancer IPsec 创建IPsec连接 CreateIPsecConnection 删除IPsec连接 DeleteIPsecConnection 更新IPsec连接 UpdateIPsecConnection 查询IPsec连接 QueryIPSecConnection 更改IPsec连接状态 ChangeIPSecConnectionState 标签 Tags 平台管理 报警 概览 操作 Operations 智能报警 创建 媒体 Create Media 更新 媒体 Update Media 删除媒体 DeleteMedia 查询媒体 QueryMedia 改变媒体状态 ChangeMediaState 创建 报警动作 Create MonitorTriggerAction 查询 报警动作 Query TriggerAction 创建报警器 CreateMonitorTrigger 删除报警器 DeleteMonitorTrigger 查询报警器 QueryMonitorTrigger 更新报警器 UpdateMonitorTrigger 修改报警器状态 ChangeMonitorTriggerState 删除报警器动作 DeleteMonitorTriggerAction 查询报警器动作 QueryMonitorTriggerAction 更改报警器动作状态 ChangeMonitorTriggerActionState IX

12 zstack-cli命令 使用手册 / 目录 X 加载报警动作到报警器 AttachMonitorTriggerActionToTrigger 卸载报警动作 DetachMonitorTriggerActionFromTrigger 查询报警记录 QueryAlert 删除报警记录 DeleteAlert 获取报警条目 GetMonitorItem 查询虚拟机监控数据 PrometheusQueryVmMonitoringData 查询一个label有多少个value PrometheusQueryLabelValues 查询一个metric有多少个label PrometheusQueryMetadata 计费 概览 操作 Operations 创建资源价格 CreateResourcePrice 删除资源价格 DeleteResourcePrice 查询资源价格 QueryResourcePrice 计算账户花费 CalculateAccountSpending 定时器 概览 操作 Operations 创建定时任务 CreateSchedulerJob 删除定时任务 DeleteSchedulerJob 查询定时任务 QuerySchedulerJob 更新定时任务 UpdateSchedulerJob 创建定时器 CreateSchedulerTrigger 删除定时器 DeleleSchedulerTrigger 查询定时器 QuerySchedulerTrigger 更新定时器 UpdateSchedulerTrigger 添加定时任务到定时器 AddSchedulerJobToSchedulerTrigger 移除定时任务 RemoveSchedulerJobFromSchedulerTrigger 控制台服务 概览 操作 Operations 请求控制台访问地址 RequestConsoleAccess 查询控制台代理 QueryConsoleProxyAgent 重连控制台代理 ReconnectConsoleProxyAgent 用户管理 概览 操作 Operations 创建账户 CreateAccount 删除账户 DeleteAccount 查询账户 QueryAccount 更新账户 UpdateAccount 使用账户身份登录 LogInByAccount 获取账户配额使用情况 GetAccountQuotaUsage 查询账户资源引用 QueryAccountResourceRef 共享资源给账户 ShareResource 创建用户组 CreateUserGroup 删除用户组 DeleteUserGroup 查询用户组 QueryUserGroup 更新用户组 UpdateUserGroup 添加到用户组 AddUserToGroup...337

13 zstack-cli命令 使用手册 / 目录 绑定策略到用户组 AttachPolicyToUserGroup 将策略从用户组解绑 DetachPolicyFromUserGroup 从用户组中移除用户 RemoveUserFromGroup 创建用户 CreateUser 删除用户 DeleteUser 查询用户 QueryUser 更新用户 UpdateUser 使用用户身份登录 LogInByUser 绑定一条策略到用户 AttachPolicyToUser 将一条策略从用户解绑 DetachPolicyFromUser 绑定多条策略到用户 AttachPoliciesToUser 将多条策略从用户解绑 DetachPoliciesFromUser 创建策略 CreatePolicy 删除策略 DeletePolicy 查询策略 QueryPolicy 查询配额 QueryQuota 更新配额 UpdateQuota 获取资源名称 GetResourceNames 查询共享资源 QuerySharedResource 解除资源共享 RevokeResourceSharing 变更资源所有者 ChangeResourceOwner 检查API权限 CheckApiPermission 验证会话的有效性 ValidateSession 退出当前登录状态 LogOut 设置 概览 操作 Operations 全局设置 查询全局设置 QueryGlobalConfig 更新全局设置 UpdateGlobalConfig LDAP设置 创建LDAP绑定 CreateLdapBinding 删除LDAP绑定 DeleteLdapBinding 查询LDAP绑定 QueryLdapBinding 清理无效的LDAP绑定 CleanInvalidLdapBinding 添加LDAP服务器 AddLdapServer 删除LDAP服务器 DeleteLdapServer 查询LDAP服务器 QueryLdapServer 更新LDAP服务器 UpdateLdapServer 使用LDAP身份登录 LogInByLdap 系统全局相关 管理节点 概览 操作 Operations 查询管理节点 QueryManagementNode 获取当前版本 GetVersion 获取当前时间 GetCurrentTime 检查管理节点否能正常开始工作 IsReadyToGo 标签 概览 XI

14 zstack-cli命令 使用手册 / 目录 操作 Operations 创建系统标签 CreateSystemTag 查询系统标签 QuerySystemTag 更新系统标签 UpdateSystemTag 创建用户标签 CreateUserTag 查询用户标签 QueryUserTag 删除标签 DeleteTag 进度条 概览 操作 Operations 获取任务进度 GetTaskProgress 通知 概览 操作 Operations 删除通知 DeleteNotifications 查询通知 QueryNotification 更新通知状态 UpdateNotificationsStatus 查询可用资源 概览 操作 Operations 获取cpu和内存容量 GetCpuMemoryCapacity 垃圾回收 概览 操作 Operations 触发垃圾回收任务 TriggerGCJob 删除垃圾回收任务 DeleteGCJob 查询垃圾回收任务 QueryGCJob 许可证 概览 操作 Operations 获取许可证信息 GetLicenseInfo 获取许可证容量 GetLicenseCapabilities 重新加载许可证 ReloadLicense CLI实践教程 CLI搭建ZStack云平台 术语表 XII

15 zstack-cli命令 使用手册 / 1 引言 1 引言 产品版本 目前与本文档相对应的产品版本为 ZStack 2.2 读者对象 本文档详述了ZStack 2.2的zstack-cli命令行工具的使用规范 本文档主要适用于以下读者 架构设计师 开发工程师 测试工程师 项目实施人员 对ZStack有兴趣研究的相关人员 版本更新 /10/16主要更新 1. 公有网络创建云主机 2. 自定义DHCP模式 3. 新增系统网络 4. 云主机根云盘扩容 5. 浏览器添加镜像 目前支持ImageStore类型镜像服务器 6. 管理节点高可用 多网络配置 7. 跨Ceph存储数据迁移 8. 增强Ceph存储功能 9. 增强VDI功能 10.LDAP自定义过滤规则 11.增强裸机管理 12.单集群支持多类型主存储 目前支持本地存储+NFS/SMP类型 13.更换License支持本地上传 14.共享存储指定存储网络 增强云主机高可用 15.多个场景新增进度条 操作助手和帮助文档 优化UI交互 1

16 zstack-cli命令 使用手册 / 1 引言 16.优化部分业务逻辑 /08/14主要更新 1. VDI 2. 裸机管理 3. GPU透传 4. 智能报警 5. 集群挂载多个主存储 6. 新版定时器 7. 静态路由 8. User Data导入 9. 云路由加载多个公有网络 10.增量升级 11.优化部分业务逻辑 2

17 zstack-cli命令 使用手册 / 2 系统架构 2 系统架构 ZStack作为新一代产品级私有云管理平台 通过提供灵活完善的APIs来管理包括计算 存储和网络在内 的数据中心各种资源 2.1 ZStack功能架构 ZStack功能架构如图 1: ZStack功能架构所示 图 1: ZStack功能架构 ZStack提供了对企业数据中心基础设施的计算 存储 网络等资源的管理 底层支持KVM 和VMware虚拟化技术 支持DAS/NAS/SAN/DFS等存储类型 支持本地存储 NFS存储 SAN存 储 分布式块存储 支持VLAN/VXLAN等网络模型 ZStack的核心云引擎 使用消息总线RabbitMQ同数据库MariaDB及各服务模块进行通信 提供了云 主机管理 物理机管控 存储调度 网络功能 账号计费 实时监控等功能 ZStack还提供了Java 和Python的SDK 且支持Restful APIs进行资源调度管理 基于ZStack打造的专有云管理平台充分 体现专有云的4S优势 即 简单Simple 强壮Strong 弹性Scalable 智能Smart ZStack核心架构设计特点 1. 全异步架构 异步消息 异步方法 异步HTTP调用 ZStack使用消息总线RabbitMQ进行各服务的通信连接 在调用服务时 源服务发消息给目的 服务 并注册一个回调函数 然后立即返回 一旦目的服务完成任务 就会触发回调函数回 复任务结果 异步消息可以并行处理 ZStack服务之间采用异步消息进行通信 对于服务内部 一系列相关组件或插件 也通过 异步方法来调用 调用方法与异步消息一致 3

18 zstack-cli命令 使用手册 / 2 系统架构 ZStack采用的插件机制 给每个插件设置相应的代理程序 ZStack为每个请求设置了回 调URL在HTTP的包头 任务结束后 代理程序会发送应答给调用者的URL 基于异步消息 异步方法 异步HTTP调用这三种方式 ZStack构建了一个分层架构 保证了 所有组件均能实现异步操作 基于全异步架构机制 单管理节点的ZStack每秒可并发处理上万条API请求 还可同时管理上 万台服务器和数十万台云主机 2. 无状态服务 单次请求不依赖其他请求 ZStack的计算节点代理 存储代理 网络服务 控制台代理服务 配置服务等 均不依赖其 他请求 一次请求可包含所有信息 相关节点无须维护存储任何信息 ZStack使用一致性哈希环对管理节点 计算节点或者其他资源以UUID为唯一ID进行认证的哈 希环处理 消息发送者无需知道待处理消息的服务实例 服务也无须维护 交换相关的资源 信息 服务只需单纯的处理消息即可 ZStack管理节点间共享的信息非常少 两个管理节点即可满足高可用性和可扩展性需求 无状态服务机制让系统更为健壮 重启服务器不会丢失任何状态信息 数据中心的弹性扩展 和伸缩性维护更为简单 3. 无锁架构 一致性哈希算法 一致性哈希算法保证了同一资源的所有消息均被同一个服务实例来处理 这种聚合消息到特 定节点的方法 降低了同步与并行的复杂度 ZStack使用工作队列来避免竞争锁的问题 串行任务以工作队列的方式保存在内存中 工作 队列可对任意资源的任意操作进行并行处理来提高系统并行度 ZStack基于队列的无锁架构 使得任务可以简单地控制并行度 从而提升系统性能 4. 进程内微服务 微服务解耦 ZStack使用消息总线对各服务进行隔离控制 例如 云主机服务 身份认证服务 快照服 务 云盘服务 网络服务 存储服务等 所有的微服务都集合在管理节点的进程内 各服务 之间利用消息总线进行交互 所有消息发送到消息总线后 再通过一致性哈希环选择目的服 务进行转发处理 进程内微服务 以星状架构实现各服务独立运行 将高度集中的控制业务进行解耦 实现了 系统的高度自治和高度隔离 任何服务出现故障并不影响其他组件 可靠性与稳定性得到有 效保障 5. 全插件结构 插件支持横向扩展 4

19 zstack-cli命令 使用手册 / 2 系统架构 ZStack使用中任何新加入的插件对目前其他的插件没有任何影响 均独立自主提供服务 ZStack支持策略模式和观察者模式进行插件设计 策略插件会继承父类的接口然后执行具体 实现 观察者插件 会注册listener进行监控内部的业务逻辑的事件变化 当应用内部发现事 件时 插件会对此事件做出自响应 在插件自身的代码里执行相应的业务流 ZStack支持插件的横向扩展 云平台可以快速更迭 而整体系统架构依然健壮 6. 工作流引擎 顺序管理 出错回滚 ZStack工作流基于XML对每个工作流程进行清晰定义 在任何步骤出现错误均可按照原本执 行路径进行回滚 清理掉执行过程的垃圾资源 每个工作流还可以包含子工作流用于扩展业务逻辑 7. 标签系统 支持业务逻辑变更 增加资源属性 ZStack支持利用系统标签和插件机制对原本的业务逻辑进行扩展变更 使用标签机制 可对资源进行分组划分 支持对指定标签进行资源搜索 8. 瀑布流架构 支持资源的级联操作 ZStack使用Cascade Framework对资源管理进行瀑布状的级联操作 对资源进行卸载或者删 除时 会对相关的资源进行级联操作 资源也可以通过插件形式加入到瀑布框架中 加入或者退出瀑布框架 并不影响其他资源 级联机制使得ZStack的配置灵活轻便 快速满足客户资源配置的变更 9. 全自动化Ansible部署 Ansible无代理自动部署 ZStack使用Ansible进行无代理的全自动化安装依赖 配置物理资源 部署代理程序 全过程 对用户透明 无须额外干预 可透过重连代理程序对代理进行升级 10.全API查询 任意资源的任意属性均可查询 ZStack支持数百万个条件的资源查询 支持全API查询 支持任意组合 2.2 ZStack资源结构 ZStack在本质上云资源的配置管理系统 ZStack管理的相关资源在结构上如图 2: ZStack资源结 构所示 图 2: ZStack资源结构 5

20 zstack-cli命令 使用手册 / 2 系统架构 ZStack主要包括以下资源 区域 ZStack中最大的一个资源定义 包括集群 二层网络 主存储等资源 集群 一组物理机 计算节点 的逻辑集合 物理机 又称之为计算节点 主要为云主机实例提供计算 网络 存储等资源 主存储 用于存储云主机磁盘文件 包括 根云盘 数据云盘 根云盘快照 数据云盘快照 镜 像缓存等 的存储服务器 支持本地存储 NFS Ceph FusionStor Shared Mount Point等类 型 镜像服务器 用于保存云主机的镜像模板或ISO的存储服务器 二层网络 对应于一个二层广播域 进行二层相关的隔离 一般用物理网络的设备名称标识 支 持 L2NoVlanNetwork L2VlanNetwork VxlanNetworkPool VxlanNetwork类型 三层网络 云主机使用的网络配置 包含了IP地址范围 网关 DNS 网络服务等 计算规格 云主机的CPU 内存 磁盘带宽 网络带宽的数量或大小规格定义 云盘规格 云主机使用的云盘的大小规格定义 云主机 直接交付给用户使用的虚拟主机系统 ZStack的核心组成部分 镜像 云主机所使用的镜像模板文件 包括ISO和Image类型 根云盘 安装云主机操作系统的磁盘 用于支撑云主机的系统运行 数据云盘 为云主机提供了额外的存储空间 用于云主机的存储扩展 6

21 zstack-cli命令 使用手册 / 2 系统架构 快照 采用增量机制对云盘在特定时间点上的数据进行备份 网络服务模块 用于提供网络服务的模块 在UI界面已隐藏 网络服务 给云主机提供的各种网络服务 主要包括安全组 虚拟IP 弹性IP 端口转发 负载 均衡 IPsec隧道等 安全组 给云主机提供三层网络防火墙控制 云路由规格 指定云路由设备使用的CPU 内存 云路由镜像 管理网络 公有网络等资源定 义 云路由设备 为云主机提供分布式DHCP DNS SNAT 弹性IP 端口转发 负载均衡 IPsec 安全组等各种网络服务的定制云主机 ZStack资源间存在以下关系 父子关系 一个资源可以另一个资源的父亲或孩子 例如集群和物理机 物理机和云主机 兄弟关系 拥有同样父资源的资源为兄弟关系 例如集群和二层网络 集群和主存储 祖先和后裔关系 一个资源可以另一个资源的直系祖先或者直系后裔 例如集群和云主机 区 域和物理机 朋友关系 一些资源与资源之间没有以上三种关系 但这些资源在某些情境下需要分工合 作 这时它们朋友关系 例如主存储和镜像服务器 区域和镜像服务器 注: 主存储和镜像服务器的关系为 创建VM时 主存储会从镜像服务器下载复制云主机的镜像模板文件作为缓存 创建镜像时 主存储会将根云盘拷贝到镜像服务器保存为模板 ZStack资源均含有以下基本属性 UUID 通用唯一识别码UUIDv4 Universally Unique Identifier 来唯一标识一个资源 名称 用于标记资源的可读字符串 名称可以重复 一般为必选项 也称之为简介 用于概述资源 可选项 创建日期 资源创建的日期 上次操作日期 资源上次被更新的时间 ZStack资源一般都支持CRUD操作 创建 创建或者添加新的资源 查询 读取查询资源信息 更新 更新资源信息 7

22 zstack-cli命令 使用手册 / 2 系统架构 删除 删除资源 ZStack使用的瀑布框架级联机制 使得父资源被删除后 相关子资源和后裔资 源均会被删除 8

23 zstack-cli命令 使用手册 / 3 命令行工具 3 命令行工具 3.1 概览 zstack-cli供管理员调用所有zstack API的命令行工具 本手册中所有API示例都将用zstack-cli来 展示 ZStack基于SOA Service Oriented Architecture 面向服务架构 而设计 所有的ZStack操作本质 上都消息 例如 启动云主机的StartVmInstanceCLI命令 可以映射到APIStartVmInstanceMsg 的API消息 ZStack包含了内置的HTTP服务 将所有API消息封装于HTTP POST请求中 zstack-cli基于内置 的HTTP服务调用API请求进行相应的业务处理 9

24 zstack-cli命令 使用手册 / 4 查询 4 查询 4.1 概览 对于运营大规模云的企业用户来说 最大的挑战之一快速精准定位所需资源 例如 需要 从100,000台虚拟机中找到拥有EIP 的虚拟机 ZStack提供了丰富全面的API可以 用来查询所有资源的每一个域 具体参看ZStack官网文档 PD3002 ZStack 2.2 开发手册 的查 询API章节了解设计架构 4.2 架构 Architect 每个ZStack资源都依据属性 properties 组织成JSON格式的清单 inventory 例如 区域 Zone 清单 { } "createdate": "Nov 17, :27:47 PM", "description": "Test", "lastopdate": "Nov 20, :40:52 PM", "name": "Zone-1", "state": "Enabled", "type": "zstack", "uuid": "c3a228078e8c4f81ba7da0b16fb8d77f" 一个资源清单可以包含其他资源的清单 例如 一个L3网络清单包含IP范围 IP Range 清单 { 10 "category": "Public", "createdate": "Nov 17, :11:59 PM", "dns": [ " " ], "ipranges": [ { "createdate": "Nov 17, :18:47 PM", "endip": " ", "gateway": " ", "l3networkuuid": "a8b7054aaa9141f696afebdb1721e5c8", "lastopdate": "Nov 17, :18:47 PM", "name": "L3-Pub", "netmask": " ", "networkcidr": " /8", "startip": " ", "uuid": "df5b1ab49a53440bb44eb14c7ebfd50a" } ], "l2networkuuid": "16fecf5ff5754c3fb ec1fe645", "lastopdate": "Nov 17, :11:59 PM", "name": "L3-Pub", "networkservices": [ {

25 zstack-cli命令 使用手册 / 4 查询 }, { }, { } "l3networkuuid": "a8b7054aaa9141f696afebdb1721e5c8", "networkserviceprovideruuid": "3d46e adac0d90c86a5999ee", "networkservicetype": "Userdata" "l3networkuuid": "a8b7054aaa9141f696afebdb1721e5c8", "networkserviceprovideruuid": "3d46e adac0d90c86a5999ee", "networkservicetype": "Eip" "l3networkuuid": "a8b7054aaa9141f696afebdb1721e5c8", "networkserviceprovideruuid": "3d46e adac0d90c86a5999ee", "networkservicetype": "DHCP" } ], "state": "Enabled", "system": false, "type": "L3BasicNetwork", "uuid": "a8b7054aaa9141f696afebdb1721e5c8", "zoneuuid": "c3a228078e8c4f81ba7da0b16fb8d77f" 清单中的域 field 分为两类 原生域 primitive field 和嵌套域 nested field 原生域由一个基本类型 primitive type 构成的域 如数字 number 字符串 string 布尔 boolean 或日期 date 在上述示例中 uuid name system都原生域 嵌套域通常由代表其它资源数据类型组合而成 在上述示例中 ipranges就一个嵌套域 注: 除非特别声明 所有清单的所有域都可以被查询的 对于一个清单 通常都有对应的查询API 例如 QueryZone QueryHost QueryVm Instance等 查询API通常返回一个清单列表 在没有匹配结果时会返回一个空列表 一个查询的结果类似于 { "inventories": [ { "allocatorstrategy": "LeastVmPreferredHostAllocatorStrategy", "cpunum": 1, "cpuspeed": 0, "createdate": "Nov 17, :48:06 PM", "lastopdate": "Nov 17, :48:06 PM", "memorysize": , "name": "instance-offering", "sortkey": 0, "state": "Enabled", "type": "UserVm", "uuid": "32c3405f7bbf43009cfaf58cb41e39fc" } ], "success": true 11

26 zstack-cli命令 使用手册 / 4 查询 } 查询API由一个查询条件 query conditions 的列表和一些辅助参数 helper parameters 构成 查询API的 conditions 此参数可选 可选参数值 :ref:`queryco ndition <QueryCo ndition>`组成的列 表 允许查询API返 limit 回清单的最大数 true true 量 默认为1000 start 返回清单的起始编 号 默认为0 如果为true, 查询 count true 响应只返回清单数 false 量 默认为false 如果为true, 查询 replywithcount 响应会同时返回清 true 单及其数量 默认 false 为false 指定的域被作为排 sortby 序依据 这个域必 true 须原生域 如果sortBy不等 sortdirection 于null 这个域指 asc 定排序方向 默认 desc 为asc 原生域组成的一个 fields 列表 指定时, 查 询返回的清单只会 true 包含这些域 查询条件 Query Condition 查询API接受查询条件组成的列表 查询条件包含以下属性 12

27 zstack-cli命令 使用手册 / 4 查询 name 域名 此参数可选 =!= > >= < 比较操作 op <= 符 comparison in operator not in is null is not null like not like value 查询值 域名可以原生域的 也可以嵌套域的子域 或者扩展域 expanded field 的子 域 sub-field 请参看:ref:Join <query join> ; opsql语言中的比较操作符 操作符 CLI格式 = = 等于操作符; 字符串比较区分大小写!=!= 不等于操作符; 字符串比较区分大小写 > > 大于操作符; 字符串比较请参看MySQL的规范 >= >= 大于等于操作符; 字符串比较请参看MySQL的规范 < < 小于; 字符串比较请参看MySQL的规范 <= <= 小于或等于操作符; 字符串比较请参看MySQL的规范 in?= 检查一个值否在一个集合内 not in!?= 检查值否不在在一个集合内 is null =null NULL值测试 is not null!=null 非NULL值测试 like ~= 简单模式匹配 用%匹配任一数量的字符, 甚至零个字 符 用_匹配单个字符 13

28 zstack-cli命令 使用手册 / 4 查询 操作符 CLI格式 not like!~= 简单模式匹配的反式 用%匹配任一数量的字符, 甚至零 个字符 用_匹配单个字符 查询条件之间的关系逻辑与 logical AND, 当前版本只支持这种关系 例如 #用来查找为L3Network1的L3网络 并且这个网络有一个或多个IP范围的range1 QueryL3Network ipranges.name=range1 name=l3network1 CLI查询条件 有两种方式可以在CLI中使用查询条件 一种查询API的原始形式 QueryHost conditions='[{"name":"name", "op":"=", "value":"kvm1"}]' 另一种CLI格式 QueryHost name=kvm1 显然 CLI格式更直观更容易理解 CLI格式通常使用以下格式表示查询条件 condition_name(no_space)cli_comparison_operator(no_space)condition_value 在CLI中键入命令时, 你可以使用*Tab*来自动补全或者提示包括原生域 嵌套域以及扩展域在内的 可以被查询的域 admin >>>QueryVmInstance [Query Conditions:] allvolumes. cluster. instanceoffering. rootvolume. host. vmnics. image. zone. systemtag = usertag = allocatorstrategy= clusteruuid= cpunum= cpuspeed= createdate= defaultl3networkuuid= description= groupby= hostuuid= hypervisortype= imageuuid= instanceofferinguuid= lasthostuuid= lastopdate= memorysize= name= platform= rootvolumeuuid= state= = type= = uuid= zoneuuid= [Parameters:] count= sortby= fields= sortdirection= limit= start= replywithcount= = 联结 Join 扩展查询 expanded query 在ZStack中联结 Join 被称为扩展查询 expanded query 这种查询允许通过其它和要查询的 目标资源有关系的资源的域来查询 在ZStack的术语中这些域被称为扩展域 14

29 zstack-cli命令 使用手册 / 4 查询 例如 依据云主机的网卡 nic 拥有EIP的VIP为 来查询其L3网络 admin >>>QueryL3Network vmnic.eip.vipip= 上述示例中 L3网络的清单没有vmNic.eip.vipIp域 但此IP地址与云主机的网卡nic清单有关 系 而云主机的网卡nic清单又与EIP清单有关系 可以构造一个跨越三个清单的扩展查询 L3网络 清单 云主机nic清单 和EIP清单 基于此联结扩展查询条件 ZStack可以提供将近400万种查询条件以及无穷无尽的组合条件 以下构造的复杂示例 用于展示强大的查询功能 QueryVolumeSnapshot volume.vminstance.vmnics.l3network.l2network.attachedclusteruuids?=13238c8e e9160df4d3636be82 此查询用于查找云盘快照 此查询依赖云盘所在的云主机 云主机所在的L3网络的L2网络被挂载在 一个uuid为13238c8e e9160df4d3636be82的集群上 查询列表 Query List 当一个域列表的时候 可以包含类似int long string的基本类型或者嵌套清单 查询列表并不特殊 编写本章节只用来提醒大家 不要误认为只能用in?= 和not in!?= 来 查询一个列表域 实际上 我们可以使用所有的比较操作符 例如 #查找所有的拥有类似 *的DNS的L3网络 QueryL3Network dns~= % #查找所有的IP范围从 开始的L3网络 QueryL3Network ipranges.startip= 查询标签 Query Tags 在这一节中:ref:`tags <tag>`你会看到所有的资源都可以用系统标签 system tags 和用户标 签 user tags 它们都可以作为查询条件 ZStack使用两个特别的域: usertag 和 systemtag 来做查询 例如 QueryVmInstance usertag?=web-tier-vms QueryHost systemtag?=os::distribution::ubuntu managementip= 操作符> >= < <=只会返回拥有满足条件的标签的资源 15

30 zstack-cli命令 使用手册 / 4 查询 is not null会返回所有拥有标签的资源 is null会返回所有没有标签的资源!= not in not like会返回拥有的标签不满足条件的以及没有标签的所有资源 避免循环查询 Avoid Loop Query 大多数ZStack资源拥有双向的扩展查询 例如 主机拥有扩展至集群的扩展查询 而集群也拥有扩展至主机的扩展查询 这使得从任意方向 查询资源成为可能 但同时也可能导致查询循环 例如 QueryHost vminstance.vmnics.eip.vmnic.vminstance.uuid=d40e459b97db5a63dedaffcd05cf e3c2 就一个循环查询, 它和下面的查询作用相同 QueryHost vminstance.uuid=d40e459b97db5a63dedaffcd05cfe3c2 循环查询的行为未定义的 有可能得到也有可能得不到正确的结果 因此 请避免使用循环查 询 有效的使用查询 查询API很强大 可以通过不同的查询方式得到相同的结果 例如, 要查找运行在UUID为e497e90ab1e64db099eea93f998d525b的主机上的云主机 方式一 QueryVmInstance hostuuid=e497e90ab1e64db099eea93f998d525b 方式二 QueryVmInstance host.uuid=e497e90ab1e64db099eea93f998d525b 上述示例中 方式一更高效 因为它只用了VM表的原生域进行查询 方式二使用了联结VM表 和host表的扩展查询 当查询条件UUID的时候 建议使用原生域而非扩展域的子域进行查询 4.3 示例 普通查询 QueryVmInstance defaultl3networkuuid=7e52c8b7b6f94e4485a61f3f1a8bfe42 16

31 zstack-cli命令 使用手册 / 4 查询 QueryPortForwardingRule protocoltype=tcp 查询计数 QueryVmInstance defaultl3networkuuid=7e52c8b7b6f94e4485a61f3f1a8bfe42 count=true QueryPortForwardingRule protocoltype=tcp count=true 带计数的普通查询 QueryVmInstance defaultl3networkuuid=7e52c8b7b6f94e4485a61f3f1a8bfe42 replywi thcount=true QueryPortForwardingRule protocoltype=tcp replywithcount=true 设置限制 QueryVmInstance defaultl3networkuuid=7e52c8b7b6f94e4485a61f3f1a8bfe42 limit=3 QueryPortForwardingRule protocoltype=tcp limit=2 设置条件 QueryVmInstance name~=clone QueryPortForwardingRule vipportstart?=23,24 设置起始 QueryVmInstance imageuuid=4b5e37a47a402977a3b285ccecf9c0c1 start=2 limit=3 QueryPortForwardingRule protocoltype=tcp start=1 limit=3 选择域 QueryVmInstance fields=name,uuid clusteruuid=5cac8330d5ab4c2ea393b8c3986c8850 QueryPortForwardingRule fields=uuid,privateportstart,privateportend vipportstart=23 vipport End=23 排序 QueryVmInstance clusteruuid=5cac8330d5ab4c2ea393b8c3986c8850 sortby=createdate sortdirection=asc QueryPortForwardingRule sortby=privateportstart sortdirection=desc 17

32 zstack-cli命令 使用手册 / 5 硬件设施 5 硬件设施 5.1 区域 概览 区域 ZStack中最大的一个资源定义 包括集群 二层网络 主存储等资源 在数据中心中 区域一般对应了一个机房 区域定义了一个可见的边界 同一区域内的子资源互相可见并且可以形成某种关系 但不同区域内 的子资源不可见的 不能互相发生关系 如图 3: 区域资源结构所示 区域中的资源以如下形式组织 图 3: 区域资源结构 18

33 zstack-cli命令 使用手册 / 5 硬件设施 规划区域时 需注意 1. 同一个物理二层广播域中的物理机应该在同一个区域 可属于同一个集群或分属于多个集群 2. 同一个物理二层广播域不应该跨越多个区域 而应该映射为单个区域的二层网络 3. 同一个主存储不应该跨越多个区域 而应该映射为单个区域的主存储 4. 一个数据中心可以有多个区域 5. 一个区域可以挂载一个或多个镜像服务器 一个区域中的资源 例如主存储 只能访问挂载在同一区域中的镜像服务器 一个镜像服务器可以从一个区域中卸载 卸载后 区域中的资源不能再看见该镜像服务器 当数据中心的网络拓扑改变导致一个镜像服务器不能再被一个区域中的资源访问时 可以将 镜像服务器从区域中卸载 19

34 zstack-cli命令 使用手册 / 5 硬件设施 清单 Inventory 属性 Properties uuid 请参见资源属性 name 请参见资源属性 description 请参见资源属性 state 请参见资源属性 createdate 请参见资源属性 lastopdate 请参见资源属性 type 保留域 Enabled Disabled 用户标签, 请参 签(CreateUserTag) 资源类型 ZoneVO 系统标签, 请参 资 源类型 ZoneVO 示例 { } "createdate": "Oct 16, :11:40 PM", "description": "", "lastopdate": "Oct 24, :52:31 AM", "name": "SH", "state": "Enabled", "type": "zstack", "uuid": "61092e77aedd41f0b8857b40652e5b1e" 可用状态 State 区域拥有两种可用状态 启用 Enabled 和禁用 Disabled 当改变一个区域的可用状态时, 这个操作会被迭代 cascaded 到归属于这个区域的所有的集群 和物理机 20

35 zstack-cli命令 使用手册 / 5 硬件设施 例如 禁用一个区域会导致所以这个区域中的集群和物理机被禁用 由于在已经禁用的物理机上 不能创建或者启动云主机 禁用一个区域可以避免在这个区域中创建或者启动任何云主机 但不 影响已有的云主机正常使用及重启操作 操作 Operations 创建区域 CreateZone 管理员可以使用CreateZone命令来创建一个新的区域 例如 CreateZone name='san Jose Zone' description='this is a zone in San Jose datacenter' name 资源 请参 见 资源属性 资源uuid 请参 resourceuuid 签#CreateUserTag# 见 创建#Create Resources# description type 资源 请参 见 资源属性 保留域 请不要 使用它 资源类型 ZoneVO 系统标签 请参 资源类型 ZoneVO 21

36 zstack-cli命令 使用手册 / 5 硬件设施 删除区域 DeleteZone 管理员可以使用DeleteZone命令来删除一个区域 例如 DeleteZone uuid=28e b45f99842ababfc3f976d 参数 parameters uuid 区域 uuid deletemode Permissive 请参见 删除资 源#DeleteResources# Enforcing 源类型 ZoneVO 资源类型 ZoneVO 查询区域 QueryZone 管理员可以使用QueryZone来查询区域 例如 QueryZone name=zone1 QueryZone vminstance.uuid=13238c8e e9160df4d3636be82 原生域查询 请参见zone inventory 嵌套域和扩展域查询 Nested And Expanded Fields of Query 22 域 Field 清单 Inventory 其实支持版本 vminstance vm inventory 属于这个区域的云主机 cluster cluster inventory 属于这个区域的集群

37 zstack-cli命令 使用手册 / 5 硬件设施 域 Field 清单 Inventory host host inventory 属于这个区域的物理机 primarystorage primary storage inventory 属于这个区域的主存储 l2network L2 network inventory 属于这个区域的L2网络 l3network L3 network inventory 属于这个区域的L3网络 backup storage 属于这个区域的镜像服 inventory 务器 backupstorage 其实支持版本 更新区域 UpdateZone 管理员可以使用UpdateZone命令来更新区域的名称 和标签 例如 UpdateZone uuid=61092e77aedd41f0b8857b40652e5b1e name=update uuid 区域 uuid name description 资源 请参 签#CreateUserTag# 见 资源属性 资源 请参 见 资源属性 用户标签 请参 资源类型 ZoneVO 资源类型 ZoneVO 23

38 zstack-cli命令 使用手册 / 5 硬件设施 更改区域的可用状态 ChangeZoneState 管理员可以使用ChangeZoneState命令来改变区域的可用状态 例如 ChangeZoneState stateevent=enable uuid= f2645de9372f11b13a48223 uuid 区域 uuid 状态触发事件 enable 改变 可用状态为启 stateevent enable 用 Enabled disable disable 改变 可用状态为禁 用 Disabled 用户标签 请参 源类型 ZoneVO 资源类型 ZoneVO 标签 Tags 管理员可以在一个区域上用resourceType=ZoneVO创建用户标签 例如 CreateUserTag resourcetype=zonevo resourceuuid=0cd1ef8c9b9e0ba82e0cc9cc17226a26 tag=privatezone 系统标签 System Tags 保留容量 Reserved Capacity 24

39 zstack-cli命令 使用手册 / 5 硬件设施 标签 Tag host::reservedmemory 请参见 物理机容量 ::{capacity} 保留 Host Capacity 示例 host::reservedmemory ::1G Reservation 5.2 集群 概览 集群 一组物理机 计算节点 的逻辑集合 在数据中心中 一个集群一般对应了一个机架 规划集群时 需注意 1. 集群内所有物理机须拥有相同的操作系统 2. 集群内所有物理机须拥有相同的网络配置 3. 集群内所有物理机须能够访问相同的主存储 4. 集群需挂载主存储 二层网络后 才可提供云主机服务 5. 集群的规模 也就每个集群中可以包含物理机的最大数量 没有限制 集群和各个资源之间的关系定义如下 集群 区域 ZStack支持多集群操作 可在一个区域内创建多个集群 新增的物理机可以按需添加到不同的集群 之中 集群 主存储和二层网络 集群中可以加载或卸载主存储和二层网络 它们之间的结构关系如图 4: 集群 主存储 二层网络 关 系所示 图 4: 集群 主存储 二层网络 关系 25

40 zstack-cli命令 使用手册 / 5 硬件设施 注: 主存储和二层网络加载到集群时需注意 1. 集群 主存储 一个主存储可以加载到多个集群 一个集群可以挂载多个主存储 集群挂载多个本地存储时 务必在添加物理机以及添加主存储之前 提前在物理机对 应URL上做好分区 确保每个本地存储部署在独占的逻辑卷或物理磁盘上 主存储可以被所在集群中的所有物理机访问 如果数据中心的网络拓扑发生改变导致主存储不能被集群中的物理机继续访问时 主 存储可以从集群卸载 2. 集群 二层网络 一个集群可以加载一个或多个二层网络 一个二层网络可以挂载到多个集群 26

41 zstack-cli命令 使用手册 / 5 硬件设施 集群可以挂载VxlanNetworkPool VxlanNetworkPool下不同的Vni可用于创建不同 的VxlanNetwork 一个网卡只能创建一个NoVlanNetwork 对于VlanNetwork 不同VLAN ID代表不同的二层网络 如果数据中心的网络拓扑发生改变导致集群中的物理机不再在二层网络所代表的物理 二层广播域中 二层网络也可以从集群卸载 集群 镜像服务器 集群与镜像服务器没有直接依赖关系 一个镜像服务器可以为多个集群提供服务 注: 集群中所加载的主存储和镜像服务器具有相关性 例如 目前Ceph主存储只能与Ceph镜像服务器一同工作 如果用户只添加了本地镜像仓 库与Ceph主存储 云主机不能创建成功 主存储 PS 和镜像服务器 BS 的相关性如表 1: 主存储与镜像服务器的关系所示 表 1: 主存储与镜像服务器的关系 PS\BS ImageStore Sftp Ceph FusionStor LocalStorage NFS Shared Mount Point Ceph FusionStor 清单 属性 uuid 请参见资源属性 name 请参见资源属性 description 请参见资源属性 27

42 zstack-cli命令 使用手册 / 5 硬件设施 hypervisortype state 请参见 cluster hypervisor type KVM Enabled 请参见资源属性 Disabled 包含集群的区 zoneuuid 域uuid 请参见 zone createdate 请参见资源属性 lastopdate 请参见资源属性 type 保留域 签#CreateUserTag# 系统标签 请参 签#CreateSystemTag# 示例 { } "inventories": { "createdate": "Oct 30, :50:00 PM", "description": "", "hypervisortype": "KVM", "lastopdate": "Oct 30, :50:00 PM", "name": "Cluster-1", "state": "Enabled", "type": "zstack", "uuid": "5c b1c43219de14df7545f24d0", "zoneuuid": "e59b71e99d8a4ea1952b578388b8cd1d" } 虚拟机管理程序类型 Hypervisor Type 虚拟机管理程序类型指明了哪种虚拟机管理程序 操作系统 operating system 被安装在集群中 的物理机上 28

43 zstack-cli命令 使用手册 / 5 硬件设施 可用状态 State 集群有两种可用状态 启用 Enabled 和禁用 Disabled 类似于 zone 当改变集群的可用 状态时 操作会被迭代到集群中的所有物理机 例如 禁用一个集群也会禁用集群中的所有物理 机 操作 Operations 创建一个集群 CreateCluster 管理员可以使用CreateCluster命令来创建一个集群 例如 CreateCluster name=cluster1 hypervisortype=kvm zoneuuid=1b830f5bd1cb469b821b4 b77babfdd6f zoneuuid 父区域的uuid name 资源 请参 见 资源属性 资源uuid 请参 resourceuuid 签#CreateUserTag# 资源描 description 述description 请 参见 资源属性 hypervisortype type 请参见 cluster hypervisor type 保留域 请不要使 签#CreateUserTag#; 用 用户标签 请参 资源类型 ClusterVO 签#CreateSystemTag#; 29

44 zstack-cli命令 使用手册 / 5 硬件设施 资源类型 ClusterVO 删除一个集群 DeleteCluster 管理员可以使用DeleteCluster命令来删除一个集群 例如 DeleteCluster uuid=c1bd173d5cd84f0e9e7c47195ae27ec6 uuid 集群的uuid deletemode 请参见 删除 资源#Delete Permissive Enforcing Resources# 用户标签 请参 签#CreateUserTag# 资源类型 ClusterVO 资源类型 ClusterVO 查询集群 QueryCluster 管理员可以使用QueryCluster命令来查询集群 例如 QueryCluster hypervisortype=kvm QueryCluster primarystorage.availablecapacity> 原生域查询 Primitive Fields of Query 请参见 cluster inventory 30

45 zstack-cli命令 使用手册 / 5 硬件设施 嵌套和扩展查询 Nested And Expanded Fields of Query 域 Field 清单 Inventory zone 请参见 zone inventory 父区域 parent zone host 请参见 host inventory 属于这个集群的物理机 vminstance 请参见 vm inventory 属于这个集群的云主机 l2network 请参见 L2 network 这个集群挂载的L2网络 inventory primarystorage 请参见 primary 这个集群挂载的主存储 storage inventory 更新集群 UpdateCluster 管理员可以使用UpdateCluster命令来查询集群 例如 UpdateCluster uuid=26aad17353dd4de0ac7bc5540d76da23 name=test uuid 集群的uuid name 资源 请参 述description 请 见 资源属性 资源描 description 参见 资源属性 源类型 ClusterVO 资源类型 ClusterVO 31

46 zstack-cli命令 使用手册 / 5 硬件设施 改变一个集群的可用状态 ChangeClusterState 管理员可以使用UpdateCluster命令来查询集群 例如 ChangeClusterState uuid=26aad17353dd4de0ac7bc5540d76da23 stateevent=enable uuid 集群的uuid stateevent 可用状态触发事件 enable disable 源类型 ClusterVO 资源类型 ClusterVO 标签 Tags 管理员可以使用resourceType=ClusterVO在集群上创建用户标签 例如 CreateUserTag resourcetype=clustervo resourceuuid=80a979b9e a22a4cca8c1dff43 tag=securecluster 系统标签 System Tags 保留容量 Reserved Capacity 标签 Tag host::reservedmemory 请参见 物理机容量 ::{capacity} 保留 Host Capacity 示例 host::reservedmemory ::1G Reservation 32

47 zstack-cli命令 使用手册 / 5 硬件设施 5.3 物理机 概览 物理机 也称之为计算节点 主要为云主机实例提供计算 网络 存储等资源的物理服务器 如图 5: 物理机所示 图 5: 物理机 物理机ZStack云管理平台里的核心资产 云主机运行在物理机之上 清单 属性 uuid 请参见 资源属性 name 请参见 资源属性 description 请参见 资源属性 zoneuuid 所在区域的uuid 请参见 zone clusteruuid 父集群的uuid 请参见 cluster managementip 请参见 management ip 33

48 zstack-cli命令 使用手册 / 5 硬件设施 hypervisortype 请参见 cluster hypervisor type state 请参见 state Enabled Disabled Maintenance status 请参见 status Connecting Connected Disconnected createdate 请参见 资源属性 lastopdate 请参见 资源属性 示例 { } "inventories": { "availablecpucapacity": 37, "availablememorycapacity": , "clusteruuid": "967a353c dab9312cf3033a98c", "cpunum": 4, "cpusockets": 1, "createdate": "Oct 30, :02:06 PM", "description": "", "hypervisortype": "KVM", "lastopdate": "Oct 31, :41:19 AM", "managementip": " ", "name": "Host-1", "sshport": 22, "state": "Enabled", "status": "Connected", "totalcpucapacity": 40, "totalmemorycapacity": , "username": "root", "uuid": "a4049fd68e1b487f8f91786d17ad37e1", "zoneuuid": "e59b71e99d8a4ea1952b578388b8cd1d" } 管理IP Management IP ZStack管理节点 ZStack management nodes 使用管理IP访问主机操作系统 虚拟机管理系 统 根据虚拟机管理系统类型的不同 可以有或者没有管理IP 例如 在VMWare中 访问ESXi主机的官方途径使用VCenter服务器 VCenter Server 在 这种情况下就没有使用管理IP的必要 34

49 zstack-cli命令 使用手册 / 5 硬件设施 然而 在KVM主机中 ZStack需要通过管理IP来部署代理程序 agent 到Linux操作系统中 管理网络 Management Network 虽不做强制限定 推荐使用一个或者多个专用的子网 dedicated subnets 作为管理网络 由于管理节点需要通过管理网络发送命令到物理机和其他的装置 运行ZStack管理节点的Linux 服务器必须能够访问管理网络 在以后的章节中 当谈到特殊应用虚拟机 appliance VMs 的时候 我们会将再次看到管理网 络 在ZStack当前版本中这个特殊应用虚拟机 ref:virtual router <virtual router> 可用状态 State 物理机有三种可用状态 Enabled 该状态下 允许在该物理机上创建 启动云主机或迁移云主机到该物理机上 Disabled 该状态下 不允许在该物理机上创建 启动云主机或迁移云主机到该物理机上 PreMaintenance 指示物理机进入维护状态的中间状态 请参见 maintenance mode Maintenance 该状态表明该物理机在维护状态中 物理机的可用状态转换图如图 6: 物理机可用状态转换图所示 图 6: 物理机可用状态转换图 35

50 zstack-cli命令 使用手册 / 5 硬件设施 维护模式 Maintenance Mode 当管理员需要实施一些维护工作时可以将物理机设置为维护模式 例如 安装更多的内存 当主 机在维护模式中 不管API操作还ZStack内部任务都不会再在物理机上执行任何操作 也就 说 类似启动云主机 API 停止云主机 API 挂载主存储 内部 的任务都不能在该物理机 上进行 ZStack将维护模式设计为两个可用模式 PreMaintenance和Maintenance 主机进入维护 模式的顺序如下 1. 改变host的可用状态为PreMaintenance 在这个阶段 ZStack会尝试将所有运行在该物理机上 的云主机迁移到其他合适的物理机上 如果迁移失败 ZStack将停止这些云主机 2. 当所有云主机都被迁移或者停止后 ZStack会将物理机的可用状态改变为Maintenance 这 时 管理员可以开始在物理机上实施维护工作 维护工作结束后 管理员可以通过将物理机设置为Enabled或Disabled 以使物理机退出维护模 式 连接状态 Status 连接状态反应了物理机和管理节点之间命令通道 command channel 的状态 命令通道 ZStack管理节点和物理机通信并只会其执行操作的途径 例如 在KVM管理节点中 命令通道ZStack管理节点和运行在物理机上的Python代 理 agents 之间的HTTP连接 36

51 zstack-cli命令 使用手册 / 5 硬件设施 在VMWare管理节点中 命令通道VCenter服务器和 ESXi主机之间的连接 物理机有三种连接状态 Connecting 在这种状态时 一个ZStack管理节点正在尝试建立自己和物理机之间的命令通道 这时还不能在 物理机上执行任何操作 Connected 在这种状态时 ZStack管理节点和物理机之间的命令通道已经被成功建立 可以在物理机上执行 操作 只有在这个状态下物理机才能创建和启动云主机 Disconnected 在这种状态时 ZStack管理节点和物理机之间的命令通道丢失 这时不能在物理机上执行任何操 作 在ZStack管理节点启动过程中会开始和所有他所管理的物理机建立命令通道 在这个阶段 物理机的状态Connecting 命令通道建立完成后 物理机的连接状态会变为Connected 如果管理节点建立命令通道失败 或者之后某个时候命令通道丢失了 命令通道所对应的物理 机连接状态会变为Disconnected ZStack管理节点会周期性的向物理机发送ping命令 ping commands 以检查命令通道的健康状 态 一旦某个物理机响应失败 或者ping命令超时 物理机的连接状态就会变为Disconnected 物理机的连接状态转换图如图 7: 物理机连接状态转换图所示 图 7: 物理机连接状态转换图 37

52 zstack-cli命令 使用手册 / 5 硬件设施 可用状态 State 和连接状态 Status 可用状态和连接状态之间没有直接关系 可用状态代表了管理员针对物理机的意愿 而连接状态代 表了物理机的通信状况 操作 Operations 查询物理机 QueryHost 管理员可以使用QueryHost来查询主机 例如 QueryHost managementip= QueryHost vminstance.vmnics.ip= 原生域查询 Primitive Fields of Query 请参见 host inventory 嵌套和扩展域查询 Nested And Expanded Fields of Query 38 域 Field 清单 Inventory zone zone inventory 所在区域 cluster cluster inventory 父集群 vminstance VM inventory 这个物理机上运行的所 有云主机

53 zstack-cli命令 使用手册 / 5 硬件设施 更新物理机信息 UpdateHost 管理员可以使用UpdateHost命令来更新物理机的名称 和标签等参数 UpdateHost name=test uuid=5e0f90f7e44e471c96cf878f30301b42 uuid 物理机的uuid name 资源 请参 述description 请 见 资源属性 资源描 description 参见 资源属性 managementip 源类型 HostVO 资源类型 HostVO 更新物理机启用状态 ChangeHostState 管理员可以使用ChangeHostState命令来改变一个物理机的可用状态 例如 ChangeHostState stateevent=premaintain uuid=2893ce85c43d4a3a8d78f414da39966e uuid 物理机的uuid stateevent 可用状态触发事 enable 件 请参见 state disable 39

54 zstack-cli命令 使用手册 / 5 硬件设施 maintain 源类型 HostVO 资源类型 HostVO 重连物理机 ReconnectHost 管理员可以使用ReconnectHost来重新建立ZStack管理节点和主机间的命令通道 例如 ReconnectHost uuid=2893ce85c43d4a3a8d78f414da39966e uuid 物理机的uuid 源类型 HostVO 资源类型 HostVO 40

55 zstack-cli命令 使用手册 / 5 硬件设施 删除物理机 DeleteHost 管理员可以使用DeleteHost来删除一个物理机 例如 DeleteHost uuid=2893ce85c43d4a3a8d78f414da39966e uuid 物理机的uuid deletemode 请参见 删除 资源#Delete Permissive Enforcing Resources# 源类型 HostVO 资源类型 HostVO 获取物理机分配策略 GetHostAllocatorStrategies 管理员可以使用GetHostAllocatorStrategies来获取物理机分配策略 返回示例 { } "hostallocatorstrategies": [ "DefaultHostAllocatorStrategy", "LeastVmPreferredHostAllocatorStrategy" ] 源类型 HostVO 41

56 zstack-cli命令 使用手册 / 5 硬件设施 资源类型 HostVO 获取云主机虚拟化技术类型 GetHypervisorTypes 管理员可以使用GetHypervisorTypes来获取云主机虚拟化技术类型 返回示例 { } "hypervisortypes": [ "KVM", "ESX" ] 源类型 HostVO 资源类型 HostVO 42

57 zstack-cli命令 使用手册 / 5 硬件设施 更新KVM主机信息 UpdateKVMHost 管理员可以使用UpdateKVMHost更新KVM主机信息 返回示例 UpdateKVMHost name=test uuid=5e0f90f7e44e471c96cf878f30301b42 username 用户名 password 密码 sshport ssh端口号 uuid 物理机uuid name 资源名称 description 资源的详细 managementip 管理节点IP 源类型 HostVO 资源类型 HostVO 添加KVM主机 AddKVMHost 管理员可以使用AddKVMHost添加KVM主机 返回示例 AddKVMHost username=root clusteruuid=2379a0d00ae242df91189f6d7d9e23e3 name=test managementip= password=password sshport=22 username ssh用户名 43

58 zstack-cli命令 使用手册 / 5 硬件设施 password ssh密码 sshport ssh端口号 name 资源名称 description 资源的详细 managementip 管理节点IP clusteruuid 集群uuid resourceuuid 资源uuid 源类型 HostVO 资源类型 HostVO KVM运行Shell命令 KvmRunShell 管理员可以使用KvmRunShell使KVM运行Shell命令 返回示例 KvmRunShell hostuuids=5e0f90f7e44e471c96cf878f30301b42 script=ls hostuuids 目标机器uuid script 脚本 源类型 HostVO 44

59 zstack-cli命令 使用手册 / 5 硬件设施 资源类型 HostVO 标签 Tags 管理员可以使用resourceType=HostVO在物理机上创建用户标签 例如 CreateUserTag tag=largememoryhost resourceuuid=0a9f95a b5118e15bff32 resourcetype=hostvo 系统标签 System Tags 物理机容量保留 Host Capacity Reservation 管理员可以使用系统标签在物理机上保留一部分内存供系统软件使用 ZStack提供了各种系统标签 和全局配置 以达到更好粒度的内存保留策略控制 Hypervisor Global Level 如果没有其他层次的配置 全局等级配置 global level :ref:`kvm.reservedmemory`会应用到 所有的KVM物理机 Zone Level 请参见 zone host::reservedmemory 如果没有其他层次的配置 这个系统标签的值会应用到所 有这个区域中的物理机上 这个值覆盖全局配置等级 global level Cluster Level 请参见 cluster host::reservedmemory 如果没有物理机层次的配置 这个系统标签的值会 应用到所有这个集群中的物理机上 这个值覆盖区域等级配置 zone level 和全局等级配 置 global level Host Level 标签 示例 reservedmemory:: {capacity} 这个物理机上保留的 reservedmemory::1g 内存 这个配置覆盖所有上面的配置等级 45

60 zstack-cli命令 使用手册 / 5 硬件设施 例如, 假设有三个KVM物理机zone->cluster1->{host1, host2, host3} 默认的内存保留被默认 为512M的全局配置 global configuration :ref:`kvm.reservedmemory`控制 如果在zone1上创建一个系统标签 host::reservedmemory::1g 所有3个物理机的内存保留都会 被变成1G 如果再在cluster1 上创建一个系统标签host::reservedMemory::2G 所有3个物理机的内存保留都 会变成2G 最后在host1上创建一个系统标签reservedMemory::3G host1的内存保留将变 成3G 但host2和host3还2G 主机元数据信息 Host Meta Data Information 标签 示例 如果标签存在, 物理机 capability:livesnapshot 上的虚拟机管理程序支 持在线云盘快照 live capability:livesnapshot volume snapshot os::distribution::{distrib 物理机的操作系统提供 os::distribution ution} os::release::{release} os::version::{version} 商 物理机的操作系统发布 ::Ubuntu os::release::trusty 物理机的操作系统版本 os::version::14.04 版本 KVM主机元数据信息 KVM Host Meta Data Information 标签 示例 qemu-img::version:: {version} qemu-img 版本 qemu-img::version::2.0.0 libvirt::version:: {version} libvirt 版本 libvirt::version::1.2.2 hvm::{flag} 物理机硬件虚拟化标 hvm::vmx 识 host hardware virtualization flag vmx表示intel CPU svm表示amd CPU 46

61 zstack-cli命令 使用手册 / 5 硬件设施 全局配置 Global Configurations load.all 类别 默认值 load.all 物理机 true true false 配置管理节点启动时否要连接所有的物理机 如果设置为true 管理节点会在启动时同时连接所有的物理机 如果云中有数量巨大的物理 机 这可能会导致运行管理节点的物理机资源耗尽 如果设置为false 配合 load.parallelismdegree 管理节点在启动时每次只会连接一部分物理 机 然后重复这个操作直到所有的物理机都连上 load.parallelismdegree 类别 默认值 load.parallelismdeg ree 物理机 100 >0 当 load.all被设置为false 这个配置定义了管理节点启动时同时连接物理机的数目 ping. 类别 默认值 可选参数值 ping.interval 物理机 60 >0 为了检查物理机的连接状态 管理节点周期性的向物理机发送ping命令的间隔时间 单位秒 ping.parallelismdegree 类别 默认值 ping.parallelismdeg ree 物理机 100 >0 管理节点发送ping命令的并发度 parallel degree 如果物理机的数目大于这个值 管理节点会重 复操作指导所有的物理机都被ping过 例如 先ping前100个主机 再ping后100个主机 47

62 zstack-cli命令 使用手册 / 5 硬件设施 connection.autoreconnectonerror 类别 默认值 connection.autorec onnectonerror 物理机 true true false 设置当物理机的连接状态从Connected变为Disconnected时否重连 如果设置为true 管理节点会通过ping命令重新连接状态从Connected变为Disconnected的物理 机 从而让物理机完成它在disconnected时错过的操作 例如 物理机可能disconnected时错 过了物理机上代理 agent 的升级 如果设置为false 物理机会因为任何错误的发生而不能进入维护模式 例如 云主机迁移失 败 reservedcapacity.zonelevel 类别 默认值 reservedcapacity.zonelevel hostallocator true true false 设置否要在区域级别 zone level 启用物理机容量保留 请参见 host capacity reservation reservedcapacity.clusterlevel 类别 默认值 reservedcapacity.clusterlevel hostallocator true true false 设置否要在集群级别 cluster level 启用物理机容量保留 请参见 host capacity reservation reservedcapacity.hostlevel 类别 默认值 reservedcapacity.hostlevel hostallocator true true false 设置否要在物理机级别 host level 启用物理机容量保留 请参见 host capacity reservation 48

63 zstack-cli命令 使用手册 / 5 硬件设施 vm.migrationquantity 类别 默认值 vm.migrationquantity kvm 2 >0 设置当KVM物理机进入维护模式时 同时进行迁移的云主机数量 reservedmemory 类别 默认值 reservedmemory kvm 512M >= 0 当:ref:`reservedCapacity.hostLevel <reservedcapacity.hostlevel>`设置为true的时候 这个字符串 存储了KVM物理机上预留的内存容量 这个数值由一个数字后跟上一个单位组成的 这些表示单 位的字符可以B/K/M/G/T 如果没有指定表示单位的字符 将被当成字节计算 datavolume.maxnum 类别 默认值 datavolume.maxnum kvm 设置KVM虚拟机管理程序中云主机可以挂载的数据云盘 data volumes 的最大数量 host.synclevel 类别 默认值 host.synclevel kvm 10 >2 设置能在KVM物理机上同时执行命令的最大并发数量 5.4 主存储 概览 主存储 用于存储云主机磁盘文件 包括 根云盘 数据云盘 根云盘快照 数据云盘快照 镜像 缓存等 的存储服务器 如图 8: 主存储所示 图 8: 主存储 49

64 zstack-cli命令 使用手册 / 5 硬件设施 ZStack主存储的支持类型分为两大类 本地存储 Local Storage 使用物理机的硬盘进行存储 网络存储 支持NFS Ceph FusionStor和Shared Mount Point四种类型 NFS为网络文件系统的存储方式 Ceph采用了分布式块存储方式 FusionStor采用了华云网际提供的分布式块存储方式 Shared Mount Point支持常用的分布式文件系统提供的网络共享存储 支持的常见类型 有MooseFS GlusterFS OCFS2 GFS2等 清单 属性 50 uuid 请参见 资源属性 name 请参见 资源属性

65 zstack-cli命令 使用手册 / 5 硬件设施 description 请参见 资源属性 zoneuuid 父区域的uuid totalcapacity availablecapacity 磁盘总容量 单位 为字节 可用磁盘空间 单 位为字节 请参见 url url Fusionstor SharedM ountpoint XSky type 主存储类型 Ceph NFS ZSES VCenter LocalStorage state 请参见 state Enabled Disabled Connecting status 请参见 status Connected Disconnected attachedcluste 主存储已经挂载了 ruuids 的集群uuid列表 createdate 请参见 资源属性 lastopdate 请参见 资源属性 示例 { "inventories": { "attachedclusteruuids": [ "967a353c dab9312cf3033a98c" ], "availablecapacity": , "availablephysicalcapacity": , "createdate": "Oct 30, :05:29 PM", 51

66 zstack-cli命令 使用手册 / 5 硬件设施 } } "description": "", "lastopdate": "Oct 31, :41:26 AM", "mountpath": "/zstack_ps", "name": "LS-1", "state": "Enabled", "status": "Connected", "systemusedcapacity": , "totalcapacity": , "totalphysicalcapacity": , "type": "LocalStorage", "url": "/zstack_ps", "uuid": "037bd212f7a1488da4f94360ccfaf6ab", "zoneuuid": "e59b71e99d8a4ea1952b578388b8cd1d" 容量 Capacity 为了方便选择合适的主存储创建云盘 ZStack会监控主存储的容量 不同的主存储插件可能会汇报 不同的磁盘容量 对于支持超分 over-provisioning 的主存储 汇报的存储容量会比实际的大 对于不支持超分的主存储 汇报的存储容量可能会小于或等于实际的大小 NFS容量 NFS Capacity NFS不支持超分 因此它的容量用云盘的虚拟大小 volumes virtual sizes 根据以下公式计算 出来的 总容量 = NFS的总容量 可用容量 = 总容量 - sum(云盘的虚拟大小) 云盘的虚拟大小会在云盘章节中介绍 简单的说 云盘的虚拟大小就当云盘被完全填满时的大 小 例如 当你创建一个1G容量的云盘时 在它被真正完全填满数据之前 可能会因为使用了thin -provisioning技术而实际只占用了10m的容量 统一资源定位符 URL 主存储需要使用URL字符串存储的信息来控制存储系统 虽然叫URL 具体的字符串存储格式 依据主存储的类型而定 并不完全等同于标准的URL规范 这样可以给插件更多的灵活性以存储一 些不方便以URL格式存储的信息 52

67 zstack-cli命令 使用手册 / 5 硬件设施 NFS主存储URL 对于NFS主存储 URL被编码为下面的格式 nfs服务器的ip或域名:/目录的绝对路径 例如 :/storage/nfs/ 可用状态 State 主存储有两种可用状态 Enabled 启用 Enabled 状态下 允许云盘被创建 Disabled 禁用 Disabled 状态下 不允许云盘被创建 连接状态 Status 类似于物理机连接状态 主存储的连接状态反应了管理节点和主存储之间的命令通道的状态 命 令通道管理节点和主存储所代表的存储系统通信的途径 根据主存储类型的不同命令通道也可以 不同 例如 命令通道可以ZStack管理节点和主存储之间的HTTP连接或者存储SDK storage SDKs 提供的通信方法 有三种连接状态 Connecting 该状态时 一个ZStack管理节点正在尝试建立自己和主存储之间的命令通道 这时还不能在主存 储上执行任何操作 Connected 该状态时 ZStack管理节点和主存储之间的命令通道已经被成功建立 可以在主存储上执行操 作 Disconnected 在这种状态时 ZStack管理节点和主存储之间的命令通道丢失 这时不能在主存储上执行任何操 作 53

68 zstack-cli命令 使用手册 / 5 硬件设施 在ZStack管理节点启动过程中会开始和主存储建立命令通道 并且会在运行中周期性的向主存储发 送ping命令 ping commands 以检查命令通道的健康状态 一旦某个主存储响应失败, 或者ping命 令超时 主存储的连接状态就会变为Disconnected 主存储的连接状态转换图如图 9: 主存储连接转换图所示 图 9: 主存储连接转换图 可用状态 State 可用状态和连接状态之间没有直接关系 可用状态代表了管理员针对主存储的意愿 而连接状态代 表了主存储的通信状况 挂载集群 Attaching Cluster 挂载集群将主存储和兄弟集群 sibling clusters 关联 从而提供了一种灵活的方式维护主机和 存储系统在实际数据中心里的关系 我们来看一个实际的例子 假设有一个集群 集群A 挂载了 一个NFS主存储 NFS1 如图 10: 单集群挂载NFS主存储所示 图 10: 单集群挂载NFS主存储 54

69 zstack-cli命令 使用手册 / 5 硬件设施 一段时间后 集群A内存耗尽但主存储还有足够的磁盘空间 所以你决定添加另外一个使用NFS1的 集群 集群B 那么你可以创建一个集群B 然后将NFS1挂载在集群B上 如图 11: 多集群挂 载NFS主存储所示 图 11: 多集群挂载NFS主存储 55

70 zstack-cli命令 使用手册 / 5 硬件设施 又运行一段时间之后 集群A的硬件可能开始变得过时 因此你决定停止使用他们 你添加 了一个新的更加强大的集群 集群C 挂载到NFS1上 然后将所有集群A中的主机设置为维护 模式 maintenance mode 这样所有之前运行在集群A中的云主机都会被迁移到集群B或集 群C 最后 你可以将NFS1从集群A卸载 然后删除集群A 现在 数据中心看起来如图 12: 迁移 后的数据中心所示 图 12: 迁移后的数据中心 最后如果NFS1容量不够用了 你可以添加另外一个主存储 NFS2 并加载到集群B和集 群C上 如图 13: 多集群挂载多NFS主存储所示 图 13: 多集群挂载多NFS主存储 56

71 zstack-cli命令 使用手册 / 5 硬件设施 操作 Operations 删除主存储 DeletePrimaryStorage 管理员可以使用DeletePrimaryStorage删除主存储 例如 DeletePrimaryStorage uuid=1b830f5bd1cb469b821b4b77babfdd6f uuid 主存储的uuid deletemode 请参见 删除 资源#Delete Permissive Enforcing Resources# 源类型 PrimaryStorageVO 资源类型 PrimaryStorageVO 57

72 zstack-cli命令 使用手册 / 5 硬件设施 查询主存储 QueryPrimaryStorage 管理员可以使用QueryPrimaryStorage查询主存储 例如 QueryPrimaryStorage uuid=037bd212f7a1488da4f94360ccfaf6ab QueryPrimaryStorage zone.cluster.uuid=967a353c dab9312cf3033a98c 原生域查询 Primitive Fields of Query 请参见 primary storage inventory 嵌套和扩展域查询 Nested And Expanded Fields of Query 域 Field 清单 Inventory zone zone inventory 所在区域 cluster cluster inventory 父集群 volume volume inventory 该主存储中的云盘 volumesnapshot volume snapshot inventory 该主存储中的云盘快照 向集群添加主存储 AttachPrimaryStorageToCluster 管理员可以使用AttachPrimaryStorageToCluster向集群添加主存储 例如 AttachPrimaryStorageToCluster clusteruuid=c1bd173d5cd84f0e9e7c47195ae27ec6 primarystorageuuid=1b830f5bd1cb469b821b4b77babfdd6f primarystorage Uuid 主存储uuid clusteruuid 集群uuid 源类型 PrimaryStorageVO 58

73 zstack-cli命令 使用手册 / 5 硬件设施 资源类型 PrimaryStorageVO 从集群卸载主存储 DetachPrimaryStorageFromCluster 管理员可以使用DetachPrimaryStorageFromCluster从集群卸载主存储 例如 DetachPrimaryStorageFromCluster clusteruuid=c1bd173d5cd84f0e9e7c47195ae27ec6 primarystorageuuid=1b830f5bd1cb469b821b4b77babfdd6f primarystorage Uuid 主存储uuid clusteruuid 集群uuid 源类型 PrimaryStorageVO 资源类型 PrimaryStorageVO 重连主存储 ReconnectPrimaryStorage 管理员可以使用ReconnectPrimaryStorage重连主存储 例如 ReconnectPrimaryStorage uuid=8b2e6f64e2404e48a af2f587 uuid 主存储uuid 59

74 zstack-cli命令 使用手册 / 5 硬件设施 源类型 PrimaryStorageVO 资源类型 PrimaryStorageVO 获取主存储容量 GetPrimaryStorageCapacity 管理员可以使用GetPrimaryStorageCapacity获取主存储容量 例如 GetPrimaryStorageCapacity primarystorageuuids=8b2e6f64e2404e48a af2f587 zoneuuids 区域uuid列表 clusteruuids 集群uuid列表 primarystorage Uuids 主存储uuid列 当主存储uuid列表 表 区域 集群 主存储的Uuids中 必须至少有一个不 为空列表 或者all 设置为true all 为空时 该项为真 表示查询系统中所 有的主存储 60

75 zstack-cli命令 使用手册 / 5 硬件设施 源类型 PrimaryStorageVO 资源类型 PrimaryStorageVO 刷新主存储容量 SyncPrimaryStorageCapacity 管理员可以使用SyncPrimaryStorageCapacity刷新主存储容量 例如 SyncPrimaryStorageCapacity primarystorageuuid=8b2e6f64e2404e48a af2f587 primarystorage Uuid 主存储uuid 源类型 PrimaryStorageVO 资源类型 PrimaryStorageVO 61

76 zstack-cli命令 使用手册 / 5 硬件设施 更改主存储状态 ChangePrimaryStorageState 管理员可以使用ChangePrimaryStorageState更改主存储状态 例如 ChangePrimaryStorageState uuid=f bdb34265b07af28cf0fed978 stateevent=disable uuid 主存储uuid stateevent 主存储的目标状态 enable disable maintain deleting 源类型 PrimaryStorageVO 资源类型 PrimaryStorageVO 更新主存储信息 UpdatePrimaryStorage 管理员可以使用UpdatePrimaryStorage更新主存储信息 例如 UpdatePrimaryStorage uuid=f bdb34265b07af28cf0fed978 name=newtest uuid 主存储uuid name 主存储的新名称 description 主存储的新详细描 述 62

77 zstack-cli命令 使用手册 / 5 硬件设施 url 主存储的新地址 源类型 PrimaryStorageVO 资源类型 PrimaryStorageVO 清除主存储镜像缓 存 CleanUpImageCacheOnPrimaryStorage 管理员可以使用CleanUpImageCacheOnPrimaryStorage清除主存储镜像缓存 例如 CleanUpImageCacheOnPrimaryStorage uuid=f bdb34265b07af28cf0fed978 uuid 主存储uuid 源类型 PrimaryStorageVO 资源类型 PrimaryStorageVO 63

78 zstack-cli命令 使用手册 / 5 硬件设施 获取主存储分配策略清 单 GetPrimaryStorageAllocatorStrategies 管理员可以使用GetPrimaryStorageAllocatorStrategies获取主存储分配策略清单 返回示例 { } "primarystorageallocatorstrategies": [ "DefaultPrimaryStorageAllocationStrategy", "LocalPrimaryStorageStrategy" ], "success": true 源类型 PrimaryStorageVO 资源类型 PrimaryStorageVO 获取主存储类型列表 GetPrimaryStorageTypes 管理员可以使用GetPrimaryStorageTypes获取主存储类型列表 返回示例 { 64 "primarystoragetypes": [ "Fusionstor", "SharedMountPoint", "XSky", "Ceph", "NFS", "ZSES", "VCenter", "LocalStorage" ], "success": true

79 zstack-cli命令 使用手册 / 5 硬件设施 } 源类型 PrimaryStorageVO 资源类型 PrimaryStorageVO 获取候选列 表 GetPrimaryStorageCandidatesForVolumeMigration 管理员可以使用GetPrimaryStorageCandidatesForVolumeMigration获取候选列表 返回示例 GetPrimaryStorageCandidatesForVolumeMigration volumeuuid=3f44c2e199ed4e80bb017 d99746bc3fb volumeuuid 云盘uuid 签#CreateUserTag# 2.2 签#CreateSystemTag# 65

80 zstack-cli命令 使用手册 / 5 硬件设施 跨主存储迁移云盘 PrimaryStorageMigrateVolume 管理员可以使用PrimaryStorageMigrateVolume跨主存储迁移云盘 返回示例 PrimaryStorageMigrateVolume volumeuuid=3f44c2e199ed4e80bb017d99746bc3fb dstprimarystorageuuid=5549ea153b04437e81f64bf0cdaf89ae volumeuuid 云盘uuid 2.2 dstprimarystor ageuuid 目标主存储uuid 签#CreateUserTag# 2.2 签#CreateSystemTag# 本地存储 添加本地存储为主存储 AddLocalPrimaryStorage 管理员可以使用AddLocalPrimaryStorage添加本地存储为主存储 例如 AddLocalPrimaryStorage url="/zstack_ps_test" name=ps1 zoneuuid=61092e77aedd41 f0b8857b40652e5b1e url 本地存储的路径 name 本地存储主存储名 称 description 本地存储主存储 详细 type 类型为LocalSt orage 66

81 zstack-cli命令 使用手册 / 5 硬件设施 zoneuuid 区域uuid resourceuuid 资源uuid 源类型 PrimaryStorageVO 资源类型 PrimaryStorageVO 查询本地存储资源引 用 QueryLocalStorageResourceRef 管理员可以使用QueryLocalStorageResourceRef查询本地存储资源引用 例如 QueryLocalStorageResourceRef primarystorageuuid=037bd212f7a1488da4f94360ccfaf6ab QueryLocalStorageResourceRef image.uuid=e5b9040e d96de25a93a07f65f 原生域查询 Primitive Fields of Query 请参见 local storage inventory 嵌套和扩展域查询 Nested And Expanded Fields of Query 域 Field 清单 Inventory image image inventory snapshot snapshot inventory volume volume inventory 该本地存储中的云盘 67

82 zstack-cli命令 使用手册 / 5 硬件设施 迁移本地存储上存放的云 盘 LocalStorageMigrateVolume 管理员可以使用LocalStorageMigrateVolume迁移本地存储上存放的云盘 例如 LocalStorageMigrateVolume volumeuuid=30b1f7abb7884b80bbdacaf0fd1c7fe9 desthostuuid=5e0f90f7e44e471c96cf878f30301b42 volumeuuid 云盘uuid desthostuuid 目标主机uuid 源类型 PrimaryStorageVO 资源类型 PrimaryStorageVO 获取主机本地存储容 量 GetLocalStorageHostDiskCapacity 管理员可以使用GetLocalStorageHostDiskCapacity获取主机本地存储容量 例如 GetLocalStorageHostDiskCapacity hostuuid=5e0f90f7e44e471c96cf878f30301b42 primarystorageuuid=c52a6fa f8a1c09da6cb62d hostuuid 物理机uuid primarystorage Uuid 主存储uuid

83 zstack-cli命令 使用手册 / 5 硬件设施 源类型 PrimaryStorageVO 资源类型 PrimaryStorageVO 获取迁移物理 机 LocalStorageGetVolumeMigratableHosts 管理员可以使用LocalStorageGetVolumeMigratableHosts检查哪些物理机可以迁移本地存储上存放 的云盘 例如 LocalStorageGetVolumeMigratableHosts volumeuuid=30b1f7abb7884b80bbdacaf0fd1c7fe9 volumeuuid 云盘uuid 源类型 PrimaryStorageVO 资源类型 PrimaryStorageVO 69

84 zstack-cli命令 使用手册 / 5 硬件设施 NFS主存储 添加NFS主存储 AddNfsPrimaryStorage 管理员可以使用AddNfsPrimaryStorage添加NFS主存储 例如 AddNfsPrimaryStorage name=nfs1 zoneuuid=1b830f5bd1cb469b821b4b77babfdd6f url= :/storage/nfs url NFS公开地址 格 式为nfs-host:/ path/to/export name NFS主存储名称 description NFS主存储 详细 type 类型为NFS zoneuuid 区域uuid resourceuuid 资源uuid 源类型 PrimaryStorageVO 资源类型 PrimaryStorageVO 70

85 zstack-cli命令 使用手册 / 5 硬件设施 Shared Mount Point主存储 添加SMP主存 储 AddSharedMountPointPrimaryStorage 管理员可以使用AddSharedMountPointPrimaryStorage添加一个共享挂载点的主存储 例如 AddSharedMountPointPrimaryStorage name=smp-ps url=/mnt/nfs zoneuuid=bd73a3d1e6784d 49897be5ae785305d8 url 共享挂载主存储所 在的本地路径 name 共享挂载主存储的 名称 description 共享挂载主存储的 详细 type 类型为Shared Mount Point zoneuuid 区域uuid resourceuuid 资源uuid 源类型 PrimaryStorageVO 资源类型 PrimaryStorageVO 71

86 zstack-cli命令 使用手册 / 5 硬件设施 Ceph主存储 添加Ceph主存储 AddCephPrimaryStorage 管理员可以使用AddCephPrimaryStorage添加Ceph主存储 例如 AddCephPrimaryStorage name=ceph2 zoneuuid=bd73a3d1e6784d49897be5ae785305d8 monurls=root:password@ :22/6789 monurls Ceph mon的地址 列表 rootvolumepool Name 指定Root Volume 可使用的Ceph pool datavolumepool Name 指定Data Volume 可使用的Ceph pool imagecachepool Name 指定镜像缓存可使 用的Ceph pool名 字 url 未使用 name Ceph主存储名称 description Ceph主存储 详细 type 类型为Ceph zoneuuid 区域uuid resourceuuid 资源uuid 源类型 PrimaryStorageVO 72

87 zstack-cli命令 使用手册 / 5 硬件设施 资源类型 PrimaryStorageVO 查询Ceph主存储 QueryCephPrimaryStorage 管理员可以使用QueryCephPrimaryStorage查询Ceph主存储 例如 QueryCephPrimaryStorage uuid=985ea2eaedf04937ba59ccc2112b636e QueryCephPrimaryStorage cluster.uuid=b993791c88f74c27943b4be6715ce219 原生域查询 Primitive Fields of Query 请参见 ceph primary storage inventory 嵌套和扩展域查询 Nested And Expanded Fields of Query 域 Field 清单 Inventory cluster cluster inventory 该Ceph主存储所属集 群 mons pools zone zone inventory volume volume inventory volumesnapshot volume snapshot inventory 该Ceph主存储所属区 域 该Ceph主存储中的云 盘 73

88 zstack-cli命令 使用手册 / 5 硬件设施 为Ceph主存储添加mon节 点 AddMonToCephPrimaryStorage 管理员可以使用AddMonToCephPrimaryStorage为Ceph主存储添加mon节点 例如 AddMonToCephPrimaryStorage uuid=5021c135ad6f422a9a e516cd5 monurls=root :password@ :22 uuid Ceph主存储uuid monurls Ceph mon的地址 列表 源类型 PrimaryStorageVO 资源类型 PrimaryStorageVO 删除mon节 点 RemoveMonFromCephPrimaryStorage 管理员可以使用RemoveMonFromCephPrimaryStorage从Ceph主存储删除mon节点 例如 RemoveMonFromCephPrimaryStorage uuid=5021c135ad6f422a9a e516cd5 monhost names= uuid Ceph主存储uuid monhostnames mon节点列表

89 zstack-cli命令 使用手册 / 5 硬件设施 源类型 PrimaryStorageVO 资源类型 PrimaryStorageVO 更新Ceph主存储mon节 点 UpdateCephPrimaryStorageMon 管理员可以使用UpdateCephPrimaryStorageMon更新Ceph主存储mon节点 例如 UpdateCephPrimaryStorageMon monuuid= ddaba4b74aff663877e37ec75 monuuid mon节点uuid hostname mon节点新主机地 址 sshusername mon节点主机ssh 用户名 sshpassword mon节点主机ssh 用户密码 sshport mon节点主机ssh 端口 monport mon的新端口 75

90 zstack-cli命令 使用手册 / 5 硬件设施 源类型 PrimaryStorageVO 资源类型 PrimaryStorageVO 标签 Tags 用户可以使用resourceType=PrimaryStorageVO主存储上创建用户标签 例如 CreateUserTag resourcetype=primarystoragevo tag=ssd resourceuuid=e084dc809fec40 92ab0eff797d9529d5 系统标签 System Tags 存储云盘快照 Storage Volume Snapshot 标签 示例 capability:snapshot 当有该标签时, 主存储 capability:snapshot 支持存储云盘快照 全局配置 Global Configurations mount.base 类别 默认值 mount.base nfsprimarystorage /opt/zstack/nfsprim arystorage 以 / 开始的绝对路 径 NFS主存储在KVM物理机上的挂载点 mount point 5.5 镜像服务器 概览 镜像服务器 用于保存云主机的镜像模板或ISO的存储服务器 76

91 zstack-cli命令 使用手册 / 5 硬件设施 镜像服务器必须挂载到区域之后 区域中的资源才能访问它 通过镜像服务器 可在多个区域之间 共享镜像 如图 14: 镜像服务器所示 图 14: 镜像服务器 注: UI界面为便于管理镜像服务器和区域的关系 特别设置了一个镜像服务器只能对应一个区 域 UI界面上 添加镜像服务器 默认会挂载到当前区域 删除区域的同时会直接删除挂载 此区域的镜像服务器 镜像服务器的四种类型 1. Sftp 以文件方式存储镜像文件 2. ImageStore 镜像仓库 以镜像切片方式存储镜像文件 3. Ceph镜像服务器 支持块存储方式存储镜像文件 4. FusionStor镜像服务器 支持块存储方式存储镜像文件 注: 77

92 zstack-cli命令 使用手册 / 5 硬件设施 社区版支持Sftp Ceph和FusionStor类型 企业版和混合云版支持ImageStore Ceph 和FusionStor类型 镜像服务器 主存储 镜像服务器的类型与主存储的类型有关联性要求 如主存储与镜像服务器关系所示 表 2: 主存储与镜像服务器的关系 PS\BS ImageStore Sftp Ceph FusionStor LocalStorage NFS Shared Mount Point Ceph FusionStor 当主存储为本地存储 LocalStorage NFS或Share Mount Point类型时 镜像服务器的默认类 型为ImageStore 企业版 或Sftp 社区版 当主存储为NFS或Shared Mount Point类型时 可将相应共享目录手动挂载到相应镜像服务器的 本地目录上 从而使主存储和镜像服务器均能使用网络共享存储方式 当主存储为Ceph类型时 镜像服务器必须使用同一个Ceph集群作为镜像服务器 Ceph集群提 供分布式块存储方式存储镜像文件 当主存储为FusionStor类型时 镜像服务器必须使用同一个FusionStor集群作为镜像服务 器 FusionStor集群提供分布式块存储方式存储镜像文件 清单 属性 78 uuid 请参见 资源属性 name 请参见 资源属性 description 请参见 资源属性 url 请参见 url

93 zstack-cli命令 使用手册 / 5 硬件设施 字节为单位的磁 totalcapacity 盘总容量, 请参见 capacity 字节为单位的磁盘 availablecapacity 可用容量, 请参见 capacity Fusionstor Ceph type 镜像服务器类型 ImageSt oreback upstorage VCenter SftpBac kupstorage state 请参见 state Enabled Disabled Connecting status 请参见 status Connected Disconnected attachedzoneuu 镜像服务器所挂载 ids 的所有区域的uuid createdate 请参见 资源属性 lastopdate 请参见 资源属性 示例 { "inventories": { "attachedclusteruuids": [ "967a353c dab9312cf3033a98c" ], "availablecapacity": , "availablephysicalcapacity": , "createdate": "Oct 30, :05:29 PM", "description": "", "lastopdate": "Oct 31, :41:26 AM", "mountpath": "/zstack_ps", "name": "LS-1", "state": "Enabled", "status": "Connected", 79

94 zstack-cli命令 使用手册 / 5 硬件设施 } } "systemusedcapacity": , "totalcapacity": , "totalphysicalcapacity": , "type": "LocalStorage", "url": "/zstack_ps", "uuid": "037bd212f7a1488da4f94360ccfaf6ab", "zoneuuid": "e59b71e99d8a4ea1952b578388b8cd1d" 统一资源定位符 URL 镜像服务器需要使用URL字符串存储的信息来控制存储系统 虽然叫URL 具体的字符串存储 格式依据主存储的类型而定 并不完全等同于标准的URL规范 这样可以给插件更多的灵活性以存 储一些不方便以URL格式存储的信息 SFTP镜像服务器URL SFTP Backup Storage URL 对于SFTP备份存储而言 URL一个目录在文件系统中的绝对路径 例如 /storage/sftp 容量 Capacity 为了方便选择合适的镜像服务器存放镜像 ZStack会监控备份存储的容量 镜像服务器的容量根据 下面公式来计算 总容量 = 备份存储的总容量 可用容量 = 总容量 - sum(镜像的实际大小) 可用状态 State 镜像服务器有两种可用状态 Enabled 启用 Enabled 状态下 允许镜像被注册 备份和下载 Disabled 禁用 Disabled 状态下 不允许镜像被注册 备份和下载 需要特别注意的 如果一个镜 像只存在于一个禁用了的镜像服务器中 并且这个镜像还没有被下载到主存储的镜像缓存中 这 时不能从这个镜像创建云主机 连接状态 Status 主存储的连接状态反应了管理节点和备份存储之间的命令通道的状态 Connecting 在这种状态时 一个ZStack管理节点正在尝试建立自己和镜像服务器之间的命令通道 这时还 不能在镜像服务器上执行任何操作 80

95 zstack-cli命令 使用手册 / 5 硬件设施 Connected 这种状态时 ZStack管理节点和镜像服务器之间的命令通道已经被成功建立 可以在镜像服务器 上执行操作 Disconnected 在这种状态时 ZStack管理节点和镜像服务器之间的命令通道丢失 这时不能在镜像服务器上 执行任何操作 在ZStack管理节点启动过程中会开始和镜像服务器建立命令通道 并且会在运行中周期性的向主存 储发送ping命令 ping commands 以检查命令通道的健康状态 一旦某个镜像服务器响应失败 或者ping命令超时 镜像服务器的连接状态就会变为Disconnected 镜像服务器的可用状态转换图如图 15: 镜像服务器可用状态转换图所示 图 15: 镜像服务器可用状态转换图 81

96 zstack-cli命令 使用手册 / 5 硬件设施 操作 Operations 删除镜像服务器 DeleteBackupStorage 管理员可以使用DeleteBackupStorage删除镜像服务器 例如 DeleteBackupStorage uuid=1613b627cb2e4ffcb30e7e be uuid 镜像服务器的uuid deletemode 请参见 删除 资源#Delete Permissive Enforcing Resources# 源类型 BackupStorageVO 资源类型 BackupStorageVO 查询镜像服务器 QueryBackupStorage 管理员可以使用QueryBackupStorage查询镜像服务器 例如 QueryBackupStorage uuid=ae840e03a0044b759b0a8c09a141a46b QueryBackupStorage zone.primarystorage.uuid=037bd212f7a1488da4f94360ccfaf6ab 原生域查询 Primitive Fields of Query 请参见 backup storage inventory 82

97 zstack-cli命令 使用手册 / 5 硬件设施 嵌套和扩展域查询 Nested And Expanded Fields of Query 域 Field 清单 Inventory image image inventory 该镜像服务器中的镜像 zone zone inventory 该镜像服务器所属区域 volumesnapshot volume snapshot inventory 重连镜像服务器 ReconnectBackupStorage 管理员可以使用ReconnectBackupStorage重连镜像服务器 例如 ReconnectBackupStorage uuid=ab3d53288bd14e6eba6ea56324b66a3f uuid 镜像服务器的uuid 源类型 BackupStorageVO 资源类型 BackupStorageVO 更改镜像服务器可用状态 ChangeBackupStorageState 管理员可以使用ChangeBackupStorageState更改镜像服务器可用状态 例如 ChangeBackupStorageState uuid=ab3d53288bd14e6eba6ea56324b66a3f stateevent=disable uuid 镜像服务器的uuid 83

98 zstack-cli命令 使用手册 / 5 硬件设施 stateevent 镜像服务器的目标 enable 状态 disable 源类型 BackupStorageVO 资源类型 BackupStorageVO 获取镜像服务器存储容量 GetBackupStorageCapacity 管理员可以使用GetBackupStorageCapacity获取镜像服务器存储容量 例如 GetBackupStorageCapacity backupstorageuuids=ab3d53288bd14e6eba6ea56324b66a3f zoneuuids 区域uuid列表 backupstorageu uids 镜像服务器uuid列 表 zoneuuids, backupstorageu uids 至少有一个 不为空 或者all被 设置为真 all 当镜像服务器uuid 列表为空时 该项 为真表示查询系统 中所有的镜像服务 器 84

99 zstack-cli命令 使用手册 / 5 硬件设施 源类型 BackupStorageVO 资源类型 BackupStorageVO 获取镜像服务器类型列表 GetBackupStorageTypes 管理员可以使用GetBackupStorageTypes获取镜像服务器类型列表 返回示例 { } "backupstoragetypes": [ "Fusionstor", "Ceph", "ImageStoreBackupStorage", "VCenter", "SftpBackupStorage" ], "success": true 源类型 BackupStorageVO 资源类型 BackupStorageVO 85

100 zstack-cli命令 使用手册 / 5 硬件设施 更新镜像服务器信息 UpdateBackupStorage 管理员可以使用UpdateBackupStorage更新镜像服务器信息 例如 UpdateBackupStorage uuid=ab3d53288bd14e6eba6ea56324b66a3f name=test uuid name description 指定目标镜像服务 器的uuid 镜像服务器的新名 称 镜像服务器的详细 源类型 BackupStorageVO 资源类型 BackupStorageVO 从镜像服务器导出镜 像 ExportImageFromBackupStorage 管理员可以使用ExportImageFromBackupStorage从镜像服务器导出镜像 例如 ExportImageFromBackupStorage backupstorageuuid=ab3d53288bd14e6eba6ea56324b66a3f imageuuid=889ac0b0d8b758e99e35dc38d017c25c 86 backupstorageu uid 镜像服务器uuid 1.7

101 zstack-cli命令 使用手册 / 5 硬件设施 imageuuid 镜像uuid 源类型 BackupStorageVO 1.7 资源类型 BackupStorageVO 删除导出镜 像 DeleteExportedImageFromBackupStorage 管理员可以使用DeleteExportedImageFromBackupStorage从镜像服务器删除导出的镜像 例如 DeleteExportedImageFromBackupStorage backupstorageuuid=ab3d53288bd14e6eba6ea 56324b66a3f imageuuid=889ac0b0d8b758e99e35dc38d017c25c backupstorageu uid 镜像服务器uuid 1.7 imageuuid 镜像uuid 源类型 BackupStorageVO 1.7 资源类型 BackupStorageVO 87

102 zstack-cli命令 使用手册 / 5 硬件设施 挂载镜像服务器至区域 AttachBackupStorageToZone 管理员可以使用AttachBackupStorageToZone挂载镜像服务器至区域 例如 AttachBackupStorageToZone backupstorageuuid=d086c30f33914c98a bab7bc8f zoneuuid=d086c30f33914c98a bab7bc8f backupstorageu uid 镜像服务器uuid zoneuuid 区域uuid 源类型 BackupStorageVO 资源类型 BackupStorageVO 卸载已挂载镜像服务 器 DetachBackupStorageFromZone 管理员可以使用DetachBackupStorageFromZone从区域中卸载已经挂载的镜像服务器 例如 DetachBackupStorageFromZone backupstorageuuid=d086c30f33914c98a bab7bc8f zoneuuid=d086c30f33914c98a bab7bc8f 88 backupstorageu uid 镜像服务器uuid

103 zstack-cli命令 使用手册 / 5 硬件设施 zoneuuid 区域uuid 源类型 BackupStorageVO 资源类型 BackupStorageVO 跨镜像服务器迁移镜像 BackupStorageMigrateImage 管理员可以使用BackupStorageMigrateImage跨镜像服务器迁移镜像 例如 BackupStorageMigrateImage imageuuid=6391e504d07a c2968ff6a710d srcbackupstorageuuid=cd8dfecb67a94d168ccdf4de dstbackupstorageuuid =55ef2e4c99334e79b00f1968b4af1595 imageuuid 镜像uuid 2.2 srcbackupstora geuuid 源镜像服务器uuid 2.2 dstbackupstora 目标镜像服务 geuuid 器uuid 源类型 BackupStorageVO

104 zstack-cli命令 使用手册 / 5 硬件设施 资源类型 BackupStorageVO 获取候选列 表 GetBackupStorageCandidatesForImageMigration 管理员可以使用GetBackupStorageCandidatesForImageMigration获取候选列表 例如 GetBackupStorageCandidatesForImageMigration srcbackupstorageuuid=cd8dfecb67a94d 168ccdf4de srcbackupstora 待迁移镜像所在镜 geuuid 像服务器uuid 源类型 BackupStorageVO 2.2 资源类型 BackupStorageVO 镜像仓库 添加镜像仓库服务器 AddImageStoreBackupStorage 管理员可以使用AddImageStoreBackupStorage添加镜像仓库服务器 例如 AddImageStoreBackupStorage hostname=" " username=admin name=imagestore 90

105 zstack-cli命令 使用手册 / 5 硬件设施 url="/data/imagestore" password=password importimages=false hostname 服务器主机地址 1.6 username 服务器SSH用户 1.6 名 password 1.6 服务器SSH用户 密码 sshport 服务器SSH端口 url 镜像仓库本地数据 存放地址 name 镜像仓库名称 1.6 description 镜像仓库详细 1.6 type 类型为ImageSt 1.6 orebackupstora ge importimages 否导入镜像 1.9 resourceuuid 资源uuid 源类型 ImageStoreBackupStorageVO 1.6 资源类型 ImageStoreBackupStorageVO 91

106 zstack-cli命令 使用手册 / 5 硬件设施 查询镜像服务器 QueryBackupStorage 管理员可以使用QueryBackupStorage查询镜像服务器 例如 QueryBackupStorage uuid=ae840e03a0044b759b0a8c09a141a46b QueryBackupStorage zone.primarystorage.uuid=037bd212f7a1488da4f94360ccfaf6ab 原生域查询 Primitive Fields of Query 请参见 backup storage inventory 嵌套和扩展域查询 Nested And Expanded Fields of Query 域 Field 清单 Inventory image image inventory 该镜像服务器中的镜像 zone zone inventory 该镜像服务器所属区域 volumesnapshot volume snapshot inventory 更新镜像仓库服务器信 息 UpdateImageStoreBackupStorage 管理员可以使用UpdateImageStoreBackupStorage更新镜像仓库服务器信息 例如 UpdateImageStoreBackupStorage uuid=ab3d53288bd14e6eba6ea56324b66a3f name=test-ls hostname 镜像服务器主机地 1.6 址 username SSH用户名 1.6 password SSH用户密码 1.6 sshport 服务器SSH端口 1.6 uuid 镜像服务器uuid 1.6 name 镜像服务器新名称 1.6 description 镜像服务器新详细

107 zstack-cli命令 使用手册 / 5 硬件设施 1.6 源类型 ImageStoreBackupStorageVO 1.6 资源类型 ImageStoreBackupStorageVO 重连镜像仓库服务 器 ReconnectImageStoreBackupStorage 管理员可以使用ReconnectImageStoreBackupStorage重连镜像仓库服务器 例如 ReconnectImageStoreBackupStorage uuid=af6686a6642f41f4a9a3587abc5a96dc uuid 镜像仓库服务 1.6 器uuid 1.6 源类型 ImageStoreBackupStorageVO 1.6 资源类型 ImageStoreBackupStorageVO 93

108 zstack-cli命令 使用手册 / 5 硬件设施 从镜像仓库回收磁盘空 间 ReclaimSpaceFromImageStore 管理员可以使用ReclaimSpaceFromImageStore从镜像仓库回收磁盘空间 例如 ReclaimSpaceFromImageStore uuid=af6686a6642f41f4a9a3587abc5a96dc uuid 镜像仓库服务 1.1 器uuid 1.1 源类型 ImageStoreBackupStorageVO 1.1 资源类型 ImageStoreBackupStorageVO Ceph镜像服务器 添加Ceph镜像服务器 AddCephBackupStorage 管理员可以使用AddCephBackupStorage添加Ceph镜像服务器 例如 AddCephBackupStorage name=ceph2_bs monurls=root:password@ :22 monurls Ceph mon的地址 列表 poolname 用于存放镜像 的Ceph pool url 94 未使用

109 zstack-cli命令 使用手册 / 5 硬件设施 name 镜像服务器新名称 description 镜像服务器详细描 述 type 类型为Ceph importimages 否导入镜像 1.9 resourceuuid 资源uuid 源类型 CephBackupStorageVO 资源类型 CephBackupStorageVO 查询Ceph镜像服务器 QueryCephBackupStorage 管理员可以使用QueryCephBackupStorage查询Ceph镜像服务器 例如 QueryCephBackupStorage uuid=d655f6a3df09471da0102da QueryCephBackupStorage mons.hostname= 原生域查询 Primitive Fields of Query 请参见 backup storage inventory 嵌套和扩展域查询 Nested And Expanded Fields of Query 域 Field 清单 Inventory 95

110 zstack-cli命令 使用手册 / 5 硬件设施 更新Ceph镜像服务器mon节 点 UpdateCephBackupStorageMon 管理员可以使用UpdateCephBackupStorageMon更新Ceph镜像服务器mon节点 例如 UpdateCephBackupStorageMon monuuid=66480dbf545e4f feb7657ca11 monuuid mon节点uuid hostname mon节点新主机地 址 sshusername mon节点主机ssh 用户名 sshpassword mon节点主机ssh 用户密码 sshport mon节点主机ssh 端口 monport mon节点的端口 源类型 CephBackupStorageVO 资源类型 CephBackupStorageVO 96

111 zstack-cli命令 使用手册 / 5 硬件设施 为Ceph镜像服务器添加mon节 点 AddMonToCephBackupStorage 管理员可以使用AddMonToCephBackupStorage为Ceph镜像服务器添加mon节点 例如 AddMonToCephBackupStorage uuid=d655f6a3df09471da0102da monurls=root :password@ :22 uuid Ceph镜像服务 器uuid monhostnames mon节点列表 源类型 CephBackupStorageVO 资源类型 CephBackupStorageVO Ceph镜像服务器删 除mon RemoveMonFromCephBackupStorage 管理员可以使用RemoveMonFromCephBackupStorageCeph镜像服务器删除mon 例如 RemoveMonFromCephBackupStorage uuid=d655f6a3df09471da0102da monhost names= uuid Ceph镜像服务 器uuid monhostnames mon节点列表 97

112 zstack-cli命令 使用手册 / 5 硬件设施 源类型 CephBackupStorageVO 资源类型 CephBackupStorageVO 标签 Tags 管理员可以使用resourceType=BackupStorageVO在镜像服务器上创建用户标签 例如 CreateUserTag tag=lab1 resourcetype=backupstoragevo resourceuuid= c d3ee55b7766e 全局配置 Global Configurations ping.interval 类别 默认值 ping.interval backupstorage 60 >0 管理节点发送ping命令到备份存储的间隔时间 单位秒 ping.parallelismdegree 类别 默认值 ping.parallelismdeg ree backupstorage 50 >0 管理节点可以同时ping的最大并行数量 98

113 zstack-cli命令 使用手册 / 6 云资源池 6 云资源池 6.1 云主机 概览 云主机 运行在物理机上的虚拟机实例 具有独立的IP地址 可以访问公共网络 运行应用服 务 ZStack的核心组成部分 清单 属性 uuid 请参见 资源属性 name 请参见 资源属性 description 请参见 资源属性 所在区域 zoneuuid 的uuid 请参见 区域#Zone# 和 location 所在集群的uuid, clusteruuid 请参见 集 群#Cluster# 和 location 运行云主机当前的 hostuuid 物理机uuid, 请参 见 物理机#Host# and location 上一次运行云主 机的物理机uuid, lasthostuuid 请参见 物理 机#Host#and location imageuuid 用于创建云主 机根云盘的镜 99

114 zstack-cli命令 使用手册 / 6 云资源池 像uuid 请参见 镜像#Image# 计算规格的uuid instanceofferi nguuid 请参见 计算规 格#Instance Offering# 云主机根云盘 rootvolumeuuid 的uuid 请参见 云盘#Volume# 云主机默认L3网 defaultl3netwo rkuuid 络的uuid 请参 见 L3 network和 networks 云主机类型 UserVm: 用户 创建的云主机 type UserVm ApplianceVm: ZStack创建的 ApplianceVm 帮助管理云的 云主机 云主机的虚拟 机管理程序类 hypervisortype KVM 型, 请参见 物 理机#Host#和 hypervisor type Created Starting Running Stopping state 云主机的可用状 Stopped 态, 请参见 state Rebooting Destroying Destroyed Migrating Unknown 100

115 zstack-cli命令 使用手册 / 6 云资源池 vmnics nic inventory allvolumes volume inventory createdate 请参见 资源属性 lastopdate 请参见 资源属性 示例 { "inventories": { "agentport": 7272, "allvolumes": [ { "actualsize": , "createdate": "Oct 30, :37:51 AM", "description": "Root volume for VM[uuid:0f7730d25fff413d9ab42c174722c9d8]", "deviceid": 0, "format": "qcow2", "installpath": "/zstack_ps/rootvolumes/acct-36c27e8ff05c4780bf6d2fa65700f22e/ vol-1f9\ 19d46bd7a43689b6401bf82b3e190/1f919d46bd7a43689b6401bf82b3e190.qcow2", "isshareable": false, "lastopdate": "Oct 30, :37:51 AM", "name": "ROOT-for-vrouter.l3.私有云私有网络.ac5c7e", "primarystorageuuid": "2376c2874ae34e95a2309fa3453c547d", "rootimageuuid": "bca9ad917cf f27bc64d2dc96b", "size": , "state": "Enabled", "status": "Ready", "type": "Root", "uuid": "1f919d46bd7a43689b6401bf82b3e190", "vminstanceuuid": "0f7730d25fff413d9ab42c174722c9d8" } ], "allocatorstrategy": "LeastVmPreferredHostAllocatorStrategy", "appliancevmtype": "vrouter", "clusteruuid": "175a8917ee794b849e4e96f0b680b717", "cpunum": 2, "cpuspeed": 0, "createdate": "Oct 30, :37:51 AM", "defaultroutel3networkuuid": "e315b2cb bbab362a6e92909e7", "hostuuid": "232a730a0c9f a8b0eddfebd77", "hypervisortype": "KVM", "imageuuid": "bca9ad917cf f27bc64d2dc96b", "instanceofferinguuid": "03a0a2b129f547b5bcb0745db ", "lasthostuuid": "232a730a0c9f a8b0eddfebd77", "lastopdate": "Oct 30, :34:35 PM", "managementnetworkuuid": "e315b2cb bbab362a6e92909e7", "memorysize": , "name": "vrouter.l3.私有云私有网络.ac5c7e", "platform": "Linux", "publicnetworkuuid": "e315b2cb bbab362a6e92909e7", "rootvolumeuuid": "1f919d46bd7a43689b6401bf82b3e190", "state": "Running", "status": "Connected", 101

116 zstack-cli命令 使用手册 / 6 云资源池 } } "type": "ApplianceVm", "uuid": "0f7730d25fff413d9ab42c174722c9d8", "vmnics": [ { "createdate": "Oct 30, :37:51 AM", "deviceid": 0, "gateway": " ", "ip": " ", "l3networkuuid": "e315b2cb bbab362a6e92909e7", "lastopdate": "Oct 30, :37:51 AM", "mac": "fa:08:2b:92:42:00", "metadata": "3", "netmask": " ", "uuid": "bf1d8e2848fd48e39e71c9f859a2158b", "vminstanceuuid": "0f7730d25fff413d9ab42c174722c9d8" } ], "zoneuuid": "12489c7dce2b4e73811da4a1d38b53dc" 位置 Location 由于ZStack通过区域 zones 集群 clusters 和物理机 hosts 组织计算资源 computing resources 因此云主机的位置可以通过zoneUuid clusteruuid 和hostUuid标识 当云主机开始运行后 这些UUIDs会被设置为标识云主机当前位置的值 当云主机停止运行后 hostuuid会被设置为null zoneuuid和clusteruuid会保持不变 lasthostuuid比较特别 因为它代表了云主机上次运行的物理机 对于新创建的云主机 lasthostuuid被设置为null 一旦云主机停止运行, lasthostuuid就被设置为之前的hostuuid值 在instance offering allocator strategy章节中已经详细了对于新创云主机的物理机选择算法 在 本章后面的小节中 会展示启动和迁移物理机的策略 网络 Networks 云主机可以有一个或多个L3网络 vm nics 包含了每个L3网络的IP地址 子网掩码和MAC地址信 息 如果一个云主机有不止一个L3网络 那么它必须制定一个默认的L3网络 这个网络提供默认的 路由 routing) DNS 和物理机名 如果一个云主机只有一个L3网络 那么它就自动成为默认的L3网络 下面的示例会帮助理解什么默认的L3网络 假设你有一个如图 16: 用户云主机所示的用户云主 机 图 16: 用户云主机 102

117 zstack-cli命令 使用手册 / 6 云资源池 云主机所连接的三个L3网络都提供SNAT服务 并且默认的L3网络 /24 CIDR: /24 Gateway: DNS domain: web.tier.mycompany.com 那么云主机的路由表 routing table 将会这样 default via dev eth /24 dev eth0 proto kernel scope link src /24 dev eth1 proto kernel scope link src /24 dev eth2 proto kernel scope link src 可见 默认路由 default routing 指向了 也就默认L3网络的网关 同时云主机的/etc /resolv.conf如下所示 search web.tier.mycompany.com nameserver 也就说DNS域也来自默认L3网络 DNS域名服务器 DNS name server 也设置 为 因为默认L3网络提供了DNS服务器 最终 云主机的FQDN(Full Qualified Domain Name)看起来会像这样 c vm2.web.tier.mycompany.com 它从DNS域扩展而来的 云主机网络接口清单 VM Nic Inventory uuid 请参见 资源属性 vminstanceuuid 父云主机的uuid 103

118 zstack-cli命令 使用手册 / 6 云资源池 l3networkuuid 网卡所连接的:ref :`l3 network <l3network >`的uuid ip IP地址 mac MAC地址 netmask 子网掩码 gateway 网关 metadata 内部使用的保留域 deviceid 标识网卡在客户 操作系统 guest operating system 以太网设备中顺 序的整形数字 例如 0通常代 表eth0 1通常代 表eth1 在ZStack当前版本 中 一旦云主机的网卡被分配了IP地址 这个IP地址将一直伴随这个网卡 直到云主机被删除 示例 { 104 "inventories": { "createdate": "Oct 30, :06:34 PM", "deviceid": 0, "gateway": " ", "ip": " ", "l3networkuuid": "52d8509a19cc4e22a717163d9cb5ee61", "lastopdate": "Oct 30, :06:34 PM", "mac": "fa:c2:3d:d6:ff:00", "netmask": " ", "uuid": "e1e4dca c46a500fe3fa6", "vminstanceuuid": "6db4a412ff764725a7e2077bedfff4e3" }

119 zstack-cli命令 使用手册 / 6 云资源池 } 云盘 Volumes allvolumes域由volumes组成的列表 其中包含了根云盘 root volume 和数据云盘 data volumes 如果要找出其中的根云盘 用户可以通过迭代这个列表 并检查云盘的类型或者使用 域`rootVolumeUuid`来匹配云盘的UUID 根云盘会一直和云主机伴随 直到云主机被删除 虚拟机管理程序类型 Hypervisor Type 根据云主机创建方式的不同 云主机的虚拟机管理程序类型可能从镜像的虚拟机管理程序类 型 或物理机的虚拟机管理程序类型继承而来的 从RootVolumeTemplate创建的虚拟机 由于镜像中已经安装有操作系统 云主机会被创建在和镜像有相同虚拟机管理程序类型的物理机 上 因此云主机的虚拟机管理程序类型从镜像继承而来的 从ISO文件创建的虚拟机 由于会使用ISO安装操作系统到云主机的空白根云盘上 云主机可能被创建在拥有任何类型的虚 拟机管理程序的物理机上 因此云主机的虚拟机管理程序类型从创建的物理机上继承而来的 可用状态 State 云主机的生命周期中有10种可用状态 Created 在这种状态时 云主机还只创建于数据库中的一个记录而已 并没有在任何的物理机上启 动 这个状态仅在创建一个新的云主机的时候出现 Starting 在这种状态时 云主机正在一个物理机上启动 Runnig 在这种状态时 云主机正运行在一个物理机上 Stopping 在这种状态时 云主机正在一个物理机上停止过程中 Stopped 在这种状态时 云主机已经停止 没有运行在任何物理机上 Rebooting 105

120 zstack-cli命令 使用手册 / 6 云资源池 在这种状态时 云主机正在先前运行的物理机上重启 Destroying 在这种状态时 云主机正在被删除 Migrating 在这种状态时 云主机正在被迁移到另一个物理机上 Unknown 由于某些原因 例如 由于失去和物理机的连接 ZStack不能检查物理机的可用状态 如图 17: 云主机可用状态转换图所示 图 17: 云主机可用状态转换图 ZStack会使用VmTracer来周期性的跟踪云主机的状态 默认的间隔时间 interval 60秒 云主 机的状态可能会被ZStack之外的因素影响 106

121 zstack-cli命令 使用手册 / 6 云资源池 例如 物理机掉电 power outage 会导致所有该物理机上运行的云主机停止运行 一 旦VmTracer检测到云主机的实际状态和数据库中的记录不匹配 数据库会被更新为实际的状 态 如果VmTracer不能成功检查云主机的状态 例如 由于ZStack管理节点和物理机之间的连接丢 失 云主机会被设置为Unknown状态 一旦VmTracer再次成功检测到云主机的状态 例如 ZStack管理节点和物理机之间的连接恢复之后 云主机的状态也会被更新为实际的状态 操作 Operations 创建云主机 CreateVmInstance 用户可以使用CreateVmInstance来创建一个云主机 例如 CreateVmInstance name=vm imageuuid=d720ff0c60ee48d3a2e6263dd3e12c33 \ instanceofferinguuid=76789b62aeb542a5b4b8b8488fbaced2 \ l3networkuuids=37d3c4a1e2f14a1c8316a23531e62988 #创建云主机指定多网卡 默认L3网络 CreateVmInstance name=test imageuuid=ee14c7c8cc46309d821c51bbae3adb70 \ instanceofferinguuid=1cf417bfd0e94175aea92131f \ l3networkuuids='ac5c7e736f1b499bbd0c12763b30051d,e315b2cb bbab362a6e929 09e7' \ defaultl3networkuuid=ac5c7e736f1b499bbd0c12763b30051d #创建云主机指定多网卡 默认L3网络 指定静态IP 控制台vnc模式 设置vnc密码 高可用级 别为NeverStop CreateVmInstance name=test imageuuid=ee14c7c8cc46309d821c51bbae3adb70 \ instanceofferinguuid=1cf417bfd0e94175aea92131f \ l3networkuuids='ac5c7e736f1b499bbd0c12763b30051d,e315b2cb bbab362a6e929 09e7' \ defaultl3networkuuid="ac5c7e736f1b499bbd0c12763b30051d" \ ="consolepassword::123456","ha::neverstop","vmconsolemode::vnc","staticip ::ac5c7e736f1b499bbd0c12763b30051d:: " name 资源的 请 参见 资源属性 resourceuuid 资源的uuid 请 参见 创建#Create Resources# description 资源的 请 参见 资源属性 107

122 zstack-cli命令 使用手册 / 6 云资源池 instanceofferi 计算规格uuid 指 nguuid 定云主机的CPU 内存等参数 imageuuid 镜像uuid 云主机 的根云盘会从该字 段指定的镜像创建 l3networkuuids 三层网络uuid列 表 可以指定一 个或多个三层网 络 云主机会在每 个网络上创建一个 网卡 type rootdiskofferi nguuid 云主机类型 保留 UserVm 字段 无需指定 ApplianceVm 根云盘规格uuid 如果imageUuid字 段指定的镜像类 型ISO 该字段 必须指定以确定需 要创建的根云盘大 小 如果镜像类型 非ISO 该字段 无需指定 datadiskofferi nguuids 云盘规格uuid列 表 可以指定一 个或多个云盘规 格uuid uuid可以 重复 为云主机创 建一个或多个数据 云盘 zoneuuid 如果非null 云 主机将在所指 定的区域上创 建 clusteruuid 和hostUuid优先于 这个参数的设置 108

123 zstack-cli命令 使用手册 / 6 云资源池 clusteruuid 如果非null 云 如果非null 云主 主机将在所指定 的集群上创建 hostuuid优先于这 参数的设置 hostuuid 机将在所指定的物 理机上创建 defaultl3netwo rkuuid 如果l3Netwo 1.8 rkuuids包含了多 余一个的L3网络 的UUID 这个参 数指定哪个L3网 络默认的L3网 络 如果l3Netwo rkuuids只有一 个L3网络UUID 可不设置这个参 数 primarystorage UuidForRootVol 主存储UUID 若 ume 云盘会在指定主存 指定 云主机的根 储创建 strategy 云主机创建策 略 创建后立刻 启动或创建后不启 动 源类型 VmInstanceVO 资源类型 VmInstanceVO 109

124 zstack-cli命令 使用手册 / 6 云资源池 删除云主机 DestroyVmInstance 用户可以使用DestroyVmInstance来删除一个虚拟机 例如 DestroyVmInstance uuid=76789b62aeb542a5b4b8b8488fbaced2 uuid 云主机的uuid 资源#Delete 请参见 删除 deletemode Resources# Permissive Enforcing 源类型 VmInstanceVO 资源类型 VmInstanceVO 恢复已删除云主机 RecoverVmInstance 用户可以使用RecoverVmInstance来恢复一个处于Destroyed状态的云主机 恢复后云主机处 于Stopped状态并且没有IP地址 例如 RecoverVmInstance uuid=76789b62aeb542a5b4b8b8488fbaced2 110 uuid 云主机的uuid

125 zstack-cli命令 使用手册 / 6 云资源池 源类型 VmInstanceVO 资源类型 VmInstanceVO 彻底删除云主机 ExpungeVmInstance 用户可以使用ExpungeVmInstance彻底删除一个处于Destroyed状态的云主机 该操作会从数据库 里面删除云主机并在主存储上删除该云主机的根云盘 该操作一旦执行就不可恢复 例如 ExpungeVmInstance uuid=76789b62aeb542a5b4b8b8488fbaced2 uuid 云主机的uuid 源类型 VmInstanceVO 资源类型 VmInstanceVO 111

126 zstack-cli命令 使用手册 / 6 云资源池 查询云主机 QueryVmInstance 用户可以使用QueryVmInstance来查询云主机 例如 QueryVmInstance state=running hostuuid= aee84c449ac04c dec QueryVmInstance vmnics.eip.guestip= 原生域查询 Primitive Fields of Query 请参见 VM inventory 嵌套和扩展域查询 Nested And Expanded Fields of Query 域 Field 清单 Inventory vmnics VM nic inventory 云主机拥有的所有网卡 allvolumes volume inventory 云主机拥有的所有云盘 zone zone inventory 所在区域 cluster cluster inventory 所在集群 host host inventory 父物理机 image image inventory 用于创建该云主机的镜 像 instanceoffering rootvolume instance offering inventory 用于创建该云主机的计 volume inventory 该云主机的根云盘 算规格 启动云主机 StartVmInstance 用户可以使用StartVmInstance来启动云主机 例如 StartVmInstance uuid=76789b62aeb542a5b4b8b8488fbaced2 uuid 云主机的uuid 集群UUID 若指 clusteruuid 定 云主机将在该 集群启动 112

127 zstack-cli命令 使用手册 / 6 云资源池 物理机UUID 若 hostuuid 指定 云主机将在 该物理机启动 源类型 VmInstanceVO 资源类型 VmInstanceVO 停止云主机 StopVmInstance 用户可以使用StopVmInstance来停止云主机 例如 StopVmInstance uuid=76789b62aeb542a5b4b8b8488fbaced2 uuid 云主机的uuid 停止云主机的方 式 grace 优 雅关机 需要云 type 主机里安装了相 关ACPI驱动 grace cold cold 冷关机 相 当于直接断电 源类型 VmInstanceVO 113

128 zstack-cli命令 使用手册 / 6 云资源池 资源类型 VmInstanceVO 重启云主机 RebootVmInstance 用户可以使用RebootVmInstance来重启云主机 例如 RebootVmInstance uuid=76789b62aeb542a5b4b8b8488fbaced2 uuid 云主机的uuid 源类型 VmInstanceVO 资源类型 VmInstanceVO 114

129 zstack-cli命令 使用手册 / 6 云资源池 暂停云主机 PauseVmInstance 用户可以使用PauseVmInstance来暂停云主机 云主机状态仍然存在内存里面 稍后可以恢复 例 如 PauseVmInstance uuid=76789b62aeb542a5b4b8b8488fbaced2 uuid 云主机的uuid 源类型 VmInstanceVO 资源类型 VmInstanceVO 恢复暂停的云主机 ResumeVmInstance 用户可以使用ResumeVmInstance来恢复一个被暂停的云主机 云主机从内存中恢复运行 例如 ResumeVmInstance uuid=76789b62aeb542a5b4b8b8488fbaced2 uuid 云主机的uuid 源类型 VmInstanceVO 115

130 zstack-cli命令 使用手册 / 6 云资源池 资源类型 VmInstanceVO 重置云主机 ReimageVmInstance 用户可以使用ReimageVmInstance将一个云主机的根云盘重置为最初状态 该操作只对从非ISO创 建出的云主机有效 例如 ReimageVmInstance vminstanceuuid=76789b62aeb542a5b4b8b8488fbaced2 vminstanceuuid 云主机的uuid 源类型 VmInstanceVO 资源类型 VmInstanceVO 热迁移云主机 MigrateVm 用户可以使用MigrateVm将云主机迁移至另一个物理机 例如 MigrateVm vminstanceuuid=76789b62aeb542a5b4b8b8488fbaced2 116 vminstanceuuid 云主机的uuid hostuuid 物理机的uuid

131 zstack-cli命令 使用手册 / 6 云资源池 源类型 VmInstanceVO 资源类型 VmInstanceVO 获取可热迁移的物理机列 表 GetVmMigrationCandidateHosts 用户可以使用GetVmMigrationCandidateHosts获取一个云主机可以热迁移的物理机列表 例如 GetVmMigrationCandidateHosts vminstanceuuid=2616ea7df73e4f01b48b0fcda5719e88 vminstanceuuid 云主机的uuid 源类型 VmInstanceVO 资源类型 VmInstanceVO 117

132 zstack-cli命令 使用手册 / 6 云资源池 获取云主机可加载ISO列 表 GetCandidateIsoForAttachingVm 用户可以使用GetCandidateIsoForAttachingVm获取一个云主机可以加载的ISO列表 例如 GetCandidateIsoForAttachingVm vminstanceuuid=2616ea7df73e4f01b48b0fcda5719e88 vminstanceuuid 云主机的uuid 源类型 VmInstanceVO 资源类型 VmInstanceVO 获取ISO可加载云主机列 表 GetCandidateVmForAttachingIso 用户可以使用GetCandidateVmForAttachingIso获取一个ISO可以加载到的云主机列表 例如 GetCandidateVmForAttachingIso isouuid=3ef82fa895bd3a18b081ca e24 isouuid ISO的uuid 源类型 VmInstanceVO 118

133 zstack-cli命令 使用手册 / 6 云资源池 资源类型 VmInstanceVO 加载ISO到云主机 AttachIsoToVmInstance 用户可以使用AttachIsoToVmInstance加载一个ISO镜像到Running或Stopped的云主机 例如 AttachIsoToVmInstance vminstanceuuid=f99402a68cd44c2dbeceeed98a5b1dc2 isouuid =3ef82fa895bd3a18b081ca e24 vminstanceuuid 云主机的uuid isouuid ISO的uuid 源类型 VmInstanceVO 资源类型 VmInstanceVO 119

134 zstack-cli命令 使用手册 / 6 云资源池 卸载云主机上的ISO DetachIsoFromVmInstance 用户可以使用DetachIsoFromVmInstance卸载挂载在云主机上的ISO 例如 DetachIsoFromVmInstance vminstanceuuid=f99402a68cd44c2dbeceeed98a5b1dc2 vminstanceuuid 云主机的uuid 源类型 VmInstanceVO 资源类型 VmInstanceVO 获取云主机可加载云盘列 表 GetVmAttachableDataVolume 用户可以使用GetVmAttachableDataVolume获取一个云主机可以加载的云盘列表 例如 GetVmAttachableDataVolume vminstanceuuid=f99402a68cd44c2dbeceeed98a5b1dc2 vminstanceuuid 云主机的uuid 源类型 VmInstanceVO 120

135 zstack-cli命令 使用手册 / 6 云资源池 资源类型 VmInstanceVO 获取云主机可加载L3网络列 表 GetVmAttachableL3Network 用户可以使用GetVmAttachableL3Network获取一个云主机可以加载三层网络列表 例如 GetVmAttachableL3Network vminstanceuuid=f99402a68cd44c2dbeceeed98a5b1dc2 vminstanceuuid 云主机的uuid 源类型 VmInstanceVO 资源类型 VmInstanceVO 加载L3网络到云主机 AttachL3NetworkToVm 用户可以使用AttachL3NetworkToVm动态添加一个网络到Running或者Stopped的云主机 例如 AttachL3NetworkToVm vminstanceuuid=7c4162e8d32d4bea8f7e799024c6b735 l3netwo rkuuid=e10b482d91964ef5b59af7f1d27cbd8f vminstanceuuid 云主机的uuid 121

136 zstack-cli命令 使用手册 / 6 云资源池 l3networkuuid 三层网络的uuid staticip 指定分配给云主机 的IP地址 源类型 VmInstanceVO 资源类型 VmInstanceVO 从云主机卸载网络 DetachL3NetworkFromVm 用户可以使用DetachL3NetworkFromVm从Running或者Stopped的云主机上卸载一个网络 例如 DetachL3NetworkFromVm vmnicuuid=fb8121aded94453fa49d74f0721da609 云主机网卡uuid vmnicuuid 该网卡所在网络 会从云主机卸载掉 源类型 VmInstanceVO 资源类型 VmInstanceVO 122

137 zstack-cli命令 使用手册 / 6 云资源池 查询云主机网卡 QueryVmNic 用户可以使用QueryVmNic查询云主机的网卡 例如 QueryVmNic gateway= QueryVmNic eip.guestip= 原生域查询 Primitive Fields of Query 请参见 VM nic inventory 嵌套和扩展域查询 Nested And Expanded Fields of Query 域 Field 清单 Inventory eip eip inventory l3network l3network inventory loadbalancerlistener load balancer listener inventory portforwarding port forword inventory securitygroup security group invento ry vminstance vminstance inventory 设置云主机网卡限速 SetNicQoS 用户可以使用SetNicQoS设置云主机网卡限速 例如 SetNicQos uuid=dc6a7bd608054f a76580b5190 inboundbandwidth= uuid 云主机网卡的uuid outboundbandwi dth 出流量带宽限制 123

138 zstack-cli命令 使用手册 / 6 云资源池 inboundbandwid th 入流量宽带限制 源类型 VmInstanceVO 资源类型 VmInstanceVO 获取云主机网卡限速 GetNicQoS 用户可以使用GetNicQoS获取云主机网卡限速 例如 GetNicQos uuid=dc6a7bd608054f a76580b5190 uuid 云主机网卡的uuid 源类型 VmInstanceVO 资源类型 VmInstanceVO 124

139 zstack-cli命令 使用手册 / 6 云资源池 取消云主机网卡限速 DeleteNicQoS 用户可以使用DeleteNicQoS取消云主机网卡限速 例如 DeleteNicQos uuid=dc6a7bd608054f a76580b5190 direction=in uuid 云主机网卡的uuid direction 入方向还出方向 in out 源类型 VmInstanceVO 资源类型 VmInstanceVO 获取镜像和L3依 赖 GetInterdependentL3NetworksImages ZStack中一个三层网络属于一个区域 而镜像所在的镜像服务器可以加载到一个或多个区域 镜像 服务器本身跟集群也存在依赖关系 例如Ceph的镜像服务器只能跟Ceph的主存储一起工作 由于 这种依赖关系的存在 创建云主机的时候指定的三层网络和镜像可能并不能在一起工作 用户可以使用GetInterdependentL3NetworksImages获得镜像和三层网络的相互依赖 例如 GetInterdependentL3NetworksImages zoneuuid=61092e77aedd41f0b8857b40652e5b1e \ imageuuid=2eac1a40becd28dda463dd e 当指定了l3NetworkUuids参数时 返回的可以跟这些三层网络一起工作的镜像清单 当指定 了imageUuid参数时 返回的可以跟该镜像一起工作的三层网络清单 125

140 zstack-cli命令 使用手册 / 6 云资源池 区域uuid 必须指 zoneuuid 定 以确定三层网 络和镜像依赖关 系 l3networkuuids imageuuid 三层网络的uuid列 表 镜像uuid 源类型 VmInstanceVO 资源类型 VmInstanceVO 设置云主机SSH Key SetVmSshKey 用户可以使用SetVmSshKey来设置云主机SSH Key 例如 SetVmSshKey SshKey="ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDRhFQ2kf92WD BAG51T6wnH6cpZ147L7uMV4mIs\ jwlcvoyagruaqdt2wz8aawdy1lh9rohcp+pdgjx5/ib+kvv4sbxhqbffez6fkygmq3ghfqtr bgul+x6xy3vs8z5vdy4chtopalgkwnycohc\ XH3nRFiGinwyGK4pmYQJ5hYEwsYzg+PT20zBwV1ivXFP2JdMh7DP4w4ZMOa6JsY2f fcqrizhjcij4biikvlug2heok4/wjho9eiu8sfumgt\ PW3PTujvn4EAKorhDuqRQ/w2VWZvtP8F0HhJQ/E+hnEKIk/DHVUlhBAtgVMEDSeZv21G FZ1QKtztZAhZg7ZXlAL94t root@ "\ uuid=7c4162e8d32d4bea8f7e799024c6b735 uuid 云主机的uuid SshKey 126

141 zstack-cli命令 使用手册 / 6 云资源池 源类型 VmInstanceVO 资源类型 VmInstanceVO 获取云主机SSH Key GetVmSshKey 用户可以使用GetVmSshKey来获取云主机SSH Key 例如 GetVmSshKey uuid=7c4162e8d32d4bea8f7e799024c6b735 uuid 云主机的uuid 源类型 VmInstanceVO 资源类型 VmInstanceVO 127

142 zstack-cli命令 使用手册 / 6 云资源池 删除云主机SSH Key DeleteVmSshKey 用户可以使用DeleteVmSshKey来删除云主机SSH Key 例如 DeleteVmSshKey uuid=7c4162e8d32d4bea8f7e799024c6b735 uuid 云主机的uuid 源类型 VmInstanceVO 资源类型 VmInstanceVO 变更云主机密码 ChangeVmPassword 用户可以使用ChangeVmPassword来变更云主机密码 例如 ChangeVmPassword uuid=14d27431b45c405b9ba0f f0 account=root password =changepassword uuid 云主机的uuid password 密码 account 账户 源类型 VmInstanceVO 128

143 zstack-cli命令 使用手册 / 6 云资源池 资源类型 VmInstanceVO 设置云主机控制台密码 SetVmConsolePassword 用户可以使用SetVmConsolePassword来设置云主机控制台密码 例如 SetVmConsolePassword uuid=14d27431b45c405b9ba0f f0 consolepassword = uuid 云主机的uuid consolepassword 控制台密码 明文 字符串 源类型 VmInstanceVO 资源类型 VmInstanceVO 129

144 zstack-cli命令 使用手册 / 6 云资源池 获取云主机控制台密码 GetVmConsolePassword 用户可以使用GetVmConsolePassword来获取云主机控制台密码 例如 GetVmConsolePassword uuid=14d27431b45c405b9ba0f f0 uuid 云主机的uuid 源类型 VmInstanceVO 资源类型 VmInstanceVO 删除云主机控制台密码 DeleteVmConsolePassword 用户可以使用DeleteVmConsolePassword来删除云主机控制台密码 例如 DeleteVmConsolePassword uuid=14d27431b45c405b9ba0f f0 uuid 云主机的uuid 源类型 VmInstanceVO 130

145 zstack-cli命令 使用手册 / 6 云资源池 资源类型 VmInstanceVO 获取云主机控制台地址和访问协 议 GetVmConsoleAddress 用户可以使用GetVmConsoleAddress来获取云主机控制台地址和访问协议 例如 GetVmConsoleAddress uuid=14d27431b45c405b9ba0f f0 uuid 云主机的uuid 源类型 VmInstanceVO 资源类型 VmInstanceVO 设置云主机Hostname SetVmHostname 用户可以使用SetVmHostname来设置云主机hostname 例如 SetVmHostname uuid=108af59a0f4e4d6cb838a5591db1016a hostname=vm2.zstack.org 注: ZStack通过DHCP服务器配置云主机hostname 如果云主机本身采用静态hostname方 式 该操作配置的hostname不生效 131

146 zstack-cli命令 使用手册 / 6 云资源池 uuid 云主机的uuid hostname 必须 hostname 符合RFC 1123标 准 源类型 VmInstanceVO 资源类型 VmInstanceVO 获取云主机Hostname GetVmHostname 用户可以使用GetVmHostname来获取云主机hostname 例如 GetVmHostname uuid=108af59a0f4e4d6cb838a5591db1016a uuid 云主机的uuid 源类型 VmInstanceVO 资源类型 VmInstanceVO 132

147 zstack-cli命令 使用手册 / 6 云资源池 删除云主机Hostname DeleteVmHostname 用户可以使用DeleteVmHostname来删除云主机hostname 例如 DeleteVmHostname uuid=108af59a0f4e4d6cb838a5591db1016a 注: 该删除操作仅仅删除配置在数据库中以及DHCP服务器上的云主机hostname 无法改 变云主机内部手动配置的hostname uuid 云主机的uuid 源类型 VmInstanceVO 资源类型 VmInstanceVO 获得云主机启动设备列表 GetVmBootOrder 用户可以使用GetVmBootOrder来获得一个云主机的启动设备列表 例如 GetVmBootOrder uuid=108af59a0f4e4d6cb838a5591db1016a uuid 云主机的uuid 133

148 zstack-cli命令 使用手册 / 6 云资源池 源类型 VmInstanceVO 资源类型 VmInstanceVO 指定云主机启动设备 SetVmBootOrder 用户可以使用SetVmBootOrder来指定一个云主机的启动设备 例如 SetVmBootOrder uuid=108af59a0f4e4d6cb838a5591db1016a bootorder=cdrom uuid 云主机的uuid 启动设 备 CdRom 光 驱 HardDisk bootorder 云盘 若该字段 不指定 则表示使 CdRom HardDisk 用系统默认启动设 备顺序 HardDis k CdRom 源类型 VmInstanceVO 资源类型 VmInstanceVO 134

149 zstack-cli命令 使用手册 / 6 云资源池 获取目的地列 表 GetCandidateZonesClustersHostsForCreatingVm 用户可以使用GetCandidateZonesClustersHostsForCreatingVm获取可以创建云主机参数的目的区 域 集群 物理机 用户可以通过指定云主机参数获得可以创建满足参数云主机的目的地 例如 GetCandidateZonesClustersHostsForCreatingVm instanceofferinguuid=7e0d13749df940 00ba99da7da621cec9 \ imageuuid=034883acd9312da4a7c71ac2b4c01498 l3networkuuids=4d855bb0c72640 f5a643ba8e88ae85df instanceofferi nguuid 计算规格uuid imageuuid 镜像uuid l3networkuuids 三层网络列表 根云盘规格 仅 rootdiskofferi nguuid 在imageUuid指定 的镜像ISO时需 要指定 datadiskofferi nguuids 云盘规格列表 zoneuuid 区域uuid clusteruuid 集群uuid defaultl3netwo rkuuid 默认三层网络uuid 源类型 VmInstanceVO 135

150 zstack-cli命令 使用手册 / 6 云资源池 资源类型 VmInstanceVO 获取VM启动目的地列 表 GetVmStartingCandidateClustersHosts 用户可以使用GetVmStartingCandidateClustersHosts获取一个停止的云主机可以启动的集群 物理 机列表 用户可以通过该操作判断一个停止的云主机可以在哪些集群 物理机上启动 例如 GetVmStartingCandidateClustersHosts uuid=7c4162e8d32d4bea8f7e799024c6b735 uuid 云主机的uuid 源类型 VmInstanceVO 资源类型 VmInstanceVO 指定云主机IP SetVmStaticIp 用户可以使用SetVmStaticIp给云主机网卡指定IP 用户可以通过该操作控制ZStack分配给云主机网 卡的IP 用户要确保指定的IP在指定三层网络 并且IP未被占用 例如 SetVmStaticIp vminstanceuuid=7c4162e8d32d4bea8f7e799024c6b

151 zstack-cli命令 使用手册 / 6 云资源池 l3networkuuid=4d855bb0c72640f5a643ba8e88ae85df ip= vminstanceuuid 云主机uuid l3networkuuid 三层网络uuid ip 指定IP地址 源类型 VmInstanceVO 资源类型 VmInstanceVO 删除云主机指定IP DeleteVmStaticIp 用户可以使用DeleteVmStaticIp删除云主机三层网络上指定的IP 例如 DeleteVmStaticIp vminstanceuuid=7c4162e8d32d4bea8f7e799024c6b735 \ l3networkuuid=4d855bb0c72640f5a643ba8e88ae85df deletemode=permissive vminstanceuuid 云主机uuid l3networkuuid 三层网络uuid 请参见 删除 deletemode 资源#Delete Resources# Permissive Enforcing 137

152 zstack-cli命令 使用手册 / 6 云资源池 源类型 VmInstanceVO 资源类型 VmInstanceVO 获取云主机能力 GetVmCapabilities 用户可以使用GetVmCapabilities获取一个云主机的能力 用于判断云主机否能做某些特定操作 例如 GetVmCapabilities uuid=7c4162e8d32d4bea8f7e799024c6b735 目前已定义能力包括 名称 类型 LiveMigration 否支持热迁移 Boolean VolumeMigration 否支持根云盘迁移 Boolean uuid 云主机uuid 源类型 VmInstanceVO 资源类型 VmInstanceVO 138

153 zstack-cli命令 使用手册 / 6 云资源池 更新云主机信息 UpdateVmInstance 用户可以使用UpdateVmInstance更新云主机信息 例如 UpdateVmInstance uuid=7c4162e8d32d4bea8f7e799024c6b735 name=new-vm uuid 云主机uuid name 云主机名 description 云主机详细 云主机状态 通常不应该直 接更新云主机 状态 否则会 导致ZStack对 云主机状态发 生误判 该字段只 应用于云主 state 机真实状态 和ZStack记录 Stopped Running 状态发生不一 致 而ZStack 同步机制已失 效时 通常意 味着bug 管理员完全理 解使用该字段 的后果 defaultl3netwo rkuuid 默认三层网络uuid Linux platform 云主机平台类型 Windows Windows Virtio Other 139

154 zstack-cli命令 使用手册 / 6 云资源池 Paravirtualiza tion 云主机CPU数 量 需停止/启 动云主机后生 效 cpunum 当全局设 置NUMA为true 情况下创建的 云主机 支持 动态调整 云主机内存大 小 需停止/启 动云主机后生 效 memorysize 全局设 置NUMA为true 情况下创建的 云主机 支持 动态调整 源类型 VmInstanceVO 资源类型 VmInstanceVO 克隆云主机到指定物理机上 CloneVmInstance 用户可以使用CloneVmInstance克隆云主机到指定物理机上 例如 CloneVmInstance vminstanceuuid=108af59a0f4e4d6cb838a5591db1016a strategy=instant Start \ 140

155 zstack-cli命令 使用手册 / 6 云资源池 names=new-vm1,new-vm2 vminstanceuuid 云主机uuid names 云主机的清单 strategy 策略 InstantStart JustCreate 源类型 VmInstanceVO 资源类型 VmInstanceVO 设置云主机高可用级别 SetVmInstanceHaLevel 用户可以使用SetVmInstanceHaLevel设置云主机高可用级别 例如 SetVmInstanceHaLevel uuid=108af59a0f4e4d6cb838a5591db1016a level=neverstop uuid 云主机uuid 云主机高可用级 别 NeverStop level 永不停机 OnHostFailure NeverStop OnHostFailure 物理机异常时 触发高可用 141

156 zstack-cli命令 使用手册 / 6 云资源池 源类型 VmInstanceVO 资源类型 VmInstanceVO 获取云主机高可用级别 GetVmInstanceHaLevel 用户可以使用GetVmInstanceHaLevel获取云主机高可用级别 例如 GetVmInstanceHaLevel uuid=108af59a0f4e4d6cb838a5591db1016a uuid 云主机uuid 源类型 VmInstanceVO 资源类型 VmInstanceVO 142

157 zstack-cli命令 使用手册 / 6 云资源池 取消云主机高可用 DeleteVmInstanceHaLevel 用户可以使用DeleteVmInstanceHaLevel取消云主机高可用 例如 DeleteVmInstanceHaLevel uuid=108af59a0f4e4d6cb838a5591db1016a uuid 云主机uuid 源类型 VmInstanceVO 资源类型 VmInstanceVO 获取云主机Qga GetVmQga 用户可以使用GetVmQga获取云主机Qga 例如 GetVmQga uuid=108af59a0f4e4d6cb838a5591db1016a uuid 云主机uuid 源类型 VmInstanceVO 143

158 zstack-cli命令 使用手册 / 6 云资源池 资源类型 VmInstanceVO 设置云主机Qga SetVmQga 用户可以使用SetVmQga设置云主机Qga 例如 SetVmQga uuid=108af59a0f4e4d6cb838a5591db1016a enable=false uuid 云主机uuid true enable false 源类型 VmInstanceVO 资源类型 VmInstanceVO 标签 Tags 用户可以使用resourceType=VmInstanceVO在云主机上创建用户标签 例如 CreateUserTag tag=web-server-vm resourcetype=vminstancevo \ resourceuuid=a12b3cc9ee4440dfb00d41c1d2f72d08 系统标签 System Tags HostName 144

159 zstack-cli命令 使用手册 / 6 云资源池 用户可以为一个云主机的默认L3网络指定一个物理机名 这个标签通常在调用CreateVmInstance 时在参数中指定 如果默认的L3网络有DNS域 云主机操作系统收到的主机名会自动 使用这个DNS域扩展 例如, 假设主机名为web-server并且默认L3网络的DNS域为zstack.org 那 么最终的机器名将会web-server.zstack.org 标签 hostname::{hostname} 默认L3网络的机器名 示例 hostname::web-server 例如 CreateVmInstance name=vm =hostname::vm1 imageuuid=d720ff0c60ee48 d3a2e6263dd3e12c33 \ instanceofferinguuid=76789b62aeb542a5b4b8b8488fbaced2 \ l3networkuuids=37d3c4a1e2f14a1c8316a23531e62988, f96245f096f3b7dce671991d \ defaultl3networkuuid= f96245f096f3b7dce671991d 全局配置 Global Configurations datavolume.deleteonvmdestroy 类别 默认值 datavolume.deleteo nvmdestroy vm false true false 如果设置为true 当云主机被删除时 云主机上挂载的数据云盘也会被删除 否则 数据云盘仅会 被卸载 6.2 镜像 概览 镜像 云主机使用的镜像模板文件 镜像有ISO和Image两种类型 其中 Image类型支持raw和qcow2两种格式 镜像保存在镜像服务器上 首次创建云主机时 会下载到主存储上作为镜像缓存 镜像平台类型决定了创建云主机时否使用KVM virtio驱动 包括磁盘驱动和网卡驱动 支持以 下类型 Linux 使用virtio驱动 Windows 不使用virtio驱动 使用Qemu模拟设备 镜像操作系统未安装virtio的Windows 145

160 zstack-cli命令 使用手册 / 6 云资源池 WindowsVirtio 使用virtio驱动 镜像操作系统已安装virtio驱动 包括磁盘驱动和网卡驱 动 的Windows Other 不使用virtio驱动 使用Qemu模拟设备 镜像操作系统可以任何操作系统 Paravirtualization 使用virtio驱动 镜像操作系统可以已安装virtio驱动的任何操作系统 镜像路径支持添加URL路径或本地文件上传两种方式 1. URL 采用指定的URL路径来添加镜像 HTTP/HTTPS格式 例如 镜像服务器上的绝对路径 支持Sftp镜像服务器和镜像仓库 例如 file:///opt/zstack-dvd/zstack-image-1.4.qcow2 注: 输入URL时 需确保可被镜像服务器访问 且存在此镜像文件 file:///三个/ 当使用file方式上传镜像时 对应的路径应为镜像服务器的绝对路 径 例如上述file:///opt/zstack-dvd/zstack-image-1.4.qcow2 在镜像服务器的/opt/ zstack-dvd目录下应存放有zstack-image-1.4.qcow2文件 如果镜像服务器为Ceph和FusionStor类型 目前暂不支持file:///格式的输入 2. 本地文件上传 表示选择当前浏览器可访问的镜像直接上传 支持镜像仓库和Ceph镜像服务 器 注: 添加本地文件作为镜像 采用了本地浏览器作为中转上传镜像 需注意请勿刷新或关闭当 前浏览器 也不可停止管理节点服务 否则会添加失败 清单 属性 146 uuid 请参见 资源属性 name 请参见 资源属性 description 请参见 资源属性 state 请参见 state Enabled

161 zstack-cli命令 使用手册 / 6 云资源池 Disabled status 请参见 status Creating Downloading Ready size 镜像大小 单位 字节 url 镜像注册的url, 请 参见 url mediatype 镜像的媒介类 型, 请参见 media type RootVol umetemplate DataVol umetemplate ISO guestostype 该字符串了虚 拟机的操作系统类 型 platform 虚拟机的操作系 Linux 统平台 请参见 Windows platform Paravirtualiza tion Other system 请参见 system image format 请参见 format qcow2 raw md5sum 镜像的md5校验值 type 保留的域 actualsize 真实大小 zstack exportmd5sum exporturl 147

162 zstack-cli命令 使用手册 / 6 云资源池 backupstorager image efs backstorage ref列 表 createdate 请参见 资源属性 lastopdate 请参见 资源属性 示例 { "inventories": [ { "actualsize": , "backupstoragerefs": [ { "backupstorageuuid": "ae840e03a0044b759b0a8c09a141a46b", "createdate": "Oct 30, :32:11 PM", "imageuuid": "fccc12fee6a411d68c42763ded705630", "installpath": "zstore://fccc12fee6a411d68c42763ded705630/b08ea6cad1f a1d8fb72279ed47", "lastopdate": "Oct 30, :32:11 PM", "status": "Ready" } ], "createdate": "Oct 30, :32:11 PM", "description": "", "exportmd5sum": "9b38fe1fd43385b86a1c9b12ac1960fe", "exporturl": " a1d8fb72279ed47.qcow2", "format": "qcow2", "lastopdate": "Oct 30, :35:38 PM", "md5sum": "42e98b8fc79cd8aeffe1b34a2a7021fed621eec0be926139d46e8afc26e78b7 d", "mediatype": "RootVolumeTemplate", "name": "vr-test-2", "platform": "Linux", "size": , "state": "Enabled", "status": "Ready", "system": true, "type": "zstack", "url": " "uuid": "fccc12fee6a411d68c42763ded705630" } ], "success": true } 可用状态 State 镜像有两种状态 Enabled 148

163 zstack-cli命令 使用手册 / 6 云资源池 在这种状态下 允许创建基于该镜像的云主机 Disabled 在这种状态下 不允许创建基于该镜像的云主机 连接状态 Status 连接状态反应了镜像的生命周期 Creating 正在从云盘或云盘快照创建镜像 未就绪不能使用 Downloading 正在从url下载镜像 未就绪不能使用 Ready 镜像已经在镜像服务器中 已就绪可以使用 URL 镜像在镜像服务器中创建的方式不同 url的含义也会不同 如果镜像从网页服务器下载的 url就http/https链接 如果镜像从云盘或者云盘快照创建的 url就云盘或云盘快照的uuid的字符串编码 例如 volume://b395386bdb4a4ff1b1850a457c949c5e volumesnapshot://b395386bdb4a4ff1b1850a457c949c5e 媒介类型 Media Type 媒介类型指示了镜像的用途 RootVolumeTemplate 镜像被用来创建云盘 DataVolumeTemplate 镜像被用来创建数据云盘 ISO 镜像被用来在空白的根云盘上安装操作系统 平台 Platform Zstack根据平台来判断否要使用半虚拟化 paravirtualization 149

164 zstack-cli命令 使用手册 / 6 云资源池 Linux 使用半虚拟化 Paravirtualization 不使用半虚拟化 虚拟机磁盘使用IDE模式 网 Windows 卡使用e1000 Other 系统镜像 System Image 系统镜像仅被用来创建特殊应用云主机 appliance VMs 因而不被用户云主机使用 格式 Format 格式反映了虚拟机管理程序和镜像之间的关系 例如 qcow2格式的镜像仅能被kvm虚拟机使 用 ZStack当前版本仅支持KVM虚拟机管理程序 因此关系表如下 虚拟机管理程序类型 格式 qcow2 KVM raw 创建的云盘会从其所基于的镜像继承格式信息 例如 从qcow2格式的镜像创建的根云盘同样会 qcow2格式 raw格式个特例 从raw格式的镜像创建的云盘会使用qcow2格式 因为ZStack会 通过qcow2格式使用thin-clone 镜像服务器引用 Backup Storage Reference 一个镜像可以存储在一个或多个镜像服务器中 对于所存储的每个镜像服务器 镜像都有一个包 含了镜像服务器uuid以及镜像安装路径的镜像服务器引用 imageuuid 镜像的uuid backupstorageu uid installpath 150 镜像服务器 的uuid 请参见 backup storage 在镜像服务器上的 安装路径 createdate 请参见 资源属性 lastopdate 请参见 资源属性

165 zstack-cli命令 使用手册 / 6 云资源池 示例 { "backupstorageuuid": "ae840e03a0044b759b0a8c09a141a46b", "createdate": "Oct 30, :32:11 PM", "imageuuid": "fccc12fee6a411d68c42763ded705630", "installpath": "zstore://fccc12fee6a411d68c42763ded705630/b08ea6cad1f a1d8fb72279ed47", "lastopdate": "Oct 30, :32:11 PM", "status": "Ready" } 操作 Operations 添加镜像 AddImage 管理员可以使用AddImage添加镜像 例如 AddImage name=testimage url= -4G.qcow2 \ system=false format=qcow2 platform=linux backupstorageuuids=ab3d53288bd14e6eba6ea 56324b66a3f \ mediatype=rootvolumetemplate name 镜像名称 description 镜像的详细 url 被添加镜像的URL 地址 RootVol umetemplate mediatype 镜像的类型 ISO DataVol umetemplate guestostype system 镜像对应客户机操 作系统的类型 否系统镜像 raw format 镜像的格式 qcow2 iso 151

166 zstack-cli命令 使用手册 / 6 云资源池 Linux Windows platform 镜像的系统平台 Windows Virtio Other Paravirtualiza tion backupstorageu 指定添加镜像的镜 uids 像服务器uuid列表 type 内部使用字段 定 镜像会使用该 资源uuid 若指 resourceuuid 字段值作为uuid 源类型 ImageVO 资源类型 ImageVO 删除镜像 DeleteImage 管理员可以使用DeleteImage删除镜像 例如 DeleteImage backupstorageuuids=ab3d53288bd14e6eba6ea56324b66a3f uuid=d10dd07 1a8b04c5aa4a8d98a83c1f979 \ deletemode=permissive 152 uuid 镜像uuid

167 zstack-cli命令 使用手册 / 6 云资源池 backupstorageu 镜像服务器uuid列 uids 表 请参见 删除 deletemode 资源#Delete Resources# Permissive Enforcing 源类型 ImageVO 资源类型 ImageVO 彻底删除镜像 ExpungeImage 管理员可以使用ExpungeImage彻底删除镜像 例如 ExpungeImage backupstorageuuids=ab3d53288bd14e6eba6ea56324b66a3f \ imageuuid=d10dd071a8b04c5aa4a8d98a83c1f979 imageuuid 镜像uuid backupstorageu 镜像服务器uuid列 uids 表 源类型 ImageVO 153

168 zstack-cli命令 使用手册 / 6 云资源池 资源类型 ImageVO 查询镜像 QueryImage 管理员可以使用QueryImage查询镜像 例如 QueryImage status=ready system=true QueryImage volume.vminstanceuuid=85ab231e392d4dfb e9fc3 原生域查询 Primitive Fields of Query 请参见 image inventory 嵌套和扩展域查询 Nested And Expanded Fields of Query 域 Field 清单 Inventory backupstorage backup storage inventory 该镜像所在的镜像服务 volume inventory 从该镜像创建的所有云 volume 器 盘 backupstoragerefs backup storage 用来查询镜像服务器安 reference 装路径的引用 恢复镜像 RecoverImage 管理员可以使用RecoverImage恢复删除 但未彻底删除 的镜像 例如 RecoverImage backupstorageuuids=ab3d53288bd14e6eba6ea56324b66a3f \ imageuuid=2aa6ae40c be0ecb9a6a160b5b 154 imageuuid 镜像uuid backupstorageu 镜像服务器uuid列 uids 表

169 zstack-cli命令 使用手册 / 6 云资源池 源类型 ImageVO 资源类型 ImageVO 修改镜像状态 ChangeImageState 管理员可以使用ChangeImageState修改镜像状态 例如 ChangeImageState uuid=2aa6ae40c be0ecb9a6a160b5b stateevent=disable uuid 镜像uuid stateevent 镜像的状态 enable disable 源类型 ImageVO 资源类型 ImageVO 155

170 zstack-cli命令 使用手册 / 6 云资源池 更新镜像信息 UpdateImage 管理员可以使用UpdateImage更新镜像信息 例如 UpdateImage uuid=2aa6ae40c be0ecb9a6a160b5b name=new-image uuid 镜像uuid name 镜像名称 description 镜像的详细 RootVol umetemplate mediatype 镜像的类型 ISO DataVol umetemplate guestostype system 镜像对应客户机操 作系统的类型 否系统镜像 raw format 镜像的格式 qcow2 iso Linux Windows platform 镜像的系统平台 Windows Virtio Other Paravirtualiza tion 源类型 ImageVO 156

171 zstack-cli命令 使用手册 / 6 云资源池 资源类型 ImageVO 刷新镜像大小信息 SyncImageSize 管理员可以使用SyncImageSize刷新镜像大小信息 例如 SyncImageSize uuid=2aa6ae40c be0ecb9a6a160b5b uuid 镜像uuid 源类型 ImageVO 资源类型 ImageVO 157

172 zstack-cli命令 使用手册 / 6 云资源池 获取镜像服务器候 选 GetCandidateBackupStorageForCreatingImage 管理员可以使用GetCandidateBackupStorageForCreatingImage获取创建镜像的镜像服务器候选 例如 GetCandidateBackupStorageForCreatingImage volumeuuid=493a22431c434505b49af b16a5a6cda6 volumeuuid 云盘uuid volumesnapshot Uuid 云盘快照uuid 源类型 ImageVO 资源类型 ImageVO 创建根云盘镜 像 CreateRootVolumeTemplateFromRootVolume 管理员可以使用CreateRootVolumeTemplateFromRootVolume从根云盘创建根云盘镜像 例如 CreateRootVolumeTemplateFromRootVolume rootvolumeuuid=cc83fc9639cf456c8e43c 35f6d2d52cd \ backupstorageuuids=ab3d53288bd14e6eba6ea56324b66a3f name=new-rootvolume 158 name 根云盘镜像名称

173 zstack-cli命令 使用手册 / 6 云资源池 description guestostype 根云盘镜像的详细 根云盘镜像对应客 户机操作系统类型 backupstorageu 镜像服务器uuid列 uids 表 rootvolumeuuid 根云盘uuid Linux Windows platform 镜像的系统平台 Windows Virtio Other Paravirtualiza tion system 否系统根云盘镜 定 镜像会使用该 像 资源uuid 若指 resourceuuid 字段值作为uuid 源类型 ImageVO 资源类型 ImageVO 标签 Tags 用户可以使用resourceType=ImageVO在镜像上创建用户标签 例如 CreateUserTag resourcetype=imagevo tag=golden-image \ 159

174 zstack-cli命令 使用手册 / 6 云资源池 resourceuuid=ff7c04c4e2874a21a3e795501f1bc 云盘 概览 云盘 云盘 为云主机提供存储 可分为 根云盘 云主机的系统云盘 用于支撑云主机的系统运行 数据云盘 云主机使用的数据云盘 一般用于扩展的存储使用 云盘管理主要涉及数据云盘的管理 云盘使用时 需注意 不同Hypervisor上的云盘不可挂载到不同类型的云主机上 例如 KVM云主机的云盘不能 被VMWare云主机加载 云盘占用空间采用虚拟容量来计算 创建云盘时扣除的云盘的虚拟容量大小 而本身只占用少 量实际容量 随着写入文件额增加 实际容量会逐步增加 非共享 云盘同一时间只能挂载到一个云主机 Ceph类型的主存储支持共享云盘 共享云盘 可被多个云主机识别并同时访问 根云盘作为云主机的附属 不能卸载 数据云盘可在相同类型Hypervisor的不同云主机之间挂载和卸载 多个主存储环境下 可以指定主存储创建云盘 如果未指定主存储 针对本地主存储 云盘默认会从容量大的主存储创建 针对NFS主存储 云盘默认会随机选择一个主存储创建 针对本地主存储+NFS/Shared Mount Point类型主存储 默认会选择与当前根云盘不在同一个 主存储的存储来创建 数据云盘可设置QoS进行磁盘带宽限速 需注意限速不可过低 过低的QoS可能导致IO性能过 低 160

175 zstack-cli命令 使用手册 / 6 云资源池 清单 属性 uuid 请参见 资源属性 name 请参见 资源属性 description 请参见 资源属性 primarystorage Uuid 云盘所在的主存储 的uuid 请参见 primary storage vminstanceuuid 云盘所挂载的虚 拟机的uuid 如果 没有挂载虚拟机 为NULL 请参见 attach VM diskofferinguuid 云盘规格 disk offering 的uuid 如果云盘从 云盘规格创建出来 的 rootimageuuid 镜像 image 的uuid 如果 云盘从一个镜像 创建出来的 installpath 云盘在主存储上的 安装路径 type 云盘的类型 Root Data format 请参见 format size 云盘的虚拟大小 qcow2 单位字节 actualsize isshareable deviceid 请参见 device id 161

176 zstack-cli命令 使用手册 / 6 云资源池 state 请参见 state Enabled Disabled status 请参见 status Creating Ready NotInstantiate d createdate 请参见 资源属性 lastopdate 请参见 资源属性 示例 { "inventories": [ { "actualsize": , "createdate": "Nov 14, :21:32 PM", "description": "Root volume for VM[uuid: b405e41a2afa22d0f6d7ab6f8]", "deviceid": 0, "format": "qcow2", "installpath": "/zstack_ps_nxs/rootvolumes/acct-36c27e8ff05c4780bf6d2fa65700f22e/ vol-c33a897 db91e461a9cbc011b0aa441c9/c33a897db91e461a9cbc011b0aa441c9.qcow2", "isshareable": false, "lastopdate": "Nov 14, :21:33 PM", "name": "ROOT-for-pub", "primarystorageuuid": "cae8726c90784ba0946f ", "rootimageuuid": "e29e00c1d18a486b8802a8f53c6a6e4f", "size": , "state": "Enabled", "status": "Ready", "type": "Root", "uuid": "c33a897db91e461a9cbc011b0aa441c9", "vminstanceuuid": " b405e41a2afa22d0f6d7ab6f8" } ], "success": true } 挂载的虚拟机 Attached VM 数据云盘可以被挂载到正在运行的 Running 或者已经停止的 Stopped 云主机上 但在同一 时间一个云盘只能挂载到一个云主机上 挂载后云主机的uuid会出现在vmInstanceUuid中 数据 云盘可以从一个云主机上卸载 然后挂载到另一个云主机上 但这两个云主机需要相同类型的 虚拟机管理程序管理的 根云盘总被挂载到拥有它的云主机上 不能被卸载 162

177 zstack-cli命令 使用手册 / 6 云资源池 格式 Format 云盘格式揭示了云盘和虚拟机管理程序之间的关系 指示了该云盘可以挂载到哪种虚拟机管理程序 管理的云主机上 设备ID Device ID 设备号表明了云盘挂载到云主机的顺序 由于第一个被挂载的云盘总根云盘 它将有固定的设 备ID 0 数据云盘则可能有1 2 3 N这样的设备ID 取决于他们挂载到云主机的顺序 设 备ID可以用来识别云盘在客户操作系统 guest operating system 中的盘符 disk letter 例 如 在Linux系统中 0通常代表/dev/xvda 1通常代表/dev/xvdb 依次类推 可用状态 State 云盘有两种可用状态 Enabled 启用 Enabled 状态下 允许云盘被挂载到云主机上 Disabled 禁用 Disabled 状态下 不允许云盘被挂载到云主机上 然而 数据云盘总可以被卸 载 即使已经禁用状态的数据云盘也可以被卸载 连接状态 Status 连接状态体现了云盘的生命周期 NotInstantiated 数据云盘特有的状态 在这个连接状态中 数据云盘只存在于数据库的表记录中 NotInst antiated状态的数据云盘可以挂载到任何类型虚拟机管理程序管理的云主机上 当他们挂载到云 主机上后 他们会在主存储上被实例化为虚拟机管理程序类型的实际二进制文件 挂载之后 数 据云盘的hypervisorType域会存储云主机对应的虚拟机管理程序类型 同时连接状态会改为就 绪 Ready 在这之后 这些数据云盘就只能被重新挂载到相同类型虚拟机管理程序管理的云 主机上了 Ready 在这种状态时 云盘已经在主存储上实例化 已就绪可以使用 Creating 在这种状态时 正在从镜像或云盘快照创建云盘 未就绪不能使用 163

178 zstack-cli命令 使用手册 / 6 云资源池 连接状态转换图如图 18: 云盘连接状态转换图所示 图 18: 云盘连接状态转换图 操作 Operations 创建云盘 CreateDataVolume 管理员可以使用CreateDataVolume创建云盘 例如 CreateDataVolume name=testvolume diskofferinguuid=73432f99feef483b97f984ff e name 云盘名称 description 云盘的 diskofferinguuid 云盘规格uuid primarystorage Uuid 主存储uuid 定 镜像会使用该 资源uuid 若指 resourceuuid 字段值作为uuid 164

179 zstack-cli命令 使用手册 / 6 云资源池 源类型 VolumeVO 资源类型 VolumeVO 删除云盘 DeleteDataVolume 管理员可以使用DeleteDataVolume删除云盘 例如 DeleteDataVolume uuid=2929b9e85c32478ea c0d01a uuid 云盘uuid 资源#Delete 请参见 删除 deletemode Resources# Permissive Enforcing 源类型 VolumeVO 资源类型 VolumeVO 165

180 zstack-cli命令 使用手册 / 6 云资源池 彻底删除云盘 ExpungeDataVolume 管理员可以使用ExpungeDataVolume彻底删除云盘 例如 ExpungeDataVolume uuid=2929b9e85c32478ea c0d01a uuid 云盘uuid 源类型 VolumeVO 资源类型 VolumeVO 恢复云盘 RecoverDataVolume 管理员可以使用RecoverDataVolume恢复云盘 例如 RecoverDataVolume uuid=8994e6524c4945a0bf76d df uuid 云盘uuid 源类型 VolumeVO 166

181 zstack-cli命令 使用手册 / 6 云资源池 资源类型 VolumeVO 开启或关闭云盘 ChangeVolumeState 管理员可以使用ChangeVolumeState开启或关闭云盘 例如 ChangeVolumeState uuid=8994e6524c4945a0bf76d df stateevent=enable uuid 云盘uuid stateevent 开启或关闭 enable disable 源类型 VolumeVO 资源类型 VolumeVO 从镜像创建云 盘 CreateDataVolumeFromVolumeTemplate 管理员可以使用CreateDataVolumeFromVolumeTemplate从镜像创建云盘 例如 CreateDataVolumeFromVolumeTemplate name=new-volume imageuuid=bbe7c4538bfb42 0c84d417c8af0cfcc2 \ 167

182 zstack-cli命令 使用手册 / 6 云资源池 primarystorageuuid=49304a747e befdba8f64a5e47 imageuuid 镜像uuid name 云盘名称 description 云盘的详细 primarystorage Uuid 主存储uuid hostuuid 物理机uuid resourceuuid 资源uuid 源类型 VolumeVO 资源类型 VolumeVO 从快照创建云 盘 CreateDataVolumeFromVolumeSnapshot 管理员可以使用CreateDataVolumeFromVolumeSnapshot从快照创建云盘 例如 CreateDataVolumeFromVolumeSnapshot volumesnapshotuuid=0e4b6901bc964e7d9ec36 9eefdc8ba55 \ name=newsnapshotvolume primarystorageuuid=49304a747e befdba8f64a5e volumesnapshot Uuid 云盘快照uuid name 云盘名称

183 zstack-cli命令 使用手册 / 6 云资源池 description 云盘的详细 primarystorage Uuid 主存储uuid resourceuuid 资源uuid 源类型 VolumeVO 资源类型 VolumeVO 获取云盘清单 QueryVolume 管理员可以使用QueryVolume获取云盘清单 例如 QueryVolume type=data vminstanceuuid=71f5376ef53a46a9abddd59c942cf45f QueryVolume diskoffering.name=small primarystorage.uuid=8db7eb2ccdab4c4eb4784 e46895bb016 原生域查询 Primitive Fields of Query 请参见 volume inventory 嵌套和扩展域查询 Nested And Expanded Fields of Query 域 Field) 清单 Inventory vminstance vm inventory 云盘所挂载的云主机 snapshot volume snapshot inventory 从该云盘创建出来的所 disk offering inventory 从该云盘创建出来的所 diskoffering 有云盘快照 有云盘规格 169

184 zstack-cli命令 使用手册 / 6 云资源池 域 Field) 清单 Inventory primarystorage primary storage 该云盘所在的主存储 inventory image image inventory 从该云盘创建出来的镜 像 获取云盘格式 GetVolumeFormat 管理员可以使用GetVolumeFormat获取云盘格式 返回示例 { "formats": [ { "format": "iso", "supportinghypervisortypes": [] }, { "format": "raw", "masterhypervisortype": "KVM", "supportinghypervisortypes": [ "KVM" ] }, { "format": "vmtx", "masterhypervisortype": "ESX", "supportinghypervisortypes": [ "ESX" ] }, { "format": "qcow2", "masterhypervisortype": "KVM", "supportinghypervisortypes": [ "KVM" ] } ] } 源类型 VolumeVO 170

185 zstack-cli命令 使用手册 / 6 云资源池 资源类型 VolumeVO 获取云盘支持的类型的能力 GetVolumeCapabilities 管理员可以使用GetVolumeCapabilities获取云盘支持的类型的能力 例如 GetVolumeCapabilities uuid=30b1f7abb7884b80bbdacaf0fd1c7fe9 uuid 云盘uuid 源类型 VolumeVO 资源类型 VolumeVO 同步云盘大小 SyncVolumeSize 管理员可以使用SyncVolumeSize同步云盘大小 例如 SyncVolumeSize uuid=30b1f7abb7884b80bbdacaf0fd1c7fe9 uuid 云盘uuid 171

186 zstack-cli命令 使用手册 / 6 云资源池 源类型 VolumeVO 资源类型 VolumeVO 修改云盘属性 UpdateVolume 管理员可以使用UpdateVolume修改云盘属性 例如 UpdateVolume uuid=30b1f7abb7884b80bbdacaf0fd1c7fe9 name=newvolume uuid 云盘uuid name 云盘名称 description 云盘的详细 源类型 VolumeVO 资源类型 VolumeVO 172

187 zstack-cli命令 使用手册 / 6 云资源池 设置云盘限速 SetVolumeQoS 管理员可以使用SetVolumeQoS设置云盘限速 例如 SetVolumeQos uuid=30b1f7abb7884b80bbdacaf0fd1c7fe9 volumebandwidth=10000 uuid 云盘uuid volumebandwidth 云盘限速带宽 源类型 VolumeVO 资源类型 VolumeVO 获取云盘限速 GetVolumeQoS 管理员可以使用GetVolumeQoS获取云盘限速 例如 GetVolumeQos uuid=30b1f7abb7884b80bbdacaf0fd1c7fe9 uuid 云盘uuid 源类型 VolumeVO 173

188 zstack-cli命令 使用手册 / 6 云资源池 资源类型 VolumeVO 取消云盘网卡限速 DeleteVolumeQoS 管理员可以使用DeleteVolumeQoS取消云盘网卡限速 例如 DeleteVolumeQos uuid=30b1f7abb7884b80bbdacaf0fd1c7fe9 uuid 云盘uuid 源类型 VolumeVO 资源类型 VolumeVO 获取云盘否能被加载 GetDataVolumeAttachableVm 管理员可以使用GetDataVolumeAttachableVm获取云盘否能被加载 例如 GetDataVolumeAttachableVm volumeuuid=30b1f7abb7884b80bbdacaf0fd1c7fe9 volumeuuid 云盘uuid 174

189 zstack-cli命令 使用手册 / 6 云资源池 源类型 VolumeVO 资源类型 VolumeVO 挂载云盘到云主机上 AttachDataVolumeToVm 管理员可以使用AttachDataVolumeToVm挂载云盘到云主机上 例如 AttachDataVolumeToVm volumeuuid=30b1f7abb7884b80bbdacaf0fd1c7fe9 \ vminstanceuuid=108af59a0f4e4d6cb838a5591db1016a vminstanceuuid 云主机uuid volumeuuid 云盘uuid 源类型 VolumeVO 资源类型 VolumeVO 175

190 zstack-cli命令 使用手册 / 6 云资源池 从云主机上卸载云盘 DetachDataVolumeFromVm 管理员可以使用DetachDataVolumeFromVm从云主机上卸载云盘 例如 DetachDataVolumeFromVm uuid=30b1f7abb7884b80bbdacaf0fd1c7fe9 uuid 云盘uuid vmuuid 云主机uuid 源类型 VolumeVO 资源类型 VolumeVO 从云盘创建快照 CreateVolumeSnapshot 管理员可以使用CreateVolumeSnapshot从云盘创建快照 例如 CreateVolumeSnapshot volumeuuid=30b1f7abb7884b80bbdacaf0fd1c7fe9 name=newsnap shot volumeuuid 云盘uuid name 快照名称 description 快照的详细 resourceuuid 资源uuid 176

191 zstack-cli命令 使用手册 / 6 云资源池 源类型 VolumeVO 资源类型 VolumeVO 查询云盘快照 QueryVolumeSnapshot 管理员可以使用QueryVolumeSnapshot查询云盘快照 例如 QueryVolumeSnapshot uuid=2a fe0a48da09d9ee879dd 原生域查询 Primitive Fields of Query 请参见 volume snapshot inventory 嵌套和扩展域查询 Nested And Expanded Fields of Query 域 Field) 清单 Inventory backupstorage backup storage inventory backupstorageref backupstoragerefs localstoragehostref primarystorage primary storage inventory tree volume volume inventory 177

192 zstack-cli命令 使用手册 / 6 云资源池 查询快照树 QueryVolumeSnapshotTree 管理员可以使用QueryVolumeSnapshotTree查询快照树 例如 QueryVolumeSnapshotTree uuid=b3e785f593bd4dc7b74bd0be1f612de8 原生域查询 Primitive Fields of Query 请参见 volume snapshot inventory 嵌套和扩展域查询 Nested And Expanded Fields of Query 域 Field) 清单 Inventory snapshot snapshot inventory volume volume inventory 更新云盘快照信息 UpdateVolumeSnapshot 管理员可以使用UpdateVolumeSnapshot更新云盘快照信息 例如 UpdateVolumeSnapshot uuid=b3e785f593bd4dc7b74bd0be1f612de8 uuid 快照uuid name 快照的新名称 description 快照的新详细 源类型 VolumeVO 资源类型 VolumeVO 178

193 zstack-cli命令 使用手册 / 6 云资源池 删除云盘快照 DeleteVolumeSnapshot 管理员可以使用DeleteVolumeSnapshot删除云盘快照 例如 DeleteVolumeSnapshot uuid=b3e785f593bd4dc7b74bd0be1f612de8 deletemode=permissive uuid 快照uuid 资源#Delete 请参见 删除 deletemode Resources# Permissive Enforcing 源类型 VolumeVO 资源类型 VolumeVO 将云盘回滚至指定快照 RevertVolumeFromSnapshot 管理员可以使用RevertVolumeFromSnapshot将云盘回滚至指定快照 例如 RevertVolumeFromSnapshot uuid=ee70cdf1f9c a9708bb6434 uuid 快照uuid 源类型 VolumeVO 179

194 zstack-cli命令 使用手册 / 6 云资源池 资源类型 VolumeVO 标签 Tags 用户可以使用resourceType=VolumeVO在云盘上创建标签 例如 CreateUserTag resourcetype=volumevo tag=goldenvolume \ resourceuuid=f97b8cb9bccc4872a723c8b7785d9a 计算规格 概览 计算规格 云主机的CPU 内存 磁盘带宽 网络带宽的数量或大小规格定义 清单 属性 uuid 请参见 资源属性 name 请参见 资源属性 description 请参见 资源属性 cpunum VCPU数目, 请参 见 CPU capacity cpuspeed VCPU速度, 请参 见 CPU capacity memorysize 内存大小 单位 字节 type 计算规格类型, 默 认为UserVm 请 参见 type 180 UserVm VirtualRouter

195 zstack-cli命令 使用手册 / 6 云资源池 allocatorstrategy 主机分配策略, 请参见 allocator state DefaultHostAll ocatorstrategy strategy Designa tedhostallocat orstrategy 请参见 state Enabled Disabled sortkey createdate 请参见 资源属性 lastopdate 请参见 资源属性 示例 { } "inventories": [ { "allocatorstrategy": "LeastVmPreferredHostAllocatorStrategy", "cpunum": 1, "cpuspeed": 0, "createdate": "Oct 30, :51:50 PM", "description": "", "lastopdate": "Oct 30, :49:03 PM", "memorysize": , "name": "1G-1CPU", "sortkey": 0, "state": "Enabled", "type": "VirtualRouter", "uuid": "fa550cb9bdcc4fd397ae37f9ddf4c390" } ], "success": true CPU容量 CPU Capacity 计算规格使用cpuNum和cpuSpeed来定义云主机的CPU容量 cpunum直接代表了云主机所拥有 的VCPU数量 cpuspeed有些特别 由于云主机的VCPU总和物理机上的物理CPU有相同的频 率 这里的cpuSpeed实际上指在虚拟机管理程序中的VCPU权重 weight 虚拟机管理程序不 同 对于cpuSpeed的使用和实现也不同 KVM CPU速度 KVM CPU Speed 在KVM中 ZStack会使用cpuSpeed * cpunum的结果来设置libvirt的虚拟机xml配置 <cputune> 181

196 zstack-cli命令 使用手册 / 6 云资源池 <shares>128</shares> </cputune> shares = cpunum * cpuspeed 类型 Type 计算规格的类型 当前有两种计算规格类型 UserVm 创建用户云主机所使用的计算规格 VirtualRouter 创建云路由 virtual router 云主机所使用的计算规格 分配策略 Allocator Strategy 分配策略定义了选择用于创建云主机的物理机的算法 DefaultHostAllocatorStrategy 输入参数 Input Parameters :widths: :header-rows: 1 * - - * - **image** - 用于创建虚拟机的镜像 * - **L3 network** - 虚拟机的网卡将连接到的L3网络 * - **instance offering** - 计算规格 * - **tags** - 用于主机分配的标签 算法 Algorithm l2_networks = get_parent_l2_networks(l3_networks) host_set1 = find_hosts_in_cluster_that_have_attached_to_l2_networks() check_if_backup_storage_having_image_have_attached_to_zone_of_hosts(host_set1) host_set2 = remove_hosts_not_having_state_enabled_and_status_connected(host_set1) host_set3 = remove_hosts_not_having_capacity_required_by_instance_offering(host_set2) primary_storage = find_enabled_connected_primary_storage_having_enough_capacity_f or_root_volume_and_attached\ _to_clusters_of_hosts(image, host_set3) host_set4 = remove_hosts_that_cannot_access_primary_storage(host_set3) host_set5 = remove_avoided_hosts(host_set4) host_set6 = call_tag_plugin(tags, host_set5) 182

197 zstack-cli命令 使用手册 / 6 云资源池 return randomly_pick_one_host(host_set6) DesignatedHostAllocatorStrategy DesignatedHostAllocatorStrategy使用下面的算法 输入参数 Input Parameters :widths: :header-rows: 1 * * - **image** - 用于创建虚拟机的镜像 * - **L3 network** - 虚拟机的网卡将连接到的L3网络 * - **instance offering** - 计算规格 * - **tags** - 用于主机分配的标签 * - **zone** - 虚拟机想要运行的区域 - * - **cluster** - 虚拟机想要运行的集群 - * - **host** - 虚拟机想要运行的主机 - 算法 Algorithm l2_networks = get_parent_l2_networks(l3_networks) host_set1 = find_hosts_in_cluster_that_have_attached_to_l2_networks() check_if_backup_storage_having_image_have_attached_to_zone_of_hosts(host_set1) if host is not null: host_set2 = list(find_host_in_host_set1(host)) else if cluster is not null: host_set2 = find_host_in_cluster_and_host_set1(cluster) else if zone is not null: host_set2 = find_host_in_zone_and_host_set1(zone) host_set3 = remove_hosts_not_having_state_enabled_and_status_connected(host_set2) host_set4 = remove_hosts_not_having_capacity_required_by_instance_offering(host_set3) primary_storage = find_enabled_connected_primary_storage_having_enough_capacity_f or_root_volume_and_attached\ _to_clusters_of_hosts(image, host_set4) host_set5 = remove_hosts_that_cannot_access_primary_storage(host_set4) host_set6 = remove_avoided_hosts(host_set5) host_set7 = call_tag_plugin(tags, host_set6) 183

198 zstack-cli命令 使用手册 / 6 云资源池 return randomly_pick_one_host(host_set7) 可用状态 State 计算规格有两种可用状态 Enabled 启用 Enabled 状态下 允许从计算规格创建云主机 Disabled 禁用 Disabled 状态下 不允许从计算规格创建云主机 操作 Operations 创建云主机规格 CreateInstanceOffering 管理员可以使用CreateInstanceOffering创建云主机规格 例如 CreateInstanceOffering name=test cpunum=1 memorysize= name 计算规格名称 description cpunum memorysize 计算规格的详细描 述 CPU数目 内存大小 大 小Byte allocatorstrategy 分配策略 sortkey 排序键 type 类型 定 镜像会使用该 资源uuid 若指 resourceuuid 字段值作为uuid 184

199 zstack-cli命令 使用手册 / 6 云资源池 源类型 InstanceOfferingVO 资源类型 InstanceOfferingVO 删除云主机规格 DeleteInstanceOffering 管理员可以使用DeleteInstanceOffering删除云主机规格 例如 DeleteInstanceOffering uuid=ecf1f40130b148b39f82c07921ee11ff uuid 计算规格uuid 资源#Delete 请参见 删除 deletemode Resources# Permissive Enforcing 源类型 InstanceOfferingVO 资源类型 InstanceOfferingVO 185

200 zstack-cli命令 使用手册 / 6 云资源池 查询云主机规格 QueryInstanceOffering 管理员可以使用QueryInstanceOffering查询云主机规格 例如 QueryInstanceOffering cpuspeed=512 cpunum>2 QueryInstanceOffering vminstance.state=stopped 原生域查询 Primitive Fields of Query 请参见 instance offering inventory 嵌套和扩展域查询 Nested and Expanded Fields of Query 域 Field 清单 Inventory vminstance vm inventory 由该计算规格创建的云 主机 更改云主机规格 ChangeInstanceOffering 管理员可以使用ChangeInstanceOffering更改云主机规格 例如 ChangeInstanceOffering vminstanceuuid=108af59a0f4e4d6cb838a5591db1016a instanceofferinguuid=f1dacd026c7645deaeeaef4e89313c8e vminstanceuuid 云主机uuid instanceofferi nguuid 计算规格uuid 源类型 InstanceOfferingVO 资源类型 InstanceOfferingVO 186

201 zstack-cli命令 使用手册 / 6 云资源池 更新云主机规格 UpdateInstanceOffering 管理员可以使用UpdateInstanceOffering更新云主机规格 例如 UpdateInstanceOffering uuid=32190aabcf47470c90b20bd849767a49 uuid 计算规格uuid name 计算规格名称 description 计算规格的详细描 述 源类型 InstanceOfferingVO 资源类型 InstanceOfferingVO 更改云主机规格的启用状 态 ChangeInstanceOfferingState 管理员可以使用ChangeInstanceOfferingState更改云主机规格的启用状态 例如 ChangeInstanceOfferingState stateevent=enable uuid=32190aabcf47470c90b20bd849767a49 uuid 计算规格uuid stateevent 状态事件 enable disable 187

202 zstack-cli命令 使用手册 / 6 云资源池 源类型 InstanceOfferingVO 资源类型 InstanceOfferingVO 标签 Tags 用户可以使用resourceType=InstanceOfferingVO在计算规格上创建用户标签 例如 CreateUserTag resourcetype=instanceofferingvo tag=web-server-offering \ resourceuuid=45f909969ce24865b1bbca4adb66710a 系统标签 System Tags 专用主存储 Dedicated Primary Storage 当创建云主机的时候 用户可以通过系统标签指定从哪个主存储创建根云盘 标签 示例 如果该标签存在 云 主机的根云盘会从uuid primarystorage primarystorage ::allocator::uuid 果指定的主存储不存在 ::allocator::uuid::{uuid} ::b8398e8b7ff245 或没有足够的容量 会 27a3b81dc4bc64d974 报告分配失败 allocat 指定的主存储分配 如 ion failure 如果该标签存在 云 primarystorage ::allocator::usertag:: {tag}::required 主机的根云盘会从带 有用户标签tag的主存 储分配;如果指定的主 存储不存在或没有足够 primarystorage ::allocator::usertag ::SSD::required 的容量 会报告分配失 188

203 zstack-cli命令 使用手册 / 6 云资源池 标签 示例 败 allocation failure 如果该标签存在 云 主机的根云盘会首先尝 primarystorage ::allocator::usertag:: {tag} 试从带有用户标签tag primarystorage ::allocator::usertag 不到带指定标签的主存 ::SSD 储或容量不足 ZStack 的主存储分配 如果找 会随机选择一个主存储 分配这个根云盘 如果在计算规格上有多个上面提到的系统标签存在 它们的优先顺序 primarystorage::allocator::uuid::{uuid} > primarystorage::allocator::usertag::{tag}::\ required > primarystorage::allocator::usertag::{tag} 6.5 云盘规格 概览 云盘规格 云主机使用的云盘的大小规格定义 云盘规格可以用来创建根云盘和数据云盘 清单 属性 uuid 请参见 资源属性 name 请参见 资源属性 description 请参见 资源属性 disksize 单位为字节的云盘 大小, 请参见 disk size state 请参见 state Enabled Disabled 189

204 zstack-cli命令 使用手册 / 6 云资源池 type allocatorstrategy 保留的域 zstack 请参见 allocator DefaultPrimary StorageAllocat ionstrategy strategy sortkey createdate 请参见 资源属性 lastopdate 请参见 资源属性 示例 { } "inventories": [ { "allocatorstrategy": "DefaultPrimaryStorageAllocationStrategy", "createdate": "Oct 30, :09:45 PM", "description": "", "disksize": , "lastopdate": "Oct 30, :09:45 PM", "name": "10G", "sortkey": 0, "state": "Enabled", "type": "DefaultDiskOfferingType", "uuid": "6c2385bb60f84c269504ca6ea71fe2d1" } ], "success": true 云盘大小 Disk Size DiskSize定义了云盘的虚拟大小 virtual size 虚拟大小指云盘声明的大小 也就云盘完全 填满后的在存储系统中所占的大小 可用状态 State 云盘规格有两种可用状态 Enabled 启用 Enabled 状态下 允许从云盘规格创建云盘 Disabled 禁用 Disabled 状态下 不允许从云盘规格创建云盘 190

205 zstack-cli命令 使用手册 / 6 云资源池 分配策略 Allocator Strategy 分配策略定义了ZStack怎么选择用于创建新云盘的主存储 ZStack当前版本仅支持寻找满足下列条 件主存储的DefaultPrimaryStorageAllocationStrategy策略 1. 可用状态为启用 Enabled 2. 连接状态为已连接 Connected 3. 可用容量 availablecapacity 比云盘规格的diskSize大 4. 已挂载到云盘将要挂载的云主机所在的集群 操作 Operations 创建云盘规格 CreateDiskOffering 管理员可以使用CreateDiskOffering创建云盘规格 例如 CreateDiskOffering name=test disksize=100 name 云盘规格名称 description 云盘规格的详细描 述 disksize 云盘大小 allocatorstrategy 分配策略 sortkey 排序键 type 类型 定 镜像会使用该 资源uuid 若指 resourceuuid 字段值作为uuid 源类型 DiskOfferingVO 191

206 zstack-cli命令 使用手册 / 6 云资源池 资源类型 DiskOfferingVO 删除云盘规格 DeleteDiskOffering 管理员可以使用DeleteDiskOffering删除云盘规格 例如 DeleteDiskOffering uuid=84c e86592d2fa1c965 uuid 云盘规格uuid 资源#Delete 请参见 删除 deletemode Resources# Permissive Enforcing 源类型 DiskOfferingVO 资源类型 DiskOfferingVO 查询云盘规格 QueryDiskOffering 管理员可以使用QueryDiskOffering查询云盘规格 例如 QueryDiskOffering disksize>= QueryDiskOffering volume.name=data1 原生域查询 Primitive Fields of Query 请参见 instance offering inventory 192

207 zstack-cli命令 使用手册 / 6 云资源池 嵌套和扩展域查询 Nested and Expanded Fields of Query 域 Field 清单 Inventory volume volume inventory 由该云盘规格创建的云 盘 更改云盘规格的启用状态 ChangeDiskOfferingState 管理员可以使用ChangeDiskOfferingState更改云盘规格的启用状态 例如 ChangeDiskOfferingState uuid=c9dd395cb5f04f4ba9eb1e62b886fe62 stateevent=enable uuid 云盘规格uuid stateevent 状态事件 enable disable 源类型 DiskOfferingVO 资源类型 DiskOfferingVO 更新云盘规格 UpdateDiskOffering 管理员可以使用UpdateDiskOffering更新云盘规格 例如 UpdateDiskOffering uuid=c9dd395cb5f04f4ba9eb1e62b886fe62 name=test uuid 云盘规格uuid 193

208 zstack-cli命令 使用手册 / 6 云资源池 name 云盘规格名称 description 云盘规格的详细描 述 源类型 DiskOfferingVO 资源类型 DiskOfferingVO 标签 Tags 用户可以使用resourceType=DiskOfferingVO在云盘规格上创建用户标签 例如 CreateUserTag tag=smalldisk resourcetype=diskofferingvo \ resourceuuid=d6c49e73927d40abbfcf13852dc18367 系统标签 System Tags 专用主存储 Dedicated Primary Storage 当从云盘规格创建云盘的时候 用户可以通过系统标签指定从哪个主存储创建云盘 标签 示例 primarystorage 如果该标签存在, 从该 primarystorage ::allocator::uuid::{uuid} 云盘规格创建的云盘会 ::allocator::uuid 从uuid指定的主存储分 ::b8398e8b7ff245 27a3b81dc4bc64d974 配;如果指定的主存储 不存在或没有足够的 容量 会报告分配失 败 allocation failure 194

209 zstack-cli命令 使用手册 / 6 云资源池 标签 示例 primarystorage 如果该标签存在, 从该 primarystorage ::allocator::usertag:: 云盘规格创建的云盘 ::allocator::usertag {tag}::required 会从带有用户标签tag ::SSD::required 的主存储分配;如果指 定的主存储不存在或没 有足够的容量 会报告 分配失败 allocation failure primarystorage ::allocator::usertag:: 如果该标签存在, 从该 云盘规格创建的云盘 primarystorage ::allocator::usertag {tag} 会首先尝试从带有用 ::SSD 户标签tag的主存储分 配, 如果找不到带指定 标签的主存储或容量不 足 ZStack会随机选择 一个主存储分配这个云 盘 如果在云盘规格上有多个上面提到的系统标签存在 它们的优先顺序 primarystorage::allocator::uuid::{uuid} > primarystorage::allocator::usertag::{tag}::required > \ primarystorage::allocator::usertag::{tag} 195

210 zstack-cli命令 使用手册 / 7 网络 7 网络 7.1 二层网络 概览 二层网络 对应于一个二层广播域 进行二层相关的隔离 一般用物理网络的设备名称标识 VLAN VXLAN 或者SDN等能提供二层隔离技术都可作为二层网络 二层网络负责为三层网络提供二层隔离 如图 19: 二层网络所示 图 19: 二层网络 二层网络主要支持的四种类型 二层网络主要支持以下四种类型 1. L2NoVlanNetwork NoVlanNetwork类型表示相关的物理机对应的网络设备不设置VLAN 如果交换机端口设置了VLAN 则需在交换机端配置Access模式 如果交换机端口没有设置VLAN, 则无须特别设置 2. L2VlanNetwork VlanNetwork类型表示相关的物理机对应的网络设备需设置VLAN 196

211 zstack-cli命令 使用手册 / 7 网络 从逻辑上划分虚拟局域网 支持1-4094个子网 此类型需在物理机接入的交换机端进行Trunk设置 3. VxlanNetworkPool VxlanNetworkPool类型表示使用UDP进行报文封装的VXLAN类型的集合 基于IP网络组建的 大二层网络 可满足大规模云计算中心的需求 最大支持16M个逻辑子网 4. VxlanNetwork VxlanNetwork类型表示使用VXLAN的子网进行网络配置 需要先建立VxlanNetworkPool 再建 立VxlanNetwork 注: 二层网络中需要输入网卡设备名称 在CentOS 7系列系统中 ethx格式的网卡名称会在系统重启后导致网卡顺序随机改 变 建议将各计算节点的网卡设备名称修改成非ethx格式 例如 可修改成em01格 式 二层网络与集群 三层网络 云主机之间的关系 二层网络与集群 三层网络 云主机之间存在以下关系 如果集群已挂载二层网络 但物理机不存在此二层设备 则物理机不能添加进入对应集群 如果集群未挂载二层网络 但物理机不存在此二层设备 则集群不能挂载此二层网络 如果某物理机存在此二层设备 但设备接线与集群内其他物理机接线不一致 则创建的云主机 的IP不能正常工作 删除二层网络 其对应的子资源三层网络将被删除 使用此三层网络的云主机的网卡也将被删 除 删除公有网络对应的二层网络 其对应的云路由的一切服务均会被删除 包括云路由设备 云路 由规格 虚拟IP 弹性IP 端口转发 负载均衡 IPsec等 删除云路由对应的二层网络 其对应的云路由设备将会被删除 同一个集群不能挂载两个相同的二层网络 VxlanNetwork下的云主机无法被外部的网络直接访问 需要通过弹性IP或者端口转发等服务进行 间接访问 一个VxlanNetworkPool可以创建多个VxlanNetwork 这些VxlanNetwork可以分别应用于扁平网 络或云路由网络 197

212 zstack-cli命令 使用手册 / 7 网络 清单 属性 uuid 请参见 资源属性 name 请参见 资源属性 description 请参见 资源属性 zoneuuid 父区域的uuid 请参见 zone physicalinterface 请参见 physical interface type L2网络类型 L2NoVla nnetwork L2VlanN etwork VxlanNe tworkpool VxlanNetwork attachedcluste ruuids L2网络挂载的集 群的列表 请参 见 attach cluster createdate 请参见 资源属性 lastopdate 请参见 资源属性 示例 { } 198 "attachedclusteruuids": [], "createdate": "Oct 30, :42:40 PM", "description": "", "lastopdate": "Oct 30, :42:40 PM", "name": "L2Vxlan", "physicalinterface": "", "pooluuid": "1cac60dd6f124861aa99d85f51a9b4fe", "type": "VxlanNetwork", "uuid": "eaf2228ab0f841ac8f78c c5b", "vni": 6772, "zoneuuid": "e59b71e99d8a4ea1952b578388b8cd1d"

213 zstack-cli命令 使用手册 / 7 网络 物理接口 Physical Interface 物理接口一个字符串 例如eth0 它代表了数据中心里二层网络 L2 的信息 不同L2网络类 型和不同虚拟机管理程序类型通常会有不同的物理接口 这听起来稍有些复杂 这主要归结于虚拟 机管理程序会使用它自己的标记方式 notations 来L2网络 并且L2网络可以被同时挂载到 多个拥有不同虚拟机管理系统的集群上 下面的一个实际可能可以帮助理解 假设数据中心有一个L2网络 l2network A 这个L2网络跨越两个集群 一个KVM集群 另一 个VMWare集群 在KVM中 L2网络使用Linux操作系统中的以太网设备 ethernet device 实 现的 在这个例子中 假设每个KVM主机通过eth0连接到L2网络 在VMWare集群中 L2网络 使用vswitch实现的 在这个例子中 假设VMWare集群使用vswitch0连接到L2网络 这样 整个拓 扑结构如图 20: L2网络拓扑结构所示 图 20: L2网络拓扑结构 很多看似应用到区域和集群上的操作 实际都被指派到对应的物理机上了 当挂载L2网络A到KVM 集群和VMWare集群的时候 ZStack必须能够理解在这些集群中虚拟机管理程序如何使用标记描 述L2网络 在这种情况下 ZStack必须知道在KVM物理机上eth0代表了L2网络 而在VMWare物 理机上vswitch0代表了L2网络 所以物理接口的也反映了不同的虚拟机管理程序 挂载集群 Attaching Cluster 挂载集群为了将L2网络和同一个区域中的集群 sibling clusters 关联起来 它提供了一种灵活 的方式来维护数据中心中物理机和二层网络 layer 2 networks 之间的关系 我们来看一个实际 的例子 如图 21: 挂载集群所示 图 21: 挂载集群 199

214 zstack-cli命令 使用手册 / 7 网络 假设数据中心中的网络拓扑结构如上图所示 所有集群中的物理机的eth0都连接在同一个称为L2 Network1的二层网络上 集群cluster1和cluster3中物理机的eth1都连接在另一个称为L2 network2 的二层网络上 为了ZStack中这个拓扑结构 可以将L2 network1挂载到所有三个集群上 同 时只将L2 network2挂载到集群cluster1和cluster3上 几个月之后 由于一些业务的需求网络拓扑结构需要作一些改变 将集群cluster3中的物理 机上eth1所连接的网线从机架交换机 rack switch 上断开 这样集群cluster3就不再和L2 network2相连了 可以通过将L2 network2从cluster3上卸载来通知zstack网络拓扑结构发生了改 变 如图 22: 改变挂载集群所示 图 22: 改变挂载集群 200

215 zstack-cli命令 使用手册 / 7 网络 L2NoVlanNetwork L2NoVlanNetworkL2网络的基本类型 中的NoVlan并不表示不可以使用VLAN技术 它仅仅 表示ZStack自己不会主动使用VLAN来创建一个二层广播域. 下面两个图例可以帮助理解 如图 23: L2NoVlanNetwork网络配置1所示 图 23: L2NoVlanNetwork网络配置1 在上图这个配置中 交换机的两个端口5和12不带VLAN 10标签 untagged VLAN 10 的 端口(Cisco中的VLAN 10访问端口 即access port) 并且分别连接到host1和host2的eth0 这对于L2NoVlanNetwork一个有效的配置 管理员可以使用physicalInterface = eth0创 建L2NoVlanNetwork 并将它挂载到集群上 如图 24: L2NoVlanNetwork网络配置2所示 图 24: L2NoVlanNetwork网络配置2 201

216 zstack-cli命令 使用手册 / 7 网络 在上图这个配置中 交换机的两个端口5和12带VLAN 10标签 tagged VLAN 10 的端 口(Cisco中的VLAN 10干线端口 即trunk port) 并且分别连接到host1和host2上预先创建好 的VLAN设备eth0.10 对于L2NoVlanNetwork来说 这同样一个有效的配置 管理员可以使 用physicalInterface = eth0.10创建l2novlannetwork 并将它挂载到集群上 现在应该可以理解 一个L2NoVlanNetwork对应了一个预先创建好的二层广播域 ZStack不会 为L2NoVlanNetwork创建任何新的广播域 KVML2NoVlanNetwork注意事项 L2NoVlanNetwork KVM Specific 当挂载一个L2NoVlanNetwork到KVM集群时 physicalinterface应该一个linux操作系统中的以 太网设备名 ethernet device name 例如 eth0 eth0.10和 em1 当ZStack使用brctl创建网 桥 bridge 时会使用physicalInterface作为设备名 伪代码如下 Assuming physicalinterface = eth0 brctl create br_eth0 brctl addif br_eth0 eth0 L2NoVlanNetwork清单示例 L2NoVlanNetwork Inventory Example { 202

217 zstack-cli命令 使用手册 / 7 网络 } "inventories": [ { "attachedclusteruuids": [ "967a353c dab9312cf3033a98c" ], "createdate": "Oct 30, :53:20 PM", "description": "", "lastopdate": "Oct 30, :53:20 PM", "name": "L2NoVlan", "physicalinterface": "eth0", "type": "L2NoVlanNetwork", "uuid": "5f0391e0c7ed45dba5ee5ed9c638f146", "zoneuuid": "e59b71e99d8a4ea1952b578388b8cd1d" } ], "success": true L2VlanNetwork L2VlanNetworkZStack会为其主动使用VLAN创建二层广播域的L2网络 根据集群中虚拟机管 理程序的不同 ZStack创建L2网络对应的二层广播域的方式也不同 相比l2Network inventory L2VlanNetwork还有一个额外的属性 vlan 用来创建二层 [0 4095] 广播域的VLAN 号(VLAN id) 当挂载L2VlanNetwork到集群的时候 ZStack会配合使用vlan属性和physicalInterface属性在集群中 的主机上创建vlan设备 为了使这种方式工作 physicalinterface所指定的以太网设备所连接的交 换机端口必须带相应vlan标签的 如图 25: L2VlanNetwork网络配置所示 图 25: L2VlanNetwork网络配置 203

218 zstack-cli命令 使用手册 / 7 网络 在上图这个配置中 交换机的两个端口5和12带VLAN 10标签 tagged VLAN 10 的端口 这样 管理员就可以使用physicalInterface = eth0和vlan = 10创建L2VlanNetwork 并将它挂载到集群上 L2VlanNetwork KVM注意事项 L2VlanNetwork KVM Specific 当挂载L2VlanNetwork到KVM集群时 ZStack会在集群中的所有物理机上创建VLAN设备并创建网 桥 伪代码如下 Assuming physicalinterface = eth0, vlan = 10 vconfig add eth0 10 brctl create br_eth0_10 brctl addif br_eth0_10 eth0.10 L2VlanNetwork清单示例 L2VlanNetwork Inventory Example { 204 "inventories": [ { "attachedclusteruuids": [], "createdate": "Oct 30, :41:19 PM", "description": "", "lastopdate": "Oct 30, :41:19 PM", "name": "L2Vlan", "physicalinterface": "eth0",

219 zstack-cli命令 使用手册 / 7 网络 "type": "L2VlanNetwork", "uuid": "ae97ba4adcb dde407b429c", "vlan": 2222, "zoneuuid": "e59b71e99d8a4ea1952b578388b8cd1d" } } ], "success": true 操作 Operations 创建普通二层网络 CreateL2NoVlanNetwork 管理员可以使用CreateL2NoVlanNetwork创建普通二层网络 例如 CreateL2NoVlanNetwork name=management-network physicalinterface=eth0 \ zoneuuid=9a94e647a9f64bb392afcdc5396cc1e4 name 普通二层网络名称 description 普通二层网络的详 细 zoneuuid 区域uuid physicalinterface 物理网卡 type 类型 定 镜像会使用该 资源uuid 若指 resourceuuid 字段值作为uuid 源类型 L2NetworkVO 资源类型 L2NetworkVO 205

220 zstack-cli命令 使用手册 / 7 网络 删除二层网络 DeleteL2Network 管理员可以使用DeleteL2Network删除二层网络 例如 DeleteL2Network uuid=a eb7346ce89cfd7e643ad1ef8 uuid 二层网络uuid 请参见 删除 deletemode 资源#Delete Permissive Enforcing Resources# 源类型 L2NetworkVO 资源类型 L2NetworkVO 查询二层网络 QueryL2Network 管理员可以使用QueryL2Network查询二层网络 例如 QueryL2Network physicalinterface=eth0 QueryL2Network l3network.ipranges.startip= 原生域查询 Primitive Fields of Query 请参见 L2 network inventory 嵌套和扩展域查询 Nested and Expanded Fields of Query 域 Field 清单 Inventory l3network L3 network inventory 属于这个L2网络的L3 网络 206

221 zstack-cli命令 使用手册 / 7 网络 域 Field 清单 Inventory cluster cluster inventory 该L2网络挂载的所有集 群 zone zone inventory 父区域 获取二层网络类型 GetL2NetworkTypes 管理员可以使用GetL2NetworkTypes获取二层网络类型 返回示例 { } "l2networktypes": [ "VxlanNetworkPool", "VxlanNetwork", "L2NoVlanNetwork", "L2VlanNetwork" ] 源类型 L2NetworkVO 资源类型 L2NetworkVO 挂载二层网络到集群 AttachL2NetworkToCluster 管理员可以使用AttachL2NetworkToCluster挂载二层网络到集群 例如 AttachL2NetworkToCluster clusteruuid=2379a0d00ae242df91189f6d7d9e23e3 \ 207

222 zstack-cli命令 使用手册 / 7 网络 l2networkuuid=cc42d175ed af69b8a0b824b9a l2networkuuid 二层网络uuid clusteruuid 集群uuid 源类型 L2NetworkVO 资源类型 L2NetworkVO 从集群上卸载二层网络 DetachL2NetworkFromCluster 管理员可以使用DetachL2NetworkFromCluster从集群上卸载二层网络 例如 DetachL2NetworkFromCluster clusteruuid=2379a0d00ae242df91189f6d7d9e23e3 \ l2networkuuid=cc42d175ed af69b8a0b824b9a l2networkuuid 二层网络uuid clusteruuid 集群uuid 源类型 L2NetworkVO 208

223 zstack-cli命令 使用手册 / 7 网络 资源类型 L2NetworkVO 更新二层网络 UpdateL2Network 管理员可以使用UpdateL2Network更新二层网络 例如 UpdateL2Network uuid=cc42d175ed af69b8a0b824b9a uuid 二层网络uuid name 普通二层网络名称 description 普通二层网络的详 细 源类型 L2NetworkVO 资源类型 L2NetworkVO 创建二层Vlan网络 CreateL2VlanNetwork 管理员可以使用CreateL2VlanNetwork创建二层Vlan网络 例如 CreateL2VlanNetwork name=testvlan zoneuuid=8abab e6fbec05fa70c5ef873 \ 209

224 zstack-cli命令 使用手册 / 7 网络 physicalinterface=eth0 vlan=2637 vlan name description 二层Vlan网络名称 二层Vlan网络的详 细 zoneuuid 区域uuid physicalinterface 物理网卡 type resourceuuid 资源uuid 源类型 L2NetworkVO 资源类型 L2NetworkVO 查询二层Vlan网络 QueryL2VlanNetwork 管理员可以使用QueryL2VlanNetwork查询二层Vlan网络 例如 QueryL2VlanNetwork physicalinterface=eth0 QueryL2VlanNetwork zone.cluster.zoneuuid=8abab e6fbec05fa70c5ef873 原生域查询 Primitive Fields of Query 请参见 L2 vlan network inventory 210

225 zstack-cli命令 使用手册 / 7 网络 嵌套和扩展域查询 Nested and Expanded Fields of Query 域 Field 清单 Inventory l3network L3 network inventory 属于这个L2网络的L3 网络 cluster cluster inventory 该L2网络挂载的所有集 群 zone zone inventory 父区域 创建VXLAN网络池 CreateL2VxlanNetworkPool 管理员可以使用CreateL2VxlanNetworkPool创建VXLAN网络池 例如 CreateL2VxlanNetworkPool name=testvxlan zoneuuid=8abab e6fbec05fa70c5ef873 \ physicalinterface=eth0 name description VXLAN网络池名 详细 称 VXLAN网络池的 zoneuuid 区域uuid physicalinterface 物理网卡 type 类型 定 镜像会使用该 资源uuid 若指 resourceuuid 字段值作为uuid 源类型 L2NetworkVO 211

226 zstack-cli命令 使用手册 / 7 网络 资源类型 L2NetworkVO 查询VXLAN网络资源池 QueryL2VxlanNetworkPool 管理员可以使用QueryL2VxlanNetworkPool查询VXLAN网络资源池 例如 QueryL2VxlanNetworkPool uuid=064a634df0b742e89d ce63d QueryL2VxlanNetworkPool zone.uuid=8abab e6fbec05fa70c5ef873 原生域查询 Primitive Fields of Query 请参见 L2 vxlannetworkpool inventory 嵌套和扩展域查询 Nested and Expanded Fields of Query 域 Field 清单 Inventory attachedvniranges attachedvteprefs attachedvxlann etworkrefs cluster l2vxlannetwork l3network vnirange vtep zone 创建VXLAN网络 CreateL2VxlanNetwork 管理员可以使用CreateL2VxlanNetwork创建VXLAN网络 例如 CreateL2VxlanNetwork name=l2vxlan zoneuuid=e59b71e99d8a4ea1952b578388b8cd1d \ 212

227 zstack-cli命令 使用手册 / 7 网络 physicalinterface=eth0 pooluuid=1cac60dd6f124861aa99d85f51a9b4fe name 普通二层网络名称 description 普通二层网络的详 细 zoneuuid 区域uuid physicalinterface 物理网卡 pooluuid Vxlan网络资源 池uuid vni Vxlan网络ID type 类型 定 镜像会使用该 资源uuid 若指 resourceuuid 字段值作为uuid 源类型 L2NetworkVO 资源类型 L2NetworkVO 213

228 zstack-cli命令 使用手册 / 7 网络 查询VXLAN网络 QueryL2VxlanNetwork 管理员可以使用QueryL2VxlanNetwork查询VXLAN网络资源池 例如 QueryL2VxlanNetwork uuid=6e287827ec1f4927a90637e7c96ca92e QueryL2VxlanNetwork zone.uuid=e59b71e99d8a4ea1952b578388b8cd1d 原生域查询 Primitive Fields of Query 请参见 L2 vxlannetwork inventory 嵌套和扩展域查询 Nested and Expanded Fields of Query 域 Field 清单 Inventory cluster cluster inventory l3network L3 network inventory vxlanpool vxlanpool inventory zone zone inventory 该L2网络挂载的所有集 群 属于这个L2网络的L3 网络 创建这个L2网络 的vxlanPool 父区域 创建Vni Range CreateVniRange 管理员可以使用CreateVniRange创建Vni Range 例如 CreateVniRange name=vni startvni=8034 endvni=9322 l2networkuuid=1cac60dd6f aa99d85f51a9b4fe name Vni Range名称 description startvni endvni l2networkuuid 214 Vni Range的详细 Vxlan网络资源 池uuid

229 zstack-cli命令 使用手册 / 7 网络 资源uuid 若指 resourceuuid 定 镜像会使用该 字段值作为uuid 源类型 L2NetworkVO 资源类型 L2NetworkVO 查询Vni Range QueryVniRange 管理员可以使用QueryVniRange查询Vni Range 例如 QueryVniRange uuid=d0b d945c582448fed6cb98d54 QueryVniRange vxlanpool.uuid=1cac60dd6f124861aa99d85f51a9b4fe 原生域查询 Primitive Fields of Query 请参见 Vni range inventory 嵌套和扩展域查询 Nested and Expanded Fields of Query 域 Field 清单 Inventory vxlanpool vxlanpool inventory 215

230 zstack-cli命令 使用手册 / 7 网络 删除Vni Range DeleteVniRange 管理员可以使用DeleteVniRange删除Vni Range 例如 DeleteVniRange uuid=d0b d945c582448fed6cb98d54 uuid Vni Range uuid 资源#Delete 请参见 删除 deletemode Resources# Permissive Enforcing 源类型 L2NetworkVO 资源类型 L2NetworkVO 标签 Tags 管理员可以使用resourceType=L2NetworkVO在L2网络上创建用户标签 例如 CreateUserTag resourcetype=l2networkvo tag=publicl2 \ resourceuuid=cff4be b0fb831a9fe53b1d62b 7.2 三层网络 概览 三层网络 云主机使用的网络配置 包含了IP地址范围 网关 DNS 网络服务等 IP地址范围包含起始和结束IP地址 子网掩码 网关等 例如可指定 到 子网掩码指定 网关指定 也可使用CIDR无域间路由来表示 例 如 /24 216

231 zstack-cli命令 使用手册 / 7 网络 DNS用于设置云主机网络的DNS解析服务 公有网络 可直接连通互联网的网络 在云路由网络中可以提供网络服务 可用于扁平网络创建使用公网的云主机 也可用于云路由网络环境 单独创建使用公网的云主机 系统网络 管理节点用于特定用途的网络 可用于部署配置相关资源的管理网络 例如部署物理机 主存储 镜像服务器 云路由等资源 也可用于云主机迁移的迁移网络 如果网络资源不足 可与公有网络共用 独立的系统网络仅用于特定用途 例如管理云路由设备的网络 系统网络不能用于创建普通云主机 私有网络 也可称之为业务网络或接入网络 云主机使用的网络 一般情况下设置为私网 私有网络指定为云 主机使用的网络 支持两种网络架构模型 扁平网络和云路由网络 特定场景网络 管理网络 作为系统网络的一种 用于管理控制对应的物理资源 例如物理机 镜像服务器 主存储等需提供IP进行访问的资源时使用的网络 创建云路由设备时需要云路由设备存在管理节点互通的IP 以便部署agent及agent代理消息 返回 存储网络 特指在进行分布式存储部署时 底层存储系统通信使用的网络 在添加主存储时 可标识存储网 络的CIDR 表示使用此网络来判断云主机健康状态 VDI网络 在创建集群时 可以指定VDI网络的CDIR 此网络用于VDI连接的协议流量 217

232 zstack-cli命令 使用手册 / 7 网络 网络服务 ZStack支持的网络服务包括DHCP DNS SNAT 弹性IP 端口转发 负载均衡 IPsec 安全 组 UserData等 网络架构的类型决定了此网络提供的网络服务类型 1. 扁平网络 扁平网络支持以下网络服务 DHCP 弹性IP 安全组 UserData等 扁平网络的网络服务采用分布式的DHCP 分布式的EIP结构 扁平网络的DHCP服务也包含了DNS的功能 初始化引导设置使用的网络模型就采用了扁平网络 2. 云路由网络 云路由网络支持以下网络服务 DHCP DNS SNAT 弹性IP 端口转发 负载均 衡 IPsec 安全组等 云路由网络的DHCP服务默认采用分布式的DHCP 云路由网络主要使用特定的Linux云主机作为路由设备提供网络服务 注意事项 创建云主机时 可指定多个网络 既可指定多个扁平网络 又可指定多个云路由网络 还可指定 扁平网络和云路由网络的混合使用 支持多级网络 而且多级网络的二层网络可以实际通信 需要特别避免IP地址空间冲突的问题 清单 属性 uuid 请参见 资源属性 name 请参见 资源属性 description 请参见 资源属性 zoneuuid 所在区域 的uuid 请参见 zone l2networkuuid 父L2网络的uuid 请参见 L2 network 218

233 zstack-cli命令 使用手册 / 7 网络 state 请参见 state Enabled Disabled dnsdomain 请参见 domain ipranges 请参见 IP range列表 dns 请参见 l3network DNS列表 networkservices 请参见 l3network network service reference列表 type L3网络类型 L3 network type L3Basic Network createdate 请参见 资源属性 lastopdate 请参见 资源属性 示例 { "inventories": [ { "category": "Private", "createdate": "Nov 2, :21:40 PM", "dns": [ " " ], "ipranges": [ { "createdate": "Nov 2, :21:41 PM", "endip": " ", "gateway": " ", "l3networkuuid": "a ed35439b c96a7323", "lastopdate": "Nov 2, :21:41 PM", "name": "l3-bp", "netmask": " ", "networkcidr": " /16", "startip": " ", "uuid": "954f e48a395a b65d" } ], "l2networkuuid": "8f6a39152a72439b9ece210154de0339", "lastopdate": "Nov 2, :21:40 PM", "name": "l3-bp", "networkservices": [ { "l3networkuuid": "a ed35439b c96a7323", "networkserviceprovideruuid": "a903477ad67746e8a4f773c5e28b5884", 219

234 zstack-cli命令 使用手册 / 7 网络 }, { }, { }, { "networkservicetype": "SecurityGroup" "l3networkuuid": "a ed35439b c96a7323", "networkserviceprovideruuid": "a963ab4a76384a4ab3b88fb39ef627fc", "networkservicetype": "Eip" "l3networkuuid": "a ed35439b c96a7323", "networkserviceprovideruuid": "a963ab4a76384a4ab3b88fb39ef627fc", "networkservicetype": "DHCP" "l3networkuuid": "a ed35439b c96a7323", "networkserviceprovideruuid": "a963ab4a76384a4ab3b88fb39ef627fc", "networkservicetype": "Userdata" } ], "state": "Enabled", "system": false, "type": "L3BasicNetwork", "uuid": "a ed35439b c96a7323", "zoneuuid": "e59b71e99d8a4ea1952b578388b8cd1d" } } ], "success": true 可用状态 State L3网络有两种可用状态 Enabled 在这种状态下 允许创建新的云主机 Disabled 在这种状态下 不允许创建新的云主机 DNS域 DNS Domain DNS域用来将L3网络中主机的机器名扩展为FQDNs(完全合格的域名 Full Qualified Domain Name ) 例如 如果云主机的主机名vm1并且L3网络的DNS域zstack.org 主机名最终会被展开 为vm1.zstack.org IP地址范围 IP Range) ZStack当前版本仅支持IPv4 IP地址范围 清单 Inventory 220

235 zstack-cli命令 使用手册 / 7 网络 参数 uuid 请参见 资源属性 name 请参见 资源属性 description 请参见 资源属性 startip 地址范围的起始IP endip 地址范围的结束IP netmask 子网掩码 gateway 子网网关 createdate 请参见 资源属性 lastopdate 请参见 资源属性 示例 { } "inventories": [ { "createdate": "Oct 30, :59:06 PM", "endip": " ", "gateway": " ", "l3networkuuid": "54bc8bea439a49dc82acbe302da05c66", "lastopdate": "Oct 30, :59:06 PM", "name": "L3-扁平", "netmask": " ", "networkcidr": " /16", "startip": " ", "uuid": "f0b8e83e4dc646c69c7f9a0ff53b6367" } ], "success": true DNS 当DNS网络服务启用时 一个L3网络可以有一个或多个DNS起作用 L2网络和L3网络 L2 Networks and L3 Networks 类似于一个二层广播域可以包含多个子网 可以在同一个L2网络中创建多个L3网络 但由于这 些L3网络被没有被互相隔离 仍然可以被监听 这样使用有一定的风险 网络服务引用 Network Service References 网络服务引用展现了L3网络上启用的网络服务以及他们的提供者 清单 Inventory 221

236 zstack-cli命令 使用手册 / 7 网络 l3networkuuid L3网络Uuid networkservice ProviderUuid 网络服务提供模块 networkservice Type 网络服务类型 的UUID DHCP DNS SNAT PortFor warding EIP SecurityGroup Userdata LoadBalancer IPsec Central izeddns VRouterRoute VipQos 示例 { 222 "inventories": [ { "l3networkuuid": "cdb7f3151c50453ba0e8c89356e250f6", "networkserviceprovideruuid": "a903477ad67746e8a4f773c5e28b5884", "networkservicetype": "SecurityGroup" }, { "l3networkuuid": "cdb7f3151c50453ba0e8c89356e250f6", "networkserviceprovideruuid": "a963ab4a76384a4ab3b88fb39ef627fc", "networkservicetype": "Userdata" }, { "l3networkuuid": "cdb7f3151c50453ba0e8c89356e250f6", "networkserviceprovideruuid": "a963ab4a76384a4ab3b88fb39ef627fc", "networkservicetype": "DHCP" } ], "success": true

237 zstack-cli命令 使用手册 / 7 网络 } 操作 Operations 创建三层网络 CreateL3Network 管理员可以使用CreateL3Network创建三层网络 例如 CreateL3Network name=l3network l2networkuuid=21fd3d b79bab0f2f1dfa1d03c name 三层网络名称 description 三层网络的详细描 述 type 三层网络类型 l2networkuuid 二层网络uuid system dnsdomain 否用于系统云主 机 DNS域 资源uuid 若指 resourceuuid 定 三层网络会 使用该字段值作 为uuid 网络类型 需要 Public 与system标签搭 category 配使用 system 为true时可设置 Private 2.2 System 为Pubic Private 源类型 L3NetworkVO 223

238 zstack-cli命令 使用手册 / 7 网络 资源类型 L3NetworkVO 删除三层网络 DeleteL3Network 管理员可以使用DeleteL3Network删除三层网络 例如 DeleteL3Network uuid=18874dbd1f0c4e8abd399776ae uuid 三层网络uuid 资源#Delete 请参见 删除 deletemode Resources# Permissive Enforcing 源类型 L3NetworkVO 资源类型 L3NetworkVO 查询三层网络 QueryL3Network 管理员可以使用QueryL3Network查询三层网络 例如 QueryL3Network uuid=9082f45fce9c46f19b2ab5ff117511d6 QueryL3Network vmnic.l3networkuuid=9082f45fce9c46f19b2ab5ff117511d6 原生域查询 Primitive Fields of Query 请参见 L3 network inventory 224

239 zstack-cli命令 使用手册 / 7 网络 嵌套和扩展域查询 Nested and Expanded Fields of Query 域 Field 清单 Inventory l2network L2 network inventory 这个L3网络所属的L2 网络 ipranges ipranges inventory zone zone inventory networkservices networkservices inventory serviceprovider serviceprovider inventory vmnic vmnic inventory 父区域 更新三层网络 UpdateL3Network 管理员可以使用UpdateL3Network更新三层网络 例如 UpdateL3Network name=test_l3network uuid=3dbf30420a4b4da8bcd69f99df7fb631 uuid 三层网络uuid name 三层网络名称 description system 三层网络的详细描 述 否用于系统云主 机 网络类型 需要 Public 与system标签搭 category 配使用 system 为true时可设置 Private 2.2 System 为Pubic Private 225

240 zstack-cli命令 使用手册 / 7 网络 源类型 L3NetworkVO 资源类型 L3NetworkVO 获取三层网络类型 GetL3NetworkTypes 管理员可以使用GetL3NetworkTypes获取三层网络类型 返回示例 { } "l3networktypes": [ "L3BasicNetwork", "L3VpcNetwork" ] 源类型 L3NetworkVO 资源类型 L3NetworkVO 226

241 zstack-cli命令 使用手册 / 7 网络 改变三层网络状态 ChangeL3NetworkState 管理员可以使用ChangeL3NetworkState改变三层网络状态 例如 ChangeL3NetworkState uuid=3dbf30420a4b4da8bcd69f99df7fb631 stateevent=disable uuid 三层网络uuid stateevent 状态 enable disable 源类型 L3NetworkVO 资源类型 L3NetworkVO 获取网络DHCP服务所用地 址 GetL3NetworkDhcpIpAddress 管理员可以使用GetL3NetworkDhcpIpAddress获取网络DHCP服务所用地址 例如 GetL3NetworkDhcpIpAddress l3networkuuid=aa6ec2f40b93413aa843ee5d76ddf73e l3networkuuid 三层网络uuid 源类型 L3NetworkVO 227

242 zstack-cli命令 使用手册 / 7 网络 资源类型 L3NetworkVO 从三层网络移除DNS RemoveDnsFromL3Network 管理员可以使用RemoveDnsFromL3Network从三层网络移除DNS 例如 RemoveDnsFromL3Network l3networkuuid=3dbf30420a4b4da8bcd69f99df7fb631 dns= l3networkuuid 三层网络uuid dns DNS地址 源类型 L3NetworkVO 资源类型 L3NetworkVO 228

243 zstack-cli命令 使用手册 / 7 网络 向三层网络添加DNS AddDnsToL3Network 管理员可以使用AddDnsToL3Network向三层网络添加DNS 例如 AddDnsToL3Network l3networkuuid=3dbf30420a4b4da8bcd69f99df7fb631 dns= l3networkuuid 三层网络uuid dns DNS地址 源类型 L3NetworkVO 资源类型 L3NetworkVO 获取空闲IP GetFreeIp 管理员可以使用GetFreeIp获取空闲IP 例如 GetFreeIp l3networkuuid=aa6ec2f40b93413aa843ee5d76ddf73e l3networkuuid 三层网络uuid IP段uuid iprangeuuid l3networkuuid 和ipRangeUuid至 少一个不为空 start 起始值 limit 数量限制 229

244 zstack-cli命令 使用手册 / 7 网络 源类型 L3NetworkVO 资源类型 L3NetworkVO 检查IP可用性 CheckIpAvailability 管理员可以使用CheckIpAvailability检查IP可用性 例如 CheckIpAvailability ip= l3networkuuid=aa6ec2f40b93413aa843ee5d76ddf73e l3networkuuid 三层网络uuid ip IP地址 源类型 L3NetworkVO 资源类型 L3NetworkVO 230

245 zstack-cli命令 使用手册 / 7 网络 获取IP网络地址容量 GetIpAddressCapacity 管理员可以使用GetIpAddressCapacity获取IP网络地址容量 例如 GetIpAddressCapacity iprangeuuids=e6d4de6fe69a42b28363ffbc7b4a186f zoneuuids 区域uuid l3networkuuids 三层网络uuid IP地址范围uuid iprange Uuids L3Netwo iprangeuuids rkuuids zoneuuids 至 少一个不为空列 表 或者全部不为 空 all 系统全局 源类型 L3NetworkVO 资源类型 L3NetworkVO 添加IP地址范围 AddIpRange 管理员可以使用AddIpRange添加IP地址范围 例如 AddIpRange name=l3network-1 l3networkuuid=ba076991c0f740be84ab7e9646dcfd56 231

246 zstack-cli命令 使用手册 / 7 网络 startip= endip= netmask= gateway= name 三层网络名称 description 三层网络详细 l3networkuuid 三层网络uuid startip 起始IP endip 结束IP gateway 网关 netmask 子网掩码 资源uuid 若指 resourceuuid 定 三层网络会 使用该字段值作 为uuid 源类型 L3NetworkVO 资源类型 L3NetworkVO 删除IP地址范围 DeleteIpRange 管理员可以使用DeleteIpRange删除IP地址范围 例如 DeleteIpRange uuid= a15b421db215d1d4b0e846a6 232 uuid 三层网络uuid

247 zstack-cli命令 使用手册 / 7 网络 请参见 删除 deletemode 资源#Delete Permissive Enforcing Resources# 源类型 L3NetworkVO 资源类型 L3NetworkVO 查询IP地址范围 QueryIpRange 管理员可以使用QueryIpRange查询IP地址范围 例如 QueryIpRange uuid=bcdb86a63cef415c843ab02e9534a21b QueryIpRange l3network.l2networkuuid=96a3915e8c1a4fb6a7e14078e61b69b0 原生域查询 Primitive Fields of Query 请参见IP Range inventory 嵌套和扩展域查询 Nested and Expanded Fields of Query 域 Field 清单 Inventory l3network L3 network inventory 这个IP地址范围所属 的L3网络 233

248 zstack-cli命令 使用手册 / 7 网络 更新IP地址范围 UpdateIpRange 管理员可以使用UpdateIpRange更新IP地址范围 例如 UpdateIpRange uuid=b121aa c39e541c434dff7303 uuid 三层网络uuid name 三层网络名称 description 三层网络的详细描 述 源类型 L3NetworkVO 资源类型 L3NetworkVO 通过网络CIDR添加IP地址范 围 AddIpRangeByNetworkCidr 管理员可以使用AddIpRangeByNetworkCidr通过网络CIDR添加IP地址范围 例如 AddIpRangeByNetworkCidr name=l3network-1 l3networkuuid=ba076991c0f740be84ab7 e9646dcfd56 \ networkcidr= /24 name 三层网络名称 description 234 三层网络的详细描 述

249 zstack-cli命令 使用手册 / 7 网络 l3networkuuid 三层网络uuid networkcidr 网络CIDR 资源uuid 若指 resourceuuid 定 三层网络会 使用该字段值作 为uuid 源类型 L3NetworkVO 资源类型 L3NetworkVO 标签 Tags L3网络标签 L3 Network Tags 用户可以使用resourceType=L3NetworkVO在L3网络上创建用户标签 例如 CreateUserTag resourcetype=l3networkvo tag=web-tier-l3 \ resourceuuid=f6be73fa384a419986fc6d1b92f95be9 IP地址范围标签 IP Range Tags 用户可以使用resourceType=IpRangeVO在IP地址范围上创建用户标签 例如 CreateUserTag resourcetype=iprangevo tag=web-tier-ip \ resourceuuid=8191d b7d003166fa641e 7.3 云路由 概览 云路由 通过定制的Linux云主机作为路由设备来提供DHCP DNS SNAT 弹性IP 端口转发 负载均衡 IPsec 安全组等网络服务 235

250 zstack-cli命令 使用手册 / 7 网络 如图 26: 云路由所示 图 26: 云路由 云路由主要包括云路由镜像 云路由规格 云路由设备 云路由镜像 封装多种网络服务 只为创建云路由提供服务 云路由规格 定义云路由设备使用的CPU 内存 云路由镜像 管理网络 公有网络等 云路由设备 作为定制的Linux云主机提供DHCP DNS SNAT 弹性IP 端口转发 负载均 衡 IPsec 安全组等网络服务 云路由网络拓扑 云路由主要涉及以下3个基本网络 公有网络 用于提供弹性IP 端口转发 负载均衡 IPsec等网络服务需要提供虚拟IP的网络 公有网络一 般要求可直接接入互联网 管理网络 用于管理控制对应的物理资源 例如物理机 镜像服务器 主存储等需提供IP进行访问的资源时 使用的网络 可以与公有网络使用同一个网络 私有网络 也称之为业务网络或接入网络 云主机使用的内部网络 云路由网络典型场景 236

251 zstack-cli命令 使用手册 / 7 网络 公有网络和管理网络合并 私有网络独立部署 如图 27: 云路由网络场景-1所示 图 27: 云路由网络场景-1 公有网络 管理网络 私有网络均独立部署 如图 28: 云路由网络场景-2所示 图 28: 云路由网络场景-2 云路由网络服务 目前云路由提供了DHCP DNS SNAT 弹性IP 端口转发 负载均衡 IPsec 安全组等网络服 务 其中 弹性IP 端口转发 负载均衡 IPsec 安全组将在专门章节中介绍 DHCP 237

252 zstack-cli命令 使用手册 / 7 网络 在云路由设备中 可由扁平网络服务模块提供分布式DHCP服务 在云路由设备中 也可由云路由网络服务模块提供集中式DHCP服务 并由云路由设备统一负责 动态IP地址分配 分布式DHCP服务效率更高 ZStack默认采用分布式DHCP服务 DNS 云路由设备可作为DNS服务器提供DNS服务 在云主机中看到的DNS地址默认为云路由设备 的IP地址 由用户设置的DNS地址由云路由设备负责转发配置 SNAT 云路由设备可作为路由器向云主机提供原网络地址转换 云主机使用SNAT可直接访问外部互联 网 清单 属性 uuid 请参见资源结构 name 请参见资源结构 description 请参见资源结构 agentport allocatorstrategy 分配策略 appliancevmtype 特殊云主机的类型 clusteruuid 集群uuid zoneuuid 区域uuid cpunum CPU数量 cpuspeed defaultl3netwo rkuuid 默认三层网络uuid 云路由云主机提供 defaultroutel3 NetworkUuid 默认路由 default routing 的L3网 络的uuid 238

253 zstack-cli命令 使用手册 / 7 网络 hostuuid 物理机uuid lasthostuuid 上次所在物理 机uuid imageuuid 镜像uuid rootvolumeuuid 根云盘uuid instanceofferi nguuid 计算规格uuid managem entnetworkuuid 管理网络uuid publicnetworku uid 公有网络uuid memorysize 内存大小 hypervisortype 虚拟机管理程序类 型 platform Enabled state 可用状态 status 连接状态 createdate 请参见资源结构 lastopdate 请参见资源结构 type 类型 Disabled groupby UserVm ApplianceVm 示例 { "inventories": [ { "agentport": 7272, "allvolumes": [ { "actualsize": , "createdate": "Nov 10, :59:57 PM", "description": "Root volume for VM[uuid:f90177b78a3d4f399f32bf84af32afde]", "deviceid": 0, 239

254 zstack-cli命令 使用手册 / 7 网络 "format": "qcow2", "installpath": "/zstack_ps_nxs/rootvolumes/acct-36c27e8ff05c4780bf6d2fa65700 f22e/vol-47401aeef0b54ec\ f90b831f2e250c098/47401aeef0b54ecf90b831f2e250c098.qcow2", "isshareable": false, "lastopdate": "Nov 10, :59:57 PM", "name": "ROOT-for-vrouter.l3.L3-云路由-2.e293d6", "primarystorageuuid": "cae8726c90784ba0946f ", "rootimageuuid": "ef614d2e1db7536a8fb8260a05074ae4", "size": , "state": "Enabled", "status": "Ready", "type": "Root", "uuid": "47401aeef0b54ecf90b831f2e250c098", "vminstanceuuid": "f90177b78a3d4f399f32bf84af32afde" } ], "allocatorstrategy": "LeastVmPreferredHostAllocatorStrategy", "appliancevmtype": "vrouter", "clusteruuid": "967a353c dab9312cf3033a98c", "cpunum": 1, "cpuspeed": 0, "createdate": "Nov 10, :59:57 PM", "defaultroutel3networkuuid": "cdb7f3151c50453ba0e8c89356e250f6", "hostuuid": "aec5230c3eee40e4998bec50a1c2eae8", "hypervisortype": "KVM", "imageuuid": "ef614d2e1db7536a8fb8260a05074ae4", "instanceofferinguuid": "fa550cb9bdcc4fd397ae37f9ddf4c390", "lasthostuuid": "aec5230c3eee40e4998bec50a1c2eae8", "lastopdate": "Nov 16, :07:30 AM", "managementnetworkuuid": "cdb7f3151c50453ba0e8c89356e250f6", "memorysize": , "name": "vrouter.l3.l3-云路由-2.e293d6", "platform": "Linux", "publicnetworkuuid": "cdb7f3151c50453ba0e8c89356e250f6", "rootvolumeuuid": "47401aeef0b54ecf90b831f2e250c098", "state": "Running", "status": "Connected", "type": "ApplianceVm", "uuid": "f90177b78a3d4f399f32bf84af32afde", "vmnics": [ { "createdate": "Nov 10, :59:57 PM", "deviceid": 1, "gateway": " ", "ip": " ", "l3networkuuid": "e293d67b0e4a4b438f15b768cacb6eaf", "lastopdate": "Nov 10, :59:57 PM", "mac": "fa:63:dd:7a:56:01", "metadata": "4", "netmask": " ", "uuid": "281f9ac039c44bb e551ea", "vminstanceuuid": "f90177b78a3d4f399f32bf84af32afde" }, { "createdate": "Nov 10, :59:57 PM", "deviceid": 0, "gateway": " ", "ip": " ", "l3networkuuid": "cdb7f3151c50453ba0e8c89356e250f6", "lastopdate": "Nov 10, :59:57 PM", "mac": "fa:31:50:c4:d3:00", 240

255 zstack-cli命令 使用手册 / 7 网络 "metadata": "3", "netmask": " ", "uuid": "402dc6bf be3661be3d120652", "vminstanceuuid": "f90177b78a3d4f399f32bf84af32afde" } ], "zoneuuid": "e59b71e99d8a4ea1952b578388b8cd1d" } } ], "success": true 操作 Operations 创建云路由 CreateVirtualRouterVm 没有现成的操作可以手动创建一个云路由设备 但用户在客户L3网络上创建或启动一个云路由云 主机的时候会自动触发创建一个云路由设备 managem entnetworkuuid 管理L3网络uuid publicnetworku uid 公有L3网络uuid networkservice Provided 网络服务模块 name 资源名称 instanceofferi nguuid 计算规格uuid imageuuid 镜像uuid l3networkuuids 三层网络uuid type 类型 rootdiskofferi nguuid 根磁盘规格uuid datadiskofferi nguuids 数据盘uuid zoneuuid 区域uuid UserVm ApplianceVm 241

256 zstack-cli命令 使用手册 / 7 网络 clusteruuid 集群uuid hostuuid 物理机uuid primarystorage UuidForRootVol 根磁盘主存储uuid description 资源的详细 defaultl3netwo rkuuid 默认三层网络uuid strategy 策略 resourceuuid 资源uuid ume InstantStart JustCreate 源类型 VirtualRouterVmVO 资源类型 VirtualRouterVmVO 查询云路由 QueryVirtualRouterVm 管理员可以使用QueryVirtualRouterVm查询云路由 例如 QueryVirtualRouterVm uuid=efb08e965ba4414fa7320e968178d442 QueryVirtualRouterVm host.uuid=1fc14d00738e468f9aeb791516e97c6a 原生域查询 Primitive Fields of Query 请参见 appliance vm inventory 242

257 zstack-cli命令 使用手册 / 7 网络 嵌套和扩展域查询 Nested and Expanded Fields of Query 域 Field 清单 Inventory vmnics VM nic inventory 云路由设备的网卡 allvolumes volume inventory 云路由设备的云盘 host host inventory 运行云路由设备的物理 机 cluster cluster inventory 云路由设备所属的集群 image image inventory 用于创建云路由设备的 镜像 zone zone inventory 云路由设备所属的区域 rootvolume volume inventory 云路由设备的根云盘 virtualrouteroffering virtual router offering inventory 云路由设备的计算规格 eip EIP inventory 云路由设备提供服务 的EIP vip VIP inventory 云路由设备提供服务 的VIP portforwarding port forwarding rule inventory loadbalancer 云路由设备提供服务的 端口转发 loadbalancer inventory 云路由设备提供服务的 负载均衡 重连云路由 ReconnectVirtualRouter 管理员可以使用ReconnectVirtualRouter重连云路由 例如 ReconnectVirtualRouter vminstanceuuid=698c538be5414ac7b04b19f4daa29f74 vminstanceuuid 云路由设备uuid 243

258 zstack-cli命令 使用手册 / 7 网络 源类型 VirtualRouterVmVO 资源类型 VirtualRouterVmVO 创建云路由规格 CreateVirtualRouterOffering 管理员可以使用CreateVirtualRouterOffering创建云路由规格 例如 CreateVirtualRouterOffering name=vroffering zoneuuid=fad9475e374a471e8e95eca6177f 7075 \ cpunum=1 memorysize= imageuuid=fd bf49d25398f34723cb8 \ managementnetworkuuid=10a60c0bc05b418c9f9f3d86ba65280a 244 managem entnetworkuuid 管理L3网络uuid zoneuuid 区域uuid imageuuid 镜像uuid publicnetworku uid 公有L3网络uuid isdefault 默认 name 资源名称 description 资源的详细 cpunum CPU数量 memorysize 内存大小 allocatorstrategy 分配策略 sortkey 排序主键 type 类型 UserVm

259 zstack-cli命令 使用手册 / 7 网络 ApplianceVm resourceuuid 资源uuid 源类型 VirtualRouterOfferingVO 资源类型 VirtualRouterOfferingVO 查询云路由规格 QueryVirtualRouterOffering 管理员可以使用QueryVirtualRouterOffering查询云路由规格 例如 QueryVirtualRouterOffering imageuuid=f354eb04fb7b3732a9a9de825d68eb5c QueryVirtualRouterOffering managementl3network.uuid=a3b2fce8f82b4422a575220a35d6 ebbd 原生域查询 Primitive Fields of Query 请参见 virtual router offering inventory 嵌套和扩展域查询 Nested and Expanded Fields of Query 域 Field 清单 Inventory image image inventory 规格包含的镜像 managementl3ne twork L3 network inventory 规格包含的管理L3网络 publicl3network L3 network inventory 规格包含的公有L3网络 zone zone inventory 规格所属的区域 245

260 zstack-cli命令 使用手册 / 7 网络 查询云路由设备 QueryApplianceVm 管理员可以使用QueryApplianceVm查询云路由设备 例如 QueryApplianceVm uuid=efb08e965ba4414fa7320e968178d442 QueryApplianceVm vmnics.vminstanceuuid=efb08e965ba4414fa7320e968178d442 原生域查询 Primitive Fields of Query 请参见 appliance vm inventory 嵌套和扩展域查询 Nested and Expanded Fields of Query 域 Field 清单 Inventory vmnics VM nic inventory 云路由设备的网卡 allvolumes volume inventory 云路由设备的云盘 host host inventory 运行云路由设备的物理 机 cluster cluster inventory 云路由设备所属的集群 image image inventory 用于创建云路由设备的 镜像 zone zone inventory 云路由设备所属的区域 rootvolume volume inventory 云路由设备的根云盘 virtualrouteroffering virtual router offering inventory 云路由设备的计算规格 eip EIP inventory 云路由设备提供服务 的EIP vip VIP inventory 云路由设备提供服务 的VIP portforwarding 246 port forwarding rule inventory 云路由设备提供服务的 端口转发

261 zstack-cli命令 使用手册 / 7 网络 获取云路由可加载外部网 络 GetAttachablePublicL3ForVRouter 管理员可以使用GetAttachablePublicL3ForVRouter获取云路由可加载的公有网络和系统网络 将自 动排除地址冲突的网络 例如 GetAttachablePublicL3ForVRouter vminstanceuuid=698c538be5414ac7b04b19f4daa29f74 vminstanceuuid 云路由设备uuid 源类型 VirtualRouterVmVO 2.2 资源类型 VirtualRouterVmVO 云路由路由表 创建云路由路由表 CreateVRouterRouteTable 管理员可以使用CreateVRouterRouteTable创建云路由路由表 例如 CreateVRouterRouteTable name=vrouterroutetable1 name 资源名称 description 资源的详细 2.1 resourceuuid 资源uuid

262 zstack-cli命令 使用手册 / 7 网络 源类型 VirtualRouterVRouterRouteTableRefVO 2.1 资源类型 VirtualRouterVRouterRouteTableRefVO 删除云路由路由表 DeleteVRouterRouteTable 管理员可以使用DeleteVRouterRouteTable删除云路由路由表 例如 DeleteVRouterRouteTable uuid=c62422b8f644482ea930b84e3200ead9 uuid 云路由路由表uuid 资源#Delete 2.1 请参见 删除 deletemode Resources# Permissive Enforcing 源类型 VirtualRouterVRouterRouteTableRefVO 2.1 资源类型 VirtualRouterVRouterRouteTableRefVO 248

263 zstack-cli命令 使用手册 / 7 网络 查询云路由路由表 QueryVRouterRouteTable 管理员可以使用QueryVRouterRouteTable查询云路由路由表 例如 QueryVRouterRouteTable uuid=a15ee6c9eba744308f5c32b6f93069fb QueryVRouterRouteTable attachedrouterref.virtualroutervmuuid=efb08e965ba4414fa7320 e968178d442 原生域查询 Primitive Fields of Query 请参见 vrouter route table inventory 嵌套和扩展域查询 Nested and Expanded Fields of Query 域 Field 清单 Inventory attachedrouterref attachedrouterrefs routeentries 获取路由器实时路由表 GetVRouterRouteTable 管理员可以使用GetVRouterRouteTable获取路由器实时路由表 例如 GetVRouterRouteTable virtualroutervmuuid=698c538be5414ac7b04b19f4daa29f74 virtualrouterv muuid 云路由设备uuid 源类型 VirtualRouterVRouterRouteTableRefVO 2.1 资源类型 VirtualRouterVRouterRouteTableRefVO 249

264 zstack-cli命令 使用手册 / 7 网络 添加云路由路由条目 AddVRouterRouteEntry 管理员可以使用AddVRouterRouteEntry添加云路由路由条目 例如 AddVRouterRouteEntry routetableuuid=315d780fe5ea495394d59db9a2177b19 destination = /24 description 资源的详细 2.1 类型 允许用 户添加 静态路 由 黑洞路 type 由 两种类型 系 统会根据否填下 UserStatic UserBlackhole 2.1 一条地址自动判断 类型 routetableuuid 云路由路由表uuid 2.1 目标网络地址 使 用网络地址CIDR destination 格式 如果用 2.1 户填写的不标 准CIDR格式 系 统会自动转换 下一条地址 为一 个云路由设备目前 target 可以直接到达的IP 地址 如果不可以 2.1 直接到达 将会进 行递归路由 路由优先级 在 最小匹配下如果 distance 有多条路由规则匹 2.1 配 优先级数字小 的规则将会被匹配 resourceuuid 250 资源uuid

265 zstack-cli命令 使用手册 / 7 网络 源类型 VirtualRouterVRouterRouteTableRefVO 2.1 资源类型 VirtualRouterVRouterRouteTableRefVO 删除云路由路由条目 DeleteVRouterRouteEntry 管理员可以使用DeleteVRouterRouteEntry删除云路由路由条目 例如 DeleteVRouterRouteEntry uuid=92b15177f2a84ec39c962613e926c247 \ routetableuuid=315d780fe5ea495394d59db9a2177b19 uuid routetableuuid 云路由路由条 云路由路由表uuid 资源#Delete 2.1 目uuid 2.1 请参见 删除 deletemode Resources# Permissive Enforcing 源类型 VirtualRouterVRouterRouteTableRefVO 2.1 资源类型 VirtualRouterVRouterRouteTableRefVO 251

266 zstack-cli命令 使用手册 / 7 网络 查询云路由路由条目 QueryVRouterRouteEntry 管理员可以使用QueryVRouterRouteEntry查询云路由路由条目 例如 QueryVRouterRouteEntry uuid=3a9783d1da514c7983c56040bf6b04f2 QueryVRouterRouteEntry vrouterroutetable.uuid=a15ee6c9eba744308f5c32b6f93069fb 原生域查询 Primitive Fields of Query 请参见 vrouter route entry inventory 嵌套和扩展域查询 Nested and Expanded Fields of Query 域 Field 清单 Inventory vrouterroutetable 绑定路由表到云路由设 备 AttachVRouterRouteTableToVRouter 管理员可以使用AttachVRouterRouteTableToVRouter绑定云路由路由表到云路由设备 例如 AttachVRouterRouteTableToVRouter virtualroutervmuuid=698c538be5414ac7b04b19f4daa2 9f74 \ routetableuuid=315d780fe5ea495394d59db9a2177b19 routetableuuid 云路由路由表uuid 2.1 virtualrouterv muuid 云路由设备uuid 源类型 VirtualRouterVRouterRouteTableRefVO 2.1 资源类型 VirtualRouterVRouterRouteTableRefVO 252

267 zstack-cli命令 使用手册 / 7 网络 解绑云路由路由 表 DetachVRouterRouteTableFromVRouter 管理员可以使用DetachVRouterRouteTableFromVRouter解绑云路由路由表 例如 DetachVRouterRouteTableFromVRouter virtualroutervmuuid=698c538be5414ac7b04b1 9f4daa29f74 \ routetableuuid=315d780fe5ea495394d59db9a2177b19 routetableuuid 云路由路由表uuid 2.1 virtualrouterv muuid 云路由设备uuid 源类型 VirtualRouterVRouterRouteTableRefVO 2.1 资源类型 VirtualRouterVRouterRouteTableRefVO 253

268 zstack-cli命令 使用手册 / 7 网络 查询绑定关 系 QueryVirtualRouterVRouterRouteTableRef 管理员可以使用QueryVirtualRouterVRouterRouteTableRef查询绑定关系 例如 QueryVirtualRouterVRouterRouteTableRef routetableuuid=a15ee6c9eba744308f5c32b6f930 69fb QueryVirtualRouterVRouterRouteTableRef vrouterroutetable.uuid=a15ee6c9eba744308f5c3 2b6f93069fb 原生域查询 Primitive Fields of Query 请参见virtual router vrouter route table ref inventory 嵌套和扩展域查询 Nested and Expanded Fields of Query 域 Field 清单 Inventory vrouterroutetable virtualroutervm 标签 Tags 系统标签 System Tags 命令并行度 Parallel Command Level 管理可以限制在一个云路由云主机上并行执行命令的最大数量 标签 示例 commandsparall elismdegree::{paralle 在一个虚拟路由器虚拟 commandsparall 机上并行执行命令的最 elismdegree::100 lismdegree} 大数量 这个标签既可以在云路由规格上创建 也可以在云路由云主机上创建 如果在云路由规格上创建 的 从这个云路由规格创建的所有云路由云主机都将继承这个标签 对于云路由规格请使用resourceType=InstanceOfferingVO创建标签 对于云路由云主机请使用resourceType=VmInstanceVO创建标签 客户L3网络 Guest L3 Network 管理员可以将云路由规格绑定到一个客户L3网络 以指定在该客户L3网络上创建云路由云主机的时 候使用哪一个云路由规格 254

269 zstack-cli命令 使用手册 / 7 网络 标签 示例 guestl3network:: 客户L3网络的uuid guestl3network {guestl3networkuuid} ::dd56c5c209a74b 669b3fe6115a611d57 例如 CreateSystemTag resourcetype=instanceofferingvo resourceuuid=your_vr_offeri NG_UUID \ tag=guestl3network::your_l3_network_uuid 全局配置 Global Configurations agent.deployonstart 类别 默认值 agent.deployonstart virtualrouter false true false 否要在云路由云主机启动/停止/重启的时候部署云路由代理 由于云路由代理内建在云路由云 主机中的 因此这个配置只应在用户想要升级代理的时候设置为true command.parallelismdegree 类别 默认值 command.paralle lismdegree virtualrouter 100 >0 在云路由代理上可并行执行命令的最大数目 connect. 类别 默认值 connect. appliancevm 300 >0 当管理节点连接云路由代理时的SSH连接超时设置 单位秒 如果在设定的时间限制内管理节点 不能和云路由云主机建立SSH连接 会报告一个错误 255

270 zstack-cli命令 使用手册 / 7 网络 agent.deployonstart 类别 默认值 额参数值 agent.deployonstart appliancevm false true false 否要在云路由云主机启动/停止/重启的时候部署特殊云主机代理 由于云路由代理内建在特殊 云主机中的 因此这个配置只应在用户想要升级代理的时候设置为true 7.4 网络服务 概览 ZStack的网络支持多种架构模型 目前最常用的扁平网络和云路由网络 网络服务模块 ZStack提供以下四种网络服务模块 1. VirtualRouter 虚拟路由器网络服务模块 不建议使用 提供以下网络服务 DNS SNAT 负载均衡 端口转发 弹性IP DHCP 2. Flat Network Service Provider 扁平网络服务模块 提供以下网络服务 Userdata 使用cloud-init进行云主机开机加载并执行特定的用户数据 例如ssh-key注入 弹性IP 分布式EIP实现的弹性IP地址 可通过公有网络访问内部私有网络 DHCP 分布式DHCP实现动态获取IP地址 注: DHCP服务包含了DNS的功能 3. vrouter 云路由网络服务模块 提供以下网络服务 IPsec 使用IPsec隧道协议实现虚拟私有网络 VPN 的连接 VRouterRoute 通过云路由路由表 用户可管理自定义路由 CentralizedDNS 在启用分布式DHCP服务的场景下 提供DNS服务 VipQos 虚拟IP限速 限制上行及下行带宽 DNS 使用云路由设备提供DNS服务 256

271 zstack-cli命令 使用手册 / 7 网络 SNAT 云主机使用SNAT可以直接访问外部互联网 负载均衡 将公网地址的访问流量分发到一组后端的云主机上 并自动检测并隔离不可用的 云主机 端口转发 提供将指定公有网络的IP地址端口流量转发到云主机对应协议的端口 弹性IP 使用云路由设备可通过公有网络访问云主机的私有网络 DHCP 集中式DHCP服务 4. SecurityGroup 安全组网络服务模块 提供以下网络服务 安全组 使用iptables进行云主机防火墙的安全控制 扁平网络实践 生产环境中 一般建议使用以下网络服务的组合 扁平网络服务模块 Userdata 使用cloud-init进行云主机开机加载并执行特定的用户数据 例如ssh-key注入 弹性IP 分布式EIP实现的弹性IP地址 可通过公有网络访问内部私有网络 DHCP 分布式DHCP实现的动态获取IP地址 注: DHCP服务包含了DNS的功能 安全组网络服务模块 安全组 使用iptables进行云主机防火墙的安全控制 云路由网络实践 生产环境中 一般建议使用以下网络服务的组合 扁平网络服务模块 DHCP 分布式DHCP实现的动态获取IP地址 云路由网络服务模块 DNS 使用云路由设备提供DNS服务 SNAT 云主机使用SNAT可以直接访问外部互联网 弹性IP 使用云路由设备可通过公有网络访问云主机的私有网络 端口转发 提供将指定公有网络的IP地址端口流量转发到云主机对应协议的端口 257

272 zstack-cli命令 使用手册 / 7 网络 负载均衡 将公网地址的访问流量分发到一组后端的云主机上 并自动检测并隔离不可用的 云主机 IPsec 使用IPsec隧道协议实现虚拟私有网络 VPN 的连接 安全组网络服务模块 安全组 使用iptables进行云主机防火墙的安全控制 安全组 安全组 给云主机提供三层网络防火墙控制 控制TCP/UDP/ICMP等数据包进行有效过滤 对指定 网络的指定云主机按照指定的安全规则进行有效控制 如图 29: 安全组所示 图 29: 安全组 要使用安全组 L3网络必须通过AttachNetworkServiceToL3Network启用安全组服务 例如 AttachNetworkServiceToL3Network l3networkuuid=50e637dc68b ba87cbb81d94ad \ networkservices='{"1d1d5ff248b24906a39f96aa3c6411dd": ["SecurityGroup"]}' 对于有多个网卡的云主机 所有网卡都可加入安全组 安全组实际上一个分布式防火墙 每次规则变化 加入/删除网卡都会导致多个云主机上的防火墙 规则被更新 因此, 一些安全组的API使用异步方式实现 在这些API返回之后 规则可能不会立即 生效 如果同一个端口指定了多个规则 只有最宽松的规则会生效 例如 258

273 zstack-cli命令 使用手册 / 7 网络 如果规则rule-1允许从 访问端口22 但规则rule-2允许所有人访问端口22, 那么规 则rule-2会优先起作用 安全组的实现因Hypervisor的不同而不同 并不所有的Hypervisor都支持安全组 例如VMware vsphere Hypervisor 在ZStack中 扁平网络和云路由网络均支持安全组服务 使用方法相 同 在KVM Hypervisor中使用iptables进行云主机防火墙的安全控制 使用安全组的基本流程为 选择三层网络 设置相应的防火墙规则 选择指定的云主机加入规则 中 安全组支持白名单机制 即设置的所有规则均为允许机制 一旦对指定端口设置了允许机制 那么 没有被允许的端口就无法通过 安全组规则对数据包的流向有两种 Ingress 代表数据包从外部进入云主机 Egress 代表数据包从云主机往外部发出 安全组规则对通信协议的支持以下类型 TCP 支持 端口 UDP 支持 端口 ICMP 默认起始结束端口均为-1 表示支持全部的ICMP协议 ALL 表示涵盖所有协议类型 此时不能指定端口 安全组规则支持对数据来源的限制 目前源可以设置为CIDR和安全组 CIDR作为源 仅允许指定的CIDR才可通过 安全组作为源 仅允许指定的安全组内的云主机才可通过 注: 如果两者都设置 只取两者交集 虚拟IP 虚拟IP VIP 在桥接网络环境中 使用虚拟IP地址来提供弹性IP 端口转发 负载均 衡 IPsec隧道等网络服务 数据包会被发送到虚拟IP 再路由至云主机网络 虚拟IP一般将可以访问互联网的公有IP地址 路由到云主机的私有网络 扁平网络下的虚拟IP服务仅用于弹性IP网络服务 云路由网络下的虚拟IP服务可用于弹性IP 端口转发 负载均衡 IPsec隧道 259

274 zstack-cli命令 使用手册 / 7 网络 如图 30: 虚拟IP-负载均衡所示 图 30: 虚拟IP-负载均衡 弹性IP 弹性IP EIP 提供通过公有网络访问内部私有网络的方法 内部私有网络隔离的网络空间 不能直接被外部网络访问 在扁平网络的私有隔离网络中 内部 网络也无法直接访问外部网络 弹性IP基于网络地址转换 NAT, 将一个网络 通常公有网络 的IP地址转换成另一个网络 通 常一个私有网络 的IP地址 简言之 通过弹性IP可以将对公网的访问直接关联到内部私网的云 主机IP 弹性IP可以动态的绑定到一个云主机上 或从一个云主机上解绑 扁平网络和云路由网络均提供弹性IP服务 扁平网络 分布式EIP实现的弹性IP地址 可通过公有网络访问内部私有网络 如图 31: 扁平网 络下弹性IP的应用场景所示 云路由网络 使用云路由设备 可通过公有网络访问云主机的私有网络 如图 32: 云路由网络下 弹性IP的应用场景所示 图 31: 扁平网络下弹性IP的应用场景 260

275 zstack-cli命令 使用手册 / 7 网络 图 32: 云路由网络下弹性IP的应用场景 端口转发 端口转发 PF 基于云路由提供的三层转发服务 可提供将指定公有网络的IP地址端口流量转发 到云主机对应协议的端口 在公网IP地址紧缺的情况下 通过端口转发可以提供多个云主机对外服 务 以节省网公网IP地址资源 261

276 zstack-cli命令 使用手册 / 7 网络 当云主机在一个启用SNAT服务的私有网络上 云主机可以访问外部网络但不能被外部网络访问 到 这也正SNAT所定义的功能 此时可以创建端口转发规则 从而允许外部网络访问SNAT后面 的云主机的某些特定端口 ZStack支持弹性端口转发规则 这些规则可以按需绑定到云主机 或从云主机解绑 端口转发服务限于云路由网络提供 端口转发规则实际上创建于云路由设备的公有网络和云主机 私有网络之间 如图 33: 端口转发1所示 图 33: 端口转发1 端口转发功能需要使用虚拟IP来实现 虚拟IP对应于公有网络的IP地址范围中的一个可用IP 一个虚拟IP可以在多个端口转发规则中使用 只要这些规则的端口范围没有重叠 如图 34: 端口转 发2所示 图 34: 端口转发2 262

277 zstack-cli命令 使用手册 / 7 网络 负载均衡 负载均衡 LB 将公网地址的访问流量分发到一组后端的云主机 并支持自动检测并隔离不可用 的主机 从而提高业务的服务能力和可用性 负载均衡能自动地把访问用户应用的流量分发到预先设置的多个后端云主机 以提供高可靠高并 发的访问服务 负载均衡可以自动探测用于分发的云主机的当前状态 将不可用的云主机 例如被用户停止 或 云主机宕机 从分发队列中移除 当该云主机恢复正常功能后可将其自动添加回来 263

278 zstack-cli命令 使用手册 / 7 网络 根据实际情况 随时添加或删减负载均衡规则中的云主机来调整服务能力 而且这些操作不会影 响业务的正常访问 负载均衡器支持HTTP/TCP 两种协议 负载均衡器还支持灵活配置多种转发策略 实现高级转发控制功能 如图 35: 负载均衡所示 图 35: 负载均衡 IPsec IPsec隧道 透过对IP协议的分组进行加密和认证来保护IP协议的网络传输数据 实现站点到站 点 site-to-site 的虚拟私有网络 VPN 连接 ZStack支持的IPsec特性如下 IPsec连接模式 基于安全考虑 只支持主动模式 Main Mode 不支持积极模式 Aggressive Mode 仅支 持ESP封装协议 IPsec传输模式 只支持站点到站点的隧道模式 不支持PC点对点模式 基于云端网络模型考虑 不支持两端 存在NAT网络 IPsec路由模型 264

279 zstack-cli命令 使用手册 / 7 网络 只支持基于对端网段配对模型 只支持路由配对模式 不支持路由转发模式 不支持OSPF 或BGP等动态路由协议 IPsec隧道的典型场景如下 在两套相互隔离的ZStack环境中 使用云路由的方案 两套环境中云主机的私有网络无法直接通信 使用IPsec可以实现两套云主机的私有网络互相通信 操作 Operations 获取网络服务类型 GetNetworkServiceTypes 管理员可以使用GetNetworkServiceTypes获取网络服务类型 返回示例 { "serviceandprovidertypes": { "CentralizedDNS": [ "3ac f54d3e885614e16859b37b" ], "DHCP": [ "3ac f54d3e885614e16859b37b", "4cb187b732e8487e9016ec04e987f220", "fc2a7c1542ad497b840b0a0f8d294ac8" ], "DNS": [ "3ac f54d3e885614e16859b37b", "4cb187b732e8487e9016ec04e987f220" ], "Eip": [ "3ac f54d3e885614e16859b37b", "4cb187b732e8487e9016ec04e987f220", "fc2a7c1542ad497b840b0a0f8d294ac8" ], "IPsec": [ "3ac f54d3e885614e16859b37b" ], "LoadBalancer": [ "3ac f54d3e885614e16859b37b", "4cb187b732e8487e9016ec04e987f220" ], "PortForwarding": [ "3ac f54d3e885614e16859b37b", "4cb187b732e8487e9016ec04e987f220" ], "SNAT": [ "3ac f54d3e885614e16859b37b", "4cb187b732e8487e9016ec04e987f220" ], "SecurityGroup": [ "a1fe1b df93667e7981fc9535" ], "Userdata": [ "fc2a7c1542ad497b840b0a0f8d294ac8" ], 265

280 zstack-cli命令 使用手册 / 7 网络 "VRouterRoute": [ "3ac f54d3e885614e16859b37b" ], "VipQos": [ "3ac f54d3e885614e16859b37b" ] } }, "success": true 2.2 源类型 NetworkServiceTypeVO 2.2 资源类型 NetworkServiceTypeVO 查询网络服务模块 QueryNetworkServiceProvider 管理员可以使用QueryNetworkServiceProvider查询网络服务模块 例如 QueryNetworkServiceProvider name="flat Network Service Provider" 原生域查询 Primitive Fields of Query 请参见 network service provider inventory 266

281 zstack-cli命令 使用手册 / 7 网络 查询网络服务与三层网络引 用 QueryNetworkServiceL3NetworkRef 管理员可以使用QueryNetworkServiceL3NetworkRef查询网络服务与三层网络引用 例如 QueryNetworkServiceL3NetworkRef l3networkuuid=9082f45fce9c46f19b2ab5ff117511d6 QueryNetworkServiceL3NetworkRef serviceprovider.type=flat 原生域查询 Primitive Fields of Query 请参见 network service ref inventory 嵌套和扩展域查询 Nested and Expanded Fields of Query 域 Field 清单 Inventory l3network l3network inventory serviceprovider 挂载网络服务到三层网 络 AttachNetworkServiceToL3Network 管理员可以使用AttachNetworkServiceToL3Network挂载网络服务到三层网络 例如 AttachNetworkServiceToL3Network l3networkuuid=e6fa7d7b49834ab2a67bb4f5be \ networkservices="{'3ac f54d3e885614e16859b37b':['dhcp','snat']}" l3networkuuid 三层网络uuid networkservices 网络服务 2.2 签#CreateUserTag# 2.2 签#CreateSystemTag# 267

282 zstack-cli命令 使用手册 / 7 网络 从三层网络卸载网络服 务 DetachNetworkServiceFromL3Network 管理员可以使用DetachNetworkServiceFromL3Network从三层网络卸载网络服务 例如 DetachNetworkServiceFromL3Network l3networkuuid=e6fa7d7b49834ab2a67bb4f5be \ networkservices="{'3ac f54d3e885614e16859b37b':['dhcp','snat']}" l3networkuuid 三层网络uuid networkservices 网络服务 2.2 签#CreateUserTag# 2.2 签#CreateSystemTag# 安全组 创建安全组 CreateSecurityGroup 管理员可以使用CreateSecurityGroup创建安全组 例如 CreateSecurityGroup name=securitygroup1 name 安全组名称 description 安全组的详细 resourceuuid 资源uuid 268

283 zstack-cli命令 使用手册 / 7 网络 源类型 SecurityGroupVO 资源类型 SecurityGroupVO 删除安全组 DeleteSecurityGroup 管理员可以使用DeleteSecurityGroup删除安全组 例如 DeleteSecurityGroup uuid=4b6b db419cdb9ca2b17ff uuid 安全组uuid 资源#Delete Resources# resourceuuid 资源uuid 请参见 删除 deletemode Permissive Enforcing 2.1 源类型 SecurityGroupVO 资源类型 SecurityGroupVO 269

284 zstack-cli命令 使用手册 / 7 网络 查询安全组 QuerySecurityGroup 管理员可以使用QuerySecurityGroup查询安全组 例如 QuerySecurityGroup uuid=5a008ae4db7b4a7aa f641cc80 QuerySecurityGroup rules.uuid=c f10347f0be3398b9ccaed1cb 原生域查询 Primitive Fields of Query 请参见 security group inventory 嵌套和扩展域查询 Nested and Expanded Fields of Query 域 Field 清单 Inventory l3network L3network inventory rules rules inventory vmnics vm nic inventory 更新安全组 UpdateSecurityGroup 管理员可以使用UpdateSecurityGroup更新安全组 例如 UpdateSecurityGroup uuid=5a008ae4db7b4a7aa f641cc80 uuid 安全组uuid name 安全组名称 description 安全组的详细 源类型 SecurityGroupVO 资源类型 SecurityGroupVO 270

285 zstack-cli命令 使用手册 / 7 网络 改变安全组状态 ChangeSecurityGroupState 管理员可以使用ChangeSecurityGroupState改变安全组状态 例如 ChangeSecurityGroupState uuid=5a008ae4db7b4a7aa f641cc80 stateevent=enable uuid 安全组uuid stateevent 安全组状态 enable disable 源类型 SecurityGroupVO 资源类型 SecurityGroupVO 挂载安全组到L3网 络 AttachSecurityGroupToL3Network 管理员可以使用AttachSecurityGroupToL3Network挂载安全组到L3网络 例如 AttachSecurityGroupToL3Network securitygroupuuid=5a008ae4db7b4a7aa f641cc80 \ l3networkuuid=9082f45fce9c46f19b2ab5ff117511d6 securitygroupu uid 安全组uuid 271

286 zstack-cli命令 使用手册 / 7 网络 l3networkuuid 三层网络uuid 源类型 SecurityGroupVO 资源类型 SecurityGroupVO 从L3网络卸载安全 组 DetachSecurityGroupFromL3Network 管理员可以使用DetachSecurityGroupFromL3Network从L3网络卸载安全组 例如 DetachSecurityGroupFromL3Network securitygroupuuid=5a008ae4db7b4a7aa f641 cc80 \ l3networkuuid=9082f45fce9c46f19b2ab5ff117511d6 securitygroupu uid 安全组uuid l3networkuuid 三层网络uuid 源类型 SecurityGroupVO 资源类型 SecurityGroupVO 272

287 zstack-cli命令 使用手册 / 7 网络 获取网卡列表清 单 GetCandidateVmNicForSecurityGroup 管理员可以使用GetCandidateVmNicForSecurityGroup获取可应用安全组的网卡列表清单 例如 GetCandidateVmNicForSecurityGroup securitygroupuuid=5a008ae4db7b4a7aa f641 cc80 securitygroupu uid 安全组uuid 源类型 SecurityGroupVO 资源类型 SecurityGroupVO 添加虚拟机网卡到安全组 AddVmNicToSecurityGroup 管理员可以使用AddVmNicToSecurityGroup添加虚拟机网卡到安全组 例如 AddVmNicToSecurityGroup securitygroupuuid=5a008ae4db7b4a7aa f641cc80 \ vmnicuuids=3e6a4cc2eb0941edbac7af24e2ff932f securitygroupu uid 安全组uuid 273

288 zstack-cli命令 使用手册 / 7 网络 vmnicuuids 云主机网卡uuid列 表 源类型 SecurityGroupVO 资源类型 SecurityGroupVO 从安全组删除虚拟机网 卡 DeleteVmNicFromSecurityGroup 管理员可以使用DeleteVmNicFromSecurityGroup从安全组删除虚拟机网卡 例如 DeleteVmNicFromSecurityGroup securitygroupuuid=5a008ae4db7b4a7aa f641cc80 \ vmnicuuids=3e6a4cc2eb0941edbac7af24e2ff932f securitygroupu uid 安全组uuid vmnicuuids 云主机网卡uuid列 表 源类型 SecurityGroupVO 274

289 zstack-cli命令 使用手册 / 7 网络 资源类型 SecurityGroupVO 查询应用了安全组的网卡列 表 QueryVmNicInSecurityGroup 管理员可以使用QuerySecurityGroup查询应用了安全组的网卡列表 例如 QueryVmNicInSecurityGroup securitygroupuuid=5a008ae4db7b4a7aa f641cc80 QueryVmNicInSecurityGroup vmnic.uuid=3e6a4cc2eb0941edbac7af24e2ff932f 原生域查询 Primitive Fields of Query 请参见 security group inventory 嵌套和扩展域查询 Nested and Expanded Fields of Query 域 Field 清单 Inventory securitygroup securitygroup invento ry vmnic vm nic inventory 应用了该安全组的网卡 添加规则到安全组 AddSecurityGroupRule 管理员可以使用AddSecurityGroupRule添加规则到安全组 例如 AddSecurityGroupRule rules="[{'type':'ingress', 'protocol':'tcp', 'startport':'22', \ 'endport':'22', 'allowedcidr':' /0'}]" securitygroupuuid= a5e4949a2a129628ba securitygroupu uid 安全组uuid rules 安全组中的规则 remotesecurity 规则生效的源安全 GroupUuids 组 275

290 zstack-cli命令 使用手册 / 7 网络 源类型 SecurityGroupVO 资源类型 SecurityGroupVO 查询安全组规则 QuerySecurityGroupRule 管理员可以使用QuerySecurityGroupRule查询安全组规则 例如 QuerySecurityGroupRule uuid=b59a266d49374b729cbcafbe2cc23f73 QuerySecurityGroupRule securitygroup.uuid= a5e4949a2a129628ba91275 原生域查询 Primitive Fields of Query 请参见 security group inventory 嵌套和扩展域查询 Nested and Expanded Fields of Query 域 Field 清单 Inventory securitygroup securitygroup invento ry 删除安全组规则 DeleteSecurityGroupRule 管理员可以使用DeleteSecurityGroupRule删除安全组规则 例如 DeleteSecurityGroupRule ruleuuids=b59a266d49374b729cbcafbe2cc23f73 ruleuuids 276 安全组规则的uuid 列表

291 zstack-cli命令 使用手册 / 7 网络 源类型 SecurityGroupRuleVO 资源类型 SecurityGroupRuleVO 虚拟IP 创建虚拟IP CreateVip 管理员可以使用CreateVip创建虚拟IP 例如 CreateVip name=vip1 l3networkuuid=a3b2fce8f82b4422a575220a35d6ebbd name 虚拟IP名称 description 虚拟IP的详细 l3networkuuid 三层网络uuid allocatorstrategy 分配策略 requiredip 请求的IP resourceuuid 资源uuid 源类型 VipVO 277

292 zstack-cli命令 使用手册 / 7 网络 资源类型 VipVO 删除虚拟IP DeleteVip 管理员可以使用DeleteVip删除虚拟IP 例如 DeleteVip uuid=a9cca051d90348a7b7acdabba96865e9 uuid 虚拟IP的uuid 请参见 删除 deletemode 资源#Delete Resources# Permissive Enforcing 源类型 VipVO 资源类型 VipVO 查询虚拟IP QueryVip 管理员可以使用QueryVip查询虚拟IP 例如 QueryVip l3networkuuid=a3b2fce8f82b4422a575220a35d6ebbd QueryVip l3network.uuid=a3b2fce8f82b4422a575220a35d6ebbd 原生域查询 Primitive Fields of Query 请参见 vip inventory 278

293 zstack-cli命令 使用手册 / 7 网络 嵌套和扩展域查询 Nested and Expanded Fields of Query 域 Field 清单 Inventory l3network l3network inventory eip eip inventory loadbalancer load balancer invento ry peerl3network l3network inventory portforwarding port forwarding invento ry 更新虚拟IP UpdateVip 管理员可以使用UpdateVip更新虚拟IP 例如 UpdateVip uuid=bc6277e31a904c46a506e8031b1cef65 uuid 虚拟IP的uuid name 虚拟IP的名称 description 虚拟IP的详细 源类型 VipVO 资源类型 VipVO 279

294 zstack-cli命令 使用手册 / 7 网络 更改虚拟IP启用状态 ChangeVipState 管理员可以使用ChangeVipState更新虚拟IP启用状态 例如 ChangeVipState uuid=bc6277e31a904c46a506e8031b1cef65 stateevent=disable uuid 虚拟IP的uuid stateevent 状态事件 enable disable 源类型 VipVO 资源类型 VipVO 获取虚拟IP所有业务端口列表 GetVipUsedPorts 管理员可以使用GetVipUsedPorts获取虚拟IP所有业务端口列表 例如 GetVipUsedPorts protocol=tcp uuid=8bf4d57854ec42dbbdcc5b1424a243d9 uuid 虚拟IP的uuid protocol 网络协议 2.2 TCP UDP 源类型 VipVO 280

295 zstack-cli命令 使用手册 / 7 网络 2.2 资源类型 VipVO 弹性IP 创建弹性IP CreateEip 管理员可以使用CreateEip创建弹性IP 例如 CreateEip name=eip1 vipuuid=3d e62e918f6757 name 弹性IP名称 description 弹性IP的详细 vipuuid VIP的uuid vmnicuuid 云主机网卡uuid resourceuuid 资源uuid 源类型 EipVO 资源类型 EipVO 281

296 zstack-cli命令 使用手册 / 7 网络 删除弹性IP DeleteEip 管理员可以使用DeleteEip删除弹性IP 例如 DeleteEip uuid=65b402f0f cb5014e6859cd38 uuid 弹性IP的uuid 请参见 删除 deletemode 资源#Delete Permissive Enforcing Resources# 源类型 EipVO 资源类型 EipVO 查询弹性IP QueryEip 管理员可以使用QueryEip查询弹性IP 例如 QueryEip uuid=83b6bba232a44038bd13f5ced9693f92 QueryEip vip.uuid=3d e62e918f6757 原生域查询 Primitive Fields of Query 请参见 eip inventory 嵌套和扩展域查询 Nested and Expanded Fields of Query 282 域 Field 清单 Inventory vmnic vm nic inventory vip vip inventory

297 zstack-cli命令 使用手册 / 7 网络 更新弹性IP UpdateEip 管理员可以使用UpdateEip更新弹性IP 例如 UpdateEip uuid=83b6bba232a44038bd13f5ced9693f92 uuid 弹性IP的uuid name 弹性IP的名称 description 弹性IP的详细 源类型 EipVO 资源类型 EipVO 更改弹性IP启用状态 ChangeEipState 管理员可以使用ChangeEipState更新弹性IP启用状态 例如 ChangeEipState uuid=83b6bba232a44038bd13f5ced9693f92 stateevent=enable uuid 弹性IP的uuid stateevent 状态事件 enable disable 源类型 EipVO 283

298 zstack-cli命令 使用手册 / 7 网络 资源类型 EipVO 获取可绑定指定弹性IP的云主机网 卡 GetEipAttachableVmNics 管理员可以使用GetEipAttachableVmNics获取可绑定指定弹性IP的云主机网卡 例如 GetEipAttachableVmNics eipuuid=83b6bba232a44038bd13f5ced9693f92 eipuuid 弹性IP的uuid eipuuid和vipuuid 虚拟IP的uuid vipuuid 至少选填一个 源类型 EipVO 资源类型 EipVO 284

299 zstack-cli命令 使用手册 / 7 网络 绑定弹性IP AttachEip 管理员可以使用AttachEip绑定弹性IP 例如 AttachEip eipuuid=83b6bba232a44038bd13f5ced9693f92 vmnicuuid=3e6a4cc2eb0941 edbac7af24e2ff932f eipuuid 弹性IP的uuid vmnicuuid 云主机网卡uuid 源类型 EipVO 资源类型 EipVO 解绑弹性IP DetachEip 管理员可以使用DetachEip解绑弹性IP 例如 DetachEip uuid=83b6bba232a44038bd13f5ced9693f9 uuid 弹性IP的uuid 源类型 EipVO 285

300 zstack-cli命令 使用手册 / 7 网络 资源类型 EipVO 端口转发 创建端口转发规则 CreatePortForwardingRule 管理员可以使用CreatePortForwardingRule创建端口转发规则 例如 CreatePortForwardingRule name=pf1 protocoltype=tcp vipuuid= f534190b37df ead4d17341c \ vipportstart=22 privateportstart=23 privateportend=23 vipuuid VIP的uuid vipportstart VIP的起始端口号 VIP的结束端口 vipportend 号 如果忽略不 束端口号 如果忽 设置 会默认设置 为vipPortStart 客户IP 虚拟机网 卡的IP地址 的起 privateportstart 始端口号 如果忽 略不设置 会默 认设置为vipPort Start 客户IP 虚拟机网 卡的IP地址 的结 privateportend 略不设置 会默认 设置为vipPortEnd 286 protocoltype 网络流量协议类型 vmnicuuid 云主机网卡uuid TCP UDP

301 zstack-cli命令 使用手册 / 7 网络 源CIDR 端口 转发规则只作用 allowedcidr 于源CIDR的流 量 如果忽略不 设置 会默认设置 为to /0 name description resourceuuid 端口转发规则名称 端口转发规则的详 细 资源uuid 源类型 PortForwardingRuleVO 资源类型 PortForwardingRuleVO 删除端口转发规则 DeletePortForwardingRule 管理员可以使用DeletePortForwardingRule删除端口转发规则 例如 DeletePortForwardingRule uuid= e0a4f4894bcdfaa455d213ecb uuid 端口转发规则 资源#Delete Resources# 的uuid 请参见 删除 deletemode Permissive Enforcing 287

302 zstack-cli命令 使用手册 / 7 网络 源类型 PortForwardingRuleVO 资源类型 PortForwardingRuleVO 查询端口转发规则 QueryPortForwardingRule 管理员可以使用QueryPortForwardingRule查询端口转发规则 例如 QueryPortForwardingRule uuid=8c3c4c7864c54010a09dbd77e2bfeedd QueryPortForwardingRule vip.name=vip-for-pf1 原生域查询 Primitive Fields of Query 请参见 port forwarding inventory 嵌套和扩展域查询 Nested and Expanded Fields of Query 域 Field 清单 Inventory vmnic vm nic inventory vip vip inventory 更新端口转发规则 UpdatePortForwardingRule 管理员可以使用UpdatePortForwardingRule更新端口转发规则 例如 UpdatePortForwardingRule uuid=8c3c4c7864c54010a09dbd77e2bfeed uuid 288 端口转发规则 的uuid

303 zstack-cli命令 使用手册 / 7 网络 name description 端口转发规则的名 称 端口转发规则的详 细 源类型 PortForwardingRuleVO 资源类型 PortForwardingRuleVO 改变端口转发规则的状 态 ChangePortForwardingRuleState 管理员可以使用ChangePortForwardingRuleState改变端口转发规则的状态 例如 ChangePortForwardingRuleState uuid=8c3c4c7864c54010a09dbd77e2bfeedd stateevent =disable uuid stateevent 端口转发规则 的uuid 端口转发规则的状 enable 态 disable 源类型 PortForwardingRuleVO 289

304 zstack-cli命令 使用手册 / 7 网络 资源类型 PortForwardingRuleVO 获取云主机网卡列 表 GetPortForwardingAttachableVmNics 管理员可以使用GetPortForwardingAttachableVmNics获取云主机网卡列表 例如 GetPortForwardingAttachableVmNics ruleuuid=8c3c4c7864c54010a09dbd77e2bfeedd ruleuuid 规则的uuid 源类型 PortForwardingRuleVO 资源类型 PortForwardingRuleVO 挂载规则到虚拟机网卡上 AttachPortForwardingRule 管理员可以使用AttachPortForwardingRule挂载规则到虚拟机网卡上 例如 AttachPortForwardingRule ruleuuid=8c3c4c7864c54010a09dbd77e2bfeedd \ 290

305 zstack-cli命令 使用手册 / 7 网络 vmnicuuid=3e6a4cc2eb0941edbac7af24e2ff932f ruleuuid 规则的uuid vmnicuuid 云主机网卡uuid 源类型 PortForwardingRuleVO 资源类型 PortForwardingRuleVO 从虚拟机网卡卸载规则 DetachPortForwardingRule 管理员可以使用DetachPortForwardingRule从虚拟机网卡卸载规则 例如 DetachPortForwardingRule uuid=8c3c4c7864c54010a09dbd77e2bfeedd uuid 规则的uuid 源类型 PortForwardingRuleVO 资源类型 PortForwardingRuleVO 291

306 zstack-cli命令 使用手册 / 7 网络 负载均衡 创建负载均衡器 CreateLoadBalancer 管理员可以使用CreateLoadBalancer创建负载均衡器 例如 CreateLoadBalancer name=lb1 vipuuid=dc0ee73ed875423aa6778fc091e3ce70 name 负载均衡器名称 description 负载均衡器的详细 vipuuid VIP的uuid resourceuuid 资源uuid 源类型 LoadBalancerVO 资源类型 LoadBalancerVO 292

307 zstack-cli命令 使用手册 / 7 网络 删除负载均衡器 DeleteLoadBalancerListener 管理员可以使用DeleteLoadBalancerListener删除负载均衡器 例如 DeleteLoadBalancer uuid=18fa017f308342f5a580edcbb63dbeb3 uuid 负载均衡器的uuid 请参见 删除 deletemode 资源#Delete Permissive Enforcing Resources# 源类型 LoadBalancerVO 资源类型 LoadBalancerVO 查询负载均衡器 QueryLoadBalancerListener 管理员可以使用QueryLoadBalancerListener查询负载均衡器 例如 QueryLoadBalancer vipuuid=dc0ee73ed875423aa6778fc091e3ce70 QueryLoadBalancer listeners.uuid=ba50b5cd2e09461e9aea80df779c425d 原生域查询 Primitive Fields of Query 请参见 load balancer inventory 嵌套和扩展域查询 Nested and Expanded Fields of Query 域 Field 清单 Inventory 293

308 zstack-cli命令 使用手册 / 7 网络 获取云主机网 卡 GetCandidateVmNicsForLoadBalancer 管理员可以使用GetCandidateVmNicsForLoadBalancer获取云主机网卡 例如 GetCandidateVmNicsForLoadBalancer listeneruuid=7e331a2f61ed4c65b96d521115bc9f16 listeneruuid 负载均衡监听器 的uuid 源类型 LoadBalancerListenerVO 资源类型 LoadBalancerListenerVO 添加云主机网卡到负载均衡 器 AddVmNicToLoadBalancer 管理员可以使用AddVmNicToLoadBalancer添加云主机网卡到负载均衡器 例如 AddVmNicToLoadBalancer listeneruuid=7e331a2f61ed4c65b96d521115bc9f16 \ vmnicuuids=93dea4f ac4d40e50b3c8cad vmnicuuids 云主机网卡uuid listeneruuid 294 的uuid 负载均衡监听器

309 zstack-cli命令 使用手册 / 7 网络 源类型 LoadBalancerListenerVO 资源类型 LoadBalancerListenerVO 从负载均衡器移除云主机网 卡 RemoveVmNicFromLoadBalancer 管理员可以使用RemoveVmNicFromLoadBalancer从负载均衡器移除云主机网卡 例如 RemoveVmNicFromLoadBalancer listeneruuid=7e331a2f61ed4c65b96d521115bc9f16 \ vmnicuuids=93dea4f ac4d40e50b3c8cad vmnicuuids 云主机网卡uuid listeneruuid 负载均衡监听器 的uuid 源类型 LoadBalancerListenerVO 资源类型 LoadBalancerListenerVO 295

310 zstack-cli命令 使用手册 / 7 网络 IPsec 创建IPsec连接 CreateIPsecConnection 管理员可以使用CreateIPsecConnection创建IPsec连接 例如 CreateIPsecConnection name=ipsec1 vipuuid=c023e287a3fa4503b259f893aaf2d33d \ l3networkuuid=9082f45fce9c46f19b2ab5ff117511d6 peeraddress= peercidrs= /24 \ authkey= name IPsec连接名称 description IPsec连接的详细 l3networkuuid 三层网络uuid peeraddress 对端地址 authmode 认证模式 authkey 认证密钥 vipuuid VIP的uuid peercidrs 对端CIDR psk certs md5 sha1 ikeauthalgorithm IKE验证算法 sha256 sha384 sha512 3des ikeencryptiona lgorithm IKE加密算法 aes-128 aes-192 aes ikedhgroup IKE完整前向保密 policyauthalgo rithm ESP认证算法 md5 sha1

311 zstack-cli命令 使用手册 / 7 网络 sha256 sha384 sha512 3des policyencrypti onalgorithm ESP加密算法 aes-128 aes-192 aes-256 dh-group2 dh-group5 dh-group14 dh-group15 dh-group16 dh-group17 dh-group18 pfs 完全正向保密 dh-group19 dh-group20 dh-group21 dh-group22 dh-group23 dh-group24 dh-group25 dh-group26 policymode 工作模式 transformprotocol 传输安全协议 resourceuuid 资源uuid tunnel transport esp ahah-esp 签#CreateUserTag# 签#CreateSystemTag# 297

312 zstack-cli命令 使用手册 / 7 网络 删除IPsec连接 DeleteIPsecConnection 管理员可以使用DeleteIPsecConnection删除IPsec连接 例如 DeleteIPsecConnection uuid=05caec6ebc234b2a899f7eb362ada51b uuid IPsec连接的uuid 资源#Delete 请参见 删除 deletemode Resources# Permissive Enforcing 签#CreateUserTag# 签#CreateSystemTag# 更新IPsec连接 UpdateIPsecConnection 管理员可以使用UpdateIPsecConnection更新IPsec连接 例如 UpdateIPsecConnection uuid=5a dbdab1ded93613d7666 uuid IPsec连接的uuid name IPsec连接的名称 description 298 IPsec连接的详细

313 zstack-cli命令 使用手册 / 7 网络 请参见 删除 deletemode 资源#Delete Permissive Enforcing Resources# 签#CreateUserTag# 签#CreateSystemTag# 查询IPsec连接 QueryIPSecConnection 管理员可以使用QueryIPSecConnection查询IPsec连接 例如 QueryIPSecConnection uuid=5a dbdab1ded93613d7666 QueryIPSecConnection l3network.uuid=cef5d1b507204c78b285d e 原生域查询 Primitive Fields of Query 请参见 IPsec inventory 嵌套和扩展域查询 Nested and Expanded Fields of Query 域 Field 清单 Inventory 更改IPsec连接状态 ChangeIPSecConnectionState 管理员可以使用ChangeIPSecConnectionState更改IPsec连接状态 例如 ChangeIPSecConnectionState uuid=5a dbdab1ded93613d7666 stateevent =disable uuid IPsec连接的uuid stateevent 状态事件 2.2 enable

314 zstack-cli命令 使用手册 / 7 网络 disable 2.2 签#CreateUserTag# 2.2 签#CreateSystemTag# 标签 Tags 安全组 用户可以使用resourceType=SecurityGroupVO在安全组上创建标签 例如 CreateUserTag tag=web-tier-security-group resourcetype=securitygroupvo \ resourceuuid=f25a28fdb21147f8b a98799 虚拟IP 用户可以使用resourceType=VipVO在VIP上创建一个用户标签 例如 CreateUserTag tag=web-tier-vip resourcetype=vipvo \ resourceuuid=c3206d0e29074e21984c584074c63920 弹性IP 用户可以使用resourceType=EipVO在EIP上创建一个用户标签 例如 CreateUserTag resourcetype=eipvo tag=web-public-ip \ resourceuuid=29fa6c2830c441aaa388d8165b80c24c 端口转发 用户可以使用resourceType=PortForwardingRuleVO在端口转发上创建用户标签 例如 CreateUserTag resourcetype=portforwardingrulevo tag=ssh-rule \ resourcetype=e960a93b7f974690bb779808f3c12a33 负载均衡 用户可以使用resourceType=LoadBalancerVO给一个负载均衡器创建一个用户标签 例如 CreateUserTag tag=web-lb resourceuuid=0a9f95a b5118e15bff32 \ 300

315 zstack-cli命令 使用手册 / 7 网络 resourcetype=loadbalancervo 用户可以使用resourceType=LoadBalancerListenerVO给一个负载均衡的listener创建一个用户标 签 例如 CreateUserTag tag=web-lb-80 resourceuuid=0a9f95a b5118e15bff32 \ resourcetype=loadbalancerlistenervo IPsec 301

316 zstack-cli命令 使用手册 / 8 平台管理 8 平台管理 8.1 报警 概览 ZStack 无需额外安装软件 就可以自动监控云主机 物理机等资源的CPU/内存/磁盘IO/网络IO等多 项指标 用户可以自行创建报警规则 以邮件方式发送报警信息 使用这些分析结果 用户可以快 速做出反应 保证业务的稳定运行 并配合监控数据回顾资源的历史信息 对未来资源进行合理规 划 操作 Operations 智能报警 创建 媒体 Create Media 管理员可以使用Create Media创建 媒体 例如 Create Media name= server1 username=test password=password smtpserver=smtp.zstack.io \ smtpport=25 smtpserver 2.1 smtpport 2.1 username 2.1 password 2.1 name 资源名称 description 资源的详细 2.1 resourceuuid 资源uuid 源类型 MediaVO 302

317 zstack-cli命令 使用手册 / 8 平台管理 2.1 资源类型 MediaVO 更新 媒体 Update Media 管理员可以使用Update Media更新 媒体 例如 Update Media uuid=eb11b44f4b3b4e6b9a24cc69d8ebe412 uuid 资源uuid 2.1 smtp服务器地 smtpserver 址 IP或DNS 2.1 name smtpport smtp端口 2.1 username 用户名 2.1 password 密码 2.1 name 资源名称 description 资源的详细 2.1 resourceuuid 资源uuid 源类型 MediaVO 2.1 资源类型 MediaVO 303

318 zstack-cli命令 使用手册 / 8 平台管理 删除媒体 DeleteMedia 管理员可以使用DeleteMedia删除媒体 例如 DeleteMedia uuid=eb11b44f4b3b4e6b9a24cc69d8ebe412 uuid 资源uuid 2.1 请参见 删除 deletemode 资源#Delete Resources# Permissive Enforcing 源类型 MediaVO 资 2.1 源类型 MediaVO 查询媒体 QueryMedia 管理员可以使用QueryMedia查询媒体 例如 QueryMedia uuid=e9cfa5c0901f44808b615cc67b536f7d 原生域查询 Primitive Fields of Query 请参见 media inventory 304

319 zstack-cli命令 使用手册 / 8 平台管理 改变媒体状态 ChangeMediaState 管理员可以使用ChangeMediaState改变媒体状态 例如 ChangeMediaState uuid=e9cfa5c0901f44808b615cc67b536f7d stateevent=disable uuid 资源uuid stateevent 状态事件 2.1 enable disable 源类型 MediaVO 资 2.1 源类型 MediaVO 创建 报警动作 Create MonitorTriggerAction 管理员可以使用Create MonitorTriggerAction创建 报警动作 例如 Create MonitorTriggerAction name= =test@zstack.io \ mediauuid=e9cfa5c0901f44808b615cc67b536f7d triggeruuids= c804ea68e379 f68749a24cc 地址 mediauuid description 资源的详细 2.1 的 媒体uuid 资源名称 2.1 包含SMTP信息 name

320 zstack-cli命令 使用手册 / 8 平台管理 triggeruuids resourceuuid 资源uuid 源类型 MonitorTriggerActionVO 资 2.1 源类型 MonitorTriggerActionVO 查询 报警动作 Query TriggerAction 管理员可以使用Query TriggerAction查询 报警动作 例如 Query TriggerAction uuid=bb65d670a8464c49ace5f6c897ea0a39 Query TriggerAction trigger.uuid= c804ea68e379f68749a24cc 原生域查询 Primitive Fields of Query 请参见 media inventory 创建报警器 CreateMonitorTrigger 管理员可以使用CreateMonitorTrigger创建报警器 例如 CreateMonitorTrigger name=monitortrigger1 targetresourceuuid=d1b72d2b8a1c450ba7fb1 b07c5254c14 \ duration=60 expression=vm.cpu.util{}>= name 资源名称 2.1 expression 报警表达式 2.1

321 zstack-cli命令 使用手册 / 8 平台管理 持续时间 当报警 duration 表达式被触发超过 2.1 时间后 发生报警 recoverexpress ion 保留字段 未使用 2.1 description 资源的详细 2.1 targetresource Uuid resourceuuid 目标资源uuid 例 如对虚拟机创建报 2.1 警 资源uuid 源类型 MonitorTriggerVO 资 2.1 源类型 MonitorTriggerVO 删除报警器 DeleteMonitorTrigger 管理员可以使用DeleteMonitorTrigger删除报警器 例如 DeleteMonitorTrigger uuid=f86390ca67fd4ab9ae65a1c99ba9f7ec uuid 资源uuid 资源#Delete Resources# 2.1 请参见 删除 deletemode Permissive Enforcing

322 zstack-cli命令 使用手册 / 8 平台管理 2.1 源类型 MonitorTriggerVO 资 2.1 源类型 MonitorTriggerVO 查询报警器 QueryMonitorTrigger 管理员可以使用QueryMonitorTrigger查询报警器 例如 QueryMonitorTrigger uuid=7036c844653c4efa9bce QueryMonitorTrigger action.uuid=a23a8e f888e384ef352397e31 原生域查询 Primitive Fields of Query 请参见 monitor trigger inventory 更新报警器 UpdateMonitorTrigger 管理员可以使用UpdateMonitorTrigger更新报警器 例如 UpdateMonitorTrigger uuid=7036c844653c4efa9bce uuid 资源uuid name 资源名称 2.1 expression 报警表达式 2.1 表达式被触发超过 持续时间 当报警 duration 时间后 发生报警 308

323 zstack-cli命令 使用手册 / 8 平台管理 description 资源的详细 2.1 resourceuuid 资源uuid 源类型 MonitorTriggerVO 资 2.1 源类型 MonitorTriggerVO 修改报警器状态 ChangeMonitorTriggerState 管理员可以使用ChangeMonitorTriggerState修改报警器状态 例如 ChangeMonitorTriggerState uuid=7036c844653c4efa9bce stateevent=disable uuid 资源uuid stateevent 状态事件 2.1 enable disable 源类型 MonitorTriggerVO 资 2.1 源类型 MonitorTriggerVO 309

324 zstack-cli命令 使用手册 / 8 平台管理 删除报警器动作 DeleteMonitorTriggerAction 管理员可以使用DeleteMonitorTriggerAction删除报警器动作 例如 DeleteMonitorTriggerAction uuid=1bfcb6cbdec64ccdaa4f8221c03ebbef uuid 资源uuid 资源#Delete 2.1 请参见 删除 deletemode Resources# Permissive Enforcing 源类型 MonitorTriggerActionVO 资 2.1 源类型 MonitorTriggerActionVO 查询报警器动作 QueryMonitorTriggerAction 管理员可以使用QueryMonitorTriggerAction查询报警器动作 例如 QueryMonitorTriggerAction uuid=a23a8e f888e384ef352397e31 QueryMonitorTriggerAction trigger.uuid= c804ea68e379f68749a24cc 原生域查询 Primitive Fields of Query 请参见 monitor trigger action inventory 310

325 zstack-cli命令 使用手册 / 8 平台管理 更改报警器动作状 态 ChangeMonitorTriggerActionState 管理员可以使用ChangeMonitorTriggerActionState更改报警器动作状态 例如 ChangeMonitorTriggerActionState uuid=a23a8e f888e384ef352397e31 stateevent =disable uuid 资源uuid stateevent 状态事件 2.1 enable disable 源类型 MonitorTriggerActionVO 资 2.1 源类型 MonitorTriggerActionVO 加载报警动作到报警 器 AttachMonitorTriggerActionToTrigger 管理员可以使用AttachMonitorTriggerActionToTrigger加载报警动作到报警器 例如 AttachMonitorTriggerActionToTrigger triggeruuid=7036c844653c4efa9bce \ actionuuid=a23a8e f888e384ef352397e31 triggeruuid 报警器uuid 2.1 actionuuid 报警动作uuid

326 zstack-cli命令 使用手册 / 8 平台管理 2.1 源类型 MonitorTriggerActionVO 资 2.1 源类型 MonitorTriggerActionVO 卸载报警动 作 DetachMonitorTriggerActionFromTrigger 管理员可以使用DetachMonitorTriggerActionFromTrigger卸载报警动作 例如 DetachMonitorTriggerActionFromTrigger actionuuid=a23a8e f888e384ef352397e31 \ triggeruuid=7036c844653c4efa9bce triggeruuid 报警器uuid 2.1 actionuuid 报警动作uuid 源类型 MonitorTriggerActionVO 资 2.1 源类型 MonitorTriggerActionVO 312

327 zstack-cli命令 使用手册 / 8 平台管理 查询报警记录 QueryAlert 管理员可以使用QueryAlert查询报警记录 例如 QueryAlert targetresourceuuid=1fc14d00738e468f9aeb791516e97c6a 原生域查询 Primitive Fields of Query 请参见alert inventory 删除报警记录 DeleteAlert 管理员可以使用DeleteAlert删除报警记录 例如 DeleteAlert uuids=87d1c0a647e04c8dbdd2159ea9c72bde uuid 资源uuid 资源#Delete 2.1 请参见 删除 deletemode Resources# Permissive Enforcing 源类型 AlertVO 资 2.1 源类型 AlertVO 313

328 zstack-cli命令 使用手册 / 8 平台管理 获取报警条目 GetMonitorItem 管理员可以使用GetMonitorItem获取报警条目 例如 GetMonitorItem resourcetype=vminstancevo resourcetype 资源类型 源类型 AlertVO 资 2.1 源类型 AlertVO 查询虚拟机监控数 据 PrometheusQueryVmMonitoringData 管理员可以使用PrometheusQueryVmMonitoringData查询虚拟机监控数据 例如 PrometheusQueryVmMonitoringData vmuuids=106a535f73ea44ac902e94ba2444ba59 \ expression='collectd:collectd_virt_virt_cpu_total' vmuuids instant starttime endtime step expression relativetime 314

329 zstack-cli命令 使用手册 / 8 平台管理 签#CreateUserTag# 签#CreateSystemTag# 查询一个label有多少 个value PrometheusQueryLabelValues 管理员可以使用PrometheusQueryLabelValues查询一个label有多少个value 例如 PrometheusQueryLabelValues labels=disk,asdfas,hostuuid labels 签#CreateUserTag# 签#CreateSystemTag# 查询一个metric有多少 个label PrometheusQueryMetadata 管理员可以使用PrometheusQueryMetadata查询一个metric有多少个label 例如 PrometheusQueryMetadata \ 315

330 zstack-cli命令 使用手册 / 8 平台管理 matches='collectd:collectd_disk_disk_octets_read{hostuuid="1fc14d00738e468f9aeb791516e9 7c6a"} matches 签#CreateUserTag# 签#CreateSystemTag# 8.2 计费 概览 ZStack平台管理的计费界面 支持显示各账户指定时间内使用根云盘 数据云盘 云主机 包含 CPU与内存 的各费用信息以及总额信息 默认指定的时间段为当前时间过去的一个月 可以根据需求进行适当的调整 计费详情页可以显示某账户在指定时间内的根云盘 云主机 数据云盘具体费用信息 在计费单价变化的过程中 也会分阶段显示相关的费用信息 操作 Operations 创建资源价格 CreateResourcePrice 管理员可以使用CreateResourcePrice创建资源价格 例如 CreateResourcePrice resourcename=memory price=60 timeunit=d resourceunit=g cpu resourcename 资源名称 memory rootvolume 316

331 zstack-cli命令 使用手册 / 8 平台管理 datavolume resourceunit 资源计费单元 timeunit 计费时间单元 price 单位价格 accountuuid 账户uuid dateinlong 长整型时间 源类型 MediaVO 资源类型 MediaVO 删除资源价格 DeleteResourcePrice 管理员可以使用DeleteResourcePrice删除资源价格 例如 DeleteResourcePrice uuid=7c9a496360c040819dbaa5abd9c074b8 uuid 资源uuid 资源#Delete 请参见 删除 deletemode Resources# Permissive Enforcing 签#CreateUserTag# 317

332 zstack-cli命令 使用手册 / 8 平台管理 签#CreateSystemTag# 查询资源价格 QueryResourcePrice 管理员可以使用QueryResourcePrice查询资源价格 例如 QueryResourcePrice resourcename=datavolume 原生域查询 Primitive Fields of Query 请参见resource price inventory 计算账户花费 CalculateAccountSpending 管理员可以使用CalculateAccountSpending计算账户花费 例如 CalculateAccountSpending accountuuid=36c27e8ff05c4780bf6d2fa65700f22e accountuuid 账户uuid datestart 起始日期 dateend 结束日期 签#CreateUserTag# 签#CreateSystemTag# 318

333 zstack-cli命令 使用手册 / 8 平台管理 8.3 定时器 概览 定时器功能非常适用于长时间运行的操作 例如 为某个云主机定时创建快照 ZStack将定时器和 定时任务解耦 用户更方便的创建不同的定时任务到不同规则的定时器上 此外 定时任务可以选 择性的停用/启用定时任务 灵活处理生产环境中的特殊情况 定时任务的执行也会完整的进入审计 中 关于定时器和定时任务 1. 定时器执行策略 包括重复执行和按次数执行 选择重复执行 定时任务按周期无限重复执行 选择按次数执行 定时任务按周期有限次执行 需设置执行次数 2. 目前支持的定时任务类型包括 启动云主机 停止云主机 重启云主机 创建云主机快照 创建云盘快照 3. 定时器与定时任务松耦合 在定时器上 既支持创建并启用定时任务 也支持停用 删除定时任务 删除定时器 连级删除定时器上的定时任务 在定时器详情页或云主机详情页 均支持相关定时器上的定时任务或相关云主机的定时任务 的查看 对于周期内有限次执行的定时器 当定时任务执行完后 定时器状态将显示为已完成 操作 Operations 创建定时任务 CreateSchedulerJob 管理员可以使用CreateSchedulerJob创建定时任务 例如 CreateSchedulerJob name=schedulerjob1 targetresourceuuid=d672c98c9ea5416a83d15 696f324368c \ 319

334 zstack-cli命令 使用手册 / 8 平台管理 type=startvm name 资源名称 description 资源的详细 targetresource Uuid 定时任务类型 2.1 type 定时任务类型 parameters 2.1 resourceuuid 源类型 SchedulerJobVO 2.1 资源类型 SchedulerJobVO 删除定时任务 DeleteSchedulerJob 管理员可以使用DeleteSchedulerJob删除定时任务 例如 DeleteSchedulerJob uuid=94b1126b2cc44b5ea0e1d31026e24c9f uuid 资源uuid 资源#Delete Resources# 请参见 删除 deletemode Permissive Enforcing 2.1

335 zstack-cli命令 使用手册 / 8 平台管理 2.1 源类型 SchedulerJobVO 签#CreateSystemTag# 2.1 资源类型 SchedulerJobVO 查询定时任务 QuerySchedulerJob 管理员可以使用QuerySchedulerJob查询定时任务 例如 QuerySchedulerJob uuid=04f512aa6cc3495bab23e677da4c9510 QuerySchedulerJob trigger.uuid=d82d4ca2d4da407ebc5410e85d5dd256 原生域查询 Primitive Fields of Query 请参见scheduler job inventory 嵌套和扩展域查询 Nested And Expanded Fields of Query 域 Field 清单 Inventory trigger 更新定时任务 UpdateSchedulerJob 管理员可以使用UpdateSchedulerJob更新定时任务 例如 UpdateSchedulerJob uuid=4ad3c a3db06917ed0d902 uuid 资源uuid name 资源名称

336 zstack-cli命令 使用手册 / 8 平台管理 description 资源的详细 源类型 SchedulerJobVO 2.1 资源类型 SchedulerJobVO 创建定时器 CreateSchedulerTrigger 管理员可以使用CreateSchedulerTrigger创建定时器 例如 CreateSchedulerTrigger name=trigger schedulertype=simple starttime= \ schedulerinterval=3600 name 资源名称 description 资源的详细 schedulerinterval 2.1 repeatcount starttime 应为Unix Time simple schedulertype cron 2.1 cron 2.1 resourceuuid

337 zstack-cli命令 使用手册 / 8 平台管理 源类型 SchedulerTriggerVO 2.1 资源类型 SchedulerTriggerVO 删除定时器 DeleleSchedulerTrigger 管理员可以使用DeleleSchedulerTrigger删除定时器 例如 DeleteSchedulerTrigger uuid=36cb56cbc7b946dbb4294dcf726db975 uuid 资源uuid 资源#Delete 2.1 请参见 删除 deletemode Resources# Permissive Enforcing 源类型 SchedulerTriggerVO 签#CreateSystemTag# 2.1 资源类型 SchedulerTriggerVO 323

338 zstack-cli命令 使用手册 / 8 平台管理 查询定时器 QuerySchedulerTrigger 管理员可以使用QuerySchedulerTrigger查询定时器 例如 QuerySchedulerTrigger uuid=8a87a66ea1344ba2b918f dbb QuerySchedulerTrigger job.uuid=fd347b4c3f144380bca9c0c5cdf7697d 原生域查询 Primitive Fields of Query 请参见scheduler trigger inventory 嵌套和扩展域查询 Nested And Expanded Fields of Query 域 Field 清单 Inventory job 更新定时器 UpdateSchedulerTrigger 管理员可以使用UpdateSchedulerTrigger更新定时器 例如 UpdateSchedulerTrigger uuid=26a b446ab97bd1559c27a630 uuid 资源uuid name 资源名称 2.1 description 资源的详细 源类型 SchedulerTriggerVO 2.1 资源类型 SchedulerTriggerVO 324

339 zstack-cli命令 使用手册 / 8 平台管理 添加定时任务到定时 器 AddSchedulerJobToSchedulerTrigger 管理员可以使用AddSchedulerJobToSchedulerTrigger添加定时任务到定时器 例如 AddSchedulerJobToSchedulerTrigger schedulerjobuuid=de40b48a63c04ec283f75dfed817 b628 \ schedulertriggeruuid=3a5de588a82f4f7d96658e87baa3ef6f schedulerjobuuid 2.1 schedulertrigg eruuid 签#CreateUserTag# 2.1 签#CreateSystemTag# 移除定时任 务 RemoveSchedulerJobFromSchedulerTrigger 管理员可以使用RemoveSchedulerJobFromSchedulerTrigger从定时器移除定时任务 例如 RemoveSchedulerJobFromSchedulerTrigger schedulerjobuuid=de40b48a63c04ec283f75 dfed817b628 \ schedulertriggeruuid=3a5de588a82f4f7d96658e87baa3ef6f schedulerjobuuid 2.1 schedulertrigg eruuid 签#CreateUserTag# 325

340 zstack-cli命令 使用手册 / 8 平台管理 2.1 签#CreateSystemTag# 8.4 控制台服务 概览 ZStack平台管理支持显示当前控制台代理的信息 即打开云主机的控制台时使用的代理信息 默认代理显示的IP为管理节点的IP地址 显示类型为ManagementServerConsoleProxy 仅有状态为启用和已连接时 打开云主机的控制台才可正常访问到云主机 支持重连操作 一般发生在云主机控制台打开失败时 进行重连操作 重连后状态显示为启 用和已连接时 代表控制台可以正常打开 操作 Operations 请求控制台访问地址 RequestConsoleAccess 管理员可以使用RequestConsoleAccess请求控制台访问地址 例如 RequestConsoleAccess vminstanceuuid=43ff23ed457544e285597ad8d8edad68 vminstanceuuid 云主机uuid 签#CreateUserTag# 签#CreateSystemTag# 326

341 zstack-cli命令 使用手册 / 8 平台管理 查询控制台代理 QueryConsoleProxyAgent 管理员可以使用QueryConsoleProxyAgent查询控制台代理 例如 QueryConsoleProxyAgent consoleproxyoverriddenip= 原生域查询 Primitive Fields of Query 请参见console proxy agent inventory 重连控制台代理 ReconnectConsoleProxyAgent 管理员可以使用ReconnectConsoleProxyAgent重连控制台代理 例如 ReconnectConsoleProxyAgent agentuuids=f3537a0d957e49fc971acd4198ca1729 agentuuids 控制台代理Agent 的uuid 签#CreateUserTag# 签#CreateSystemTag# 8.5 用户管理 概览 用户管理主要提供了用户对系统资源的访问控制 可实现以细粒度对资源归属及权限控制的划分 用户管理提供账户 用户组 用户的管理 同时涉及策略 配额等概念 用户管理系统的整体结构如图 36: 用户管理系统所示 图 36: 用户管理系统 327

342 zstack-cli命令 使用手册 / 8 平台管理 相关定义 账户 作为资源拥有的基本单位 对作用域的资源可以进行创建 删除 分享 召回等操作 账户分 为admin管理员账户和普通账户 用户 用户账户创建 用于实现更细粒度的权限控制 admin创建的用户 也称之为admin用户 拥有 和admin账户相同的全部权限 用户组 账户可以通过创建用户组对一组用户进行批量的权限控制 资源配额 简称配额 admin账户对普通账户的资源总量进行控制的衡量标准 主要包括云主机数量 CPU数量 内存容量 最大数据云盘数目和所有云盘最大容量等 admin账户可修改以上各参数对各个普通账户进行资源总额的控制 当资源删除后 但还未彻 底删除时 会占用主存储资源和云盘数量 328

343 zstack-cli命令 使用手册 / 8 平台管理 相关约束 1. admin管理员账户 也称之为admin账户 不受权限控制 拥有超级权限 通常由IT系统管理员 拥有 admin账户可以共享计算规格 云盘规格 网络 镜像等其他资源给普通账户 而普通账户只 能操作属于自己的资源 admin账户同时也可以对相关资源进行召回 不再共享 admin账户可以通过修改配额对普通账户进行资源总量控制 admin账户创建的admin用户 和admin账户一样 拥有全局的控制权限 admin账户不能够修改别的账户的普通用户的权限 普通用户的权限应该由该用户所属的账户 管理 admin账户不支持创建用户组 也不支持对其他账户的用户和用户组进行跨越管理 但可以修 改普通账户 普通用户的用户名 密码和简介 admin账户创建vxlannetworkpool后 普通账户可以基于VxlanNetworkPool创建VxlanNe twork 只支持删除admin用户 不支持删除admin账户 更改云主机所有者会更改云主机的EIP所有者属性 2. 普通账户 由admin管理员账户创建 普通账户拥有对自己创建的云主机 镜像 云盘 安全组 用户组和用户的管理权限 普通 账户可以对admin账户共享的资源进行读操作 但不可以进行删除操作 普通账户可以通过权限控制来操控属于自己的用户或用户组 普通账户可以使用用户组对批量用户进行权限控制 删除普通账户会导致此账户下的所有资源被删除 例如 云主机 云盘 镜像 名下用户和 用户组等信息 普通用户默认只拥有对普通账户资源的只读权限 普通用户不占有资源 经授权后 可共享并使用自己所属账户下的资源 删除普通用户只会删除普通用户的自身信息 其所创建的云主机 镜像 云盘均会保留在自 己所属的账户名下 普通账户名称不可重复 同一账户下的用户和用户组名称不可重复 普通用户的 简介和密码可以通过admin账户修改 也可通过所属账户进行修改 同一用户可加入多个不同用户组 账户登录只需输入账户名和密码 用户登录需要输入账户名 用户名和密码 329

344 zstack-cli命令 使用手册 / 8 平台管理 普通账户首页看到的资源admin账户分配的资源配额的上限 普通账户创建云主机前 需要admin账户提前共享计算规格 网络和云盘规格等资源 否则不 可创建云主机 普通账户可以添加自有的镜像文件 也可由admin账户提前共享 用户权限受到用户权限设置页以及该用户所属用户组权限设置页共同控制 只要用户权限设 置页 或者该用户所属任意用户组权限设置页授予了某资源的权限 即代表该用户拥有该权 限对应的操作 如果需要禁止该用户对某资源的操作权限 需要禁止该用户权限页 以及该 用户所属所有用户组权限页相关资源的操作权限 操作 Operations 创建账户 CreateAccount 管理员可以使用CreateAccount创建账户 例如 CreateAccount name=normal password=password name 资源名称 password 密码 System type 账户类型 Admin Normal description 资源的详细 resourceuuid 资源uuid 源类型 AccountVO 资源类型 AccountVO 330

345 zstack-cli命令 使用手册 / 8 平台管理 删除账户 DeleteAccount 管理员可以使用DeleteAccount删除账户 例如 DeleteAccount uuid=fb955f a7b93e238a8c8bd272 uuid 资源uuid 资源#Delete 请参见 删除 deletemode Resources# Permissive Enforcing 源类型 AccountVO 签#CreateSystemTag# 资源类型 AccountVO 查询账户 QueryAccount 管理员可以使用QueryAccount查询账户 例如 QueryAccount uuid=c1a0038cfc004f59bf7a56c6da8d856b QueryAccount user.uuid=523024a60fb4437ab141ce965eb50f05 原生域查询 Primitive Fields of Query 请参见account inventory 331

346 zstack-cli命令 使用手册 / 8 平台管理 嵌套和扩展域查询 Nested And Expanded Fields of Query 域 Field 清单 Inventory group policy quota user 更新账户 UpdateAccount 管理员可以使用UpdateAccount更新账户 例如 UpdateAccount uuid=f536739a077040afa74af59ac085252b uuid 账户uuid name 账户名称 password 密码 description 资源的详细 resourceuuid 资源uuid 源类型 AccountVO 资源类型 AccountVO 332

347 zstack-cli命令 使用手册 / 8 平台管理 使用账户身份登录 LogInByAccount 管理员可以使用LogInByAccount使用账户身份登录 例如 LogInByAccount accountname=12 password=password accountname 账户名称 password 密码 源类型 AccountVO 资源类型 AccountVO 获取账户配额使用情况 GetAccountQuotaUsage 管理员可以使用GetAccountQuotaUsage获取账户配额使用情况 例如 GetAccountQuotaUsage uuid=c1a0038cfc004f59bf7a56c6da8d856b uuid 资源uuid 源类型 AccountVO 333

348 zstack-cli命令 使用手册 / 8 平台管理 资源类型 AccountVO 查询账户资源引用 QueryAccountResourceRef 管理员可以使用QueryAccountResourceRef查询账户资源引用 例如 QueryAccountResourceRef accountuuid=36c27e8ff05c4780bf6d2fa65700f22e resourcetype =VolumeVO 原生域查询 Primitive Fields of Query 请参见account resource ref inventory 共享资源给账户 ShareResource 管理员可以使用ShareResource共享资源给账户 例如 ShareResource resourceuuids=e29e00c1d18a486b8802a8f53c6a6e4f / accountuuids=f536739a077040afa74af59ac085252b resourceuuids 资源uuid列表 accountuuids 账户uuid列表 全局共享 topublic topublic参数被 设为false时 账 户uuid不能为空 签#CreateUserTag# 签#CreateSystemTag# 334

349 zstack-cli命令 使用手册 / 8 平台管理 创建用户组 CreateUserGroup 管理员可以使用CreateUserGroup创建用户组 例如 CreateUserGroup name=usergroup1 name 资源名称 description 资源的详细 resourceuuid 资源uuid 源类型 UserGroupVO 资源类型 UserGroupVO 删除用户组 DeleteUserGroup 管理员可以使用DeleteUserGroup删除用户组 例如 DeleteUserGroup uuid=f0f6fc4d36a341e3a61b560bd176b351 uuid 资源uuid 资源#Delete 请参见 删除 deletemode Resources# Permissive Enforcing 335

350 zstack-cli命令 使用手册 / 8 平台管理 源类型 UserGroupVO 签#CreateSystemTag# 资源类型 UserGroupVO 查询用户组 QueryUserGroup 管理员可以使用QueryUserGroup查询用户组 例如 QueryUserGroup accountuuid=f536739a077040afa74af59ac085252b QueryUserGroup accountuuid=f536739a077040afa74af59ac085252b 原生域查询 Primitive Fields of Query 请参见user group inventory 嵌套和扩展域查询 Nested And Expanded Fields of Query 域 Field 清单 Inventory account policy user 更新用户组 UpdateUserGroup 管理员可以使用UpdateUserGroup更新用户组 例如 UpdateUserGroup uuid=101a72b491024d8fba5a946a9fb5ddb0 336 uuid 资源uuid name 资源名称 description 资源的详细

351 zstack-cli命令 使用手册 / 8 平台管理 源类型 UserGroupVO 资源类型 UserGroupVO 添加到用户组 AddUserToGroup 管理员可以使用AddUserToGroup添加到用户组 例如 AddUserToGroup groupuuid=42a53ca7dec74b538bdbee48caa6e27a \ useruuid=ec6f8785d a0e9adf94790aebe useruuid 用户uuid groupuuid 用户组uuid 源类型 UserGroupVO 资源类型 UserGroupVO 337

352 zstack-cli命令 使用手册 / 8 平台管理 绑定策略到用户组 AttachPolicyToUserGroup 管理员可以使用AttachPolicyToUserGroup绑定策略到用户组 例如 AttachPolicyToUserGroup groupuuid=101a72b491024d8fba5a946a9fb5ddb0 \ policyuuid=ffb698fe5c7d41b1a913fc3cb83e234c policyuuid 权限策略uuid groupuuid 用户组uuid 源类型 UserGroupVO 资源类型 UserGroupVO 将策略从用户组解绑 DetachPolicyFromUserGroup 管理员可以使用DetachPolicyFromUserGroup将策略从用户组解绑 例如 DetachPolicyFromUserGroup groupuuid=101a72b491024d8fba5a946a9fb5ddb0 \ policyuuid=ffb698fe5c7d41b1a913fc3cb83e234c policyuuid 权限策略uuid groupuuid 用户组uuid 源类型 UserGroupVO 338

353 zstack-cli命令 使用手册 / 8 平台管理 资源类型 UserGroupVO 从用户组中移除用户 RemoveUserFromGroup 管理员可以使用RemoveUserFromGroup从用户组中移除用户 例如 RemoveUserFromGroup groupuuid=101a72b491024d8fba5a946a9fb5ddb0 \ useruuid=523024a60fb4437ab141ce965eb50f05 useruuid 用户uuid groupuuid 用户组uuid 源类型 UserGroupVO 资源类型 UserGroupVO 339

354 zstack-cli命令 使用手册 / 8 平台管理 创建用户 CreateUser 管理员可以使用CreateUser创建用户 例如 CreateUser name=user password=password name 用户名称 password 密码 description 资源的详细 resourceuuid 资源uuid 源类型 UserVO 资源类型 UserVO 删除用户 DeleteUser 管理员可以使用DeleteUser删除用户 例如 DeleteUser uuid=c9b34d c45b6a70529f0aeb39b uuid 资源uuid 资源#Delete Resources# 340 请参见 删除 deletemode Permissive Enforcing

355 zstack-cli命令 使用手册 / 8 平台管理 源类型 UserVO 签#CreateSystemTag# 资源类型 UserVO 查询用户 QueryUser 管理员可以使用QueryUser查询用户 例如 QueryUser accountuuid=36c27e8ff05c4780bf6d2fa65700f22e QueryUser account.uuid=36c27e8ff05c4780bf6d2fa65700f22e 原生域查询 Primitive Fields of Query 请参见user inventory 嵌套和扩展域查询 Nested And Expanded Fields of Query 域 Field 清单 Inventory account policy user 更新用户 UpdateUser 管理员可以使用UpdateUser更新用户 例如 UpdateUser uuid=523024a60fb4437ab141ce965eb50f05 uuid 资源uuid name 用户名称 341

356 zstack-cli命令 使用手册 / 8 平台管理 password 密码 description 资源的详细 源类型 UserVO 资源类型 UserVO 使用用户身份登录 LogInByUser 管理员可以使用LogInByUser使用用户身份登录 例如 LogInByUser username=12user password=password accountname=12 accountuuid 账户uuid accountname 账户名称 username 用户名称 password 密码 源类型 UserVO 资源类型 UserVO 342

357 zstack-cli命令 使用手册 / 8 平台管理 绑定一条策略到用户 AttachPolicyToUser 管理员可以使用AttachPolicyToUser绑定一条策略到用户 例如 AttachPolicyToUser useruuid=5fb5b7ba87fb4c07ad3ec89ed0b41379 \ policyuuid=8dadd2b163c14d639e03ea9c8bc17b9f useruuid 用户uuid policyuuid 权限策略uuid 源类型 UserVO 资源类型 UserVO 将一条策略从用户解绑 DetachPolicyFromUser 管理员可以使用DetachPolicyFromUser将一条策略从用户解绑 例如 DetachPolicyFromUser policyuuid=8dadd2b163c14d639e03ea9c8bc17b9f \ useruuid=5fb5b7ba87fb4c07ad3ec89ed0b41379 useruuid 用户uuid policyuuid 权限策略uuid 源类型 UserVO 343

358 zstack-cli命令 使用手册 / 8 平台管理 资源类型 UserVO 绑定多条策略到用户 AttachPoliciesToUser 管理员可以使用AttachPoliciesToUser绑定多条策略到用户 例如 AttachPoliciesToUser useruuid=5fb5b7ba87fb4c07ad3ec89ed0b41379 \ policyuuids=9e092aafa9a14af187d67b4072dd8eda,5cde60162d6e4f9a8e1984bd0fda542b useruuid 用户组uuid policyuuids 权限策略uuid列表 源类型 UserVO 资源类型 UserVO 将多条策略从用户解绑 DetachPoliciesFromUser 管理员可以使用DetachPoliciesFromUser将多条策略从用户解绑 例如 DetachPoliciesFromUser useruuid=5fb5b7ba87fb4c07ad3ec89ed0b41379 \ 344

359 zstack-cli命令 使用手册 / 8 平台管理 policyuuids=9e092aafa9a14af187d67b4072dd8eda,5cde60162d6e4f9a8e1984bd0fda542b useruuid 用户组uuid policyuuids 权限策略uuid列表 源类型 UserVO 资源类型 UserVO 创建策略 CreatePolicy 管理员可以使用CreatePolicy创建策略 例如 CreatePolicy name=all statements='[{"actions":[".*"], "effect":"allow"}]' name 资源名称 description 资源的详细 statements 策略声明 resourceuuid 资源uuid 源类型 PolicyVO 345

360 zstack-cli命令 使用手册 / 8 平台管理 资源类型 PolicyVO 删除策略 DeletePolicy 管理员可以使用DeletePolicy删除策略 例如 DeletePolicy uuid=9e092aafa9a14af187d67b4072dd8eda uuid 资源uuid 请参见 删除 deletemode 资源#Delete Resources# Permissive Enforcing 源类型 PolicyVO 签#CreateSystemTag# 资源类型 PolicyVO 346

361 zstack-cli命令 使用手册 / 8 平台管理 查询策略 QueryPolicy 管理员可以使用QueryPolicy查询策略 例如 QueryPolicy uuid=5cde60162d6e4f9a8e1984bd0fda542b QueryPolicy account.uuid=2cfc aa9ae544c014bfbd36e 原生域查询 Primitive Fields of Query 请参见policy inventory 嵌套和扩展域查询 Nested And Expanded Fields of Query 域 Field 清单 Inventory account group user 查询配额 QueryQuota 管理员可以使用QueryQuota查询配额 例如 QueryQuota name=vm.num QueryQuota account.uuid=f536739a077040afa74af59ac085252b 原生域查询 Primitive Fields of Query 请参见quota inventory 嵌套和扩展域查询 Nested And Expanded Fields of Query 域 Field 清单 Inventory account 347

362 zstack-cli命令 使用手册 / 8 平台管理 更新配额 UpdateQuota 管理员可以使用UpdateQuota更新配额 例如 UpdateQuota identityuuid=f536739a077040afa74af59ac085252b name=vm.num value=25 identityuuid 身份实体的uuid 账户的 name 资源名称 value 配额值 源类型 QuotaVO 资源类型 QuotaVO 获取资源名称 GetResourceNames 管理员可以使用GetResourceNames获取资源名称 例如 GetResourceNames uuids=bd73a3d1e6784d49897be5ae785305d8 uuids 资源uuid列表 源类型 ResourceVO 348

363 zstack-cli命令 使用手册 / 8 平台管理 资源类型 ResourceVO 查询共享资源 QuerySharedResource 管理员可以使用QuerySharedResource查询共享资源 例如 QuerySharedResource resourceuuid=6ec89e13f4a05ed4be42dabfcdad6dd7 原生域查询 Primitive Fields of Query 请参见shared resource inventory 解除资源共享 RevokeResourceSharing 管理员可以使用RevokeResourceSharing解除资源共享 例如 RevokeResourceSharing resourceuuids=6ec89e13f4a05ed4be42dabfcdad6dd7 all=true resourceuuids 资源uuid列表 topublic 全局共享 accountuuids 账户uuid列表 all参数被设 all 为false时 账 户uuid不能为空 签#CreateUserTag# 签#CreateSystemTag# 349

364 zstack-cli命令 使用手册 / 8 平台管理 变更资源所有者 ChangeResourceOwner 管理员可以使用ChangeResourceOwner变更资源所有者 例如 ChangeResourceOwner accountuuid=2cfc aa9ae544c014bfbd36e \ resourceuuid=1ad7f7f385d64e2fb7531ee3a06bcf8d accountuuid 账户uuid resourceuuid 资源uuid 签#CreateUserTag# 签#CreateSystemTag# 检查API权限 CheckApiPermission 管理员可以使用CheckApiPermission检查API权限 例如 CheckApiPermission apinames=org.zstack.storage.primary.local.apiquerylocalstorager esourcerefms useruuid 用户uuid apinames API名称列表 签#CreateUserTag# 350

365 zstack-cli命令 使用手册 / 8 平台管理 签#CreateSystemTag# 验证会话的有效性 ValidateSession 管理员可以使用ValidateSession验证会话的有效性 例如 ValidateSession sessionuuid=7f69ae7ed38941adb54ba8777ae68cb5 sessionuuid 会话uuid 签#CreateUserTag# 签#CreateSystemTag# 退出当前登录状态 LogOut 管理员可以使用LogOut退出当前登录状态 例如 LogOut sessionuuid=d22049be779b455f86bc3484becad10f sessionuuid 会话uuid 签#CreateUserTag# 351

366 zstack-cli命令 使用手册 / 8 平台管理 签#CreateSystemTag# 8.6 设置 概览 在ZStack的设置中 主要涉及到以下内容 全局设置 管理员可以使用全局配置对很多特性进行配置 所有的全局配置都有一个默认值 更 新全局配置并不需要重启管理节点 计费设置 目前涉及到的基本计费资源包括处理器 内存 根云盘和数据云盘 以各资源的规格 大小和时间作为基本计费单位 并以时长作为服务使用记录 可以对不同账户使用的业务量进行 统计计费 计费设置提供了计费的单价设置 LDAP设置 LDAP组件为ZStack账户提供了一种额外的登录方式 使得企业用户可以使用现有 的LDAP统一认证方式无缝接入ZStack 提供便捷的体验 操作 Operations 全局设置 查询全局设置 QueryGlobalConfig 管理员可以使用QueryGlobalConfig查询全局设置 例如 QueryGlobalConfig category=vm 原生域查询 Primitive Fields of Query 请参见global config inventory 352

367 zstack-cli命令 使用手册 / 8 平台管理 更新全局设置 UpdateGlobalConfig 管理员可以使用UpdateGlobalConfig更新全局设置 例如 UpdateGlobalConfig category=quota name=vm.num category 类型 name 资源名称 value 值 签#CreateUserTag# 签#CreateSystemTag# LDAP设置 创建LDAP绑定 CreateLdapBinding 管理员可以使用CreateLdapBinding创建LDAP绑定 例如 CreateLdapBinding ldapuid=mevoco accountuuid=2cfc aa9ae544c014bfbd36e ldapuid LDAP的uid accountuuid 账户uuid 签#CreateUserTag# 签#CreateSystemTag# 353

368 zstack-cli命令 使用手册 / 8 平台管理 删除LDAP绑定 DeleteLdapBinding 管理员可以使用DeleteLdapBinding删除LDAP绑定 例如 DeleteLdapBinding uuid=d70c0ef1b57043beaffcfcf9b0216ac1 uuid 资源uuid 签#CreateUserTag# 签#CreateSystemTag# 查询LDAP绑定 QueryLdapBinding 管理员可以使用QueryLdapBinding查询LDAP绑定 例如 QueryLdapBinding ldapuid=mevoco 原生域查询 Primitive Fields of Query 请参见ldap binding inventory 清理无效的LDAP绑定 CleanInvalidLdapBinding 管理员可以使用CleanInvalidLdapBinding清理无效的LDAP绑定 返回示例 { 354 "success": true

369 zstack-cli命令 使用手册 / 8 平台管理 } 签#CreateUserTag# 签#CreateSystemTag# 添加LDAP服务器 AddLdapServer 管理员可以使用AddLdapServer添加LDAP服务器 例如 AddLdapServer name=ldap-server url=ldap:// :389 base="dc=mevoco,dc=com" \ encryption=tls username="cn=manager,dc=mevoco,dc=com" password=password descrip tion="ldapserver" name 资源名称 description 资源的详细 url base username LDAP服务器访问 地址 LDAP服务查 询BaseDN 访问LDAP服务器 使用的用户名 password 密码 encryption 加密方式 None TLS 签#CreateUserTag# 355

370 zstack-cli命令 使用手册 / 8 平台管理 签#CreateSystemTag# 删除LDAP服务器 DeleteLdapServer 管理员可以使用DeleteLdapServer删除LDAP服务器 例如 DeleteLdapServer uuid=b c1e34b9c868c84e645eed79a uuid 资源uuid 资源#Delete 请参见 删除 deletemode Resources# Permissive Enforcing 签#CreateUserTag# 签#CreateSystemTag# 查询LDAP服务器 QueryLdapServer 管理员可以使用QueryLdapServer查询LDAP服务器 例如 QueryLdapServer uuid=b c1e34b9c868c84e645eed79a 原生域查询 Primitive Fields of Query 请参见ldap server inventory 356

371 zstack-cli命令 使用手册 / 8 平台管理 更新LDAP服务器 UpdateLdapServer 管理员可以使用UpdateLdapServer更新LDAP服务器 例如 UpdateLdapServer ldapserveruuid=ba240fbba3e541b4ab9db4b221cc6e7a ldapserveruuid LDAP服务器 的uuid name 资源名称 description 资源的详细 url base username LDAP服务器的访 问地址 LDAP服务器的查 询BaseDN 访问LDAP服务器 的用户名 password 密码 encryption 加密方式 None TLS 签#CreateUserTag# 签#CreateSystemTag# 357

372 zstack-cli命令 使用手册 / 8 平台管理 使用LDAP身份登录 LogInByLdap 管理员可以使用LogInByLdap使用LDAP身份登录 例如 LogInByLdap uid=mevoco password=password uid LDAP的uid password 密码 签#CreateUserTag# 签#CreateSystemTag# 358

373 zstack-cli命令 使用手册 / 9 系统全局相关 9 系统全局相关 9.1 管理节点 概览 操作 Operations 查询管理节点 QueryManagementNode 管理员可以使用QueryManagementNode查询管理节点 例如 QueryManagementNode hostname= 原生域查询 Primitive Fields of Query 请参见management node inventory 获取当前版本 GetVersion 管理员可以使用GetVersion获取当前版本 返回示例 { } "success": true, "version": "2.2.2" 签#CreateUserTag# 签#CreateSystemTag# 获取当前时间 GetCurrentTime 管理员可以使用GetCurrentTime获取当前时间 返回示例 { 359

374 zstack-cli命令 使用手册 / 9 系统全局相关 } "currenttime": { "MillionSeconds": , "Seconds": }, "success": true 签#CreateUserTag# 签#CreateSystemTag# 检查管理节点否能正常开始工作 IsReadyToGo 管理员可以使用IsReadyToGo检查管理节点否能正常开始工作 例如 IsReadyToGo managementnodeid=a1b641b3cd084166a5cc79c8c5e0174c managem entnodeid 签#CreateUserTag# 签#CreateSystemTag# 360

375 zstack-cli命令 使用手册 / 9 系统全局相关 9.2 标签 概览 ZStack提供两类标签帮助用户和插件管理资源 引入额外的资源属性 以及指挥ZStack执行特殊的 业务逻辑 用户标签 User Tags 1. 用户可以在所拥有的资源上创建用户标签 这对于管理相似资源的聚集特别有用 例如 用户可以为作为网页服务器的云主机设置一个标签web 1. CreateUserTag resourcetype=vminstancevo \ resourceuuid=613af3fe005914c1643a15c36fd578c6 tag=web CreateUserTag resourcetype=vminstancevo \ resourceuuid=5eb55c39db015c1782c7d814900a9609 tag=web CreateUserTag resourcetype=vminstancevo \ resourceuuid=0cd1ef8c9b9e0ba82e0cc9cc17226a26 tag=web 2. 之后 可以通过Query API with tags <query with tags>来获取这些云主机 QueryVmInstance usertag =web 2. 用户也可以通过用户标签和系统标签 system tags 合作来改变业务逻辑 例如 用户想在所有作为网页服务器的云主机上 在一个特定的通过SSD提高IO性能的主存储 上 创建他们的根云盘 要达到这一目的 用户可以这样做 1. 在主存储上创建一个用户标签forWebTierVM CreateUserTag tag=forwebtiervm resourcetype=primarystoragevo \ resourceuuid=6572ce44c3f6422d8063b0fb262cbc62 2. 然后 在计算规格上创建一个系统标签 CreateSystemTag tag=primarystorage::allocator::usertag::forwebtiervm \ resourcetype=instanceofferingvo resourceuuid=8f69ef6c2c444cdf8c019fa0969d56a5 3. 这样 当用户通过计算规格 UUID 8f69ef6c2c444cdf8c019fa0969d56a5 创建云主 机时 ZStack会保证云主机的根云盘都会被创建在拥有用户标签forWebTierVM的主存 储 UUID 6572ce44c3f6422d8063b0fb262cbc62 上 361

376 zstack-cli命令 使用手册 / 9 系统全局相关 系统标签 System Tags 系统标签相比用户标签有更广泛的用途 就像上节中的例子一样 用户可以灵活使用它们来指 挥ZStack执行特殊的业务逻辑 1. 内部系统标签 扩展ZStack功能的插件 可以通过使用系统标签来引入额外的资源属性 或记录和资源紧密相关 的元数据 例如 用户想在KVM云主机上实施在线迁移或者在线快照 ZStack需要知道KVM云主机的libvirt版本和QEMU版本 这些信息都元数据 ZStack将它们作 为云主机的系统标签存储起来 a. 管理员可以通过以下命令查看一个KVM云主机的系统标签 QuerySystemTag fields=tag resourceuuid=d07066c4de02404a948772e131139eb4 b. d07066c4de02404a948772e131139eb4该kvm云主机的uuid 查询结果为 { } "inventories": [ { "tag": "capability:livesnapshot" }, { "tag": "qemu-img::version::2.0.0" }, { "tag": "os::version::14.04" }, { "tag": "libvirt::version::1.2.2" }, { "tag": "os::release::trusty" }, { "tag": "os::distribution::ubuntu" } ], "success": true 这类系统标签 被称为内部系统标签 内部系统标签只能被ZStack的服务或插件创建 并且不能 被DeleteTag API删除 2. 非内部系统标签 为了增加新的功能 插件通常需要为一个资源添加新的属性 虽然插件不能通过改变一个资源的 数据库模式来增加一个新的列 但它可以为一个资源创建作为系统标签的新属性 362

377 zstack-cli命令 使用手册 / 9 系统全局相关 例如 当创建一个云主机时 用户可以为云主机某L3网络上的网卡绑定一个可以通过网络访问的 主机名 1. CreateVmInstance name=testtag =hostname::web-server-1 \ l3networkuuids=6572ce44c3f6422d8063b0fb262cbc62 \ instanceofferinguuid=04b5419ca be90a48e372d3895 \ imageuuid=f ec405cd3f2d259730d47d1d8 2. 这个主机名被实现为一个系统标签 3. 如果查看VM inventory in chapter Virtual Machine, 那里没有叫做hostname的属性 4. 然而 可以在云主机的系统标签中发现它 QuerySystemTag fields=tag uuid resourceuuid=76e119bf9e16461aaf3d1b47c645c7b7 { } "inventories": [ { "tag": "hostname::web-server-1", "uuid": "596070a edbf0f54ef721f654e" } ], "success": true 这类系统标签就非内部的 用户可以通过DeleteTag API删除它 例如 用户想把一个之前的云主机的主机名更改为web-server-nginx 可以这样做 1. DeleteTag uuid=596070a edbf0f54ef721f654e 2. CreateSystemTag resourcetype=vminstancevo tag=hostname::web-server-nginx \ resourceuuid=76e119bf9e16461aaf3d1b47c645c7b7 3. 停止和启动云主机之后 云主机中的系统会接受到web-server-nginx作为新的主机名 命名约定 Name Convention 用户标签和系统标签最多都只能有2048个字符 对于用户标签 没有强制的命名约定 但推荐使用可读的有意义的字符串 对于系统标签 和ZStack中服务和插件定义的一样, 他们使用::作为分隔符 资源类型 Resource Type 创建一个标签时, 用户必须制定标签所关联的资源类型 在当前版本中, 资源类型被列在下表中 ZoneVO 363

378 zstack-cli命令 使用手册 / 9 系统全局相关 ClusterVO HostVO HostCapacityVO PrimaryStorageVO PrimaryStorageClusterRefVO PrimaryStorageCapacityVO PrimaryStorageHostRefVO BackupStorageVO BackupStorageZoneRefVO ImageVO ImageBackupStorageRefVO InstanceOfferingVO DiskOfferingVO VolumeVO L2NetworkVO L2VlanNetworkVO L2NetworkClusterRefVO VxlanNetworkPoolVO VxlanNetworkVO VtepVO VniRangeVO L3NetworkVO L3NetworkDnsVO IpRangeVO UsedIpVO VipVO VipPeerL3NetworkRefVO EipVO VirtualRouterVipVO VirtualRouterEipRefVO 364

379 zstack-cli命令 使用手册 / 9 系统全局相关 NetworkServiceProviderVO NetworkServiceL3NetworkRefVO NetworkServiceProviderL2NetworkRefVO NetworkServiceTypeVO VmInstanceVO VmInstanceSequenceNumberVO ApplianceVmVO ApplianceVmFirewallRuleVO VmNicVO SessionVO AccountVO AccountResourceRefVO UserVO PolicyVO UserPolicyRefVO UserGroupVO UserGroupPolicyRefVO UserGroupUserRefVO SharedResourceVO QuotaVO DeleteVO InsertVO UpdateVO KVMHostVO SftpBackupStorageVO ImageStoreBackupStorageVO VCenterVO VCenterClusterVO VCenterBackupStorageVO VCenterDatacenterVO 365

380 zstack-cli命令 使用手册 / 9 系统全局相关 VCenterPrimaryStorageVO ESXHostVO SimulatorHostVO magecachevo VirtualRouterOfferingVO VirtualRouterBootstrapIsoVO SecurityGroupRuleVO SecurityGroupL3NetworkRefVO SecurityGroupVO SecurityGroupFailureHostVO VmNicSecurityGroupRefVO SecurityGroupSequenceNumberVO PortForwardingRuleVO VirtualRouterPortForwardingRuleRefVO ConsoleProxyVO VolumeSnapshotTreeVO VolumeSnapshotVO VolumeSnapshotBackupStorageRefVO UserTagVO SystemTagVO VirtualRouterVmVO LocalStorageResourceRefVO LocalStorageHostRefVO CephBackupStorageVO CephBackupStorageMonVO CephPrimaryStorageMonVO CephPrimaryStorageVO CephCapacityVO FusionstorBackupStorageVO FusionstorBackupStorageMonVO 366

381 zstack-cli命令 使用手册 / 9 系统全局相关 FusionstorPrimaryStorageMonVO FusionstorPrimaryStorageVO FusionstorCapacityVO GarbageCollectorVO ImageCacheVolumeRefVO VirtualRouterLoadBalancerRefVO LoadBalancerVO LoadBalancerListenerVmNicRefVO LoadBalancerListenerVO ConsoleProxyAgentVO ImageCacheShadowVO LdapServerVO LdapAccountRefVO JsonLabelVO PriceVO DataVolumeUsageVO RootVolumeUsageVO VmUsageVO SnapShotUsageVO IPsecConnectionVO IPsecPeerCidrVO ShareableVolumeVmInstanceRefVO AsyncRestVO CephPrimaryStoragePoolVO TaskProgressVO NotificationVO NotificationSubscriptionVO ResourceVO WebhookVO BaremetalPxeServerVO 367

382 zstack-cli命令 使用手册 / 9 系统全局相关 BaremetalChassisVO BaremetalHostCfgVO BaremetalHostNicCfgVO BaremetalHostBondingVO BaremetalHardwareInfoVO BaremetalConsoleProxyVO VRouterRouteTableVO VRouterRouteEntryVO VirtualRouterVRouterRouteTableRefVO MonitorTriggerVO MediaVO MediaVO MonitorTriggerActionVO TriggerActionVO MonitorTriggerActionRefVO AlertVO PciDeviceVO PciDeviceOfferingVO PciDevicePciDeviceOfferingRefVO PciDeviceOfferingInstanceOfferingRefVO UsbDeviceVO AffinityGroupVO AffinityGroupUsageVO CheckPointVO CheckPointEntryVO WorkFlowChainVO WorkFlowVO KeyValueBinaryVO KeyValueVO JobQueueVO 368

383 zstack-cli命令 使用手册 / 9 系统全局相关 JobQueueEntryVO GlobalConfigVO SchedulerVO SchedulerJobVO SchedulerTriggerVO SchedulerJobSchedulerTriggerRefVO ManagementNodeVO ManagementNodeContextVO 衍生出的资源使用他们的父类型 例如 SftpBackupStorage的资源类型BackupStorageVO 在每个资源的对应Tags章节中, 我们有解释需用什么资源类型来创建对应的标签 操作 Operations 创建系统标签 CreateSystemTag 管理员可以使用CreateSystemTag创建系统标签 例如 CreateSystemTag resourcetype=hostvo resourceuuid=e604949bf86e4aef819456b52ddc336f \ tag=reservedmemory::1g 当创建一个标 resourcetype 签 用户必须制定 标签所关联的资源 类型 用户指定的资 resourceuuid 源uuid 若指 定 系统不会为该 资源随机分配uuid tag 标签字符串 签#CreateUserTag# 369

384 zstack-cli命令 使用手册 / 9 系统全局相关 签#CreateSystemTag# 查询系统标签 QuerySystemTag 管理员可以使用QuerySystemTag查询系统标签 例如 QuerySystemTag resourceuuid=e604949bf86e4aef819456b52ddc336f 原生域查询 Primitive Fields of Query 请参见system tag inventory 更新系统标签 UpdateSystemTag 管理员可以使用UpdateSystemTag更新系统标签 例如 UpdateSystemTag uuid=66c647cc74ab46d3a01d938ecdfd27ca tag=reservedmemory::1g uuid 资源的uuid tag 标签字符串 签#CreateUserTag# 签#CreateSystemTag# 创建用户标签 CreateUserTag 管理员可以使用CreateUserTag创建用户标签 例如 CreateUserTag resourcetype=diskofferingvo resourceuuid=e76952fb94cb4cc2a33fc97bd26e 51cc \ 370

385 zstack-cli命令 使用手册 / 9 系统全局相关 tag=for-large-db resourcetype 当创建一个标签 时 用户必须指定 标签所关联的资源 类型 resourceuuid 用户指定的资 源uuid 若指 定 系统不会为该 资源随机分配uuid tag 标签字符串 签#CreateUserTag# 签#CreateSystemTag# 查询用户标签 QueryUserTag 管理员可以使用QueryUserTag查询用户标签 例如 QueryUserTag resourceuuid=e76952fb94cb4cc2a33fc97bd26e51cc 原生域查询 Primitive Fields of Query 请参见user tag inventory 371

386 zstack-cli命令 使用手册 / 9 系统全局相关 删除标签 DeleteTag 管理员可以使用DeleteTag删除标签 例如 DeleteTag uuid=f7a13f786e6442d1839c5b565b233ed7 uuid 资源uuid 资源#Delete 请参见 删除 deletemode Resources# Permissive Enforcing 签#CreateUserTag# 签#CreateSystemTag# 9.3 进度条 概览 操作 Operations 获取任务进度 GetTaskProgress 管理员可以使用GetTaskProgress获取任务进度 例如 GetTaskProgress apiid=6fa0b72b3f e3f55b43c3698 apiid 任务对应的API ID all 372 指定获取所有进度 信息

387 zstack-cli命令 使用手册 / 9 系统全局相关 1.11 签#CreateUserTag# 1.11 签#CreateSystemTag# 9.4 通知 概览 操作 Operations 删除通知 DeleteNotifications 管理员可以使用DeleteNotifications删除通知 例如 DeleteNotifications uuids=9190d774fe e32336c4ef uuids 签#CreateUserTag# 签#CreateSystemTag# 373

388 zstack-cli命令 使用手册 / 9 系统全局相关 查询通知 QueryNotification 管理员可以使用QueryNotification查询通知 例如 QueryNotification resourceuuid=106a535f73ea44ac902e94ba2444ba59 原生域查询 Primitive Fields of Query 请参见notification inventory 更新通知状态 UpdateNotificationsStatus 管理员可以使用UpdateNotificationsStatus更新通知状态 例如 UpdateNotificationsStatus status=unread uuids=08098bad d a uuids Unread status Read 签#CreateUserTag# 签#CreateSystemTag# 9.5 查询可用资源 概览 374

389 zstack-cli命令 使用手册 / 9 系统全局相关 操作 Operations 获取cpu和内存容量 GetCpuMemoryCapacity 管理员可以使用GetCpuMemoryCapacity获取cpu和内存容量 例如 GetCpuMemoryCapacity zoneuuids=bd73a3d1e6784d49897be5ae785305d8 zoneuuids 区域uuid 于添加 删除host clusteruuids 集群的uuid 用于 挂载网络 存储等 物理机的uuid 用 hostuuids 等 all为true 或区 域uuid 集群uuid all,物理机uuid必须 有一个不为空 或 全部都填写 签#CreateUserTag# 签#CreateSystemTag# 9.6 垃圾回收 概览 375

390 zstack-cli命令 使用手册 / 9 系统全局相关 操作 Operations 触发垃圾回收任务 TriggerGCJob 管理员可以使用TriggerGCJob触发垃圾回收任务 例如 TriggerGCJob uuid=838bd276c5cf4320b8163de473f98a45 uuid 资源uuid 签#CreateUserTag# 签#CreateSystemTag# 删除垃圾回收任务 DeleteGCJob 管理员可以使用DeleteGCJob删除垃圾回收任务 例如 DeleteGCJob uuid=838bd276c5cf4320b8163de473f98a45 uuid 资源uuid 签#CreateUserTag# 签#CreateSystemTag# 376

391 zstack-cli命令 使用手册 / 9 系统全局相关 查询垃圾回收任务 QueryGCJob 管理员可以使用QueryGCJob查询垃圾回收任务 例如 QueryGCJob uuid=1b92f2b5c8f14f599b41ce0553ecc0b7 原生域查询 Primitive Fields of Query 请参见GC job inventory 9.7 许可证 概览 操作 Operations 获取许可证信息 GetLicenseInfo 管理员可以使用GetLicenseInfo获取许可证信息 返回示例 { } "inventory": { "availablecpunum": 4, "cpunum": 10, "expired": false, "expireddate": " T13:55: :00", "issueddate": " T13:55: :00", "licenserequest": "eaxmple request", "licensetype": "Paid", "user": "test@zstack.io" }, "success": true 签#CreateUserTag# 签#CreateSystemTag# 377

392 zstack-cli命令 使用手册 / 9 系统全局相关 获取许可证容量 GetLicenseCapabilities 管理员可以使用GetLicenseCapabilities获取许可证容量 返回示例 {{ } "capabilities": { "addhost": "true", "clonevm": "true", "imagestore": "true", "ipsec": "true", "log": "true", "monitoring": "true", "overprovisioning": "true", "pcidevice": "true", "performancemonitor": "true", "qos": "true", "setvmrootpassword": "true", "usbdevice": "true", "vipqos": "true", "vmware": "true", "vrouterroute": "true" }, "success": true 签#CreateUserTag# 签#CreateSystemTag# 重新加载许可证 ReloadLicense 管理员可以使用ReloadLicense重新加载许可证 返回示例 ReloadLicense managementnodeuuids=a1b641b3cd084166a5cc79c8c5e0174c 378 managem entnodeuuids 管理节点uuid

393 zstack-cli命令 使用手册 / 9 系统全局相关 签#CreateUserTag# 签#CreateSystemTag# 379

394 zstack-cli命令 使用手册 / 10 CLI实践教程 10 CLI实践教程 10.1 CLI搭建ZStack云平台 背景信息 本章节将介绍如何使用zstack-cli命令搭建ZStack云平台 本场景采用本地存储 镜像仓库 云路由网络 公有网络和管理网络共用 基本流程 1. 使用zstack-cli初始化云平台 2. 使用zstack-cli创建云路由网络 3. 使用zstack-cli创建云主机 4. 使用zstack-cli指定控制台密码 ha设置 云盘等参数来创建云主机 5. 使用zstack-cli创建弹性IP并验证 6. 使用zstack-cli创建端口转发并验证 操作步骤 1. 创建区域 admin >>>CreateZone name=zone-1 { "inventory": { "createdate": "Nov 24, :20:33 PM", "lastopdate": "Nov 24, :20:33 PM", "name": "Zone-1", "state": "Enabled", "type": "zstack", "uuid": "af67d572c d19ed4c19a" }, "success": true } 2. 在区域下创建集群 admin >>>CreateCluster name=cluster-1 zoneuuid=af67d572c d19ed4 c19a hypervisortype=kvm { "inventory": { "createdate": "Nov 24, :21:34 PM", "hypervisortype": "KVM", "lastopdate": "Nov 24, :21:34 PM", "name": "Cluster-1", "state": "Enabled", "type": "zstack", "uuid": "7cfa5479e92d4e9095a8010eda78fa55", "zoneuuid": "af67d572c d19ed4c19a" 380

395 zstack-cli命令 使用手册 / 10 CLI实践教程 } }, "success": true 3. 在区域的集群下添加物理机 admin >>>AddKVMHost name=host-1 sshport=22 username=root password=password clusteruuid=7cfa5479e92d4e9095a8010eda78fa55 managementip= { "inventory": { "availablecpucapacity": 40, "availablememorycapacity": , "clusteruuid": "7cfa5479e92d4e9095a8010eda78fa55", "cpunum": 4, "cpusockets": 1, "createdate": "Nov 24, :23:15 PM", "hypervisortype": "KVM", "lastopdate": "Nov 24, :23:40 PM", "managementip": " ", "name": "Host-1", "sshport": 22, "state": "Enabled", "status": "Connected", "totalcpucapacity": 40, "totalmemorycapacity": , "username": "root", "uuid": "6dd772cadd314b3d93d2150fc70d112c", "zoneuuid": "af67d572c d19ed4c19a" }, "success": true } 4. 在区域下添加本地主存储 admin >>>AddLocalPrimaryStorage name=ps-1 url=/zstack_ps zoneuuid=af67d57 2c d19ed4c19a { "inventory": { "attachedclusteruuids": [], "availablecapacity": 0, "availablephysicalcapacity": 0, "createdate": "Nov 24, :25:02 PM", "lastopdate": "Nov 24, :25:02 PM", "mountpath": "/zstack_ps", "name": "PS-1", "state": "Enabled", "status": "Connected", "totalcapacity": 0, "totalphysicalcapacity": 0, "type": "LocalStorage", "url": "/zstack_ps", "uuid": "f0b8633d faf0c329be1834f", "zoneuuid": "af67d572c d19ed4c19a" }, "success": true 381

396 zstack-cli命令 使用手册 / 10 CLI实践教程 } 挂载本地主存储到集群 admin >>>AttachPrimaryStorageToCluster primarystorageuuid=f0b8633d faf0 c329be1834f clusteruuid=7cfa5479e92d4e9095a8010eda78fa55 { "inventory": { "attachedclusteruuids": [ "7cfa5479e92d4e9095a8010eda78fa55" ], "availablecapacity": , "availablephysicalcapacity": , "createdate": "Nov 24, :25:02 PM", "lastopdate": "Nov 24, :25:02 PM", "mountpath": "/zstack_ps", "name": "PS-1", "state": "Enabled", "status": "Connected", "systemusedcapacity": , "totalcapacity": , "totalphysicalcapacity": , "type": "LocalStorage", "url": "/zstack_ps", "uuid": "f0b8633d faf0c329be1834f", "zoneuuid": "af67d572c d19ed4c19a" }, "success": true } 5. 添加镜像服务器 admin >>>AddImageStoreBackupStorage name=bs-1 url=/zstack_bs username=root password=password hostname= { "inventory": { "attachedzoneuuids": [], "availablecapacity": , "createdate": "Nov 24, :28:27 PM", "hostname": " ", "lastopdate": "Nov 24, :28:34 PM", "name": "BS-1", "sshport": 22, "state": "Enabled", "status": "Connected", "totalcapacity": , "type": "ImageStoreBackupStorage", "url": "/zstack_bs", "username": "root", "uuid": "d2b f24a07bd846036f18c95c8" }, "success": true } 挂载镜像服务器到区域 admin >>>AttachBackupStorageToZone backupstorageuuid=d2b f24a07bd f18c95c8 zoneuuid=af67d572c d19ed4c19a { 382

397 zstack-cli命令 使用手册 / 10 CLI实践教程 } "inventory": { "attachedzoneuuids": [ "af67d572c d19ed4c19a" ], "availablecapacity": , "createdate": "Nov 24, :28:27 PM", "hostname": " ", "lastopdate": "Nov 24, :28:34 PM", "name": "BS-1", "sshport": 22, "state": "Enabled", "status": "Connected", "totalcapacity": , "type": "ImageStoreBackupStorage", "url": "/zstack_bs", "username": "root", "uuid": "d2b f24a07bd846036f18c95c8" }, "success": true 6. 创建计算规格 admin >>>CreateInstanceOffering name=instanceoffering cpunum=1 memorysize = { "inventory": { "allocatorstrategy": "LeastVmPreferredHostAllocatorStrategy", "cpunum": 1, "cpuspeed": 0, "createdate": "Nov 24, :30:22 PM", "lastopdate": "Nov 24, :30:22 PM", "memorysize": , "name": "InstanceOffering", "sortkey": 0, "state": "Enabled", "type": "UserVm", "uuid": "ed3de28193e343b5ab27cb425318ff21" }, "success": true } 7. 添加创建云主机的镜像 admin >>>AddImage name=image-1 url= centos7.2-test-8g.qcow2 backupstorageuuids=d2b f24a07bd846036f18c95c8 format=qcow2 platform=linux { "inventory": { "actualsize": , "backupstoragerefs": [ { "backupstorageuuid": "d2b f24a07bd846036f18c95c8", "createdate": "Nov 24, :32:55 PM", "imageuuid": "0d38fc48c0af4341bec4e19a35e7b55b", "installpath": "zstore://0d38fc48c0af4341bec4e19a35e7b55b/d27dcabb17adcd 9c16f1ab6d1e705ca8a7bbdb89", "lastopdate": "Nov 24, :32:55 PM", "status": "Ready" } ], 383

398 zstack-cli命令 使用手册 / 10 CLI实践教程 "createdate": "Nov 24, :32:55 PM", "format": "qcow2", "lastopdate": "Nov 24, :35:23 PM", "md5sum": "7905bd da05ed619a7d3a468b86ece47bd31c9d5ff2baa21b ee29388e", "mediatype": "RootVolumeTemplate", "name": "Image-1", "platform": "Linux", "size": , "state": "Enabled", "status": "Ready", "system": false, "type": "zstack", "url": " "uuid": "0d38fc48c0af4341bec4e19a35e7b55b" }, "success": true } 添加云路由的镜像 admin >>>AddImage name=vr url= backupstorageuuids=d2b f24a07bd846036f18c95c8 format =qcow2 platform=linux system=true { "inventory": { "actualsize": , "backupstoragerefs": [ { "backupstorageuuid": "d2b f24a07bd846036f18c95c8", "createdate": "Nov 24, :37:58 PM", "imageuuid": "81df8288d b f805a6b7", "installpath": "zstore://81df8288d b f805a6b7/6fe3929dee1ae4 7eee48fee8d e6c7b829", "lastopdate": "Nov 24, :37:58 PM", "status": "Ready" } ], "createdate": "Nov 24, :37:57 PM", "format": "qcow2", "lastopdate": "Nov 24, :38:44 PM", "md5sum": " fe83831b2c196801c04cd5afa651226ba3c3f872facd4e06c 2a6aa6c5", "mediatype": "RootVolumeTemplate", "name": "VR", "platform": "Linux", "size": , "state": "Enabled", "status": "Ready", "system": true, "type": "zstack", "url": " "uuid": "81df8288d b f805a6b7" }, "success": true 384

399 zstack-cli命令 使用手册 / 10 CLI实践教程 } 8. 在区域下创建二层公有网络 admin >>>CreateL2NoVlanNetwork physicalinterface=eth0 zoneuuid=af67d572c d19ed4c19a name=l2-pub { "inventory": { "attachedclusteruuids": [], "createdate": "Nov 24, :40:01 PM", "lastopdate": "Nov 24, :40:01 PM", "name": "L2-pub", "physicalinterface": "eth0", "type": "L2NoVlanNetwork", "uuid": "18e6f9183ab74c43bf6f54f4cb9ac619", "zoneuuid": "af67d572c d19ed4c19a" }, "success": true } 挂载二层公有网络到集群 admin >>>AttachL2NetworkToCluster clusteruuid=7cfa5479e92d4e9095a8010eda78fa55 l2networkuuid=18e6f9183ab74c43bf6f54f4cb9ac619 { "inventory": { "attachedclusteruuids": [ "7cfa5479e92d4e9095a8010eda78fa55" ], "createdate": "Nov 24, :40:01 PM", "lastopdate": "Nov 24, :40:01 PM", "name": "L2-pub", "physicalinterface": "eth0", "type": "L2NoVlanNetwork", "uuid": "18e6f9183ab74c43bf6f54f4cb9ac619", "zoneuuid": "af67d572c d19ed4c19a" }, "success": true } 9. 在区域下创建二层私有网络 admin >>>CreateL2VlanNetwork name=l2-pri vlan=2763 physicalinterface=eth0 zoneuui d=af67d572c d19ed4c19a { "inventory": { "attachedclusteruuids": [], "createdate": "Nov 24, :42:08 PM", "lastopdate": "Nov 24, :42:08 PM", "name": "L2-pri", "physicalinterface": "eth0", "type": "L2VlanNetwork", "uuid": "81c73ae08d2240dd95e378967c213c2e", "vlan": 2763, "zoneuuid": "af67d572c d19ed4c19a" }, "success": true 385

400 zstack-cli命令 使用手册 / 10 CLI实践教程 } 挂载二层私有网络到集群 admin >>>AttachL2NetworkToCluster clusteruuid=7cfa5479e92d4e9095a8010eda78fa55 l2networkuuid=81c73ae08d2240dd95e378967c213c2e { "inventory": { "attachedclusteruuids": [ "7cfa5479e92d4e9095a8010eda78fa55" ], "createdate": "Nov 24, :42:08 PM", "lastopdate": "Nov 24, :42:08 PM", "name": "L2-pri", "physicalinterface": "eth0", "type": "L2VlanNetwork", "uuid": "81c73ae08d2240dd95e378967c213c2e", "vlan": 2763, "zoneuuid": "af67d572c d19ed4c19a" }, "success": true } 10.二层公有网络下创建三层公有网络 admin >>>CreateL3Network name=l3-pub l2networkuuid=18e6f9183ab74c43bf6f5 4f4cb9ac619 category=public system=false { "inventory": { "category": "Public", "createdate": "Nov 24, :44:07 PM", "ipranges": [], "l2networkuuid": "18e6f9183ab74c43bf6f54f4cb9ac619", "lastopdate": "Nov 24, :44:07 PM", "name": "L3-pub", "networkservices": [], "state": "Enabled", "system": false, "type": "L3BasicNetwork", "uuid": "d701ff5f4e4c4cdf c5d8d168d", "zoneuuid": "af67d572c d19ed4c19a" }, "success": true } 添加网络段 admin >>>AddIpRange l3networkuuid=d701ff5f4e4c4cdf c5d8d168d startip= endip= netmask= gateway= name=l3-pub { "inventory": { "createdate": "Nov 24, :47:21 PM", "endip": " ", "gateway": " ", "l3networkuuid": "d701ff5f4e4c4cdf c5d8d168d", "lastopdate": "Nov 24, :47:21 PM", "name": "L3-PUB", "netmask": " ", "networkcidr": " /8", 386

401 zstack-cli命令 使用手册 / 10 CLI实践教程 "startip": " ", "uuid": "73b061cac86d40bfa49cda68b584d589" } }, "success": true 添加DNS admin >>>AddDnsToL3Network l3networkuuid=d701ff5f4e4c4cdf c5d8d168d dns= { "inventory": { "category": "Public", "createdate": "Nov 24, :44:07 PM", "dns": [ " " ], "ipranges": [ { "createdate": "Nov 24, :47:21 PM", "endip": " ", "gateway": " ", "l3networkuuid": "d701ff5f4e4c4cdf c5d8d168d", "lastopdate": "Nov 24, :47:21 PM", "name": "L3-PUB", "netmask": " ", "networkcidr": " /8", "startip": " ", "uuid": "73b061cac86d40bfa49cda68b584d589" } ], "l2networkuuid": "18e6f9183ab74c43bf6f54f4cb9ac619", "lastopdate": "Nov 24, :44:07 PM", "name": "L3-pub", "networkservices": [], "state": "Enabled", "system": false, "type": "L3BasicNetwork", "uuid": "d701ff5f4e4c4cdf c5d8d168d", "zoneuuid": "af67d572c d19ed4c19a" }, "success": true } 查询网络服务模块的UUID 用于提供扁平网络网络的网络服务模块UUID admin >>>QueryNetworkServiceProvider name="flat Network Service Provider" { "inventories": [ { "attachedl2networkuuids": [ "81c73ae08d2240dd95e378967c213c2e", "18e6f9183ab74c43bf6f54f4cb9ac619" ], "createdate": "Nov 13, :01:53 PM", "description": "Flat Network Service Provider", "lastopdate": "Nov 13, :01:53 PM", "name": "Flat Network Service Provider", "networkservicetypes": [ "Userdata", 387

402 zstack-cli命令 使用手册 / 10 CLI实践教程 "Eip", "DHCP" ], "type": "Flat", "uuid": "3d46e adac0d90c86a5999ee" } } ], "success": true 挂载网络服务到三层公有网络 此时公有网络可用于创建云主机 admin >>>AttachNetworkServiceToL3Network l3networkuuid=d701ff5f4e4c4cdf c5d8d168d networkservices="{'3d46e adac0d90c86a5999ee':['userdata','eip ','DHCP']}" { "inventory": { "category": "Public", "createdate": "Nov 24, :44:07 PM", "dns": [ " " ], "ipranges": [ { "createdate": "Nov 24, :47:21 PM", "endip": " ", "gateway": " ", "l3networkuuid": "d701ff5f4e4c4cdf c5d8d168d", "lastopdate": "Nov 24, :47:21 PM", "name": "L3-PUB", "netmask": " ", "networkcidr": " /8", "startip": " ", "uuid": "73b061cac86d40bfa49cda68b584d589" } ], "l2networkuuid": "18e6f9183ab74c43bf6f54f4cb9ac619", "lastopdate": "Nov 24, :44:07 PM", "name": "L3-pub", "networkservices": [ { "l3networkuuid": "d701ff5f4e4c4cdf c5d8d168d", "networkserviceprovideruuid": "3d46e adac0d90c86a5999ee", "networkservicetype": "Eip" }, { "l3networkuuid": "d701ff5f4e4c4cdf c5d8d168d", "networkserviceprovideruuid": "3d46e adac0d90c86a5999ee", "networkservicetype": "DHCP" }, { "l3networkuuid": "d701ff5f4e4c4cdf c5d8d168d", "networkserviceprovideruuid": "3d46e adac0d90c86a5999ee", "networkservicetype": "Userdata" } ], "state": "Enabled", "system": false, "type": "L3BasicNetwork", "uuid": "d701ff5f4e4c4cdf c5d8d168d", "zoneuuid": "af67d572c d19ed4c19a" 388

403 zstack-cli命令 使用手册 / 10 CLI实践教程 } }, "success": true 11.使用三层公有网络同时作为公有网络和管理网络 创建云路由规格 使用之前添加的云路由镜像 admin >>>CreateVirtualRouterOffering cpunum=2 memorysize= imageuu id=81df8288d b f805a6b7 managementnetworkuuid=d701ff5f4e4c4c df c5d8d168d publicnetworkuuid=d701ff5f4e4c4cdf c5d8d168d name =VR-Offering zoneuuid=af67d572c d19ed4c19a { "inventory": { "allocatorstrategy": "LeastVmPreferredHostAllocatorStrategy", "cpunum": 2, "cpuspeed": 0, "createdate": "Nov 24, :55:14 PM", "imageuuid": "81df8288d b f805a6b7", "isdefault": false, "lastopdate": "Nov 24, :55:14 PM", "managementnetworkuuid": "d701ff5f4e4c4cdf c5d8d168d", "memorysize": , "name": "VR-Offering", "publicnetworkuuid": "d701ff5f4e4c4cdf c5d8d168d", "sortkey": 0, "state": "Enabled", "type": "VirtualRouter", "uuid": "9f b35a20551dd3805ea6b", "zoneuuid": "af67d572c d19ed4c19a" }, "success": true } 12.创建三层私有网络 admin >>>CreateL3Network name=l3-pri l2networkuuid=81c73ae08d2240dd95e c213c2e category=private { "inventory": { "category": "Private", "createdate": "Nov 24, :56:37 PM", "ipranges": [], "l2networkuuid": "81c73ae08d2240dd95e378967c213c2e", "lastopdate": "Nov 24, :56:37 PM", "name": "L3-pri", "networkservices": [], "state": "Enabled", "system": false, "type": "L3BasicNetwork", "uuid": "7bf9e3ee3f8f4765bc20331b1fc9251d", "zoneuuid": "af67d572c d19ed4c19a" }, "success": true } 添加网络段 admin >>>AddIpRangeByNetworkCidr l3networkuuid=7bf9e3ee3f8f4765bc20331b1fc9 251d networkcidr= /24 name=l3-pri { "inventory": { 389

404 zstack-cli命令 使用手册 / 10 CLI实践教程 "createdate": "Nov 24, :58:11 PM", "endip": " ", "gateway": " ", "l3networkuuid": "7bf9e3ee3f8f4765bc20331b1fc9251d", "lastopdate": "Nov 24, :58:11 PM", "name": "L3-PRI", "netmask": " ", "networkcidr": " /24", "startip": " ", "uuid": "89a731c83ae24738bec af056" } }, "success": true 添加DNS admin >>>AddDnsToL3Network l3networkuuid=7bf9e3ee3f8f4765bc20331b1fc9251d dns= { "inventory": { "category": "Private", "createdate": "Nov 24, :56:37 PM", "dns": [ " " ], "ipranges": [ { "createdate": "Nov 24, :58:11 PM", "endip": " ", "gateway": " ", "l3networkuuid": "7bf9e3ee3f8f4765bc20331b1fc9251d", "lastopdate": "Nov 24, :58:11 PM", "name": "L3-PRI", "netmask": " ", "networkcidr": " /24", "startip": " ", "uuid": "89a731c83ae24738bec af056" } ], "l2networkuuid": "81c73ae08d2240dd95e378967c213c2e", "lastopdate": "Nov 24, :56:37 PM", "name": "L3-pri", "networkservices": [], "state": "Enabled", "system": false, "type": "L3BasicNetwork", "uuid": "7bf9e3ee3f8f4765bc20331b1fc9251d", "zoneuuid": "af67d572c d19ed4c19a" }, "success": true } 查询网络服务模块的UUID 用于提供云路由网络的网络服务模块UUID admin >>>QueryNetworkServiceProvider name="vrouter" { "inventories": [ { "attachedl2networkuuids": [ "81c73ae08d2240dd95e378967c213c2e", 390

405 zstack-cli命令 使用手册 / 10 CLI实践教程 "18e6f9183ab74c43bf6f54f4cb9ac619" ], "createdate": "Nov 13, :01:53 PM", "description": "zstack vrouter network service provider", "lastopdate": "Nov 13, :01:53 PM", "name": "vrouter", "networkservicetypes": [ "IPsec", "VRouterRoute", "CentralizedDNS", "VipQos", "DNS", "SNAT", "LoadBalancer", "PortForwarding", "Eip", "DHCP" ], "type": "vrouter", "uuid": "a fc44bf8a6050b d3" } } ], "success": true 挂载网络服务到三层私有网络 admin >>>AttachNetworkServiceToL3Network l3networkuuid=7bf9e3ee3f8f4765bc203 31b1fc9251d networkservices="{'a fc44bf8a6050b d3':['ipsec','vrouter Route','CentralizedDNS','VipQos','DNS','SNAT','LoadBalancer','PortForwarding','Eip ','DHCP']}" { "inventory": { "category": "Private", "createdate": "Nov 24, :56:37 PM", "dns": [ " " ], "ipranges": [ { "createdate": "Nov 24, :58:11 PM", "endip": " ", "gateway": " ", "l3networkuuid": "7bf9e3ee3f8f4765bc20331b1fc9251d", "lastopdate": "Nov 24, :58:11 PM", "name": "L3-PRI", "netmask": " ", "networkcidr": " /24", "startip": " ", "uuid": "89a731c83ae24738bec af056" } ], "l2networkuuid": "81c73ae08d2240dd95e378967c213c2e", "lastopdate": "Nov 24, :56:37 PM", "name": "L3-pri", "networkservices": [ { "l3networkuuid": "7bf9e3ee3f8f4765bc20331b1fc9251d", "networkserviceprovideruuid": "a fc44bf8a6050b d3", "networkservicetype": "PortForwarding" }, 391

406 zstack-cli命令 使用手册 / 10 CLI实践教程 { }, { }, { }, { }, { }, { }, { }, { }, { "l3networkuuid": "7bf9e3ee3f8f4765bc20331b1fc9251d", "networkserviceprovideruuid": "a fc44bf8a6050b d3", "networkservicetype": "VipQos" "l3networkuuid": "7bf9e3ee3f8f4765bc20331b1fc9251d", "networkserviceprovideruuid": "a fc44bf8a6050b d3", "networkservicetype": "DNS" "l3networkuuid": "7bf9e3ee3f8f4765bc20331b1fc9251d", "networkserviceprovideruuid": "a fc44bf8a6050b d3", "networkservicetype": "VRouterRoute" "l3networkuuid": "7bf9e3ee3f8f4765bc20331b1fc9251d", "networkserviceprovideruuid": "a fc44bf8a6050b d3", "networkservicetype": "SNAT" "l3networkuuid": "7bf9e3ee3f8f4765bc20331b1fc9251d", "networkserviceprovideruuid": "a fc44bf8a6050b d3", "networkservicetype": "IPsec" "l3networkuuid": "7bf9e3ee3f8f4765bc20331b1fc9251d", "networkserviceprovideruuid": "a fc44bf8a6050b d3", "networkservicetype": "LoadBalancer" "l3networkuuid": "7bf9e3ee3f8f4765bc20331b1fc9251d", "networkserviceprovideruuid": "a fc44bf8a6050b d3", "networkservicetype": "Eip" "l3networkuuid": "7bf9e3ee3f8f4765bc20331b1fc9251d", "networkserviceprovideruuid": "a fc44bf8a6050b d3", "networkservicetype": "CentralizedDNS" "l3networkuuid": "7bf9e3ee3f8f4765bc20331b1fc9251d", "networkserviceprovideruuid": "a fc44bf8a6050b d3", "networkservicetype": "DHCP" } ], "state": "Enabled", "system": false, "type": "L3BasicNetwork", "uuid": "7bf9e3ee3f8f4765bc20331b1fc9251d", "zoneuuid": "af67d572c d19ed4c19a" } }, "success": true 创建系统标签 使云路由规格和三层私有网络关联 admin >>>CreateSystemTag resourceuuid=9f b35a20551dd3805ea6b tag ="guestl3network::7bf9e3ee3f8f4765bc20331b1fc9251d" resourcetype=instanceofferi ngvo { 392

407 zstack-cli命令 使用手册 / 10 CLI实践教程 } "inventory": { "createdate": "Nov 24, :04:11 PM", "inherent": false, "lastopdate": "Nov 24, :04:11 PM", "resourcetype": "InstanceOfferingVO", "resourceuuid": "9f b35a20551dd3805ea6b", "tag": "guestl3network::7bf9e3ee3f8f4765bc20331b1fc9251d", "type": "System", "uuid": "09c558c a a4ac9ce" }, "success": true 13.创建云盘规格 admin >>>CreateDiskOffering name=data-volumn-offering disksize= { "inventory": { "allocatorstrategy": "DefaultPrimaryStorageAllocationStrategy", "createdate": "Nov 24, :05:35 PM", "disksize": , "lastopdate": "Nov 24, :05:35 PM", "name": "Data-Volumn-Offering", "sortkey": 0, "state": "Enabled", "type": "DefaultDiskOfferingType", "uuid": "40b562ef06c44e c02fd354416" }, "success": true } 14.创建云主机 使用原本添加的镜像UUID 计算规格和网络选项 admin >>>CreateVmInstance name=vm-1 instanceofferinguuid=ed3de28193e343 b5ab27cb425318ff21 imageuuid=0d38fc48c0af4341bec4e19a35e7b55b l3networkuuids =7bf9e3ee3f8f4765bc20331b1fc9251d { "inventory": { "allvolumes": [ { "actualsize": , "createdate": "Nov 24, :08:02 PM", "description": "Root volume for VM[uuid:143440faca89413e8b6094c9e1b12157 ]", "deviceid": 0, "format": "qcow2", "installpath": "/zstack_ps/rootvolumes/acct-36c27e8ff05c4780bf6d2fa65700 f22e/vol-3ab0afbd82c6434dac7de11d0363abdb/3ab0afbd82c6434dac7de11d0363abdb.qcow2", "isshareable": false, "lastopdate": "Nov 24, :08:02 PM", "name": "ROOT-for-VM-1", "primarystorageuuid": "f0b8633d faf0c329be1834f", "rootimageuuid": "0d38fc48c0af4341bec4e19a35e7b55b", "size": , "state": "Enabled", "status": "Ready", "type": "Root", "uuid": "3ab0afbd82c6434dac7de11d0363abdb", "vminstanceuuid": "143440faca89413e8b6094c9e1b12157" } 393

408 zstack-cli命令 使用手册 / 10 CLI实践教程 ], "allocatorstrategy": "LeastVmPreferredHostAllocatorStrategy", "clusteruuid": "7cfa5479e92d4e9095a8010eda78fa55", "cpunum": 1, "cpuspeed": 0, "createdate": "Nov 24, :08:01 PM", "defaultl3networkuuid": "7bf9e3ee3f8f4765bc20331b1fc9251d", "hostuuid": "6dd772cadd314b3d93d2150fc70d112c", "hypervisortype": "KVM", "imageuuid": "0d38fc48c0af4341bec4e19a35e7b55b", "instanceofferinguuid": "ed3de28193e343b5ab27cb425318ff21", "lasthostuuid": "6dd772cadd314b3d93d2150fc70d112c", "lastopdate": "Nov 24, :09:17 PM", "memorysize": , "name": "VM-1", "platform": "Linux", "rootvolumeuuid": "3ab0afbd82c6434dac7de11d0363abdb", "state": "Running", "type": "UserVm", "uuid": "143440faca89413e8b6094c9e1b12157", "vmnics": [ { "createdate": "Nov 24, :08:02 PM", "deviceid": 0, "gateway": " ", "ip": " ", "l3networkuuid": "7bf9e3ee3f8f4765bc20331b1fc9251d", "lastopdate": "Nov 24, :08:02 PM", "mac": "fa:af:40:4b:39:00", "netmask": " ", "uuid": "c42be9f fadfa0f34475c9b4a", "vminstanceuuid": "143440faca89413e8b6094c9e1b12157" } ], "zoneuuid": "af67d572c d19ed4c19a" } }, "success": true 15.创建云主机 使用原本添加的镜像UUID 计算规格和网络选项 并指定数据盘规格 集群 物 理机 控制台密码 ha neverstop开启 指定数据盘的主存储等选项 admin >>>CreateVmInstance name=vm-2 instanceofferinguuid=ed3de28193e343 b5ab27cb425318ff21 imageuuid=0d38fc48c0af4341bec4e19a35e7b55b l3networkuuids =7bf9e3ee3f8f4765bc20331b1fc9251d datadiskofferinguuids=40b562ef06c44e c02fd clusteruuid=7cfa5479e92d4e9095a8010eda78fa55 hostuuid=6dd772c add314b3d93d2150fc70d112c ="consolepassword::123456","ha::neverstop ","vmconsolemode::vnc","primarystorageuuidfordatavolume::f0b8633d faf0 c329be1834f" { "inventory": { "allvolumes": [ { "actualsize": 0, "createdate": "Nov 24, :13:04 PM", "description": "DataVolume-effeb1b473334dc48773befe b", "deviceid": 1, "diskofferinguuid": "40b562ef06c44e c02fd354416", "format": "qcow2", 394

409 zstack-cli命令 使用手册 / 10 CLI实践教程 "installpath": "/zstack_ps/datavolumes/acct-36c27e8ff05c4780bf6d2fa65700 f22e/vol-9a11ebdc1b074aea82292e148c8be4d6/9a11ebdc1b074aea82292e148c8be4d6.qcow2", "isshareable": false, "lastopdate": "Nov 24, :13:04 PM", "name": "DATA-for-VM-2", "primarystorageuuid": "f0b8633d faf0c329be1834f", "size": , "state": "Enabled", "status": "Ready", "type": "Data", "uuid": "9a11ebdc1b074aea82292e148c8be4d6", "vminstanceuuid": "effeb1b473334dc48773befe b" }, { "actualsize": , "createdate": "Nov 24, :13:04 PM", "description": "Root volume for VM[uuid:effeb1b473334dc48773befe b]", "deviceid": 0, "format": "qcow2", "installpath": "/zstack_ps/rootvolumes/acct-36c27e8ff05c4780bf6d2fa65700 f22e/vol-c82422eae86e4eb8bea225e860d62444/c82422eae86e4eb8bea225e860d62444.qcow2", "isshareable": false, "lastopdate": "Nov 24, :13:04 PM", "name": "ROOT-for-VM-2", "primarystorageuuid": "f0b8633d faf0c329be1834f", "rootimageuuid": "0d38fc48c0af4341bec4e19a35e7b55b", "size": , "state": "Enabled", "status": "Ready", "type": "Root", "uuid": "c82422eae86e4eb8bea225e860d62444", "vminstanceuuid": "effeb1b473334dc48773befe b" } ], "allocatorstrategy": "LeastVmPreferredHostAllocatorStrategy", "clusteruuid": "7cfa5479e92d4e9095a8010eda78fa55", "cpunum": 1, "cpuspeed": 0, "createdate": "Nov 24, :13:04 PM", "defaultl3networkuuid": "7bf9e3ee3f8f4765bc20331b1fc9251d", "hostuuid": "6dd772cadd314b3d93d2150fc70d112c", "hypervisortype": "KVM", "imageuuid": "0d38fc48c0af4341bec4e19a35e7b55b", "instanceofferinguuid": "ed3de28193e343b5ab27cb425318ff21", "lasthostuuid": "6dd772cadd314b3d93d2150fc70d112c", "lastopdate": "Nov 24, :13:16 PM", "memorysize": , "name": "VM-2", "platform": "Linux", "rootvolumeuuid": "c82422eae86e4eb8bea225e860d62444", "state": "Running", "type": "UserVm", "uuid": "effeb1b473334dc48773befe b", "vmnics": [ { "createdate": "Nov 24, :13:04 PM", "deviceid": 0, "gateway": " ", "ip": " ", "l3networkuuid": "7bf9e3ee3f8f4765bc20331b1fc9251d", 395

410 zstack-cli命令 使用手册 / 10 CLI实践教程 "lastopdate": "Nov 24, :13:04 PM", "mac": "fa:be:4f:fb:db:00", "netmask": " ", "uuid": "92e6d8b564654efebd17ecade2d48aa9", "vminstanceuuid": "effeb1b473334dc48773befe b" } ], "zoneuuid": "af67d572c d19ed4c19a" } }, "success": true 16.创建弹性IP服务 a) 创建虚拟IP 获取其UUID admin >>>CreateVip name=vip-eip l3networkuuid=d701ff5f4e4c4cdf c5d8d168d { "inventory": { "createdate": "Nov 24, :14:29 PM", "gateway": " ", "ip": " ", "l3networkuuid": "d701ff5f4e4c4cdf c5d8d168d", "lastopdate": "Nov 24, :14:29 PM", "name": "VIP-EIP", "netmask": " ", "state": "Enabled", "uuid": "db4d627e2f7f4be8bbd626240e31a521" }, "success": true } b) 创建弹性IP 获取其UUID admin >>>CreateEip name=eip vipuuid=db4d627e2f7f4be8bbd626240e31a521 { "inventory": { "createdate": "Nov 24, :15:18 PM", "lastopdate": "Nov 24, :15:18 PM", "name": "EIP", "state": "Enabled", "uuid": "e60a1580bc f e", "vipip": " ", "vipuuid": "db4d627e2f7f4be8bbd626240e31a521" }, "success": true } c) 查询云主机VM-1的vmNics的UUID admin >>>QueryVmInstance name=vm-1 { "inventories": [ { "allvolumes": [ { "actualsize": , "createdate": "Nov 24, :08:02 PM", "description": "Root volume for VM[uuid:143440faca89413e8b6094c9e1b1 2157]", 396

411 zstack-cli命令 使用手册 / 10 CLI实践教程 "deviceid": 0, "format": "qcow2", "installpath": "/zstack_ps/rootvolumes/acct-36c27e8ff05c4780bf6d2fa65700 f22e/vol-3ab0afbd82c6434dac7de11d0363abdb/3ab0afbd82c6434dac7de11d0363abdb.qcow2", "isshareable": false, "lastopdate": "Nov 24, :08:02 PM", "name": "ROOT-for-VM-1", "primarystorageuuid": "f0b8633d faf0c329be1834f", "rootimageuuid": "0d38fc48c0af4341bec4e19a35e7b55b", "size": , "state": "Enabled", "status": "Ready", "type": "Root", "uuid": "3ab0afbd82c6434dac7de11d0363abdb", "vminstanceuuid": "143440faca89413e8b6094c9e1b12157" } ], "allocatorstrategy": "LeastVmPreferredHostAllocatorStrategy", "clusteruuid": "7cfa5479e92d4e9095a8010eda78fa55", "cpunum": 1, "cpuspeed": 0, "createdate": "Nov 24, :08:01 PM", "defaultl3networkuuid": "7bf9e3ee3f8f4765bc20331b1fc9251d", "hostuuid": "6dd772cadd314b3d93d2150fc70d112c", "hypervisortype": "KVM", "imageuuid": "0d38fc48c0af4341bec4e19a35e7b55b", "instanceofferinguuid": "ed3de28193e343b5ab27cb425318ff21", "lasthostuuid": "6dd772cadd314b3d93d2150fc70d112c", "lastopdate": "Nov 24, :09:17 PM", "memorysize": , "name": "VM-1", "platform": "Linux", "rootvolumeuuid": "3ab0afbd82c6434dac7de11d0363abdb", "state": "Running", "type": "UserVm", "uuid": "143440faca89413e8b6094c9e1b12157", "vmnics": [ { "createdate": "Nov 24, :08:02 PM", "deviceid": 0, "gateway": " ", "ip": " ", "l3networkuuid": "7bf9e3ee3f8f4765bc20331b1fc9251d", "lastopdate": "Nov 24, :08:02 PM", "mac": "fa:af:40:4b:39:00", "netmask": " ", "uuid": "c42be9f fadfa0f34475c9b4a", "vminstanceuuid": "143440faca89413e8b6094c9e1b12157" } ], "zoneuuid": "af67d572c d19ed4c19a" } ], "success": true } d) 绑定弹性IP到云主机网卡 admin >>>AttachEip eipuuid=e60a1580bc f e vmnicuuid=c42be9f fadfa0f34475c9b4a { 397

412 zstack-cli命令 使用手册 / 10 CLI实践教程 } "inventory": { "createdate": "Nov 24, :15:18 PM", "guestip": " ", "lastopdate": "Nov 24, :17:16 PM", "name": "EIP", "state": "Enabled", "uuid": "e60a1580bc f e", "vipip": " ", "vipuuid": "db4d627e2f7f4be8bbd626240e31a521", "vmnicuuid": "c42be9f fadfa0f34475c9b4a" }, "success": true e) SSH登录到弹性IP地址检查弹性IP否可用 如图 37: 通过弹性IP登陆云主机VM-1所示 图 37: 通过弹性IP登陆云主机VM-1 17.创建端口转发服务 a) 创建虚拟IP 获取其UUID admin >>>CreateVip name=pf l3networkuuid=d701ff5f4e4c4cdf c5d8d168d { "inventory": { "createdate": "Nov 24, :28:11 PM", "gateway": " ", "ip": " ", "l3networkuuid": "d701ff5f4e4c4cdf c5d8d168d", "lastopdate": "Nov 24, :28:11 PM", "name": "PF", "netmask": " ", "state": "Enabled", "uuid": " b07b54832b2d39c285acd803c" }, "success": true 398

413 zstack-cli命令 使用手册 / 10 CLI实践教程 } b) 创建端口转发服务 指定端口范围 admin >>>CreatePortForwardingRule name=pf vipuuid= b07b54832b2d39 c285acd803c vipportstart=22 vipportend=80 protocoltype=tcp { "inventory": { "name": "PF", "privateportend": 80, "privateportstart": 22, "protocoltype": "TCP", "state": "Enabled", "uuid": "03a54bf2ec3a4252a51cada88298fd0c", "vipip": " ", "vipportend": 80, "vipportstart": 22, "vipuuid": " b07b54832b2d39c285acd803c" }, "success": true } c) 查询云主机VM-2的vmNics的UUID admin >>>QueryVmInstance name=vm-2 { "inventories": [ { "allvolumes": [ { "actualsize": , "createdate": "Nov 24, :13:04 PM", "description": "Root volume for VM[uuid:effeb1b473334dc48773befe b]", "deviceid": 0, "format": "qcow2", "installpath": "/zstack_ps/rootvolumes/acct-36c27e8ff05c4780bf6d2fa65700 f22e/vol-c82422eae86e4eb8bea225e860d62444/c82422eae86e4eb8bea225e860d62444.qcow2", "isshareable": false, "lastopdate": "Nov 24, :13:04 PM", "name": "ROOT-for-VM-2", "primarystorageuuid": "f0b8633d faf0c329be1834f", "rootimageuuid": "0d38fc48c0af4341bec4e19a35e7b55b", "size": , "state": "Enabled", "status": "Ready", "type": "Root", "uuid": "c82422eae86e4eb8bea225e860d62444", "vminstanceuuid": "effeb1b473334dc48773befe b" }, { "actualsize": 0, "createdate": "Nov 24, :13:04 PM", "description": "DataVolume-effeb1b473334dc48773befe b", "deviceid": 1, "diskofferinguuid": "40b562ef06c44e c02fd354416", "format": "qcow2", "installpath": "/zstack_ps/datavolumes/acct-36c27e8ff05c4780bf6d2fa65700 f22e/vol-9a11ebdc1b074aea82292e148c8be4d6/9a11ebdc1b074aea82292e148c8be4d6.qcow2", 399

414 zstack-cli命令 使用手册 / 10 CLI实践教程 "isshareable": false, "lastopdate": "Nov 24, :13:04 PM", "name": "DATA-for-VM-2", "primarystorageuuid": "f0b8633d faf0c329be1834f", "size": , "state": "Enabled", "status": "Ready", "type": "Data", "uuid": "9a11ebdc1b074aea82292e148c8be4d6", "vminstanceuuid": "effeb1b473334dc48773befe b" } ], "allocatorstrategy": "LeastVmPreferredHostAllocatorStrategy", "clusteruuid": "7cfa5479e92d4e9095a8010eda78fa55", "cpunum": 1, "cpuspeed": 0, "createdate": "Nov 24, :13:04 PM", "defaultl3networkuuid": "7bf9e3ee3f8f4765bc20331b1fc9251d", "hostuuid": "6dd772cadd314b3d93d2150fc70d112c", "hypervisortype": "KVM", "imageuuid": "0d38fc48c0af4341bec4e19a35e7b55b", "instanceofferinguuid": "ed3de28193e343b5ab27cb425318ff21", "lasthostuuid": "6dd772cadd314b3d93d2150fc70d112c", "lastopdate": "Nov 24, :13:16 PM", "memorysize": , "name": "VM-2", "platform": "Linux", "rootvolumeuuid": "c82422eae86e4eb8bea225e860d62444", "state": "Running", "type": "UserVm", "uuid": "effeb1b473334dc48773befe b", "vmnics": [ { "createdate": "Nov 24, :13:04 PM", "deviceid": 0, "gateway": " ", "ip": " ", "l3networkuuid": "7bf9e3ee3f8f4765bc20331b1fc9251d", "lastopdate": "Nov 24, :13:04 PM", "mac": "fa:be:4f:fb:db:00", "netmask": " ", "uuid": "92e6d8b564654efebd17ecade2d48aa9", "vminstanceuuid": "effeb1b473334dc48773befe b" } ], "zoneuuid": "af67d572c d19ed4c19a" } } ], "success": true d) 挂载端口转发规则到云主机的网卡 admin >>>AttachPortForwardingRule vmnicuuid=92e6d8b564654efebd17ecade2d48aa9 ruleuuid=03a54bf2ec3a4252a51cada88298fd0c { "inventory": { "createdate": "Nov 24, :29:27 PM", "guestip": " ", "lastopdate": "Nov 24, :30:52 PM", "name": "PF", "privateportend": 80, 400

415 zstack-cli命令 使用手册 / 10 CLI实践教程 "privateportstart": 22, "protocoltype": "TCP", "state": "Enabled", "uuid": "03a54bf2ec3a4252a51cada88298fd0c", "vipip": " ", "vipportend": 80, "vipportstart": 22, "vipuuid": " b07b54832b2d39c285acd803c", "vmnicuuid": "92e6d8b564654efebd17ecade2d48aa9" } }, "success": true e) SSH登录验证端口转发规则否生效 如图 38: 通过端口转发登陆云主机VM-2所示 图 38: 通过端口转发登陆云主机VM-2 后续操作 至此 使用zstack-cli命令搭建ZStack云平台介绍完毕 401

册子0906

册子0906 IBM SelectStack ( PMC v2.0 ) 模块化私有云管理平台 是跨主流虚拟化技术的统一资源云管理平台 01 亮点 : 快速可靠地实现集成化 私有云管理平台 02/03 丰富的功能支持企业数据中心云计算 扩展性强 : 简单易用 : 04/05 功能丰富 : 06/07 为什么选择 IBM SelectStack (PMC v2.0)? 快速实现价值 提高创新能力 降低 IT 成本 降低复杂度和风险

More information

升级教程

升级教程 升级教程 产品版本 ZStack 2.6.0 升级教程 / 版权声明 版权声明 版权所有 上海云轴信息科技有限公司 2018 保留一切权利 非经本公司书面许可 任何单位和个人不得擅自摘抄 复制本文档内容的部分或全部 并不得以任 何形式传播 商标说明 ZStack商标和其他云轴商标均为上海云轴信息科技有限公司的商标 本文档提及的其他所有商标或注册商标 由各自的所有人拥有 注意 您购买的产品 服务或特性等应受上海云轴公司商业合同和条款的约束

More information

管理节点灾难恢复

管理节点灾难恢复 管理节点灾难恢复 产品版本 :ZStack 2.3.2 文档版本 :V2.3.2 管理节点灾难恢复 / 版权声明 版权声明 版权所有 上海云轴信息科技有限公司 2018 保留一切权利 非经本公司书面许可, 任何单位和个人不得擅自摘抄 复制本文档内容的部分或全部, 并不得以任何形式传播 商标说明 ZStack 商标和其他云轴商标均为上海云轴信息科技有限公司的商标 本文档提及的其他所有商标或注册商标,

More information

安装命令参数详解

安装命令参数详解 安装命令参数详解 产品版本 :ZStack 2.4.0 文档版本 :V2.4.0 安装命令参数详解 / 版权声明 版权声明 版权所有 上海云轴信息科技有限公司 2018 保留一切权利 非经本公司书面许可, 任何单位和个人不得擅自摘抄 复制本文档内容的部分或全部, 并不得以任何形式传播 商标说明 ZStack 商标和其他云轴商标均为上海云轴信息科技有限公司的商标 本文档提及的其他所有商标或注册商标,

More information

Spice协议 使用指南

Spice协议 使用指南 Spice协议 使用指南 产品版本 ZStack 3.2.0 Spice协议 使用指南 / 版权声明 版权声明 版权所有 上海云轴信息科技有限公司 2018 保留一切权利 非经本公司书面许可 任何单位和个人不得擅自摘抄 复制本文档内容的部分或全部 并不得以任 何形式传播 商标说明 ZStack商标和其他云轴商标均为上海云轴信息科技有限公司的商标 本文档提及的其他所有商标或注册商标 由各自的所有人拥有

More information

嵌套虚拟化配置指南

嵌套虚拟化配置指南 嵌套虚拟化配置指南 产品版本 :ZStack 2.1 文档版本 :V2.1.0 嵌套虚拟化配置指南 / 版权声明 版权声明 版权所有 上海云轴信息科技有限公司 2017 保留一切权利 非经本公司书面许可, 任何单位和个人不得擅自摘抄 复制本文档内容的部分或全部, 并不得以任何形式传播 商标说明 ZStack 商标和其他云轴商标均为上海云轴信息科技有限公司的商标 本文档提及的其他所有商标或注册商标,

More information

嵌套虚拟化配置指南

嵌套虚拟化配置指南 嵌套虚拟化配置指南 产品版本 :ZStack 2.4.0 文档版本 :V2.4.0 嵌套虚拟化配置指南 / 版权声明 版权声明 版权所有 上海云轴信息科技有限公司 2018 保留一切权利 非经本公司书面许可, 任何单位和个人不得擅自摘抄 复制本文档内容的部分或全部, 并不得以任何形式传播 商标说明 ZStack 商标和其他云轴商标均为上海云轴信息科技有限公司的商标 本文档提及的其他所有商标或注册商标,

More information

升级教程

升级教程 升级教程 产品版本 ZStack 3.2.0 升级教程 / 版权声明 版权声明 版权所有 上海云轴信息科技有限公司 2018 保留一切权利 非经本公司书面许可 任何单位和个人不得擅自摘抄 复制本文档内容的部分或全部 并不得以任 何形式传播 商标说明 ZStack商标和其他云轴商标均为上海云轴信息科技有限公司的商标 本文档提及的其他所有商标或注册商标 由各自的所有人拥有 注意 您购买的产品 服务或特性等应受上海云轴公司商业合同和条款的约束

More information

数据中心部署实践-高性能

数据中心部署实践-高性能 数据中心部署实践-高性能 产品版本 ZStack 2.3.2 数据中心部署实践-高性能 / 版权声明 版权声明 版权所有 上海云轴信息科技有限公司 2018 保留一切权利 非经本公司书面许可 任何单位和个人不得擅自摘抄 复制本文档内容的部分或全部 并不得以任 何形式传播 商标说明 ZStack商标和其他云轴商标均为上海云轴信息科技有限公司的商标 本文档提及的其他所有商标或注册商标 由各自的所有人拥有

More information

版权所有 上海云轴信息科技有限公司 2017 保留一切权利 非经本公司书面许可, 任何单位和个人不得擅自摘抄 复制本文档内容的部分或全部, 并不 得以任何形式传播 商标说明 和其他云轴商标均为上海云轴信息科技有限公司的商标 本文档提及的其他所有商标或注册商标, 由各自的所有人拥有 注意您购买的产品

版权所有 上海云轴信息科技有限公司 2017 保留一切权利 非经本公司书面许可, 任何单位和个人不得擅自摘抄 复制本文档内容的部分或全部, 并不 得以任何形式传播 商标说明 和其他云轴商标均为上海云轴信息科技有限公司的商标 本文档提及的其他所有商标或注册商标, 由各自的所有人拥有 注意您购买的产品 使用 ZStack 搭建 IPsec 隧道 版本 2.0 日期 2017-06-10 版本 2.0 上海云轴版权所有 2017 1 版权所有 上海云轴信息科技有限公司 2017 保留一切权利 非经本公司书面许可, 任何单位和个人不得擅自摘抄 复制本文档内容的部分或全部, 并不 得以任何形式传播 商标说明 和其他云轴商标均为上海云轴信息科技有限公司的商标 本文档提及的其他所有商标或注册商标, 由各自的所有人拥有

More information

CentOS 6系统 模板封装教程

CentOS 6系统 模板封装教程 CentOS 6系统 模板封装教程 产品版本 ZStack 2.3.2 CentOS 6系统 模板封装教程 / 版权声明 版权声明 版权所有 上海云轴信息科技有限公司 2018 保留一切权利 非经本公司书面许可 任何单位和个人不得擅自摘抄 复制本文档内容的部分或全部 并不得以任 何形式传播 商标说明 ZStack商标和其他云轴商标均为上海云轴信息科技有限公司的商标 本文档提及的其他所有商标或注册商标

More information

Ubuntu系统 模板封装教程

Ubuntu系统 模板封装教程 Ubuntu系统 模板封装教程 产品版本 ZStack 3.1.1 Ubuntu系统 模板封装教程 / 版权声明 版权声明 版权所有 上海云轴信息科技有限公司 2018 保留一切权利 非经本公司书面许可 任何单位和个人不得擅自摘抄 复制本文档内容的部分或全部 并不得以任 何形式传播 商标说明 ZStack商标和其他云轴商标均为上海云轴信息科技有限公司的商标 本文档提及的其他所有商标或注册商标 由各自的所有人拥有

More information

HTTPS方式登录UI 使用说明

HTTPS方式登录UI 使用说明 HTTPS 方式登录 UI 使用说明 产品版本 :ZStack 2.3.2 文档版本 :V2.3.2 HTTPS 方式登录 UI 使用说明 / 版权声明 版权声明 版权所有 上海云轴信息科技有限公司 2018 保留一切权利 非经本公司书面许可, 任何单位和个人不得擅自摘抄 复制本文档内容的部分或全部, 并不得以任何形式传播 商标说明 ZStack 商标和其他云轴商标均为上海云轴信息科技有限公司的商标

More information

实践课堂成都站-0609.key

实践课堂成都站-0609.key 青云 QingCloud 容器器及 Kubernetes 实践 王渊命 青云 QingCloud 容器器平台负责 人 当我们谈论容器器时我们在谈论什什么? 容器器的两个视 角 资源隔离 应 用封装 容器器 生态圈现状 容器器技术 一家独 大百花 齐放 Docker, Rocket, Mesos Universal container, LXC, Hyper Container 调度系统三 足鼎 立

More information

-i-

-i- -i- -ii- -iii- -iv- -v- -vi- -vii- -viii- -ix- -x- -xi- -xii- 1-1 1-2 1-3 1-4 1-5 1-6 1-7 1-8 1-9 1-10 1-11 1-12 1-13 1-14 1-15 1-16 1-17 1-18 1-19 1-20 1-21 2-1 2-2 2-3 2-4 2-5 2-6 2-7 2-8 2-9 2-10 2-11

More information

Microsoft Word - 强迫性活动一览表.docx

Microsoft Word - 强迫性活动一览表.docx 1 1 - / 2 - / 3 - / 4 - / 5 - I. 1. / 2. / 3. 4. 5. 6. 7. 8. 9 10 11. 12. 2 13. 14. 15. 16. 17. 18. 19. 20 21. 22 23. 24. / / 25. 26. 27. 28. 29. 30. 31. II. 1. 2 3. 4 3 5. 6 7 8. 9 10 11 12 13 14. 15.

More information

II II

II II I I II II III 1. 2. 3. III 4. IV 5. 6. 8. 9. 10. 12. IV V V VI VI VII VII VIII VIII IX IX X X XI XI XII XII 1 1 2 2 3 3 4 33 35 4 5 5 6 6 7 ( ) 7 8 8 9 9 10 10 11 11 12 12 13 13 14 14 15 15 16 16 17 17

More information

<4D6963726F736F667420576F7264202D205B345DB5D8AE4CACD732303135AECAAFC5C1C9C1DCBDD0AB48A4CEB3F8A657AAED>

<4D6963726F736F667420576F7264202D205B345DB5D8AE4CACD732303135AECAAFC5C1C9C1DCBDD0AB48A4CEB3F8A657AAED> 華 夏 盃 全 國 全 國 數 學 奧 林 匹 克 邀 請 賽 ( 華 南 賽 區 ) 晉 級 賽 比 賽 詳 情 : 一 比 賽 對 象 : 小 學 一 至 六 年 級 中 學 一 二 年 級 二 比 賽 日 期 及 時 間 : 年 2 月 15 日 ( 星 期 日 ) 小 學 組 小 一 級 小 二 級 小 三 級 小 四 級 小 五 級 小 六 級 時 間 13:10~1:20 13:10~1:20

More information

Microsoft Word - PD1013-Mevoco-Product-Doc-Amazon EC2 classic EIP zone(Virtual Router)-2.0.docx

Microsoft Word - PD1013-Mevoco-Product-Doc-Amazon EC2 classic EIP zone(Virtual Router)-2.0.docx 使用 ZStack 搭建经典公有云 Amazon EC2 弹性 IP ( 云路由方式 ) 版本 2.0 日期 2017-06-13 版本 2.0 上海云轴版权所有 2017 版权所有 上海云轴信息科技有限公司 2017 保留一切权利 非经本公司书面许可, 任何单位和个人不得擅自摘抄 复制本文档内容的部分或全部, 并不得以任何形式传播 商标说明 和其他云轴商标均为上海云轴信息科技有限公司的商标 本文档提及的其他所有商标或注册商标,

More information

企业版特性概览

企业版特性概览 企业版特性概览 产品版本 ZStack 2.3.2 企业版特性概览 / 版权声明 版权声明 版权所有 上海云轴信息科技有限公司 2018 保留一切权利 非经本公司书面许可 任何单位和个人不得擅自摘抄 复制本文档内容的部分或全部 并不得以任 何形式传播 商标说明 ZStack商标和其他云轴商标均为上海云轴信息科技有限公司的商标 本文档提及的其他所有商标或注册商标 由各自的所有人拥有 注意 您购买的产品

More information

全唐诗28

全唐诗28 ... 1... 1... 1... 2... 2... 2... 3... 3... 4... 4... 4... 5... 5... 5... 5... 6... 6... 6... 6... 7... 7... 7... 7... 8... 8 I II... 8... 9... 9... 9...10...10...10...11...11...11...11...12...12...12...13...13...13...14...14...14...15...15...15...16...16...16...17...17

More information

Microsoft Word - Entry-Level Occupational Competencies for TCM in Canada200910_ch _2_.doc

Microsoft Word - Entry-Level Occupational Competencies for TCM in Canada200910_ch _2_.doc 草 稿 致 省 級 管 理 單 位 之 推 薦 書 二 零 零 九 年 十 月 十 七 日 加 拿 大 中 醫 管 理 局 聯 盟 All rights reserved 序 言 加 拿 大 中 醫 管 理 局 聯 盟, 於 二 零 零 八 年 一 月 至 二 零 零 九 年 十 月 間, 擬 定 傳 統 中 醫 執 業 之 基 礎 文 件 由 臨 床 經 驗 豐 富 之 中 醫 師 教 育 者 及

More information

Kubenetes 系列列公开课 2 每周四晚 8 点档 1. Kubernetes 初探 2. 上 手 Kubernetes 3. Kubernetes 的资源调度 4. Kubernetes 的运 行行时 5. Kubernetes 的 网络管理理 6. Kubernetes 的存储管理理 7.

Kubenetes 系列列公开课 2 每周四晚 8 点档 1. Kubernetes 初探 2. 上 手 Kubernetes 3. Kubernetes 的资源调度 4. Kubernetes 的运 行行时 5. Kubernetes 的 网络管理理 6. Kubernetes 的存储管理理 7. Kubernetes 包管理理 工具 Helm 蔺礼强 Kubenetes 系列列公开课 2 每周四晚 8 点档 1. Kubernetes 初探 2. 上 手 Kubernetes 3. Kubernetes 的资源调度 4. Kubernetes 的运 行行时 5. Kubernetes 的 网络管理理 6. Kubernetes 的存储管理理 7. Kubernetes

More information

A API Application Programming Interface 见 应 用 程 序 编 程 接 口 ARP Address Resolution Protocol 地 址 解 析 协 议 为 IP 地 址 到 对 应 的 硬 件 地 址 之 间 提 供 动 态 映 射 阿 里 云 内

A API Application Programming Interface 见 应 用 程 序 编 程 接 口 ARP Address Resolution Protocol 地 址 解 析 协 议 为 IP 地 址 到 对 应 的 硬 件 地 址 之 间 提 供 动 态 映 射 阿 里 云 内 A API Application Programming Interface 见 应 用 程 序 编 程 接 口 ARP Address Resolution Protocol 地 址 解 析 协 议 为 IP 地 址 到 对 应 的 硬 件 地 址 之 间 提 供 动 态 映 射 阿 里 云 内 容 分 发 网 络 Alibaba Cloud Content Delivery Network 一

More information

Chapter #

Chapter # 第三章 TCP/IP 协议栈 本章目标 通过本章的学习, 您应该掌握以下内容 : 掌握 TCP/IP 分层模型 掌握 IP 协议原理 理解 OSI 和 TCP/IP 模型的区别和联系 TCP/IP 介绍 主机 主机 Internet TCP/IP 早期的协议族 全球范围 TCP/IP 协议栈 7 6 5 4 3 应用层表示层会话层传输层网络层 应用层 主机到主机层 Internet 层 2 1 数据链路层

More information

Basic System Administration

Basic System Administration 基 本 系 统 管 理 ESX Server 3.5 ESX Server 3i 版 本 3.5 Virtual Center 2.5 基 本 管 理 指 南 基 本 管 理 指 南 修 订 时 间 :20080410 项 目 :VI-CHS-Q208-490 我 们 的 网 站 提 供 最 新 的 技 术 文 档, 网 址 为 : http://www.vmware.com/cn/support/

More information

MASQUERADE # iptables -t nat -A POSTROUTING -s / o eth0 -j # sysctl net.ipv4.ip_forward=1 # iptables -P FORWARD DROP #

MASQUERADE # iptables -t nat -A POSTROUTING -s / o eth0 -j # sysctl net.ipv4.ip_forward=1 # iptables -P FORWARD DROP # iptables 默认安全规则脚本 一 #nat 路由器 ( 一 ) 允许路由 # iptables -A FORWARD -i eth0 -o eth1 -j ACCEPT ( 二 ) DNAT 与端口转发 1 启用 DNAT 转发 # iptables -t nat -A PREROUTING -p tcp -d 192.168.102.37 dprot 422 -j DNAT to-destination

More information

AD/LDAP 配置教程

AD/LDAP 配置教程 AD/LDAP 配置教程 产品版本 ZStack 3.2.0 AD/LDAP 配置教程 / 版权声明 版权声明 版权所有 上海云轴信息科技有限公司 2018 保留一切权利 非经本公司书面许可 任何单位和个人不得擅自摘抄 复制本文档内容的部分或全部 并不得以任 何形式传播 商标说明 ZStack商标和其他云轴商标均为上海云轴信息科技有限公司的商标 本文档提及的其他所有商标或注册商标 由各自的所有人拥有

More information

一、

一、 ... 1...24...58 - 2 - - 3 - - 4 - - 5 - - 6 - - 7 - - 8 - i. ii. iii. iv. i. ii. iii. iv. v. vi. vii. viii. ix. x. - 9 - xi. - 10 - - 11 - -12- -13- -14- -15- C. @ -16- @ -17- -18- -19- -20- -21- -22-

More information

509 (ii) (iii) (iv) (v) 200, , , , C 57

509 (ii) (iii) (iv) (v) 200, , , , C 57 59 (ii) (iii) (iv) (v) 500,000 500,000 59I 18 (ii) (iii) (iv) 200,000 56 509 (ii) (iii) (iv) (v) 200,000 200,000 200,000 500,000 57 43C 57 (ii) 60 90 14 5 50,000 43F 43C (ii) 282 24 40(1B) 24 40(1) 58

More information

Microsoft Word - MP2018_Report_Chi _12Apr2012_.doc

Microsoft Word - MP2018_Report_Chi _12Apr2012_.doc 人 力 資 源 推 算 報 告 香 港 特 別 行 政 區 政 府 二 零 一 二 年 四 月 此 頁 刻 意 留 空 - 2 - 目 錄 頁 前 言 詞 彙 縮 寫 及 注 意 事 項 摘 要 第 一 章 : 第 二 章 : 第 三 章 : 第 四 章 : 附 件 一 : 附 件 二 : 附 件 三 : 附 件 四 : 附 件 五 : 附 件 六 : 附 件 七 : 引 言 及 技 術 大 綱 人

More information

南華大學數位論文

南華大學數位論文 1 i -------------------------------------------------- ii iii iv v vi vii 36~39 108 viii 15 108 ix 1 2 3 30 1 ~43 2 3 ~16 1 2 4 4 5 3 6 8 6 4 4 7 15 8 ----- 5 94 4 5 6 43 10 78 9 7 10 11 12 10 11 12 9137

More information

李天命的思考藝術

李天命的思考藝術 ii iii iv v vi vii viii ix x 3 1 2 3 4 4 5 6 7 8 9 5 10 1 2 11 6 12 13 7 8 14 15 16 17 18 9 19 20 21 22 10 23 24 23 11 25 26 7 27 28 12 13 29 30 31 28 32 14 33 34 35 36 5 15 3 1 2 3 4 5 6 7 8 9 10 11

More information

皮肤病防治.doc

皮肤病防治.doc ...1...1...2...3...4...5...6...7...7...9...10... 11...12...14...15...16...18...19...21 I ...22...22...24...25...26...27...27...29...30...31...32...33...34...34...36...36...37...38...40...41...41...42 II

More information

性病防治

性病防治 ...1...2...3...4...5...5...6...7...7...7...8...8...9...9...10...10... 11... 11 I ...12...12...12...13...14...14...15...17...20...20...21...22...23...23...25...27...33...34...34...35...35 II ...36...38...39...40...41...44...49...49...53...56...57...57...58...58...59...60...60...63...63...65...66

More information

中国南北特色风味名菜 _一)

中国南北特色风味名菜 _一) ...1...1...2...3...3...4...5...6...7...7...8...9... 10... 11... 13... 13... 14... 16... 17 I ... 18... 19... 20... 21... 22... 23... 24... 25... 27... 28... 29... 30... 32... 33... 34... 35... 36... 37...

More information

全唐诗24

全唐诗24 ... 1... 1... 2... 2... 3... 3... 4... 4... 5... 5... 6... 6... 7... 7... 8... 8... 9... 9...10...10...10...11...12...12...12...13...13 I II...14...14...14...15...15...15...16...16...16...17...17...18...18...18...19...19...19...20...20...20...21...21...22...22...23...23...23...24

More information

1 2 6 8 15 36 48 55 58 65 67 74 76 150 152 1 3 1 2 4 2 2001 2000 1999 12 31 12 31 12 31 304,347 322,932 231,047 14,018 16,154 5,665 (i) 0.162 0.193 0.082 (ii) 0.165 0.227 0.082 (iii) 10.08 13.37 6.47 0.688

More information

第 二 輯 目 錄.indd 2 目 錄 編 寫 說 明 附 : 香 港 中 學 文 憑 中 國 語 文 科 評 核 模 式 概 述 綜 合 能 力 考 核 考 試 簡 介 及 應 試 技 巧 常 用 實 用 文 文 體 格 式 及 寫 作 技 巧 綜 合 能 力 分 項 等 級 描 述 練 習 一

第 二 輯 目 錄.indd 2 目 錄 編 寫 說 明 附 : 香 港 中 學 文 憑 中 國 語 文 科 評 核 模 式 概 述 綜 合 能 力 考 核 考 試 簡 介 及 應 試 技 巧 常 用 實 用 文 文 體 格 式 及 寫 作 技 巧 綜 合 能 力 分 項 等 級 描 述 練 習 一 作 出 發 者 : 劉 梓 淩 版 : 精 工 出 版 社 行 : 精 工 印 書 局 香 港 銅 鑼 灣 道 168 號 電 話 :2571 1770 2554 1247 傳 真 :2806 0974 2873 2412 網 二 O 一 一 年 址 :http://www.jingkung.com 初 版 版 權 所 有, 翻 版 必 究 如 未 獲 得 本 公 司 同 意, 不 得 用 任 何

More information

2. 我 沒 有 說 實 話, 因 為 我 的 鞋 子 其 實 是 [ 黑 色 / 藍 色 / 其 他 顏 色.]. 如 果 我 說 我 現 在 是 坐 著 的, 我 說 的 是 實 話 嗎? [ 我 說 的 對 還 是 不 對 ]? [ 等 對 方 回 答 ] 3. 這 是 [ 實 話 / 對 的

2. 我 沒 有 說 實 話, 因 為 我 的 鞋 子 其 實 是 [ 黑 色 / 藍 色 / 其 他 顏 色.]. 如 果 我 說 我 現 在 是 坐 著 的, 我 說 的 是 實 話 嗎? [ 我 說 的 對 還 是 不 對 ]? [ 等 對 方 回 答 ] 3. 這 是 [ 實 話 / 對 的 附 錄 美 國 國 家 兒 童 健 康 與 人 類 發 展 中 心 (NICHD) 偵 訊 指 導 手 冊 I. 開 場 白 1. 你 好, 我 的 名 字 是, 我 是 警 察 [ 介 紹 房 間 內 的 其 他 人, 不 過, 在 理 想 狀 態 下, 房 間 裡 不 該 有 其 他 人 ] 今 天 是 ( 年 月 日 ), 現 在 是 ( 幾 點 幾 分 ) 我 是 在 ( 地 點 ) 問 你

More information

_Chi.ps, page Preflight ( _Chi.indd )

_Chi.ps, page Preflight ( _Chi.indd ) on conviction3 5 1. / 2. 14 3. 2 2 3 4. 372 12 5. 6. 1 7. 1 2 i ii iii iv 8. 9. 1 12 2 2 i ii iii i ii iii 3 iv http://www.pcpd.org.hk v i ii iii 4 i ii i / ii 5 1. 2. 3. i ii iii iv v vi 4. 5. 6 6. 7.

More information

AppAssure 5

AppAssure 5 Dell AppAssure 5 用 户 指 南 5.4.2 2014 Dell Inc. 保 留 所 有 权 利 本 指 南 包 含 受 版 权 保 护 的 专 有 信 息 本 指 南 中 所 述 的 软 件 根 据 软 件 许 可 或 保 密 协 议 提 供 只 能 根 据 适 用 协 议 的 条 款 使 用 或 复 制 此 软 件 未 经 Dell Inc. 书 面 许 可, 不 得 以 任

More information

<4D6963726F736F667420576F7264202D203938BEC7A67EABD7B942B0CAC15AC075B3E6BF57A9DBA5CDC2B2B3B92DA5BFBD542E646F63>

<4D6963726F736F667420576F7264202D203938BEC7A67EABD7B942B0CAC15AC075B3E6BF57A9DBA5CDC2B2B3B92DA5BFBD542E646F63> 98 年 3 月 11 日 依 本 校 98 學 年 度 招 生 委 員 會 第 1 次 會 議 核 定 大 同 技 術 學 院 98 學 年 度 重 點 運 動 項 目 績 優 學 生 單 獨 招 生 簡 章 大 同 技 術 學 院 招 生 委 員 會 編 印 校 址 :600 嘉 義 市 彌 陀 路 253 號 電 話 :(05)2223124 轉 203 教 務 處 招 生 專 線 :(05)2223124

More information

SDK 概要 使用 Maven 的用户可以从 Maven 库中搜索 "odps-sdk" 获取不同版本的 Java SDK: 包名 odps-sdk-core odps-sdk-commons odps-sdk-udf odps-sdk-mapred odps-sdk-graph 描述 ODPS 基

SDK 概要 使用 Maven 的用户可以从 Maven 库中搜索 odps-sdk 获取不同版本的 Java SDK: 包名 odps-sdk-core odps-sdk-commons odps-sdk-udf odps-sdk-mapred odps-sdk-graph 描述 ODPS 基 开放数据处理服务 ODPS SDK SDK 概要 使用 Maven 的用户可以从 Maven 库中搜索 "odps-sdk" 获取不同版本的 Java SDK: 包名 odps-sdk-core odps-sdk-commons odps-sdk-udf odps-sdk-mapred odps-sdk-graph 描述 ODPS 基础功能的主体接口, 搜索关键词 "odpssdk-core" 一些

More information

私有云 部署教程

私有云 部署教程 私有云 部署教程 产品版本 ZStack 3.2.0 私有云 部署教程 / 版权声明 版权声明 版权所有 上海云轴信息科技有限公司 2018 保留一切权利 非经本公司书面许可 任何单位和个人不得擅自摘抄 复制本文档内容的部分或全部 并不得以任 何形式传播 商标说明 ZStack商标和其他云轴商标均为上海云轴信息科技有限公司的商标 本文档提及的其他所有商标或注册商标 由各自的所有人拥有 注意 您购买的产品

More information

BYOD IP+Optical (IP NGN) API 4. End-to-End (Service Aware) 5. IP NGN (IP Next Generation Network) ( ) Prime Carrier Management Access Edge Co

BYOD IP+Optical (IP NGN) API 4. End-to-End (Service Aware) 5. IP NGN (IP Next Generation Network) ( ) Prime Carrier Management Access Edge Co BYOD 228 2015 IT open source DIY ( ) Up/Down HP NNMi WhatsUp Gold Nagios HP SiteScope WhatsUp Gold HP NNMi WhatsUp Gold Cacti MRTG HP ispi Performance for Metrics WhatsUp Gold ( ) Open source Agent End-to-End

More information

版权所有 上海云轴信息科技有限公司 2016 保留一切权利 非经本公司书面许可, 任何单位和个人不得擅自摘抄 复制本文档内容的部分或全部, 并不得以任何形式传播 商标说明 和其他云轴商标均为上海云轴信息技术有限公司的商标 本文档提及的其他所有商标或注册商标, 由各自的所有人拥有 注意您购买的产品 服

版权所有 上海云轴信息科技有限公司 2016 保留一切权利 非经本公司书面许可, 任何单位和个人不得擅自摘抄 复制本文档内容的部分或全部, 并不得以任何形式传播 商标说明 和其他云轴商标均为上海云轴信息技术有限公司的商标 本文档提及的其他所有商标或注册商标, 由各自的所有人拥有 注意您购买的产品 服 版本 1.2.0 日期 2016-04-29 版本 1.2.0 上海云轴版权所有 1 / 12 版权所有 上海云轴信息科技有限公司 2016 保留一切权利 非经本公司书面许可, 任何单位和个人不得擅自摘抄 复制本文档内容的部分或全部, 并不得以任何形式传播 商标说明 和其他云轴商标均为上海云轴信息技术有限公司的商标 本文档提及的其他所有商标或注册商标, 由各自的所有人拥有 注意您购买的产品 服务或特性等应受上海云轴公司商业合同和条款的约束,

More information

穨學前教育課程指引.PDF

穨學前教育課程指引.PDF i 1 1.1 1 1.2 1 4 2.1 4 2.2 5 2.3 7 2.4 9 2.5 11 2.6 1 2 1 5 3.1 1 5 3.2 1 5 19 4.1 19 4.2 19 4.3 2 1 4.4 29 4.5 38 4.6 4 3 4.7 47 50 5.1 5 0 5.2 5 0 5.3 6 2 5.4 9 4 5.5 1 2 6 ( ) 1 2 7 ( ) 1 31 ( ) 1

More information

眼病防治

眼病防治 ( 20 010010) 787 1092 1/32 498.50 4 980 2004 9 1 2004 9 1 1 1 000 ISBN 7-204-05940-9/R 019 1880.00 ( 20.00 ) ...1...1...2...3...5...5...6...7...9... 11...13...14...15...17...18...19...20...21 I II...21...22...23...24...25...27...27...28...29...30...31...33...33...34...36...38...39...40...41...42...43...45

More information

中国南北特色风味名菜 _八)

中国南北特色风味名菜 _八) ( 20 010010) 7871092 1/32 356.25 4 760 2004 8 1 2004 8 1 11 000 ISBN 7-204-05943-3/Z102 1026.00 ( 18.00 ) ...1...2...2...4...6...7...8...9... 10... 11... 12... 13... 13... 14... 15... 17... 18... 19...

More information

目录 1 简介 1 2 配置前提 1 3 配置环境 服务器 软件 1 4 配置指导 组网拓扑 操作步骤 Red Hat Enterprise Linux Server Red Hat Enterprise Lin

目录 1 简介 1 2 配置前提 1 3 配置环境 服务器 软件 1 4 配置指导 组网拓扑 操作步骤 Red Hat Enterprise Linux Server Red Hat Enterprise Lin Red Hat Enterprise Linux Server 7.x CAStools 安装操作指导书 Copyright 2015 杭州华三通信技术有限公司版权所有, 保留一切权利 非经本公司书面许可, 任何单位和个人不得擅自摘抄 复制本文档内容的部分或全部, 并不得以任何形式传播 本文档中的信息可能变动, 恕不另行通知 目录 1 简介 1 2 配置前提 1 3 配置环境 1 3.1 服务器 1

More information

國立中山大學學位論文典藏.PDF

國立中山大學學位論文典藏.PDF I II III IV V VI VII VIII IX X 苷 XI XII 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57

More information

穨ecr2_c.PDF

穨ecr2_c.PDF i ii iii iv v vi vii viii 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 1 26 27 2 28 29 30 31 32 33 34 35 36 37 38 39 40 3 4 41 42 43 5 44 45 46 6 47 48 49 50 51 52 1 53 2 54 55 3 56

More information

電腦相關罪行跨部門工作小組-報告書

電腦相關罪行跨部門工作小組-報告書 - ii - - iii - - iv - - v - - vi - - vii - - viii - (1) 2.1 (2) (3) 13.6 (4) 1.6 (5) 21 (6) (7) 210 (8) (9) (10) (11) ( ) ( 12) 20 60 16 (13) ( ) (

More information

i

i i ii iii iv v vi vii viii ===== 1 2 3 4 5 6 7 8 9 10 ==== 11 12 13 14 15 16 17 18 19 ==== ==== 20 .. ===== ===== ===== ===== ===== ======.. 21 22 ===== ===== ===== ===== 23 24 25 26 27 28 29 ==== ====

More information

发展党员工作手册

发展党员工作手册 发 展 党 员 工 作 问 答 目 录 一 总 论...9 1. 发 展 党 员 工 作 的 方 针 是 什 么? 如 何 正 确 理 解 这 个 方 针?... 9 2. 为 什 么 强 调 发 展 党 员 必 须 保 证 质 量?... 9 3. 如 何 做 到 慎 重 发 展?... 10 4. 如 何 处 理 好 发 展 党 员 工 作 中 的 重 点 与 一 般 的 关 系?...11 5.

More information

i

i 9 1 2 3 4 i 5 6 ii iii iv v vi vii viii 1 1 1 2 3 4 2 5 6 2 3 2.10 ( 2.11 ) ( 2.11 ) ( 2.9 ) 7 8 9 3 10 5% 2% 4 11 93% (2001 02 2003 04 ) ( ) 2,490 (100%) 5 12 25% (2.57% 25%) 6 (2001 02 2003 04 ) 13 100%

More information

39898.indb

39898.indb 1988 4 1998 12 1990 5 40 70.................................................. 40.............................................................. 70..............................................................

More information

第 2 頁 (a) 擔 任 機 場 擴 建 統 籌 辦 總 監 的 首 席 政 府 工 程 師 職 位 第 3 點 ) ; (b) 擔 任 ( 機 場 擴 建 統 籌 辦 ) 的 首 長 級 丙 級 政 務 官 職 位 ; 以 及 (c) 擔 任 總 助 理 ( 機 場 擴 建 統 籌 辦 ) 的

第 2 頁 (a) 擔 任 機 場 擴 建 統 籌 辦 總 監 的 首 席 政 府 工 程 師 職 位 第 3 點 ) ; (b) 擔 任 ( 機 場 擴 建 統 籌 辦 ) 的 首 長 級 丙 級 政 務 官 職 位 ; 以 及 (c) 擔 任 總 助 理 ( 機 場 擴 建 統 籌 辦 ) 的 財 務 委 員 會 人 事 編 制 小 組 委 員 會 討 論 文 件 2015 年 11 月 4 日 總 目 158- 政 府 總 部 : 運 輸 及 房 屋 局 ( 運 輸 科 ) 分 目 000 運 作 開 支 請 各 委 員 向 財 務 委 員 會 提 出 下 述 建 議, 即 由 財 務 委 員 會 批 准 當 日 起, 在 運 輸 及 房 屋 局 運 輸 科 機 場 擴 建 工 程 統

More information

Windows 2003R2系统

Windows 2003R2系统 Windows 2003R2系统 模板封装教程 产品版本 ZStack 2.4.0 Windows 2003R2系统 / 版权声明 版权声明 版权所有 上海云轴信息科技有限公司 2018 保留一切权利 非经本公司书面许可 任何单位和个人不得擅自摘抄 复制本文档内容的部分或全部 并不得以任 何形式传播 商标说明 ZStack商标和其他云轴商标均为上海云轴信息科技有限公司的商标 本文档提及的其他所有商标或注册商标

More information

智力测试故事

智力测试故事 II 980.00 ... 1... 1... 1... 2... 2... 2... 3... 3... 3... 3... 4... 4... 5... 5... 6... 6... 7... 7... 8... 8... 8... 9... 9...10...10...10 I II...11...11...11...12...13...13...13...14...14...14...15...15...15...16...16...17...17...18...18...19...19...19...19...20...20...21...21...21

More information

目 录 院 领 导 职 责... 1 院 长 职 责... 1 医 疗 副 院 长 职 责... 1 教 学 副 院 长 职 责... 2 科 研 副 院 长 职 责... 2 后 勤 副 院 长 职 责... 3 主 管 南 院 区 副 院 长 职 责... 3 党 委 书 记 职 责... 4

目 录 院 领 导 职 责... 1 院 长 职 责... 1 医 疗 副 院 长 职 责... 1 教 学 副 院 长 职 责... 2 科 研 副 院 长 职 责... 2 后 勤 副 院 长 职 责... 3 主 管 南 院 区 副 院 长 职 责... 3 党 委 书 记 职 责... 4 目 录 院 领 导 职 责... 1 院 长 职 责... 1 医 疗 副 院 长 职 责... 1 教 学 副 院 长 职 责... 2 科 研 副 院 长 职 责... 2 后 勤 副 院 长 职 责... 3 主 管 南 院 区 副 院 长 职 责... 3 党 委 书 记 职 责... 4 纪 委 书 记 职 责... 5 院 长 办 公 室... 6 院 长 办 公 室 工 作 职 责...

More information

Cloudy computing forEducation

Cloudy computing forEducation 规 模 企 业 的 云 之 旅 姜 大 勇 威 睿 信 息 技 术 ( 中 国 ) 有 限 公 司 2009 VMware Inc. All rights reserved 背 景 说 明 云 计 算 是 一 种 新 型 的 信 息 资 源 管 理 和 计 算 服 务 模 式, 是 继 大 型 计 算 机 个 人 电 脑 互 联 网 之 后 信 息 产 业 的 一 次 革 命 云 计 算 可 将 分

More information

(b) 3 (a) (b) 7 (a) (i) (ii) (iii) (iv) (v) (vi) (vii) 57

(b) 3 (a) (b) 7 (a) (i) (ii) (iii) (iv) (v) (vi) (vii) 57 (i) (ii) (iii) A. 123 2 3(1) (2) (i) 41 (ii) (iii) 121 4(3) (i) (ii) (iii) 123A 3 (a) 56 (b) 3 (a) (b) 7 (a) (i) (ii) (iii) (iv) (v) (vi) (vii) 57 (viii) (ix) (x) 4B(2)(d) (e) (f) (xi) (xii) (b) (a) (i)

More information

Microsoft Word - NCH final report_CHI _091118_ revised on 10 Dec.doc

Microsoft Word - NCH final report_CHI _091118_ revised on 10 Dec.doc 十 八 區 區 議 會 的 簡 介 會 (1) 東 區 區 議 會 (2008 年 4 月 24 日 ) III. 中 環 新 海 濱 城 市 設 計 研 究 第 二 階 段 公 眾 參 與 ( 東 區 區 議 會 文 件 第 51/08 號 ) 10. 主 席 歡 迎 發 展 局 副 秘 書 長 ( 規 劃 及 地 政 ) 麥 駱 雪 玲 太 平 紳 士 規 劃 署 副 署 長 / 地 區 黃 婉

More information

(i) (ii) (iii) (iv) (v) (vi) (vii) (viii) (ix) (x) (xi) 60.99%39.01%

(i) (ii) (iii) (iv) (v) (vi) (vii) (viii) (ix) (x) (xi) 60.99%39.01% 48.55% 1998 19986 30%20086 2009 2009 200 (i) (ii) (iii) (iv) (v) (vi) (vii) (viii) (ix) (x) (xi) 60.99%39.01% 200820092010 772 928960200820092010 1512928 201 1. 20091222(2009)7267 20042008 16,980,954.02

More information

1 IT IT IT IT Virtual Machine, VM VM VM VM Operating Systems, OS IT

1 IT IT IT IT Virtual Machine, VM VM VM VM Operating Systems, OS IT 1 IT IT IT IT Virtual Machine, VM VM VM VM Operating Systems, OS IT Chapter 1 了解虛擬化技術種類 硬體 / 平台 / 伺服器虛擬化 VM VM VM CPU Hypervisor VMM Virtual Machine Manager VM Host OS VM VM Guest OS Host OS CPU VM Hyper-V

More information

奇闻怪录

奇闻怪录 ... 1... 1... 2... 3... 3... 4... 4... 5... 5... 6... 8... 9... 10... 10... 11... 11... 13... 13... 14... 14... 15... 16... 17... 21 I ... 22... 23... 23... 24... 25... 25... 26... 27... 28... 29 UFO...

More information

1 1 大概思路 创建 WebAPI 创建 CrossMainController 并编写 Nuget 安装 microsoft.aspnet.webapi.cors 跨域设置路由 编写 Jquery EasyUI 界面 运行效果 2 创建 WebAPI 创建 WebAPI, 新建 -> 项目 ->

1 1 大概思路 创建 WebAPI 创建 CrossMainController 并编写 Nuget 安装 microsoft.aspnet.webapi.cors 跨域设置路由 编写 Jquery EasyUI 界面 运行效果 2 创建 WebAPI 创建 WebAPI, 新建 -> 项目 -> 目录 1 大概思路... 1 2 创建 WebAPI... 1 3 创建 CrossMainController 并编写... 1 4 Nuget 安装 microsoft.aspnet.webapi.cors... 4 5 跨域设置路由... 4 6 编写 Jquery EasyUI 界面... 5 7 运行效果... 7 8 总结... 7 1 1 大概思路 创建 WebAPI 创建 CrossMainController

More information

群科課程綱要總體課程計畫書

群科課程綱要總體課程計畫書 核 准 文 號 :102 年 4 月 22 日 臺 教 國 署 高 字 第 1020036237 號 國 立 曾 文 高 級 農 工 職 業 學 校 群 科 課 程 綱 要 總 體 課 程 計 畫 書 (102 學 年 度 入 學 學 生 適 用 ) 中 華 民 國 102 年 04 月 22 日 國 立 曾 文 高 級 農 工 職 業 學 校 群 科 課 程 綱 要 總 體 課 程 計 畫 書 核

More information

IP505SM_manual_cn.doc

IP505SM_manual_cn.doc IP505SM 1 Introduction 1...4...4...4...5 LAN...5...5...6...6...7 LED...7...7 2...9...9...9 3...11...11...12...12...12...14...18 LAN...19 DHCP...20...21 4 PC...22...22 Windows...22 TCP/IP -...22 TCP/IP

More information

前 言 根 据 澳 门 特 别 行 政 区 第 11/1999 号 法 律 第 三 条 规 定, 审 计 长 执 行 其 职 责, 已 经 对 财 政 局 提 交 的 2011 年 度 澳 门 特 别 行 政 区 总 帐 目 ( 总 帐 目 ) 进 行 了 审 计 与 2010 年 度 相 同, 本 年 度 的 总 帐 目 由 政 府 一 般 综 合 帐 目 及 特 定 机 构 汇 总 帐 目, 两

More information

30,000,000 75,000,000 75,000, (i) (ii) (iii) (iv)

30,000,000 75,000,000 75,000, (i) (ii) (iii) (iv) 30,000,000 75,000,000 75,000,000 24 (i) (ii) (iii) (iv) # * 1,800,000 1,800,000 15% 3,400,000 3,400,000 15% 4,200,000 4,200,000 10% 8,600,000 8,600,000 10% 12,600,000 12,600,000 88% 10% 16,000,000 16,000,000

More information

快速安装使用教程

快速安装使用教程 快速安装使用教程 新手快速入门 产品版本 ZStack 3.0.0 快速安装使用教程 / 版权声明 版权声明 版权所有 上海云轴信息科技有限公司 2018 保留一切权利 非经本公司书面许可 任何单位和个人不得擅自摘抄 复制本文档内容的部分或全部 并不得以任 何形式传播 商标说明 ZStack商标和其他云轴商标均为上海云轴信息科技有限公司的商标 本文档提及的其他所有商标或注册商标 由各自的所有人拥有

More information

对联故事

对联故事 980.00 ... 1... 1... 2... 3... 3... 4... 4... 5... 5... 6... 7... 7... 8... 9...10...10...11...12...13...13...14...15...15...16...17 I II...18...18...19...19...20...21...21...22...22...23...24...25...25...26...26...27...28...29...29...30...30...31...32...32...33...34...34...35

More information

I. 1-2 II. 3 III. 4 IV. 5 V. 5 VI. 5 VII. 5 VIII. 6-9 IX. 9 X XI XII. 12 XIII. 13 XIV XV XVI. 16

I. 1-2 II. 3 III. 4 IV. 5 V. 5 VI. 5 VII. 5 VIII. 6-9 IX. 9 X XI XII. 12 XIII. 13 XIV XV XVI. 16 125-0834I/1405/GH I. 1-2 II. 3 III. 4 IV. 5 V. 5 VI. 5 VII. 5 VIII. 6-9 IX. 9 X. 10-11 XI. 11-12 XII. 12 XIII. 13 XIV. 14-15 XV. 15-16 XVI. 16 I. * ++p ++ p ++ ++ * ++p ++ ++ ++p 1 2 ++ ++ ++ ++ ++ I.

More information

一 登录 crm Mobile 系统 : 输入 ShijiCare 用户名和密码, 登录系统, 如图所示 : 第 2 页共 32 页

一 登录 crm Mobile 系统 : 输入 ShijiCare 用户名和密码, 登录系统, 如图所示 : 第 2 页共 32 页 第 1 页共 32 页 crm Mobile V1.0 for IOS 用户手册 一 登录 crm Mobile 系统 : 输入 ShijiCare 用户名和密码, 登录系统, 如图所示 : 第 2 页共 32 页 二 crm Mobile 界面介绍 : 第 3 页共 32 页 三 新建 (New) 功能使用说明 1 选择产品 第 4 页共 32 页 2 填写问题的简要描述和详细描述 第 5 页共

More information

Microsoft Word - Panel Paper on T&D-Chinese _as at 6.2.2013__final_.doc

Microsoft Word - Panel Paper on T&D-Chinese _as at 6.2.2013__final_.doc 二 零 一 三 年 二 月 十 八 日 會 議 討 論 文 件 立 法 會 CB(4)395/12-13(03) 號 文 件 立 法 會 公 務 員 及 資 助 機 構 員 工 事 務 委 員 會 公 務 員 培 訓 及 發 展 概 況 目 的 本 文 件 介 紹 公 務 員 事 務 局 為 公 務 員 所 提 供 培 訓 和 發 展 的 最 新 概 況, 以 及 將 於 二 零 一 三 年 推 出

More information

<4D6963726F736F667420576F7264202D20B1B1BEA9D6B8C4CFD5EBBFC6BCBCB7A2D5B9B9C9B7DDD3D0CFDEB9ABCBBEB4B4D2B5B0E5CAD7B4CEB9ABBFAAB7A2D0D0B9C9C6B1D5D0B9C9CBB5C3F7CAE9A3A8C9EAB1A8B8E532303136C4EA36D4C23230C8D5B1A8CBCDA3A92E646F63>

<4D6963726F736F667420576F7264202D20B1B1BEA9D6B8C4CFD5EBBFC6BCBCB7A2D5B9B9C9B7DDD3D0CFDEB9ABCBBEB4B4D2B5B0E5CAD7B4CEB9ABBFAAB7A2D0D0B9C9C6B1D5D0B9C9CBB5C3F7CAE9A3A8C9EAB1A8B8E532303136C4EA36D4C23230C8D5B1A8CBCDA3A92E646F63> ( 北 京 市 海 淀 区 黑 泉 路 8 号 宝 盛 广 场 B 座 6 层 6001 室 ) 首 次 公 开 发 行 股 票 并 在 创 业 板 上 市 ( 申 报 稿 ) 本 公 司 的 发 行 申 请 尚 未 得 到 中 国 证 监 会 核 准 本 ( 申 报 稿 ) 不 具 有 据 以 发 行 股 票 的 法 律 效 力, 仅 供 预 先 披 露 之 用 投 资 者 应 当 以 正 式 公

More information

快速安装使用教程

快速安装使用教程 快速安装使用教程 新手快速入门 产品版本 ZStack 3.2.0 快速安装使用教程 / 版权声明 版权声明 版权所有 上海云轴信息科技有限公司 2018 保留一切权利 非经本公司书面许可 任何单位和个人不得擅自摘抄 复制本文档内容的部分或全部 并不得以任 何形式传播 商标说明 ZStack商标和其他云轴商标均为上海云轴信息科技有限公司的商标 本文档提及的其他所有商标或注册商标 由各自的所有人拥有

More information

江苏宁沪高速公路股份有限公司.PDF

江苏宁沪高速公路股份有限公司.PDF - 1 - - 2 - - 3 - - 4 - - 5 - - 6 - - 7 - - 8 - 33.33% ( ) ( ) ( ) 33.33% ( ) ( ) ( ) 1 1 1992 8 3200001100976 1997 6 27 H 12.22 2001 1 16 A 1.5 2001 12 3 503,774.75 14,914,399,845.00 13,445,370,274.00

More information

LTM Management Console

LTM Management Console Lenovo Thin Client Manager 用 户 手 册 注 释 警 示 及 警 告 注 释 : 一 条 注 释 是 用 来 说 明 重 要 的 信 息, 帮 助 您 更 好 地 使 用 计 算 机 警 示 : 一 个 警 示 是 用 来 指 出, 如 果 不 依 照 说 明 操 作, 则 可 能 损 坏 硬 件 或 丢 失 数 据 本 出 版 物 中 的 信 息 如 有 更 改, 恕

More information

建築物拆卸作業守則2004年

建築物拆卸作業守則2004年 建 築 物 拆 卸 作 業 守 則 ㆓ 零 零 ㆕ 年 前 言 建 築 物 拆 卸 作 業 守 則 ( 擬 稿 ) 於 ㆒ 九 九 八 年 ㆓ 月 首 次 出 版, 提 供 指 引, 確 保 於 進 行 拆 卸 工 程 時 按 安 全 及 良 好 的 做 法 行 事, 以 及 工 程 合 符 建 築 物 ( 管 理 ) 規 例 及 建 築 物 ( 拆 卸 工 程 ) 規 例 有 關 拆 卸 工 程

More information

长 安 大 学 硕 士 学 位 论 文 基 于 数 据 仓 库 和 数 据 挖 掘 的 行 为 分 析 研 究 姓 名 : 杨 雅 薇 申 请 学 位 级 别 : 硕 士 专 业 : 计 算 机 软 件 与 理 论 指 导 教 师 : 张 卫 钢 20100530 长安大学硕士学位论文 3 1 3系统架构设计 行为分析数据仓库的应用模型由四部分组成 如图3 3所示

More information

A9RF716.tmp

A9RF716.tmp 1 PART I 1 2 3 4 5 6 7 8 Docker Docker Image Container Repository Docker le Docker Docker 8 1 Docker Linux 2 Docker Docker 3 5 Docker 6 Docker volume 7 8 Docker le Docker le 1 C H A P T E R 1 CPU Data

More information

中国石化齐鲁股份有限公司

中国石化齐鲁股份有限公司 2004 2004 3 4 6 9 13 14 15 22 24 26 49 1 2004 9 2 2004 SINOPEC QILU COMPANY LTD. 0533-3583728 lifan@qilu.com.cn 0533-7512530 baoweisong@163.net 0533-3583718 255086 qlsh600002@126.com http://www.qilu.com.cn

More information

目录 1 H3C R4900 G2 服务器可选部件与操作系统兼容性列表 控制卡 GPU 卡 网卡 FC HBA 卡 TPM/TCM 模块 NVMe SSD PCle 加速卡 1-31 i

目录 1 H3C R4900 G2 服务器可选部件与操作系统兼容性列表 控制卡 GPU 卡 网卡 FC HBA 卡 TPM/TCM 模块 NVMe SSD PCle 加速卡 1-31 i 目录 1 H3C R4900 G2 服务器可选部件与操作系统兼容性列表 1-1 1.1 控制卡 1-1 1.2 GPU 卡 1-5 1.3 网卡 1-8 1.4 FC HBA 卡 1-21 1.5 TPM/TCM 模块 1-29 1.6 NVMe SSD PCle 加速卡 1-31 i 1 H3C R4900 G2 服务器可选部件与操作系统兼容性列表 本手册为产品通用资料 对于定制化产品, 请用户以产品实际情况为准

More information

绝妙故事

绝妙故事 980.00 III... 1... 1... 4... 5... 8...10...11...12...14...16...18...20...23...23...24...25...27...29...29...31...34...35...36...39...41 IV...43...44...46...47...48...49...50...51...52...54...56...57...59...60...61...62...63...66...67...68...69...70...72...74...76...77...79...80

More information

尿路感染防治.doc

尿路感染防治.doc ...1...1...2...4...6...7...7...10...12...13...15...16...18...19...24...25...26...27...28 I II...29...30...31...32...33...34...36...37...37...38...40...40...41...43...44...46...47...48...48...49...52 III...55...56...56...57...58

More information

榫 卯 是 什 麼? 何 時 開 始 應 用 於 建 築 中? 38 中 國 傳 統 建 築 的 屋 頂 有 哪 幾 種 形 式? 40 大 內 高 手 的 大 內 指 什 麼? 42 街 坊 四 鄰 的 坊 和 街 分 別 指 什 麼? 44 北 京 四 合 院 的 典 型 格 局 是 怎 樣 的

榫 卯 是 什 麼? 何 時 開 始 應 用 於 建 築 中? 38 中 國 傳 統 建 築 的 屋 頂 有 哪 幾 種 形 式? 40 大 內 高 手 的 大 內 指 什 麼? 42 街 坊 四 鄰 的 坊 和 街 分 別 指 什 麼? 44 北 京 四 合 院 的 典 型 格 局 是 怎 樣 的 目 錄 中 華 醫 藥 以 醫 術 救 人 為 何 被 稱 為 懸 壺 濟 世? 2 什 麼 樣 的 醫 生 才 能 被 稱 為 華 佗 再 世? 4 中 醫 如 何 從 臉 色 看 人 的 特 質? 6 中 醫 怎 樣 從 五 官 看 病? 8 中 醫 看 舌 頭 能 看 出 些 什 麼 來? 10 中 醫 真 的 能 靠 一 個 枕 頭, 三 根 指 頭 診 病 嗎? 12 切 脈 能 判 斷

More information

心理障碍防治(下).doc

心理障碍防治(下).doc ( 20 010010) 787 1092 1/32 498.50 4 980 2004 9 1 2004 9 1 1 1 000 ISBN 7-204-05940-9/R 019 1880.00 ( 20.00 ) ...1...2...2...3...4...5...6...7...8...9...10... 11...12...13...15...16...17...19...21 I ...23...24...26...27...28...30...32...34...37...39...40...42...42...44...47...50...52...56...58...60...64...68

More information

自由軟體教學平台

自由軟體教學平台 NCHC Opensource task force DRBL steven@nchc.gov.tw, c00hkl00@nchc.gov.tw National Center for High-Performance Computing http://www.nchc.gov.tw Jan, 2003 1 2003/1/28 ( ) 09:00-10:30 10:40-12:00 Linux 13:00-14:30

More information

BYOD SDN IT L2 / L3 Channel VLAN ( ) Thin AP SDN L2/L3 QOS ( ) NSX NSX 1. 2 3 2. NSX 3. 4. VMware NSX VMware NSX SDN 032 2015

BYOD SDN IT L2 / L3 Channel VLAN ( ) Thin AP SDN L2/L3 QOS ( ) NSX NSX 1. 2 3 2. NSX 3. 4. VMware NSX VMware NSX SDN 032 2015 BYOD VMware NSX SDN SDN 2008 2009 IEEE InFocom SDN SDN SwitchVLAN TCP/IPSTP SDN TCP/IP TCP/IP ( ) ASIC VPN TCP/IP 031 BYOD SDN IT L2 / L3 Channel VLAN ( ) Thin AP SDN L2/L3 QOS ( ) NSX NSX 1. 2 3 2. NSX

More information

14A 0.1%5% 14A 14A.52 1 2 3 30 2

14A 0.1%5% 14A 14A.52 1 2 3 30 2 2389 30 1 14A 0.1%5% 14A 14A.52 1 2 3 30 2 (a) (b) (c) (d) (e) 3 (i) (ii) (iii) (iv) (v) (vi) (vii) 4 (1) (2) (3) (4) (5) 400,000 (a) 400,000300,000 100,000 5 (b) 30% (i)(ii) 200,000 400,000 400,000 30,000,000

More information

(Chi)_.indb

(Chi)_.indb 1,000,000 4,000,000 1,000,000 10,000,000 30,000,000 V-1 1,000,000 2,000,000 20,000,00010,000,0005,000,000 3,000,000 30 20% 35% 20%30% V-2 1) 2)3) 171 10,000,00050% 35% 171 V-3 30 V-4 50,000100,000 1) 2)

More information

穨_2_.PDF

穨_2_.PDF 6 7.... 9.. 11.. 12... 14.. 15.... 3 .. 17 18.. 20... 25... 27... 29 30.. 4 31 32 34-35 36-38 39 40 5 6 : 1. 2. 1. 55 (2) 2. : 2.1 2.2 2.3 3. 4. ( ) 5. 6. ( ) 7. ( ) 8. ( ) 9. ( ) 10. 7 ( ) 1. 2. 3. 4.

More information