华为云用户手册

  • 创建FAQ 在 KooSearch 控制台,左侧导航栏选择“知识库管理”,进入“知识库管理”页面。 在知识库管理页面,选择已创建的知识库,单击操作列的“文档管理”。 进入“文档管理”页面。 单击“FAQ管理”,切换至“FAQ管理”页签。 单击“创建”,在“新建问答”对话框中输入“标准问题”和“答案”,单击“添加相似问题”,可输入多个相似问题。 在对话框中单击“确认”。 FAQ创建后,可在FAQ管理页签查看已创建的问答。 管理FAQ。 单击操作列的“编辑”,可重新编辑FAQ。 单击操作列的“删除”,可删除已创建的FAQ。 选中表格,单击“批量下载”按钮,可下载选中的FAQ。 单击“全部下载”按钮,会在“任务管理”页签中生成文件包下载任务,当任务状态为“正常”时,可下载对应的文件包(仅支持下载100万条数据)。
  • 上传结构化数据 提前在本地准备好待上传的结构化数据文件。 支持UTF-8无BOM编码的JSONL文件格式,单个文件最大50M,自定义数据长度应在4-1024个字符之间,且文件中仅能使用一种操作。模板如下所示: {"cmd":"ADD","id":"100001","content":"content for the first data"} {"cmd":"ADD","id":"100002","title":"title for the second data","content":"content for the second data","url":"","docTime":"2015/01/01 12:10:30","category":"category1","tags":["tag1","tag2","tag3"]} {"cmd":"UPDATE","id":"100002","content":"The content for the second data is updated","category":"newCategory"} {"cmd":"DELETE","id":"100002"} 在KooSearch控制台,左侧导航栏选择“知识库管理”,进入“知识库管理”页面。 在知识库管理页面,选择已创建的知识库,单击操作列的“文档管理”,进入“文档管理”页面。 单击“结构化数据”,切换至“结构化数据”页签。 单击“上传”,在上传对话框中单击“选择文档”,本地选择已提前准备好的结构化数据文件。 单击“确认”。 文件上传后,可在结构化数据页签查看已上传的文件,当“导入状态”为“正常”,说明文件已上传成功。 管理数据文件。 选中需要下载的文件,单击“批量下载”,会在“任务管理”页签中生成文件包下载任务,请前往“任务管理”页签下载对应的文件包。
  • 批量导入FAQ 提前在本地准备好待导入的FAQ文件。 主要支持xlsx,xls,docx,doc文件类型格式,文件内容请参考Excel样例文件或Word样例文件。Excel单个文件最大支持10000条数据,文件中不允许空行,空行后的数据将被忽略(超过60MB建议通过API上传)。Word单个文件最大为128M,Word中支持图文格式的FAQ。 在KooSearch控制台,左侧导航栏选择“知识库管理”,进入“知识库管理”页面。 在知识库管理页面,选择已创建的知识库,单击操作列的“文档管理”。 进入“文档管理”页面。 单击“FAQ批量导入”,切换至“FAQ批量导入”页签。 单击“上传”,在上传对话框中单击“选择文档”,本地选择已提前准备好的FAQ文件。 图5 FAQ批量导入 在对话框中单击“确认”。 文件上传后,可在“FAQ批量导入”页签查看已上传的文件,当“导入状态”为“正常”,说明文件已导入成功。 管理FAQ文件。 单击操作列的“下载”,可下载文件至本地。 如果导入的FAQ数据不满足格式规范将生成异常数据,可根据异常数据进行FAQ文件修改二次上传;上传的FAQ文档同样支持切片数据的增删改查,详情见文档管理下的切片数据增删改查。 选中需要下载的FAQ,单击“批量下载”按钮,会在任务管理中生成文件包下载任务,请前往任务管理下载对应的文件包。 单击操作列的“删除”,可删除已上传的文件。
  • 上传表格 如果您在创建知识库时,开启了“表格问答”按钮,那么知识库详情页面中就会出现“表格管理”页签,该页签支持上传excel文档生成表格数据,在问答过程中利用表格数据,通过NL2SQL问答可提升统计分析类问题的准确率。 支持上传一份xls、csv、xlsx格式的表格,不能超过128M(超过60MB建议通过API上传)。 上传的表格中列名不允许为空、表头不允许超过三行,否则解析失败。 不建议上传表头在左侧的表格。 在KooSearch控制台,左侧导航栏选择“知识库管理”,进入“知识库管理”页面。 在知识库管理页面,选择已创建的知识库,单击操作列的“文档管理”。 进入“文档管理”页面。 单击“表格管理”,切换至“表格管理”页签。 单击“上传”,依次进行“上传数据表”、“表结构配置”、“数据预览”、“确认入库”操作。 可在表格管理页签查看已上传的表格。 管理表格。 单击操作列的“下载”,可下载表格源文件。 单击“表格名称”可预览生成的数据表内容,并且根据列名查询匹配的数据行;表格详情页面单击“导出”支持按xlsx格式导出当前表数据。 单击操作列的“删除”,可删除已创建的表格。
  • 删除知识库 如果无需使用已创建的知识库,可删除知识库释放资源。 删除知识库同时会删除知识库的业务数据,请谨慎操作。 在KooSearch控制台,左侧导航栏选择“知识库管理”。 进入知识库管理页面。 在知识库管理页面,选择已创建的知识库,单击操作列的“删除”,确认需要删除的知识库信息,在输入框输入要删除的知识库名称后,单击“确认”,删除知识库。 在知识库管理页面,选择已创建的知识库,单击操作列的“文档管理”。 进入文档管理页面。 单击页面右上角的“删除”,确认需要删除的知识库信息,在输入框输入要删除的知识库名称后,单击“确认”,删除知识库。
  • 知识库标签 标签是附加到知识库条目上的关键词或短语,用于描述条目的主题或内容。通过合理使用标签,可以更方便地管理和检索信息,显著提高知识库的组织性和可用性,使用户更容易找到所需的信息。 创建知识库标签有多种入口: 入口一:首次创建知识库时,可以创建。 入口二:在知识库详情页面可以创建。 在创建标签时,键名(Key)和键值(Value)是两个重要的概念,它们用于更详细地描述和分类内容。 键名:是标签的名称,用于标识标签的类型或类别。在一个特定的上下文中,键名通常是唯一的,以避免混淆。键名应该简短且具有描述性,便于理解和使用。仅支持输入中文、英文、数字、下划线 键值:键值是键名对应的值,用于提供具体的描述或信息。键值应该具体且准确,能够清晰地描述内容的特征。仅支持输入中文、英文、数字、下划线。 假设你正在管理一个公司财务数据的数据库,需要为数据库添加标签。以下是一些示例: 键名:headCompany 键值:financialData 创建好知识库标签后,就可以按标签查找知识库。
  • 文档目录管理 如果在创建知识库时或后续需要时开启了“目录管理”开关,知识库详情页的“文档管理”页签会多出文档目录如下图所示,您可以用文档目录将文档分类存放以便管理、查找文档。 下面将介绍如何创建目录: 鼠标悬停在“全部”上,目录上会出现 ,单击,新增目录,最多可新增4个新节点。 鼠标悬停在新增的节点上,节点后会出现修改和删除符号,可以修改节点名称或删除节点。 目录创建好后,选中需要的文档,单击“移动到”按钮,选择一个目录,单击“确定”,可以将此文档放入选择的目录中。 单击选择的目录,检查结果。总目录“全部”里面能看到所有文档,子节点目录里面只能看到放入的文档,“未分类”目录中能看到未被分类的文档。
  • 关闭知识库 创建的知识库默认是开启知识库的,如果问答和搜索时不需要使用该知识库时,可关闭知识库。 进入KooSearch控制台。 左侧导航栏选择“知识库管理”,进入“知识库管理”页面。 选择知识库,在“知识库状态”列,关闭开关,使知识库状态处于“关闭”状态。 图6 关闭知识库 或者单击操作列的“文档管理”,进入“文档管理”页面,关闭知识库状态的开关,使知识库状态处于“关闭”状态。 图7 关闭知识库
  • 文档标签 文档标签是附加到文档上的关键词或短语,用于描述文档主题或内容。通过合理使用标签,可以更方便地管理和检索信息,使用户更容易找到所需的文档。 以下是创建标签的入口: 进入KooSearch控制台。 左侧导航栏选择“知识库管理”。 在“知识库管理”页面,单击知识库名称。 在知识库详情页面的“文档管理”页签,直接单击“文档标签筛选”下拉框或者单击操作列的“编辑标签”。 单击下拉框,再单击“添加标签”。 在添加标签弹出框,先选择一个颜色,再填入标签名称,单击“确定”即可。
  • 版本管理 您创建成功知识库的时候,系统会自动创建一个知识库初始版本,对版本的一些管理操作如下所示: 进入KooSearch控制台。 左侧导航栏选择“知识库管理”,进入“知识库管理”页面。 单击知识库名称,进入知识库详情页面。 单击“版本管理”页签。 您创建好知识库后,系统会默认创建一个初始版本。 如果您需要以此知识库为基础再创建一个知识库版本,单击操作列的“重建”按钮,依次选好参数,即可创建成功。 图4 重建版本 表1 重建知识库 参数 说明 版本名称 输入版本的名称。 Embedding模型服务 重建版本会重新对数据向量化,可以选择此次重建所需要的embedding模型。 重建来源 选择“索引”或者“文档”。 索引:选择索引重建方式是从原先索引的分片内容重新向量化入库。 文档:选择文档重建方式是将文档重新解析入库。选择此重建来源时,要设置解析规则是继承之前的还是用最新的。 继承:使用原先索引文档入库的解析规则。 最新:按照知识库最新的配置重新解析文档。如果要将全部文档重建,可以在知识库设置中,配置好“解析拆分设置”后按文档-最新重建版本。 是否立即激活 选择是,重建完成后,知识库将立即使用新的索引; 选择否,重建完成后,知识库依然使用原先的索引,后续可以手动激活新索引。 说明: 如果选择的“重建来源”是文档,则“是否立即激活”只能选是。 描述 对于重建版本的描述。 重建好版本后,可以对版本进行以下操作。 图5 版本操作 状态为“使用中”的版本可进行如下操作: “重建”:按照步骤4重新建一个版本。 “更新”:可以单击此按钮更新版本描述。 状态为“可用”的版本除了“重建”、“更新”还可以进行如下操作: “关闭”:当版本不用时,可以关闭版本释放索引资源。 “删除”:当不再需要此版本时,可以删除版本。 “激活”:可用状态的版本可以激活,激活后此版本的状态变为“使用中”,之前“使用中”的版本状态变为“可用”。 被关闭的版本可进行如下操作: “启用”:被关闭版本如果想再次使用,可以单击此按钮启用,启用后版本状态会变成“可用”。 “删除”:当不再需要此版本时,可以删除版本。 “更新”:可以单击此按钮更新版本描述。
  • 任务管理 在“文档管理”页签单击“QA生成”、“重试”的任务,都可以在任务管理中查看。“QA生成”的文件可以下载、删除。“重试”生成的任务只支持删除。 进入KooSearch控制台。 左侧导航栏选择“知识库管理”,进入“知识库管理”页面。 单击知识库名称,进入知识库详情页面。 单击“任务管理”页签,勾选需要操作的任务。可进行下载、删除操作。 图3 任务管理 下载的文档可以在“FAQ批量导入”页签中上传使用。
  • 购买量 配置集群包周期的购买时长和续费规则。仅“计费模式”选择“包年/包月”时才显示该参数。 表8 参数说明 参数 说明 购买时长 设置集群的购买时长,最短为1个月,最长为3年。如果购买时长超过9个月,建议包年购买,价格更优惠。 自动续费 选择是否自动续费。默认不启用,如需启用,则勾选“自动续费”选项。 自动续费指在“包年/包月”资源到期后,可以自动进行续费。 按月购买的资源:每次续费1个月,次数不限。 按年购买的资源:每次续费1年,次数不限。 关于自动续费的更多说明,请参见自动续费规则说明。
  • OCR增强 如果您选择的是“敏捷版”,则版本中没有包含OCR功能,需要您选择是否开通此功能,如果开通此功能,OCR增强插件会创建委托访问 文字识别 服务,需额外计费,您还需要开通文字识别的智能文档解析和 通用文字识别 功能,支持按需或套餐包购买。单击这里开通文字识别服务,单击这里查看计费规则。 按需计费时,如果开通OCR服务,每一页pdf都会调用一次OCR服务,都会计费一次。如果pdf中有图片,图片还会调用一次OCR。 表5 IAM 委托 参数 说明 IAM委托 选择IAM委托,授权当前账号访问和使用OCR服务的权限。 当首次配置委托时,可以单击“自动创建委托”新建委托“css_ocr_agency”直接使用。 当已有自动创建的委托时,可以选择委托直接使用。 警告: 委托名称必须仅包含字符a-z、A-Z、0-9、下划线(_)和短横线(-),否则会备份失败。
  • 集群管理 配置集群名称、企业项目信息。 表7 参数说明 参数 说明 集群名称 自定义集群名称。 集群名称在4位到16位之间,必须以字母开头,可以包含字母、数字、中划线或者下划线,不能包含其他的特殊字符。 添加描述 为集群添加描述,方便用户识别。 单击“添加描述”,输入集群的描述信息,支持0~128位。 企业项目 给集群绑定一个企业项目。 企业项目是一种云资源管理方式,企业项目管理服务提供统一的云资源按项目管理,以及项目内的资源管理、成员管理,默认项目为“default”。 如果开通了“企业项目”,请从下拉列表中选择所在的企业项目。单击查看项目管理,可以跳转到企业项目管理列表,查看企业项目详情。更多关于企业项目的信息,请参见进入企业中心《企业管理用户指南》中的“企业中心”章节。
  • 文本向量化和排序(Text-Embedding-Rank)(可选) 支持多款不同语言、输入长度、输出维度的文本向量模型,提供 Query-to-Doc 与 Query-to-Query 两大核心能力;搭配精排模型提供 Query 与文档的相关性排序服务,可在 RAG 及搜索场景中显著提升检索准确度。 勾选“文本向量化和排序”:开通KooSearch文档问答服务时会自动创建文本向量模型服务和精排模型服务。 不勾选“文本向量化和排序”:开通KooSearch文档问答服务就不会自动创建文本向量模型服务和精排模型服务,会影响KooSearch知识库的使用。如后期有需要,可以在模型管理页面自定义配置“搜索Embedding模型”、“搜索精排模型”和“缓存生成模型”,具体操作请参见创建及管理KooSearch模型服务。
  • 搜索规划(Search-Plan)配置(可选) 基于大模型技术实现 Query 改写,可将复杂原始 Query 拆解为多个子问题,并完成 Query 分类判定;该能力应用于 RAG 场景,能显著提升检索精确度与答案生成效率。 开关打开:开通KooSearch文档问答服务时会自动创建搜索规划的模型服务,该模型服务提供意图识别和query改写功能。 开关关闭:开通KooSearch文档问答服务就不会自动创建搜索规划的模型服务,会影响KooSearch知识库的使用。如后期有需要,可以在模型管理页面自定义配置“搜索规划模型”,具体操作请参见创建及管理KooSearch模型服务。
  • 创建向量数据库 向量数据库负责业务数据的存储与查询。配置数据库参数,开通文档问答服务后,会根据数据库配置自动创建向量数据库。 表2 向量集群参数说明 参数 说明 可用区 指在同一地域下,电力、网络隔离的物理区域,可用分区之内内网互通,不同可用分区之间物理隔离。选择集群工作区域下关联的可用区。 CPU架构 目前支持“X86计算”和“鲲鹏计算”两种类型。具体支持的类型由实际区域环境决定。 数据节点规格 单击“选择节点规格”,在弹框中选择合适的规格。 节点规格分为本地盘和云硬盘两种类型。各个规格的详细说明请参见实例类型《弹性云服务器用户指南》的实例类型章节。 规格列表的“vCPUs | 内存”呈现了规格的CPU核数和内存,“建议存储范围”呈现了该规格支持的存储容量。 不同区域支持的节点规格不同,请以实际环境为准。 警告: 本地盘存在异常退出风险,可能导致数据丢失且不可恢复,因此不适用于核心业务数据存储场景。建议关键业务数据优先选用云硬盘存储。 数据节点存储类型 选择节点的存储类型,支持:高I/O、超高I/O。不同可用区和实例规格所支持的存储类型不同,具体支持的存储类型由实际区域环境决定。建议选择超高I/O。 数据节点存储容量 选择节点的存储空间大小,可选范围为100GB~6400GB。 节点存储容量只支持配置为20的倍数。 数据节点数量 向量数据库中的节点个数。可选节点数为1~32,建议节点数为3或3以上,以提升集群可用性。 安全模式 选择是否开启集群安全模式。 开启后,则创建的是安全模式的集群,访问集群需要安全认证,会影响数据的索引和搜索性能。必须配置集群的“管理员账户名”和“管理员密码”。 管理员账户名默认为admin。 设置并确认管理员密码。要记住设置的密码,后续访问集群需要输入密码。 不开启,则创建的是非安全模式的集群。非安全模式的集群无需安全认证即可访问,并且采用HTTP明文传输数据。建议确认访问环境的安全性,勿将访问接口暴露到公网环境上。
  • 网络配置 配置集群的 虚拟私有云VPC 、子网和安全组。 表6 网络配置 参数 说明 虚拟私有云 指定集群使用的 虚拟专用网络 ,可以对不同业务进行网络隔离。 选择合适的VPC,如果没有合适的VPC,可以单击“创建虚拟私有云”,新建VPC(必须具备创建VPC的权限)。具体操作请参见创建虚拟私有云和子网《虚拟私有云用户指南》中的“创建虚拟私有云和子网”章节。 子网 指定集群使用的子网,通过子网提供与其他网络隔离的、可以独享的网络资源,以提高网络安全。 选择当前虚拟私有云下的子网。如果没有合适的子网,可以单击“创建子网”,新建子网。具体操作请参见创建虚拟私有云和子网《虚拟私有云用户指南》中的“创建虚拟私有云和子网”章节。 安全组 指定集群使用的安全组,安全组起着虚拟防火墙的作用,为集群提供安全的网络访问控制策略。 选择合适的安全组,单击“查看安全组”可以跳转到安全组列表,了解安全组详情。 所选安全组的入方向规则中,“协议端口”必须包含9200的端口范围,否则外部业务访问可能会异常。 如果没有合适的安全组,可以单击“创建安全组”,跳转到网络控制台创建安全组(必须具备创建VPC的权限)。具体操作请参见创建安全组。
  • 基础配置 配置集群基础参数。 表1 基础配置参数说明 参数 说明 当前区域 下拉框中选择KooSearch服务的工作区域。 不同区域的资源之间内网不互通,请选择靠近您业务的区域,可以降低网络时延,提高访问速度。 服务规格 支持以下四种规格。 敏捷版:适用于企业大规模团队,开箱即用,独立部署,性能更优,更安全。PDF和扫描件需要OCR智能文档解析服务额外按需计费。 基础版:适用于企业大规模团队,开箱即用,独立部署,性能更优,更安全。支持百万级文档,已经包含了2并发的OCR智能文档解析服务。 专业版:适用于企业大规模团队,开箱即用,独立部署,性能更优,更安全。支持百万级文档,已经包含了OCR智能文档解析服务。 企业版:适用于企业大规模团队,开箱即用,独立部署,性能更优,更安全。支持百万级文档,已经包含了OCR智能文档解析服务,支持效果调优。 计费模式 服务支持包年/包月和按需计费两种模式。 按需计费:按实际使用时长计费,计费周期为一小时,不足一小时按一小时计费。 包年/包月:根据服务购买时长,一次性支付集群费用。最短时长为1个月,最长时长为1年。
  • 基于VirtualBox使用ISO制作镜像的操作流程 本文指导用户基于VirtualBox使用ISO文件制作镜像,操作流程如下图所示: 图1 操作流程 安装VirtualBox:用户首先需要准备一台宿主机,建议使用Windows 64位操作系统,然后在该宿主机上安装VirtualBox。安装前的准备工作及详细的安装流程参见安装VirtualBox。 创建虚拟机:在VirtualBox上创建一台空虚拟机,作为镜像的原始框架。具体操作参见创建空虚拟机操作步骤。 安装操作系统:通过挂载ISO文件的方式为空虚拟机安装操作系统,您希望最终的镜像是什么系统,就要在这一步准备什么系统的ISO文件。具体操作参见安装Windows操作系统。 安装软件和插件:为保证最终制作的镜像可以成功发放弹性云服务器,并且弹性云服务器运行正常,那么在制作时必须在虚拟机中安装所依赖的软件和插件,包括virtio驱动、Cloudbase-Init、一键式重置密码插件等。具体操作参见配置Windows虚拟机。 获取镜像文件:在VirtualBox上导出vhd格式的镜像文件,具体操作参见导出Windows镜像文件。 注册私有镜像:将导出的vhd镜像文件上传至OBS桶,并注册为私有镜像。这样,您在创建弹性云服务器时,就可以使用该私有镜像了。具体操作参见上传Windows镜像文件并注册镜像。
  • 资源和成本规划 表1 资源和成本规划 资源 资源说明 成本说明 VirtualBox工具 VirtualBox是一款开源免费跨平台的虚拟机软件。 VirtualBox官方下载地址:https://www.virtualbox.org/wiki/Downloads。 免费 virtio驱动 使用弹性云服务器或者外部镜像文件创建私有镜像时,必须确保操作系统中已安装virtio驱动,使新发放的云服务器支持KVM虚拟化,同时也可以提升云服务器的网络性能。 获取方式: https://fedorapeople.org/groups/virt/virtio-win/direct-downloads/archive-virtio/ 免费 ISO镜像文件 用于为新创建的空虚拟机安装操作系统,需要用户自行提供。 文件名称:Windows_server_2008_r2.iso - Cloudbase-Init工具(可选) 为了保证使用生成的镜像创建的新云服务器可以自定义配置(例如修改云服务器密码),建议您安装Cloudbase-Init工具。不安装Cloudbase-Init工具,将无法对云服务器进行自定义配置,只能使用镜像原有密码登录云服务器。 获取方式:https://www.cloudbase.it/cloud-init-for-windows-instances/。 免费 一键式重置密码插件(可选) 为了保证使用生成的镜像创建的新云服务器可以实现一键式重置密码功能,建议您安装密码重置插件CloudResetPwdAgent,可以应用一键式重置密码功能,给云服务器设置新密码。 获取方式:https://cn-south-1-cloud-reset-pwd.obs.cn-south-1.myhuaweicloud.com/windows/reset_pwd_agent/CloudResetPwdAgent.zip 免费
  • 典型应用举例 应用场景 用户从VMware平台导出一个pre-allocated格式的镜像文件(pre-allocated格式是VMDK monolithic Flat子格式类型),pre-allocated格式镜像依赖2个文件“xxxx.vmdk”和“xxxx-flat.vmdk”(“xxxx.vmdk”是一个配置文件,“xxxx-flat.vmdk”是实际数据文件),这两种格式的镜像文件不能直接导入到云平台,需提前转换成通用的vmdk或qcow2格式才能导入。 以下以镜像文件格式为centos6.9-64bit-flat.vmdk和centos6.9-64bit.vmdk为例,通过qemu-img工具转换镜像格式。 操作步骤 执行如下命令,查询镜像文件的详细信息。 ls -lh centos6.9-64bit* qemu-img info centos6.9-64bit.vmdk qemu-img info centos6.9-64bit-flat.vmdk 回显信息如下所示: [root@CentOS7 tmp]# ls -lh centos6.9-64bit* -rw-r--r--. 1 root root 10G Jun 13 05:30 centos6.9-64bit-flat.vmdk -rw-r--r--. 1 root root 327 Jun 13 05:30 centos6.9-64bit.vmdk [root@CentOS7 tmp]# qemu-img info centos6.9-64bit.vmdk image: centos6.9-64bit.vmdk file format: vmdk virtual size: 10G (10737418240 bytes) disk size: 4.0K Format specific information: cid: 3302005459 parent cid: 4294967295 create type: monolithicFlat extents: [0]: virtual size: 10737418240 filename: centos6.9-64bit-flat.vmdk format: FLAT [root@CentOS7 tmp]# qemu-img info centos6.9-64bit-flat.vmdk image: centos6.9-64bit-flat.vmdk file format: raw virtual size: 10G (10737418240 bytes) disk size: 0 从回显信息中看出,centos6.9-64bit.vmdk文件的格式为vmdk,centos6.9-64bit-flat.vmdk文件的格式为raw,在执行镜像格式转换命令时,源镜像文件必须使用centos6.9-64bit.vmdk(详见步骤3)。 执行如下命令,查看pre-allocated格式的镜像文件的相关配置信息。 cat centos6.9-64bit.vmdk 回显信息如下所示: [root@CentOS7 tmp]# cat centos6.9-64bit.vmdk # Disk DescriptorFile version=1 CID=c4d09ad3 parentCID=ffffffff createType="monolithicFlat" # Extent description RW 20971520 FLAT "centos6.9-64bit-flat.vmdk" 0 # The Disk Data Base #DDB ddb.virtualHWVersion = "4" ddb.geometry.cylinders = "20805" ddb.geometry.heads = "16" ddb.geometry.sectors = "63" ddb.adapterType = "ide" 将centos6.9-64bit-flat.vmdk和centos6.9-64bit.vmdk放在同一个目录下,执行如下命令,通过qemu-img工具转换镜像格式为qcow2。 [root@CentOS7 tmp]# qemu-img convert -p -f vmdk -O qcow2 centos6.9-64bit.vmdk centos6.9-64bit.qcow2 (100.00/100%) 执行如下命令,查询转换后的qcow2格式镜像文件的详细信息。 qemu-img info centos6.9-64bit.qcow2 回显信息如下所示: [root@CentOS7 tmp]# qemu-img info centos6.9-64bit.qcow2 image: centos6.9-64bit.qcow2 file format: qcow2 virtual size: 10G (10737418240 bytes) disk size: 200K cluster_size: 65536 Format specific information: compat: 1.1 lazy refcounts: false
  • 本地为Linux操作系统 操作过程中如果出现报错,可参考附2:执行qemu-img-hw常见报错。 安装qemu-img。 Ubuntu、Debian系列操作系统,请执行如下命令: apt install qemu-utils CentOS、Red Hat、Oracle系列操作系统,请执行如下命令: yum install qemu-img SUSE、openSUSE系列操作系统,请执行如下命令: zypper install qemu-img 执行如下命令,验证安装成功。 qemu-img -v 如回显信息中出现qemu-img工具的版本信息和帮助手册,即表示安装成功。以CentOS 7为例,回显信息如下所示: [root@CentOS7 ~]# qemu-img -v qemu-img version 1.5.3, Copyright (c) 2004-2008 Fabrice Bellard usage: qemu-img command [command options] QEMU disk image utility Command syntax: check [-q] [-f fmt] [--output=ofmt] [-r [leaks | all]] [-T src_cache] filename create [-q] [-f fmt] [-o options] filename [size] commit [-q] [-f fmt] [-t cache] filename compare [-f fmt] [-F fmt] [-T src_cach] 转换镜像格式,以CentOS 7操作系统中转换vmdk格式为qcow2格式的镜像为例。 执行如下命令转换镜像文件格式。 qemu-img convert -p -f vmdk -O qcow2 centos6.9.vmdk centos6.9.qcow2 上述命令中各参数对应的说明如下: -p标识转换的进度条。 -f后面为源镜像格式。 -O(必须是大写)后面的参数为转换出来的镜像格式 + 源镜像文件名称 + 目标文件名称。 转换完成后,目标文件会出现在源镜像文件所在的目录下。 回显信息如下所示: [root@CentOS7 home]# qemu-img convert -p -f vmdk -O qcow2 centos6.9.vmdk centos6.9.qcow2 (100.00/100%) 执行如下命令,查询转换后的qcow2格式镜像文件的详细信息。 qemu-img info centos6.9.qcow2 回显信息如下所示: [root@CentOS7 home]# qemu-img info centos6.9.qcow2 image: centos6.9.qcow2 file format: qcow2 virtual size: 1.0G (1073741824 bytes) disk size: 200K cluster_size: 65536 Format specific information: compat: 1.1 lazy refcounts: false
  • 约束与限制 qemu-img镜像格式转换工具支持vhd、vmdk、qcow2、raw、vhdx、qcow、vdi或qed社区格式镜像的相互转换。 zvhd和zvhd2是云服务内部自研格式,qemu-img工具无法识别这两种格式的镜像文件。如需将镜像文件转换为这两种格式,请使用自研qemu-img-hw工具,详细指导参见转换镜像格式(qemu-img-hw)。 vhd格式镜像在执行命令转换格式时请使用vpc代替。 例如,将CentOS 6.9镜像的vhd格式转换为qcow2格式,请执行如下命令: qemu-img convert -p -f vpc -O qcow2 centos6.9.vhd centos6.9.qcow2 如遇报错,请删除-f vpc,qemu-img工具将自动识别镜像格式。
  • 检查Cloud-Init工具相关配置是否成功 执行以下命令,无错误发生,说明Cloud-Init配置成功。 cloud-init init --local 正确安装的Cloud-Init会显示Cloud-Init的版本详细信息,并且无任何错误信息。例如,正确安装的情况下,不含有缺少文件的提示信息。 执行如下命令,可将系统用户密码有效期设置为最大。此操作可选。 chage -M 99999 $user_name 其中,user_name为系统用户,例如root账户。 密码有效期建议设置为99999。
  • Red Hat、Oracle、CentOS 6.x&7.x、EulerOS 2.x和Fedora 22及以上版本 请执行如下操作,使用NetworkManager自动化虚拟机的网络配置。 执行如下命令安装NetworkManager。 yum install NetworkManager 在“/etc/sysconfig/network-scripts/”目录下删除ifcfg-eth1到ifcfg-eth11,只保留ifcfg-eth0。 执行如下命令,关闭network。 service network stop 执行如下命令,关闭network自启动。 chkconfig network off 执行如下命令,重启messagebus和NetworkManager,并设置NetworkManager开机自启动。 service messagebus restart service NetworkManager restart chkconfig NetworkManager on
  • Ubuntu 14及以上版本 请执行如下操作,使用NetworkManager自动化虚拟机的网络配置。 执行如下命令安装NetworkManager。 apt-get install network-manager 在“/etc/NetworkManager/NetworkManager.conf”里修改为此设置:managed=true。 修改“/etc/network/interfaces”只保留eth0。 执行如下命令,关闭network。 service networking stop 执行如下命令,关闭network自启动。 chkconfig network off 执行如下命令,重启dbus和NetworkManager。 service dbus restart service network-manager restart
  • 安装一键式重置密码插件(可选) 为了保证使用生成的镜像创建的新云服务器可以实现一键式重置密码功能,建议您安装密码重置插件CloudResetPwdAgent,可以应用一键式重置密码功能,给云服务器设置新密码。 下载一键式重置密码插件CloudResetPwdAgent。 虚拟机需要绑定弹性公网IP才能自动更新一键式重置密码插件。 下载并解压软件包CloudResetPwdAgent.zip。 32位操作系统下载地址:http://cn-south-1-cloud-reset-pwd.obs.cn-south-1.myhuaweicloud.com/linux/32/reset_pwd_agent/CloudResetPwdAgent.zip 64位操作系统下载地址:http://cn-south-1-cloud-reset-pwd.obs.cn-south-1.myhuaweicloud.com/linux/64/reset_pwd_agent/CloudResetPwdAgent.zip 执行以下命令,解压软件包CloudResetPwdAgent.zip。 unzip -o -d 插件解压目录 CloudResetPwdAgent.zip 安装一键式重置密码插件对插件的解压目录无特殊要求,请自定义。例如插件解压的目录为“/home/PwdAgent/test”,则命令如下: unzip -o -d /home/PwdAgent/test CloudResetPwdAgent.zip 安装一键式重置密码插件。 执行以下命令,进入文件CloudResetPwdAgent.Linux。 cd CloudResetPwdAgent/CloudResetPwdAgent.Linux 执行以下命令,添加文件setup.sh的运行权限。 chmod +x setup.sh 执行以下命令,安装插件。 sudo sh setup.sh 如果脚本执行成功打印“cloudResetPwdAgent install successfully.”,且未打印“Failed to start service cloudResetPwdAgent”,表示安装成功。 如果密码重置插件安装失败,请检查安装环境是否符合要求,并重试安装操作。
  • Debian 9.0及以上版本 请执行如下操作,使用NetworkManager自动化虚拟机的网络配置。 执行如下命令安装NetworkManager。 apt-get install network-manager 在“/etc/NetworkManager/NetworkManager.conf”里修改为此设置:managed=true。 修改“/etc/network/interfaces”只保留eth0。 执行如下命令,关闭network,重启messagebus和NetworkManager,并设置NetworkManager开机自启动。 service network-manager restart chkconfig network-manager on service networking stop service messagebus restart service network-manager restart
  • 采用官方提供的包源安装Cloud-Init工具(优先推荐) 在不同操作系统安装Cloud-Init工具的方法不同,请在root用户下执行相关安装操作。 以下将介绍SUSE、CentOS、Fedora、Debian和Ubuntu操作系统安装Cloud-Init工具的具体方法。其他操作系统类型,请安装并配置对应类型的Cloud-Init工具,例如,使用CoreOS操作系统时需安装并配置coreos-cloudinit。 SUSE操作系统 SUSE操作系统的Cloud-Init网络安装地址: https://ftp5.gwdg.de/pub/opensuse/repositories/Cloud:/Tools/ https://download.opensuse.org/repositories/Cloud:/Tools/ 在上述提供的网络安装地址下选择相应操作系统版本的repo安装包进行安装。 以SUSE Enterprise Linux Server 12为例,Cloud-Init工具的安装步骤如下。 登录到创建Linux私有镜像所使用的虚拟机。 执行以下命令,安装SUSE 12的网络安装源。 zypper ar https://ftp5.gwdg.de/pub/opensuse/repositories/Cloud:/Tools/SLE_12_SP3/Cloud:Tools.repo 执行以下命令,更新网络安装源。 zypper refresh 执行以下命令,安装Cloud-Init。 zypper install cloud-init 执行以下命令,设置Cloud-Init为开机自启动服务。 SUSE 11: chkconfig cloud-init-local on; chkconfig cloud-init on; chkconfig cloud-config on; chkconfig cloud-final on service cloud-init-local status; service cloud-init status; service cloud-config status; service cloud-final status SUSE 12以及openSUSE 12/13/42: systemctl enable cloud-init-local.service cloud-init.service cloud-config.service cloud-final.service systemctl status cloud-init-local.service cloud-init.service cloud-config.service cloud-final.service 对于SUSE和openSUSE操作系统,请执行以下步骤禁止动态修改主机名称。 执行以下命令,使用vi编辑器打开“dhcp”文件。 vi etc/sysconfig/network/dhcp 将“dhcp”文件中的“DHCLIENT_SET_HOSTNAME”的值修改为“no”。 CentOS操作系统 CentOS操作系统的Cloud-Init网络安装地址如表1所示。请在提供的网络安装地址下选择相应的epel-release安装包进行安装。 表1 Cloud-Init网络安装地址 操作系统类型 版本 网络安装地址 CentOS 6系列32位 https://archives.fedoraproject.org/pub/archive/epel/6/i386/ 6系列64位 https://archives.fedoraproject.org/pub/archive/epel/6/x86_64/ 7系列64位 https://archives.fedoraproject.org/pub/archive/epel/7/x86_64/Packages/e/ 执行以下命令安装Cloud-Init: yum install 网络安装地址/epel-release-x-y.noarch.rpm yum install cloud-init “网络安装地址”表示Cloud-Init对应的epel-release安装包的地址,“x-y”表示当前操作系统对应的Cloud-Init epel-release版本号,执行命令时需参考表1以及实际使用的安装包版本进行替换。 以CentOS 6系列64位为例,当前版本号为6.8,则命令修改为: yum install https://archives.fedoraproject.org/pub/archive/epel/6/x86_64/epel-release-6-8.noarch.rpm 以CentOS 7系列64位为例,当前版本号为7.14,则命令修改为: yum install https://archives.fedoraproject.org/pub/archive/epel/7/x86_64/Packages/e/epel-release-7-14.noarch.rpm 执行以下命令,设置Cloud-Init为开机自启动服务。 systemctl enable cloud-init-local.service cloud-init.service cloud-config.service cloud-final.service systemctl status cloud-init-local.service cloud-init.service cloud-config.service cloud-final.service Fedora操作系统 安装Cloud-Init前,请确认操作系统已经配置好对应的网络安装源地址,请查看“/etc/yum.repo.d/fedora.repo”文件中是否已配置相关软件包安装源地址,如果没有配置相关地址源,请参考相关Fedora官网信息配置软件包安装源。 执行以下命令,安装Cloud-Init。 yum install cloud-init 执行以下命令,设置Cloud-Init为开机自启动服务。 systemctl enable cloud-init-local.service cloud-init.service cloud-config.service cloud-final.service systemctl status cloud-init-local.service cloud-init.service cloud-config.service cloud-final.service Debian和Ubuntu操作系统 安装Cloud-Init前,请确认操作系统已经配置好对应的网络安装源地址,请查看“/etc/apt/sources.list”文件中是否已配置相关软件包安装源地址,如果没有配置相关地址源,请参考Debian或者Ubuntu官网信息配置软件包安装源。 执行以下命令,安装Cloud-Init。 apt-get update apt-get install cloud-init 执行以下命令,设置Cloud-Init为开机自启动服务。 systemctl enable cloud-init-local.service cloud-init.service cloud-config.service cloud-final.service systemctl status cloud-init-local.service cloud-init.service cloud-config.service cloud-final.service 以cloud-init-23.2.2版本为例,介绍Centos、Fedora、Ubuntu、Debian和SUSE操作系统安装Cloud-Init工具的具体方法,安装步骤如下。 cloud-init-23.2.2.tar.gz源码包下载地址:https://launchpad.net/cloud-init/trunk/23.2.2/+download/cloud-init-23.2.2.tar.gz Centos 7/Fedora (Fedora-Server-36)操作系统 依赖python3 环境,确认已经安装python3。 查询当前系统环境是否已安装cloud-init, 执行有结果表示已经安装。 cloud-init -v 删除cloud-init缓存目录。 rm -rf /var/lib/cloud/* 安装cloud-init依赖包。 yum install python3-pip -y yum install python3-devel 执行如下命令,下载cloud-init压缩包。 wget https://launchpad.net/cloud-init/trunk/23.2.2/+download/cloud-init-23.2.2.tar.gz 执行如下命令,解压cloud-init压缩包。 tar -zxvf cloud-init-23.2.2.tar.gz 执行如下命令进入cloud-init-23.2.2目录文件夹,并安装所有依赖库。 cd cloud-init-23.2.2 pip3 install -r requirements.txt 执行如下命令安装cloud-init。 python3 setup.py build python3 setup.py install --init-system systemd 在配置文件/etc/cloud/cloud.cfg禁用cloud-init接管网络(可选)。 vi /etc/cloud/cloud.cfg 添加如下内容: network: config: disabled 重启cloud-init, 查看cloud-init 状态。 systemctl restart cloud-init-local.service cloud-init.service cloud-config.service cloud-final.service systemctl status cloud-init-local.service cloud-init.service cloud-config.service cloud-final.service 设置cloud-init相关服务为开机自启动。 systemctl enable cloud-init-local.service cloud-init.service cloud-config.service cloud-final.service 执行如下命令检查cloud-init版本以及是否正常运行。 cloud-init -v cloud-init init --local Ubuntu22.0.4/debian11操作系统 依赖python3 环境,确认已经安装python3。 检查并清理系统自带的cloud-init可能存在冗余的配置文件。 rm -rf /var/lib/cloud/* rm -f /var/log/cloud-init* 删除/etc/cloud/cloud.cfg.d/目录下除了log相关的配置文件外的所有文件。 执行如下命令更新apt,检查是否有wget,没有则安装。 sudo apt update sudo apt install wget 执行如下命令,安装依赖包。 apt-get install cloud-guest-utils -y apt-get install python3-pip -y apt-get install python3-devel 执行以下命令,下载cloud-init压缩包。 wget https://launchpad.net/cloud-init/trunk/23.2.2/+download/cloud-init-23.2.2.tar.gz 执行如下命令,解压cloud-init压缩包。 tar -zxvf cloud-init-23.2.2.tar.gz 进入cloud-init目录。 cd cloud-init-23.2.2 执行如下命令安装所有依赖库。 pip3 install -r requirements.txt 执行如下命令安装cloud-init。 python3 setup.py install 在vi /etc/cloud/cloud.cfg配置禁止cloud-init接管网络(可选)。 1.当cloud-init版本等于高于0.7.9版本,且用户需要自定义网络时,在cloud-init安装完成后,请执行如下命令,在编辑器中打开/etc/cloud/cloud.cfg。 vi /etc/cloud/cloud.cfg 2.输入i, 在/etc/cloud/cloud.cfg中将network修改为disabled, 禁用Cloud-Init接管网络配置(若没有该配置项请增加): network: config: disabled 重启cloud-init, 查看cloud-init 状态。 systemctl restart cloud-init-local.service cloud-init.service cloud-config.service cloud-final.service systemctl status cloud-init-local.service cloud-init.service cloud-config.service cloud-final.service 设置cloud-init相关服务为开机自启动。 systemctl enable cloud-init-local.service cloud-init.service cloud-config.service cloud-final.service 执行如下命令检查cloud-init版本以及是否正常运行。 cloud-init -v cloud-init init --local SUSE Enterprise Linux Server 15操作系统 依赖python3 环境,确认已经安装python3。 执行如下命令查看历史已配置好的安装源。 zypper lr 执行如下命令删除历史配置的suse的cloud-init的源。 zypper rr 步骤1中执行结果显示的序号 执行如下命令配置suse源。 zypper ar https://ftp5.gwdg.de/pub/opensuse/repositories/Cloud:/Tools/SLE_15_SP4/Cloud:Tools.repo 执行如下命令刷新suse源。 zypper refresh 执行如下命令安装cloud-init。 zypper install cloud-init 安装cloud-init成功后,执行cloud-init -v,若出现类似下图报错提示,需执行如下命令安装依赖包。 pip install requests pyyaml oauthlib jsonschema jsonpatch jinja2 configobj 检查cloud-init是否安装成功,若出现下图报错提示,则需要在/etc/cloud/cloud.cfg配置datasource_list。 datasource_list: [ OpenStack ] datasource: OpenStack: metadata_urls: ['http://169.254.169.254'] max_wait: 120 timeout: 5 apply_network_config: false 修改配置文件后,重启cloud-init, 并查看cloud-init 的状态。 systemctl restart cloud-init-local.service cloud-init.service cloud-config.service cloud-final.service systemctl status cloud-init-local.service cloud-init.service cloud-config.service cloud-final.service 设置cloud-init相关服务为开机自启动。 systemctl enable cloud-init-local.service cloud-init.service cloud-config.service cloud-final.service 执行如下命令检查cloud-init版本以及是否正常运行。 cloud-init -v cloud-init init --local
共93522条