华为云用户手册
-
合作方接入点 华为云与中信网络在部分城市部署了网络预连接,您可以通过表3的中信网络接入点连接至华为云。 如需更多信息或支持,可提交工单或联系销售经理。 表3 合作方接入点 城市 地址 长沙 湖南省长沙市雨花区人民东路38号,东一宾馆4楼 天津 天津滨海高新区华苑产业区海泰华科八路6号四层A区403号 福州 象园路33号耀龙审计局综合大楼3层 南京 江苏省南京市中山北路283号江苏物资大厦17楼 合肥 合肥市高新区合欢路与香樟大道交叉口合肥有线电视宽带网络有限公司4层 济南 经七路纬五路75号5楼 重庆 重庆市九龙坡区石坪桥横街66号九龙大厦副楼5层 成都 成都市草市街2号光大国际大厦四层
-
华为云接入点 表1 中国区域接入点信息 区域 接入点 运营商 位置区域信息 华北-北京四 北京-亚太 中立 北京亦庄亚太 北京-酒仙桥 鹏博士 北京恒通国际创新园 北京-汇天 中立 北京汇天云端产业园 北京-中金 中立 北京经开区中金数据 廊坊-万国 中立 廊坊万国数据 廊坊-润泽 电信 廊坊润泽信息港 廊坊-华为基地 华为 廊坊华为生产基地 武汉-武钢 中立 武汉武钢数据产业园 武汉-武研所 华为 武汉华为研究所 华北-乌兰察布一 乌兰察布-集宁 华为 乌兰察布华为云数据中心 乌兰察布-玫瑰营 华为 乌兰察布玫瑰营基地 华东-上海一 苏州-万国 中立 苏州万国数据中心 苏州-国科 联通 苏州国科数据中心 苏州-苏研所 华为 苏州华为研究所 苏州-坤汇 中立 苏州坤汇网络 苏州-吴江 移动 苏州移动数据中心 上海-万国 中立 上海万国数据中心 上海-宝信 移动 上海宝信数据中心 上海-光环 中立 上海光环新网数据中心 杭州-杭钢 中立 杭州杭钢云数据中心 杭州-杭研所 华为 杭州华为研究所 华东-上海二 上海-万国 中立 上海万国数据中心 上海-光环 中立 上海光环新网数据中心 上海-宝信 移动 上海宝信数据中心 华东二 芜湖-江北 华为 芜湖江北数据中心 芜湖-三山 华为 芜湖三山数据中心 芜湖-职教 华为 芜湖职教数据中心 华东-青岛 青岛-胶州 华为 胶州卡奥斯 青岛-红岛 移动 红岛移动数据中心 华南-广州 广州-云埔 电信 广州云埔数据中心 广州-华新园 中立 华南创新材料园 广州-大学城 中立 广州大学城 广州-明美 联通 广州明美电子 广州-化龙 联通 伟鑫创新产业园 深圳-宝德 中立 深圳观澜高新园 深圳-福田 中立 福田中鹏云 深圳-南山 中立 南山特发港 深圳-弈峰 中立 电达谷源产业园 东莞-团泊洼 华为 东莞松山湖华为 华南-广州-友好用户环境 广州-化龙 联通 伟鑫创新产业园 广州-云埔 电信 广州云埔数据中心 西南-贵阳一 成都-成研所 华为 成都华为研究所 贵阳-贵安移动 移动 贵安电子信息产业园 贵阳-七星湖 华为 贵安云上屯数据中心 贵阳-高端园 华为 贵阳高端园区 中国-香港 香港-沙田 电信 沙田火炭新鸿基 香港-西贡移动 移动 将军澳移动环球网络 香港-西贡GS 电信 将军澳GlobalSwitch 香港-荃湾 中立 香港-荃湾-MEGA 表2 国际区域接入点信息 区域 接入点 运营商 亚太-曼谷 曼谷-NTT NTT 曼谷-TRUE TRUE 亚太-新加坡 新加坡-Equinix Equinix 新加坡-Global Switch Global Switch 新加坡-1Net 1-Net 新加坡-Singtel Singtel 新加坡-Telin3 Telin 新加坡-STT STT 亚太-雅加达 雅加达-DCI DCI 雅加达-EDGE EDGE 亚太-马尼拉 马尼拉-GBP Globe 马尼拉-Digital Halo Digital Halo 非洲-约翰内斯堡 尼日利亚-拉各斯-Medallion Medallion 约翰内斯堡-IS Parklands Internet Solutions Parklands 约翰内斯堡-Teraco Teraco 约翰内斯堡-DPA Vodacom 约翰内斯堡-ADC ADC 约翰内斯堡-MTN MTN 非洲-开罗 开罗-Xceed Xceed 拉美-墨西哥城一 墨西哥-Ixtlahuaca Ixtlahuaca 墨西哥-Tultitlan KIO MEX 5 拉美-墨西哥城二 墨西哥-Tultitlan KIO MEX 5 墨西哥-Scala Scala 拉美-圣保罗一 圣保罗-Equinix Equinix 圣保罗-ODATA ODATA 圣保罗-Scala Scala 圣保罗-VIVO Telefonica 秘鲁-利马一 利马-TIC Telefonica 拉美-圣地亚哥 圣地亚哥-Paine Paine 圣地亚哥-Claro Claro 土耳其-伊斯坦布尔 伊斯坦布尔-Turkcell Turkcell 伊斯坦布尔-NGN NGN 中东-利雅得 利雅得-STC Khurais STC Khurais 利雅得-Remal Remal
-
合作方接入点 华为云与中信网络在部分城市部署了网络预连接,您可以通过表3的中信网络接入点连接至华为云。 如需更多信息或支持,可提交工单或联系销售经理。 表3 合作方接入点 城市 地址 长沙 湖南省长沙市雨花区人民东路38号,东一宾馆4楼 天津 天津滨海高新区华苑产业区海泰华科八路6号四层A区403号 福州 象园路33号耀龙审计局综合大楼3层 南京 江苏省南京市中山北路283号江苏物资大厦17楼 合肥 合肥市高新区合欢路与香樟大道交叉口合肥有线电视宽带网络有限公司4层 济南 经七路纬五路75号5楼 重庆 重庆市九龙坡区石坪桥横街66号九龙大厦副楼5层 成都 成都市草市街2号光大国际大厦四层
-
华为云接入点 表1 中国区域接入点信息 区域 接入点 运营商 位置区域信息 华北-北京四 北京-亚太 中立 北京亦庄亚太 北京-酒仙桥 鹏博士 北京恒通国际创新园 北京-汇天 中立 北京汇天云端产业园 北京-中金 中立 北京经开区中金数据 廊坊-万国 中立 廊坊万国数据 廊坊-润泽 电信 廊坊润泽信息港 廊坊-华为基地 华为 廊坊华为生产基地 武汉-武钢 中立 武汉武钢数据产业园 武汉-武研所 华为 武汉华为研究所 华北-乌兰察布一 乌兰察布-集宁 华为 乌兰察布华为云数据中心 乌兰察布-玫瑰营 华为 乌兰察布玫瑰营基地 华东-上海一 苏州-万国 中立 苏州万国数据中心 苏州-国科 联通 苏州国科数据中心 苏州-苏研所 华为 苏州华为研究所 苏州-坤汇 中立 苏州坤汇网络 苏州-吴江 移动 苏州移动数据中心 上海-万国 中立 上海万国数据中心 上海-宝信 移动 上海宝信数据中心 上海-光环 中立 上海光环新网数据中心 杭州-杭钢 中立 杭州杭钢云数据中心 杭州-杭研所 华为 杭州华为研究所 华东-上海二 上海-万国 中立 上海万国数据中心 上海-光环 中立 上海光环新网数据中心 上海-宝信 移动 上海宝信数据中心 华东二 芜湖-江北 华为 芜湖江北数据中心 芜湖-三山 华为 芜湖三山数据中心 芜湖-职教 华为 芜湖职教数据中心 华东-青岛 青岛-胶州 华为 胶州卡奥斯 青岛-红岛 移动 红岛移动数据中心 华南-广州 广州-云埔 电信 广州云埔数据中心 广州-华新园 中立 华南创新材料园 广州-大学城 中立 广州大学城 广州-明美 联通 广州明美电子 广州-化龙 联通 伟鑫创新产业园 深圳-宝德 中立 深圳观澜高新园 深圳-福田 中立 福田中鹏云 深圳-南山 中立 南山特发港 深圳-弈峰 中立 电达谷源产业园 东莞-团泊洼 华为 东莞松山湖华为 华南-广州-友好用户环境 广州-化龙 联通 伟鑫创新产业园 广州-云埔 电信 广州云埔数据中心 西南-贵阳一 成都-成研所 华为 成都华为研究所 贵阳-贵安移动 移动 贵安电子信息产业园 贵阳-七星湖 华为 贵安云上屯数据中心 贵阳-高端园 华为 贵阳高端园区 中国-香港 香港-沙田 电信 沙田火炭新鸿基 香港-西贡移动 移动 将军澳移动环球网络 香港-西贡GS 电信 将军澳GlobalSwitch 香港-荃湾 中立 香港-荃湾-MEGA 表2 国际区域接入点信息 区域 接入点 运营商 亚太-曼谷 曼谷-NTT NTT 曼谷-TRUE TRUE 亚太-新加坡 新加坡-Equinix Equinix 新加坡-Global Switch Global Switch 新加坡-1Net 1-Net 新加坡-Singtel Singtel 新加坡-Telin3 Telin 新加坡-STT STT 亚太-雅加达 雅加达-DCI DCI 雅加达-EDGE EDGE 亚太-马尼拉 马尼拉-GBP Globe 马尼拉-Digital Halo Digital Halo 非洲-约翰内斯堡 尼日利亚-拉各斯-Medallion Medallion 约翰内斯堡-IS Parklands Internet Solutions Parklands 约翰内斯堡-Teraco Teraco 约翰内斯堡-DPA Vodacom 约翰内斯堡-ADC ADC 约翰内斯堡-MTN MTN 非洲-开罗 开罗-Xceed Xceed 拉美-墨西哥城一 墨西哥-Ixtlahuaca Ixtlahuaca 墨西哥-Tultitlan KIO MEX 5 拉美-墨西哥城二 墨西哥-Tultitlan KIO MEX 5 墨西哥-Scala Scala 拉美-圣保罗一 圣保罗-Equinix Equinix 圣保罗-ODATA ODATA 圣保罗-Scala Scala 圣保罗-VIVO Telefonica 秘鲁-利马一 利马-TIC Telefonica 拉美-圣地亚哥 圣地亚哥-Paine Paine 圣地亚哥-Claro Claro 土耳其-伊斯坦布尔 伊斯坦布尔-Turkcell Turkcell 伊斯坦布尔-NGN NGN 中东-利雅得 利雅得-STC Khurais STC Khurais 利雅得-Remal Remal
-
云专线权限 默认情况下,管理员创建的 IAM 用户没有任何权限,需要将其加入用户组,并给用户组授予策略或角色,才能使得用户组中的用户获得对应的权限,这一过程称为授权。授权后,用户就可以基于被授予的权限对云服务进行操作。 云专线部署时通过物理区域划分,为项目级服务。授权时,“作用范围”需要选择“区域级项目”,然后在指定区域(如华北-北京1)对应的项目(cn-north-1)中设置相关权限,并且该权限仅对此项目生效;如果在“所有项目”中设置权限,则该权限在所有区域项目中都生效。访问云专线时,需要先切换至授权区域。 根据授权精细程度分为角色和策略。 角色:IAM最初提供的一种根据用户的工作职能定义权限的粗粒度授权机制。该机制以服务为粒度,提供有限的服务相关角色用于授权。由于华为云各服务之间存在业务依赖关系,因此给用户授予角色时,可能需要一并授予依赖的其他角色,才能正确完成业务。角色并不能满足用户对精细化授权的要求,无法完全达到企业对权限最小化的安全管控要求。 策略:IAM最新提供的一种细粒度授权的能力,可以精确到具体服务的操作、资源以及请求条件等。基于策略的授权是一种更加灵活的授权方式,能够满足企业对权限最小化的安全管控要求。例如:针对云专线服务,管理员能够控制IAM用户仅能对某一类云专线资源进行指定的管理操作。 如表1所示,包括了云专线的所有系统权限。 表1 云专线系统权限 系统角色/策略名称 描述 类别 依赖关系 Direct Connect Administrator 云专线服务的管理员权限,拥有该权限的用户拥有云专线服务所有执行权限。 拥有该权限的用户必须同时拥有Tenant Guest、VPC Administrator权限。 系统角色 依赖Tenant Guest、VPC Administrator策略。 VPC Administrator:项目级策略,在同项目中勾选。 Tenant Guest:项目级策略,在同项目中勾选。 DCaaS Partner 云专线服务合作伙伴用户权限,拥有该权限的用户可以为其他用户创建托管和标准连接。 拥有该权限的用户必须同时拥有Tenant Guest、VPC Administrator权限。 系统角色 依赖Tenant Guest、VPC Administrator策略。 VPC Administrator:项目级策略,在同项目中勾选。 Tenant Guest:项目级策略,在同项目中勾选。 DCAAS FullAccess 操作权限:对云专线服务的所有执行权限。 作用范围:项目级服务。 系统策略 无 DCAAS ReadOnlyAccess 操作权限:对云专线服务的只读权限。 作用范围:项目级服务。 系统策略 无 表2列出了云专线常用操作与系统权限的授权关系,您可以参照该表选择合适的系统权限。 表2 常用操作与系统权限的关系 操作 Direct Connect Administrator DCaaS Partner DCAAS FullAccess DCAAS ReadOnlyAccess 创建物理连接 √ √ √ × 查询物理连接 √ √ √ √ 修改物理连接 √ √ √ × 删除物理连接 √ √ √ × 创建虚拟网关 √ √ √ × 查询虚拟网关 √ √ √ √ 修改虚拟网关 √ √ √ × 删除虚拟网关 √ √ √ × 创建全域接入网关 √ √ √ × 查询全域接入网关 √ √ √ √ 修改全域接入网关 √ √ √ × 删除全域接入网关 √ √ √ × 创建虚拟接口 √ √ √ × 查询虚拟接口 √ √ √ √ 修改虚拟接口 √ √ √ × 删除虚拟接口 √ √ √ × 创建运营物理连接 √ √ √ × 查询运营物理连接 √ √ √ √ 修改运营物理连接 √ √ √ × 删除运营物理连接 √ √ √ × 创建租户物理连接 √ √ √ × 查询租户物理连接 √ √ √ √ 修改租户物理连接 √ √ √ × 删除租户物理连接 √ √ √ ×
-
Agent启停 当Agent处于启动状态时,启停按钮显示为;当Agent处于停止状态时,启停按钮显示为。 停止Agent 在实例列表页面,单击需要停用Agent的实例所在行的启停按钮。 在弹出的“停用Agent”弹框单击“确定”,完成对所选实例的停止。 启动Agent 在实例列表页面,单击需要启动Agent的实例所在行的启停按钮。 在弹出的“启用Agent”弹框单击“确定”,完成对所选实例的启动。
-
在Linux环境打包镜像 用户在Linux环境下,可以使用以下打包镜像的方式。 用户基于使用的镜像创建一个弹性云服务器,详细操作请参考弹性 云服务器入门 。 执行命令将install_uniagentd_self_OS.sh脚本下载到弹性云服务器上的/root 目录下: 下载命令的拼接规则:wget https://aom-uniagent-{region_id}.{obs_domain}/install_uniagentd_self_OS.sh 以华北-北京四区域为例: wget https://aom-uniagent-cn-north-4.obs.cn-north-4.myhuaweicloud.com/install_uniagentd_self_OS.sh {region_id}=cn-north-4 {obs_domain}=obs.cn-north-4.myhuaweicloud.com 在/etc/init.d/目录下添加执行以下命令,将install_uniagentd_self_OS.sh脚本设置成开机自启动: bash /root/install_uniagentd_self_OS.sh config 如果在/etc/init.d/目录下有AOMInstall开机启动脚本,即设置成功。 执行以下命令,删除配置脚本。执行完之后,即可制作镜像,制作私有镜像之前,Linux机器不能重启。 rm -f /root/install_uniagentd_self_OS.sh 在目标E CS 弹性云服务器的操作列单击“创建镜像”去创建私有镜像,详细操作请参考创建镜像。 根据用户的使用需要,配置镜像信息。
-
其他Exporter接入AOM实现指标监控 如果您所使用的Exporter还没有提供相应的接入方式,可以参考如下步骤进行接入。 查看支持的中间件Exporter。当前支持的中间件Exporter请参考:开源社区Exporter列表。 在常用中间件Exporter接入AOM中,已经提供部分常用中间件Exporter接入指导,您可以参考相关实践步骤,在CCE集群中部署其他的Exporter,并配置CCE集群指标采集规则,然后进行验证。
-
常用中间件Exporter接入AOM 表1 常用中间件Exporter接入AOM 操作指导 说明 PostgreSQL Exporter接入AOM实现指标监控 使用PostgreSQL过程中需要对PostgreSQL运行状态进行监控,以便了解PostgreSQL服务是否运行正常,及时排查PostgreSQL故障问题原因。Prometheus监控服务提供了CCE容器场景下基于Exporter的方式来监控PostgreSQL运行状态。本文介绍如何部署Exporter以及实现PostgreSQL Exporter告警接入等操作。 MySQL Exporter接入AOM实现指标监控 MySQL Exporter专门为采集MySQL数据库监控指标而设计开发,通过Exporter上报核心的数据库指标,用于异常报警和监控大盘展示。目前,Exporter支持5.6版本或以上版本的MySQL。在MySQL低于5.6版本时,部分监控指标可能无法被采集。 Kafka Exporter接入AOM实现指标监控 使用Kafka过程中需要对Kafka运行状态进行监控,例如集群状态、消息消费情况是否有积压等。Prometheus监控服务提供了CCE容器场景下基于Exporter的方式来监控Kafka运行状态。本文介绍如何部署Kafka Exporter以及实现Kafka Exporter告警接入等操作。 Memcached Exporter接入AOM实现指标监控 使用Memcached过程中需要对Memcached运行状态进行监控,以便了解Memcached服务是否运行正常,排查Memcached故障等。Prometheus监控服务提供了CCE容器场景下基于Exporter的方式来监控Memcached运行状态。本文为您介绍如何使用Prometheus监控服务Memcached。 MongoDB Exporter接入AOM实现指标监控 使用MongoDB过程中需要对MongoDB运行状态进行监控,以便了解MongoDB服务是否运行正常,排查MongoDB故障问题原因。Prometheus监控服务提供了CCE容器场景下基于Exporter的方式来监控MongoDB运行状态。本文介绍如何部署Exporter以及实现MongoDB Exporter告警接入等操作。 ElasticSearch Exporter接入AOM实现指标监控 使用ElasticSearch过程中需要对ElasticSearch运行状态进行监控,例如集群及索引状态等。Prometheus监控服务提供了CCE容器场景下基于Exporter的方式来监控ElasticSearch运行状态。本文介绍如何部署ElasticSearch Exporter以及实现ElasticSearch Exporter告警接入等操作。 Redis Exporter接入AOM实现指标监控 使用数据库Redis过程中需要对Redis运行状态进行监控,以便了解Redis服务是否运行正常,及时排查Redis故障等。Prometheus监控服务提供了CCE容器场景下基于Exporter的方式来监控Redis运行状态。本文为您介绍如何使用Prometheus监控Redis。
-
SSL证书介绍 SSL证书就是遵守SSL(Secure Socket Layer)协议,由受信任的数字证书颁发机构CA,在验证服务器身份后颁发,具有服务器身份验证和数据传输加密功能。服务器通过安装SSL证书可以实现数据信息在客户端和服务器之间的加密传输,可以防止数据信息的泄露,保证了双方传递信息的安全性,而且可以通过服务器证书验证他所访问的网站是否是真实可靠。 SSL证书分为权威证书和自签名证书。权威证书由权威的数字证书认证机构签发,您可向第三方证书代理商购买,使用权威证书的Web网站,默认客户端都是信任的。自签名证书是由用户自己颁发给自己的,一般可以使用openssl生成,默认客户端是不信任的,浏览器访问时会弹出告警,选择忽略告警可继续正常访问。
-
使用SSL证书 当服务有公网访问时,可以使用SSL证书,设置ELB为HTTPS协议。 在创建负载的过程中,负载访问方式选择“公网访问”,ELB协议选择“HTTP/HTTPS”,证书选项选择SSL证书,负载创建过程中会将SSL证书自动安装到弹性负载均衡器上,从而实现数据传输加密。 图2 使用SSL证书 负载创建完成后,云容器实例将会在ELB中创建与负载名字相同证书。云容器实例服务创建以“beethoveen-cci-ingress”开头名称的证书,请勿删除或更新该类证书,否则引起访问异常。
-
Secret文件格式说明 secret.yaml资源描述文件 例如现在有一个应用需要获取下面的key-value并加密,可以通过Secret来实现: key1: value1 key2: value2 定义的Secret文件secret.yaml内容如下。其中Value需要进行Base64编码,Base64编码方法请参见如何进行Base64编码。 apiVersion: v1 kind: Secret metadata: name: mysecret # secret的名称 annotations: description: "test" labels: label-01: value-01 label-02: value-02 data: key1: dmFsdWUx #需要用Base64编码 key2: dmFsdWUy #需要用Base64编码 type: Opaque # 必须为Opaque secret.json资源描述文件 定义的Secret文件secret.json内容如下。 { "apiVersion": "v1", "kind": "Secret", "metadata": { "annotations": { "description": "test" }, "labels": { "label-01": "value-01", "label-02": "value-02" }, "name": "mysecret" }, "data": { "key1": "dmFsdWUx", "key2": "dmFsdWUy" }, "type": "Opaque" }
-
功能概览 使用CCE集群+bursting基于如下模型,用户需要重点关注下发负载和调度。 下发负载涉及到用户给负载进行的配置项,和用户自身的业务高度相关。 工作负载配置项 功能描述 功能规格 相关文档拓展 调度 用户可以通过多种方式来管理CCE集群的工作负载,来控制其调度到CCI服务。通过合理的调度策略配置,提升用户集群的资源利用率。 支持3种调度策略。 支持2种管理调度策略的方式。 支持多个虚拟节点调度。 调度负载到CCI 资源配额 用户通过配置pod的cpu、memory等字段约束容器使用资源规格和上限。插件对资源规格进行规整,尽可能为用户降低成本。 提供对pod资源配额进行规整的能力。 实例资源配额 镜像 用户通过镜像配置自身业务镜像,将自己的业务容器运行在华为云CCE集群+CCI服务上。 支持修改镜像配置方式。 支持原地升级镜像。 镜像 存储 用户通过存储相关的配置为工作负载外挂存储卷,以完成业务中数据持久存储的诉求。 支持多种存储类型。 支持替换工作负载hostpath配置方式。 存储 网络 用户通过网络配置规划CCE集群和CCI集群之间的网络拓扑。 支持CCI侧负载通过service发布。 支持CCE集群pod与CCI集群中pod通过service互通。 支持指定cluster-dns。 网络 日志 用户可以通过同时安装CCE Log Collector插件和bursting插件,采集CCI侧工作负载的日志。 支持弹性CCI的负载通过CCE Log Collector上报日志。 支持日志自动转储。 日志 监控 用户可以通过配置插件对接监控平台,提升弹性CCI工作负载的可观测性。 支持对接AOM。 支持对接普罗米修斯。 监控
-
资源使用说明 CCE集群+bursting的使用场景涉及到华为云周边服务的搭配使用,如下表格详细描述了涉及到的周边服务。 涉及服务 资源说明 备注 CCI 插件会在CCI服务新建一个名为“cce-burst-”+“CCE集群ID”的命名空间。 不建议直接在CCI服务使用该命名空间,如需使用CCI服务,请另外新建命名空间。 CCI服务命名空间不产生计费。 CCE CCE侧的工作负载、Secret、Congfigmap、PV、PVC会同步到CCI,同时也占用CCE节点的资源。 CCE集群资源规模1000 pod+1000 configmap建议申请2U4G节点规格。 CCE集群资源规模2000 pod+2000 configmap建议申请4U8G节点规格。 CCE集群资源规模4000 pod+4000 configmap建议申请8U16G节点规格。 ELB 开启“支持CCE集群pod与CCI集群pod通过service互通”功能bursting插件会自动创建ELB资源。 创建共享型性能保障规格的ELB,名称为cce-lb-xxx。 当卸载插件时,该ELB资源也会被自动清除。 VPC 弹性CCI的负载共享使用CCE集群所在VPC。 CCI命名空间Service网段为10.247.0.0/16,CCE集群的VPC子网网段请避开该网段。 SWR 创建弹性到CCI的工作负载选择镜像时,直接对接华为云SWR服务。 创建负载请确认镜像已被正确上传至您的SWR仓库。
-
Pod annotation CCE集群+bursting的使用场景涉及到自定义注解,相关注解含义如下表所示。 annotation key 描述 相关文档 scheduling.cci.io/managed-by-profile 标记当前pod被哪个profile资源管理。 调度负载到CCI virtual-kubelet.cci.io/burst-pod-cpu 标记弹性后规整的cpu资源。 实例资源配额 virtual-kubelet.cci.io/burst-pod-memory 标记弹性后规整的memory资源。 实例资源配额 coordinator.cci.io/inject-volumes CCI pod日志采集相关,日志采集插件注入。 日志 logconf.k8s.io/fluent-bit-configmap-reference CCI pod日志采集相关,日志采集插件注入。 日志 logconfigs.logging.openvessel.io CCI pod日志采集相关,日志采集插件注入。 日志 sandbox-volume.openvessel.io/volume-names CCI pod日志采集相关,日志采集插件注入。 日志 coordinator.cci.io/image-replacement 镜像地址前缀替换相关。 镜像
-
操作步骤 安装“云原生监控插件”。 登录CCE控制台。 选择CCE集群,单击进入CCE集群总览页面。 在导航栏左侧单击“插件中心”,进入插件中心首页。 选择“云原生监控插件”,单击“安装”。 图1 安装云原生监控插件 在安装插件页面,进行规格配置,部署模式选择“Server模式”。 如果需要在Agent部署模式下使用HPA功能,请联系技术支持人员。 通过云原生监控插件,提供系统资源指标。 如果CCE集群中未安装metrics-server插件,请开启Metric API,详情请参见通过Metrics API提供资源指标。配置完成后,可使用Prometheus采集系统资源指标。 如果CCE集群中已安装metrics-server插件,可以选择以下任意一种方式进行处理: 方式一:请卸载“Kubernetes Metrics Server”插件后,开启Metric API。 登录CCE控制台。 选择CCE集群,单击进入CCE集群总览页面。 在导航栏左侧单击“插件中心”,进入插件中心首页。 选择“Kubernetes Metrics Server”插件,单击“卸载”。 开启Metric API,详情请参见通过Metrics API提供资源指标。配置完成后,可使用Prometheus采集系统资源指标。 方式二:修改APIService对象。 需要更新APIService对象“v1beta1.metrics.k8s.io”: apiVersion: apiregistration.k8s.io/v1 kind: APIService metadata: labels: app: custom-metrics-apiserver release: cceaddon-prometheus name: v1beta1.metrics.k8s.io spec: group: metrics.k8s.io groupPriorityMinimum: 100 insecureSkipTLSVerify: true service: name: custom-metrics-apiserver namespace: monitoring port: 443 version: v1beta1 versionPriority: 100 可以将该对象保存为文件,命名为metrics-apiservice.yaml,然后执行以下命令: kubectl apply -f metrics-apiservice.yaml 执行kubectl top pod -n monitoring命令,如果显示如下,则表示Metrics API能正常访问: # kubectl top pod -n monitoring NAME CPU(cores) MEMORY(bytes) ...... custom-metrics-apiserver-d4f556ff9-l2j2m 38m 44Mi ...... 卸载插件时,需要执行以下kubectl命令,同时删除APIService对象,否则残留的APIService资源将导致metrics-server插件安装失败。 kubectl delete APIService v1beta1.metrics.k8s.io
-
云审计 服务支持的CCI操作列表 CCI通过云审计服务(Cloud Trace Service,简称 CTS )为您提供云服务资源的操作记录,记录内容包括您从云管理控制台或者开放API发起的云服务资源操作请求以及每次请求的结果,供您查询、审计和回溯使用。 表1 云审计服务支持的CCI操作列表 操作名称 事件名称 创建一个Service对象 createService 删除一个Service对象 deleteService 删除指定Namespace下的所有Service对象 deleteServicesByNamespace 替换指定的Service对象 replaceService 更新指定的Service对象 updateService 删除一个Endpoint对象 deleteEndpoint 删除指定Namespace下的所有Endpoint对象 deleteEndpointsByNamespace 替换指定Namespace下的Endpoint对象 replaceEndpoint 更新指定Namespace下的Endpoint对象 updateEndpoint 创建一个Deployment对象 createDeployment 删除一个Deployment对象 deleteDeployment 删除指定Namespace下的所有Deployment对象 deleteDeploymentsByNamespace 替换指定Namespace下的Deployment对象 replaceDeployment 更新指定Namespace下的Deployment对象 updateDeployment 创建一个Statefulset对象 createStatefulset 删除一个Statefulset对象 deleteStatefulset 删除指定Namespace下的所有Statefulset对象 deleteStatefulsetsByNamespace 替换指定Namespace下的Statefulset对象 replaceStatefulset 更新指定Namespace下的Statefulset对象 updateStatefulset 创建一个Job对象 createJob 删除一个Job对象 deleteJob 删除指定Namespace下的所有Job对象 deleteJobsByNamespace 替换指定Namespace下的某个Job对象的状态 replaceJob 更新指定Namespace下的某个Job对象的状态 updateJob 创建一个Cronjob对象 createCronjob 删除一个Cronjob对象 deleteCronjob 删除指定Namespace下的所有Cronjob对象 deleteCronjobsByNamespace 替换指定Namespace下的某个Cronjob对象的状态 replaceCronjob 更新指定Namespace下的某个Cronjob对象的状态 updateCronjob 创建一个Ingress对象 createIngress 删除一个Ingress对象 deleteIngress 删除指定Namespace下的所有Ingress对象 deleteIngressesByNamespace 替换指定Namespace下的特定Ingress对象 replaceIngress 更新指定Namespace下的某个Ingress对象的状态 updateIngress 创建一个Namespace createNamespace 删除一个Namespace deleteNamespace 创建一个Pod createPod 更新指定Pod updatePod 替换指定Pod replacePod 删除一个Pod deletePod 删除Namespace下所有的Pod deletePodsByNamespace 删除指定Event deleteEvent 创建一个Configmap createConfigmap 更新指定Configmap updateConfigmap 替换指定Configmap replaceConfigmap 删除一个Configmap deleteConfigmap 删除指定Namespace下所有的Configmap deleteConfigmapsByNamespace 创建一个Secret createSecret 更新指定Secret updateSecret 替换指定Secret replaceSecret 删除指定Secret deleteSecret 删除指定Namespace下所有的Secret deleteSecretsByNamespace 创建Network createNetworks 删除指定Network deleteNetwork 创建一个Network createNetwork 删除指定Namespace下所有的Network deleteNetworksByNamespace 更新指定Network updateNetwork 替换指定Network replaceNetwork 创建network-attachment-definition createNetworkAttachmentDefinition 删除指定Namespace下所有的network-attachment-definitions deleteNetworkAttachmentDefinitionsByNamespace 删除指定network-attachment-definition deleteNetworkAttachmentDefinition 创建PV createPersistentvolume 删除指定Namespace下所有的PV deletePersistentvolumesByNamespace 替换指定PV replacePersistentvolume 更新指定PV updatePersistentvolume 删除指定PV deletePersistentvolume 创建PVC createPersistentvolumeclaim 导入已有PVC createPersistentvolumeclaimByStorageInfo 删除指定Namespace下所有的PVC deletePersistentvolumeclaimsByNamespace 替换指定PVC replacePersistentvolumeclaim 更新指定PVC updatePersistentvolumeclaim 删除指定PVC deletePersistentvolumeclaim 购买一个套餐包 createPackageproduct 购买活动套餐包 createActiveproduct 创建Kubeflow job createKubeflowJob 删除指定Namespace下所有的Kubeflow job deleteKubeflowJobsByNamespace 替换指定Kubeflow job replaceKubeflowJob 更新指定Kubeflow job updateKubeflowJob 删除指定Kubeflow job deleteKubeflowJob 创建Volcano job createVolcanoJob 删除指定Namespace下所有的Volcano job deleteVolcanoJobsByNamespace 替换指定Volcano job replaceVolcanoJob 更新指定Volcano job updateVolcanoJob 删除指定Volcano job deleteVolcanoJob 创建Agency createAgency 更新配额 modifyQuota 创建一个imagecache对象 createImagecache 删除一个imagecache对象 deleteImagecache 替换指定的imagecache对象 replaceImagecache 更新指定的imagecache对象 updateImagecache 上传模板 createChart 更新指定模板 updateChart 删除指定模板 deleteChart 上传插件 createAddon 更新指定插件 updateAddon 删除指定插件 deleteAddon 创建模板实例 createRelease 更新模板实例 updateRelease 删除模板实例 deleteRelease 创建插件实例 createAddonInstance 更新插件实例 updateAddonInstance 删除插件实例 deleteAddonInstance 创建插件readme createAddonReadme 删除插件Readme deleteAddonReadme 父主题: 审计
-
PersistentVolumeClaim(PVC) 云容器实例使用PVC申请并管理持久化存储,PVC可以让您无需关心底层存储资源如何创建、释放等动作,而只需要申明您需要何种类型的存储资源、多大的存储空间。 在实际使用中,您可以通过Pod中的Volume来关联PVC,通过PVC使用持久化存储,如图1所示。 图1 使用持久化存储 在云容器实例控制台,您可以导入已经创建的EVS、SFS和SFS Turbo,导入这些存储资源的同时会创建一个PVC用于这些存储资源。 您还可以在云容器实例控制台直接购买EVS和SFS,购买动作不仅购买实际的存储资源,同时还会创建PVC,也就是在这里购买就会直接导入到云容器实例中。
-
使用第三方镜像拉取用户业务镜像 使用CCI提供的工具创建第三方镜像仓库认证secret。 imagepull-secret-generator --ak=$ak --sk=$sk --private-user=$user --private-password=$password --output-file-path=my-imagepull-secret.json --project-name=region --secret-name=my-imagepull-secret --swr-address=swr.***.com 登录CCE集群节点,为集群创建secret。 kubectl apply -f my-imagepull-secret.json 创建负载,使用secret。 在spec.imagePullSecrets中指定第三方仓库认证secret。 apiVersion: apps/v1 kind: Deployment metadata: labels: app: test-imagepull virtual-kubelet.io/burst-to-cci: enforce name: test-imagepull spec: replicas: 1 selector: matchLabels: app: test-imagepull template: metadata: labels: app: test-imagepull spec: containers: - image: xxx/my-image:latest imagePullPolicy: Always name: nginx resources: limits: cpu: 1 memory: 2Gi requests: cpu: 1 memory: 2Gi imagePullSecrets: - name: my-imagepull-secret
-
操作步骤 登录CCE控制台。 选择CCE集群,单击进入CCE集群总览页面。 在导航栏左侧单击“监控中心”,进入监控中心首页。 单击“立即开通”。 在导航栏左侧单击“工作负载”,进入工作负载首页。 单击工作负载对应的右侧操作“监控”按钮。 查看负载监控指标,详情请参考云原生监控插件。 关于更多监控中心的用法,请参考应用运维管理(AOM)服务帮助文档。 也可以在CCI2.0 console界面上查看指标;前置条件:当前命名空间需开启AOM监控
-
配置流水线权限 访问CodeArts Pipeline首页。 在流水线列表页搜索目标流水线,单击操作列,选择“编辑”。 进入流水线“任务编排”页面,切换至“权限管理”页面,关闭“继承项目权限配置”,即可为流水线配置角色权限和人员权限。 配置角色权限 通过勾选/取消勾选,指定角色对当前流水线的查看、执行、编辑、删除操作权限。 图1 配置角色权限 配置人员权限 通过勾选/取消勾选,指定人员对当前流水线的查看、执行、编辑、删除操作权限。 图2 配置人员权限
-
流水线扩展插件使用场景 使用者可通过扩展插件对接使用各类云服务。如使用CodeArts Pipeline提供的官方插件,如Kubernetes发布。 开发者利用官方工具镜像进行插件开发,自行实现业务逻辑。当前支持开发者使用主流多语言进行业务脚本编写,如:shell/nodejs/python/java等。针对业务的特殊环境要求,支持使用自定义执行机配合基础插件(执行容器镜像)提供更加多样的执行方式。 使用者可开发扩展插件对接已有的第三方CI/CD工具。
-
配置发布管理原子插件 发布管理提供滚动升级插件、通用k8s部署插件、灰度起负载插件、灰度引流插件、灰度下线插件和人工卡点插件五种插件,用于滚动升级和灰度升级,以下分别介绍各插件配置方法。 滚动升级插件 滚动升级包括两种部署方式:镜像创建和YAML创建。 镜像创建:替换工作负载中容器的镜像。 表2 参数说明 参数项 说明 命名空间 待升级的服务所在的命名空间。 工作负载 命名空间下的工作负载。 容器 工作负载中需要升级的容器。 YAML创建:使用yaml文件升级或上线工作负载。 表3 参数说明 参数项 说明 仓库类型 代码仓库的类型,当前仅支持Repo。 代码仓 当前项目下的代码仓。 分支 代码仓库分支。 工作负载YAML路径 升级的工作负载YAML路径,填写YAML文件的相对路径。 当前目录为代码分支的根目录。 仅支持单个YAML文件。 YAML路径可以使用“${变量名}”引用环境变量,YAML文件中可以使用“{{变量名}}”引用环境变量。 通用k8s部署插件 通用k8s部署插件,按照用户配置的代码仓信息及文件路径,取到对应的文件,并将其下发至用户的k8s集群。 表4 参数说明 参数项 说明 仓库类型 代码仓库的类型,当前仅支持Repo。 代码仓 当前项目下的代码仓。 分支 代码仓库分支。 资源路径 填写YAML文件的相对路径。 当前目录为代码分支的根目录。 YAML路径可以使用“${变量名}”引用环境变量,YAML文件中可以使用“{{变量名}}”引用环境变量。 灰度起负载插件 灰度起负载包括两种部署方式:镜像升级和YAML部署。 镜像创建:替换工作负载中容器的镜像,创建与线上配置完全一致的工作负载,仅更新构建产物(镜像包)。 表5 参数说明 参数项 说明 命名空间 待升级的服务所在的命名空间。 服务 集群命名空间下的Service,需要确保该Service有且仅有一个工作负载与其关联。 自定义版本号 开关关闭,系统将自动随机生成灰度版本号;开关开启,用户可以按需配置灰度版本号。 灰度版本号 灰度版本号将作为新旧负载的引流标识,用于区分正式版本和灰度版本,请按需配置,支持使用${ENV}引用环境变量。如:${TIMESTAMP},表示引用系统时间戳环境变量作为灰度版本号。 支持大小写英文字母、数字、“-”、“_”、“.”,长度不超过62个字符。 YAML创建:使用yaml文件上线或升级工作负载。 表6 参数说明 参数项 说明 命名空间 待升级的服务所在的命名空间。 服务 集群命名空间下的服务,需要确保该服务有且仅有一个工作负载与其关联。 仓库类型 代码仓库的类型,当前仅支持Repo。 代码仓 当前项目下的代码仓。 分支 代码仓库分支。 工作负责YAML路径 填写YAML文件的相对路径。 当前目录为代码分支的根目录。 仅支持单个YAML文件。 YAML路径可以使用“${变量名}”引用环境变量,YAML文件中可以使用“{{变量名}}”引用环境变量。 灰度引流插件 选择引流类型,包括:Service蓝绿引流和ASM灰度引流。 Service蓝绿引流:基于集群Service将所有流量切换至新负载(灰度负载)。 ASM灰度引流:基于ASM的VirtualService和DestinationRule配置来控制访问流量,可以基于流量比例、请求Header等进行灰度引流,要求集群内安装ASM(应用服务网格)。 灰度下线插件 灰度下线插件会自动下线服务关联的旧工作负载,无需配置。 人工卡点插件 可以在卡点确认时进行批准或驳回部署策略,运行至人工卡点时流水线将暂停,若审批通过则继续执行,若驳回则终止执行。 表7 参数说明 参数项 说明 超时处理 超过等待审批时间后流水线的处理方案。 卡点失败,发布流终止执行:运行至人工卡点时流水线将暂停,若超时不处理则终止执行流水线。 忽略结果,发布流继续执行:运行至人工卡点时流水线将暂停,若超时不处理则继续执行流水线。 卡点时长 等待审批的时间,时间范围为1分钟至12小时。 卡点说明 卡点内容说明。长度不超过200个字符。
-
新建发布管理自定义策略 发布管理环境预置了滚动升级模板、灰度升级模板和空白yaml模板,用户可以基于任一模板,添加原子插件,编辑发布策略。 进入发布管理环境列表页面。 单击环境名称,进入“环境信息”页面。 单击“发布策略”页签,切换至“发布策略”页面。 单击“自定义策略”旁的,弹出“新建策略”对话框,选择策略模板,单击“确定”。 在模板的基础上自定义编排插件,并配置相关信息。 表1 新建策略 参数项 说明 策略名称 策略的名称。支持中文、英文字母、数字、“-”、“_”,不超过128个字符。 策略描述 长度不超过200个字符。 编排插件 选择策略模板后会自动生成相应的插件,可根据需要自定义编排并配置插件信息,插件参数配置请参考配置发布管理原子插件。 单击,可添加插件。 单击,可复制当前插件。 单击,可删除当前插件。 配置完成后,单击“保存”。 在左侧目录找到刚创建的策略,单击策略所在行,即可应用该策略,应用后策略会变为“默认”的状态。
-
查看发布管理发布结果 进入发布管理环境列表页面。 单击环境名称,进入“环境信息”页面。 单击“部署历史”页签,切换至“部署历史”页面,页面展示该环境的所有工单历史。 单击工单名称,可以进入工单的详情页面,详情页面展示本次发布的发布流信息、基本信息以及各原子插件发布单信息。 发布流信息 图1 发布流信息 展示工单执行结果、工单类型、触发人、流水线、发布策略模板等信息,单击对应原子插件可展示该插件的发布单信息。 取消:在发布过程中,单击“取消”可手动取消本次发布。 重试:在发布过程中,如果出现失败或取消运行,单击“重试”可重试发布流。 回滚:单击“回滚”弹出提示确认框,确认后将取消本次发布过程,将服务状态恢复至发布前。 环境直接发布时,部署工单不展示流水线信息。 支持在发布流的任意时刻回滚,可用于当前部署版本不符合预期,需要快速将环境恢复到上一次可用状态的场景。 基本信息 展示环境名称、策略、服务扩展点、变量版本、镜像、开始时间、结束时间。 原子插件发布单信息 展示各原子插件的发布详情,单击可以手动刷新发布单详情。 图2 原子插件的发布详情 表1 原子插件发布单信息 插件类型 发布单信息 滚动升级 发布单展示升级的工作负载信息、工作负载对应的实例信息以及关键事件信息。 工作负载信息 负载名称、类型、命名空间及创建时间。 实例信息 实例名称、实例运行状态、Pod IP、Host IP (Pod所在节点的IP)、实例创建的时间。 关键事件 查看Pod的关键事件信息,可用于辅助Pod问题定位,包括Kubernetes组件名、事件类型、K8s事件、首次发生时间、最近发生时间。 灰度起负载 发布单展示升级的工作负载信息、工作负载对应的实例信息以及关键事件信息,单击卡片可以切换新旧负载,查看对应负载信息。 工作负载信息 旧负载名称、新负载名称、负载类型及命名空间。 实例信息 实例名称、实例运行状态、Pod IP、Host IP (Pod所在节点的IP)、实例创建的时间。 关键事件 查看Pod的关键事件信息,可用于辅助Pod问题定位,包括Kubernetes组件名、事件类型、K8s事件、首次发生时间、最近发生时间。 灰度引流 发布单展示服务名称、旧版本号、新版本号和命名空间。 灰度下线 发布单展示负载名称、负载类型和命名空间。 人工卡点 发布单展示卡点时长、操作时间、卡点说明、卡点状态等信息。 父主题: 发布管理(CodeArts Release)使用指南
-
通过云原生发布插件进行发布 配置流水线。 在流水线阶段新建任务, 添加“云原生发布”插件,参数说明如表1。 云原生发布提供环境级别的服务发布能力,支持在CCE集群对环境进行自定义编排发布(如:滚动发布和灰度发布)。 图1 配置云原生发布插件 表1 参数说明 参数项 说明 名称 插件的名称。支持输入中文、大小写英文字母、数字、“-”、“_”、“,”、“;”、“:”、“.”、“/”、“(”、“)”、“(”、“)”、空格,长度不超过128个字符。 环境级别 任务发布的环境类别,对发布管理的环境类型,目前支持开发环境、测试环境、预发环境和生产环境。 环境 需要发布的环境,详见新建发布管理环境。 产物地址 部署发布时使用的镜像地址,如:swr.example.com/demo/springboot-helloworld:v1.1,可以通过“${}”引用流水线参数,如:swr.example.com/demo/springboot-helloworld:${version}。 说明: 推荐使用 SWR容器镜像 服务,可通过编译构建制作镜像并推送到SWR仓库。 配置完成后,运行流水线,可实时查看运行进展。 单击云原生发布插件任务,可查看任务运行情况,包括任务日志和任务结果。 图2 查看云原生发布插件运行结果 任务日志:查看实时日志信息和运行状态。 任务结果:查看任务基本信息,包括工单名称、工单ID、触发人等。 单击工单ID或“查看详情”可进入发布管理工单详情页面,工单详情页介绍请参见查看发布管理发布结果。
-
配置流水线定时执行 配置流水线在指定的时间自动执行。 访问CodeArts Pipeline首页。 在流水线列表页搜索目标流水线,单击操作列,选择“编辑”。 进入流水线“任务编排”页面,切换至“执行计划”页面。 单击“定时任务”区域的“创建定时任务”,增加一个定时任务,打开“启用定时执行”开关(默认开启),配置如下信息: 图4 配置定时任务 表1 定时任务 参数项 说明 启用定时执行 选择是否开启定时执行。 执行日 选择执行日期。 时间段 选择执行时间段和时区。 间隔时间 设置间隔时间,即每间隔多长时间触发一次。 执行方案 选择定时执行的执行方案,也可新建执行方案,新建执行方案可参考配置执行方案。 最多可以设置10个定时任务。 单击右上角,可删除定时任务;单击右上角,可复制定时任务。 配置完成后,保存流水线。
-
配置流水线并发策略 默认单条流水线最大执行并发数为5,超过并发数后新的触发忽略不执行。可以通过并发策略为单条流水线配置同时处于运行中和暂停状态的流水线最大实例个数,即并发数,更细粒度地为用户分配并发资源。 访问CodeArts Pipeline首页。 在流水线列表页搜索目标流水线,单击操作列,选择“编辑”。 进入流水线“任务编排”页面,切换至“执行计划”页面。 打开“并发策略”开关(默认关闭),设置并发数和超过并发后执行策略。 图6 配置并发策略 表3 配置并发策略 参数项 说明 并发个数 单条流水线最大执行并发数,受套餐和购买并发数限制。 超过并发后执行策略 超过并发数后可选择如下两种处理方式: 排队等待:超过并发数后新的触发排队等待执行,可进入流水线详情页查看排队记录。 单条流水线最多支持100条排队记录。 单条排队记录排队时长超过24小时后会被放弃执行。 排队记录支持手动取消排队,即放弃执行。 排队记录执行时,配置信息以入队时为准。 忽略不执行:超过并发数后新的触发忽略不执行。 配置完成后,保存流水线。
-
Webhook触发 通过Webhook触发,用户可以通过任意第三方系统触发流水线执行。 访问CodeArts Pipeline首页。 在流水线列表页搜索目标流水线,单击操作列,选择“编辑”。 进入流水线“任务编排”页面,切换至“执行计划”页面。 打开“Webhook”开关(默认关闭),参数说明如表2,保存流水线后即可生效。 图5 配置Webhook触发 表2 配置Webhook触发 参数项 说明 Webhook触发源 将该地址复制到第三方系统触发器,使用Post方法调用,即可运行流水线。 IAM认证 启用IAM认证,需要将用户IAM Token加入接口请求头,调用示例如下: curl --header "Content-Type: application/json" --header 'x-auth-token: XXXX(IAM Token)' --request POST --data "{}" Webhook触发源 不启用IAM认证,调用示例如下: curl --header "Content-Type: application/json" --request POST --data "{}" Webhook触发源
共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