• [ManageOne二...] 【华为云Stack ManageOne 运维侧北向对接】租户维度资源查询指南
    1 场景说明ManageOne运营侧支持多租户管理(模型说明可参考:https://bbs.huaweicloud.com/forum/thread-42904-1-1.html),企业在运营中,可以根据部门、业务划分创建多个租户(也就是一级VDC),租户则根据实际需求在创建子级部门(子级VDC),各部门内部继续划分项目,人员等,各租户之间资源、组织结构互相隔离,运营侧北向接口无法获得全局资源详情,以及各个租户的资源使用清单;如果您需要获取所有租户的资源使用清单,可通过调用ManageOne运维面租户资源查询接口获得租户维度的资源信息。2 实现效果获得ManageOne运营侧所有租户的组织结构信息(树状结构)获得每个VDC下的项目列表,以及每个项目下的资源清单获得每个VDC下已使用的资源总数和详情实现效果如下图所示,您可以按照需求,选择按照项目维度展示指定VDC中的资源(图中蓝色部分所示),也可以直接按照VDC维度展示资源(项目也作为一种资源,图中橙色部分所示):说明:资源实际是属于某一个具体的项目的,而不是直属于某个VDC,每个VDC下可以有多个项目,资源与VDC的关系是通过项目建立的;如果只需要获得资源与VDC的关系,可以不用查询项目信息,直接查询VDC下的各类资源信息;如果需要按照项目维度查看资源,需要首先获得VDC、项目的关系3 接口列表&准备工作查询租户和租户资源涉及到的接口如下:序号                                               URL                       说明1【PUT】/rest/plat/smapp/v1/oauth/token获取token2【GET】/rest/tenant-resource/v1/tenant/resources/{class-name}查询指定租户资源类型的所有资源列表正式调用接口前,需要获取接口文档,账号,域名,请参考:https://bbs.huaweicloud.com/forum/thread-35466-1-1.html4 查询步骤查整体流程为:查询VDC结构-->查询各VDC下的项目列表-->查询各项目下的资源列表和总数(或查询各VDC下的资源总数),这里分三部分进行介绍,具体如下:4.1 查询VDC结构步骤1 获取token调用方法:PUT调用URL:https://{运维侧对外访问域名}/rest/plat/smapp/v1/oauth/token请求头:Accept:application/json Content-Type:application/json;charset=UTF-8请求body:{     "grantType": "password",     "userName": "XXX",     "value": "***" }响应示例:{ "accessSession": "xxxxxxxxxxxxx", "roaRand": "xxxxxxxxxxxxx", "expires": 1800, "additionalInfo": null }accessSession的值即为token值步骤2 查询租户(一级VDC)列表调用方法:GET调用URL:https://{运维侧对外访问域名}/rest/tenant-resource/v1/tenant/resources/{class-name}(class-name取值为TENANT_VDC,分页参数说明:每页大小,limit=M,偏移量offset=N*M,N为大于等于0 的整数,M为大于0的整数)这里我们需要查询一级VDC,故而添加查询参数,为condition=level=1,其中“level=1”需要进行URL编码,完整请求示例如下:https://{运维侧对外访问域名}/rest/tenant-resource/v1/tenant/resources/TENANT_VDC?condition=level%3d1请求头:Accept:application/json Content-Type:application/json;charset=UTF-8 X-Auth-Token:xxxxxxxxxxxxx响应示例:{     "objList": [         {             "upperVdcId": "0",             "level": "1",             "class_Id": 1097,             "description": "",             "enterprise_id": "",             "ownerId": "5B59B2464A903738AF349C07386C210E",             "resId": "A4A77E4E5507386BAE607F07C72B8005",             "enabled": "true",             "domainId": "1ea3a6cfda594458a16c245477a6a2b0",             "is_Local": true,             "enterprise_project_id": "",             "class_Name": "TENANT_VDC",             "regionId": "C4CA4238A0B933828DCC509A6F75849B",             "createTime": 1585873605000,             "name": "xssvdc",             "id": "A4A77E4E5507386BAE607F07C72B8005",             "last_Modified": 1585903610930,             "nativeId": "5247a0f7-e7e0-44fd-99ca-5d2199d59e45"         },         {             "upperVdcId": "0",             "level": "1",             "class_Id": 1097,             "description": "",             "enterprise_id": "",             "ownerId": "5B59B2464A903738AF349C07386C210E",             "resId": "7FA97FAE8A9B302E8F1392A441338B1D",             "enabled": "true",             "domainId": "ac7ed4db084748089f5a6776159e4100",             "is_Local": true,             "enterprise_project_id": "",             "class_Name": "TENANT_VDC",             "regionId": "C4CA4238A0B933828DCC509A6F75849B",             "createTime": 1586712514000,             "name": "kn_test",             "id": "7FA97FAE8A9B302E8F1392A441338B1D",             "last_Modified": 1586742590678,             "nativeId": "33841673-ae08-417b-bfd7-1a7454abe623"         },         {             "upperVdcId": "0",             "level": "1",             "class_Id": 1097,             "description": "",             "enterprise_id": "",             "ownerId": "5B59B2464A903738AF349C07386C210E",             "resId": "96505D9FC39B342AA2DDCAB33A61BAA6",             "enabled": "true",             "domainId": "75d2d78c582a4265b285b19a812c7bc9",             "is_Local": true,             "enterprise_project_id": "",             "class_Name": "TENANT_VDC",             "regionId": "C4CA4238A0B933828DCC509A6F75849B",             "createTime": 1588707433000,             "name": "ljvdc",             "id": "96505D9FC39B342AA2DDCAB33A61BAA6",             "last_Modified": 1588737308798,             "nativeId": "b79593c2-22a7-4fc7-b164-b99498e09998"         }     ],     "totalNum": 3,     "pageSize": 100,     "totalPageNo": 1,     "currentPage": 1 }这里我们获得了一级VDC的列表,需要获得每个一级VDC的nativeId,用于查询一级VDC的子级VDC的查询条件步骤 3 查询指定VDC下的直属VDC列表调用方法:GET调用URL:https://{运维侧对外访问域名}/rest/tenant-resource/v1/tenant/resources/{class-name}(class-name取值为TENANT_VDC,分页参数说明:每页大小,limit=M,偏移量offset=N*M,N为大于等于0 的整数,M为大于0的整数)这里我们需要查询一级VDC下关联的二级VDC,故而添加查询参数,为condition=upperVdcId={上级VDC的nativeId},其中upperVdcId为步骤2中获得的一级VDC的nativeId,该查询条件需要进行URL编码,完整请求示例如下:https://{运维侧对外访问域名}/rest/tenant-resource/v1/tenant/resources/TENANT_VDC?condition=upperVdcId%3d5247a0f7-e7e0-44fd-99ca-5d2199d59e45请求头:Accept:application/json Content-Type:application/json;charset=UTF-8 X-Auth-Token:xxxxxxxxxxxxx响应示例:{     "objList": [         {             "upperVdcId": "5247a0f7-e7e0-44fd-99ca-5d2199d59e45",             "level": "2",             "class_Id": 1097,             "description": "",             "enterprise_id": "",             "ownerId": "5B59B2464A903738AF349C07386C210E",             "resId": "1518628BAF31330C95BD209B1D80DB11",             "enabled": "true",             "domainId": "1ea3a6cfda594458a16c245477a6a2b0",             "is_Local": true,             "enterprise_project_id": "",             "class_Name": "TENANT_VDC",             "regionId": "C4CA4238A0B933828DCC509A6F75849B",             "createTime": 1586912433000,             "name": "level2_vdc",             "id": "1518628BAF31330C95BD209B1D80DB11",             "last_Modified": 1586944226141,             "nativeId": "a7eaaffa-690a-4bb6-8f65-92256af8e555"         },         {             "upperVdcId": "5247a0f7-e7e0-44fd-99ca-5d2199d59e45",             "level": "2",             "class_Id": 1097,             "description": "",             "enterprise_id": "",             "ownerId": "5B59B2464A903738AF349C07386C210E",             "resId": "EB6A8863839A3BCEA0672912C427596D",             "enabled": "true",             "domainId": "1ea3a6cfda594458a16c245477a6a2b0",             "is_Local": true,             "enterprise_project_id": "",             "class_Name": "TENANT_VDC",             "regionId": "C4CA4238A0B933828DCC509A6F75849B",             "createTime": 1586372160000,             "name": "xssvdc_level2",             "id": "EB6A8863839A3BCEA0672912C427596D",             "last_Modified": 1586404128781,             "nativeId": "dcf8d612-2fde-4e46-9117-786b1cc43d8b"         }     ],     "totalNum": 2,     "pageSize": 100,     "totalPageNo": 1,     "currentPage": 1 }可以看到,这里查询出来的VDC的upperVdcId(即上级VDC的Id)均为同一个一级VDC;查询其他子级VDC的方法均与此相同,只需要获取上级VDC的nativeId,然后添加至查询的过滤条件中(condition=upperVdcId={上级VDC的nativeId}),即可查询出指定VDC的直属下级VDC;查询出云平台中所有VDC的关系之后,我们就能获得一个完整的VDC结构图了。说明:该方法只能查询指定VDC的直属VDC列表,不能获得指定VDC下的所有子级VDC如果您不希望频繁调用接口来获得VDC结构关系,您也可以查询出所有的VDC之后(使用接口【GET】/rest/tenant-resource/v1/tenant/resources/TENANT_VDC的分页查询所有VDC,分页参数说明:每页大小,limit=M,偏移量offset=N*M,N为大于等于0 的整数,M为大于0的整数),根据VDC的关联关系字段(VDC属性中,upperVdcId的值代表该VDC的上级VDC的nativeId,如果该值为0,代表该VDC为一级VDC),从而自行画出VDC结构图。4.2 查询指定VDC的项目列表在4.1章节中,我们获得了VDC的结构视图,下面我们继续获得指定VDC下的项目列表,方法如下:步骤 1 获取token参考4.1 章节步骤1,此处略步骤 2 查询指定VDC的项目列表查询VDC中的项目列表前,我们需要获得VDC的nativeId,可参考4.1章节获取,获取到VDC的nativeId后,我们指定查询条件,即可查询出指定VDC的项目列表,如下:调用方法:GET调用URL:https://{运维侧对外访问域名}/rest/tenant-resource/v1/tenant/resources/{class-name}(class-name取值为TENANT_PROJECT_VDC,分页参数说明:每页大小,limit=M,偏移量offset=N*M,N为大于等于0 的整数,M为大于0的整数)这里我们需要查询VDC下关联的项目,故而添加查询参数,为condition=vdcId={VDC的nativeId},其中vdcId为4.1章节中获得的VDC的nativeId,该查询条件需要进行URL编码,完整请求示例如下:https://{运维侧对外访问域名}/rest/tenant-resource/v1/tenant/resources/TENANT_PROJECT_VDC?condition=vdcId%3d5247a0f7-e7e0-44fd-99ca-5d2199d59e45请求头:Accept:application/json Content-Type:application/json;charset=UTF-8 X-Auth-Token:xxxxxxxxxxxxx响应体示例:{     "objList": [         {             "class_Id": 1010,             "regionName": "Global",             "ownerId": "5B59B2464A903738AF349C07386C210E",             "resId": "63117D907B9238DE820712C5CBDBEE07",             "is_Local": true,             "class_Name": "TENANT_PROJECT_VDC",             "regionId": "C4CA4238A0B933828DCC509A6F75849B",             "id": "63117D907B9238DE820712C5CBDBEE07",             "last_Modified": 1585902418060,             "domainNativeId": "1ea3a6cfda594458a16c245477a6a2b0",             "projectName": "xssvdc",             "nativeId": "7e2cbfc6dd924d028de45019a033086d",             "vdcId": "5247a0f7-e7e0-44fd-99ca-5d2199d59e45"         }     ],     "totalNum": 1,     "pageSize": 100,     "totalPageNo": 1,     "currentPage": 1 }由此我们获得了指定VDC中的项目列表,使用相同的方法,遍历每个VDC,即可获得所有VDC下的项目列表。您也可以不加过滤条件,直接查询出所有的项目,然后通过项目属性中的vdcId与VDC的nativeId进行关联,从而获得VDC与项目的关系。4.3 查询指定项目(或VDC)下的资源详情每个租户资源(如弹性云服务器、云磁盘、弹性IP等)的属性中,都提供了VDC,项目的Id,我们可以通过添加过滤条件获得指定VDC、项目下的资源列表,您可以根据实际需要,指定查询的维度,下面分别给出按照指定项目、VDC查询资源的示例。步骤 1 获取token参考4.1 章节步骤1,此处略步骤 2 查询指定项目下的租户资源信息ManageOne运维面支持的租户资源类型,请您参考《ManageOne 租户资源北向模型》(接口文档获取途径,参考第3章节)查看,这里以查询弹性云服务器为例举例说明,示例如下:调用方法:GET调用URL:https://{运维侧对外访问域名}/rest/tenant-resource/v1/tenant/resources/{class-name}(分页参数说明:每页大小,limit=M,偏移量offset=N*M,N为大于等于0 的整数,M为大于0的整数)这里我们需要弹性云服务器,查询《ManageOne 租户资源北向模型》可知class-name取值为CLOUD_VM,另外,我们需要指定项目查询弹性云服务器,故而需要添加查询参数,为condition=projectId={项目的nativeId},其中项目的resId为4.2章节中获得的项目的nativeId,,该查询条件需要进行URL编码,完整请求示例如下:https://{运维侧对外访问域名}/rest/tenant-resource/v1/tenant/resources/CLOUD_VM?condition=projectId%3d63117D907B9238DE820712C5CBDBEE07请求头:Accept:application/json Content-Type:application/json;charset=UTF-8 X-Auth-Token:xxxxxxxxxxxxx响应体示例:{     "objList": [         {             "ownerType": "compute",             "extraSpecs": "{\"cloud_image_nativeId\":\"936c276a-1df5-419f-8d6d-2bac9bfeaca0\",\"cloud_image_osVersion\":\"Astra Linux 1.4 64bit\",\"ips\":\"@192.168.1.130@\",\"cpuCoreNum\":2,\"cloud_image_name\":\"CentOS7Cloudinit\",\"cloud_image_osType\":\"Linux\"}",             "resourcePoolNativeId": "FUSION_CLOUD_dg-dg-1",             "privateIps": "@192.168.1.130@",             "ownerId": "B85415D3F5C43B14B7F041CA8C3E4318",             "cloudLocationName": "东莞",             "createdAt": "2020-04-03T08:48:19Z",             "powerState": "1",             "taskState": "",             "cloudType": "localcloud",             "id": "F8CB02A86B773031939676E979F93A91",             "podId": "BCC9732F656C31678C00F52B7229F8C2",             "bizRegionId": "B998E09832BA34B4BF3A4C649C421F3C",             "imageId": "13595CF012F43019A838B1E04E959C69",             "floatingIp": "",             "ipAddress": "192.168.1.130",             "hostId": "29394CC4CBDB3CAC91D0C4154F74EED3",             "hypervisorType": "unconfirmed",             "resId": "F8CB02A86B773031939676E979F93A91",             "tags": "[\"633653b4-21c4-413b-ae58-6876e3c6cee4\"]",             "is_Local": true,             "class_Name": "CLOUD_VM",             "azoneId": "4B22CC4D492C3159B26015C6B447BA94",             "physicalHostId": "29394CC4CBDB3CAC91D0C4154F74EED3",             "resourcePoolId": "E9CF706003FB3361BE20264F271000D9",             "name": "ecs-fdd0",             "projectName": "xssvdc",             "cloudLocationId": "62BF3042C98635FC8F523F0AB5CAD71E",             "projectId": "7e2cbfc6dd924d028de45019a033086d",             "bizRegionName": "东莞",             "status": "active",             "resourcePoolType": "FUSION_CLOUD",             "azoneName": "生态集成",             "regionName": "Global",             "flavorRamSize": "4096",             "flavorId": "B4CE5F4320EE3AB48F9BF4799BDF31DA",             "flavorDiskSize": "0",             "clusterId": "FAD2636DFBBD338EA500C7EBC89A68FC",             "tenantName": "",             "osVersion": "Astra Linux 1.4 64bit",             "clusterName": "HostGroup1",             "osType": "Linux",             "last_Modified": 1586855390354,             "flavorVcpu": "2",             "vdcId": "5247a0f7-e7e0-44fd-99ca-5d2199d59e45",             "userId": "1d1a51928327458ba89ffaacf77669e6",             "resourcePoolName": "OpenStack_dg-dg-1",             "bizRegionNativeId": "dg-dg-1",             "attr66": "attr66xx",             "regionId": "C4CA4238A0B933828DCC509A6F75849B",             "management": false,             "tenantId": "",             "vdcName": "xssvdc",             "nativeId": "3834689f-4aed-4645-984d-db7530dc1142",             "launchedAt": "2020-04-03T08:48:42.000000",             "vmState": "active",             "cpuCoreNum": "2"         }     ],     "totalNum": 1,     "pageSize": 100,     "totalPageNo": 1,     "currentPage": 1 }由此我们获得了指定项目下的弹性云服务器列表,如果您需要获得弹性云服务器详情,可参考:https://bbs.huaweicloud.com/forum/thread-35471-1-1.html。类似的,我们可以获得指定VDC下的弹性云服务器列表,只需要修改过滤条件为,为condition=vdcId={vdc的nativeId},其中项目的resId为4.2章节中获得的VDC的nativeId,该查询条件需要进行URL编码,完整请求示例如下:https://{运维侧对外访问域名}/rest/tenant-resource/v1/tenant/resources/CLOUD_VM?condition=projectId%3d5247a0f7-e7e0-44fd-99ca-5d2199d59e45
  • [ManageOne二...] 【华为云Stack ManageOne 运维侧北向对接】查询管理虚拟机详情
    1 说明ManageOne运维侧中虚拟机分为管理虚拟机和租户虚拟机(又叫弹性云服务器),二者属于不同的资源模型,查询时使用的接口也是不同的,租户虚拟机的查询,请参考https://bbs.huaweicloud.com/forum/thread-35471-1-1.html;这里说明如何查询管理虚拟机列表和详情。2 管理虚拟机模型结构在ManageOne运维侧,管理虚拟机的对象名称是SYS_VM,包含多个子对象,我们需要查询管理虚拟机关联的子对象详情,从而获得管理虚拟机的详细信息,如下表所示:父对象类型子对象类型(名称)可获得的关键信息父子对象关系名SYS_VM(管理虚拟机)SYS_Flavor(规格)虚拟机的vCPU、内存大小M_VMUsesFlavorSYS_Volume(虚拟机磁盘)虚拟机关联的磁盘,磁盘容量M_VMAttachedToVolumeSYS_vNIC(网卡)虚拟机IP地址,MAC地址M_VMConsistsOfvNICSYS_Image(镜像)虚拟机所使用的操作系统版本M_VMUsesImage3 接口清单&准备工作序号                                               URL                       说明1【PUT】/rest/plat/smapp/v1/oauth/token获取token2【GET】/rest/cmdb/v1/instances/{className}查询指定类型系统资源列表,此处className取值范围为第2章中所给出的父、子对象名称3【GET】/rest/cmdb/v1/instances/relations/{relationName}查询某类型关系的所有实例,此处relationName取值为第2章中所给出的父子对象关系名4【GET】/rest/cmdb/v1/instances/{className}/{instanceId}查询单个资源实例,此处className取值范围为第2章中所给出的父、子对象名称,instanceId为具体对象的资源ID正式调用接口前,需要获取账号,域名,请参考:https://bbs.huaweicloud.com/forum/thread-35466-1-1.html4 查询步骤查询管理虚拟机详情,整体流程为:查询管理虚拟机列表-->查询管理虚拟机与子对象的关系-->查询子对象详情,这里管理虚拟机有多个子对象,需要分别查询,具体步骤如下:步骤1 获取token调用方法:PUT调用URL:https://{运维侧对外访问域名}/rest/plat/smapp/v1/oauth/token请求头:Accept:application/json Content-Type:application/json;charset=UTF-8请求body:{     "grantType": "password",     "userName": "XXX",     "value": "***" }响应示例:{ "accessSession": "xxxxxxxxxxxxx", "roaRand": "xxxxxxxxxxxxx", "expires": 1800, "additionalInfo": null }accessSession的值即为token值步骤2 查询管理虚拟机列表调用方法:GET调用URL:https://{运维侧对外访问域名}/rest/cmdb/v1/instances/SYS_VM(该接口支持分页,分页参数为pageSize(每页大小),pageNo(页码数),二者均为大于等于1的整数)请求头:Accept:application/json Content-Type:application/json;charset=UTF-8 X-Auth-Token:xxxxxxxxxxxxx响应示例:{     "objList": [         {             "ownerType": "compute",             "extraSpecs": "{\"cloud_image_nativeId\":\"ed646e01-1055-4256-ad61-0934efb64505\",\"cloud_image_osVersion\":\"Euler Linux 1.4 64bit\",\"ips\":\"@192.168.65.100@\",\"cpuCoreNum\":2,\"cloud_image_name\":\"EulerOS_Cloudinit\",\"cloud_image_osType\":\"Linux\"}",             "azoneName": "manage-az",             "privateIps": "@192.168.65.100@",             "regionName": "Global",             "flavorId": "B4CE5F4320EE3AB48F9BF4799BDF31DA",             "clusterId": "CC30CD2C5BF33828B8C6B17BD98D2489",             "ownerId": "B85415D3F5C43B14B7F041CA8C3E4318",             "ramSize": "4096",             "deviceName": "activiti6",             "ownerName": "nova_az0.dc1_FUSION_CLOUD_dg-dg-1",             "clusterName": "manage-aggr",             "osType": "Linux",             "confirmStatus": "unconfirmed",             "vcpuSize": "2",             "id": "FB72F89FCC963E3EA885B0966575D56B",             "last_Modified": 1587471291521,             "podNativeId": "pod_manage-az",             "podId": "8F32491527EF3DC1ABD083CDBFB3719C",             "bizRegionId": "B998E09832BA34B4BF3A4C649C421F3C",             "imageId": "AAA42F14944139AD8A5DEBA932387ABB",             "originalState": "ACTIVE",             "ipAddress": "192.168.65.100",             "hostId": "99837AEF2D9B32D3A51DA09A8BE47F82",             "hypervisorType": "unconfirmed",             "resId": "FB72F89FCC963E3EA885B0966575D56B",  //记录此ID             "resourcePoolName": "OpenStack_dg-dg-1",             "keystoneId": "04C1343644D03924B9A957B059A689E4",             "tags": "[]",             "is_Local": true,             "class_Name": "SYS_VM",             "azoneId": "074D197A30B331A1A24DF9B76E16570C",             "regionId": "C4CA4238A0B933828DCC509A6F75849B",             "createTime": "2020-04-21T12:13:07Z",             "resourcePoolId": "E9CF706003FB3361BE20264F271000D9",             "name": "activiti6",             "isVirtual": true,             "nativeId": "b045e75c-fbdb-4a80-b97d-13d6040c2832",             "category": "VM",             "projectId": "51ec40deb84b4a279a422393d431feba",             "bizRegionName": "东莞",             "status": "active",             "resourcePoolType": "FUSION_CLOUD"         }     ],     "totalNum": 68,     "pageSize": 1,     "totalPageNo": 68,     "currentPage": 1 }这里我们可以获取管理虚拟机的资源ID,即resId。步骤3 查询管理虚拟机与子对象的关系调用方法:GET调用URL:https://{运维侧对外访问域名}/rest/cmdb/v1/instances/relations/{relationName}(relationName取值范围为第2章中的父子对象关系名,此处查询管理虚拟机与规格的关系,取值为M_VMUsesFlavor)此外,我们需要添加过滤条件,以便查询出指定租户虚拟机的规格,过滤条件书写方法为:condition=[{"simple":{"name":"source_Instance_Id","value":"FB72F89FCC963E3EA885B0966575D56B"}}](vlaue的值为步骤2中获得的管理虚拟机的资源ID),需要注意的是该查询条件需要经过URL编码(编码格式为UTF-8),即完整的请求链接为:https://{运维侧对外访问域名}/rest/cmdb/v1/instances/relations/M_VMUsesFlavor?condition=%5b%7b%22simple%22%3a%7b%22name%22%3a%22source_Instance_Id%22%2c%22value%22%3a%22FB72F89FCC963E3EA885B0966575D56B%22%7d%7d%5d请求头:Accept:application/json Content-Type:application/json;charset=UTF-8 X-Auth-Token:xxxxxxxxxxxxx响应示例:{     "objList": [         {             "source_Instance_Id": "FB72F89FCC963E3EA885B0966575D56B",             "target_Instance_Id": "B4CE5F4320EE3AB48F9BF4799BDF31DA",  //代表子对象的资源ID,即规格的资源ID             "relation_Name": "M_VMUsesFlavor",             "id": "FB72F89FCC963E3EA885B0966575D56B",             "last_Modified": 1587471291521,             "relation_Id": 1036         }     ],     "totalNum": 1,     "pageSize": 20,     "totalPageNo": 1,     "currentPage": 1 }这里我们获得了管理虚拟机所关联的规格的资源ID(target_Instance_Id即为子对象的资源ID),按照同样的方法,可以查询得到管理虚拟机关联的镜像,网卡,磁盘的资源ID,示例如下:查询管理虚拟机与镜像关系:https://{运维侧对外访问域名}/rest/cmdb/v1/instances/relations/M_VMUsesImage?condition=%5b%7b%22simple%22%3a%7b%22name%22%3a%22source_Instance_Id%22%2c%22value%22%3a%22FB72F89FCC963E3EA885B0966575D56B%22%7d%7d%5d查询管理虚拟机与磁盘关系(注意:查询磁盘关系时,使用的过滤条件略有区别,格式为:condition=[{"simple":{"name":"vmId","value":"FB72F89FCC963E3EA885B0966575D56B"}}]):https://{运维侧对外访问域名}/rest/cmdb/v1/instances/relations/M_VMAttachedToVolume?condition=%5b%7b%22simple%22%3a%7b%22name%22%3a%22vmId%22%2c%22value%22%3a%22FB72F89FCC963E3EA885B0966575D56B%22%7d%7d%5d查询管理虚拟机与网卡关系:https://{运维侧对外访问域名}/rest/cmdb/v1/instances/relations/M_VMConsistsOfvNIC?condition=%5b%7b%22simple%22%3a%7b%22name%22%3a%22source_Instance_Id%22%2c%22value%22%3a%22FB72F89FCC963E3EA885B0966575D56B%22%7d%7d%5d步骤 4 查询子对象详情调用方法:GET调用URL:https://{运维侧对外访问域名}/rest/cmdb/v1/instances/{className}/{instanceId}(此处className取值范围为第2章中所给出的子对象名称,即,SYS_Flavor、SYS_Volume、SYS_vNIC、SYS_Image,instanceId为子对象的资源ID,从步骤3的响应体中获取)此处以查询规格详情为例:完成的请求URL为:https://{运维侧对外访问域名}/rest/cmdb/v1/instances/SYS_Flavor/B4CE5F4320EE3AB48F9BF4799BDF31DA请求头:Accept:application/json Content-Type:application/json;charset=UTF-8 X-Auth-Token:xxxxxxxxxxxxx响应示例:{     "ownerType": "compute",     "extraSpecs": "{\"ecs:performancetype\":\"normal\",\"ecs:virtualization_env_types\":\"CloudCompute\",\"hw:cpu_mode\":\"aggregate\",\"hw:cpu_model\":\"\",\"resource_type\":\"<all-in-list> IOoptimized\",\"capabilities:cpu_info:arch\":\"x86_64\",\"huawei:extBootType\":\"Volume\",\"trust:trusted_host\":\"false\"}",     "regionName": "Global",     "ephemeral": "0",     "ramSize": 4096,     "ownerId": "B85415D3F5C43B14B7F041CA8C3E4318",     "diskSize": 0,     "ownerName": "nova_az0.dc1_FUSION_CLOUD_dg-dg-1",     "isPublic": "true",     "vcpuSize": 2,     "confirmStatus": "unconfirmed",     "disabled": "false",     "id": "B4CE5F4320EE3AB48F9BF4799BDF31DA",     "last_Modified": 1585903613086,     "bizRegionId": "B998E09832BA34B4BF3A4C649C421F3C",     "class_Id": 1049,     "resourcePoolName": "OpenStack_dg-dg-1",     "resId": "B4CE5F4320EE3AB48F9BF4799BDF31DA",     "is_Local": true,     "class_Name": "CLOUD_FLAVOR",     "regionId": "C4CA4238A0B933828DCC509A6F75849B",     "resourcePoolId": "E9CF706003FB3361BE20264F271000D9",     "name": "2U4G",     "nativeId": "599fb5b8-e04a-4db1-8535-8fa586c1ae63",     "bizRegionName": "东莞" }由此我们获得了管理虚拟机的规格信息,类似的我们可以获得管理虚拟机的镜像,网卡,磁盘详情,URL示例如下:https://{运维侧对外访问域名}/rest/cmdb/v1/instances/SYS_Image/{image_resId}https://{运维侧对外访问域名}/rest/cmdb/v1/instances/SYS_vNIC/{vNIC_resId}https://{运维侧对外访问域名}/rest/cmdb/v1/instances/SYS_Volume/{volume_resId}查询完所有子对象的详情后,我们就可以获得管理虚拟机的详细信息了
  • [技术干货] 【转载】快速了解云原生中的微服务应用
    转载自:CSDN博主「华为云」的原创文章原文链接:https://blog.csdn.net/devcloud/article/details/106492124【摘要】 云原生应用时代,如何集中团队力量在业务场景设计和实现,从而最大化软件研发ROI?如何利用云服务厂商,高效率低成本的开发高性能高可靠的微服务应用?                   “未来的软件一定是生长于云上的”1. 云原生时代的应用云原生时代,随着容器技术、微服务架构思想、产品研发运营模式不断地推陈出新和迅速发展,应用的设计和开发落地门槛已经降低到了历史低点。根据国际知名数据咨询公司IDC(国际数据公司)的调查研究表明,从2018年到2023年将有超过500,000,000个应用被创建,这个数字是过去40年所有创建应用的总和。另外,在IDC于2020年2月发布的《IDC FutureScape: 全球云计算2020 年预测——中国启示》中显示,云原生应用所影响的领域正逐渐从互联网走向非互联网,从传统应用升级走向云原生。当下,云原生技术的成熟正极大地影响着个人、企业乃至整个社会的生产生活方式。下面是几条与云原生应用强相关的预测内容:分布式云:到2021年,中国90%以上的企业将依赖于本地/专属私有云、多个公有云和遗留平台的组合,以满足其基础设施需求。API生态:到2023年,90%的新数字服务将使用公有云和内部API提供的服务构建复合型应用程序;其中一半将利用人工智能(AI)和机器学习(ML)。多云管理:到2022年,50%的企业将部署统一的VMs、Kubernetes和多云管理流程和工具,以支持跨本地和公有云部署的多云管理和治理。云堆栈扩展:到2024年,10%的企业内部工作负载将由公有云服务商数据中心以外的、位于客户数据中心和边缘位置的公有云堆栈提供支持。超敏捷APP:到2023年,50%的中国企业应用将部署在容器化的混合云/多云环境中,以提供敏捷的、无缝的部署和管理体验。在这场应用的变革中,越来越多的应用所有方会将应用基础设施交由更加专业的公有云/混合云服务商进行管理,通过API的方式对基础设施进行管理,由服务商提供更加敏捷和无缝的部署管理功能。如此,应用所有方可以将更多的投资及人力投入聚焦到应用本身的业务逻辑设计、开发、运维和体验优化,大大减少了产品上市的时间并得到了更高的可伸缩性,使应用开发的ROI(投资回报率)最大化。2. 使用微服务架构构建云原生应用云原生应用的定义有多种版本,最早为2015年pivital提出了云原生应用的定义,随后CNCF在2015年也对云原生应用进行了定义,2018年进行了重定义,具体定义可以参考kubernetes-handbook。可以发现自从云原生的概念出现,微服务架构就是云原生应用中浓墨重彩的一部分。这一节里会讲到微服务架构使用场景,微服务应用在整个应用技术栈中的位置,和开发一个微服务你需要做的事情。2.1. 使用微服务的场景构建云原生应用,首先一定是企业或者个人想要最大程度将自己的时间和精力从复杂的底层依赖开发维护中解放出来,集中在业务场景的设计和实现上,并且能够独立解耦的自动化完成应用各个模块的开发落地。这意味着独立开发的某一模块或负责某一单独业务的开发者,会最大程度的利用云厂商提供地DevOps工具链完成整个应用开发运维的共同目标,这样大家可以轻松地将应用作为一个松耦合的服务集合快速发布和更新,降低成本的同时也更容易避免单点故障。2.2. 微服务应用在技术栈中的位置假设应用所有者已经做好了微服务的业务设计,我们来看看在落地阶段,微服务应用在产品研发和运行中的位置:红色部分为微服务应用的核心模块,是由应用所有者开发和维护地运行时微服务应用。随着业务的增长,受系统能力影响,为了提高微服务的高可用、可靠性以及韧性,需要对微服务进行治理。常见的治理手段有:负载均衡、熔断、限流、降级、容错和隔离等,篇幅有限这里不加赘述。黄色部分从左到右代表从Dev到Ops的技术栈。首先,应用开发者需要根据应用类型,选择依赖的微服务开发框架(chassis),使用框架时可以通过添加注解的方式,处理微服务运行时面临的横切面问题(crosscutting concern),比如:日志框架(log4j/logback)、健康检查、metrics、分布式追踪等。其次,编码完成后,可使用云服务厂商提供的DevOps工具链能力实现代码的归档、编译构建、发布部署等能力,将微服务部署在运行环境中。最后,还可以利用云服务厂商提供的运维能力对微服务进行运维监控。一般来说,云服务厂商提供的应用平台能力也是独立而解耦的,应用所有者可根据自己的需求和预算来自定义选择自己需要的服务。紫色部分是运行时技术栈,蓝色箭头代表流量的流向。当微服务部署运行起来后,流量会从各种客户端首先连接到入口(比如服务网关/ELB),同时,流量在这里会根据请求特征分发到各个对应的业务处理微服务,随后对请求进行一系列的处理,返回结果。微服务的运行还依赖了很多中间件,比如:缓存、消息等;还有一些微服务的功能特性,比如:服务网格、服务注册发现等,这些中间件或特性也都由框架或者云服务厂商提供。微服务和中间件等其实都是上层服务部署在基础设施上,比如:虚机、容器或CCI实例。 综上所述,一个应用的落地其实涉及到很多技术和场景,使用微服务架构开发应用可以最大程度的简化应用所有者对底层设施和中间件的管理运维,通过自定义使用云服务厂商提供地全场景、端到端的应用平台能力,将资源聚焦在业务创新和落地上(红框部分)。3. 实践 - 一元体验all above最后,华为云CSE微服务平台提供了以ServiceComb开源框架拖底的配置中心和服务中心,提供动态配置和可靠的服务中心服务。ServiceComb服务中心在华为内部的大规模生产实践(支撑华为商城运行),支撑起数十万级别的tps的服务集群,可靠性得到了充分的验证。
  • [分享交流] 新基建按下新一代私有云快进键
    5月28日下午,2020年全国两会正式落下帷幕。今年的政府工作报告中明确提出“加强新型基础设施建设”。今年以来,国家层面屡次提及“新基建”,自上而下的大力推动让新基建成为市场关注的热词。云计算作为新基建的中枢,正加快应用落地的进程,在互联网、交通、物流、金融、政务、教育等不同领域实现快速发展。而对企业级客户来说,以新一代私有云为核心的多云,是更接近数据、更经济、更安全又能够承载新一代应用、保护已有投资的最佳选择。——那么,新基建、云计算,新一代私有云都有着怎样的密切联系?一,新基建进程下云思维的重大变革目前,国家正在加速推动新基建建设进程,新基建并非粗放型的放大规模数字,是要提升云平台基础设施能力,完善计算、存储、网络、安全防护等云服务,深入推动中小企业上云,促进大型企业、政府机构、金融机构等国计民生关键领域更多的信息系统向云平台转移。如今,全球数据中心都以x86架构服务器为核心计算单元,随着non-x86架构的崛起,由于不同工作负载,及计算多样化的需求的存在,数据中心呈现多样性架构。新一代私有云的初衷定位就是为供给侧国计民生重点行业企业的数据中心提供云服务,支持x86+non-x86多云异构架构,一方面可以提供从芯到云,以本质安全到过程安全为核心的云服务,解决关键软件安全问题,构建安全新基建,确保经济安全高效运行;另一方面,也可以根据实体经济企业的不同需求,提供产品形态可进化、云服务能力可进化、支撑场景可进化的新一代私有云,加快这些国计民生行业数据中心建设和应用,支持为新基建数据中心赋能,这也是中国特色的数据中心新基建发展之路。那么,什么是新一代私有云?如果用一句话总结就是——新一代私有云是云的私有部署。“云的私有部署”对于传统私有云的提法并不是新瓶装旧酒,而是站在云计算的下半场节点,重新以统一视角来看待云计算的发展。2006年,亚马逊AWS率先开始提供公有云服务,从执意认定只有公有云到2016年与VMware私有云合作,再到2019年发布私有部署产品Outpost,在多云时代,这种公有云和私有云对立的方式发生了质的变化,“云的私有部署“和“云的公有部署“更能折射整个云计算行业的巨变。的确,“将云移动到数据上”打消了行业企业客户“将数据迁移到中心云/公有云上”所产生的数据安全、应用延迟、迁移成本、复杂环境、监管合规、知识产权等诸多疑虑,是真正以客户为核心的数字化转型模型。一方面,相对私有云和公有云以云为中心的技术侧表达,云的私有部署和云的公有部署更能体现以“将云移动到数据上”的客户侧表达,即防火墙内的业务数据需要云的私有部署,防火墙外的业务数据需要云的公有部署;另一方面,相对私有云和公有云的分割式表达,云的私有部署和云的公有部署更能体现云的一致性体验,这也意味着私有云不应该是普遍认为的基于虚拟化的IaaS层,而是将从IaaS到Cloud。这是云计算发展历程中思考维度的重要变革。二,可进化新一代私有云第一代私有云,严格意义上只能称作虚拟化+云管。企业客户基本没有新一代云应用,他们上云多是从虚拟化管理和降低成本出发,这样的项目限制了私有云的想象力。第二代私有云有新一代云应用,但在丰富程度和应用碎片化等体验上与公有云相比缺乏竞争力,商业模仍处于licence为主的软件时代,由于客户环境复杂存在大量定制化,部署和运维复杂,无法实现平滑升级。以上都是传统私有云,受挫的主要原因在于交付集成式“假云”:一方面,早期尝鲜的大型客户的私有云立项过于复杂、建设目的是管理出发而不是创新业务驱动;另一方面,以云管为中心的拼凑式产品线组合,交付周期长,交付结果不能体现云的灵活、简单、弹性和对接PaaS生态的可能性。新一代私有云并非私有云的一个新版本,相反,它通过软件定义硬件、软件和硬件解耦、软件可进化、硬件可升级的OTA(Over the Air)特色,通过可进化这一核心要点实现了私有云的无版本化和服务化,帮助企业用户从最基础的3节点到无上限的超大规模云平台实现了统一架构,在基于开源生态技术栈的同时,保持高度产品化体验,通过业务无感知,数据不迁移,服务不中断的平滑无感可进化方式,构建以数据为中心、面向多云的私有云平台。新一代私有云从云的私有部署角度来看包括以下特性:首先,在业务层的应用上,新一代私有云能够承载Cloud、Mobile、IoT、BigData、AI等新一代企业级应用。第二,在PaaS的体验上,基于开源PaaS为主的生态,通过Kubernetes构建跨公有云/私有云的可共享PaaS,使得新一代私有云支撑更为丰富的应用;另一方面,企业客户也可以根据自身需求在云上开发新的PaaS,应用于特定场景和适用行业;第三,在IaaS的实施上,通过云平台的微服务化和一体化设计,新一代私有云能够为企业用户带来公有云似的消费级体验,不仅从交付、运维、升级都可以实现“交钥匙工程”,也使得新一代私有云按需付费的云服务模式得以实现,从云软件时代进入云服务时代。第四,在演进路径上,基于开源生态的产品化是新一代私有云演进的最佳实践。当IBM收购红帽,微软收购Github,当各大公有云厂商大量应用Linux/KVM/MangoDB等开源技术,谷歌更是在Google cloudnext 20**会上直接挑明——“公有云的未来是开源”。同理,新一代私有云在保持与开源生态兼容与同步的前提下高度产品化,一方面保持与社区的充分同步,另一方面通过场景化的合作生态来满足客户需求,这是复杂环境下以场景化替代定制化的必然之举,也是丰富PaaS生态的必由之路。第五,在演进方式上,可进化是新一代私有云演进的核心驱动力。不同于可升级,可进化需要服务能力、产品形态、支撑场景三大方向上实现演进,这就意味着可进化不仅要支持云平台本身服务能力的平滑升级,还需要在产品形态上解决从软硬一体的云就绪超融合,到私有云、行业云、多云的不同形态上的进化问题,并同时在支撑场景上解决从计算、网络、存储到商业存储和商业SDN,从虚拟化到裸金属,从容器集群到软件基础设施、从DevOps到IOT等满足企业级需求的可进化问题。其中,微服务架构是新一代私有云实现的技术核心之一。通过微服务编排引擎、滚动升级引擎、实时负载导流引擎、服务监控与自愈引擎等技术模块实现了IaaS的SaaS化,使得新一代私有云平滑无感的持续进化与公有云似的消费级体验成为可能。一体化也是新一代私有云实现的技术核心之一。不同于一些传统私有云将计算虚拟化、存储虚拟化、网络虚拟化、云管系统形成割裂的产品线和不同版本的组合,新一代私有云通过云平台总体架构和不同组件之间的一体化与协同,一方面把大规模分布式架构、用户态、内核、体系结构与协议栈和硬件完全解构,从而使其具备在全生命周期中高度分工与协同,且可在无人干预的状态下实现全自动化的交付。另一方面,一体化设计还可以实现整个平台事件、API、服务、组件之间具备高度统一与协同,使得新一代私有云的场景化能力水到渠成,通过融合开源生态或第三方商业产品丰富PaaS能力,还可在多云世界中获得与公有云共享的PaaS应用。三,新一代私有云和公有云的区别无碎片化版本,功能持续进化是公有云的优势,而新一代私有云在这方面与公有云能力拉平的同时,又在以下方面更适合企业用户的需求:第一,适用企业数据中心复杂度上,公有云由于软件定义硬件的超大规模数据中心集中,它能支撑的硬件环境单一,无法适用于复杂多变的企业级数据中心。而新一代私有云起源于企业级数据中心,软硬分离,软件定义硬件且“贴合”各种主流硬件形态,如此高复杂度的产品却可实现OTA式的在线/离线部署(根据用户法律法规需要)。第二,规模和架构上,公有云大规模起点,如果以软件形态去适应企业用户数据中心,除了对硬件环境要求苛刻,且规模10+节点起步,且除了AWS outpost(并非软硬分离,是公有云的一种租用式私有化部署)外无法实现和公有云的统一架构。新一代私有云从最小3节点规模到无上限节点规模,从云就绪超融合形态到面向多云的私有云形态,不仅规模弹性更广,且具备统一架构,一体化设计,为OTA式的平滑无感可进化奠定了基础。第三,运维上,公有云由于租用方式,背后是公有云企业的大批专业运维人员,而新一代私有云却是一种高度产品化的体验,它可以应用到没有专业运维人员的普通企业数据中心环境,通过OTA式的自动化运维,大大降低了应用门槛。第四,生态丰富度上,公有云尽管目前在PaaS/SaaS层拥有更多的合作伙伴应用,而新一代私有云以开源生态能力为边界,不会以单一平台软件(如单一公有云)为主导,因此未来在生态上将比单一公有云有更为丰富的应用选择。第五,安全合规上,公有云在一些行业数据的安全合规要求不能适用于国计民生行业的核心应用,但是新一代私有云在达到公有云体验的同时,数据所有权归属客户,适用范围更广。第六,商业模式上,公有云租用方式,新一代私有云可以license购买也可以订阅服务,而这一订阅服务与红帽的开源版本+专业服务的订阅服务有着本质区别,更类似于公有云的按需付费。  四,新一代私有云对业界的价值从云的私有部署角度来看,拥有可进化能力的新一代私有云不仅获得了与公有云似的消费级体验,也满足了私有部署环境下云的特殊性和复杂性需求,还通过开源生态在PaaS层获得了以客户业务为中心的长久生命力。这样的新一代私有云才是真正私有云市场的主流形态,是私有云市场持续快速发展的真正驱动力。从业务驱动力角度:企业客户的核心IT系统能够快速响应并适应业务的敏捷性,那么作为支撑业务系统的云平台也需要不断进化以满足支撑业务系统的要求。云的公有部署最吸引人的特点之一就是其功能不断进化以满足客户日益增长的需求,而客户无需参与其中。从市场规模化角度:目前传统私有云最大的痛点就是版本的碎片化,随着客户的数量不断增长,不同版本越多,运维负担越重,客户满意度越差,任何一家企业即便是行业巨头也无法应对。在新一代私有云核心的设计中强调可进化,就是要解决版本碎片化问题,这也为新一代私有云的快速规模化发展提供基础。从构建服务体系角度:可进化的难点不仅仅在可进化本身,还在于在极简的前提下具备可进化能力,实现以往只有原厂工程师才能完成的扩容与升级与运维。当新一代私有云厂商也能更为便捷地建立第三方的服务体系,实现更广的市场覆盖;当轻运维帮助厂商把资源重心由运维侧切换到如何帮助客户用好云,把更多的业务迁移到云上,这一正一反所带来的正向价值不可估量。从构建完整生态的角度:可进化的另外一个好处是可以不断交付新的能力给客户,这些能力不一定都是新一代私有云厂商的自研能力,还可以是包括开源生态在内的第三方合作伙伴的能力,实现云平台的生态化也可以带来新的商业模式。从保护客户TCO和构建未来商业模式角度:以往企业级软件商业模式是按照版本升级付费,而且新旧版本之间不兼容是常态,升级过程体验也不够平滑无感。可进化能力消除了软件本身生命周期的概念,只要开源生态在进化,那么部署在客户侧的版本也可以同步持续进化,总体TCO将持续降低。同时,新一代私有云按需付费的订阅收费方式也成为可能。从“云的私有部署”和“云的公有部署”角度来看云计算的下半场,会从不一样的视角看到云计算的未来。而随着新一代私有云的崛起,将带给整个云计算市场无限可能,这也是云计算大时代决定胜负的关键。今后,易捷行云将持续为用户提供从芯到云,以本质安全到过程安全为核心的企业级云服务,以安全的新基建保障国计民生重点行业企业的稳定安全高效运营。
  • [内容拦截申诉] 【博客】IT运维管理升级,不只是技术层面的事
    发文的标题名:IT运维管理升级,不只是技术层面的事帖子内容链接:https://bbs.huaweicloud.com/blogs/163509
  • [技术干货] 转载:华为云战略投入政企市场,发布华为云Stack
    转载自:CSDN云计算原文链接:https://blog.csdn.net/FL63Zv9Zou86950w/java/article/details/1061364182020年5月15日,华为云发布政企战略,并宣布华为云Stack系列新品正式上市。华为云Stack是位于政企客户本地数据中心的云基础设施,能为政企客户提供在云上和本地部署体验一致的云服务。随着政企智能升级进入深水区,华为云将战略投入政企市场,致力成为政企智能升级首选。华为公司副总裁、华为云业务总裁郑叶来表示:“在新基建时代下,算力成为新的生产力,数据成为新的生产要素,云、AI、5G则是新的生产工具,新型数字基础设施正在为政企数字化转型注入新动能。云服务是政企智能升级的必由之路,基于丰富的行业实践经验和华为自身数字化实践,华为云面向政企市场发布华为云Stack系列新品,加速政企客户迈向数字化和智能化!”华为云业务总裁郑叶来发布华为云政企战略及华为云Stack 当前,政企智能升级面临四大挑战:第一,传统IT服务少、更新慢,如何更快获得云服务能力和创新;第二,如何打破封闭,获得更开放的生态应用;第三,如何实现更安全的数据本地部署,更有效满足管理和合规诉求;第四,如何获取专业化的运维能力。华为云、华为云Stack、华为云边缘都以华为云擎天架构为基础,实现一个架构云边端全场景覆盖。华为云Stack针对政企客户智能升级的关键需求,全面升级,通过协同、统一、系列化、安全四大差异化优势更好的满足政企客户数字化转型需求,加速智能升级。第一,实现云服务和生态的协同。华为云混合云领域总裁吕阳明介绍,基于统一的华为云擎天架构,华为云Stack与华为云保持统一的API,可以在本地数据中心为客户提供与华为云一致的云服务使用体验,“零”等待同步AI、大数据、IoT、区块链等10大类70+云服务,共享华为云创新能力。为满足云服务时代客户的运维需求,华为云推出远程服务托管计划、远程服务支持计划和本地服务支持计划,让客户聚焦业务创新。三大服务支持计划客户都具有运维主导权,在获得客户授权后华为再按需提供服务支持,所有操作可控、可视、可监、可管。华为云Marketplace全新推出混合云专区,客户在本地管理界面上可以一键获取海量优质行业应用,也欢迎各行各业的合作伙伴与我们一起共建、共享混合云专区,携手打造丰富繁荣的云生态。第二,通过管理一朵云、数据一盘棋、应用一张网,实现用户视角一朵云。华为云Stack具备统一管理、数据治理、应用使能三大云服务能力。基于“云联邦“技术,客户可以实现跨云的资源池精细管理和业界唯一的多级运营运维能力,通过精细化分权分域,对不同地域、部门、应用的资源授予和管控,让政企客户像管理部门一样管理云。基于华为自身数据治理成功实践,华为云Stack支持企业构建企业数据平台,客户可以利用FusionInsight实现智能数据湖,利用数据治理平台DAYU和一站式AI开发管理平台ModelArts实现数据一盘棋管控,做到每比特数据的价值最大化。同样源自于华为自身实践的华为云ROMA平台支持企业集成多类型应用及数据,并进行全生命周期的数字化资产治理,对生态伙伴及开发者全面开放,实现应用一张网。第三,推出系列化版本及一体化的方案。华为云Stack基础版、智数版和全栈版三个版本,匹配企业传统业务云化、云原生应用、大数据分析、AI应用、大规模分布式改造、微服务化等多种差异化建设需求。 华为云Stack推出一体化交付模式,出厂前完成云服务软件的预装和机柜内部硬件安装和布线,设备到货后,从现场调试到上线时间小于24小时。第四,给业务数据加上锁,把钥匙交到客户手中。华为云推出智能加密卡,支持大数据、数据仓库、块存储等多种场景的按需加密,并且通过对接国家认证的第三方公司密钥系统,实现客户独立管控密钥。把钥匙交到客户手上,真正实现您的数据您做主。为加速推动政企数字化转型和智能化升级,华为中国云与计算CTO肖苡正式发布了华为云Marketplace混合云伙伴计划,邀请合作伙伴入驻华为云Marketplace混合云专区。华为云还将提供对应的咨询服务和解决方案,包括数字化转型顶层设计、企业上云咨询、数据治理咨询和华为云EI解决方案等。Gartner发布最新《Market Share: IT Services, Worldwide 2019》研究报告显示,华为云在中国IaaS市场排名上升至第三,在全球第六,增速高达222.2%,全球增速最快。 未来,华为云将继续发挥云、AI和5G的协同优势,通过全栈技术创新,提供稳定可靠、安全可信、可持续发展的云服务,赋能应用、使能数据,做智能世界的“黑土地”,与伙伴一起使能千行百业,实现数字化转型和智能化升级。
  • [交流分享] 国内外云服务现状及发展探讨
    一、云计算的起源任何东西都不可能是凭空出现的,云计算的出现与许许多多相关领域的技术发展密不可分,其中不得不提的是分时系统,这是人工智能之父麦卡锡1958年在MIT任职时提出的将计算机的批处理方式改造成为能同时允许数十甚至上百用户使用的分时方式的建议,提出了把计算能力作为一种像水和电一样的公共事业提供给用户(这在天价的大型机时代,是计算机普及化的貌似唯一出路)。当然由于英特网的是在1969年之后才出现的,所以当时还不能想象坐在家里使用大型机的资源,当时想到的是多套外设终端分时共用服务端资源,也就是一台大型机接多套外设。说分时系统的提出意义重大是因为后来出现的虚拟化、云计算等都有分时系统的概念和影子。云计算的第一个里程碑是,1999年Salesforce.com提出的通过一个网站向企业提供企业级的应用的概念,推出通过互联网交付的 CRM 产品(Salesforce专门做CRM软件,现在也还很牛)。另一个重要进展是2002年亚马逊(Amazon)提供一组包括存储空间,计算能力甚至人工智能等资源服务的Web Service。 2005年亚马逊又提出了弹性计算云(Elastic Compute Cloud),也称亚马逊 EC2,的Web Service,允许小企业和私人租用亚马逊的计算机来运行他们自己的应用。2006年8月9日,Google首席执行官埃里克·施密特(Eric Schmidt)在搜索引擎大会(SES San Jose 2006)首次提出“云计算”(Cloud Computing)的概念。至此,Cloud Computing这个名字逐渐被业界接受和推广。二、云计算市场格局全球公有云服务市场方面,根据Gartner 2017年的调研,亚马逊云(AWS)和微软云(Azure)是公有云市场两大主要玩家,分别占47.1%和10%的市场份额,紧跟其后的是谷歌云(3.95%)和IBM Softlayer(2.77%)。国内公有云服务市场,根据IDC数据显示,阿里云 2017 年上半年 IaaS 营收 5 亿美元,占据 47.6% 中国市场份额 ; 腾讯云位居第二,营收约 1 亿美元左右,份额为 9.6%; 金山云位居第三,营收 6839 万美元,份额 6.5%; 中国电信位居第四,营收 6254 万美元,份额 6%;Ucloud 营收 5774 万美元,排名第五,份额 5.5%。在对全球及国内云服务市场进行比较后,我们发现了许多惊人的类似之处,首先全球云服务老大亚马逊占到全球云服务市场的近47.1%,而国内老大阿里云占到了国内云服务市场的47.6%;同时,两位老大的市场占有率都有了明显提升,亚马逊从16年的44.2%提升了近3个百分点,而阿里云在国内云服务市场的份额更是在16年的基础上增加了7个百分点左右。从数据上看,近来来虽然云服务厂商如雨后春笋般涌现,但是,云服务的市场份额逐渐向行业巨头集中的趋势依然明显。在可见的将来,云服务市场一超多强的局面将会加剧,同时很大一部分缺乏特色、规模、技术、资金等优势的云服务商将会出局。   这种趋势从市场的角度出发来看,其实在情理之中的。云的出现,对于客户来说,只管使用资源,而不再接触底层运维,虽然这降低了客户的运维压力和信息化基础投入,但是,黑盒子似的交付方式也让很多客户对于自己的信息系统及相关业务数据存在一定的担忧,在各大云服务商把自己的服务吹得天花乱坠的时候,很多客户可能面临选择困难,这是客户往往只能从品牌、服务规模和市场占有率来确认云服务的等级。 三、云服务市场差异通过对全球云服务市场和国内云服务市场的对比,我们可以清楚的发现两者有着明显的差异。全球云服务细分市场份额占比: 国内云服务细分市场占比(借用智研咨询的数据):  对比国内外云服务市场的数据,我们发现在全球市场SaaS的市场份额一直大于IaaS市场份额,特别是在云服务的起步阶段。而国内市场,一直是IaaS市场占据了大部分的市场份额。从这里,我们可以看出国内外客户在使用云服务市场时的主要驱动力还是存在差异,总体来说,云服务市场在国外起步较早,整个云生态相对较为完善,一些在市场上非常具有话语权的软件公司介入云服务市场较早,所以很早就推出了相应的SaaS服务,且国外市场标准性、流程性的应用接受度相对较多,这也为SaaS服务的推广提供了先决条件。而国内市场方面,由于很多软件应用系统的开发商在市场上的话语权不如很多国外同行,且其SaaS服务起步较晚,目前还很难形成规模。同时,由于国内市场对于软件应用系统的定制化需求千差万别,很难套用同一套流程及标准,太多的个性化需求限制了SaaS服务的快速发展。但在可见的未来,以很多对数据安全性要求不敏感,流程基本趋同的应用系统SaaS市场将由于成本的优势而快速发展。四、云计算厂商发展方向在分析前说个题外话曾经有个空调厂商在一个细分的空调市场占有率达到50-60%,这时他的营销策略就放在了推广该细分技术上,当时作为吃瓜群众的我非常吃惊,在业界大佬没有充分进入该市场竞争时,他的主要精力不是放在扩大自身技术优势和壁垒、形成相关行业标准上,果然,在该细分技术概念炒热后,随着各业界主力厂商的涉足,该厂商的该细分市场占比急剧萎缩。在笔者看来,在没有拥有绝对优势的面前,市场占比远远比市场整体蛋糕大小要重要得多。在云服务市场的竞争中,以上事情依然具有相当的借鉴意义。笔者认为以亚马逊、阿里等为代表的云服务商领导品牌应该在技术领先性、云服务事实标准等方面大力推进,这个优先级应该高于云服务的市场接受度推广,争取在社会大众普遍认同云服务形式前,扩大自己的技术、服务优势,加大自身在云服务行业的话语权。以国内市场为例,虽然目前阿里云一家独大,但是在以华为为代表的云服务挑战者面前,阿里应该给予充分警惕。虽然在个人、互联网企业等市场,阿里云的优势将在很长的时间内持续。但是,如果在将来大企业普遍接受云服务形式的时候,传统厂商的营销渠道、营销能力的优势将会得到极大展现,到时谁能笑到最后还未可知。而对于一些小型的云服务商,随着云服务市场的竞争日趋激烈,缺乏自身特色云服务商的日子将会越来越艰难。对于,小型的云服务商一定要找准自身定位。比如,如果你的目标客户是一些对安全看重的公司,那么,你是不是可以主打安全的概念呢。以笔者对云服务市场目前主流云服务厂商的了解,基本没有一家能够给客户给予非常专业及肯定的安全建议,这可能也出于自身避责和担心客户过度关注安全问题而放弃上云的考虑,但是对于安全关注型客户,本人还是觉得让客户清晰认识安全形势,包括在自营机房面临的安全威胁,是非常必要的。那同时这里就延伸出一个问题,如果一个非常关注安全的企业上云,如果按照目前各云服务商的安全提供体系,安全服务成本可能会出现远超客户预期的情况。这时,我们的云服务商是否可以提出一篮子的打包解决方案呢。那对于有的云服务商,在规模、实力、安全等方面的都没有的明显的优势,这时可否把服务做成自己的特色呢?对于市场上很多大企业而已,服务的不可控往往难以接受,对于某个业务系统来说不是说完全不能中断,但如果中断之后,处理的过程不可控对于大企业的运维部门将会面临着更大压力和风险。所以,对于这部分的企业,云服务商介入其日常运维,且让其更大程度的让其参与其自身系统云上故障处理,往往可能更容易被接受。五、结论云服务作为下一轮信息化形势将会越来越多的被企业、政府、个人所接受,在未来几年内,云服务变得和移动支付一样普遍也不是不可能的事情。 
  • [技术干货] 智能诊断和优化,华为云DAS服务云DBA平台让您无忧运维
    随着时代的发展,传统的“人工”运维方式,已经逐渐跟不上企业业务发展的需要。如何更好的保证数据库系统的稳定性、安全性、完整性和高性能,实现运维工具化、产品化、自助化、自动化,是当前数据库管理和运维面临的重要挑战,也是时代发展的趋势。为了帮助企业更好的管理和运维数据库,华为云数据库精心打造了一款简单易用、智能高效的数据管理服务DAS。华为云DAS服务提供的云DBA平台,在帮助企业DBA对云数据库进行运维操作时,能够轻松的完成日常的巡检工作,提前发现问题。发生问题时,可以帮助DBA快速地定位、解决问题,降低故障时间。通过DAS服务云DBA平台提供的运行数据,结合DAS服务云DBA平台给出的自动化诊断、分析、优化建议,很容易的进行故障复盘,找出根因和解决方案,避免故障的再次发生。华为云数据管理服务DAS跟紧时代的步伐,针对运维急需解决的痛点,推出了云DBA运维平台,提供了 8大运维功能,为用户提供更加智能化、自助化、专业化运维服务。8大特性助力云DBA运维平台高效运维云DBA运维平台提供了实例列表、实时分析、历史性能、实时会话&性能、慢SQL、紧急Kill会话、内存参数设置诊断、空间和元数据分析等8大多维度特性,可全方位对数据库进行智能监控,及时发现异常,并进行自我诊断和优化,有效保证数据库的稳定性。Ø  实例列表:该特性无需登录即可便捷获取当前账号下RDS的实例状态、IP、规格等信息,方便用户一目了然当前实例的情况。Ø  实时分析:该特性集实时诊断、实时会话、慢SQL 3大模块内容为一体。可直观展示当前实例资源使用率、实时性能信息、当前实例会话情况,以及相应时间段内慢日志趋势、慢日志统计、慢日志明细数据信息,通过查看这些性能指标,帮助企业DBA和运维人员在线定位异常,并进行优化。Ø  历史性能:可以查看实例性能、主机性能等累计近500个指标的趋势走势图,还能对比分析、自定义性能常见指标,方便用户快速查看和定位问题,迅速恢复故障。Ø  实时会话&性能:查看当前的会话列表、性能指标数据,助力用户在线定位异常,并支持一键Kill会话操作,保证数据库稳定运行。Ø  慢SQL:一键定位慢SQL问题并进行优化与诊断,帮助用户快速识别慢SQL语句,并智能给出优化建议。Ø  紧急Kill会话:当数据库实例的连接数达到上限,无法正常登录时,该功能将会提供一个特殊连接通道,帮助用户查看和执行Kill会话的操作。Ø  内存参数设置诊断:通过查询当前实例的内存相关参数,对共享内存空间和连接独占内存空间求和,计算出MySQL最大可使用的内存空间,帮助客户在线查看内存相关参数配置是否在合理范围内,避免出现内存使用率过高等问题。如当前参数设置不在合理范围内,可在内存参数设置诊断页面,按需设置参数规格。该特性设置的参数值仅用于计算,不会真正修改其实例参数,如需修改当前参数值,可前往RDS参数管理页面进行修改。Ø  空间和元数据分析:该特性支持查看实例空间异常列表、实例空间概况、数据库列表信息,帮助用户及时发现数据库中的空间和元数据异常,有效保障数据库稳定性。云DBA运维平台推出的这些运维特性,都是基于华为云数据库为用户提供最优服务的体现,也是华为云数据库不断追求创新求好的理念,未来华为云数据库还会推出更优质更贴心的服务。更多DAS服务详情,戳它了解。此外,华为云数据库精选特惠活动火热进行中,爆款产品低至4.5折,新人享3.9折迁移价,机“惠”难得,购买请戳下图。
  • [教程] 《区块链的应用部署与运维》课程FAQ文档--群内提问前请查询此文档
    ——活动FAQ——Hello!欢迎参加华为云区块链的应用部署与运维!这是一篇帮助帖,我们会将常见问题和难点疑点记录在帖子中。为减少群内打扰,节省大家的时间,请遇到问题后先查阅本帖内容,如没有对应解答,再在用户群中提问哦! (1)  实践资源说明(必读):本实践提供限时专享1元(CCE+ECS+BCS)资源;步骤如下:第一步:点击这里领取资源代金券>> 券额888.1元,满889.1元可用;限量100份,有效期15天,过期不补发。注意:代金券仅限已填写报名问卷的同学可领取,如未填写请点击这里填写,填写完后请私信小助手(little-one-1806)发放。第二步:本帖附件中下载:《华为云区块链:资源创建指南》根据仔细阅读指南要求和注意事项,避免多扣费。 (2)课程链接:点击观看学习视频>>>备注:课程视频请在上方链接中观看,课程PDF文档可在本帖附件中下载 (3)打卡链接:点击进入打卡>>> 备注:打卡内容需包含【华为云账号名(即右上角的字母数字组合ID)】+【微信昵称】+【截图或其他作业要求】  (4)课程PDF文档下载,请查看附件
  • [行业资讯] 新增5大运维特性!华为云DAS服务高效运维有妙招
    摘要语:全新智能化运维功能,让数据管理更简单高效华为云数据管理服务DAS提供的云DBA控制台,提供了丰富的数据库智能化运维功能,可全方位对数据库进行智能监控与诊断优化,保障数据库的高效稳定运行,让DBA在轻松管理数据库的同时,能够聚焦于数据库架构设计等更大价值的工作上,成为DBA管理数据的有力法宝。近期,云DBA智能化运维平台针对华为云用户的使用场景,新增了5大运维特性,设计了更贴合企业级用户的功能和服务,极大解放了企业DBA和运维的工作压力,让数据管理变得更简单高效。云DBA智能化运维平台新增的5大功能特性紧急Kill会话云DBA智能化运维平台提供的紧急Kill会话特性,可以在数据库实例连接数被打满,无法正常登陆时,提供一个特殊连接通道,依然可以查看会话列表、批量Kill会话,有效降低故障时间,保证系统的持续稳定。历史性能华为云DBA智能化运维平台提供的历史性能特性,可以查看实例性能、主机性能累计近500个指标的趋势走势图,还能对比分析、自定义性能常见指标,方便用户快速查看和定位问题,迅速恢复故障。具体能力如下:Ø  通过图表展示QPS/TPS、连接数、DML执行次数等历史性能指标,直观定位历史性能问题Ø  通过查看2个时间段的历史性能指标对比曲线,以及用户自定义生成的性能指标曲线图,帮助客户快速定位问题慢SQL华为云DBA智能化运维平台提供的慢SQL特性,一键SQL优化与诊断,帮助用户快速识别慢SQL语句,智能给出优化建议。具体能力如下:Ø  直观展示慢SQL的数量趋势曲线和CPU占用率曲线,清晰定位慢SQL导致CPU飙高的问题Ø  对慢SQL进行模板化汇总,并根据执行次数、耗时、锁等待时间、扫描行数、返回行数等指标进行排序,快速找出TOP N的慢SQLØ  可以查看每一条慢SQL的具体SQL内容、执行时间、客户端IP等信息Ø  对慢SQL进行自动诊断,并给出索引优化建议、SQL改写建议,帮助开发者对SQL进行自助优化实时分析华为云DBA智能化运维平台提供的实时分析特性,集查看当前资源使用率、实时性能、慢SQL、实时会话功能于一体,通过查看最新数据库的性能指标,帮助普通开发人员和企业DBA在线定位实例异常,并对数据库进行智能优化。Ø  一目了然CPU、内存、IOPS、空间、连接的当前资源使用率,直观定位哪个资源飙高的问题Ø  提供QPS /TPS 和连接数的实时性能曲线图,帮助观察当前实例的性能走向,找出性能问题Ø  对慢SQL进行模板化汇总,根据慢日志趋势、执行次数、耗时、锁等待时间、扫描行数、返回行数等指标进行排序,快速找出TOP N的慢SQLØ  查看每一条实时会话的用户、主机等信息,一旦发现异常的会话,可以选中并结束会话。空间&元数据分析华为云DBA智能化运维平台提供的空间&元数据分析能力,支持查看异常列表、实例空间概况、对象概况、数据库空间概况等,帮助用户及时发现数据库中的空间和元数据异常,有效保障数据库稳定性。此次华为云DAS服务提供的云DBA智能化运维平台,从数据库运维场景的痛点出发,给运维人员和DBA提供了更高效、简单、安全、智能化的数据管理服务。目前,华为云数据库开年采购季活动火热进行中,在迁移专区购买数据库的用户, 使用数据复制服务DRS迁移数据上云后免费赠送6个月时长。此外新用户购买云数据库1年3折,2个月仅需10元。买管家式的华为云数据库速戳:点击访问
  • [问题求助] 拉动式生产及限制在制品数量真能帮助我们吗?
    讲到看板,不得不提拉动式生产及限制在制品数量,前者能帮助加快流动速度,后者能帮助找出瓶颈点并进一步加速,然而真的有用吗?最近在读《敏捷转型-打造VUCA时代的高效能组织》一书,重新审视了这两个观点,对其中一些描述信息持有不同的看法。拉动式生产真能提速和减少浪费吗?我们总说拉动式比推动式要快,为什么?下图是书中内容截图这里解释的结果,是拉动式生产能减少浪费。类比到软件开发就是,开发完的软件假如尚未投入生产,就是一种浪费。软件开发的过程中涉及到设计、开发、测试、部署等多个动作,按照拉动式生产方式,假如开发完5个需求,测试没有余力去拉动这5个需求进测试的话,开发人员就不能继续开发了,此时应该去解决测试这边的瓶颈问题,再开始开发(之前各个地方都是这么讲解的),常说的解决方案是开发人员帮助测试人员进行测试。这样能让整个流程加速,聚焦完成。这里我的不同意见为,这个见解太极端了,默认的前提是开发人员能够帮助测试人员进行测试,这一默认点一定有个前提是,大家认为开发去做的是手工测试的工作,这部分工作如果写好测试用例了的话,开发人员很容易上手做。那么是真的吗?我只能做开发人员能帮助做些事情,但是你不能说开发人员测试完了,测试人员就不用去检测了,除非对测试质量要求不高,或者这个团队的开发人员测试能力很强了。另外探索性测试、自动化测试等都不是开发人员随便能做的。好了,就算开发-测试这个环节用上面的方式能解决,其他环节呢?每次举例子都是开发-测试这个环节,而拉动式生产的说法已经被滥用到各个地方了,假如设计-开发阶段遇到了阻塞点,设计人员能帮助开发人员去写代码吗?假如测试-部署环节遇到了阻塞点,测试人员能帮助运维人员做部署吗?显而易见是不能的。所以我的意见是,设置了在制品数量限制,只能帮助识别瓶颈,让Scrum Master及团队重视这里,去想办法解决,但是本身并没有帮助到你解决它。并不能真正的加速。再说减少浪费,停止了开发,会避免开发出来的代码留在那里因为不交付而浪费。那么开发人员干啥去呢?除了说的帮助测试人员做测试,他们不能动代码的情况下,不就是浪费了吗?因为一旦瓶颈点解决,开发人员依旧是要做那些需求的,早做变成了浪费,然而晚做可能会导致最后做不完。为什么要限制在制品数量?在7.5.2章节,作者给出了几个原因:缩短平均周期时间:吞吐率=在制品/平均周期时间,所以如果在制品多的话,吞吐率低,平均周期时间长了。这点是我最不认同的。为了缩短平均周期,然后停止瓶颈点的工作,得到的只是一个短平均周期这个数值而已,除此之外有什么效果吗?还是应该说些干货,尤其是在软件开发过程中,你浪费的平均周期,给了开发人员,他能创造别的价值吗?如果不能的话,就是转移这个部分的浪费到了另外一个部分的浪费而已。打破在制品堆积的恶性循环。简单来说,就是开发出来的代码留在系统中,来不及测试,堆积的代码越多,系统中有的bug就越多,Bug多导致出各种恶性循环。       这一点我部分认同,认同的地方是,堆积的代码多,确实导致显性和隐形的bug就多了,修复时带来的新的bug又会带来隐患,最终导致交付变慢。不认同的地           方在于,软件研发的测试环节是个特殊的环节。首先测试这个事情就特殊,它是挑错的,其他环节不这样,不会带来bug这种隐患,所以限制设计-开发,测试-           部署等环节并不会通用这里说到的好处。第二,软件的测试要比其他生产的检测特殊,因为软件里的一个bug,可能会导致其他代码的功能受影响,而制造业就         不会出现这情况,你制造一个方向盘出问题了,不会导致你发动机不好用,即使由于方向盘的问题,车子无法正常行驶,你修复了方向盘,车子就正常了,这一         点和软件是不一样的。所以我个人觉得,限制在制品数量的好处就是,对软件开发来说,间接限制了产品中的bug数量,来减少bug这个是有用的,但是这个业态特殊了,一定要是测试类型的环节,以及bug之前互相有影响。换个场景,这个好处就荡然无存了。结论和同事交流了下,感觉限制在制品,就是能突出瓶颈,然后团队一起想想办法,如果长期出现这个问题,回顾会议上该讨论讨论,比如增加后面环节的人数。如果这个瓶颈在这种情况下解决不了的话,还是突破限制,该干啥干啥去吧,因为限制的前面环节的人留下来也没什么用。停止,本身就是一种浪费。
  • [技术分享] HDC.Cloud | 网络智能运维下的知识图谱
    【摘要】 知识图谱引领人工智能从感知阶段演进到认知阶段,成为当前的热点技术之一,受到ICT产学研界的重点关注。让AI更智能,谷歌要用知识图谱让AI像人一样理解世界。让AI更智能,我们要用知识图谱让AI像网络专家一样了解网络。知识图谱引领人工智能从感知阶段演进到认知阶段,成为当前的热点技术之一,受到ICT产学研界的重点关注。为什么人们如此重视知识图谱技术?因为知识图谱不仅能够通过为万事万物建立起全方位的链接,支撑基于常识知识和概念知识的搜索类需求,催生了Google、百度、Amazon Go、微软 Bing等搜索技术的智能化升级,而且让各行业应用在知识图谱加持下获得新进展,诞生出各种领域知识图谱应用,如智能问答、金融征信、医药研发、公安技侦、互联网+生活服务等等。不同行业不同场景对不同的知识领域提出了各种诉求,催生出知识图谱工程和NLP各种技术的爆炸式增长,同时对知识抽取和数据处理技术提出了各种各样的技术需求。  华为网络人工智能在知识图谱领域的探索  华为网络人工智能希望能够利用知识图谱技术解决网络领域典型场景下的智能化运维问题,也对如何构建图谱、应用图谱提出了各种诉求:从知识内容看,不同于百科类知识图谱,网络领域知识图谱更关注网络领域的知识深度和完备性,从人机交互技术角度讲,不同于开放式聊天的交互方式,网络领域更关注面向解决问题的目标导向性问答体验。比如说,一个电信核心网络运维专家可以回答和解决的一些专业领域问题,机器是否也能做到,甚至进行更为深刻的理解和推理演绎,进而让机器能辅助人达到提高运维效率,降低运维成本和节省时间的目的;未来演进到网络自动驾驶的高级阶段,可以减少甚至消除网络运维工程师和网络专家的运维值守压力和起夜率,提供更精准更人性化的智能服务,善莫大焉。构建知识图谱的流程主要可以分为知识获取、知识融合、知识验证、知识计算、知识应用等几个步骤,华为网络人工智能基于NAIE平台需要知识图谱工程系统在此基础上设立领域知识标准规范、细化知识加工技术链条、完善运营运维与可信能力等等。总体构想如下图所示:打开来看看这一块、那一块、方方面面都有啥:知识来源从来源形式上看,知识蕴藏在结构化(例如:告警、指标等)、半结构化(例如:配置、日志、规范化产品文档)、非结构化(例如:实践手册、故障案例、分享帖子)数据中,甚至在专家的脑子里。这些网络知识来源于support网站的产品文档,运维专家的维护文档,发生告警故障时的现网抓包数据,现网环境的配置文档数据,运维专家的经验沉淀文档或者故障传播知识采集等,相应的我们需要配套对接获取这些数据的工具,可以复用现有NAIE平台的数据采集工具,也需要补齐诸如抓包数据获取工具、接口,文档数据获取链接通道与管理工具等,以便从不同来源、不同结构的数据源中获取知识语料。知识建模有了语料,我们面临的第一个重要问题是,我们需要什么样的知识?或者说我们需要在数据中提取出哪些有价值的知识才能解决我们面临的故障运维问题?这就需要有效的知识组织结构,我们在数据获取之前就需要先设计知识模式,建立知识图谱的数据模式(schema)。通常模式设计方法有两种:一种是自顶向下的方法,网络专家与建模专家利用知识图谱建模工具手工编辑schema;另一种是自底向上的方法,基于来源数据的结构、语料的规范标准,以图技术组织知识结构设计,包括:实体(点)建模、属性建模、关系(边)建模,将数据中蕴含的知识组织形式以图的方式表达建立起来,从现有的高质量数据源中进行映射。数据建模的重要性在于这项工作是知识图谱工程所有工作的基础,因此标准规范的 schema设计能有效降低领域知识抽取使用对接的总体成本。举个例子,我们做故障传播知识图谱,就需要定义故障在哪里发生(产品对象),发生了什么故障(告警、指标异常、故障现象、日志异常),所发生的故障之间有什么传递或依赖关系(告警间的关系、告警与指标异常的关系、指标异常间的关系、故障现象间的关系等等)。要注意的一点是,分类标准定义数据中蕴含的很重要的知识,需要在设计中体现出来。此外只有这个业务知识还是不够,对于支撑良好的人机交互还需要补齐网络领域的语义知识。比如:当NE这个缩略语出现时,要知道这里说的是“网元”,不是“东北”;当“Pod起不来”出现时,说的是一个进程失败故障现象,不是叫Pod的家伙睡懒觉。知识存储有了知识模型,知识的组织和摆放就有了货架,知识如何按货架摆放就需要知识存储,要存好还要好用是知识存储技术的关键,重要考虑的是选什么样的数据库按设计好的schema来存。要不要选关系数据库或者NoSQL数据库?要用什么样的图数据库?这些都需要根据数据场景仔细选择。WikiData选择了Virtuso,CN-DBpedia 实际上是基于mongo 数据库,一般基于特定领域的知识图谱都可能会按需用到某个图数据库,选择RDF Store还是Property Graph,需要综合考虑知识来源、使用方式和应用特点。网络故障知识不仅需要图查询、图计算,也需要理解语义、承载故障问题的答案,因而最理想的图数据库是即能并行化部署、支撑关系存储、支持图计算,又能有效存储RDF形式的知识,支撑语义理解所需的词典表、三元组、符号化知识表示,目前受限于实体名单的限制,我们只能在合规的开源图数据库和自研图数据库中做选择,这也催生了我们对自研图数据库的一些关键诉求——多能力融合,当满足该需求的版本正式发布后,相信对开发者来说是一个值得期待的选择。知识抽取我们知道,分布在网上的知识常常以分散、异构的形式存在,传统的数据清洗抽取方式不一定适用于知识抽取,很多问题不能解决,因此需要针对知识来源格式和知识抽取目标有针对性的设计抽取工具能力。目前我们利用自研的基于正则表达的无 码化抽取工具TIE作为机器数据知识抽取工具;对于文档知识抽取,情况稍微复杂些,首先我们需要保留产品文档组织结构中的章节段落分类分层知识,利用文档元数据解析XML标签,获得段落句子级别的抽取中粒度知识,然后需要利用神经网络模型和NLP工具针抽取词级别的细粒度知识,包括实体词和特征词间的分类、关系等。通常抽取结果需要迭代和验证来提高新词发现准确率,这样来将不同源不同结构的数据融合成统一表示的不同颗粒度的知识,存入知识库中。知识表示和知识融合单靠抽取获得的知识,在关系表达层面往往是稀疏的,说白了就是关系是不足的,往往需要通过各种算法自动挖掘、发现新的关系,做知识补全。我们需要的知识补全能力不仅包括实体间的关系补全,也包括各种故障特征传导关系的补全。例如故障A的可能原因可能与故障B的可能影响表达的是一个意思,那就需要在“原因”与“影响”间补全一个相似关系。这样的知识补全是对细粒度级别知识抽取的有效补充。纯文本数据中获取知识会涉及到的实体识别、实体链接、关系识别、概念抽象等,需要用到许多自然语言处理的技术,包括但不仅限于分词、样本标注、词性标注、同义词提取等等。做好知识加工准备,只是完成了AI应用开发的一部分准备工作,如何利用获取到的知识,最重要的是解决关键应用场景问题,实现业务价值,才能体现技术的价值。2020年华为开发者大会HDC.Cloud上,华为网络人工智能将线上直播对知识图谱构建和应用场景做一个系统性介绍,希望我们在开发过程中的一些创新尝试和实践经验能够给广大开发者提供一些有益的参考,敬请期待!金属质感分割线华为开发者大会HDC.Cloud是华为面向ICT(信息与通信)领域全球开发者的年度顶级旗舰活动。大会旨在搭建一个全球性的交流和实践平台,开放华为30年积累的ICT技术和能力,以“鲲鹏+昇腾”硬核双引擎,为开发者提供澎湃动力,改变世界,变不可能为可能。届时在网络人工智能将在线上有更多详细内容,我们期待与你共创计算新时代,在一起,梦飞扬!点击人工智能园地公众号 菜单栏-【开发者】-【HDC】 ,了解更多网络人工智能(NAIE)详情。本文来自“网络人工智能园地”公众号
  • [获奖公告] (已结束)【华为云•微话题】AI能帮网络运维多大忙?参与赢取大号鼠标垫&amp;双肩包
    ——————————————————【华为云·微话题】——————————————————— 网络基础设施在生产生活中变得越来越重要,但其运维也变得越来越复杂,因此当前网络向自动化与智能化快速演进,以提高运维效率,降低运维复杂度和能耗。——————————————【微话题活动】———————————————今天我们邀请到网络与算法专家Zonghua Zhang和大家讨论一下:【AI能帮网络运维多大忙?】活动时间2020年3月6日-2020年3月28日参与方式直接在本帖回复关于以下4个问题中的任意问题的理解或评论1, 得益于近来人工智能技术特别是深度学习算法的发展和应用(特别是Alpha Go,图像与音声处理领域等),“自动驾驶”概念近年来被频繁提及,包括在网络管理与运维领域。你认为最终可能实现么?你认为存在哪些技术难点?AI是否能帮我们搞定一切?2, 列举几个你认为AI可以帮助解决的具体问题,例如网络测量,异常检测?3, 将要到来的5G网络时代,高传输速率,大规模数据流量,动态的网络结构,多元的网络服务(如自动驾驶汽车),可能会使网络运维变得更加困难,你认为AI在哪些方面能帮上忙么? 4, 如果网络最终实现自动驾驶,安全,隐私,可信等问题将变得更加不可控,我们应该如何防患于未然?有哪些潜在的安全风险?本期奖品A.回帖参与本次讨论,回复与话题相关的原创内容,即可获得精美鼠标垫1个(数量有限,先到先得)。B.网络与算法专家Zonghua Zhang评出3名优质评论奖,各送出华为云定制双肩包1个。(两样奖品不可同时获得,奖品于活动结束发放) 评奖标准回复话题数量和内容质量                                                                                                             优质评论奖3名                                                                                  参与奖
  • [分享交流] 四川电信携手华为打造首个全网采用OXC的立体骨干网络
    [中国,成都,2020年2月26日] 近日,中国电信四川分公司(以下简称“四川电信”)宣布与华为携手打造省干立体骨干网,采用华为创新的全光交换OXC产品,重构省干光传送网络,挖掘现网资源潜力,扩展网络能力,提升运维效率,以应对数字化转型及云互联时代新业务发展带来的中长期挑战。为持续给客户提供优质的网络服务,保持网络的先进性,四川电信始终坚持网络建设的持续投入和网络能力的稳步提升。在网络建设过程中也面临着一系列问题:网络流量不均,以成都为例,热点区域传输节点利用率超75%,但其他节点的利用率小于30%;机房资源不足,省干核心机房空间和供电能力不足,新建光传送平面资源消耗大,整体建设周期长;传统的ROADM方案机房空间消耗大,板卡间连纤复杂,增加了维护的复杂度。为匹配快速建网,同时提升网络健壮性和降低TCO等诉求,该项目采用华为全光传送解决方案,使能业务全互联,一跳直达的建网理念,网络时延大幅降低。项目将省干系统成都新华、成都贝森、绵阳网管大楼等12个核心节点引入OXC新技术,新增设备之间光缆互连,形成网状网结构;同时将承载在原系统上的电路割接至新搭建OXC系统上,最终形成以12个OXC节点为核心的光立方网络,业务光层一跳直达。华为OXC产品基于高可靠、低插损的光背板技术,将传统ROADM方案中多个独立的单板集成在一起,极大地简化站点部署,可以节约80%的站点机房空间,光层调测时间减少80%。调度能力上采用了领先的LCoS(硅基液晶)交换技术,实现P比特级别的交叉容量和多达32维的光交叉调度能力,满足四川电信网络流量高地的全光互联以及大容量调度需求。同时OXC还解决了传统ROADM站点连纤复杂的问题,简化光层连接,实现站内光层“0”连纤,内置的数字化光参检测可实时感知光纤质量、波长性能、波长利用率和波长路径,实现光层的数字化运维,大幅提升网络的运维效率。2019年6月,四川省联合四川电信共同发布雅安川西大数据中心,打造西部大数据产业高地。省干光立方网络作为其重要的网络基础设施,具备大带宽,低时延,灵活扩展,易运维等网络特性,满足DC业务的快速业务开通,灵活随选需求。截至到目前,新的OXC立体骨干网络已经运行6个月以上,网络具备灵活扩展能力,实现了重要的IDC业务的承载,对新的扩方向需求,实现从扩子架到扩单板的转变,响应时间从月到天。结合OXC的高集成度,自动化的特性,四川电信后续计划在大型城域网主要节点引入OXC,减轻城域机房空间不足的压力,同时提升城域网络运维效率。四川电信网络发展部高级工程师杨劲表示:“四川电信骨干传送网正在进行数字化转型重构,华为的全光交换OXC产品为我们提供了大带宽、低时延、高效简化的网络,很好地匹配了四川电信网络的快速发展和简化网络的目标,缩短业务上线时间,并为客户提供优质网络体验。”华为传送网领域总裁卢毅权表示:“很高兴能和四川电信共同打造这张现代化的光传送网络,该网络能满足四川电信云互联时代新业务发展需求,同时能提升网络运维效率,为最终用户提供极致体验,华为将持续进行创新和研究,为客户提供可持续、可演进的解决方案,助力商业成功。”
  • [云运维] 虚拟化网络延迟,虚拟化故障怎么办?
    此次疫情防控,信息及时共享、实时追踪,管控体系的全覆盖和云计算紧密相关。如果运营中的任何一座数据中心出现细微的差错都将会影响上亿人的互联网使用。在这场激烈的战斗中,有那么一群人,在背后默默守护着信息的传输,他们就是---数据中心运维团队。疫情的时候,为减少疾病传染可能性,许多公司的选择了在家远程办公。对于运维来说,既要远程运维,还要在复杂的IT环境中保持高效,面临很大的挑战。春节过后又正值轮值上班,原来几十人做的工作,现在几个人在做,工作量数倍剧增。同时,企事业单位租用的云服务流量猛增,导致最近总是收到投诉,运维人员焦头烂额。人少工作量大,如何提高运维效率,保障云平台健康,时刻考验这运维团队能力和运维工具!在此特殊时期,很多运维人员面临着运维工具的匮乏的难题,很多用户反映明辰智航云安虚拟化业务性能监测管理工具,可以做到虚实结合,混合监控,多平台兼容,能大大提升他们的运维效率和有效减少运维人员的投入。业务健康以最终用户体验和应用响应时间的形式来衡量。如果最终用户不断抱怨应用运行缓慢,那就是一个问题。云安的可视化窗口,透视虚拟架构,可以让运维团队轻松查看是哪个位置出现问题,迅速排查故障,一秒理清网络组成。                                                运维中您可能需要关注的几个问题1.     可以看到应用之间的关联通信吗?2.     对于跨云的应用,瓶颈在哪里?3.     它们之间流量是什么样的数据?4.     业务是否因为某些基础架构问题而受到影响?5.     是否存在拥塞?回答这些问题,您需要云安中的“应用依赖关系图”的帮助,云安能够将关键业务自动关联,一旦出现异常,它可以通过颜色告诉您瓶颈在哪以及如何影响最终用户体验的所有问题,迅速定位故障。 云安可以对您的数据实时监测并做出清晰明了的各类数据分析,帮助运维人员尽快的查找故障轻松应对突发挑战!虚拟化运维、虚拟化故障、虚拟化性能分析——明辰智航云安虚拟化业务性能监测管理系统 明辰智航  400-0606-891