华为云用户手册

  • DDM逻辑库管理 表1 DDM逻辑库管理 权限 对应API接口 授权项 IAM 项目(Project) 企业项目 (Enterprise Rroject) 创建DDM逻辑库 POST /v1/{project_id}/instances/{instance_id}/databases ddm:database:create √ √ 查询DDM逻辑库列表 GET /v1/{project_id}/instances/{instance_id}/databases?offset={offset}&limit={limit} ddm:database:list √ √ 查询DDM逻辑库详细信息 GET /v1/{project_id}/instances/{instance_id}/databases/{ddm_dbname} ddm:database:get √ √ 删除DDM逻辑库 DELETE /v1/{project_id}/instances/{instance_id}/databases/{ddm_dbname}?delete_rds_data=true ddm:database:delete √ √ 父主题: 授权策略及授权项
  • 响应消息 正常响应参数说明 表3 响应Body参数 参数 参数类型 描述 total_count Integer 总条数。 group_list Array of 表4 objects 实例的组信息列表。 表4 GroupInfo 参数 参数类型 描述 id String 组ID。 name String 组名称。 role String 组角色类型,分为读写组和只读组。 返回值: rw:读写组 r:只读组 endpoint String 组的连接地址。如果没有开启负载均衡,则返回的是组内节点的连接地址串。 ipv6_endpoint String 组IPv6的连接地址。 is_load_balance Boolean 是否开启负载均衡。 is_default_group Boolean 是否为默认组。 cpu_num_per_node Integer 单节点CPU的核数。 mem_num_per_node Integer 单节点的内存大小,单位为GB。 architecture String CPU架构。 返回值: X86 ARM node_list Array of 表5 objects 节点信息列表。 表5 GroupNodeInfo 参数 参数类型 描述 id String 节点ID。 name String 节点名称。 az String 节点所在的可用区。 正常响应示例 { "group_list":[ { "id":"****gr09", "name":"group-default", "role":"rw", "endpoint":"**.**.**.**:5066", "is_load_balance":true, "is_default_group":false, "architecture":"X86", "cpu_num_per_node":4, "mem_num_per_node":8, "node_list":[ { "id":"****no09", "name":"node_01", "az":"some_az" } ] } ], "total_count":1 } 异常响应 请参见异常请求结果。
  • URI URL格式 GET /v3/{project_id}/instances/{instance_id}/groups?offset={offset}&limit={limit} 参数说明 表1 路径参数 参数 是否必选 参数类型 描述 project_id 是 String 租户在某一region下的project ID。 获取方法请参见获取项目ID。 instance_id 是 String DDM实例ID。 表2 Query参数 参数 是否必选 参数类型 描述 offset 否 Integer 索引位置,偏移量。 从第一条数据偏移offset条数据后开始查询,默认为0。 取值必须为数字,且不能为负数。 limit 否 Integer 查询个数上限值。 取值范围:1~128。 不传该参数时,默认值为10。
  • 响应参数 状态码: 200 表6 响应Body参数 参数 参数类型 描述 databases Array of CreateDatabaseDetailResponses objects 逻辑库相关信息的集合。 表7 CreateDatabaseDetailResponses 参数 参数类型 描述 name String 逻辑库名称。 状态码: 400 表8 响应Body参数 参数 参数类型 描述 errCode String 业务错误码。 externalMessage String 错误信息。 状态码: 500 表9 响应Body参数 参数 参数类型 描述 errCode String 业务错误码。 externalMessage String 错误信息。
  • 请求示例 创建逻辑库时不新建DDM账号,关联已有账号。 POST https://{endpoint}/v1/{project_id}/instances/{instance_id}/databases{ "databases" : [ { "name" : "mytestdb", "shard_mode" : "cluster", "shard_number" : 8, "shard_unit" : 8, "used_rds" : [ { "id" : "f296c394f13f48449d715bf99af07e59in01", "adminUser" : "root", "adminPassword" : "xxxxxx" } ] } ]}
  • 响应示例 状态码: 200 OK { "databases" : [ { "name" : "mytestdb" } ]} 状态码: 400 bad request { "externalMessage" : "Parameter error.", "errCode" : "DBS.280001"} 状态码: 500 server error { "externalMessage" : "Server failure.", "errCode" : "DBS.200412"}
  • 请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 X-Auth-Token 是 String 用户Token。 通过调用IAM服务的“获取用户Token”接口来获取。 表3 请求Body参数 参数 是否必选 参数类型 描述 databases 是 Array of CreateDatabaseDetail objects 逻辑库相关信息的集合。 表4 CreateDatabaseDetail 参数 是否必选 参数类型 描述 name 是 String 逻辑库名称,需要满足以下条件: 长度为2-48个字符。 必须以小写字母开头。 可以包含小写字母、数字、下划线,不能包含大写字母和其它特殊字符。 禁用关键字: "information_schema"、"mysql"、"performance_schema"、"sys"。 最小长度:2 最大长度:48 shard_mode 是 String 逻辑库的拆分模式。 cluster表示逻辑库是拆分模式。 single表示逻辑库是非拆分模式。 枚举值: cluster single shard_number 是 Integer 同一种工作模式下逻辑库分片的数量。 shard_unit不为空, shard_unit与关联rds数量的乘积 shard_unit为空,大于关联的RDS数量,小于等于关联rds数量*64。 shard_unit 否 Integer 单个RDS上的逻辑库分片数。非必选 非拆分逻辑库,固定为1。 拆分逻辑库,大于等于1,小于等于64。 最小值:1 最大值:64 used_rds 是 Array of DatabaseInstabcesParam objects 逻辑库关联的RDS。 表5 DatabaseInstabcesParam 参数 是否必选 参数类型 描述 id 是 String 逻辑库关联的RDS的ID。 adminUser 是 String 关联RDS实例的用户。 adminPassword 是 String 关联RDS实例的密码。
  • 支持的事件监控 表1 CPH支持的事件监控 事件来源 事件名称 事件ID 事件级别 事件说明 处理建议 事件影响 CPH GPU故障 gpuAbnormal 致命 GPU发生故障 GPU故障,支持故障类型如下: "hard_hang" ----硬件故障,提交工单转运维处理 "over_temp" ----超温,提交工单转运维处理 "lost_card" ----显卡丢失,提交工单转运维处理 "light_reset_success" ----显卡轻量级reset成功,可能造成手机花屏,建议重启手机 "deep_reset_success" ----显卡重量级reset成功,可能造成该显卡下部分云手机花屏,建议重置显卡,或者提交工单转运维处理 "deep_reset_failed" ----显卡重量级reset失败,必须重启服务器才能恢复业务,或者提交工单转运维处理 "fan_damaged"----风扇损坏,必须重新更换显卡。提交工单转运维处理 业务中断 GPU恢复正常 gpuNormal 提示 GPU从故障中恢复正常 无需处理 无 内核崩溃 gpuNormal 致命 内核崩溃crash 提交工单转运维处理 crash期间业务中断 内核OOM kernelOom 重要 内核日志提示out of memory 提交工单转运维处理 业务中断 硬件故障 hardwareError 致命 内核日志报Hardware Error 提交工单转运维处理 业务中断 PCIe故障 pcieAer 致命 内核日志报PCIE Bus Error 提交工单转运维处理 业务中断 S CS I故障 scsiError 致命 内核日志报SCSI error 提交工单转运维处理 业务中断 镜像存储只读故障 partReadOnly 致命 镜像存储分区挂载属性变为readonly 提交工单转运维处理 业务中断 镜像存储超级块损坏故障 badSuperBlock 致命 镜像存储分区相关文件系统超级块损坏 提交工单转运维处理 业务中断 镜像存储sharedpath只读故障 isuladMasterReadOnly 致命 镜像存储的/.sharedpath/master挂载属性只读 提交工单转运维处理 业务中断 云手机数据盘只读故障 cphDiskReadOnly 致命 云手机数据盘挂载属性变为readonly 提交工单转运维处理 业务中断 云手机数据盘超级块损坏故障 cphDiskReadOnly 致命 云手机数据盘相关文件系统超级块损坏 提交工单转运维处理 业务中断 父主题: 使用 CES 监控CPH
  • 使用方法 建议使用手机内重启功能时进行流控。并发重启大量手机可能会导致宿主机负载突然飙升,可能会对其他正常运行的手机产生影响。 通过命令行重启 adb shell reboot 约束:只有uid为0,1000或2000的进程有权限执行reboot命令。 系统APP通过PowerManager接口重启 PowerManager powerManager = getSystemService(PowerManager.class);powerManager.reboot("your reason for reboot"); 约束:只有uid为0,1000的进程有权限调用PowerManager接口。 通过注入长按关机键重启 adb shell input keyevent --longpress KEYCODE_POWER 注入长按关机键后,屏幕会弹出重新启动选项,用户单击按钮后手机重启。 例:不同AOSP版本,按钮UI可能不同,请按实际参考。 图1 重新启动 约束:只有uid为0,1000或2000的进程有权限注入长按关机按键。
  • 授权“操作”权限 操作权限是指仅可以操作云手机服务器及云手机,无创建及删除权限。如果您给IAM用户授予CPH“操作”权限,需要授予CPH FullAccess策略和设置拒绝“创建”、“删除”授权项的自定义策略。创建自定义策略如图3所示,创建自定义策略步骤请参见:创建自定义策略。授权“操作”权限如图4所示。 自定义策略内容如下: { "Version": "1.1", "Statement": [ { "Effect": "Deny ", "Action": [ "cph:servers:create ", "cph:servers:delete " ] } ]} 图3 操作权限自定义策略 图4 操作权限授权图
  • 授权“所有”权限 如果您给IAM用户授予CPH“所有”权限,需要授予CPH FullAccess 策略、DEW KeypairFullAccess策略,并设置订单查看、订单支付、订单续费的自定义策略。创建自定义策略如图1所示,创建自定义策略步骤请参见:创建自定义策略。授权“所有”权限如图2所示。 自定义策略内容如下: { "Version": "1.1", "Statement": [ { "Effect": "Allow", "Action": [ "bss:renewal:update", "bss:balance:view", "bss:order:view", "bss:order:pay", "bss:order:update", "bss:renewal:view" ] } ]} 图1 所有权限自定义策略 图2 所有权限授权图
  • 功能介绍 云手机performance系统服务,自动清理后台应用进程,防止第三方应用后台自动拉起和相互唤醒,对开机速度、手机OOM、CPU高占用等现象有显著的提升和改善。 performance低内存查杀策略 当系统剩余空闲内存低于某阈值,将根据剩余内存档位,从高到低选择杀不同优先级的进程。 策略 触发条件 清理进程 High档 总内存剩余25% 空进程 缓存进程 Middle档 总内存剩余20% 已使用过且不可感知类进程 (不可见、无悬浮窗、无音频焦点等) Low档 总内存剩余15% 上一个使用过的Activity进程 上一个使用过的Provider进程 后台服务进程 Critical档 总内存剩余200MB 根据内存占用从大到小查杀所有应用进程,直到剩余总内存高于200MB为止
  • 使用方法 监听被杀应用广播 客户后台管理程序可以通过监听被杀应用广播,获取被杀应用的包名和原因。 public static final String ACTION_APP_KILLED = "android.intent.action.APP_KILLED"; private MyBroadcastReceiver mBroadcastReceiver = new MyBroadcastReceiver(); private void registerReceiver() { IntentFilter filter = new IntentFilter(ACTION_APP_KILLED); this.registerReceiver(mBroadcastReceiver, filter); } private void unregisterReceiver() { this.unregisterReceiver(mBroadcastReceiver); } private class MyBroadcastReceiver extends BroadcastReceiver { private static final String TAG = "AppKilled"; @Override public void onReceive(Context context, Intent intent) { Log.d(TAG, "package: " + intent.getStringExtra("comm")); Log.d(TAG, "reason: " + intent.getStringExtra("reason")); } }
  • 语言标签列表 表1 语言标签列表 语言标签 语言 (国家/地区) af-NA Afrikaans (Namibia) af-ZA Afrikaans (South Africa) agq-CM Aghem (Cameroon) ak-GH Akan (Ghana) am-ET Amharic (Ethiopia) ar-AE Arabic (United Arab Emirates) ar-AE-u-nu-latn Arabic (United Arab Emirates,Western Digits) ar-BH Arabic (Bahrain) ar-BH-u-nu-latn Arabic (Bahrain,Western Digits) ar-DJ Arabic (Djibouti) ar-DJ-u-nu-latn Arabic (Djibouti,Western Digits) ar-DZ Arabic (Algeria) ar-DZ-u-nu-arab Arabic (Algeria,Arabic-Indic Digits) ar-EG Arabic (Egypt) ar-EG-u-nu-latn Arabic (Egypt,Western Digits) ar-EH Arabic (Western Sahara) ar-EH-u-nu-arab Arabic (Western Sahara,Arabic-Indic Digits) ar-ER Arabic (Eritrea) ar-ER-u-nu-latn Arabic (Eritrea,Western Digits) ar-IL Arabic (Israel) ar-IL-u-nu-latn Arabic (Israel,Western Digits) ar-IQ Arabic (Iraq) ar-IQ-u-nu-latn Arabic (Iraq,Western Digits) ar-JO Arabic (Jordan) ar-JO-u-nu-latn Arabic (Jordan,Western Digits) ar-KM Arabic (Comoros) ar-KM-u-nu-latn Arabic (Comoros,Western Digits) ar-KW Arabic (Kuwait) ar-KW-u-nu-latn Arabic (Kuwait,Western Digits) ar-LB Arabic (Lebanon) ar-LB-u-nu-latn Arabic (Lebanon,Western Digits) ar-LY Arabic (Libya) ar-LY-u-nu-arab Arabic (Libya,Arabic-Indic Digits) ar-MA Arabic (Morocco) ar-MA-u-nu-arab Arabic (Morocco,Arabic-Indic Digits) ar-MR Arabic (Mauritania) ar-MR-u-nu-latn Arabic (Mauritania,Western Digits) ar-OM Arabic (Oman) ar-OM-u-nu-latn Arabic (Oman,Western Digits) ar-PS Arabic (Palestine) ar-PS-u-nu-latn Arabic (Palestine,Western Digits) ar-QA Arabic (Qatar) ar-QA-u-nu-latn Arabic (Qatar,Western Digits) ar-SA Arabic (Saudi Arabia) ar-SA-u-nu-latn Arabic (Saudi Arabia,Western Digits) ar-SD Arabic (Sudan) ar-SD-u-nu-latn Arabic (Sudan,Western Digits) ar-SO Arabic (Somalia) ar-SO-u-nu-latn Arabic (Somalia,Western Digits) ar-SS Arabic (South Sudan) ar-SS-u-nu-latn Arabic (South Sudan,Western Digits) ar-SY Arabic (Syria) ar-SY-u-nu-latn Arabic (Syria,Western Digits) ar-TD Arabic (Chad) ar-TD-u-nu-latn Arabic (Chad,Western Digits) ar-TN Arabic (Tunisia) ar-TN-u-nu-arab Arabic (Tunisia,Arabic-Indic Digits) ar-XB Right-to-left pseudolocale ar-YE Arabic (Yemen) ar-YE-u-nu-latn Arabic (Yemen,Western Digits) as-IN Assamese (India) asa-TZ Asu (Tanzania) az-Cyrl-AZ Azerbaijani (Cyrillic,Azerbaijan) az-Latn-AZ Azerbaijani (Latin,Azerbaijan) bas-CM Basaa (Cameroon) be-BY Belarusian (Belarus) bem-ZM Bemba (Zambia) bez-TZ Bena (Tanzania) bg-BG Bulgarian (Bulgaria) bm-ML Bambara (Mali) bn-BD Bengali (Bangladesh) bn-BD-u-nu-latn Bengali (Bangladesh,Western Digits) bn-IN Bengali (India) bn-IN-u-nu-latn Bengali (India,Western Digits) bo-CN Tibetan (China) bo-IN Tibetan (India) br-FR Breton (France) brx-IN Bodo (India) bs-Cyrl-BA Bosnian (Cyrillic,Bosnia & Herzegovina) bs-Latn-BA Bosnian (Latin,Bosnia & Herzegovina) ca-AD Catalan (Andorra) ca-ES Catalan (Spain) ca-FR Catalan (France) ca-IT Catalan (Italy) ce-RU Chechen (Russia) cgg-UG Chiga (Uganda) chr-US Cherokee (United States) cs-CZ Czech (Czechia) cy-GB Welsh (United Kingdom) da-DK Danish (Denmark) da-GL Danish (Greenland) dav-KE Taita (Kenya) de-AT German (Austria) de-BE German (Belgium) de-CH German (Switzerland) de-DE German (Germany) de-LI German (Liechtenstein) de-LU German (Luxembourg) dje-NE Zarma (Niger) dsb-DE Lower Sorbian (Germany) dua-CM Duala (Cameroon) dyo-SN Jola-Fonyi (Senegal) dz-BT Dzongkha (Bhutan) ebu-KE Embu (Kenya) ee-GH Ewe (Ghana) ee-TG Ewe (Togo) el-CY Greek (Cyprus) el-GR Greek (Greece) en-AG English (Antigua & Barbuda) en-AI English (Anguilla) en-AS English (American Samoa) en-AT English (Austria) en-AU English (Australia) en-BB English (Barbados) en-BE English (Belgium) en-BI English (Burundi) en-BM English (Bermuda) en-BS English (Bahamas) en-BW English (Botswana) en-BZ English (Belize) en-CA English (Canada) en-CC English (Cocos (Keeling) Islands) en-CH English (Switzerland) en-CK English (Cook Islands) en-CM English (Cameroon) en-CX English (Christmas Island) en-CY English (Cyprus) en-DE English (Germany) en-DG English (Diego Garcia) en-DK English (Denmark) en-DM English (Dominica) en-ER English (Eritrea) en-FI English (Finland) en-FJ English (Fiji) en-FK English (Falkland Islands (Islas Malvinas)) en-FM English (Micronesia) en-GB English (United Kingdom) en-GD English (Grenada) en-GG English (Guernsey) en-GH English (Ghana) en-GI English (Gibraltar) en-GM English (Gambia) en-GU English (Guam) en-GY English (Guyana) en-HK English (Hong Kong) en-IE English (Ireland) en-IL English (Israel) en-IM English (Isle of Man) en-IN English (India) en-IO English (British Indian Ocean Territory) en-JE English (Jersey) en-JM English (Jamaica) en-KE English (Kenya) en-KI English (Kiribati) en-KN English (St. Kitts & Nevis) en-KY English (Cayman Islands) en-LC English (St. Lucia) en-LR English (Liberia) en-LS English (Lesotho) en-MG English (Madagascar) en-MH English (Marshall Islands) en-MO English (Macao) en-MP English (Northern Mariana Islands) en-MS English (Montserrat) en-MT English (Malta) en-MU English (Mauritius) en-MW English (Malawi) en-MY English (Malaysia) en-NA English (Namibia) en-NF English (Norfolk Island) en-NG English (Nigeria) en-NL English (Netherlands) en-NR English (Nauru) en-NU English (Niue) en-NZ English (New Zealand) en-PG English (Papua New Guinea) en-PH English (Philippines) en-PK English (Pakistan) en-PN English (Pitcairn Islands) en-PR English (Puerto Rico) en-PW English (Palau) en-RW English (Rwanda) en-SB English (Solomon Islands) en-SC English (Seychelles) en-SD English (Sudan) en-SE English (Sweden) en-SG English (Singapore) en-SH English (St. Helena) en-SI English (Slovenia) en-SL English (Sierra Leone) en-SS English (South Sudan) en-SX English (Sint Maarten) en-SZ English (Eswatini) en-TC English (Turks & Caicos Islands) en-TK English (Tokelau) en-TO English (Tonga) en-TT English (Trinidad & Tobago) en-TV English (Tuvalu) en-TZ English (Tanzania) en-UG English (Uganda) en-UM English (U.S. Outlying Islands) en-US English (United States) en-VC English (St. Vincent & Grenadines) en-VG English (British Virgin Islands) en-VI English (U.S. Virgin Islands) en-VU English (Vanuatu) en-WS English (Samoa) en-XA Left-to-right pseudolocale en-ZA English (South Africa) en-ZM English (Zambia) en-ZW English (Zimbabwe) es-AR Spanish (Argentina) es-BO Spanish (Bolivia) es-CL Spanish (Chile) es-CO Spanish (Colombia) es-CR Spanish (Costa Rica) es-CU Spanish (Cuba) es-DO Spanish (Dominican Republic) es-EA Spanish (Ceuta & Melilla) es-EC Spanish (Ecuador) es-ES Spanish (Spain) es-GQ Spanish (Equatorial Guinea) es-GT Spanish (Guatemala) es-HN Spanish (Honduras) es-IC Spanish (Canary Islands) es-MX Spanish (Mexico) es-NI Spanish (Nicaragua) es-PA Spanish (Panama) es-PE Spanish (Peru) es-PH Spanish (Philippines) es-PR Spanish (Puerto Rico) es-PY Spanish (Paraguay) es-SV Spanish (El Salvador) es-US Spanish (United States) es-UY Spanish (Uruguay) es-VE Spanish (Venezuela) et-EE Estonian (Estonia) eu-ES Basque (Spain) ewo-CM Ewondo (Cameroon) fa-AF Persian (Afghanistan) fa-AF-u-nu-latn Persian (Afghanistan,Western Digits) fa-IR Persian (Iran) fa-IR-u-nu-latn Persian (Iran,Western Digits) ff-CM Fulah (Cameroon) ff-GN Fulah (Guinea) ff-MR Fulah (Mauritania) ff-SN Fulah (Senegal) fi-FI Finnish (Finland) fil-PH Filipino (Philippines) fo-DK Faroese (Denmark) fo-FO Faroese (Faroe Islands) fr-BE French (Belgium) fr-BF French (Burkina Faso) fr-BI French (Burundi) fr-BJ French (Benin) fr-BL French (St. Barthélemy) fr-CA French (Canada) fr-CD French (Congo (DRC)) fr-CF French (Central African Republic) fr-CG French (Congo (Republic)) fr-CH French (Switzerland) fr-CI French (Côte d’Ivoire) fr-CM French (Cameroon) fr-DJ French (Djibouti) fr-DZ French (Algeria) fr-FR French (France) fr-GA French (Gabon) fr-GF French (French Guiana) fr-GN French (Guinea) fr-GP French (Guadeloupe) fr-GQ French (Equatorial Guinea) fr-HT French (Haiti) fr-KM French (Comoros) fr-LU French (Luxembourg) fr-MA French (Morocco) fr-MC French (Monaco) fr-MF French (St. Martin) fr-MG French (Madagascar) fr-ML French (Mali) fr-MQ French (Martinique) fr-MR French (Mauritania) fr-MU French (Mauritius) fr-NC French (New Caledonia) fr-NE French (Niger) fr-PF French (French Polynesia) fr-PM French (St. Pierre & Miquelon) fr-RE French (Réunion) fr-RW French (Rwanda) fr-SC French (Seychelles) fr-SN French (Senegal) fr-SY French (Syria) fr-TD French (Chad) fr-TG French (Togo) fr-TN French (Tunisia) fr-VU French (Vanuatu) fr-WF French (Wallis & Futuna) fr-YT French (Mayotte) fur-IT Friulian (Italy) fy-NL Western Frisian (Netherlands) ga-IE Irish (Ireland) gd-GB Scottish Gaelic (United Kingdom) gl-ES Galician (Spain) gsw-CH Swiss German (Switzerland) gsw-FR Swiss German (France) gsw-LI Swiss German (Liechtenstein) gu-IN Gujarati (India) guz-KE Gusii (Kenya) gv-IM Manx (Isle of Man) ha-GH Hausa (Ghana) ha-NE Hausa (Niger) ha-NG Hausa (Nigeria) haw-US Hawaiian (United States) iw-IL Hebrew (Israel) hi-IN Hindi (India) hr-BA Croatian (Bosnia & Herzegovina) hr-HR Croatian (Croatia) hsb-DE Upper Sorbian (Germany) hu-HU Hungarian (Hungary) hy-AM Armenian (Armenia) in-ID Indonesian (Indonesia) ig-NG Igbo (Nigeria) ii-CN Sichuan Yi (China) is-IS Icelandic (Iceland) it-CH Italian (Switzerland) it-IT Italian (Italy) it-SM Italian (San Marino) ja-JP Japanese (Japan) jgo-CM Ngomba (Cameroon) jmc-TZ Machame (Tanzania) ka-GE Georgian (Georgia) kab-DZ Kabyle (Algeria) kam-KE Kamba (Kenya) kde-TZ Makonde (Tanzania) kea-CV Kabuverdianu (Cape Verde) khq-ML Koyra Chiini (Mali) ki-KE Kikuyu (Kenya) kk-KZ Kazakh (Kazakhstan) kkj-CM Kako (Cameroon) kl-GL Kalaallisut (Greenland) kln-KE Kalenjin (Kenya) km-KH Khmer (Cambodia) kn-IN Kannada (India) ko-KP Korean (North Korea) ko-KR Korean (South Korea) kok-IN Konkani (India) ksb-TZ Shambala (Tanzania) ksf-CM Bafia (Cameroon) ksh-DE Colognian (Germany) kw-GB Cornish (United Kingdom) ky-KG Kyrgyz (Kyrgyzstan) lag-TZ Langi (Tanzania) lb-LU Luxembourgish (Luxembourg) lg-UG Ganda (Uganda) lkt-US Lakota (United States) ln-AO Lingala (Angola) ln-CD Lingala (Congo (DRC)) ln-CF Lingala (Central African Republic) ln-CG Lingala (Congo (Republic)) lo-LA Lao (Laos) lt-LT Lithuanian (Lithuania) lu-CD Luba-Katanga (Congo (DRC)) luo-KE Luo (Kenya) luy-KE Luyia (Kenya) lv-LV Latvian (Latvia) mas-KE Masai (Kenya) mas-TZ Masai (Tanzania) mer-KE Meru (Kenya) mfe-MU Morisyen (Mauritius) mg-MG Malagasy (Madagascar) mgh-MZ Makhuwa-Meetto (Mozambique) mgo-CM Meta (Cameroon) mk-MK Macedonian (North Macedonia (FYROM)) ml-IN Malayalam (India) mn-MN Mongolian (Mongolia) mr-IN Marathi (India) ms-BN Malay (Brunei) ms-MY Malay (Malaysia) ms-SG Malay (Singapore) mt-MT Maltese (Malta) my-MM Burmese (Myanmar (Burma)) my-MM-u-nu-latn Burmese (Myanmar (Burma), Western Digits) mzn-IR Mazanderani (Iran) naq-NA Nama (Namibia) nb-NO Norwegian Bokmål (Norway) nb-SJ Norwegian Bokmål (Svalbard & Jan Mayen) nd-ZW North Ndebele (Zimbabwe) ne-IN Nepali (India) ne-NP Nepali (Nepal) nl-AW Dutch (Aruba) nl-BE Dutch (Belgium) nl-BQ Dutch (Caribbean Netherlands) nl-CW Dutch (Curaçao) nl-NL Dutch (Netherlands) nl-SR Dutch (Suriname) nl-SX Dutch (Sint Maarten) nn-NO Norwegian Nynorsk (Norway) nnh-CM Ngiemboon (Cameroon) nus-SS Nuer (South Sudan) nyn-UG Nyankole (Uganda) om-ET Oromo (Ethiopia) om-KE Oromo (Kenya) or-IN Oriya (India) os-GE Ossetic (Georgia) os-RU Ossetic (Russia) pa-Arab-PK Punjabi (Arabic,Pakistan) pa-Guru-IN Punjabi (Gurmukhi,India) pl-PL Polish (Poland) ps-AF Pashto (Afghanistan) pt-AO Portuguese (Angola) pt-BR Portuguese (Brazil) pt-CV Portuguese (Cape Verde) pt-GW Portuguese (Guinea-Bissau) pt-MO Portuguese (Macau) pt-MZ Portuguese (Mozambique) pt-PT Portuguese (Portugal) pt-ST Portuguese (São Tomé & Príncipe) pt-TL Portuguese (Timor-Leste) qu-BO Quechua (Bolivia) qu-EC Quechua (Ecuador) qu-PE Quechua (Peru) rm-CH Romansh (Switzerland) rn-BI Rundi (Burundi) ro-MD Romanian (Moldova) ro-RO Romanian (Romania) rof-TZ Rombo (Tanzania) ru-BY Russian (Belarus) ru-KG Russian (Kyrgyzstan) ru-KZ Russian (Kazakhstan) ru-MD Russian (Moldova) ru-RU Russian (Russia) ru-UA Russian (Ukraine) rw-RW Kinyarwanda (Rwanda) rwk-TZ Rwa (Tanzania) sah-RU Sakha (Russia) saq-KE Samburu (Kenya) sbp-TZ Sangu (Tanzania) se-FI Northern Sami (Finland) se-NO Northern Sami (Norway) se-SE Northern Sami (Sweden) seh-MZ Sena (Mozambique) ses-ML Koyraboro Senni (Mali) sg-CF Sango (Central African Republic) si-LK Sinhala (Sri Lanka) sk-SK Slovak (Slovakia) sl-SI Slovenian (Slovenia) smn-FI Inari Sami (Finland) sn-ZW Shona (Zimbabwe) so-DJ Somali (Djibouti) so-ET Somali (Ethiopia) so-KE Somali (Kenya) so-SO Somali (Somalia) sq-AL Albanian (Albania) sq-MK Albanian (North Macedonia (FYROM)) sq-XK Albanian (Kosovo) sr-Cyrl-BA Serbian (Cyrillic,Bosnia & Herzegovina) sr-Cyrl-ME Serbian (Cyrillic,Montenegro) sr-Cyrl-RS Serbian (Cyrillic,Serbia) sr-Cyrl-XK Serbian (Cyrillic,Kosovo) sr-Latn-BA Serbian (Latin,Bosnia & Herzegovina) sr-Latn-ME Serbian (Latin,Montenegro) sr-Latn-RS Serbian (Latin,Serbia) sr-Latn-XK Serbian (Latin,Kosovo) sv-AX Swedish (Åland Islands) sv-FI Swedish (Finland) sv-SE Swedish (Sweden) sw-CD Swahili (Congo (DRC)) sw-KE Swahili (Kenya) sw-TZ Swahili (Tanzania) sw-UG Swahili (Uganda) ta-IN Tamil (India) ta-LK Tamil (Sri Lanka) ta-MY Tamil (Malaysia) ta-SG Tamil (Singapore) te-IN Telugu (India) teo-KE Teso (Kenya) teo-UG Teso (Uganda) th-TH Thai (Thailand) to-TO Tongan (Tonga) tr-CY Turkish (Cyprus) tr-TR Turkish (Türkiye) twq-NE Tasawaq (Niger) tzm-MA Central Atlas Tamazight (Morocco) ug-CN Uyghur (China) uk-UA Ukrainian (Ukraine) ur-IN Urdu (India) ur-IN-u-nu-latn Urdu (India,Western Digits) ur-PK Urdu (Pakistan) ur-PK-u-nu-arabext Urdu (Pakistan,Extended Arabic-Indic Digits) uz-Arab-AF Uzbek (Arabic,Afghanistan) uz-Cyrl-UZ Uzbek (Cyrillic,Uzbekistan) uz-Latn-UZ Uzbek (Latin,Uzbekistan) vi-VN Vietnamese (Vietnam) vun-TZ Vunjo (Tanzania) wae-CH Walser (Switzerland) xog-UG Soga (Uganda) yav-CM Yangben (Cameroon) yo-BJ Yoruba (Benin) yo-NG Yoruba (Nigeria) yue-HK Cantonese (Hong Kong) zgh-MA Standard Moroccan Tamazight (Morocco) zh-Hans-CN Chinese (Simplified Han,China) zh-Hans-HK Chinese (Simplified Han,Hong Kong) zh-Hans-MO Chinese (Simplified Han,Macao) zh-Hans-SG Chinese (Simplified Han,Singapore) zh-Hant-HK Chinese (Traditional Han,Hong Kong) zh-Hant-MO Chinese (Traditional Han,Macao) zh-Hant-TW Chinese (Traditional Han,Taiwan) zu-ZA Zulu (South Africa) 父主题: 附录
  • 使用方法 从最新动态里获取2020.10.9(含)后的镜像。 用获取到的镜像id替换云手机镜像。您可以在console上单击重启手机按钮进行换镜像,或调用重启云手机API接口重启手机换镜像。 上传图片到云手机/data/local/tmp/路径下。例如/data/local/tmp/pic.jpeg。 设置手机属性com.cph.cam_local_pic_path=/data/local/tmp/pic.jpeg(可通过adb shell设置,或调用更新云手机属性API接口设置属性)。设置立即生效。 打开一款调用摄像头的APP,即可看到您上传的图片。
  • 后续操作 您可以在“服务器管理”页面查看服务器的状态、IP地址等信息,在“实例管理”页面查看云手机状态、名称等信息。云手机数量取决于购买服务器时所选择的云手机规格,假设规格中“手机开数”为60,则可创建的云手机数量为60台。 所有云手机共用一个服务器的公网IP,每台云手机都拥有独立的私有IP。 云手机购买成功后,您可能需要连接云手机,目前支持ADB连接方式。ADB方式是通用的连接方式,所有规格的云手机均支持。 连接云手机后,您可能希望完成一些高阶功能,请参考如下链接: 通过Airtest快速获取云手机画面 修改云手机的GPS定位信息 如果共享带宽大小不能满足当前的业务需求,您可以升级共享带宽(仅支持API方式)。
  • 步骤2:通过ADB连接云手机 登录弹性云服务器。 本地下载ADB工具并上传至云服务器。 访问https://developer.android.com/studio/releases/platform-tools,在页面右上角切换语言为“English”,选择“Download SDK Platform-Tools for Windows”。 图6 下载ADB工具 在弹出的对话框中勾选“I have read and agree with the above terms and conditions”,并单击“DOWNLOAD ANDROID SDK PLATFORM-TOOLS FOR WINDOWS”进行下载。 解压ADB工具安装包(假设为platform-tools_r29.0.5-windows.zip)至云服务器指定目录下(PATH)。 进入“PATH\platform-tools”目录。 执行如下ADB命令连接云手机。 adb connect 服务器监听IP:服务器监听端口 服务器监听IP和服务器监听端口的获取方式如下: 在实例管理页面,单击待连接的云手机名称,进入详情页。 在“应用端口”区域获取服务器监听地址。 图7 应用端口 以图7中的信息为例,ADB命令为: adb connect 172.31.248.213:4673 若您购买云手机服务器时选择开启IPv6,云手机详情页会如图8所示,同时存在IPv4与IPv6的实例地址和服务器监听地址,监听端口相同。 通过IPv6地址连接的ADB命令为: adb connect [2409:8c85:80:32:cb7e:97e3:e424:1286]:4615 (注意添加中括号) 图8 应用端口 执行adb devices命令,检测当前端口是否已连接。 回显如下类似信息,表示连接成功。 List of devices attached172.31.248.213:4673 device 执行相关ADB命令,开始操作云手机。 ADB连接的故障排查,请参考如下链接: ADB连接云手机时报错“unable to connect to :5555”? ADB连接突然中断,如何解决?
  • 前提条件 适用于使用系统定义网络和自定义网络的云手机服务器。 云手机实例状态必须为“运行中”。 请确保租户VPC已放通将要访问的云手机IP地址和端口的安全组入方向规则。 云手机IP地址和端口获取方式:进入云手机实例详情页,在“应用端口”中获取“服务器监听地址”,如图3所示。 图3 应用端口 ADB内网直连方式无认证,放通ADB端口的安全组规则后,允许的地址都能使用ADB内网直连云手机。如需要ADB连接云手机,推荐使用SSH隧道方式。 租户VPC下已创建一台Windows系统的弹性云服务器。 若要通过IPv6地址连接双栈云手机,需保证您的弹性云服务器等发起访问的环境支持IPv6(使用系统定义网络的云手机服务器不支持IPv6)。
  • 云手机视频 视频初始化 初始化视频服务,设置视频初始化参数,包括视频格式、编码模式、分辨率、码率等。 启动视频服务 启动视频服务,获取视频数据。 停止视频服务 停止视频服务,停止视频数据的获取。 销毁视频服务 销毁视频服务。 获取视频服务状态 获取视频服务状态,包括初始化、运行中、停止、无效等。 获取当前视频参数 获取视频服务当前参数配置,包括帧率、码率、码控模式、分辨率等。 动态设置视频参数 动态设置视频服务参数配置,包括帧率、码率、分辨率等。
  • 调用API更换弹性公网IP 解绑弹性公网IP。 请在管理控制台或者调用查询云手机服务器详情接口,查询服务器的EIP的ip地址(例如 122.9.102.xxx)。 在弹性公网IP的管理控制台或者调用全量查询弹性公网IP列表接口,通过ip地址查询EIP的id。 调用解绑弹性公网IP的解绑弹性公网IP接口进行解绑。 调用示例如下: curl -i -k -X POST https://{Endpoint}/v3/{project_id}/eip/publicips/{eip_id}/disassociate-instance -H "Content-Type: application/json" -H "X-Auth-Token: ${token}" 绑定弹性公网IP。 严格来讲弹性公网IP实际是绑定到port的,存在空闲port的机器可以进行绑定操作。 根据第1步的指导查询到要绑定的弹性公网IP的id,这个弹性公网IP需要是未绑定状态。 根据CPH的server_id调用查询端口列表接口,查询出服务器的所有port。 调用示例如下: curl -i -k -X GET https://{Endpoint}/v1/{project_id}/ports?instance_id={cph_server_id} -H "Content-Type: application/json" -H "X-Auth-Token: ${token}" 根据port_id调用查询EIP列表接口查询弹性公网IP,可以一次传入一个或多个port_id进行查询,如果哪个port查不到弹性公网IP,则说明它可以绑定弹性公网IP。 调用示例如下: curl -i -k -X GET https://{Endpoint}/v1/{project_id}/publicips?port_id={port_id1}\&port_id={port_id2}\&port_id={port_id3} -H "Content-Type: application/json" -H "X-Auth-Token: ${token}" 对于没有绑定弹性公网IP的port,可以调用绑定弹性公网IP接口,绑定弹性公网IP。 调用示例如下: curl -i -k -X POST https://{Endpoint}/v3/{project_id}/eip/publicips/{eip_id}/associate-instance -H "Content-Type: application/json" -H "X-Auth-Token: ${token}" -d '{"publicip":{"associate_instance_id":"{port_id}","associate_instance_type":"PORT"}}'
  • 支持审计的关键操作列表 表1 云审计 支持的云手机操作列表 操作名称 资源类型 事件名称 创建云手机 phone createCloudPhone 更新云手机名称 phone updatePhoneName 重置云手机 phone resetCloudPhone 重启云手机 phone restartCloudPhone 添加SD卡文件 phone addSdFiles 删除SD卡文件 phone deleteSdFiles 设置事件通知 phone setEventNotification
  • 约束与限制 CPH服务对批量控制风险与安全进行如下约束: 目前支持的控制命令: shell:在云手机设备中启动远程交互式shell。 install:将软件包安装到云手机系统。 uninstall:从云手机系统中移除软件包。 push:将文件或者文件夹从本地设备复制到云手机设备上。 控制命令数据和指令不当,会造成云手机故障并无法恢复。 如果需要执行install、push命令,则需要严格按照操作步骤进行设置,并独立构建批量控制APK数据桶与其他数据隔离。 如果需要执行install、push命令,文件必须为tar格式,压缩的文件路径按照AOSP(Android Open Source Project)的目录结构放置。 同一台云手机服务器,文件推送任务耗时与文件推送任务个数成正比。
  • 参数配置 参数 描述 默认值 hbase.replication.bulkload.enabled 是否开启批量加载数据复制功能。参数值类型为Boolean。开启批量加载数据复制功能后该参数须在主集群中设置为“true”。 false hbase.replication.cluster.id 源HBase集群ID。开启批量加载数据复制功能必须设置该参数,在源集群定义,参数值类型为String。 -
  • 使用ReplicationSyncUp工具 在主集群hbase shell执行以下命令: hbase org.apache.hadoop.hbase.replication.regionserver.ReplicationSyncUp -Dreplication.sleep.before.failover=1 replication.sleep.before.failover是指在RegionServer启动失败时备份其剩余数据前需要的休眠时间。由于30秒(默认值)的睡眠时间没有任何意义,因此将其设置为1(s),使备份过程更快触发。
  • 注意事项 当主集群关闭时,此工具将从ZooKeeper节点(RegionServer znode)获得WAL的处理进度以及WAL的处理队列,并将未复制的队列复制到备集群中。 每个主集群的RegionServer在备集群ZooKeeper上的replication节点下都有自己的znode。它包含每个对等集群的一个znode。 当Regionserver故障时,主集群的每个RegionServer都会通过watcher收到通知,并尝试锁定故障RegionServer的znode,包含它的队列。成功创建的RegionServer会将所有队列转移到自己队列的znode下。队列传输后,将从旧位置删除。 在主集群关闭期间,ReplicationSyncUp工具将使用来自ZooKeeper节点的信息同步主备集群的数据,并且RegionServer znode的wals将被移动到备集群下。
  • 前提条件 主备集群已经安装并且启动。 主备集群上的时间必须一致,而且主备集群上的NTP服务必须使用同一个时间源。 当主集群HBase服务关闭时,Zookeeper和HDFS服务应该启动并运行。 该工具应该由启动HBase进程的系统用户运行。 如果处于安全模式,请确保备集群的HBase系统用户具有主集群HDFS的读取权限。因为备集群将更新HBase系统Zookeeper节点和HDFS文件。 主集群HBase故障后,主集群的Zookeeper、文件系统和网络依然可用。
  • 场景介绍 HBase本身提供了ImportTsv&LoadIncremental工具来批量加载用户数据。当前提供了HIndexImportTsv来支持加载用户数据的同时可以完成对索引数据的批量加载。HIndexImportTsv继承了HBase批量加载数据工具ImportTsv的所有功能。此外,如果在执行HIndexImportTsv工具之前未建表,直接运行该工具,将会在创建表时创建索引,并在生成用户数据的同时生成索引数据。
  • Loader连接配置说明 Loader支持以下多种连接: generic-jdbc-connector:参数配置请参见表1。 ftp-connector:参数配置请参见表2。 sftp-connector:参数配置请参见表3。 hdfs-connector:参数配置请参见表4。 oracle-connector:参数配置请参见表5。 mysql-fastpath-connector:参数配置请参见表7。 oracle-partition-connector:参数配置请参见表6。
  • 回答 如果LoadIncrementalHFiles工具依赖的Client在集群内安装,且和DataNode在相同的节点上,在工具执行过程中HDFS会创建短路读提高性能。短路读依赖“/var/run/ FusionInsight -HDFS”目录(“dfs.domain.socket.path”),该目录默认权限是750。而当前Linux用户没有权限操作该目录。 上述问题可通过执行以下方法解决: 方法一:创建新用户(推荐使用)。 通过Manager页面创建新的用户,该用户属组中默认包含ficommon组。 [root@xxx-xxx-xxx-xxx ~]# id testuid=20038(test) gid=9998(ficommon) groups=9998(ficommon) 重新执行ImportData。 方法二:修改当前用户的属组。 将该用户添加到ficommon组中。 [root@xxx-xxx-xxx-xxx ~]# usermod -a -G ficommon test[root@xxx-xxx-xxx-xxx ~]# id testuid=2102(test) gid=2102(test) groups=2102(test),9998(ficommon) 重新执行ImportData。
  • 问题 在普通集群中手动创建Linux用户,并使用集群内DataNode节点执行批量导入时,为什么LoadIncrementalHFiles工具执行失败报“Permission denied”的异常? 2020-09-20 14:53:53,808 WARN [main] shortcircuit.DomainSocketFactory: error creating DomainSocketjava.net.ConnectException: connect(2) error: Permission denied when trying to connect to '/var/run/FusionInsight-HDFS/dn_socket'at org.apache.hadoop.net.unix.DomainSocket.connect0(Native Method)at org.apache.hadoop.net.unix.DomainSocket.connect(DomainSocket.java:256)at org.apache.hadoop.hdfs.shortcircuit.DomainSocketFactory.createSocket(DomainSocketFactory.java:168)at org.apache.hadoop.hdfs.client.impl.BlockReaderFactory.nextDomainPeer(BlockReaderFactory.java:804)at org.apache.hadoop.hdfs.client.impl.BlockReaderFactory.createShortCircuitReplicaInfo(BlockReaderFactory.java:526)at org.apache.hadoop.hdfs.shortcircuit.ShortCircuitCache.create(ShortCircuitCache.java:785)at org.apache.hadoop.hdfs.shortcircuit.ShortCircuitCache.fetchOrCreate(ShortCircuitCache.java:722)at org.apache.hadoop.hdfs.client.impl.BlockReaderFactory.getBlockReaderLocal(BlockReaderFactory.java:483)at org.apache.hadoop.hdfs.client.impl.BlockReaderFactory.build(BlockReaderFactory.java:360)at org.apache.hadoop.hdfs.DFSInputStream.getBlockReader(DFSInputStream.java:663)at org.apache.hadoop.hdfs.DFSInputStream.blockSeekTo(DFSInputStream.java:594)at org.apache.hadoop.hdfs.DFSInputStream.readWithStrategy(DFSInputStream.java:776)at org.apache.hadoop.hdfs.DFSInputStream.read(DFSInputStream.java:845)at java.io.DataInputStream.readFully(DataInputStream.java:195)at org.apache.hadoop.hbase.io.hfile.FixedFileTrailer.readFromStream(FixedFileTrailer.java:401)at org.apache.hadoop.hbase.io.hfile.HFile.isHFileFormat(HFile.java:651)at org.apache.hadoop.hbase.io.hfile.HFile.isHFileFormat(HFile.java:634)at org.apache.hadoop.hbase.tool.LoadIncrementalHFiles.visitBulkHFiles(LoadIncrementalHFiles.java:1090)at org.apache.hadoop.hbase.tool.LoadIncrementalHFiles.discoverLoadQueue(LoadIncrementalHFiles.java:1006)at org.apache.hadoop.hbase.tool.LoadIncrementalHFiles.prepareHFileQueue(LoadIncrementalHFiles.java:257)at org.apache.hadoop.hbase.tool.LoadIncrementalHFiles.doBulkLoad(LoadIncrementalHFiles.java:364)at org.apache.hadoop.hbase.tool.LoadIncrementalHFiles.run(LoadIncrementalHFiles.java:1263)at org.apache.hadoop.hbase.tool.LoadIncrementalHFiles.run(LoadIncrementalHFiles.java:1276)at org.apache.hadoop.hbase.tool.LoadIncrementalHFiles.run(LoadIncrementalHFiles.java:1311)at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:76)at org.apache.hadoop.hbase.tool.LoadIncrementalHFiles.main(LoadIncrementalHFiles.java:1333)
共100000条
提示

您即将访问非华为云网站,请注意账号财产安全