华为云用户手册
-
状态码 正常 200 异常 状态码 说明 400 Bad Request 服务器未能处理请求。 401 Unauthorized 被请求的页面需要用户名和密码。 403 Forbidden 对被请求页面的访问被禁止。 404 Not Found 服务器无法找到被请求的页面。 405 Method Not Allowed 请求中指定的方法不被允许。 406 Not Acceptable 服务器生成的响应无法被客户端所接受。 407 Proxy Authentication Required 用户必须首先使用代理服务器进行验证,这样请求才会被处理。 408 Request Timeout 请求超出了服务器的等待时间。 409 Conflict 由于冲突,请求无法被完成。 413 Request Entity Too Large 用户配额不足。 500 Internal Server Error 请求未完成。服务异常。 501 Not Implemented 请求未完成。服务器不支持所请求的功能。 502 Bad Gateway 请求未完成。服务器从上游服务器收到一个无效的响应。 503 Service Unavailable 请求未完成。系统暂时异常。 504 Gateway Timeout 网关超时。
-
响应消息 参数说明 参数 参数类型 描述 share Object 详细参数说明请参见share字段说明 share字段说明: 参数 参数类型 描述 links Array 共享链接。 availability_zone String 可用区AZ(availability zone)。 share_server_id String 共享服务管理的ID id String 共享的ID。 size Integer 共享容量,单位GB。 project_id String 创建共享的项目的ID。 metadata Object 一到多个字典形式组织的键值对。其中share_used作为key,对应的value表示共享已经使用的容量,单位是Bytes;enterprise_project_id作为key,对应的value是共享所属的企业项目ID。 status String 共享的状态。 description String 共享描述。 host String 共享主机名。 name String 共享名称。 created_at String 共享创建的时间标签。 share_proto String 文件系统的共享协议。 share_type_name String 共享类型的名称,共享类型用于指定分配哪些类型的存储服务,例如高性能类型(由SSD磁盘组成)、大容量类型(由SATA盘组成)。(API 微版本2.6以后支持)。 share_type String 共享类型的ID。 volume_type String 卷类型,,与share_type含义相同。 export_locations Array 共享挂载路径信息列表,当前只支持有一个共享。当请求消息头指定的X-Openstack-Manila-Api-Version的值低于2.9,该字段存在,若为2.9到2.42之间,该消息不存在。 export_location String 共享挂载路径,当请求消息头指定的X-Openstack-Manila-Api-Version的值低于2.9,该字段存在,若为2.9到2.42之间,该消息不存在。 is_public Boolean 共享的可见程度。设置为true时公共可见,设置为false时私有个人可见,默认值为false。 响应样例 { "share": { "status": "creating", "project_id": "16e1ab15c35a457e9c2b2aa189f544e1", "name": "share_London", "share_type": "25747776-08e5-494f-ab40-a64b9d20d8f7", "availability_zone": "az1.dc1", "created_at": "2015-09-18T10:25:24.533287", "export_location": null, "links": [ { "href": "http://192.168.198.54:8786/v2/16e1ab15c35a457e9c2b2aa189f544e1/shares/011d21e2-fbc3-4e4a-9993-9ea223f73264", "rel": "self" }, { "href": "http://192.168.198.54:8786/16e1ab15c35a457e9c2b2aa189f544e1/shares/011d21e2-fbc3-4e4a-9993-9ea223f73264", "rel": "bookmark" } ], "share_network_id": null, "export_locations": [], "share_proto": "NFS", "host": null, "volume_type": "default", "snapshot_id": null, "is_public": true, "metadata": { "project": "my_app", "aim": "doc" }, "id": "011d21e2-fbc3-4e4a-9993-9ea223f73264", "size": 1, "description": "My custom share London" }} 客户端收到系统响应时,共享创建任务还未结束,因此,共享路径不能马上查询到,当创建任务完成后,用户可以通过共享路径信息查询接口查询出来。
-
功能介绍 创建文件共享。创建文件系统成功后,您还需前往弹性云服务器执行挂载操作,才能实现多个云服务器共享文件存储。挂载相关操作请参考弹性文件服务快速入门。 该接口为异步接口,返回为200只是表示接口下发接收成功,后续可以通过查询共享详细信息查询共享的共享状态和共享路径,判断创建共享是否完成以及是否成功,如果共享状态变为available,或者共享路径已经生成,说明创建已经成功。 通过该接口创建共享成功后,用户还需要参考添加共享访问规则添加共享访问规则,之后才可正常使用创建的共享。
-
请求消息 参数说明 参数 是否必选 参数类型 描述 share 是 Object 详见share字段说明 share字段说明: 参数 是否必选 参数类型 描述 share_proto 是 String 文件系统共享协议,有效值为NFS(适用于linux系统)。 size 是 Integer 共享容量,单位GB。申请的共享容量不能大于配额值,需要查看配额,请参考配额查询接口。 name 否 String 共享名称,长度为0~255,只支持英文字母、数字、中划线、下划线。 description 否 String 共享描述信息,长度为0~255,只支持英文字母、数字、中划线、下划线。 is_public 否 Boolean (API 微版本2.8到2.42支持)共享的可见程度。设置为true时公共可见,设置为false时私有个人可见,默认值为false。 availability_zone 否 String AZ( availability zone)的名称,如果不输入AZ信息,后台会当成默认AZ处理,默认AZ中如果无存储资源,共享创建会失败。长度为0~255。 metadata 否 Object 创建共享的metadata信息,一到多个字典形式组织的键值对组成,见metadata字段说明。 注意: 出于系统安全考虑,现未开放修改metadata字段的API接口,因此,通过metadata字段创建包含 数据加密 功能的共享时,请确保相应参数和值正确。 metadata字段中以下规则的键,除非已经明确可以被设置的(例如“#sfs_crypt_key_id”等),其他的为系统内部使用,请勿自定义设置,避免因与系统预定义键冲突导致的系统内部错误: 字符串“share_used”。 以字符串“#sfs”开头。 metadata字段说明(创建共享,同时共享具有数据加密功能) 创建具有数据加密功能的共享时,请首先参考《数据加密服务API参考》中的“查询密钥列表”章节通过HTTPS请求获取加密密钥的密钥ID、DomainID和密钥别名,然后在metadata字段中设置如下字典形式组织的键值对,请务必确保metadata字段中的键值对正确。 当需要创建具有数据加密功能的共享时,以下参数均为必选。如仅需要创建普通共享时,以下参数均为可选。 键 值类型 是否必选 说明 #sfs_crypt_key_id String 是 加密密钥ID。 该字段与“#sfs_crypt_domain_id”和“#sfs_crypt_alias”字段同时存在时表示启动数据加密功能。 #sfs_crypt_domain_id String 是 租户的Domain id。 该字段与“#sfs_crypt_key_id”和“#sfs_crypt_alias”字段同时存在时表示启动数据加密功能。 #sfs_crypt_alias String 是 加密密钥别名。 该字段与“#sfs_crypt_key_id”和“#sfs_crypt_domain_id”字段同时存在时表示启动数据加密功能。 建议使用弹性文件服务的默认密钥“sfs/default”的来创建加密共享请参考《弹性文件服务用户指南》中的“文件系统加密”章节和“加密”章节获取详细信息和注意事项)。 创建带企业项目ID的共享时,metadata中的键如下: 键 值类型 是否必选 说明 enterprise_project_id String 是 企业项目ID。 在租户开启企业项目功能的情况下,enterprise_project_id作为key,value为企业项目ID,给共享绑定企业项目ID。 请求样例 :POST https://{endpoint}/v2/16e1ab15c35a457e9c2b2aa189f544e1/shares 创建共享,共享协议类型为NFS,共享容量为1GB,共享的可见程度为私有个人可见。 { "share": { "name": "test", "description": "test description", "share_proto": "NFS", "share_network_id": null, "size": 1, "is_public": false }}
-
请求消息 参数说明 参数 是否必选 参数类型 描述 offset 否 String 索引位置。整型数字字符串,默认为0,必须为数字,不能为负数。返回的结果中第一条记录为符合查询条件的第offset+1条记录。 limit 否 String 查询记录数。整型数字字符串,默认为1000。最小值为1,最大值为1000。 返回的结果中记录数不超过limit。 action 是 String 操作标识。取值范围为:“filter”和“count”。 根据标签查询共享详情时使用“filter”。 matches 否 Array of matchs 共享资源搜索字段。当该字段不设置时,默认为搜索租户的所有共享。 tags 否 Array of tags 标签搜索字段。包含标签,结果返回满足tags搜索条件的共享资源列表。搜索条件中所有tag之间是“与”的关系,即只有当所有tag搜索条件都满足时,共享资源才可以被搜索。每个tag搜索条件的key-values结构中values数组的值之间是“或”的关系。无tags过滤条件时,默认认为这个标签搜索字段满足要求。最多包含10个key,每个key下面的value最多10个,每个key对应的value可以为空数组但结构体不能缺失。key不能重复,同一个key-values结构中values的值之间不能重复。 tags_any 否 Array of tags 标签搜索字段。包含任意标签,结果返回满足tags_any搜索条件的共享资源列表。搜索条件中所有tag之间是“或”的关系,即只要有其中一个tag搜索条件满足要求时,共享资源便可以被搜索。每个tag搜索条件的key-values结构中values数组之间是“或”的关系。无tags_any过滤条件时,默认认为这个标签搜索字段满足要求。查询条件最多包含10个key,每个key下面的value最多10个, 每个key对应的value可以为空数组但结构体不能缺失。key不能重复,同一个key-values结构中values的值之间不能重复。 not_tags 否 Array of tags 标签搜索字段。不包含标签,结果返回满足not_tags搜索条件的共享资源列表,搜索条件中所有tag之间是“或非”的关系,即只有当所有tag搜索条件都不满足要求时,共享资源才可以被搜索。每个tag搜索条件的key-values结构中values数组的值之间是“或”的关系。无not_tags过滤条件时,默认认为这个标签搜索字段满足要求。最多包含10个key,每个key下面的value最多10个,每个key对应的value可以为空数组但结构体不能缺失。key不能重复,同一个key-values结构中values的值之间不能重复。 not_tags_any 否 Array of tags 标签搜索字段。不包含任意标签,结果返回满足not_tags_any搜索条件的共享资源列表,查询条件中所有tag之间是“与非”的关系,即只要有一个tag搜索条件不满足要求时,共享资源便可以被搜索。每个tag搜索条件的key-values结构中values数组之间是“或”的关系。无not_tags_any过滤条件时,默认认为这个标签搜索字段满足要求。查询条件最多包含10个key,每个key下面的value最多10个, 每个key对应的value可以为空数组但结构体不能缺失。key不能重复,同一个key-values结构中values的值之间不能重复。 sys_tags 否 Array of tags 仅op_service权限可以使用此字段做资源实例过滤条件: 目前TMS调用时只包含一个tag结构体 key:_sys_enterprise_project_id。 目前TMS调用时key下面只包含一个value,0表示默认企业项目。 sys_tags和租户标签过滤条件(tags、tags_any、not_tags、not_tags_any)不能同时使用。 请求参数中,标签搜索字段tags/not_tags/tags_any/not_tags_any为非必选且可以任意自由组合,标签搜索字段tags/not_tags/tags_any/not_tags_any之间为“与”的关系。 match字段说明: 参数 是否必选 参数类型 描述 key 是 String 键。固定值为"resource_name"。 value 是 String 值。需要查询的共享的名称。value为空字符串时,精确匹配名称为空的共享,为非空字符串时模糊匹配(不区分大小写)。每个值最大长度为255个字符 。 tag字段说明: 参数 是否必选 参数类型 描述 key 是 String 标签的键。最大长度127个字符。 key不能为空。 values 是 Array of strings 值列表。每个值最大长度255个字符,如果values为空列表,则表示匹配任意值value。value之间为或的关系。 请求样例 根据标签查询共享详情,要查询的共享的标签的键是“key1”,值为“value2”。 { "offset": "0", "limit": "100", "action": "filter", "matches": [{ "key": "resource_name", "value": "share_name" }], "tags": [{ "key": "key1", "values": ["value2"] }, { "key": "key2", "values": [] }], "tags_any": [{ "key": "key3", "values": ["value3"] }, { "key": "key4", "values": [] }], "not_tags": [{ "key": "key5", "values": ["value5"] }, { "key": "key6", "values": [] }], "not_tags_any": [{ "key": "key7", "values": ["value7", "value8"] }, { "key": "key9", "values": [] }]}
-
Console引用 权限 对应API接口 授权项 依赖的授权项 IAM 项目 (Project) 企业项目 (Enterprise Project) 更改安全组 Console引用 sfsturbo:shares:shareAction 更改安全组需要安全组相关权限: vpc:securityGroups:* vpc:securityGroupRules:* √ √ 查询sfs turbo配额 Console引用 sfsturbo:shares:getQuota - √ √ 获取可用区信息 Console引用 sfsturbo:shares:getAZInfo - √ √ 获取sfs turbo规格信息 Console引用 sfsturbo:shares:getFlavors - √ √ 检查文件系统名称 Console引用 sfsturbo:shares:checkShareName - √ √
-
文件系统 权限 对应API接口 授权项 依赖的授权项 IAM项目 (Project) 企业项目 (Enterprise Project) 创建文件系统 POST /v1/{project_id}/sfs-turbo/shares sfsturbo:shares:createShare 创建SFS Turbo实例时,需要vpc相关权限,包括校验vpc、子网、安全组,创建vip以及port,创建安全组规则等,需要增加授权项: "vpc:*:*" 加密实例需要在项目上配置KMS Administrator权限 专属场景,需要增加授权项: "dss:*:get", "dss:*:list", "dss:*:count" √ √ 查询所有文件系统详细信息 GET /v1/{project_id}/sfs-turbo/shares/detail sfsturbo:shares:getAllShares - √ √ 查询单个文件系统详细信息 GET /v1/{project_id}/sfs-turbo/shares/{share_id} sfsturbo:shares:getShare - √ √ 删除文件系统 DELETE /v1/{project_id}/sfs-turbo/shares/{share_id} sfsturbo:shares:deleteShare 删除SFS Turbo实例时,需要vpc相关权限,包括删除vip以及port,删除安全组规则等,需要增加授权项: "vpc:*:*" 如果是专属场景,需要增加授权项: "dss:*:get", "dss:*:list", "dss:*:count" √ √ 创建文件系统异步任务 POST /v1/{project_id}/sfs-turbo/shares/{share_id}/fs/{feature}/tasks sfsturbo:shares:createFsAsyncTask - √ √ 获取文件系统异步任务列表 GET /v1/{project_id}/sfs-turbo/shares/{share_id}/fs/{feature}/tasks sfsturbo:shares:listFsAsyncTasks - √ √ 获取文件系统异步任务详情 GET /v1/{project_id}/sfs- turbo/shares/{share_id}/fs/{feature}/tasks/{task_id} sfsturbo:shares:showFsAsyncTask - √ √ 取消/删除文件系统异步任务 DELETE /v1/{project_id}/sfs-turbo/shares/{share_id}/fs/{feature}/tasks/{task_id} sfsturbo:shares:deleteFsAsyncTask - √ √ 绑定后端存储 POST /v1/{project_id}/sfs-turbo/shares/{share_id}/targets sfsturbo:shares:createBackendTarget 用户需要额外配置OBS Adminstrator权限。 √ √ 查询后端存储列表 GET /v1/{project_id}/sfs-turbo/shares/{share_id}/targets sfsturbo:shares:listBackendTargets - √ √ 获取后端存储详细信息 GET /v1/{project_id}/sfs-turbo/shares/{share_id}/targets/{target_id} sfsturbo:shares:showBackendTargetInfo - √ √ 删除后端存储 DELETE /v1/{project_id}/sfs-turbo/shares/{share_id}/targets/{target_id} sfsturbo:shares:deleteBackendTarget - √ √ 创建数据导入导出任务 POST /v1/{project_id}/sfs-turbo/{share_id}/hpc-cache/task sfsturbo:shares:createDataRepositoryTask - √ √ 查询数据导入导出任务详情 GET /v1/{project_id}/sfs-turbo/{share_id}/hpc-cache/task/{task_id} sfsturbo:shares:getDataRepositoryTask - √ √ 查询数据导入导出任务列表 GET /v1/{project_id}/sfs-turbo/{share_id}/hpc-cache/tasks sfsturbo:shares:getAllDataRepositoryTasks - √ √
-
请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 Date 是 String 请求消息时间 Authorization 是 String 请求签名信息 Host 是 String 表明主机地址。如filesystem.sfs3.cn-north-4.myhuaweicloud.com。 表3 请求Body参数 参数 是否必选 参数类型 描述 Statement 否 Array of Statement objects Unique identification 表4 Statement 参数 是否必选 参数类型 描述 Sid 否 String statement Id,描述statement的字符串 Action 是 String 本条statement作用的操作,取值范围:FullControl(读写)、Read(只读)。 枚举值: FullControl Read Effect 是 String 效果,指定本条statement的权限是允许,必须为Allow。 枚举值: Allow Condition 是 Condition object 本条statement生效的条件。 表5 Condition 参数 是否必选 参数类型 描述 SourceVpc 是 String 指定VPC的VPCid。 VpcSourceIp 否 Array of strings 指定的IP或IP范围(暂不支持该参数)。
-
请求示例 设置文件系统ACL,授予读写权限,VPC ID为“241dbf6b-dc5d-41b2-9108-ca5e56b48386”,IP范围为["127.0.0.1/24", "192.168.1.85/24"]。 PUT /?sfsacl HTTP/1.1Host: examplefilesystem.sfs3.cn-north-4.myhuaweicloud.comDate: WED, 01 Jul 2015 02:32:25 GMTAuthorization: OBS H4IPJX0TQTHTHEBQQCEC:jZiAT8Vx4azWEvPRMWi0X5BpJMA={"Statement": [{"Sid": "Stmt1375240018061","Action": "FullControl","Effect": "Allow","Condition": {"SourceVpc": "241dbf6b-dc5d-41b2-9108-ca5e56b48386","VpcSourceIp": ["127.0.0.1/24", "192.168.1.85/24"]}}]}
-
请求参数 表1 请求Header参数 参数 是否必选 参数类型 描述 x-obs-bucket-type 是 String 通过此消息头明确获取的列表内容。 取值: SFS:获取所有文件系统列表。 枚举值: SFS Authorization 是 String 签名信息 Date 是 String 请求时间 Host 是 String 表明主机地址。如sfs3.cn-north-4.myhuaweicloud.com。
-
响应参数 状态码: 200 表2 响应Body参数 参数 参数类型 描述 Owner Owner object 文件系统拥有者信息,包含租户ID Buckets Buckets object 用户所拥有的文件系统列表 表3 Owner 参数 参数类型 描述 ID String 用户的DomainID(账号ID) 表4 Buckets 参数 参数类型 描述 Bucket Bucket object 具体的文件系统信息 表5 Bucket 参数 参数类型 描述 Name String 文件系统名称 CreationDate String 文件系统的创建时间 Location String 文件系统的位置信息
-
创建共享 如下示例是创建文件共享最简单的配置。 { "share": { "description": "test description", "share_type": "default", "name": "share_London", "metadata": { "key1": "value1", "key2": "value2" }, "share_proto": "NFS", "size": 10, "is_public": false }} description:文件共享的描述,可以通过描述对文件共享添加备注。 share_type:共享类型的名称,共享类型用于指定分配哪些类型的存储服务。 share_proto:文件共享协议类型。 name:文件共享的名称,由您自行定义,例如取名为share_London。 size:文件共享大小,单位GB。 is_public:共享的可见程度。设置为true时公共可见,设置为false时私有个人可见,默认值为false。 metadata:共享的metadata信息,一到多个字典形式组织的键值对组成。
-
创建加密的共享 您还可以为文件共享进行加密,只需在请求消息体的metadata中增加与加密共享相关的参数即可,示例如下。 { "share": { "share_type": null, "name": "test", "snapshot_id": null, "description": "test description", "metadata": { "#sfs_crypt_key_id": "9130c90d-73b8-4203-b790-d49f98d503df", "#sfs_crypt_domain_id": "3b2d9670690444c582942801ed7d457b", "#sfs_crypt_alias": "sfs/default" }, "share_proto": "NFS", "share_network_id": null, "size": 1, "is_public": false }} #sfs_crypt_key_id:加密密钥ID,该字段与“#sfs_crypt_domain_id”和“#sfs_crypt_alias”字段同时存在时表示启动数据加密功能。 #sfs_crypt_domain_id:租户的Domain id,该字段与“#sfs_crypt_key_id”和“#sfs_crypt_alias”字段同时存在时表示启动数据加密功能。 #sfs_crypt_alias:加密密钥别名,该字段与“#sfs_crypt_key_id”和“#sfs_crypt_domain_id”字段同时存在时表示启动数据加密功能。
-
Java中Content-MD5的计算方法示例 1 2 3 4 5 6 7 8 910111213141516171819 import java.security.MessageDigest;import sun.misc.BASE64Encoder;import java.io.UnsupportedEncodingException;import java.security.NoSuchAlgorithmException;public class Md5{ public static void main(String[] args) { try { String exampleString = "blog"; MessageDigest messageDigest = MessageDigest.getInstance("MD5"); BASE64Encoder encoder = new BASE64Encoder(); String contentMd5 = encoder.encode(messageDigest.digest(exampleString.getBytes("utf-8"))); System.out.println("Content-MD5:" + contentMd5); } catch (NoSuchAlgorithmException | UnsupportedEncodingException e) { e.printStackTrace(); } }}
-
状态码 正常 200 异常 状态码 说明 400 Bad Request 服务器未能处理请求。 400 Bad Request 无效输入:缩容后的大小必须大于0并小于当前大小(当前:XX,新大小:XX) 400 Bad Request 无效输入:扩容后的大小必须大于当前大小(当前:XX,新大小:XX) 401 Unauthorized 被请求的页面需要用户名和密码。 403 Forbidden 对被请求页面的访问被禁止。 404 Not Found 服务器无法找到被请求的页面。 405 Method Not Allowed 请求中指定的方法不被允许。 406 Not Acceptable 服务器生成的响应无法被客户端所接受。 407 Proxy Authentication Required 用户必须首先使用代理服务器进行验证,这样请求才会被处理。 408 Request Timeout 请求超出了服务器的等待时间。 409 Conflict 由于冲突,请求无法被完成。 500 Internal Server Error 请求未完成。服务异常。 501 Not Implemented 请求未完成。服务器不支持所请求的功能。 502 Bad Gateway 请求未完成。服务器从上游服务器收到一个无效的响应。 503 Service Unavailable 请求未完成。系统暂时异常。 504 Gateway Timeout 网关超时。
-
响应消息 参数说明 参数 参数类型 描述 versions Object 所有可用的API版本列表对象。 version字段说明: 参数 参数类型 描述 id String 所使用版本的公用名称。 updated String 接口最后修改的UTC时间,格式为YYYY-MM-DDTHH:MM:SSZ status String API 版本的状态。其值为: CURRENT:当前API使用的首选版本。 SUPPORTED:表示该版本为老版本,但当前还在继续支持。 DEPRECATED:表示该版本为废弃版本,存在后续删除的可能。 links Array of objects 共享链接。参见links字段说明。 media-types Array of objects API支持的媒介类型,参见media-types字段说明。 version String 如果当前版本的API支持microversions,此处为支持的microversion的最大版本。如果不支持microversions,这将会是空字符串。 min_version String 如果当前版本的API支持microversions, 此处为支持的microversion的最小版本。如果不支持microversions, 这将会是空字符串。 links字段说明: 参数 参数类型 描述 href String API接口访问路径,作为参考。 type String 参考接口返回的信息文本类型。 rel String 链接附加描述。 media-types字段说明: 参数 参数类型 描述 base String 文本基础类型。 type String 文本类型。 响应样例 { "versions": [ { "status": "CURRENT", "updated": "2015-08-27T11:33:21Z", "links": [ { "href": "http://docs.openstack.org/", "type": "text/html", "rel": "describedby" }, { "href": "https://sfs.region.www.t-systems.com/v2/", "rel": "self" } ], "min_version": "2.0", "version": "2.28", "media-types": [ { "base": "application/json", "type": "application/vnd.openstack.share+json;version=1" } ], "id": "v2.0" } ]}
-
响应消息 参数说明 参数 参数类型 描述 share Object share对象 share字段说明: 参数 参数类型 描述 links Array 共享链接。 availability_zone String 可用区AZ(availability zone)。 share_server_id String 共享服务管理的ID share_network_id String 共享网络的ID,当前不支持共享网络管理,该字段无意义。 snapshot_id String 创建共享的源快照的ID,当前不支持快照,该字段当前无意义。 snapshot_support Boolean 是否支持快照,当前不支持快照,该字段当前无意义。(API 微版本2.2以后支持)。 id String 共享的ID。 size Integer 共享容量,单位GB。 consistency_group_id String 一致性组的ID,当前不支持一致性组,该字段当前无意义。(API 微版本2.31到2.42支持) project_id String 创建共享的项目的ID。 metadata Object 一到多个字典形式组织的键值对。其中share_used作为key,对应的value表示共享已经使用的容量,单位是Bytes。SFS容量型文件系统已用容量小于1MB时,将不会显示已用容量。enterprise_project_id作为key,对应的value是共享所属的企业项目ID。 status String 共享的状态。 task_state String 数据迁移状态,当前不支持数据迁移,该字段无意义。(API 微版本2.5以后支持) has_replicas Boolean 是否有复制,当前不支持复制,该字段无意义。(API 微版本2.11到2.42支持)。 replication_type String 复制类型,当前不支持复制,该字段无意义。(API 微版本2.11到2.42支持)。 description String 共享描述。 host String 共享主机名。 name String 共享名称。 created_at String 共享创建的时间标签。 share_proto String 文件系统的共享协议。 share_type_name String 共享类型的名称,共享类型用于指定分配哪些类型的存储服务,例如高性能类型(由SSD磁盘组成)、大容量类型(由SATA盘组成)。(API 微版本2.6以后支持)。 share_type String 共享类型的ID。 volume_type String 卷类型,,与share_type含义相同。 export_locations Array 共享挂载路径信息列表,当前只支持有一个共享。当请求消息头指定的X-Openstack-Manila-Api-Version的值低于2.9,该字段存在,若为2.9到2.42之间,该消息不存在。 export_location String 共享挂载路径,当请求消息头指定的X-Openstack-Manila-Api-Version的值低于2.9,该字段存在,若为2.9到2.42之间,该消息不存在。 is_public Boolean 共享的可见程度。设置为true时公共可见,设置为false时私有个人可见,默认值为false。 响应样例 { "share": { "status": "available", "share_type_name": "sla", "description": "My custom share London", "links": [ { "href": "https://192.168.196.47:8796/v2/07412155bf474db9a2f697fd978593d7/shares/f26d867f-9876-433d-8db2-25d210f29309", "rel": "self" }, { "href": "https://192.168.196.47:8796/07412155bf474db9a2f697fd978593d7/shares/f26d867f-9876-433d-8db2-25d210f29309", "rel": "bookmark" } ], "availability_zone": "az1.dc1", "share_network_id": null, "share_server_id": null, "share_group_id": null, "host": "DJ38@a4588256-3880-4136-b3c9-4c3aade8a84b#a4588256-3880-4136-b3c9-4c3aade8a84b", "revert_to_snapshot_support": null, "access_rules_status": "active", "snapshot_id": null, "create_share_from_snapshot_support": null, "is_public": false, "task_state": null, "snapshot_support": true, "id": "f26d867f-9876-433d-8db2-25d210f29309", "size": 1, "source_share_group_snapshot_member_id": null, "user_id": "daa3f8f8d7254465841da769298a76f6", "name": "luzhongguo_1", "share_type": "8ae4e74e-83f4-4980-8ab8-e637f9294e0b", "has_replicas": false, "replication_type": null, "created_at": "2018-12-25T08:45:22.525899", "share_proto": "NFS", "volume_type": "sla", "mount_snapshot_support": null, "project_id": "07412155bf474db9a2f697fd978593d7", "metadata": { "share_key": "test", "share_used": "1", } }}
-
状态码 正常 200 异常 状态码 说明 400 Bad Request 服务器未能处理请求。 401 Unauthorized 被请求的页面需要用户名和密码。 403 Forbidden 对被请求页面的访问被禁止。 404 Not Found 服务器无法找到被请求的页面。 405 Method Not Allowed 请求中指定的方法不被允许。 406 Not Acceptable 服务器生成的响应无法被客户端所接受。 407 Proxy Authentication Required 用户必须首先使用代理服务器进行验证,这样请求才会被处理。 408 Request Timeout 请求超出了服务器的等待时间。 409 Conflict 由于冲突,请求无法被完成。 500 Internal Server Error 请求未完成。服务异常。 501 Not Implemented 请求未完成。服务器不支持所请求的功能。 502 Bad Gateway 请求未完成。服务器从上游服务器收到一个无效的响应。 503 Service Unavailable 请求未完成。系统暂时异常。 504 Gateway Timeout 网关超时。
-
状态码 正常 200 异常 状态码 说明 400 Bad Request 服务器未能处理请求。 401 Unauthorized 被请求的页面需要用户名和密码。 403 Forbidden 对被请求页面的访问被禁止。 404 Not Found 服务器无法找到被请求的页面。 405 Method Not Allowed 请求中指定的方法不被允许。 406 Not Acceptable 服务器生成的响应无法被客户端所接受。 407 Proxy Authentication Required 用户必须首先使用代理服务器进行验证,这样请求才会被处理。 408 Request Timeout 请求超出了服务器的等待时间。 409 Conflict 由于冲突,请求无法被完成。 500 Internal Server Error 请求未完成。服务异常。 501 Not Implemented 请求未完成。服务器不支持所请求的功能。 502 Bad Gateway 请求未完成。服务器从上游服务器收到一个无效的响应。 503 Service Unavailable 请求未完成。系统暂时异常。 504 Gateway Timeout 网关超时。
-
响应消息 参数说明 参数 参数类型 描述 quota_set Object quota_set对象。 quota_set字段说明: 参数 参数类型 描述 gigabytes Integer 租户允许的容量大小。 snapshots Integer 租户允许的快照数量。 shares Integer 租户允许的共享数量。 snapshot_gigabytes Integer 租户允许的快照容量大小。 id String 阈值对应租户的ID。 share_networks Integer 租户允许的共享网络数量。 响应样例 { "quota_set": { "gigabytes": -1, "snapshots": -1, "snapshot_gigabytes": -1, "shares": -1, "id": "da0f615c35eb4d72812d1547a77b5394", "share_networks": 10 }}
-
状态码 正常 200 异常 状态码 说明 400 Bad Request 服务器未能处理请求。 401 Unauthorized 被请求的页面需要用户名和密码。 403 Forbidden 对被请求页面的访问被禁止。 404 Not Found 服务器无法找到被请求的页面。 405 Method Not Allowed 请求中指定的方法不被允许。 406 Not Acceptable 服务器生成的响应无法被客户端所接受。 407 Proxy Authentication Required 用户必须首先使用代理服务器进行验证,这样请求才会被处理。 408 Request Timeout 请求超出了服务器的等待时间。 409 Conflict 由于冲突,请求无法被完成。 500 Internal Server Error 请求未完成。服务异常。 501 Not Implemented 请求未完成。服务器不支持所请求的功能。 502 Bad Gateway 请求未完成。服务器从上游服务器收到一个无效的响应。 503 Service Unavailable 请求未完成。系统暂时异常。 504 Gateway Timeout 网关超时。
-
请求消息 参数说明 参数 是否必选 参数类型 描述 os-allow_access 是 Object os-allow_access对象。 当API的版本号在1.0-2.6之间时,请求体中JSON格式的body体中顶层参数使用"os-"前缀。如果需要使用的API版本大于2.6,则需要去掉"os-"前缀。 os-allow_access字段说明: 参数 是否必选 参数类型 描述 access_level 否 String 共享访问的权限级别,取值为ro(只读),rw(读写)。默认为rw(读写)。 access_type 是 String 访问存储的方式。 NFS协议文件共享只支持cert, 多协议文件共享支持cert。 说明 取值为user,指以用户名的方式访问存储, 取值为cert,指以VPCid+IP的方式访问存储。 access_to 是 String 定义访问规则的值。根据场景取值: 如果access_type为user,则取值为AK。 如果access_type为cert: 按照VPC授权的场景,填写VPCID。 按照IP地址授权的场景进行填写: 如果是NFS共享,填写格式为“VPCID#IP#优先级#用户权限”,其中VPCID、IP、优先级和用户权限字段之间使用“#”分隔,例如“0157b53f-4974-4e80-91c9-098532bcaf00#2.2.2.2/16#100#all_squash,root_squash”。。 如果是多协议共享,填写格式为“#协议类型#访问存储的方式# VPCID#IP#优先级#用户权限”,例如“#NFS#IP#07207b50-61b4-4e40-b272-e5433105c2d0#1.1.1.1#1#no_all_squash,no_root_squash” 说明: VPCID、IP、优先级和用户权限的说明与限制: VPCID:VPC的ID。 IP:E CS 主网口上的租户IPv4地址或IPv4地址段。一条规则只支持设置一个IPv4地址或IPv4地址段,使用掩码形式表示一个地址段,如192.168.1.0-192.168.1.255的地址段的格式为192.168.1.0/24,不支持192.168.1.0-255等其他地址段表示形式。输入的IPv4地址/地址段必须合法,且不能为除0.0.0.0/0以外之前0开头的IP地址或地址段,其中当设置为0.0.0.0/0时表示VPC内的任意IP。同时,不能为127以及224~255开头的IP地址或地址段,例如127.0.0.1,224.0.0.1,255.255.255.255,其中以224-239开头的IP地址或地址段是属于D类地址,用于组播;以240-255开头的IP地址或地址段属于E类地址,用于研究。使用非合法的IP或IP地址段可能会导致添加访问规则失败或者添加的访问规则无法生效。 优先级:共享访问规则的优先级。优先级只能是0-100的整数。0表示优先级最高,100表示优先级最低。同一VPC内挂载时会优先使用该优先级高的IP地址/地址段所拥有的权限,存在相同优先级时会随机匹配其中一个IP地址/地址段。例如:用户在执行挂载操作时的IP地址为10.1.1.32,而在已经授权的IP地址/地址段中10.1.1.32(读写)和10.1.1.0/24(只读)均符合要求,则此时会先使用两个地址/地址段中优先级较高的权限。 用户权限:格式为“allSquash,rootSquash”。allSquash和rootSquash之间的权限设置用“,”分隔。allSquash的取值为“all_squash”或“no_all_squash”,rootSquash的取值包括"root_squash"或"no_root_squash"。 须知: 创建IP地址授权的场景的共享访问规则时,API的microversions需要是2.28以及之后的版本,且需要在请求URL中添加vpc_ip_base_acl参数,详细请参考下述的请求样例(按照IP地址授权的场景)。 属于VPC A中的弹性云服务器IP地址可以被成功添加至VPC B的授权IP地址内,但该云服务器无法挂载属于VPC B下的文件系统。弹性云服务器和文件系统所使用的VPC需为同一个。
-
URI POST /v2/{project_id}/shares/{share_id}/action?vpc_ip_base_acl={vpc_ip_base_acl} 参数说明 参数 是否必选 参数类型 描述 share_id 是 String 共享的ID。 project_id 是 String 操作用户的项目ID,获取方法请参见获取项目ID。 vpc_ip_base_acl 否 String IP地址授权场景的标识符,当前可用值只有enable。值为enable时,表示创建IP地址授权场景的共享访问规则。 须知: 为了兼容性,当不设置该参数,或者设置了该参数但是值不为enable时,仍然可以使用接口创建IP地址授权场景的共享访问规则,但是,这种方式已废弃,且后续不再维护。
-
响应消息 参数说明 参数 参数类型 描述 access Object access对象,如果共享访问规则未更新,这个值为null。 access字段说明: 参数 参数类型 描述 share_id String 添加访问规则共享的ID。 access_type String 共享访问规则类型。 access_to String 后端允许或拒绝访问的对象。 access_level String 共享访问规则级别。 id String 共享访问规则的ID。 state String 共享访问规则的状态。API版本在2.28之前,共享访问规则的状态为new, active,或者error;在2.28到2.42之后的版本,共享访问规则的状态为queued_to_apply,applying, active, error, queued_to_deny或者 denying。 access_key String 访问规则的访问凭据。请求消息头指定的X-Openstack-Manila-Api-Version的值大于等于2.21到2.42时,该字段才存在。
-
请求消息 参数说明 参数 是否必选 参数类型 描述 os-shrink 是 Object os-shrink对象。 os-shrink字段说明: 参数 是否必选 参数类型 描述 new_size 是 Integer 缩容后share的新容量,以GB为单位。 请求样例 缩容共享,缩容后共享的新容量为1GB。 { "os-shrink": { "new_size": 1 }}
-
状态码 正常 202 异常 状态码 说明 400 Bad Request 服务器未能处理请求。 401 Unauthorized 被请求的页面需要用户名和密码。 403 Forbidden 对被请求页面的访问被禁止。 404 Not Found 服务器无法找到被请求的页面。 405 Method Not Allowed 请求中指定的方法不被允许。 406 Not Acceptable 服务器生成的响应无法被客户端所接受。 407 Proxy Authentication Required 用户必须首先使用代理服务器进行验证,这样请求才会被处理。 408 Request Timeout 请求超出了服务器的等待时间。 409 Conflict 由于冲突,请求无法被完成。 500 Internal Server Error 请求未完成。服务异常。 501 Not Implemented 请求未完成。服务器不支持所请求的功能。 502 Bad Gateway 请求未完成。服务器从上游服务器收到一个无效的响应。 503 Service Unavailable 请求未完成。系统暂时异常。 504 Gateway Timeout 网关超时。
-
响应消息头 对应请求消息头,响应同样也有消息头,如“Content-type”。 详细的公共响应消息头字段请参见表1。 表1 公共响应消息头 消息头名称 描述 Content-Length 响应消息体的字节长度。 类型:字符串。 默认值:无。 Connection 指明与服务器的连接是长连接还是短连接。 类型:字符串。 有效值:keep-alive | close。 默认值:无。 Date 系统响应的时间。 类型:字符串。 默认值:无。 x-obs-id-2 帮助定位问题的特殊符号。 类型:字符串。 默认值:无。 x-obs-request-id 由SFS创建来唯一确定本次请求的值,可以通过该值来定位问题。 类型:字符串。 默认值:无。
-
支持的授权项 策略包含系统策略和自定义策略,如果系统策略不满足授权要求,管理员可以创建自定义策略,并通过给用户组授予自定义策略来进行精细的访问控制。策略支持的操作与API相对应,授权项列表说明如下: 权限:允许或拒绝某项操作。 对应API接口:自定义策略实际调用的API接口。 授权项:自定义策略中支持的Action,在自定义策略中的Action中写入授权项,可以实现授权项对应的权限功能。 依赖的授权项:部分Action存在对其他Action的依赖,需要将依赖的Action同时写入授权项,才能实现对应的权限功能。 IAM项目(Project)/企业项目(Enterprise Project):自定义策略的授权范围,包括IAM项目与企业项目。授权范围如果同时支持IAM项目和企业项目,表示此授权项对应的自定义策略,可以在IAM和企业管理两个服务中给用户组授权并生效。如果仅支持IAM项目,不支持企业项目,表示仅能在IAM中给用户组授权并生效,如果在企业管理中授权,则该自定义策略不生效。关于IAM项目与企业项目的区别,详情请参见:IAM与企业管理的区别。 “√”表示支持,“x”表示暂不支持。 弹性文件服务支持的自定义策略授权项如下所示: 【示例】文件共享,包含SFS所有文件系统接口对应的授权项,如创建文件系统、查询文件系统列表、查询单个文件系统详情、修改文件系统、删除文件系统等接口。 【示例】扩容缩容,包括SFS文件系统扩容缩容接口对应的授权项,如扩容共享和缩容共享等接口。 【示例】SFS Turbo授权项分类,包含SFS Turbo所有文件系统接口对应的授权项,如创建文件系统、查询文件系统列表、查询单个文件系统详情、删除文件系统等接口。
-
响应消息 参数说明 参数 参数类型 描述 tags Array of resource_tags tag标签的列表。 sys_tags Array of resource_tags 仅op_service权限才可以获取此字段: 目前只包含一个resource_tag结构体 key:_sys_enterprise_project_id 目前key下面只包含一个value,0表示默认企业项目。 非op_service场景不能返回此字段。 resource_tag字段说明: 参数 参数类型 描述 key String 标签的键。 value String 标签的值。 响应样例 { "tags": [ { "key": "key1", "value": "value1" }, { "key": "key2", "value": "" } ]}
-
响应参数 状态码: 200 表4 响应Header参数 参数 参数类型 描述 X-request-id String 请求ID 表5 响应Body参数 参数 参数类型 描述 gc_time Integer 文件系统冷数据淘汰时间 状态码: 404 表6 响应Body参数 参数 参数类型 描述 errCode String 错误码 errMsg String 错误描述 状态码: 500 表7 响应Body参数 参数 参数类型 描述 errCode String 错误码 errMsg String 错误描述
共100000条
- 1
- ...
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
- 39
- 40
- 41
- 42
- 43
- 44
- 45
- 46
- 47
- 48
- 49
- 50
- 51
- 52
- 53
- 54
- 55
- 56
- 57
- 58
- 59
- 60
- 61
- 62
- 63
- 64
- 65
- 66
- 67
- 68
- 69
- 70
- 71
- 72
- 73
- 74
- 75
- 76
- 77
- 78
- 79
- 80
- 81
- 82
- 83
- 84
- 85
- 86
- 87
- 88
- 89
- 90
- 91
- 92
- 93
- 94
- 95
- 96
- 97
- 98
- 99
- 100
- 101
- 102
- 103
- 104
- 105
- 106
- 107
- 108
- 109
- 110
- 111
- 112
- 113
- 114
- 115
- 116
- 117
- 118
- 119
- 120
- 121
- 122
- 123
- 124
- 125
- 126
- 127
- 128
- 129
- 130
- 131
- 132
- 133
- 134
- 135
- 136
- 137
- 138
- 139
- 140
- 141
- 142
- 143
- 144
- 145
- 146
- 147
- 148
- 149
- 150
- 151
- 152
- 153
- 154
- 155
- 156
- 157
- 158
- 159
- 160
- 161
- 162
- 163
- 164
- 165
- 166
- 167
- 168
- 169
- 170
- 171
- 172
- 173
- 174
- 175
- 176
- 177
- 178
- 179
- 180
- 181
- 182
- 183
- 184
- 185
- 186
- 187
- 188
- 189
- 190
- 191
- 192
- 193
- 194
- 195
- 196
- 197
- 198
- 199
- 200
- 201
- 202
- 203
- 204
- 205
- 206
- 207
- 208
- 209
- 210
- 211
- 212
- 213
- 214
- 215
- 216
- 217
- 218
- 219
- 220
- 221
- 222
- 223
- 224
- 225
- 226
- 227
- 228
- 229
- 230
- 231
- 232
- 233
- 234
- 235
- 236
- 237
- 238
- 239
- 240
- 241
- 242
- 243
- 244
- 245
- 246
- 247
- 248
- 249
- 250
- 251
- 252
- 253
- 254
- 255
- 256
- 257
- 258
- 259
- 260
- 261
- 262
- 263
- 264
- 265
- 266
- 267
- 268
- 269
- 270
- 271
- 272
- 273
- 274
- 275
- 276
- 277
- 278
- 279
- 280
- 281
- 282
- 283
- 284
- 285
- 286
- 287
- 288
- 289
- 290
- 291
- 292
- 293
- 294
- 295
- 296
- 297
- 298
- 299
- 300
- 301
- 302
- 303
- 304
- 305
- 306
- 307
- 308
- 309
- 310
- 311
- 312
- 313
- 314
- 315
- 316
- 317
- 318
- 319
- 320
- 321
- 322
- 323
- 324
- 325
- 326
- 327
- 328
- 329
- 330
- 331
- 332
- 333
- 334
- 335
- 336
- 337
- 338
- 339
- 340
- 341
- 342
- 343
- 344
- 345
- 346
- 347
- 348
- 349
- 350
- 351
- 352
- 353
- 354
- 355
- 356
- 357
- 358
- 359
- 360
- 361
- 362
- 363
- 364
- 365
- 366
- 367
- 368
- 369
- 370
- 371
- 372
- 373
- 374
- 375
- 376
- 377
- 378
- 379
- 380
- 381
- 382
- 383
- 384
- 385
- 386
- 387
- 388
- 389
- 390
- 391
- 392
- 393
- 394
- 395
- 396
- 397
- 398
- 399
- 400
- 401
- 402
- 403
- 404
- 405
- 406
- 407
- 408
- 409
- 410
- 411
- 412
- 413
- 414
- 415
- 416
- 417
- 418
- 419
- 420
- 421
- 422
- 423
- 424
- 425
- 426
- 427
- 428
- 429
- 430
- 431
- 432
- 433
- 434
- 435
- 436
- 437
- 438
- 439
- 440
- 441
- 442
- 443
- 444
- 445
- 446
- 447
- 448
- 449
- 450
- 451
- 452
- 453
- 454
- 455
- 456
- 457
- 458
- 459
- 460
- 461
- 462
- 463
- 464
- 465
- 466
- 467
- 468
- 469
- 470
- 471
- 472
- 473
- 474
- 475
- 476
- 477
- 478
- 479
- 480
- 481
- 482
- 483
- 484
- 485
- 486
- 487
- 488
- 489
- 490
- 491
- 492
- 493
- 494
- 495
- 496
- 497
- 498
- 499
- 500
- 501
- 502
- 503
- 504
- 505
- 506
- 507
- 508
- 509
- 510
- 511
- 512
- 513
- 514
- 515
- 516
- 517
- 518
- 519
- 520
- 521
- 522
- 523
- 524
- 525
- 526
- 527
- 528
- 529
- 530
- 531
- 532
- 533
- 534
- 535
- 536
- 537
- 538
- 539
- 540
- 541
- 542
- 543
- 544
- 545
- 546
- 547
- 548
- 549
- 550
- 551
- 552
- 553
- 554
- 555
- 556
- 557
- 558
- 559
- 560
- 561
- 562
- 563
- 564
- 565
- 566
- 567
- 568
- 569
- 570
- 571
- 572
- 573
- 574
- 575
- 576
- 577
- 578
- 579
- 580
- 581
- 582
- 583
- 584
- 585
- 586
- 587
- 588
- 589
- 590
- 591
- 592
- 593
- 594
- 595
- 596
- 597
- 598
- 599
- 600
- 601
- 602
- 603
- 604
- 605
- 606
- 607
- 608
- 609
- 610
- 611
- 612
- 613
- 614
- 615
- 616
- 617
- 618
- 619
- 620
- 621
- 622
- 623
- 624
- 625
- 626
- 627
- 628
- 629
- 630
- 631
- 632
- 633
- 634
- 635
- 636
- 637
- 638
- 639
- 640
- 641
- 642
- 643
- 644
- 645
- 646
- 647
- 648
- 649
- 650
- 651
- 652
- 653
- 654
- 655
- 656
- 657
- 658
- 659
- 660
- 661
- 662
- 663
- 664
- 665
- 666
- 667
- 668
- 669
- 670
- 671
- 672
- 673
- 674
- 675
- 676
- 677
- 678
- 679
- 680
- 681
- 682
- 683
- 684
- 685
- 686
- 687
- 688
- 689
- 690
- 691
- 692
- 693
- 694
- 695
- 696
- 697
- 698
- 699
- 700
- 701
- 702
- 703
- 704
- 705
- 706
- 707
- 708
- 709
- 710
- 711
- 712
- 713
- 714
- 715
- 716
- 717
- 718
- 719
- 720
- 721
- 722
- 723
- 724
- 725
- 726
- 727
- 728
- 729
- 730
- 731
- 732
- 733
- 734
- 735
- 736
- 737
- 738
- 739
- 740
- 741
- 742
- 743
- 744
- 745
- 746
- 747
- 748
- 749
- 750
- 751
- 752
- 753
- 754
- 755
- 756
- 757
- 758
- 759
- 760
- 761
- 762
- 763
- 764
- 765
- 766
- 767
- 768
- 769
- 770
- 771
- 772
- 773
- 774
- 775
- 776
- 777
- 778
- 779
- 780
- 781
- 782
- 783
- 784
- 785
- 786
- 787
- 788
- 789
- 790
- 791
- 792
- 793
- 794
- 795
- 796
- 797
- 798
- 799
- 800
- 801
- 802
- 803
- 804
- 805
- 806
- 807
- 808
- 809
- 810
- 811
- 812
- 813
- 814
- 815
- 816
- 817
- 818
- 819
- 820
- 821
- 822
- 823
- 824
- 825
- 826
- 827
- 828
- 829
- 830
- 831
- 832
- 833
- 834
- 835
- 836
- 837
- 838
- 839
- 840
- 841
- 842
- 843
- 844
- 845
- 846
- 847
- 848
- 849
- 850
- 851
- 852
- 853
- 854
- 855
- 856
- 857
- 858
- 859
- 860
- 861
- 862
- 863
- 864
- 865
- 866
- 867
- 868
- 869
- 870
- 871
- 872
- 873
- 874
- 875
- 876
- 877
- 878
- 879
- 880
- 881
- 882
- 883
- 884
- 885
- 886
- 887
- 888
- 889
- 890
- 891
- 892
- 893
- 894
- 895
- 896
- 897
- 898
- 899
- 900
- 901
- 902
- 903
- 904
- 905
- 906
- 907
- 908
- 909
- 910
- 911
- 912
- 913
- 914
- 915
- 916
- 917
- 918
- 919
- 920
- 921
- 922
- 923
- 924
- 925
- 926
- 927
- 928
- 929
- 930
- 931
- 932
- 933
- 934
- 935
- 936
- 937
- 938
- 939
- 940
- 941
- 942
- 943
- 944
- 945
- 946
- 947
- 948
- 949
- 950
- 951
- 952
- 953
- 954
- 955
- 956
- 957
- 958
- 959
- 960
- 961
- 962
- 963
- 964
- 965
- 966
- 967
- 968
- 969
- 970
- 971
- 972
- 973
- 974
- 975
- 976
- 977
- 978
- 979
- 980
- 981
- 982
- 983
- 984
- 985
- 986
- 987
- 988
- 989
- 990
- 991
- 992
- 993
- 994
- 995
- 996
- 997
- 998
- 999
- 1000
- 1001
- 1002
- 1003
- 1004
- 1005
- 1006
- 1007
- 1008
- 1009
- 1010
- 1011
- 1012
- 1013
- 1014
- 1015
- 1016
- 1017
- 1018
- 1019
- 1020
- 1021
- 1022
- 1023
- 1024
- 1025
- 1026
- 1027
- 1028
- 1029
- 1030
- 1031
- 1032
- 1033
- 1034
- 1035
- 1036
- 1037
- 1038
- 1039
- 1040
- 1041
- 1042
- 1043
- 1044
- 1045
- 1046
- 1047
- 1048
- 1049
- 1050
- 1051
- 1052
- 1053
- 1054
- 1055
- 1056
- 1057
- 1058
- 1059
- 1060
- 1061
- 1062
- 1063
- 1064
- 1065
- 1066
- 1067
- 1068
- 1069
- 1070
- 1071
- 1072
- 1073
- 1074
- 1075
- 1076
- 1077
- 1078
- 1079
- 1080
- 1081
- 1082
- 1083
- 1084
- 1085
- 1086
- 1087
- 1088
- 1089
- 1090
- 1091
- 1092
- 1093
- 1094
- 1095
- 1096
- 1097
- 1098
- 1099
- 1100
- 1101
- 1102
- 1103
- 1104
- 1105
- 1106
- 1107
- 1108
- 1109
- 1110
- 1111
- 1112
- 1113
- 1114
- 1115
- 1116
- 1117
- 1118
- 1119
- 1120
- 1121
- 1122
- 1123
- 1124
- 1125
- 1126
- 1127
- 1128
- 1129
- 1130
- 1131
- 1132
- 1133
- 1134
- 1135
- 1136
- 1137
- 1138
- 1139
- 1140
- 1141
- 1142
- 1143
- 1144
- 1145
- 1146
- 1147
- 1148
- 1149
- 1150
- 1151
- 1152
- 1153
- 1154
- 1155
- 1156
- 1157
- 1158
- 1159
- 1160
- 1161
- 1162
- 1163
- 1164
- 1165
- 1166
- 1167
- 1168
- 1169
- 1170
- 1171
- 1172
- 1173
- 1174
- 1175
- 1176
- 1177
- 1178
- 1179
- 1180
- 1181
- 1182
- 1183
- 1184
- 1185
- 1186
- 1187
- 1188
- 1189
- 1190
- 1191
- 1192
- 1193
- 1194
- 1195
- 1196
- 1197
- 1198
- 1199
- 1200
- 1201
- 1202
- 1203
- 1204
- 1205
- 1206
- 1207
- 1208
- 1209
- 1210
- 1211
- 1212
- 1213
- 1214
- 1215
- 1216
- 1217
- 1218
- 1219
- 1220
- 1221
- 1222
- 1223
- 1224
- 1225
- 1226
- 1227
- 1228
- 1229
- 1230
- 1231
- 1232
- 1233
- 1234
- 1235
- 1236
- 1237
- 1238
- 1239
- 1240
- 1241
- 1242
- 1243
- 1244
- 1245
- 1246
- 1247
- 1248
- 1249
- 1250
- 1251
- 1252
- 1253
- 1254
- 1255
- 1256
- 1257
- 1258
- 1259
- 1260
- 1261
- 1262
- 1263
- 1264
- 1265
- 1266
- 1267
- 1268
- 1269
- 1270
- 1271
- 1272
- 1273
- 1274
- 1275
- 1276
- 1277
- 1278
- 1279
- 1280
- 1281
- 1282
- 1283
- 1284
- 1285
- 1286
- 1287
- 1288
- 1289
- 1290
- 1291
- 1292
- 1293
- 1294
- 1295
- 1296
- 1297
- 1298
- 1299
- 1300
- 1301
- 1302
- 1303
- 1304
- 1305
- 1306
- 1307
- 1308
- 1309
- 1310
- 1311
- 1312
- 1313
- 1314
- 1315
- 1316
- 1317
- 1318
- 1319
- 1320
- 1321
- 1322
- 1323
- 1324
- 1325
- 1326
- 1327
- 1328
- 1329
- 1330
- 1331
- 1332
- 1333
- 1334
- 1335
- 1336
- 1337
- 1338
- 1339
- 1340
- 1341
- 1342
- 1343
- 1344
- 1345
- 1346
- 1347
- 1348
- 1349
- 1350
- 1351
- 1352
- 1353
- 1354
- 1355
- 1356
- 1357
- 1358
- 1359
- 1360
- 1361
- 1362
- 1363
- 1364
- 1365
- 1366
- 1367
- 1368
- 1369
- 1370
- 1371
- 1372
- 1373
- 1374
- 1375
- 1376
- 1377
- 1378
- 1379
- 1380
- 1381
- 1382
- 1383
- 1384
- 1385
- 1386
- 1387
- 1388
- 1389
- 1390
- 1391
- 1392
- 1393
- 1394
- 1395
- 1396
- 1397
- 1398
- 1399
- 1400
- 1401
- 1402
- 1403
- 1404
- 1405
- 1406
- 1407
- 1408
- 1409
- 1410
- 1411
- 1412
- 1413
- 1414
- 1415
- 1416
- 1417
- 1418
- 1419
- 1420
- 1421
- 1422
- 1423
- 1424
- 1425
- 1426
- 1427
- 1428
- 1429
- 1430
- 1431
- 1432
- 1433
- 1434
- 1435
- 1436
- 1437
- 1438
- 1439
- 1440
- 1441
- 1442
- 1443
- 1444
- 1445
- 1446
- 1447
- 1448
- 1449
- 1450
- 1451
- 1452
- 1453
- 1454
- 1455
- 1456
- 1457
- 1458
- 1459
- 1460
- 1461
- 1462
- 1463
- 1464
- 1465
- 1466
- 1467
- 1468
- 1469
- 1470
- 1471
- 1472
- 1473
- 1474
- 1475
- 1476
- 1477
- 1478
- 1479
- 1480
- 1481
- 1482
- 1483
- 1484
- 1485
- 1486
- 1487
- 1488
- 1489
- 1490
- 1491
- 1492
- 1493
- 1494
- 1495
- 1496
- 1497
- 1498
- 1499
- 1500
- 1501
- 1502
- 1503
- 1504
- 1505
- 1506
- 1507
- 1508
- 1509
- 1510
- 1511
- 1512
- 1513
- 1514
- 1515
- 1516
- 1517
- 1518
- 1519
- 1520
- 1521
- 1522
- 1523
- 1524
- 1525
- 1526
- 1527
- 1528
- 1529
- 1530
- 1531
- 1532
- 1533
- 1534
- 1535
- 1536
- 1537
- 1538
- 1539
- 1540
- 1541
- 1542
- 1543
- 1544
- 1545
- 1546
- 1547
- 1548
- 1549
- 1550
- 1551
- 1552
- 1553
- 1554
- 1555
- 1556
- 1557
- 1558
- 1559
- 1560
- 1561
- 1562
- 1563
- 1564
- 1565
- 1566
- 1567
- 1568
- 1569
- 1570
- 1571
- 1572
- 1573
- 1574
- 1575
- 1576
- 1577
- 1578
- 1579
- 1580
- 1581
- 1582
- 1583
- 1584
- 1585
- 1586
- 1587
- 1588
- 1589
- 1590
- 1591
- 1592
- 1593
- 1594
- 1595
- 1596
- 1597
- 1598
- 1599
- 1600
- 1601
- 1602
- 1603
- 1604
- 1605
- 1606
- 1607
- 1608
- 1609
- 1610
- 1611
- 1612
- 1613
- 1614
- 1615
- 1616
- 1617
- 1618
- 1619
- 1620
- 1621
- 1622
- 1623
- 1624
- 1625
- 1626
- 1627
- 1628
- 1629
- 1630
- 1631
- 1632
- 1633
- 1634
- 1635
- 1636
- 1637
- 1638
- 1639
- 1640
- 1641
- 1642
- 1643
- 1644
- 1645
- 1646
- 1647
- 1648
- 1649
- 1650
- 1651
- 1652
- 1653
- 1654
- 1655
- 1656
- 1657
- 1658
- 1659
- 1660
- 1661
- 1662
- 1663
- 1664
- 1665
- 1666
- 1667
- 1668
- 1669
- 1670
- 1671
- 1672
- 1673
- 1674
- 1675
- 1676
- 1677
- 1678
- 1679
- 1680
- 1681
- 1682
- 1683
- 1684
- 1685
- 1686
- 1687
- 1688
- 1689
- 1690
- 1691
- 1692
- 1693
- 1694
- 1695
- 1696
- 1697
- 1698
- 1699
- 1700
- 1701
- 1702
- 1703
- 1704
- 1705
- 1706
- 1707
- 1708
- 1709
- 1710
- 1711
- 1712
- 1713
- 1714
- 1715
- 1716
- 1717
- 1718
- 1719
- 1720
- 1721
- 1722
- 1723
- 1724
- 1725
- 1726
- 1727
- 1728
- 1729
- 1730
- 1731
- 1732
- 1733
- 1734
- 1735
- 1736
- 1737
- 1738
- 1739
- 1740
- 1741
- 1742
- 1743
- 1744
- 1745
- 1746
- 1747
- 1748
- 1749
- 1750
- 1751
- 1752
- 1753
- 1754
- 1755
- 1756
- 1757
- 1758
- 1759
- 1760
- 1761
- 1762
- 1763
- 1764
- 1765
- 1766
- 1767
- 1768
- 1769
- 1770
- 1771
- 1772
- 1773
- 1774
- 1775
- 1776
- 1777
- 1778
- 1779
- 1780
- 1781
- 1782
- 1783
- 1784
- 1785
- 1786
- 1787
- 1788
- 1789
- 1790
- 1791
- 1792
- 1793
- 1794
- 1795
- 1796
- 1797
- 1798
- 1799
- 1800
- 1801
- 1802
- 1803
- 1804
- 1805
- 1806
- 1807
- 1808
- 1809
- 1810
- 1811
- 1812
- 1813
- 1814
- 1815
- 1816
- 1817
- 1818
- 1819
- 1820
- 1821
- 1822
- 1823
- 1824
- 1825
- 1826
- 1827
- 1828
- 1829
- 1830
- 1831
- 1832
- 1833
- 1834
- 1835
- 1836
- 1837
- 1838
- 1839
- 1840
- 1841
- 1842
- 1843
- 1844
- 1845
- 1846
- 1847
- 1848
- 1849
- 1850
- 1851
- 1852
- 1853
- 1854
- 1855
- 1856
- 1857
- 1858
- 1859
- 1860
- 1861
- 1862
- 1863
- 1864
- 1865
- 1866
- 1867
- 1868
- 1869
- 1870
- 1871
- 1872
- 1873
- 1874
- 1875
- 1876
- 1877
- 1878
- 1879
- 1880
- 1881
- 1882
- 1883
- 1884
- 1885
- 1886
- 1887
- 1888
- 1889
- 1890
- 1891
- 1892
- 1893
- 1894
- 1895
- 1896
- 1897
- 1898
- 1899
- 1900
- 1901
- 1902
- 1903
- 1904
- 1905
- 1906
- 1907
- 1908
- 1909
- 1910
- 1911
- 1912
- 1913
- 1914
- 1915
- 1916
- 1917
- 1918
- 1919
- 1920
- 1921
- 1922
- 1923
- 1924
- 1925
- 1926
- 1927
- 1928
- 1929
- 1930
- 1931
- 1932
- 1933
- 1934
- 1935
- 1936
- 1937
- 1938
- 1939
- 1940
- 1941
- 1942
- 1943
- 1944
- 1945
- 1946
- 1947
- 1948
- 1949
- 1950
- 1951
- 1952
- 1953
- 1954
- 1955
- 1956
- 1957
- 1958
- 1959
- 1960
- 1961
- 1962
- 1963
- 1964
- 1965
- 1966
- 1967
- 1968
- 1969
- 1970
- 1971
- 1972
- 1973
- 1974
- 1975
- 1976
- 1977
- 1978
- 1979
- 1980
- 1981
- 1982
- 1983
- 1984
- 1985
- 1986
- 1987
- 1988
- 1989
- 1990
- 1991
- 1992
- 1993
- 1994
- 1995
- 1996
- 1997
- 1998
- 1999
- 2000
- 2001
- 2002
- 2003
- 2004
- 2005
- 2006
- 2007
- 2008
- 2009
- 2010
- 2011
- 2012
- 2013
- 2014
- 2015
- 2016
- 2017
- 2018
- 2019
- 2020
- 2021
- 2022
- 2023
- 2024
- 2025
- 2026
- 2027
- 2028
- 2029
- 2030
- 2031
- 2032
- 2033
- 2034
- 2035
- 2036
- 2037
- 2038
- 2039
- 2040
- 2041
- 2042
- 2043
- 2044
- 2045
- 2046
- 2047
- 2048
- 2049
- 2050
- 2051
- 2052
- 2053
- 2054
- 2055
- 2056
- 2057
- 2058
- 2059
- 2060
- 2061
- 2062
- 2063
- 2064
- 2065
- 2066
- 2067
- 2068
- 2069
- 2070
- 2071
- 2072
- 2073
- 2074
- 2075
- 2076
- 2077
- 2078
- 2079
- 2080
- 2081
- 2082
- 2083
- 2084
- 2085
- 2086
- 2087
- 2088
- 2089
- 2090
- 2091
- 2092
- 2093
- 2094
- 2095
- 2096
- 2097
- 2098
- 2099
- 2100
- 2101
- 2102
- 2103
- 2104
- 2105
- 2106
- 2107
- 2108
- 2109
- 2110
- 2111
- 2112
- 2113
- 2114
- 2115
- 2116
- 2117
- 2118
- 2119
- 2120
- 2121
- 2122
- 2123
- 2124
- 2125
- 2126
- 2127
- 2128
- 2129
- 2130
- 2131
- 2132
- 2133
- 2134
- 2135
- 2136
- 2137
- 2138
- 2139
- 2140
- 2141
- 2142
- 2143
- 2144
- 2145
- 2146
- 2147
- 2148
- 2149
- 2150
- 2151
- 2152
- 2153
- 2154
- 2155
- 2156
- 2157
- 2158
- 2159
- 2160
- 2161
- 2162
- 2163
- 2164
- 2165
- 2166
- 2167
- 2168
- 2169
- 2170
- 2171
- 2172
- 2173
- 2174
- 2175
- 2176
- 2177
- 2178
- 2179
- 2180
- 2181
- 2182
- 2183
- 2184
- 2185
- 2186
- 2187
- 2188
- 2189
- ...
- 2190
- 2191
- 2192
- 2193
- 2194
- 2195
- 2196
- 2197
- 2198
- 2199
- 2200
- 2201
- 2202
- 2203
- 2204
- 2205
- 2206
- 2207
- 2208
- 2209
- 2210
- 2211
- 2212
- 2213
- 2214
- 2215
- 2216
- 2217
- 2218
- 2219
- 2220
- 2221
- 2222
- 2223
- 2224
- 2225
- 2226
- 2227
- 2228
- 2229
- 2230
- 2231
- 2232
- 2233
- 2234
- 2235
- 2236
- 2237
- 2238
- 2239
- 2240
- 2241
- 2242
- 2243
- 2244
- 2245
- 2246
- 2247
- 2248
- 2249
- 2250
- 2251
- 2252
- 2253
- 2254
- 2255
- 2256
- 2257
- 2258
- 2259
- 2260
- 2261
- 2262
- 2263
- 2264
- 2265
- 2266
- 2267
- 2268
- 2269
- 2270
- 2271
- 2272
- 2273
- 2274
- 2275
- 2276
- 2277
- 2278
- 2279
- 2280
- 2281
- 2282
- 2283
- 2284
- 2285
- 2286
- 2287
- 2288
- 2289
- 2290
- 2291
- 2292
- 2293
- 2294
- 2295
- 2296
- 2297
- 2298
- 2299
- 2300
- 2301
- 2302
- 2303
- 2304
- 2305
- 2306
- 2307
- 2308
- 2309
- 2310
- 2311
- 2312
- 2313
- 2314
- 2315
- 2316
- 2317
- 2318
- 2319
- 2320
- 2321
- 2322
- 2323
- 2324
- 2325
- 2326
- 2327
- 2328
- 2329
- 2330
- 2331
- 2332
- 2333
- 2334
- 2335
- 2336
- 2337
- 2338
- 2339
- 2340
- 2341
- 2342
- 2343
- 2344
- 2345
- 2346
- 2347
- 2348
- 2349
- 2350
- 2351
- 2352
- 2353
- 2354
- 2355
- 2356
- 2357
- 2358
- 2359
- 2360
- 2361
- 2362
- 2363
- 2364
- 2365
- 2366
- 2367
- 2368
- 2369
- 2370
- 2371
- 2372
- 2373
- 2374
- 2375
- 2376
- 2377
- 2378
- 2379
- 2380
- 2381
- 2382
- 2383
- 2384
- 2385
- 2386
- 2387
- 2388
- 2389
- 2390
- 2391
- 2392
- 2393
- 2394
- 2395
- 2396
- 2397
- 2398
- 2399
- 2400
- 2401
- 2402
- 2403
- 2404
- 2405
- 2406
- 2407
- 2408
- 2409
- 2410
- 2411
- 2412
- 2413
- 2414
- 2415
- 2416
- 2417
- 2418
- 2419
- 2420
- 2421
- 2422
- 2423
- 2424
- 2425
- 2426
- 2427
- 2428
- 2429
- 2430
- 2431
- 2432
- 2433
- 2434
- 2435
- 2436
- 2437
- 2438
- 2439
- 2440
- 2441
- 2442
- 2443
- 2444
- 2445
- 2446
- 2447
- 2448
- 2449
- 2450
- 2451
- 2452
- 2453
- 2454
- 2455
- 2456
- 2457
- 2458
- 2459
- 2460
- 2461
- 2462
- 2463
- 2464
- 2465
- 2466
- 2467
- 2468
- 2469
- 2470
- 2471
- 2472
- 2473
- 2474
- 2475
- 2476
- 2477
- 2478
- 2479
- 2480
- 2481
- 2482
- 2483
- 2484
- 2485
- 2486
- 2487
- 2488
- 2489
- 2490
- 2491
- 2492
- 2493
- 2494
- 2495
- 2496
- 2497
- 2498
- 2499
- 2500
- 2501
- 2502
- 2503
- 2504
- 2505
- 2506
- 2507
- 2508
- 2509
- 2510
- 2511
- 2512
- 2513
- 2514
- 2515
- 2516
- 2517
- 2518
- 2519
- 2520
- 2521
- 2522
- 2523
- 2524
- 2525
- 2526
- 2527
- 2528
- 2529
- 2530
- 2531
- 2532
- 2533
- 2534
- 2535
- 2536
- 2537
- 2538
- 2539
- 2540
- 2541
- 2542
- 2543
- 2544
- 2545
- 2546
- 2547
- 2548
- 2549
- 2550
- 2551
- 2552
- 2553
- 2554
- 2555
- 2556
- 2557
- 2558
- 2559
- 2560
- 2561
- 2562
- 2563
- 2564
- 2565
- 2566
- 2567
- 2568
- 2569
- 2570
- 2571
- 2572
- 2573
- 2574
- 2575
- 2576
- 2577
- 2578
- 2579
- 2580
- 2581
- 2582
- 2583
- 2584
- 2585
- 2586
- 2587
- 2588
- 2589
- 2590
- 2591
- 2592
- 2593
- 2594
- 2595
- 2596
- 2597
- 2598
- 2599
- 2600
- 2601
- 2602
- 2603
- 2604
- 2605
- 2606
- 2607
- 2608
- 2609
- 2610
- 2611
- 2612
- 2613
- 2614
- 2615
- 2616
- 2617
- 2618
- 2619
- 2620
- 2621
- 2622
- 2623
- 2624
- 2625
- 2626
- 2627
- 2628
- 2629
- 2630
- 2631
- 2632
- 2633
- 2634
- 2635
- 2636
- 2637
- 2638
- 2639
- 2640
- 2641
- 2642
- 2643
- 2644
- 2645
- 2646
- 2647
- 2648
- 2649
- 2650
- 2651
- 2652
- 2653
- 2654
- 2655
- 2656
- 2657
- 2658
- 2659
- 2660
- 2661
- 2662
- 2663
- 2664
- 2665
- 2666
- 2667
- 2668
- 2669
- 2670
- 2671
- 2672
- 2673
- 2674
- 2675
- 2676
- 2677
- 2678
- 2679
- 2680
- 2681
- 2682
- 2683
- 2684
- 2685
- 2686
- 2687
- 2688
- 2689
- 2690
- 2691
- 2692
- 2693
- 2694
- 2695
- 2696
- 2697
- 2698
- 2699
- 2700
- 2701
- 2702
- 2703
- 2704
- 2705
- 2706
- 2707
- 2708
- 2709
- 2710
- 2711
- 2712
- 2713
- 2714
- 2715
- 2716
- 2717
- 2718
- 2719
- 2720
- 2721
- 2722
- 2723
- 2724
- 2725
- 2726
- 2727
- 2728
- 2729
- 2730
- 2731
- 2732
- 2733
- 2734
- 2735
- 2736
- 2737
- 2738
- 2739
- 2740
- 2741
- 2742
- 2743
- 2744
- 2745
- 2746
- 2747
- 2748
- 2749
- 2750
- 2751
- 2752
- 2753
- 2754
- 2755
- 2756
- 2757
- 2758
- 2759
- 2760
- 2761
- 2762
- 2763
- 2764
- 2765
- 2766
- 2767
- 2768
- 2769
- 2770
- 2771
- 2772
- 2773
- 2774
- 2775
- 2776
- 2777
- 2778
- 2779
- 2780
- 2781
- 2782
- 2783
- 2784
- 2785
- 2786
- 2787
- 2788
- 2789
- 2790
- 2791
- 2792
- 2793
- 2794
- 2795
- 2796
- 2797
- 2798
- 2799
- 2800
- 2801
- 2802
- 2803
- 2804
- 2805
- 2806
- 2807
- 2808
- 2809
- 2810
- 2811
- 2812
- 2813
- 2814
- 2815
- 2816
- 2817
- 2818
- 2819
- 2820
- 2821
- 2822
- 2823
- 2824
- 2825
- 2826
- 2827
- 2828
- 2829
- 2830
- 2831
- 2832
- 2833
- 2834
- 2835
- 2836
- 2837
- 2838
- 2839
- 2840
- 2841
- 2842
- 2843
- 2844
- 2845
- 2846
- 2847
- 2848
- 2849
- 2850
- 2851
- 2852
- 2853
- 2854
- 2855
- 2856
- 2857
- 2858
- 2859
- 2860
- 2861
- 2862
- 2863
- 2864
- 2865
- 2866
- 2867
- 2868
- 2869
- 2870
- 2871
- 2872
- 2873
- 2874
- 2875
- 2876
- 2877
- 2878
- 2879
- 2880
- 2881
- 2882
- 2883
- 2884
- 2885
- 2886
- 2887
- 2888
- 2889
- 2890
- 2891
- 2892
- 2893
- 2894
- 2895
- 2896
- 2897
- 2898
- 2899
- 2900
- 2901
- 2902
- 2903
- 2904
- 2905
- 2906
- 2907
- 2908
- 2909
- 2910
- 2911
- 2912
- 2913
- 2914
- 2915
- 2916
- 2917
- 2918
- 2919
- 2920
- 2921
- 2922
- 2923
- 2924
- 2925
- 2926
- 2927
- 2928
- 2929
- 2930
- 2931
- 2932
- 2933
- 2934
- 2935
- 2936
- 2937
- 2938
- 2939
- 2940
- 2941
- 2942
- 2943
- 2944
- 2945
- 2946
- 2947
- 2948
- 2949
- 2950
- 2951
- 2952
- 2953
- 2954
- 2955
- 2956
- 2957
- 2958
- 2959
- 2960
- 2961
- 2962
- 2963
- 2964
- 2965
- 2966
- 2967
- 2968
- 2969
- 2970
- 2971
- 2972
- 2973
- 2974
- 2975
- 2976
- 2977
- 2978
- 2979
- 2980
- 2981
- 2982
- 2983
- 2984
- 2985
- 2986
- 2987
- 2988
- 2989
- 2990
- 2991
- 2992
- 2993
- 2994
- 2995
- 2996
- 2997
- 2998
- 2999
- 3000
- 3001
- 3002
- 3003
- 3004
- 3005
- 3006
- 3007
- 3008
- 3009
- 3010
- 3011
- 3012
- 3013
- 3014
- 3015
- 3016
- 3017
- 3018
- 3019
- 3020
- 3021
- 3022
- 3023
- 3024
- 3025
- 3026
- 3027
- 3028
- 3029
- 3030
- 3031
- 3032
- 3033
- 3034
- 3035
- 3036
- 3037
- 3038
- 3039
- 3040
- 3041
- 3042
- 3043
- 3044
- 3045
- 3046
- 3047
- 3048
- 3049
- 3050
- 3051
- 3052
- 3053
- 3054
- 3055
- 3056
- 3057
- 3058
- 3059
- 3060
- 3061
- 3062
- 3063
- 3064
- 3065
- 3066
- 3067
- 3068
- 3069
- 3070
- 3071
- 3072
- 3073
- 3074
- 3075
- 3076
- 3077
- 3078
- 3079
- 3080
- 3081
- 3082
- 3083
- 3084
- 3085
- 3086
- 3087
- 3088
- 3089
- 3090
- 3091
- 3092
- 3093
- 3094
- 3095
- 3096
- 3097
- 3098
- 3099
- 3100
- 3101
- 3102
- 3103
- 3104
- 3105
- 3106
- 3107
- 3108
- 3109
- 3110
- 3111
- 3112
- 3113
- 3114
- 3115
- 3116
- 3117
- 3118
- 3119
- 3120
- 3121
- 3122
- 3123
- 3124
- 3125
- 3126
- 3127
- 3128
- 3129
- 3130
- 3131
- 3132
- 3133
- 3134
- 3135
- 3136
- 3137
- 3138
- 3139
- 3140
- 3141
- 3142
- 3143
- 3144
- 3145
- 3146
- 3147
- 3148
- 3149
- 3150
- 3151
- 3152
- 3153
- 3154
- 3155
- 3156
- 3157
- 3158
- 3159
- 3160
- 3161
- 3162
- 3163
- 3164
- 3165
- 3166
- 3167
- 3168
- 3169
- 3170
- 3171
- 3172
- 3173
- 3174
- 3175
- 3176
- 3177
- 3178
- 3179
- 3180
- 3181
- 3182
- 3183
- 3184
- 3185
- 3186
- 3187
- 3188
- 3189
- 3190
- 3191
- 3192
- 3193
- 3194
- 3195
- 3196
- 3197
- 3198
- 3199
- 3200
- 3201
- 3202
- 3203
- 3204
- 3205
- 3206
- 3207
- 3208
- 3209
- 3210
- 3211
- 3212
- 3213
- 3214
- 3215
- 3216
- 3217
- 3218
- 3219
- 3220
- 3221
- 3222
- 3223
- 3224
- 3225
- 3226
- 3227
- 3228
- 3229
- 3230
- 3231
- 3232
- 3233
- 3234
- 3235
- 3236
- 3237
- 3238
- 3239
- 3240
- 3241
- 3242
- 3243
- 3244
- 3245
- 3246
- 3247
- 3248
- 3249
- 3250
- 3251
- 3252
- 3253
- 3254
- 3255
- 3256
- 3257
- 3258
- 3259
- 3260
- 3261
- 3262
- 3263
- 3264
- 3265
- 3266
- 3267
- 3268
- 3269
- 3270
- 3271
- 3272
- 3273
- 3274
- 3275
- 3276
- 3277
- 3278
- 3279
- 3280
- 3281
- 3282
- 3283
- 3284
- 3285
- 3286
- 3287
- 3288
- 3289
- 3290
- 3291
- 3292
- 3293
- 3294
- 3295
- 3296
- 3297
- 3298
- 3299
- 3300
- 3301
- 3302
- 3303
- 3304
- 3305
- 3306
- 3307
- 3308
- 3309
- 3310
- 3311
- 3312
- 3313
- 3314
- 3315
- 3316
- 3317
- 3318
- 3319
- 3320
- 3321
- 3322
- 3323
- 3324
- 3325
- 3326
- 3327
- 3328
- 3329
- 3330
- 3331
- 3332
- 3333
- 3333
推荐文章