包含“n”的产品文档
魔方云系统使用文档>11. 关于三方对接>魔方云对接WHMCS
nbsp;&nbsp;1.2 插件下载和安装&nbsp;&nbsp;①下载:前往【魔方云系统后台】-【系统设置】-【whmcs设置】-【右上角点击下载whmcs插件】②安装:将下载后的插件【上传至whmcs中】,需将【zjmfcloud文件】上传至【whmcs根目录/module/server/中】二、WHMCS中的设置2.1 服务器对接原理和参数系统通过whmcs预留的server module原生方式对接至whmcs,使用whmcs原生产品设置和配置选项进行产品的价格定义,您可根据教程一步一步完成配置。&nbsp; &nbsp;2.1.1 添加服务器【前往WHMCS】-【系统设置】-【服务器设置】-【添加新的服务器】*必填字段:NAME(名称):魔方云配置Hostname (主机名):填写访问魔方云系统的域名Ip(IP地址):填写访问魔方云系统的ipType(类型):选择魔方云Username(用户名):登录魔方云系统的账号Password(密码):登录魔方云系统的密码勾选SSL:端口默认为8443,如有变更魔方云访问端口,请填写魔方云端口Hash:必填参数:&nbsp;<zjmfdir>admin</zjmfdir>&nbsp; &nbsp; &nbsp;-- admin&nbsp; &nbsp;#是指魔方云系统设置,安全设置中的后台管理员路径,如果是代理商端对接,填代理商路径&nbsp; user&nbsp; &nbsp; <user_prefix>自定义的前缀</user_prefix>&nbsp; &nbsp; &nbsp;&nbsp;-- admin&nbsp; &nbsp;#是指魔方云系统设置,安全设置中的后台管理员路径&nbsp; &nbsp;&nbsp;&nbsp;可选参数:&nbsp;<username> 值</username>&nbsp; &nbsp;&nbsp;#可选参数uid&nbsp; 或者mail&nbsp; ,是指创建魔方云用户时用户名使用whmcs 的UID还是邮箱<account_type>agent</account_type>&nbsp; &nbsp;增加这行后,插件可用于对接魔方云代理商面板&nbsp; &nbsp;2.1.2 添加服务器分组【前往WHMCS】-【系统设置】-【服务器设置】-【创建新的分组】&nbsp;&nbsp;&nbsp;2.1.3 分配服务器至分组&nbsp; &nbsp;2.1.4 添加产品前往【系统设置】-【产品/服务】-【产品/服务】-【新增产品】产品类型:独服/VPS产品名称:服务器产品型号1模块设置:模块名称-魔方云服务器组:魔方云服务组接口参数设置:请根据以下说明配置参数参数说明注:如果接口设置和可配置项中都配有此参数,优先读取可配置中的表格一配置项名称配置项参数参数说明必选未传递默认值area|数据中心1|CN^香港CN2&nbsp;1指魔方云系统-区域管理-区域ID注:数据中心和节点id必传一个✔node|节点id1| CN^香港CN2^一区1指魔方云系统-节点管理-节点ID注:数据中心和节点id必传一个不传递系统将自动分配os|操作系统1|windows^windows20081指魔方云系统-镜像管理-操作系统ID✔cpu|CPU2|2核心2指需要为该云主机分配的cpu核心数✔memory|内存1024|1G1024指需要为该云主机分配的内存大小,单位M✔system_disk_size|系统盘20|20G20指需要为该云主机分配的系统盘大小不传递默认50G,Windows系统盘最小30Gstore|系统盘存储1|本地存储1指区域节点-存储管理中的存储ID,选择系统盘开在那个存储下,也可不传递,默认随机network_type|网络类型normal|经典网络vpc|VPC网络normal是指分配的ip地址可直接配置在机器里vpc是指支持浮动ip,机器内不再配置公网ip&nbsp; &nbsp; &nbsp;✔bw|带宽10|10Mbps10指需要为该云主机分配的上下行带宽不传递默认为0Mbpsin_bw|流入带宽100|100Mbps100指需要为该云主机分配的进带宽如果配置 in_bw 优先使用该参数不传递默认为0Mbpsip_num|IP数量2|2个2指需要为该云主机分配的ip数量✔flow_way|流量方向in|进方向&nbsp;&nbsp;out|出方向&nbsp;&nbsp;all|进出汇总方向in指进方向的流量,out指出方向的流量,all指进出方向汇总的流量不传递默认为allflow_limit|流量&nbsp; &nbsp;1024|1T1024指需要为该云主机分配的流量大小,单位G不传递默认为不限量snap_num|快照数量-1|不开通,0|不限量,5|5个-1指该云主机不能创建快照,0指可以不限量创建快照,5指只能创建5个快照不传递默认2个backup_num|备份数量-1|不开通,0|不限量,5|5个-1指该云主机不能创建备份,0指可以不限量创建备份,5指只能创建5个备份不传递默认2个nat_acl_limit|NAT转发-1|不支持, 0|不限制, 5|5个-1指该云主机不能设置nat转发,0指可以不限量nat转发,5指只能创建5个nat转发不传递默认不支持nat_web_limit|共享建站-1|不支持, 0|不限制, 5|5个-1指该云主机不能nat建站,0指可以不限量nat建站,5指只能创建5个nat建站不传递默认不支持system_disk_io_limit|系统盘性能0,0,0,0|不限制性能,500,500,2000,2000|500持续2000IOPS0,0,0,0指不限制系统盘性能,500,500,2000,2000&nbsp;读取限制500MB/s,写入限制500MB/s,读取限制2000ops/s,写入限制2000ops/s不传递默认不限制data_disk_io_limit|数据盘性能0,0,0,0|不限制性能,500,500,2000,2000|500持续2000IOPS0,0,0,0指不限制数据盘性能,500,500,2000,2000&nbsp;读取限制500MB/s,写入限制500MB/s,读取限制2000ops/s,写入限制2000ops/s不传递默认不限制ip_group|IP分组1|电信,2|联通1指魔方云系统-ip管理-ip分组中的IDnode_group|节点分组1|台湾,2|香港1指魔方云系统-区域管理-节点管理-节点分组的IDnode_priority|节点选择优先级(1数量平均,2负载最低,3内存最低,4填满一个)1|数量平均,2|负载最低,3|内存最低,4|填满一个1指在创建实例时,会优先分在节点实例最少的。2指会优化分给节点cpu负载最低的。3指会优先分给节点内存最低的。4指根据节点id从小到大填满一个的方式创建实例,当节点资源达到限制后,就在其他节点开通实例。不传递默认数量平均IP_MACBond|嵌套虚拟化0|关闭绑定,1|开启绑定0指关闭IP-MAC绑定,1指开启IP-MAC绑定不传递默认开启绑定cpu_limit|CPU限制50|50%50指开通实例设置CPU限制为50%不传递默认以魔方云系统设置为准traffic_bill_type|流量计费周期month|自然月,&nbsp;last_30days|订购日至下月month是指每月1日流量进行清零,last_30days|是指产品开通日至下月进行清零不传递默认每月1日清零type|云节点类型host|KVM加强版,lightHost|KVM轻量版,hyperv|Hyper-V ,adsl|拨号云host是指KVM加强版节点类型,lightHost是指KVM轻量版节点类型,hyperv是指Hyper-V节点类型,adsl是指拨号云节点类型不传递默认KVM加强版advanced_bw|智能带宽1|降至30%1指在魔方云系统-监控-智能规则-智能带宽的IDadvanced_cpu|智能CPU1|降至50%1指在魔方云系统-监控-智能规则-智能CPU的IDport|端口auto|随机端口auto指随机端口不传递默认不支持data_disk_size|数据盘20,1|20G20指需要为该云主机分配的数据盘大小,单位G;1指区域节点-存储管理中的存储ID,选择数据盘开在那个存储下,也可不传递,默认随机。不传递默认无数据盘data1_disk_size|数据盘20,1|20G多块数据盘分配的时候增加使用该参数data2_disk_size|数据盘20,1|20Gdata3_disk_size|数据盘20,1|20Gdata4_disk_size|数据盘20,1|20Gipv6_num|ipv6数量2|2个2指ipv6地址数量为2个gpu_num|GPU数量1|1个GPU1指GPU显卡的个数不传递默认不支持simulate_physical_machine|模拟物理机运行1|开启0|关闭1指创建云主机时开启模拟物理机运行0指创建云主机时关闭模拟物理机运行不传递默认关闭模拟物理机运行ip_num_[1-6]2|2个2指ip数量,1指ip管理-ip分组中的IDIP数量都必须对应一个分组才行,可配置相同分组:例如 ip_num_1对应ip_group_1,以此类推,如果没有对应上,则ip_num不生效;例如:配置了ip_num_6,没有配置ip_group_6,则ip_num_6下的选项均不生效魔方云3.8.6+支持ip_group_[1-6]1|ip分组12.1.5&nbsp;重装系统时能够选择格式化数据盘功能【仅对接的魔方云是专业版可用】在服务器-访问哈希中加上这一段<format_data_disk>true</format_data_disk>,保存更改2.2 可配置选项原理和参数我们使用whmcs可配置选项功能进行配置选项传递,包含以下产品,格式为:&nbsp;&nbsp;参数 | 显示名称前往【系统设置】-【产品/服务】-【可配置选项】-【Create a New Group】Group Name:配置组名称Description:描述自定义Assigned Products:指定产品Add New Configurable Option:点击添加新的可配置选项注:添加配置参数可参考上面表格一,方法都是一致,本教程就添加一个为范例。四、WHMCS前后台管理4.1 产品对接魔方云实现开机关机重装后台管理完成以上配置后,我们即可实现对接管理,为客户添加产品后进行测试即可。4.1.1产品开通(自动和手动)(1)随机分配开通:正常流程下单,管理员手动通过模块命令执行“开通”,或者设置下单自动开通该开通方式,在魔方云里按照要求,随机分配配置信息,新开通云主机(2)指定主机开通:在whmcs端正常下单服务器,然后在管理员后台,产品/服务中,找到对应的订单,通过输入hostid(对应云主控实例列表中的id)来对应开通魔方云中已存在的机器该开通方式主要用于已经在使用的主机,指定分配给用户,这种方式的开通不会对服务器进行重装操作五、问题说明5.1 用户名密码错误检查WHMCS的服务器设置的用户名和密码是否是魔方云登录的用户名及密码5.2 连接端口错误检查SSL端口是否填写正确5.3 魔方云无法连接检查WHMCS服务器设置中的主机名及IP是否是魔方云的访问ip
财务系统使用文档>第三方平台对接>对接魔方DCIM管理平台-服务器
nbsp;&nbsp;&nbsp;&nbsp;2.1 服务器对接原理和参数&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;2.1.1&nbsp;添加接口&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;2.1.2&nbsp;重装次数设置&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;2.1.3 权限设置&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;2.1.4 添加产品&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;2.1.5&nbsp;可配置选项三、魔方财务前后台管理&nbsp;&nbsp;&nbsp;&nbsp;3.1 魔方财务后台管理&nbsp;&nbsp;&nbsp;&nbsp;3.2 会员中心管理功能&nbsp;&nbsp;&nbsp;&nbsp;3.3 自动开通功能四、其他&nbsp;&nbsp;&nbsp;&nbsp;4.1数据更新同步-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------前言该模块是通过DCIM对接魔方财务,实现自动化管理,实现开通,删除服务器,开机关机重装等管理。一、功能支持二、魔方财务中的设置2.1 服务器对接原理和参数魔方财务是通过与DCIM对接专门定制开发的,无需进行产品配置,在完成接口对接后,添加产品会自动拉取服务器配置选项及操作系统,只需进行产品的价格定义即可对接完成,您可根据教程一步一步完成配置。搭建财务系统的服务器需创建自动任务&nbsp; >>如何设置定时任务在对接前,需前往DCIM(4.6以上版本)添加API接口&nbsp;&nbsp;>>DCIM添加API接口2.1.1 魔方财务添加接口前往魔方系统,在【商品-自动化接口-DCIM】中,点击【新增接口】注:添加成功后,列表页状态会显示绿色,若是灰色则代表连接失败,鼠标放在状态上显示具体的错误信息名称:自定义填写,建议填写 DCIM 配置地址:填写DCIM的域名或ip地址&nbsp; 如要使用VNC,需填写域名且确保DCIM是https访问且证书有效用户名:DCIM添加的 API 用户名KEY:DCIM添加的 key端口:端口默认为443,如有变更DCIM访问端口,请填写DCIM端口2.1.2&nbsp;重装次数设置重装是否收费: 开启后则可设置用户一周内重装的免费次数及超出后的单价&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;不开启则默认为不限量2.1.3权限设置对前台用户服务器操作权限控制 &nbsp;打勾:代表有权限操作2.1.4 添加产品在【产品配置-裸金属-产品设置】中,点击新增产品。产品名称:自定义产品类型:魔方DCIM产品组:自定义选择(如没有创建产品组,请先创建产品组)接口设置&nbsp; &nbsp; (1)接口类型:选择本地接口&nbsp; &nbsp; (2)接口组:选择与DCIM对接的接口&nbsp; >>添加的接口&nbsp; &nbsp; (3)产品类型:租用/托管2.1.5&nbsp;魔方DCIM支持开通指定自定义端口自定义字段(1)、添加“端口”字段&nbsp;&nbsp; PS:字段名称只能填写“端口”or“port”,否则无法识别!!(2)、输入规则以及显示规则符合正则表达式。^(1[0-9]{4}|20000)$&nbsp;&nbsp;(端口限制10000-20000)(3)、购买商品后,在产品内页中进行显示,购买时输入的端口进行显示2.1.6 可配置选项原理与参数添加产品后系统会根据DCIM设置自动创建可配置选项,您可参考以下参数进行添加及修改注:只有在每次添加产品时,系统才会自动拉取DCIM信息并创建可配置项。若之后DCIM相关信息有变动时,需手动修改配置项。配置项名称配置项参数参数说明必选未传递默认值server_group|硬件配置1|E526301为DCIM中-产品销售-服务器租用-设备销售分组ID✔ip_num|IP数量5|5个NO_CHANGE&nbsp;|1个5为需要为该服务器分配的IP数量NO_CHANGE是指系统不会对服务器IP数量进行变更✔bw|带宽10,5|进10Mbps,出5MbpsNO_CHANGE,5|5Mbps10,5分别代表进出带宽,单位MbpsNO_CHANGE可用,代表不改变服务器当前方向的限速设定(请注意,0不传递不生效!)✔bwt|流量2048|2T2048指需要为该服务器分配的流量,单位G未传递默认不限制ip_group|IP分组1|香港1指DCIM中-IP资源管理-IP分组ID未传递将随机分配三、魔方财务前后台管理3.1 魔方财务后台管理完成以上配置后,我们即可实现对接管理,为客户添加产品。3.1.1添加产品3.1.2手动分配服务器分配成功后,系统会自动同步服务器的ip、用户名、密码及操作系统。注:点击空闲,该服务器及信息将会被清空,但不会对服务器进行任何操作。3.1.3执行模块命令执行模块命令会对服务器进行相关动作,请谨慎操作&nbsp; &nbsp; >>&nbsp;点击设置相关动作3.2 会员中心管理功能同时,客户可在会员中心前台进行管理。关于允许客户使用的功能控制,请参考>>权限设置3.3 自动开通功能如需使用自动开通功能请完成以下配置服务器销售分组有空闲的机器ip分组中有空闲可用的ip并启用了自动分配交换机可控支持修改带宽开通方式建议选择(当收到客户首付款时自动开通)四、其他4.1数据更新同步在DCIM对服务器修改相关信息时,财务系统更新同步时间实时更新1.操作系统&nbsp; &nbsp; &nbsp; &nbsp;2.用户名&nbsp; &nbsp; &nbsp; &nbsp;3.密码&nbsp; &nbsp; &nbsp; &nbsp; 4.ip&nbsp; &nbsp; &nbsp; &nbsp; 5.临时流量包购买&nbsp; &nbsp; &nbsp; &nbsp;6.新增端口流量图显示&nbsp;需创建定时任务更新&nbsp; >>如何设置定时任务1.操作系统修改及增加&nbsp; &nbsp;2.区域修改及增加&nbsp; &nbsp; &nbsp;3.用量信息同步
财务系统开发文档>支付接口
nfig.php,格式查看下方“配置文件”4 如需外部访问,请加controller目录,再添加Controller文件5 到后台插件管理刷新界面就会看到你新添加的插件### 创建目录网关目录在程序的根目录 `/modules/gateways`目录名应字母小写+下划线形式,并且必须以字母开头 例:`/modules/gateways/demo/`### 入口文件文件名应为目录名大驼峰+Plugin.php,创建在你的网关目录下,例:`demo/DemoPlugin.php`#### info属性在网关入口文件定义类属性`info`来配置网关的基本信息(见示例)#### 发起支付##### 支付参数网关的支付方法会以数组的形式接受支付参数```$param['product_name'] #&nbsp; 产品名$param['out_trade_no'] # 订单编号$param['total_fee'] # 金额```##### 响应参数发起支付需要统一以数组的形式返回```php<?php&nbsp; &nbsp; return [&nbsp; &nbsp; &nbsp; &nbsp; 'type'&nbsp; &nbsp;=> $type,&nbsp; &nbsp; &nbsp; &nbsp; 'data'&nbsp; =>$data,];```财务系统目前支持三种形式的支付请求1.当 `type=url` 时,[data]值为 转换二维码的url地址 由系统自动转换2.当 `type=insert` 时,[data]值为 第三方支付系统提供的二维码地址 由系统嵌入该二维码3.当 `type=jump` 时,[data]值为 需要跳转到第三方的支付链接网址4.当 `type=html` 时,[data]值为&nbsp; 需要提交的html表单#### 示例```php<?phpnamespace gateways\demo;//Demo插件英文名,改成你的插件英文就行了use app\admin\lib\Plugin;use gateways\wx_pay\validate\WxPayValidate;//Demo插件英文名,改成你的插件英文就行了class DemoPlugin extends Plugin{&nbsp; &nbsp; public $info = array(&nbsp; &nbsp; &nbsp; &nbsp; 'name'&nbsp; &nbsp; &nbsp; &nbsp; => 'Demo',//Demo插件英文名,改成你的插件英文就行了&nbsp; &nbsp; &nbsp; &nbsp; 'title'&nbsp; &nbsp; &nbsp; &nbsp;=> '演示',&nbsp; &nbsp; &nbsp; &nbsp; 'description' => '演示',&nbsp; &nbsp; &nbsp; &nbsp; 'status'&nbsp; &nbsp; &nbsp; => 1,&nbsp; &nbsp; &nbsp; &nbsp; 'author'&nbsp; &nbsp; &nbsp; => '顺戴网络',&nbsp; &nbsp; &nbsp; &nbsp; 'version'&nbsp; &nbsp; &nbsp;=> '1.0'&nbsp; &nbsp; );&nbsp; &nbsp; // 插件安装&nbsp; &nbsp; public function install()&nbsp; &nbsp; {&nbsp; &nbsp; &nbsp; &nbsp; return true;//安装成功返回true,失败false&nbsp; &nbsp; }&nbsp; &nbsp; // 插件卸载&nbsp; &nbsp; public function uninstall()&nbsp; &nbsp; {&nbsp; &nbsp; &nbsp; &nbsp; // 在这里不要try catch数据库异常,直接抛出上层会处理异常后回滚的&nbsp; &nbsp; &nbsp; &nbsp; return true;//卸载成功返回true,失败false&nbsp; &nbsp; }&nbsp; &nbsp; //发起支付&nbsp; &nbsp; public function AliPayHandle($param)&nbsp; &nbsp; {&nbsp; &nbsp; &nbsp; &nbsp; //> 处理配置参数&nbsp; &nbsp; &nbsp; &nbsp;&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; //> 发起支付&nbsp; &nbsp; &nbsp; &nbsp; //> 返回支付数据&nbsp; &nbsp; &nbsp; &nbsp; return ['url'&nbsp; &nbsp;=>&nbsp; 'url',&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;'data'&nbsp; =>&nbsp; 'weixin://wxpay/bizpayurl/up?prasdSD23d0'&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; ];&nbsp; &nbsp; }}```### 配置文件在你的网关根目录下加上config.php 即可定义配置```php<?phpreturn [&nbsp; &nbsp; 'custom_config' => [// 在后台插件配置表单中的键名 ,会是config[custom_config],这个键值很特殊,是自定义插件配置的开关&nbsp; &nbsp; &nbsp; &nbsp; 'title' => '自定义配置处理', // 表单的label标题&nbsp; &nbsp; &nbsp; &nbsp; 'type'&nbsp; => 'text', // 表单的类型:text,password,textarea,checkbox,radio,select等&nbsp; &nbsp; &nbsp; &nbsp; 'value' => '0', // 如果值为1,表示由插件自己处理插件配置,配置入口在 AdminIndex/setting&nbsp; &nbsp; &nbsp; &nbsp; 'tip'&nbsp; &nbsp;=> '自定义配置处理', //表单的帮助提示&nbsp; &nbsp; ],&nbsp; &nbsp; 'text'&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; => [// 在后台插件配置表单中的键名 ,会是config[text]&nbsp; &nbsp; &nbsp; &nbsp; 'title' => '999文本', // 表单的label标题&nbsp; &nbsp; &nbsp; &nbsp; 'type'&nbsp; => 'text', // 表单的类型:text,password,textarea,checkbox,radio,select等&nbsp; &nbsp; &nbsp; &nbsp; 'value' => 'hello,ThinkCMF!', // 表单的默认值&nbsp; &nbsp; &nbsp; &nbsp; 'tip'&nbsp; &nbsp;=> '这是文本组件的演示', //表单的帮助提示&nbsp; &nbsp; ],&nbsp; &nbsp; 'password'&nbsp; &nbsp; &nbsp; => [// 在后台插件配置表单中的键名 ,会是config[password]&nbsp; &nbsp; &nbsp; &nbsp; 'title' => '密码',&nbsp; &nbsp; &nbsp; &nbsp; 'type'&nbsp; => 'password',&nbsp; &nbsp; &nbsp; &nbsp; 'value' => '',&nbsp; &nbsp; &nbsp; &nbsp; 'tip'&nbsp; &nbsp;=> '这是密码组件',&nbsp; &nbsp; ],&nbsp; &nbsp; 'number'&nbsp; &nbsp; &nbsp; &nbsp; => [&nbsp; &nbsp; &nbsp; &nbsp; 'title' => '数字',&nbsp; &nbsp; &nbsp; &nbsp; 'type'&nbsp; => 'number',&nbsp; &nbsp; &nbsp; &nbsp; 'value' => '1.0',&nbsp; &nbsp; &nbsp; &nbsp; 'tip'&nbsp; &nbsp;=> '这是数字组件的演示',&nbsp; &nbsp; ],&nbsp; &nbsp; 'select'&nbsp; &nbsp; &nbsp; &nbsp; => [// 在后台插件配置表单中的键名 ,会是config[select]&nbsp; &nbsp; &nbsp; &nbsp; 'title'&nbsp; &nbsp;=> '下拉列表',&nbsp; &nbsp; &nbsp; &nbsp; 'type'&nbsp; &nbsp; => 'select',&nbsp; &nbsp; &nbsp; &nbsp; 'options' => [//select 和radio,checkbox的子选项&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; '1' => 'ThinkCMFX', // 值=>显示&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; '2' => 'ThinkCMF',&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; '3' => '跟猫玩糗事',&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; '4' => '门户应用',&nbsp; &nbsp; &nbsp; &nbsp; ],&nbsp; &nbsp; &nbsp; &nbsp; 'value'&nbsp; &nbsp;=> '1',&nbsp; &nbsp; &nbsp; &nbsp; 'tip'&nbsp; &nbsp; &nbsp;=> '这是下拉列表组件',&nbsp; &nbsp; ],&nbsp; &nbsp; 'checkbox'&nbsp; &nbsp; &nbsp; => [&nbsp; &nbsp; &nbsp; &nbsp; 'title'&nbsp; &nbsp;=> '多选框',&nbsp; &nbsp; &nbsp; &nbsp; 'type'&nbsp; &nbsp; => 'checkbox',&nbsp; &nbsp; &nbsp; &nbsp; 'options' => [&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; '1' => 'genmaowan.com',&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; '2' => 'www.thinkcmf.com',&nbsp; &nbsp; &nbsp; &nbsp; ],&nbsp; &nbsp; &nbsp; &nbsp; 'value'&nbsp; &nbsp;=> 1,&nbsp; &nbsp; &nbsp; &nbsp; 'tip'&nbsp; &nbsp; &nbsp;=> '这是多选框组件',&nbsp; &nbsp; ],&nbsp; &nbsp; 'radio'&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;=> [&nbsp; &nbsp; &nbsp; &nbsp; 'title'&nbsp; &nbsp;=> '单选框',&nbsp; &nbsp; &nbsp; &nbsp; 'type'&nbsp; &nbsp; => 'radio',&nbsp; &nbsp; &nbsp; &nbsp; 'options' => [&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; '1' => 'ThinkCMFX',&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; '2' => 'ThinkCMF',&nbsp; &nbsp; &nbsp; &nbsp; ],&nbsp; &nbsp; &nbsp; &nbsp; 'value'&nbsp; &nbsp;=> '1',&nbsp; &nbsp; &nbsp; &nbsp; 'tip'&nbsp; &nbsp; &nbsp;=> '这是单选框组件',&nbsp; &nbsp; ],&nbsp; &nbsp; 'radio2'&nbsp; &nbsp; &nbsp; &nbsp; => [&nbsp; &nbsp; &nbsp; &nbsp; 'title'&nbsp; &nbsp;=> '单选框2',&nbsp; &nbsp; &nbsp; &nbsp; 'type'&nbsp; &nbsp; => 'radio',&nbsp; &nbsp; &nbsp; &nbsp; 'options' => [&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; '1' => 'ThinkCMFX',&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; '2' => 'ThinkCMF',&nbsp; &nbsp; &nbsp; &nbsp; ],&nbsp; &nbsp; &nbsp; &nbsp; 'value'&nbsp; &nbsp;=> '1',&nbsp; &nbsp; &nbsp; &nbsp; 'tip'&nbsp; &nbsp; &nbsp;=> '这是单选框组件2',&nbsp; &nbsp; ],&nbsp; &nbsp; 'textarea'&nbsp; &nbsp; &nbsp; => [&nbsp; &nbsp; &nbsp; &nbsp; 'title' => '多行文本',&nbsp; &nbsp; &nbsp; &nbsp; 'type'&nbsp; => 'textarea',&nbsp; &nbsp; &nbsp; &nbsp; 'value' => '这里是你要填写的内容',&nbsp; &nbsp; &nbsp; &nbsp; 'tip'&nbsp; &nbsp;=> '这是多行文本组件',&nbsp; &nbsp; ],&nbsp; &nbsp; 'date'&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; => [&nbsp; &nbsp; &nbsp; &nbsp; 'title' => '日期',&nbsp; &nbsp; &nbsp; &nbsp; 'type'&nbsp; => 'date',&nbsp; &nbsp; &nbsp; &nbsp; 'value' => '2017-05-20',&nbsp; &nbsp; &nbsp; &nbsp; 'tip'&nbsp; &nbsp;=> '这是日期组件的演示',&nbsp; &nbsp; ],&nbsp; &nbsp; 'datetime'&nbsp; &nbsp; &nbsp; => [&nbsp; &nbsp; &nbsp; &nbsp; 'title' => '时间',&nbsp; &nbsp; &nbsp; &nbsp; 'type'&nbsp; => 'datetime',&nbsp; &nbsp; &nbsp; &nbsp; 'value' => '2017-05-20',&nbsp; &nbsp; &nbsp; &nbsp; 'tip'&nbsp; &nbsp;=> '这是时间组件的演示',&nbsp; &nbsp; ],&nbsp; &nbsp; 'color'&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;=> [&nbsp; &nbsp; &nbsp; &nbsp; 'title' => '颜色',&nbsp; &nbsp; &nbsp; &nbsp; 'type'&nbsp; => 'color',&nbsp; &nbsp; &nbsp; &nbsp; 'value' => '#103633',&nbsp; &nbsp; &nbsp; &nbsp; 'tip'&nbsp; &nbsp;=> '这是颜色组件的演示',&nbsp; &nbsp; ],&nbsp; &nbsp; 'image'&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;=> [&nbsp; &nbsp; &nbsp; &nbsp; 'title' => '图片',&nbsp; &nbsp; &nbsp; &nbsp; 'type'&nbsp; => 'image',&nbsp; &nbsp; &nbsp; &nbsp; 'value' => '',&nbsp; &nbsp; &nbsp; &nbsp; 'tip'&nbsp; &nbsp;=> '这是图片组件的演示',&nbsp; &nbsp; ],&nbsp; &nbsp; 'file'&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; => [&nbsp; &nbsp; &nbsp; &nbsp; 'title' => '文件',&nbsp; &nbsp; &nbsp; &nbsp; 'type'&nbsp; => 'file',&nbsp; &nbsp; &nbsp; &nbsp; 'value' => '',&nbsp; &nbsp; &nbsp; &nbsp; 'tip'&nbsp; &nbsp;=> '这是文件组件的演示',&nbsp; &nbsp; ],&nbsp; &nbsp; 'location'&nbsp; &nbsp; &nbsp; => [&nbsp; &nbsp; &nbsp; &nbsp; 'title' => '地理坐标',&nbsp; &nbsp; &nbsp; &nbsp; 'type'&nbsp; => 'location',&nbsp; &nbsp; &nbsp; &nbsp; 'value' => '',&nbsp; &nbsp; &nbsp; &nbsp; 'tip'&nbsp; &nbsp;=> '这是地理坐标组件的演示',&nbsp; &nbsp; ],];```### 回调文件#### 异步回调异步回调统一放在网关根目录下的`controller/IndexController.php`由 `notifyHandle` 方法处理当然你也可以在controller中自定义回调方法, 回调地址为:完整域名/gateway/payssion/index/notifyHandle方法中你可以处理相关验证,然后调用系统函数 `check_pay` 传入数组参数:```$data['invoice_id'] // 订单id$data['payment']&nbsp; &nbsp; // 支付方式$data['paid_time']&nbsp; // 支付时间$data['trans_id']&nbsp; &nbsp;// 三方交易id$data['total_fee']&nbsp; // 金额$data['currency']&nbsp; &nbsp;// 货币check_pay($data)&nbsp; &nbsp; // 调用系统函数进行验证及后续支付处理```例:`IndexController.php````php<?phpnamespace gateways\wx_pay\controller;use think\Controller;class IndexController extends Controller{&nbsp; &nbsp; public function notifyHandle()&nbsp; &nbsp; {&nbsp; &nbsp; &nbsp; &nbsp; $data['invoice_id'] = $_POST['invoice_id'];&nbsp; &nbsp; &nbsp; &nbsp; $data['payment'] = $_POST['payment'];&nbsp; &nbsp; &nbsp; &nbsp; $data['paid_time'] = $_POST['paid_time'];&nbsp; &nbsp; &nbsp; &nbsp; $data['trans_id'] = $_POST['trans_id'];&nbsp; &nbsp; &nbsp; &nbsp; $data['total_fee'] = $_POST['total_fee'];&nbsp; &nbsp; &nbsp; &nbsp; $data['currency'] = $_POST['currency'];&nbsp; &nbsp; &nbsp; &nbsp; check_pay($data);&nbsp; &nbsp; }}```#### 回调账单处理支付回调之后账单处理如下,注意需要引入use app\home\controller\OrderController;```$data = array(&nbsp; &nbsp; 'invoice_id'=>$order_id,&nbsp; // 订单号&nbsp; &nbsp; 'trans_id'=>$_POST['transaction_id'], // 交易流水号&nbsp; &nbsp; 'currency'=>$currency, // 货币的3个字母的ISO代码:例如 USD CNY等&nbsp; &nbsp; 'payment'=>'Payssion', // 网关名称,当前支付网关名称&nbsp; &nbsp; 'amount_in'=>$amount,&nbsp; &nbsp;// 支付金额 金额元&nbsp; &nbsp; 'paid_time'=>date("Y-m-d H:i:s"),&nbsp; &nbsp; //支付时间&nbsp; &nbsp;2020-01-01 08:00:00&nbsp; 标准格式);$Order = new OrderController();$Order->orderPayHandle($data,'wx_pay');```
业务系统使用文档>1、新手指引文档>1.9、配置用户注册&登录验证
nbsp; &nbsp; &nbsp; &nbsp;登录&注册验证码的优势:防止垃圾注册,或者恶意消耗短信或者邮件的情况&nbsp; &nbsp; &nbsp; &nbsp;登录&注册验证码的劣势:启用验证码会使得部分操作变得繁琐,建议仅在必需时打开2、V10 自带魔方内置的验证码插件,当然也可以去商店选购其他同类插件&nbsp; &nbsp; &nbsp; 登录后台》系统设置》验证码设置》验证码接口管理3、配置什么场景下启用图形验证码&nbsp; &nbsp; &nbsp; 可以设置新用户注册时启用图形验证码+用户登录(失败三次后启用验证码)等等4、图形验证码实际场景展示
魔方云系统使用文档>1. 环境部署>KVM加强版和轻量版的区别
N隔离不同客户的内网安全组●●轻量节点使用virsh nwfilter操作安全组,需打开计算节点防火墙 ,修改安全组规则无需重启实例经典网络●●轻量节点使用Linux Bridge,暂不使用VLANIP-MAC绑定●●轻量节点在libvirt XML中定义IP-MAC关系MAC地址修改●●libvirt XML中定义,均支持转发与建站●●支持在转妨机中定义转发和建站VPC网络●轻量节点不使用网络命名空间基于多个IP地址的混合限速●轻量节点无需使用浮动IP●轻量节点不使用网络命名空间VLAN隔离●轻量节点使用Linux Bridge,暂不使用VLAN单IP建站●轻量节点不使用网络命名空间负载均衡●轻量节点不使用网络命名空间DHCP●轻量节点不支持DHCPPS:轻量节点用的网桥,没有OVS、VPC网络、浮动IP、负载均衡等功能,所以在性能和性能占比上均比加强版更好。
财务系统使用文档>客户设置>实名设置
1、实名认证介绍&nbsp; &nbsp;&nbsp; &nbsp; 实名认证模块,是针对魔方财务定制开发的,引导客户完成个人身份认证的功能模块,满足IDC/ICP运营的合规性需求。&nbsp; &nbsp;&nbsp; &nbsp; 模块支持对个人/企业进行身份认证,实名模块支持任意第三方实名平台的接入,比如支付宝人脸、微信人脸、芝麻信用、手机三要素、身份证二要素等(模块可至应用商店进行购买,也可以自己写插件对接)&nbsp; &nbsp; &nbsp; &nbsp; 个人认证支持自动审核。避免企业的重复使用,增加实名真实性,针对企业认证,后台默认需要人工二次审核。2、实名认证基础设置&nbsp; &nbsp; &nbsp; 可根据自己业务情况,对实名进行扩展设置3、实名接口设置&nbsp; &nbsp; 3.1 添加实名接口:财务后台默认会提供几个接口,除了默认提供外,也可行添加接口平台3.2 对平台参数进行配置。下述按【智简魔方-芝麻信用】为例进行配置说明&nbsp; &nbsp; &nbsp;首先,至魔方官网会员中心对实名套餐进行购买&nbsp; &nbsp;购买成功后,至实名接口详情处获取API接口和应用秘钥&nbsp;把获取的API接口和秘钥填入后台配置处即可完成平台对接。更多接口对接教程参考,请点击以下链接4、实名认证审核、查看及修改五、魔方财务前台实名认证注:前台个人认证成功后可以转企业认证,但企业认证成功后不能转个人人证进入前台,点击实名认证,选择相应认证方式后,点击立即认证即可,此帮助文档已对接芝麻信用接口进行说明。个人认证:输入姓名、身份证号及上传证件后,若后台设置了收费金额,用户需支付费用后,通过支付宝扫描二维码即可一键认证成功;若用户拥有免费次数或无需收费,可直接通过支付宝扫描二维码即可一键认证成功。企业认证:企业认证跟个人认证相似,只是还要填写营业执照,企业认证需人工手动审核。个人提交成功后,实名自动变更成实名信息;如果企业认证提交,会提示待审核(需要管理员在后台进行实名审核后方可完成认证);如认证失败,会显示失败原因,如下图。
DCIM使用文档>1.快速指南>1.5、录入IP
nbsp;公网IP(即业务IP)、IPMI&nbsp;IP、临时IP、内网IP&nbsp;等 &nbsp;&nbsp;&nbsp;&nbsp;服务器IPMI的IP&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;类型为:IPMI&nbsp;IP &nbsp;&nbsp;&nbsp;&nbsp;服务器的公网IP&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;类型为:公网IP &nbsp;&nbsp;&nbsp;&nbsp;用于装机的临时IP&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;类型为:临时IP(这个后面讲)注意下图中IP的类型(是公网IP,临时IP,还是IPMI IP)
魔方云系统使用文档>9. 插件与增值功能>9.5数据盘自动挂载
nbsp;购买方式:请前往会员中心--魔方云--对应魔方云产品内页---下滑即可进行订购。1、财务平台购买&nbsp;数据盘自动挂载插件2、魔方云后台,更新授权码,再到系统设置-插件列表,安装数据盘自动挂载插件3、点击配置按钮,进入配置页面,进行数据盘自动挂载路径的填写,并开启数据盘自动挂载的开关&nbsp;4、参数设定完成之后,保存数据5、开通机器,数据盘会按照设置的路径进行自动挂载。&nbsp;注意:1、挂载的路径时按照填写的路径一一对应,如果开通的机器,数据盘个数大于4个,超出的数据盘不会进行挂载2、只适用于创建机器的时候,重装机器不会自动挂载
魔方云系统使用文档>12. 系统常见问题>12.1关于使用问题>F.GPU直通挂载
ng、SR-IOVIOMMU:是一种地址映射技术,而 VT-d 是 Intel 对该技术的别称Above 4G Decoding:关系到 PCI-E 设备 RAM 的 64 位寻址能力,通常用于需要让 CPU 访问全部显存的场景,使用 vGPU 时推荐开启SR-IOV:允许一个 PCI-E 设备被多个虚拟机使用,常用于网卡等设备共享。第二:确认CPU硬件是否支持虚拟化、关闭selinux#&nbsp;核查是否支持cpu虚拟化 egrep&nbsp;-o&nbsp;'(vmx|svm)'&nbsp;/proc/cpuinfo #&nbsp;关闭selinux sed&nbsp;-i&nbsp;'s/SELINUX=enforcing/SELINUX=disabled/g'&nbsp;/etc/selinux/config第三:CPU启用iommu#&nbsp;intel_iommu=on&nbsp;iommu=pt #&nbsp;Intel添加:&nbsp;rd.driver.pre=vfio-pci&nbsp;intel_iommu=on&nbsp;video=efifb:off,vesafb:off #&nbsp;AMD添加:&nbsp;&nbsp;&nbsp;rd.driver.pre=vfio-pci&nbsp;amd_iommu=on&nbsp;video=efifb:off,vesafb:off [root@sv-gpu-node-001&nbsp;~]#&nbsp;cat&nbsp;/etc/default/grub GRUB_TIMEOUT=5 GRUB_DISTRIBUTOR="$(sed&nbsp;'s,&nbsp;release&nbsp;.*$,,g'&nbsp;/etc/system-release)" GRUB_DEFAULT=saved GRUB_DISABLE_SUBMENU=true GRUB_TERMINAL_OUTPUT="console" GRUB_CMDLINE_LINUX="crashkernel=auto&nbsp;resume=/dev/mapper/cs-swap&nbsp;rd.lvm.lv=cs00/root&nbsp;rd.lvm.lv=cs/swap&nbsp;rhgb&nbsp;quiet&nbsp;rd.driver.pre=vfio-pci&nbsp;intel_iommu=on&nbsp;video=efifb:off,vesafb:off" GRUB_DISABLE_RECOVERY="true" GRUB_ENABLE_BLSCFG=true第四:更新grubsudo&nbsp;grub2-mkconfig&nbsp;-o&nbsp;/boot/grub2/grub.cfg #&nbsp;&nbsp;&nbsp;&nbsp;参数说明: #&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;vfio-pci&nbsp;显卡直通虚拟话需要的驱动 #&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;iommu开启直通分组 #&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;efifb:off&nbsp;禁用efi启动的显示设备 #&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;vesafb:off&nbsp;禁用legacy启动的显示设备第五:加载显卡直通所需的驱动模块cat&nbsp;>&nbsp;/etc/modules-load.d/vfio.conf&nbsp;<<&nbsp;EOF vfio vfio_iommu_type1 vfio_pci vfio_virqfd EOF第六:禁用原本的英伟达显卡驱动和开源驱动nouveau,避免直通出错cat&nbsp;>&nbsp;/etc/modprobe.d/blacklist.conf&nbsp;<<&nbsp;EOF blacklist&nbsp;nouveau blacklist&nbsp;nvidia options&nbsp;nouveau&nbsp;modeset=0 EOF第七:重构#&nbsp;先备份 &nbsp;&nbsp;&nbsp;&nbsp;mv&nbsp;/boot/initramfs-$(uname&nbsp;-r).img&nbsp;/boot/initramfs-$(uname&nbsp;-r)-nouveau.img #&nbsp;重建 &nbsp;&nbsp;&nbsp;&nbsp;dracut&nbsp;/boot/initramfs-$(uname&nbsp;-r).img&nbsp;$(uname&nbsp;-r) #&nbsp;重启 &nbsp;&nbsp;&nbsp;&nbsp;reboot第八:验证#&nbsp;验证IOMMU是否开启 [root@sv-gpu-node-001&nbsp;~]#&nbsp;dmesg&nbsp;|&nbsp;grep&nbsp;-e&nbsp;DMAR&nbsp;-e&nbsp;IOMMU [&nbsp;&nbsp;&nbsp;&nbsp;0.000000]&nbsp;ACPI:&nbsp;DMAR&nbsp;0x000000007DF6D650&nbsp;000160&nbsp;(v01&nbsp;A&nbsp;M&nbsp;I&nbsp;&nbsp;OEMDMAR&nbsp;&nbsp;00000001&nbsp;INTL&nbsp;00000001) [&nbsp;&nbsp;&nbsp;&nbsp;0.000000]&nbsp;ACPI:&nbsp;Reserving&nbsp;DMAR&nbsp;table&nbsp;memory&nbsp;at&nbsp;[mem&nbsp;0x7df6d650-0x7df6d7af] [&nbsp;&nbsp;&nbsp;&nbsp;0.000000]&nbsp;DMAR:&nbsp;IOMMU&nbsp;enabled #&nbsp;这是未屏蔽开源显卡驱动的情况 [root@localhost&nbsp;~]#&nbsp;lsmod&nbsp;|&nbsp;grep&nbsp;nouveau nouveau&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;2355200&nbsp;&nbsp;4 video&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;53248&nbsp;&nbsp;1&nbsp;nouveau mxm_wmi&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;16384&nbsp;&nbsp;1&nbsp;nouveau wmi&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;32768&nbsp;&nbsp;2&nbsp;mxm_wmi,nouveau drm_display_helper&nbsp;&nbsp;&nbsp;&nbsp;151552&nbsp;&nbsp;1&nbsp;nouveau i2c_algo_bit&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;16384&nbsp;&nbsp;2&nbsp;ast,nouveau drm_kms_helper&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;167936&nbsp;&nbsp;5&nbsp;drm_vram_helper,ast,drm_display_helper,nouveau drm_ttm_helper&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;16384&nbsp;&nbsp;3&nbsp;drm_vram_helper,ast,nouveau ttm&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;81920&nbsp;&nbsp;3&nbsp;drm_vram_helper,drm_ttm_helper,nouveau drm&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;577536&nbsp;&nbsp;13&nbsp;drm_kms_helper,drm_vram_helper,ast,drm_display_helper,drm_ttm_helper,ttm,nouveau #&nbsp;这是已经成功屏蔽开源显卡驱动的情况(这是期待的结果-表示成功) [root@localhost&nbsp;~]#&nbsp;lsmod&nbsp;|&nbsp;grep&nbsp;nouveau [root@localhost&nbsp;~]#&nbsp; #&nbsp;如下分别是禁用nvidia驱动后,未分配给虚拟机使用&nbsp;和&nbsp;已分配给虚拟机使用&nbsp;的情况 [root@localhost&nbsp;~]#&nbsp;lspci&nbsp;-v&nbsp;-s&nbsp;&nbsp;85:00.0 85:00.0&nbsp;VGA&nbsp;compatible&nbsp;controller:&nbsp;NVIDIA&nbsp;Corporation&nbsp;GM107GL&nbsp;[Tesla&nbsp;M10]&nbsp;(rev&nbsp;a2)&nbsp;(prog-if&nbsp;00&nbsp;[VGA&nbsp;controller]) &nbsp;&nbsp;&nbsp;&nbsp;Subsystem:&nbsp;NVIDIA&nbsp;Corporation&nbsp;Tesla&nbsp;M10 &nbsp;&nbsp;&nbsp;&nbsp;Flags:&nbsp;bus&nbsp;master,&nbsp;fast&nbsp;devsel,&nbsp;latency&nbsp;0,&nbsp;IRQ&nbsp;304,&nbsp;NUMA&nbsp;node&nbsp;1,&nbsp;IOMMU&nbsp;group&nbsp;78 &nbsp;&nbsp;&nbsp;&nbsp;Memory&nbsp;at&nbsp;f8000000&nbsp;(32-bit,&nbsp;non-prefetchable)&nbsp;[size=16M] &nbsp;&nbsp;&nbsp;&nbsp;Memory&nbsp;at&nbsp;39ffa0000000&nbsp;(64-bit,&nbsp;prefetchable)&nbsp;[size=256M] &nbsp;&nbsp;&nbsp;&nbsp;Memory&nbsp;at&nbsp;39ffb0000000&nbsp;(64-bit,&nbsp;prefetchable)&nbsp;[size=32M] &nbsp;&nbsp;&nbsp;&nbsp;I/O&nbsp;ports&nbsp;at&nbsp;c000&nbsp;[size=128] &nbsp;&nbsp;&nbsp;&nbsp;Capabilities:&nbsp;[60]&nbsp;Power&nbsp;Management&nbsp;version&nbsp;3 &nbsp;&nbsp;&nbsp;&nbsp;Capabilities:&nbsp;[68]&nbsp;MSI:&nbsp;Enable+&nbsp;Count=1/1&nbsp;Maskable-&nbsp;64bit+ &nbsp;&nbsp;&nbsp;&nbsp;Capabilities:&nbsp;[78]&nbsp;Express&nbsp;Endpoint,&nbsp;MSI&nbsp;00 &nbsp;&nbsp;&nbsp;&nbsp;Capabilities:&nbsp;[100]&nbsp;Virtual&nbsp;Channel &nbsp;&nbsp;&nbsp;&nbsp;Capabilities:&nbsp;[258]&nbsp;L1&nbsp;PM&nbsp;Substates &nbsp;&nbsp;&nbsp;&nbsp;Capabilities:&nbsp;[128]&nbsp;Power&nbsp;Budgeting&nbsp;<?> &nbsp;&nbsp;&nbsp;&nbsp;Capabilities:&nbsp;[420]&nbsp;Advanced&nbsp;Error&nbsp;Reporting &nbsp;&nbsp;&nbsp;&nbsp;Capabilities:&nbsp;[600]&nbsp;Vendor&nbsp;Specific&nbsp;Information:&nbsp;ID=0001&nbsp;Rev=1&nbsp;Len=024&nbsp;<?> &nbsp;&nbsp;&nbsp;&nbsp;Capabilities:&nbsp;[900]&nbsp;Secondary&nbsp;PCI&nbsp;Express &nbsp;&nbsp;&nbsp;&nbsp;Kernel&nbsp;driver&nbsp;in&nbsp;use:&nbsp;nvidia&nbsp;&nbsp;&nbsp;&nbsp;#&nbsp;这是还未直通给虚拟机用时 &nbsp;&nbsp;&nbsp;&nbsp;Kernel&nbsp;modules:&nbsp;nouveau,&nbsp;nvidia_drm,&nbsp;nvidia [root@localhost&nbsp;~]#&nbsp;lspci&nbsp;-v&nbsp;-s&nbsp;&nbsp;85:00.0&nbsp; 85:00.0&nbsp;VGA&nbsp;compatible&nbsp;controller:&nbsp;NVIDIA&nbsp;Corporation&nbsp;GM107GL&nbsp;[Tesla&nbsp;M10]&nbsp;(rev&nbsp;a2)&nbsp;(prog-if&nbsp;00&nbsp;[VGA&nbsp;controller]) &nbsp;&nbsp;&nbsp;&nbsp;Subsystem:&nbsp;NVIDIA&nbsp;Corporation&nbsp;Tesla&nbsp;M10 &nbsp;&nbsp;&nbsp;&nbsp;Flags:&nbsp;fast&nbsp;devsel,&nbsp;IRQ&nbsp;38,&nbsp;NUMA&nbsp;node&nbsp;1,&nbsp;IOMMU&nbsp;group&nbsp;76 &nbsp;&nbsp;&nbsp;&nbsp;Memory&nbsp;at&nbsp;fa000000&nbsp;(32-bit,&nbsp;non-prefetchable)&nbsp;[size=16M] &nbsp;&nbsp;&nbsp;&nbsp;Memory&nbsp;at&nbsp;39ffe0000000&nbsp;(64-bit,&nbsp;prefetchable)&nbsp;[size=256M] &nbsp;&nbsp;&nbsp;&nbsp;Memory&nbsp;at&nbsp;39fff0000000&nbsp;(64-bit,&nbsp;prefetchable)&nbsp;[size=32M] &nbsp;&nbsp;&nbsp;&nbsp;I/O&nbsp;ports&nbsp;at&nbsp;e000&nbsp;[size=128] &nbsp;&nbsp;&nbsp;&nbsp;Capabilities:&nbsp;[60]&nbsp;Power&nbsp;Management&nbsp;version&nbsp;3 &nbsp;&nbsp;&nbsp;&nbsp;Capabilities:&nbsp;[68]&nbsp;MSI:&nbsp;Enable-&nbsp;Count=1/1&nbsp;Maskable-&nbsp;64bit+ &nbsp;&nbsp;&nbsp;&nbsp;Capabilities:&nbsp;[78]&nbsp;Express&nbsp;Endpoint,&nbsp;MSI&nbsp;00 &nbsp;&nbsp;&nbsp;&nbsp;Capabilities:&nbsp;[100]&nbsp;Virtual&nbsp;Channel &nbsp;&nbsp;&nbsp;&nbsp;Capabilities:&nbsp;[250]&nbsp;Latency&nbsp;Tolerance&nbsp;Reporting &nbsp;&nbsp;&nbsp;&nbsp;Capabilities:&nbsp;[258]&nbsp;L1&nbsp;PM&nbsp;Substates &nbsp;&nbsp;&nbsp;&nbsp;Capabilities:&nbsp;[128]&nbsp;Power&nbsp;Budgeting&nbsp;<?> &nbsp;&nbsp;&nbsp;&nbsp;Capabilities:&nbsp;[420]&nbsp;Advanced&nbsp;Error&nbsp;Reporting &nbsp;&nbsp;&nbsp;&nbsp;Capabilities:&nbsp;[600]&nbsp;Vendor&nbsp;Specific&nbsp;Information:&nbsp;ID=0001&nbsp;Rev=1&nbsp;Len=024&nbsp;<?> &nbsp;&nbsp;&nbsp;&nbsp;Capabilities:&nbsp;[900]&nbsp;Secondary&nbsp;PCI&nbsp;Express &nbsp;&nbsp;&nbsp;&nbsp;Kernel&nbsp;driver&nbsp;in&nbsp;use:&nbsp;vfio-pci&nbsp;&nbsp;&nbsp;&nbsp;#&nbsp;这是已经直通给虚拟机用后 &nbsp;&nbsp;&nbsp;&nbsp;Kernel&nbsp;modules:&nbsp;nouveau,&nbsp;nvidia_drm,&nbsp;nvidia第九:设置硬件直通挂载挂载显卡创建windwos实例&nbsp; 下载N卡相关驱动后识别显卡