华为云用户手册

  • 操作步骤 登录云耀云服务器Fusion实例管理控制台。 在“增值服务”列表中,单击待添加监听器的云耀负载均衡实例。 在“概览”页签单击“添加监听器”。 根据界面提示配置监听器,单击“确定”。 配置监听器 参数 说明 名称 监听器名称。 前端协议/前端端口 负载分发的协议和端口,仅支持HTTP协议/80端口。 配置后端分配策略 参数 说明 后端服务器组 后端服务器组名称,例如server_group_01。 后端协议 仅支持HTTP协议。 分配策略类型 负载均衡采用的算法,仅支持加权轮询算法。 添加后端服务器 单击“添加云耀云服务器Fusion实例”,勾选待添加的实例名称后,单击“确定”。 如果尚未购买云耀云服务器Fusion实例,请点击“购买云耀云服务器Fusion实例”进行购买。购买的具体操作详见购买云耀云服务器Fusion实例套餐。 如果界面没有显示您的云耀云服务器Fusion实例,请检查您的云耀负载均衡实例是否和云耀云服务器Fusion实例在同一个区域。云耀负载均衡仅支持添加同区域的云耀云服务器Fusion实例。 添加后端服务器后可查看服务器信息。 参数 说明 云耀云服务器Fusion实例名称 云耀负载均衡绑定的云耀云服务器Fusion实例。 私有IP地址 云耀负载均衡绑定的云耀云服务器Fusion实例中云服务器的私有IP地址。 后端端口 仅支持80端口。 权重 后端服务器的权重默认为1,且不支持修改,负载均衡器将按照简单的轮询策略分发请求。 操作 可删除不需要绑定的云耀云服务器Fusion实例。 单击“确定”,完成添加监听器操作,并可以看到添加的监听器信息。 参数 说明 监听器名称 已添加的监听器名称及监听器ID。 前端协议/端口 负载分发的协议和端口,仅支持HTTP协议/80端口。 后端服务器组 可查看或继续添加服务器组中的云耀云服务器Fusion实例。 分配策略类型 负载均衡采用的算法,仅支持加权轮询算法。 健康检查 健康检查状态。健康检查默认开启,用于检查后端服务器状态。 正常:后端服务器可用。 异常:后端服务器不可用。 操作 可删除不需要的监听器。
  • 解析域名 在服务器“域名”页签,单击域名操作列表中的“解析域名”。 配置如下信息,将域名或子域名解析至当前云服务器的公网IP,单击“确定”。 参数 说明 域名前缀 前缀和域名组成子域名。支持将域名或者子域名解析至当前公网IP。 例如,添加至服务器的域名为example.com: 域名前缀为空,表示将域名example.com解析至当前服务器公网IP。 域名前缀不为空,例如test,表示将test.example.com子域名解析至当前服务器公网IP。 公网IP 系统自动读取当前云服务器的公网IP,无需配置。 (可选)更改DNS服务器地址。 如果域名为非华为云注册的域名并且非华为云DNS服务器,系统无法直接解析域名。若要正常解析域名,请到DNS服务商将DNS服务器改为如下华为云DNS服务器。 在华为云注册的域名,请忽略此步骤。 更改后的DNS服务器地址将于48小时内生效,具体生效时间请以域名注册商处的说明为准。 ns1.huaweicloud-dns.com:中国大陆各区域DNS服务器地址 ns1.huaweicloud-dns.cn:中国大陆各区域DNS服务器地址 ns1.huaweicloud-dns.net:除中国大陆之外国家或地区DNS服务器地址 ns1.huaweicloud-dns.org:除中国大陆之外国家或地区DNS服务器地址 在“域名”页签看解析的域名。 参数 说明 已解析域名 解析过域名名称。 状态 域名当前的状态。 正常:域名正常解析,可通过域名访问网站。 暂停:暂停后,该解析记录不再参与解析,不能通过域名访问网站。在解析列表中仍保留该解析记录。 关联服务ID 云耀负载均衡套餐的ID。 公网IP 域名所关联的云耀负载均衡公网IP。 操作 暂停/启用 在域名备案期间,注册局要审查网站的合法性,即注册局要求在备案期间网站是不能进行访问的。如果您已经在云解析控制台添加了网站的域名解析,此时您需要通过“暂停解析”功能停止网站当前的解析。并在备案结束后,重新启用解析。 删除
  • 约束限制 待添加的域名未被注册也可以成功添加,但是添加后必须完成注册和备案,才能正常访问网站。为了保证添加的域名可以正常使用,建议您先注册域名并完成备案,再添加域名。 如未注册域名,请单击注册域名注册(付费),具体操作详见流程指引。 如未备案域名,请在华为云备案中心备案此域名(免费),具体操作详见快速完成网站备案。 检查域名是否过期、状态是否正常。过期、非正常状态的域名无法解析成功。具体操作,请参见检查域名状态是否正常。 请确认是否在24小时内修改过域名的DNS服务器,修改DNS服务器并不能立即生效,最长需要48小时才能生效。
  • 添加域名 登录云耀云服务器Fusion实例管理控制台。 在“增值服务”列表中,单击待添加后端服务器的云耀负载均衡实例。 选择“域名”页签,单击“添加域名”。 如果云服务器已经绑定了域名,请先移除域名再将域名绑定在云耀负载均衡上。 配置域名信息,单击“确定”。 参数 说明 域名 绑定云服务器的域名。 待添加的域名未被注册也可以成功添加,但是添加后必须完成注册和备案,才能正常访问网站。为了保证添加的域名可以正常使用,建议您先注册域名并完成备案,再添加域名。 企业项目 从下拉列表中选择所在的企业项目。 公网域名关联的企业项目,用于将公网域名资源按照企业项目进行管理。 说明: 仅当用户使用的“帐号类型”为“企业帐号”时,显示该参数,且参数必选。 在“域名”页签查看已添加的域名。 添加域名后,请继续解析域名,域名解析后才能正常提供网站服务。
  • 背景知识 云备份(Cloud Backup and Recovery,CBR)可以为云服务器、云硬盘提供简单易用的备份服务,当发生病毒入侵、人为误删除、软硬件故障等事件时,可将数据恢复到任意备份点。 云备份由备份、存储库和策略组成。 备份即一个备份对象执行一次备份任务产生的备份数据,包括备份对象恢复所需要的全部数据。 云备份使用存储库来存放备份。您购买的云服务器若已经包含云备份,服务器或磁盘默认已经绑定至存储库。服务器或磁盘产生的备份则会存放至绑定的存储库中。 策略分为备份策略和复制策略。 备份策略:需要对备份对象执行自动备份操作时,可以设置备份策略。通过在策略中设置备份任务执行的时间、周期以及备份数据的保留规则,将备份存储库绑定到备份策略,可以为存储库执行自动备份。 复制策略:需要对备份或存储库执行自动复制操作时,可以设置复制策略。通过在策略中设置复制任务执行的时间、周期以及备份数据的保留规则,将备份存储库绑定到复制策略,可以为存储库执行自动复制。复制产生的备份需要存放在复制存储库中。 更多内容请参见云备份。
  • 操作步骤 登录云耀云服务器Fusion实例管理控制台。 在“轻量应用”列表中单击云耀云服务器Fusion实例卡片,进入资源页面。 在左侧列表中单击“CBR 云备份”,可查看到套餐包含的云备份主要信息及相关操作。 主要信息包括: 主要信息 说明 云硬盘名称/ID 云硬盘名称/ID,不可更改。 单击图标,可对云硬盘ID进行复制。 存储库状态 存储库状态有三种: :表示存储库可用 :表示存储库到期状态 :表示存储库异常 备份类型 云服务器的备份类型为服务器备份,即对服务器的所有云硬盘(系统盘和数据盘)进行备份。 备份策略 是否启用备份策略。 购买云服务器 后,备份默认开启。 启用备份策略时,点击策略名称可查看备份详情。 已绑定服务器 云备份已绑定的云服务器。 使用率 当前存储库的使用率。 已备份 备份服务器数据的内存大小。 相关操作包括: 操作 说明 修改绑定策略 单击图标,修改云备份策略,具体操作详见修改策略。 查看监控数据 单击图标,查看云备份监控数据。
  • 解析域名 在服务器“域名”页签,单击域名操作列表中的“解析域名”。 配置如下信息,将域名或子域名解析至当前云服务器的公网IP,单击“确定”。 参数 说明 域名前缀 前缀和域名组成子域名。支持将域名或者子域名解析至当前公网IP。 例如,添加至服务器的域名为example.com: 域名前缀为空,表示将域名example.com解析至当前服务器公网IP。 域名前缀不为空,例如test,表示将test.example.com子域名解析至当前服务器公网IP。 公网IP 系统自动读取当前云服务器的公网IP,无需配置。 (可选)更改DNS服务器地址。 如果域名为非华为云注册的域名并且非华为云DNS服务器,系统无法直接解析域名。若要正常解析域名,请到DNS服务商将DNS服务器改为如下华为云DNS服务器。 在华为云注册的域名,请忽略此步骤。 更改后的DNS服务器地址将于48小时内生效,具体生效时间请以域名注册商处的说明为准。 ns1.huaweicloud-dns.com:中国大陆各区域DNS服务器地址 ns1.huaweicloud-dns.cn:中国大陆各区域DNS服务器地址 ns1.huaweicloud-dns.net:除中国大陆之外国家或地区DNS服务器地址 ns1.huaweicloud-dns.org:除中国大陆之外国家或地区DNS服务器地址 在“域名”页签看解析的域名。 参数 说明 已解析域名 解析过域名名称。 状态 域名当前的状态。 正常:域名正常解析,可通过域名访问网站。 暂停:暂停后,该解析记录不再参与解析,不能通过域名访问网站。在解析列表中仍保留该解析记录。 服务套餐ID 云耀云服务器Fusion实例套餐的ID。 公网IP 域名所关联的云服务器公网IP。 操作 暂停/启用 在域名备案期间,注册局要审查网站的合法性,即注册局要求在备案期间网站是不能进行访问的。如果您已经在云解析控制台添加了网站的域名解析,此时您需要通过“暂停解析”功能停止网站当前的解析。并在备案结束后,重新启用解析。 删除
  • 添加域名 登录云耀云服务器Fusion实例管理控制台。 在“轻量应用”列表中单击云耀云服务器Fusion实例卡片,进入资源页面。 在左侧列表中单击“云耀云服务器Fusion”,单击云服务器名称,进入云服务器详情页面。 选择“域名”页签,单击“添加域名”。 配置域名信息,单击“确定”。 参数 说明 域名 绑定云服务器的域名。 待添加的域名未被注册也可以成功添加,但是添加后必须完成注册和备案,才能正常访问网站。为了保证添加的域名可以正常使用,建议您先注册域名并完成备案,再添加域名。 企业项目 从下拉列表中选择所在的企业项目。 公网域名关联的企业项目,用于将公网域名资源按照企业项目进行管理。 说明: 仅当用户使用的“帐号类型”为“企业帐号”时,显示该参数,且参数必选。 在“域名”页签查看已添加的域名。 添加域名后,请继续解析域名,域名解析后才能正常提供网站服务。
  • 背景知识 负载均衡是将访问流量根据分配策略分发到后端多台服务器的流量分发控制服务。负载均衡可以通过流量分发扩展应用系统对外的服务能力,同时通过消除单点故障提升应用系统的可用性。 负载均衡由以下3部分组成: 负载均衡器:接受来自客户端的传入流量并将请求转发到一个或多个后端服务器。 监听器:您可以向您的负载均衡器添加一个或多个监听器。监听器使用您配置的协议和端口检查来自客户端的连接请求,并根据您定义的分配策略和转发策略将请求转发到一个后端服务器组里的后端服务器。 后端服务器:每个监听器会绑定一个后端服务器组,后端服务器组中可以添加一个或多个后端服务器。后端服务器组使用您指定的协议和端口号将请求转发到一个或多个后端服务器。
  • 操作步骤 登录云耀云服务器Fusion实例管理控制台。 在“轻量应用”列表中单击云耀云服务器Fusion实例卡片,进入资源页面。 在左侧列表中单击“ELB 负载均衡”,可查看到套餐包含的负载均衡主要信息。 主要信息 说明 负载均衡名称 负载均衡名称不可修改。 单击图标,可对负载均衡ID进行复制。 运行状态 负载均衡功能默认开启,状态为运行中。当云服务器到期后,将暂停负载均衡对服务器的服务。 监听器 监听器名称及ID。 前端协议 负载分发的协议和端口,仅支持HTTP协议/80端口。 后端服务器 负载均衡绑定的云服务器。 如果您购买的是云耀组合套餐高可用版,负载均衡自动绑定服务器。 如果您是单独购买云耀负载均衡,需要手动绑定服务器。具体操作详见添加监听器。 健康检查 后端服务器的运行状态。 当状态异常时,请根据健康检查异常如何排查指导排查。
  • 实例管理操作 创建实例 购买云耀云服务器Fusion实例后,将按照您选择的套餐规格创建实例,实例进入“创建中”状态。详细操作请参见购买云耀云服务器Fusion实例套餐。 实例完成创建后进入“运行中”状态,运行中的实例可进行正常的连接与访问服务。请参考远程登录Windows云服务器(VNC方式)或远程登录Linux云服务器(VNC方式) 登录实例并进行相关操作。 重启实例 执行重启实例操作后,实例将进入“重启中”状态。详细操作请参见重启实例。 在执行一些操作后,您需要重启实例才可以生效。例如:运行中的云服务器实例设置服务器密码后,您需要重启实例。 重启实例通常需要花费几十秒至几分钟的时间,该时间具体取决于实例配置。 关机实例 如果实例暂时不再需要,您可以在服务器卡片上关机实例。实例关机后不再对外提供服务。详细操作请参见关机实例。 退订实例 如果实例已经到期,后期不再需要,您可以手动退订或者等待系统自动释放。
  • 域名注册、解析和备案的关系 必须完成域名注册后,才能为域名配置解析记录。 域名的注册商和DNS服务商可以不一致,域名的DNS服务器设置决定了为域名提供解析的DNS服务商。 通过华为云注册的域名,默认使用华为云DNS进行解析。您可以通过修改域名的DNS服务器设置选择不同的DNS服务商进行域名解析。 通过华为云注册完成的域名需要在DNS(云解析服务)上添加域名及解析记录才可以被正常解析。 若域名的DNS服务器设置为其他DNS服务商,则需要到对应DNS服务商处为域名配置解析记录。 备案是国家和工信部的要求,其对应的主体是网站服务器以及域名,备案需要在域名注册和网站搭建之后进行。 备案与域名解析没有关系,域名访问网站包含以下两个阶段: Web浏览器通过DNS服务器进行域名解析,获取网站的IP地址。 浏览器访问网站IP。 域名解析实现访问网站的第一阶段,备案控制访问网站的第二阶段。如果网站没有进行备案,则即使域名成功解析,Web浏览器仍然无法成功访问网站IP。最终访问网站失败。
  • 通过域名访问网站流程 注册域名 您可以选择华为云作为 域名注册服务 商为您的网站注册域名,也可以使用已经在第三方注册的域名。 准备服务器 请选择并购买合适的云服务器。具体操作,请参见购买SMB套餐。 备案网站和域名 根据国家以及工信部的要求,要开办网站必须先办理网站及域名备案。请在华为云备案中心备案,华为云为您提供免费的备案服务,具体操作详见快速完成网站备案。 添加并解析域名 添加域名后,须解析域名,域名解析后才能正常提供网站服务。
  • 环境介绍与实现 如下所示仅提供本示例的自定义环境描述,帮助理解后续步骤。当您使用此功能时,需替换为您的自定义环境,同时将您的自定义环境相关文件按文件结构要求上传至OBS桶中。 本示例自定义环境相关代码,可从ModelArts-Lab工程中获得。下载工程,然后在“\ModelArts-Lab-master\official_examples\Reinforcement_Learning_Custom_Env_Example_Code”获取训练代码“custom_env”和用于预测的“Single_Step_Data_For_Inference.txt”文件。将训练代码“custom_env”上传至OBS桶中。 环境介绍 贪吃蛇游戏是一款休闲益智类游戏,该游戏通过控制蛇头方向吃果实,从而使得蛇的长度变得越来越长,随着蛇本身长度的增加,游戏难度也随之增加。 问题描述 目标:利用强化学习训练智能体控制蛇移动并不断吃果实,以期获得尽可能多的分数或者尽可能长的长度。 环境:贪吃蛇游戏环境,每吃到一个果实,积分增加1并且蛇的长度增加1;若蛇的头部碰到边界或者自己的身体,则蛇死亡,游戏失败。 状态:游戏画面信息 动作:上、下、左、右 环境实现 本示例中,代码及文件结构如下所示。 |- custom_env |- snake_env.py |- alg_config.json 其中,环境的实现文件和算法参数配置文件一起放在命名为“custom_env”的文件夹内(说明:该文件夹名字无约束),本示例中,snake_env文件夹内的snake_env.py是环境的具体实现代码。
  • 环境介绍 CartPole,车杆游戏,游戏画面如图1所示。游戏中,黑色的方块是一个小车,小车在一维无阻力轨道上运动。小车上连接一根活动杆,杆会左右摇摆。为保证游戏持续进行,小车需要左右移动保持杆子竖直。当小车的移动位置超出游戏界面所示范围或者杆子倾斜角度大于15°,游戏结束。游戏全过程可以理解为AI智能体与环境之间的互动,可以将复杂的因素抽象成以下三个变量。 可采取的动作:左移、右移。 获得奖励规则:左移或右移小车之后游戏没有结束,reward值会+1。 目的:使用强化学习训练一个智能体,玩CartPole游戏,尽可能多获得奖励。 图1 CartPole游戏画面
  • 后续操作 针对发布后的数据集,您可以订阅AI Gallery中的预置算法,也可自己开发算法,在ModelArts管理控制台中创建训练作业,得到模型。 本教程不详细介绍如何创建训练作业,建议您参考其他教程学习。下述教程一般以图像分类的数据作为示例,如需开发图像分割的模型,将数据和算法均替换为图像分割类型即可。 使用预置算法训练模型:使用订阅算法构建模型实现花卉识别 使用自定义算法训练模型:使用自定义算法构建模型(手写数字识别)。
  • Step4 部署为在线服务 本次展示仅部署OCR服务, 包括本地部署和线上部署, 部署上线后调用部署服务进行本地图片的推理,获取水表的预测读数。部署在线服务,需要指定OBS桶以便保存部署所需要的文件。 1.在“algorithms/mmocr/config/textrecog/config.py”文件中配置OBS桶。 修改./algorithms/mmocr/algorithm/configs/textrecog/robust_scanner/config.py # 替换为用户自己的OBS桶信息obs_bucket = 'obs://{your_obs_bucket_path}' 2.依次执行下述命令: python manage.py export --cfg algorithms/mmocr/config/textrecog/config.py --is_deploy # 导出部署模型所需文件python manage.py deploy --cfg algorithms/mmocr/config/textrecog/config.py # 本地部署调试 本地部署成功后的输出结果 # ...[Conda environment created successfully.]local_service_port is 127.0.0.1:42153Deploying the local service ...Successfully deployed the local service. You can check the log in /home/ma-user/work/water_meter/export/robustscanner_r31_academic/Linux_x86_64_GPU_PyTorch_Common_py/log.txt[07/05 09:40:14][INFO][ma_cau-deployer.py 49]: { "text": "00326", "score": 0.9999999046325684}[07/05 09:40:14][INFO][ma_cau-deployer.py 59]: ************************ End Deployer ************************ python manage.py deploy --cfg algorithms/mmocr/config/textrecog/config.py --launch_remote本地部署成功后可直接进行在线部署,大约需要12分钟。 图10 部署为在线服务
  • 工作空间 ModelArts的用户需要为不同的业务目标开发算法、管理和部署模型,此时可以创建多个工作空间,把不同应用开发过程的输出内容划分到不同工作空间中,便于管理和使用。 工作空间支持3种访问控制: PUBLIC:租户(主帐号和所有子帐号)内部公开访问。 PRIVATE:仅创建者和主帐号可访问。 INTERNAL:创建者、主帐号、指定 IAM 子帐号可访问当授权类型为INTERNAL时需要指定可访问的子帐号的帐号名,可选择多个。 每个帐号每个IAM项目都会分配1个默认工作空间,默认工作空间的访问控制为PUBLIC。 通过工作空间的访问控制能力,可限制仅允许部分人访问对应的工作空间。通过此功能可实现类似如下场景: 教育场景:老师可给每个学生分配1个INTERNAL的工作空间并且限制该工作空间被指定学生访问,这样可使得学生可独立完成在ModelArts上的实验。 企业场景:管理者可创建用于生产任务的工作空间并限制仅让运维人员使用,用于日常调试的工作空间并限制仅让开发人员使用。通过这种方式让不同的企业角色只能在指定工作空间下使用资源。 目前工作空间功能是“受邀开通”状态,作为企业用户您可以通过您对口的技术支持申请开通。 父主题: 权限控制方式
  • Notebook 表1 Notebook挂载点介绍 挂载点 是否只读 备注 /home/ma-user/work/ 否 客户数据的持久化目录。 /data 否 客户PFS的挂载目录。 /cache 否 裸机规格时支持,用于挂载宿主机NVMe的硬盘。 /train-worker1-log 否 兼容训练任务调试过程。 /dev/shm 否 用于PyTorch引擎加速。 /modelarts 是 / /etc/secret-volume 是 / /etc/sudoers 是 / /etc/localtime 是 / var/run/secrets/kubernetes.io/serviceaccount 是 /
  • 场景介绍 当专属资源池中的节点含有GPU/Ascend资源时,用户基于自己的业务,可能会有自定义GPU/Ascend驱动的需求,ModelArts面向此类客户提供了自助升级专属资源池GPU/Ascend驱动的能力。 驱动升级有两种升级方式:安全升级和强制升级。 安全升级:不影响正在运行的业务,开始升级后会先将节点进行隔离(不能再下发新的作业),待节点上的存量作业运行完成后再进行升级,因需要等待作业完成,故升级周期可能比较长。 强制升级:忽略资源池中正在运行的作业,直接进行驱动升级,可能会导致运行中作业失败,需谨慎选择。
  • (可选)工作空间配置 ModelArts支持设置子用户的细粒度权限、不同工作空间之间资源隔离。ModelArts工作空间帮您实现项目资源隔离、多项目分开结算等功能。 如果你开通了企业项目管理服务的权限,可以在创建工作空间的时候绑定企业项目ID,并在企业项目下添加用户组,为不同的用户组设置细粒度权限供组里的用户使用。 如果您未开通企业项目管理服务的权限,您也可以在ModelArts创建自己独立的工作空间。但是无法使用跟企业项目相关的功能。 工作空间为白名单功能,请提单联系华为工程师进行配置。 父主题: 基本配置
  • obsutils安装和配置 obs安装请参考:https://support.huaweicloud.com/utiltg-obs/obs_11_0003.html obstuils配置请参考:https://support.huaweicloud.com/utiltg-obs/obs_11_0004.html Endpoint参考:https://support.huaweicloud.com/productdesc-obs/obs_03_0152.html ak、sk需要换成您的ak、sk: ./obsutil config -i=ak -k=sk -e=obs.cn-north-4.myhuaweicloud.com 父主题: 基本配置
  • 在E CS 中创建ma-user和ma-group 在ModelArts训练平台使用的 自定义镜像 时,默认用户为ma-user、默认用户组为ma-group。若在训练时调用ECS中的文件,需要修改文件权限改为ma-user可读,否则会出现Permission denied错误,因此需要在ECS中提前创建好ma-user和ma-group。 在terminal中执行以下命令: default_user=$(getent passwd 1000 | awk -F ':' '{print $1}') || echo "uid: 1000 does not exist" && \default_group=$(getent group 100 | awk -F ':' '{print $1}') || echo "gid: 100 does not exist" && \if [ ! -z ${default_group} ] && [ ${default_group} != "ma-group" ]; then \ groupdel -f ${default_group}; \ groupadd -g 100 ma-group; \fi && \if [ -z ${default_group} ]; then \ groupadd -g 100 ma-group; \fi && \if [ ! -z ${default_user} ] && [ ${default_user} != "ma-user" ]; then \ userdel -r ${default_user}; \ useradd -d /home/ma-user -m -u 1000 -g 100 -s /bin/bash ma-user; \ chmod -R 750 /home/ma-user; \fi && \if [ -z ${default_user} ]; then \ useradd -d /home/ma-user -m -u 1000 -g 100 -s /bin/bash ma-user; \ chmod -R 750 /home/ma-user; \fi && \# set bash as defaultrm /bin/sh && ln -s /bin/bash /bin/sh 查看创建的用户,执行以下命令: id ma-user 若出现以下,则表示创建成功。 uid=1000(ma-user) gid=100(ma-group) groups=100(ma-group) 父主题: 基本配置
  • 配置SWR组织权限 IAM用户创建后,需要管理员在组织中为用户添加授权,使IAM用户对组织内所有镜像享有读取/编辑/管理的权限。 只有具备“管理”权限的帐号和IAM用户才能添加授权。 登录 容器镜像服务 控制台。 在左侧菜单栏选择“组织管理”,单击组织名称。 在“用户”页签下单击“添加授权”,在弹出的窗口中为IAM用户选择权限,然后单击“确定”。 SWR授权管理详情可参考授权管理。 若给子用户的SWR授权不是SWR Admin权限,则需要继续配置SWR组织权限。 父主题: 权限配置
  • 测试用户权限 由于权限配置需要等待15-30分钟生效,建议在配置完成后,等待30分钟,再执行如下验证操作。 使用用户组02中任意一个子用户登录ModelArts管理控制台。在登录页面,请使用“IAM用户登录”方式进行登录。 首次登录会提示修改密码,请根据界面提示进行修改。 验证ModelArts权限。 在左上角的服务列表中,选择ModelArts服务,进入ModelArts管理控制台。 在ModelArts管理控制台中,可正常创建Notebook、训练作业、注册镜像。 验证SFS权限。 在左上角的服务列表中,选择SFS服务,进入SFS管理控制台。 在SFS管理控制台中,在SFS Turo中单击右上角的“创建文件系统”,如果能正常打开页面,表示当前用户具备SFS的操作权限。 验证ECS权限。 在左上角的服务列表中,选择ECS服务,进入ECS管理控制台。 在ECS管理控制台中,单击右上角的“购买弹性云服务器”,如果能正常打开页面,表示当前用户具备ECS的操作权限。 验证VPC权限。 在左上角的服务列表中,选择VPC服务,进入VPC管理控制台。 在VPC管理控制台中,单击右上角的“创建虚拟私有云”,如果能正常打开页面,表示当前用户具备VPC的操作权限。 验证DEW权限。 在左上角的服务列表中,选择DEW服务,进入DEW管理控制台。 在DEW管理控制台中,在“密钥对管理”-“私有密钥对”中单击“创建密钥对”,如果能正常打开页面,表示当前用户具备DEW的操作权限。 验证OBS权限。 在左上角的服务列表中,选择OBS服务,进入OBS管理控制台。 在OBS管理控制台中,单击右上角的“创建桶”,如果能正常打开页面,表示当前用户具备OBS的操作权限。 验证SWR权限。 在左上角的服务列表中,选择SWR服务,进入SWR管理控制台。 在SWR管理控制台中,如果能正常打开页面,表示当前用户具备SWR的操作权限。 单击右上角的“上传镜像”,若能看到授权的组织,表示当前用户具备SWR组织权限。 父主题: 权限配置
  • 数据准备 打开JupyterLab的Terminal。 图1 打开Terminal 在Terminal执行如下命令下载项目代码。 # 下载代码至本地git clone https://gitee.com/mindspore/models.git -b v1.5.0 本例中,以图像分类模型resnet50模型为例。代码所在路径为“./models/official/cv/resnet/”。 下载数据集 本样例使用的数据集为类别数为五类的花卉识别数据集,下载该数据集,解压数据集到工程目录。比如将数据集保存在“./models/dataset/flower_photos”文件夹。
  • 步骤5:使用SDK提交训练作业 备注:本地调测完成后可以提交训练作业。因为数据在Notebook中,设置InputData中“is_local_source”的参数为“True”,会自动将本地数据同步上传到OBS中。 步骤如下: 在“/home/ma-user/work/models/official/cv/resnet/”下创建train_notebook.py, 拷贝代码至train_notebook.py, 运行train_notebook.py,进行训练作业提交。 train_instance_type表示训练的资源规格,每个region的资源规格可能是不同的,可以通过【2. 查询资源规格】查询对应的资源规格信息。 # train_notebook.py# 导入ModelArts SDK的依赖,并初始化Sessionfrom modelarts.train_params import TrainingFilesfrom modelarts.train_params import OutputDatafrom modelarts.train_params import InputDatafrom modelarts.estimatorV2 import Estimatorfrom modelarts.session import Sessionsession = Session()# 样例中为了方便默认创建一个OBS桶,推荐将调测所需要传输的文件统一放到`${default_bucket}/intermidiate`目录下,也可以按照注释代码自行指定obs_bucket = session.obs.get_default_bucket()print("Default bucket name: ", obs_bucket)default_obs_dir = f"{obs_bucket}/intermidiate"#default_obs_dir = "obs://your-bucket-name/folder-name"# 本地的工程代码文件夹路径code_dir_local = "/home/ma-user/work/models/official/cv/resnet/" #@param {type:"string"}# 代码的启动文件名称boot_file = "train.py" #@param {type:"string"}train_file = TrainingFiles(code_dir=code_dir_local, boot_file=boot_file)# 本地数据集路径local_data_path = "/home/ma-user/work/models/dataset/flower_photos" #@param {type:"string"}# 模型输出保存路径output_local = "/home/ma-user/work/models/official/cv/resnet/output" #@param {type:"string"}# 模拟训练过程中模型输出回传至指定OBS的路径,需要以"/"结尾obs_output_path = f"{default_obs_dir}/mindspore_model/output/"# 指定一个obs路径用于存储输出结果output = [OutputData(local_path=output_local, obs_path=obs_output_path, name="output")]# 模拟训练过程中模训练日志回传至指定OBS的路径,需要以"/"结尾log_obs_path = f"{default_obs_dir}/mindspore_model/logs/"# 训练所需的代码路径,代码会自动从本地上传至OBScode_obs_path = f"{default_obs_dir}/mindspore_model/"data_obs_path = f"{default_obs_dir}/dataset/flower_photos/"# sdk会将代码自动上传至OBS,并同步到训练环境train_file = TrainingFiles(code_dir=code_dir_local, boot_file=boot_file, obs_path=code_obs_path)# 指定OBS中的数据集路径,会自动将local_path数据上传至obs_path,用户可以在代码中通过 --data_url接收这个数据集路径input_data = InputData(local_path=local_data_path, obs_path=data_obs_path, is_local_source=True, name="data_url")from modelarts.service import SWRManagementimage_organization = SWRManagement(session).get_default_namespace()# image_organization = “your-swr-namespace-name”print("Default image_organization:", image_organization)image_name = "mindspore-image-models-image" #@param {type:"string"}image_tag = "1.0.0" #@param {type:"string"}import osENV_NAME=os.getenv('ENV_NAME')# 启动训练任务:使用user_command(shell命令)方式启动训练任务# 注意:训练启动默认的工作路径为"/home/ma-user/modelarts/user-job-dir",而代码上传路径为"./resnet/${code_dir}"下# --enable_modelarts=True 该代码仓已适配Modelartsestimator = Estimator(session=session, training_files=train_file, outputs=output, user_image_url=f"{image_organization}/{image_name}:{image_tag}", # 自定义镜像swr地址,由镜像仓库组织/镜像名称:镜像tag组成 user_command=f'cd /home/ma-user/modelarts/user-job-dir/ && /home/ma-user/anaconda3/envs/MindSpore/bin/python ./resnet/train.py --net_name=resnet50 --dataset=imagenet2012 --enable_modelarts=True --class_num=5 --config_path=./resnet/config/resnet50_imagenet2012_config.yaml --epoch_size=10 --device_target="Ascend" --enable_modelarts=True', # 执行训练命令 train_instance_type="modelarts.p3.large.public", # 虚拟资源规格 train_instance_count=1, # 节点数,适用于多机分布式训练,默认是1 #pool_id='若指定专属池,替换为页面上查到的poolId',同时修改资源规格为专属池专用的虚拟子规格 log_url=log_obs_path )# job_name是可选参数,可不填随机生成工作名job_instance = estimator.fit(inputs=[input_data], job_name="modelarts_training_job_with_sdk_by_command_v01") 表1 Estimator参数说明 参数名称 参数说明 session modelarts session training_files 训练代码的路径和启动文件 user_image_url 自定义镜像swr地址,由镜像仓库组织/镜像名称:镜像tag组成 user_command 执行训练命令 train_instance_type 本地调测'local'或云端资源规格 train_instance_count 节点数 log_url 日志输出路径 job_name 作业名称,不可以重复
  • 第三方案例列表 第三方案例来源为华为云开发者社区“云驻计划”。由于ModelArts产品的持续更新和迭代,第三方案例中的界面和步骤可能因时效性而与最新产品有所差异,仅供学习和参考。 表1 第三方案例列表 分类 文章名称 作者 自动学习 2步打通ModelArts和Astro实现AI应用落地 胡琦 开发环境 想不想让一张静态的照片动起来 林欣 基于TensorFlow训练轻量化ssdlite_mbv2人脸手机检测模型 AI练习生 基于ModelArts的手写数字识别 AXYZdong AI 文字编辑图片 instruct-pix2pix 案例 AXYZdong 推理部署 上线二维码检测识别服务 林欣 使用ModelArts对8类常见生活垃圾进行分类 福州司马懿 使用ModelArts搭建"花卉种类识别"服务 福州司马懿
  • 小结 Modelarts训练作业的模型输出和日志信息会定时同步到指定的OBS中,本示例中模型输出路径和日志输出路径分别为f"{default_obs_dir}/mindspore_model/output/"和f"{default_obs_dir}/mindspore_model/logs/",用户可以在OBS中查看训练输出信息。 本示例中训练输出保存在OBS的目录结构如下所示: ${your_bucket}└── intermidiate├── dataset│ └── flower_photos│ └── flower_photos.zip└── mindspore_model├── logs│ └── xxx-xxx-xxx--0.log├── output│ └── 20220627-105226-resnet50-224└── mindspore-image-models.zip 父主题: ModelArts VS Code插件最佳实践
  • 路径适配说明 ModelArts训练平台实现是通过K8S任务的方式来完成训练执行,在启动一个训练作业时,训练作业需要感知资源使用的规格,用什么样的容器镜像,代码从哪下载到容器本地,启动脚本是那个,训练数据从哪加载到容器进行运行,训练过程中以及最终输出的结果如何获取。 适配点的核心概念 TrainingFiles : 训练代码从OBS进行下载到训练容器中的路径映射,以及启动脚本的指定。文件会自动下载。 InputData :数据从OBS路径和作业容器中下载路径的映射,作业启动时文件会自动下载,具体路径会以参数的形式传入给执行脚本,例如 “--data_dir=/home/ma-user/modelarts/data”。可支持多个输入。 OutputData :训练作业输出目录和要转储的位置路径映射,训练容器中的指定目录会定期和转储的位置进行增量同步。 父主题: ModelArts VS Code插件最佳实践
共100000条