华为云用户手册
-
XGPU服务使用示例 影响XGPU服务的环境变量如下表所示,您可以在创建容器时指定环境变量的值。容器引擎可以通过XGPU服务获得算力和显存。 表1 影响XGPU服务的环境变量 环境变量名称 取值类型 说明 示例 GPU_IDX Integer 指定容器可使用的GPU显卡。 为容器分第一张显卡: GPU_IDX=0 GPU_CONTAINER_MEM Integer 设置容器内可使用的显存大小,单位 MiB。 为容器分配的显存大小为5120MiB: GPU_CONTAINER_MEM=5120 GPU_CONTAINER_QUOTA_PERCENT Integer 指定显卡算力分配百分比。 算力支持最小1%粒度的划分,推荐最小算力不低于4%。 为容器分配50%的算力比例: GPU_CONTAINER_QUOTA_PERCEN=50 GPU_POLICY Integer 指定GPU使用的算力隔离的策略。 0:不隔离算力,即原生调度。 1:固定算力调度。 2:平均调度。 3:抢占调度。 4:权重抢占调度。 5:混合调度。 6:权重弱调度。 算力隔离策略示例详见XGPU算力调度示例。 设置算力隔离策略为固定算力调度:GPU_POLICY=1 GPU_CONTAINER_PRIORITY Integer 指定容器的优先级。 0:低优先级 1:高优先级 创建高优先级容器: GPU_CONTAINER_PRIORITY=1 以nvidia的docker创建两个容器为例,介绍XGPU服务的使用方法,数据规划如下。 表2 数据规划 参数 容器1 容器2 说明 GPU_IDX 0 0 指定两个容器使用第一张显卡。 GPU_CONTAINER_QUOTA_PERCENT 50 30 为容器1分配50%算力,为容器2分配30%算力。 GPU_CONTAINER_MEM 5120 1024 为容器1分配5120MiB显存,为容器2分配1024MiB显存。 GPU_POLICY 1 1 设置第一张显卡使用固定算力调度策略。 GPU_CONTAINER_PRIORITY 1 0 指定容器1为高优先级容器,容器2为低优先级容器。 配置示例: docker run --rm -it --runtime=nvidia -e GPU_CONTAINER_QUOTA_PERCENT=50 -e GPU_CONTAINER_MEM=5120 -e GPU_IDX=0 -e GPU_POLICY=1 -e GPU_CONTAINER_PRIORITY=1 --shm-size 16g -v /mnt/:/mnt nvcr.io/nvidia/tensorrt:19.07-py3 bash docker run --rm -it --runtime=nvidia -e GPU_CONTAINER_QUOTA_PERCENT=30 -e GPU_CONTAINER_MEM=1024 -e GPU_IDX=0 -e GPU_POLICY=1 -e GPU_CONTAINER_PRIORITY=0 --shm-size 16g -v /mnt/:/mnt nvcr.io/nvidia/tensorrt:19.07-py3 bash
-
操作步骤 本例以优化/data/apps/mysql-8.0.28/bin目录下的mysqld应用 ,为您介绍动态加速方式优化应用的操作。 生成插桩版应用并运行。 执行命令/data/hce-wae/dbo/gen_instrumentation /data/apps/mysql-8.0.28/bin/mysqld生成插桩版应用。 命令格式:/data/hce-wae/dbo/gen_instrumentation 应用路径 图3 /data/hce-wae/dbo/gen_instrumentation命令执行示例 命令运行完成后,会在当前目录生成对应的以.inst为后缀的插桩文件mysqld.inst。 图4 查询以.inst为后缀的插桩文件示例 运行插桩文件获取进程PID,本例为87042。 图5 运行插桩文件获取进程PID示例 创建mysqld的应用加速动态配置文件。 每一个待优化的应用都要有一个对应的配置文件,应用加速工具根据此配置文件对应用进行动态加速。 执行如下命令复制一份默认的配置文件为/data/hce-wae/config/mysqld.conf。 [root@localhost]# cp /data/hce-wae/config/hce-wae-tmp.conf /data/hce-wae/config/mysqld.conf 设置/data/hce-wae/config/mysqld.conf配置文件中的origin-exe字段。 origin-exe为待优化应用的位置,本例为/data/apps/mysql-8.0.28/bin/mysqld [root@localhost]# vim /data/hce-wae/config/mysqld.conf 图6 origin-exe字段示例 使用配置文件和对应的进程PID配置动态加速工具。 命令格式:hce-wae --conf [PID] [/path/to/config] 图7 配置动态加速工具示例 启动动态加速,对插桩版mysql进行优化。 命令格式:hce-wae --start [PID] 图8 启动动态加速示例 启动后,可以通过--status参数查看当前优化状态。当状态为Running时,表示进程正在优化中;Finished时,表示进程已经优化完成。 命令格式:hce-wae --status [PID] 图9 查看当前优化状态示例 优化后,通过--snapshot参数生成优化后的.dbo二进制快照文件,本例为mysqld.dbo。 图10 生成优化后的.dbo二进制快照文件示例 快照生成的默认路径为/data/hce-wae/snapshot/,可在配置文件中对快照位置进行修改。后续您可以直接使用此优化后的快照文件mysqld.dbo运行应用,无需重复优化。 终止动态加速工具,应用优化结束。 命令格式:hce-wae --stop [PID] 图11 终止动态加速工具示例
-
准备工作 在做动态加速之前,请先做如下两个检查。两个条件都满足,才能对应用进行动态加速。 执行如下命令检查待优化的二进制文件中是否可以重新定位。可以重新定位表示可以进行应用优化。 其中“application”可替换为待检查的二进制文件。 readelf -a application | grep .rela.text 图1 readelf命令执行示例 如果二进制文件中.rela.text段存在,表示可以重新定位。 如果不存在,为了允许BOLT在程序中重新排列函数,需要将选项--emit-relocs或-q添加到构建二进制文件的命令中。 执行hce-wae --check /data/apps/mysql-8.0.28/bin/mysqld命令查看应用是否支持动态加速。 如果检查结果为3,表示可以使用动态加速工具。否则不支持动态加速。 图2 检查结果为3示例
-
使用概述 您可通过下列方法使用Huawei Cloud EulerOS。 首次创建弹性云服务器实例时,推荐使用HCE公共镜像。 将操作系统切换为HCE。 如果现有的弹性 云服务器配置 (网卡、磁盘、VPN等配置的类型和数量)都不需要改变,仅需要修改弹性云服务器的操作系统镜像,并且您的软件和原操作系统耦合度较低,适配到HCE改动较小,建议使用系统切换,可快速切换到HCE。 将操作系统迁移为HCE。 如果现有的弹性云服务器配置(网卡、磁盘、VPN等配置的类型和数量)都不需要改变,操作系统软件的配置参数希望保留,可以通过操作系统迁移的方式迁移到HCE。 仅支持迁移至Huawei Cloud EulerOS 2.0标准版和Huawei Cloud EulerOS 1.1CentOS兼容版,不支持迁移至其他HCE镜像版本。 表1 系统切换和迁移的区别 区别 系统切换 系统迁移 数据备份 切换操作系统会清除系统盘数据,包括系统盘上的系统分区和所有其它分区。 切换操作系统不影响数据盘数据。 迁移操作系统不会清除系统盘数据,为避免系统软件的数据丢失,建议将其备份。 迁移操作系统不影响数据盘数据。 个性化设置 切换操作系统后,当前操作系统内的个性化设置(如DNS、主机名等)将被重置,需重新配置。 迁移操作系统后,当前操作系统内的个性化设置(如DNS、主机名等)不需重新配置。
-
约束与限制 仅HCE 2.0 x86架构支持使用tbwmcli命令。 仅允许root用户执行tbwmcli命令。 tbwmcli命令同一时间只能在一个网卡使能Qos功能,多个网卡不支持并行使能网络QoS。 网卡被插拔重新恢复后,原来设置的QoS规则会丢失,需要手动重新配置网络QoS功能。 不支持cgroup v2。 升级oncn-tbwm软件包不会影响升级前的使能状态。卸载oncn-tbwm软件包会关闭对所有设备的使能。 仅支持识别数字、英文字母、中划线“-” 和下划线“_”四类字符类型的网卡名,其他字符类型的网卡不被识别。 实际使用过程中,带宽限速有可能造成协议栈内存积压,此时依赖传输层协议自行反压,对于udp等无反压机制的协议场景,可能出现丢包、ENOBUFS、限流不准等问题。 收包方向的网络限速依赖于TCP的反压能力,在非TCP协议的场景中,网络包已经收至目标网卡,不支持对于收包方向的网络限速。 不支持tbwmcli、tc命令和网卡命令混用,只能单独使用tbwmcli工具进行限速。例如,某个网卡上已经设置过tc qdisc规则的情况下,对此网卡使能网络QoS功能可能会失败。
-
osmt-agent服务自动更新 osmt-agent服务支持周期性检查是否有待更新的RPM包,并自动更新RPM包。检查的周期和执行更新的时间段可以自定义设置。 执行以下命令,确保osmt.conf文件auto_upgrade字段为True。 osmt config -k auto_upgrade -v True 执行systemctl status osmt-agent.service命令确认osmt-agent服务是否正常开启。 Active为active (running)状态,表示osmt-agent正常开启。 如果osmt-agent没有处于active (running)状态,请执行systemctl start osmt-agent.service命令启动osmt-agent。 图1 确认osmt-agent服务是否正常开启 执行如下命令设置自动更新RPM包的时间段与升级周期。 指定可自动升级的时间段。 命令格式:osmt config -k auto_upgrade_window -v "auto_upgrade_window" auto_upgrade_window:配置后台osmt-agent服务自动升级的时间窗,格式为"HH:MM-HH:MM",表示升级的开始时间和截止时间。 如果截止时间小于开始时间,则表示本次升级时间段跨越自然日。如“22:00-05:00”表示升级时间段为当日22:00到次日凌晨5:00。 例如,配置当日23:00到次日01:00时间段为可升级时间窗: osmt config -k auto_upgrade_window -v "23:00-01:00" 指定检查升级的时间间隔。 命令格式:osmt config -k auto_upgrade_interval -v auto_upgrade_interval auto_upgrade_interval:指定两次自动升级之间的最小间隔(单位:天)。 例如,配置每隔1天进行自动升级的命令为: osmt config -k auto_upgrade_interval -v 1 父主题: 更新RPM包
-
升级概述 HCE提供操作系统和RPM包的更新维护,包括部署在HCE上的RPM包、安全更新涉及的RPM包和漏洞修复。为了操作系统和RPM包的使用更加安全,请及时升级。 HCE支持使用dnf/yum命令和OSMT工具两种升级方式。 Linux自身支持dnf/yum命令,可对RPM包进行升级和回退,升级操作简单。 OSMT是华为云提供的对HCE系统及RPM包升级和回退的工具,可自定义升级范围和定时检查、延迟重启。 两种升级方式区别如下: 表1 升级方式区别 项目 使用dnf或yum命令升级 使用OSMT工具升级 RPM包升级 支持无差别升级所有待更新的RPM包,包括安全更新涉及的RPM包和漏洞修复。 支持仅升级安全更新涉及的RPM包。 支持无差别升级所有待更新的RPM包,包括安全更新涉及的RPM包和漏洞修复。 支持自定义升级范围: 升级不需要重启的RPM包。 升级需要重启的RPM包。 升级自定义黑白名或白名单列表中的RPM包。 升级安全更新涉及的RPM包。 漏洞修复。 升级新增功能的RPM包。 更新新增的RPM包。 支持自定义时间自动更新RPM包、延迟重启。 系统版本升级 不支持系统版本升级。 支持系统版本升级。 支持升级的版本 支持HCE 1.1从低版本向高版本的升级。 支持HCE 2.0从低版本向高版本的升级。 回退 支持回退所有历史操作。 系统或RPM包仅支持最近一次升级的回退。 父主题: 更新HCE系统和RPM包
-
概述 OSMT是华为云提供的对HCE版本及RPM包升级和回退的工具。OSMT可自定义配置RPM包的升级范围,并支持周期性定时升级、在指定的时间段单次升级、延时升级并重启等功能。 版本升级和回退:介绍对整体HCE系统的升级及回退操作。 更新RPM包:介绍仅对RPM包的升级和回退操作。 OSMT仅支持针对HCE 2.0及以上的版本进行升级和回退。该工具会周期访问repo源以获取软件更新信息,从而产生网络流量。您可通过systemctl stop osmt-agent命令停止该服务,并通过systemctl disable osmt-agent命令禁用该服务自启动。 父主题: 使用OSMT工具升级
-
工具概述 x2hce-ca是华为云对系统迁移提供的一款免费的应用兼容性评估工具。x2hce-ca通过对待迁移应用进行快速扫描分析,帮助您评估应用在源操作系统和目标操作系统的兼容性。 表1 支持兼容性评估的x86公共镜像 OS发行系列 源操作系统 目标操作系统 HCE 64bit:Huawei Cloud EulerOS:1.1 HCE 2.0 标准版 64位 EulerOS 64bit:EulerOS:2.10/2.9/2.5/2.3/2.2 HCE 2.0 标准版 64位 CentOS 64bit:CentOS 7:7.9/7.8/7.7/7.6/7.5/7.4/7.3/7.2/7.1/7.0 64bit:CentOS 8:8.3/8.2/8.1/8.0 HCE 2.0 标准版 64位 64bit:CentOS 7:7.9/7.6 Huawei Cloud EulerOS 1.1 CentOS兼容版 表2 支持兼容性评估的Arm公共镜像 OS发行系列 源操作系统 目标操作系统 EulerOS 64bit:EulerOS:2.10/2.9/2.8 HCE 2.0 标准版 64位 Arm版 父主题: x2hce-ca应用兼容性评估
-
冲突包列表 冲突包列表表示在原系统中存在与HCE系统冲突的软件包,会影响升级过程。 冲突包会在升级过程中自动卸载并且不会再安装上,升级前请评估原系统依赖的软件包是否在此冲突列表内,以免造成升级完成后软件缺失。 如果发现升级后软件包丢失,可以通过yum命令安装新版本软件包。 如果升级过程中遇到其他冲突问题,可以修改/etc/centos2hce2.conf配置文件,参考本章节冲突包列表增加自定义的冲突包名称。 表1 CentOS 8系列冲突包列表 CentOS版本 冲突包列表 CentOS8.0 rust-doc;intel-gpu-tools;netcf-libs;redhat-rpm-config;asciidoc;gnuplot-common;perf;tigervnc-icons;libpq-devel;paratype-pt-sans-caption-fonts;scala-apidoc;java-11-openjdk-devel;java-11-openjdk-headless;java-1.8.0-openjdk-headless;dovecot;systemd-journal-remote;pcp-manager;pcp-webapi;libguestfs-java-devel;libguestfs-javadoc;icedtea-web-javadoc;systemtap-runtime-java;java-1.8.0-openjdk-accessibility;java-1.8.0-openjdk-demo;ant;tigervnc-server-applet;java-atk-wrapper;java-11-openjdk;guava20;javapackages-tools;jboss-jaxrs-2.0-api;maven-shared-utils;tagsoup;cdi-api;libbase;geronimo-annotation;pentaho-reporting-flow-engine;maven-resolver-api;apache-commons-codec;maven-lib;jansi-native;maven-wagon-provider-api;libguestfs-java;apache-commons-cli;istack-commons-tools;jline;plexus-cipher;istack-commons-runtime;jcl-over-slf4j;apache-commons-io;maven-resolver-spi;maven-wagon-file;httpcomponents-core;icedtea-web;glassfish-el-api;aopalliance;hawtjni-runtime;plexus-containers-component-annotations;flute;jboss-annotations-1.2-api;liblayout;java-1.8.0-openjdk;postgresql-jdbc;mariadb-java-client;plexus-sec-dispatcher;google-guice;libformula;jdeparser;ant-lib;maven-wagon-http-shared;jboss-logging;plexus-classworlds;slf4j;librepository;ongres-scram-client;sisu-plexus;libfonts;plexus-interpolation;java-1.8.0-openjdk-src;plexus-utils;scala-swing;maven-wagon-http;ongres-scram;maven-resolver-impl;libloader;httpcomponents-client;atinject;apache-commons-logging;maven-resolver-connector-basic;jansi;jsoup;maven-resolver-util;jboss-interceptors-1.2-api;libreoffice-ure;byteman;sac;apache-commons-lang3;libserializer;scala;maven-resolver-transport-wagon;jboss-logging-tools;sisu-inject;libreoffice-core;java-1.8.0-openjdk-devel CentOS8.1 kernel-rpm-macros;intel-gpu-tools;netcf-libs;redhat-rpm-config;asciidoc;gnuplot-common;perf;tigervnc-icons;libpq-devel;paratype-pt-sans-caption-fonts;java-1.8.0-openjdk-headless;java-11-openjdk-headless;java-11-openjdk-devel;pcp-pmda-rpm;pcp-pmda-podman;scala-apidoc;libguestfs-java-devel;libguestfs-javadoc;icedtea-web-javadoc;systemtap-runtime-java;java-1.8.0-openjdk-accessibility;java-1.8.0-openjdk-demo;ant;tigervnc-server-applet;java-atk-wrapper;java-11-openjdk;jansi-native;hawtjni-runtime;ongres-scram;jboss-annotations-1.2-api;liblayout;atinject;plexus-utils;istack-commons-tools;jline;apache-commons-io;ongres-scram-client;maven-shared-utils;maven-resolver-impl;libfonts;jsoup;apache-commons-codec;glassfish-el-api;jdeparser;maven-resolver-util;scala-swing;tagsoup;google-guice;istack-commons-runtime;jcl-over-slf4j;pentaho-reporting-flow-engine;maven-resolver-api;maven-resolver-connector-basic;libloader;slf4j;apache-commons-cli;maven-wagon-provider-api;maven-resolver-transport-wagon;byteman;httpcomponents-client;jna;java-1.8.0-openjdk-devel;maven-lib;libreoffice-core;java-1.8.0-openjdk-src;javapackages-tools;plexus-cipher;cdi-api;jboss-logging;sisu-inject;httpcomponents-core;guava20;sac;libbase;jboss-jaxrs-2.0-api;java-1.8.0-openjdk;libserializer;plexus-containers-component-annotations;jboss-interceptors-1.2-api;jboss-logging-tools;libguestfs-java;ant-lib;libreoffice-ure;maven-resolver-spi;maven-wagon-file;jansi;maven-wagon-http-shared;apache-commons-lang3;postgresql-jdbc;mariadb-java-client;plexus-sec-dispatcher;sisu-plexus;scala;plexus-classworlds;flute;maven-wagon-http;icedtea-web;libformula;plexus-interpolation;aopalliance;geronimo-annotation;librepository;apache-commons-logging CentOS8.2 python-psycopg2-doc;exiv2;llvm-googletest;adwaita-qt;llvm-static;rust-doc;intel-gpu-tools;netcf-libs;flatpak-session-helper;asciidoc;perf;tigervnc-icons;paratype-pt-sans-caption-fonts;java-1.8.0-openjdk-headless;java-11-openjdk-devel;java-11-openjdk-headless;scala-apidoc;libguestfs-java-devel;libguestfs-javadoc;icedtea-web-javadoc;systemtap-runtime-java;java-1.8.0-openjdk-accessibility;java-1.8.0-openjdk-demo;ant;tigervnc-server-applet;java-atk-wrapper;java-11-openjdk;jboss-annotations-1.2-api;cdi-api;ongres-scram;maven-resolver-util;apache-commons-codec;istack-commons-tools;icedtea-web;plexus-classworlds;plexus-utils;maven-wagon-http-shared;atinject;javapackages-tools;istack-commons-runtime;jline;geronimo-annotation;jansi;jdeparser;byteman;liblayout;maven-resolver-transport-wagon;jmc-core;ant-lib;libreoffice-core;jansi-native;jcl-over-slf4j;slf4j;ee4j-parent;libfonts;maven-wagon-http;jboss-logging;jboss-interceptors-1.2-api;tagsoup;httpcomponents-client;plexus-containers-component-annotations;apache-commons-lang3;jaf;java-1.8.0-openjdk-src;jsoup;guava20;flute;apache-commons-cli;libbase;ongres-scram-client;jboss-logging-tools;plexus-interpolation;libloader;librepository;libreoffice-ure;scala-swing;jboss-jaxrs-2.0-api;maven-resolver-spi;maven-lib;apache-commons-io;hawtjni-runtime;google-guice;aopalliance;libguestfs-java;postgresql-jdbc;jna;glassfish-el-api;maven-resolver-impl;java-1.8.0-openjdk;directory-maven-plugin;mariadb-java-client;httpcomponents-core;maven-wagon-file;maven-wagon-provider-api;owasp-java-encoder;libserializer;maven-shared-utils;plexus-cipher;java-1.8.0-openjdk-devel;plexus-sec-dispatcher;pentaho-reporting-flow-engine;maven-resolver-api;sac;scala;libformula;sisu-inject;apache-commons-logging;maven-resolver-connector-basic;sisu-plexus CentOS8.3 netcf-libs;rust-doc;git-credential-libsecret;texlive-context;intel-gpu-tools;flatpak-session-helper;asciidoc;perf;tigervnc-icons;paratype-pt-sans-caption-fonts;java-1.8.0-openjdk-headless;java-11-openjdk-devel;java-11-openjdk-headless;libguestfs-java-devel;libguestfs-javadoc;icedtea-web-javadoc;systemtap-runtime-java;java-1.8.0-openjdk-accessibility;java-1.8.0-openjdk-demo;ant;tigervnc-server-applet;java-atk-wrapper;java-11-openjdk;exiv2;llvm-googletest;adwaita-qt;llvm-static;python-psycopg2-doc;scala-apidoc;libXau;libappstream-glib;jmc-core;byteman;libfonts;jaf;jcl-over-slf4j;mariadb-java-client;tagsoup;libguestfs-java;jsoup;apache-commons-cli;sisu-inject;jansi-native;jna;apache-commons-lang3;flute;librepository;javapackages-tools;cdi-api;ongres-scram;java-1.8.0-openjdk-devel;sisu-plexus;istack-commons-runtime;jboss-logging;guava20;java-1.8.0-openjdk-src;maven-resolver-util;geronimo-annotation;hawtjni-runtime;jboss-annotations-1.2-api;ongres-scram-client;maven-resolver-connector-basic;slf4j;sac;apache-commons-codec;atinject;maven-wagon-http;libreoffice-ure;plexus-cipher;jboss-interceptors-1.2-api;jline;pentaho-reporting-flow-engine;httpcomponents-core;liblayout;istack-commons-tools;jdeparser;maven-wagon-provider-api;ee4j-parent;apache-commons-io;maven-resolver-spi;jboss-logging-tools;plexus-sec-dispatcher;plexus-containers-component-annotations;jboss-jaxrs-2.0-api;scala;libbase;libreoffice-core;httpcomponents-client;directory-maven-plugin;java-1.8.0-openjdk;libformula;maven-wagon-file;maven-shared-utils;aopalliance;glassfish-el-api;owasp-java-encoder;postgresql-jdbc;libloader;google-guice;plexus-classworlds;ant-lib;maven-resolver-api;plexus-interpolation;java-1.8.0-openjdk-slowdebug;maven-resolver-impl;java-1.8.0-openjdk-headless-slowdebug;prometheus-jmx-exporter;maven-resolver-transport-wagon;jolokia-jvm-agent;maven-wagon-http-shared;maven-lib;jansi;HdrHistogram;apache-commons-logging;plexus-utils;icedtea-web;libserializer;scala-swing CentOS8.4 python-psycopg2-doc;anaconda-install-env-deps;hwloc-gui;python3-lit;exiv2;cups-filters;cups-filters-libs;gutenprint;adwaita-qt;cups;cups-lpd;hplip-common;hwloc-libs;gutenprint-doc;gutenprint-libs;gutenprint-libs-ui;hwloc;foomatic-db-ppds;foomatic-db;python39-pip;python39-setuptools;python39-numpy;python39-chardet;python39-psutil;python39-urllib3;python39-requests;python39-wheel;libasan6;paratype-pt-sans-caption-fonts;python39-six;python39-idna;python39-ply;python39-pyyaml;python39-pycparser;python39-lxml;python39-pysocks;rust-doc;netcf-libs;git-credential-libsecret;texlive-context;flatpak-session-helper;asciidoc;intel-gpu-tools;tigervnc-icons;jmc-core;byteman;libfonts;jaf;jcl-over-slf4j;mariadb-java-client;tagsoup;libguestfs-java;jsoup;apache-commons-cli;sisu-inject;jansi-native;jna;apache-commons-lang3;flute;librepository;javapackages-tools;cdi-api;ongres-scram;java-1.8.0-openjdk-devel;sisu-plexus;istack-commons-runtime;jboss-logging;guava20;java-1.8.0-openjdk-src;maven-resolver-util;geronimo-annotation;hawtjni-runtime;jboss-annotations-1.2-api;ongres-scram-client;maven-resolver-connector-basic;slf4j;sac;apache-commons-codec;atinject;maven-wagon-http;libreoffice-ure;plexus-cipher;jboss-interceptors-1.2-api;jline;pentaho-reporting-flow-engine;httpcomponents-core;liblayout;istack-commons-tools;jdeparser;maven-wagon-provider-api;ee4j-parent;apache-commons-io;maven-resolver-spi;jboss-logging-tools;plexus-sec-dispatcher;plexus-containers-component-annotations;jboss-jaxrs-2.0-api;scala;libbase;libreoffice-core;httpcomponents-client;directory-maven-plugin;java-1.8.0-openjdk;libformula;maven-wagon-file;maven-shared-utils;aopalliance;glassfish-el-api;owasp-java-encoder;postgresql-jdbc;libloader;google-guice;plexus-classworlds;ant-lib;maven-resolver-api;plexus-interpolation;java-1.8.0-openjdk-slowdebug;maven-resolver-impl;java-1.8.0-openjdk-headless-slowdebug;prometheus-jmx-exporter;maven-resolver-transport-wagon;jolokia-jvm-agent;maven-wagon-http-shared;maven-lib;jansi;HdrHistogram;apache-commons-logging;plexus-utils;icedtea-web;libserializer;scala-swing;java-1.8.0-openjdk-headless;java-11-openjdk-devel;java-11-openjdk-headless;libguestfs-java-devel;libguestfs-javadoc;icedtea-web-javadoc;systemtap-runtime-java;java-1.8.0-openjdk-accessibility;java-1.8.0-openjdk-demo;ant;java-atk-wrapper;java-11-openjdk;scala-apidoc;libappstream-glib;PackageKit-gtk3-module;gnome-software;flatpak-libs;PackageKit-glib;PackageKit-gstreamer-plugin;libpq-devel;poppler;perf CentOS8.5 bluez;python-psycopg2-doc;perl-Devel-Peek;OpenIPMI-libs;anaconda-install-env-deps;postfix-mysql;perl-Devel-SelfStubber;metacity;bluez-libs;libicu;vte-profile;qt5-qttools-examples;exiv2;cups-filters;cups-filters-libs;gutenprint;gnome-session;cups;cups-lpd;hplip-common;hwloc;gnome-session-wayland-session;gutenprint-doc;gutenprint-libs;gutenprint-libs-ui;gnome-session-xsession;foomatic-db-ppds;foomatic-db;gnome-classic-session;gnome-shell-extension-apps-menu;gnome-shell-extension-auto-move-windows;gnome-shell-extension-drive-menu;gnome-shell-extension-launch-new-instance;gnome-shell-extension-native-window-placement;gnome-shell-extension-places-menu;gnome-shell-extension-screenshot-window-sizer;gnome-shell-extension-user-theme;gnome-shell-extension-window-list;gnome-shell-extension-windowsNavigator;gnome-shell-extension-workspace-indicator;python39-six;python39-idna;python39-ply;python39-pyyaml;python39-pycparser;python39-psutil;python39-urllib3;python39-lxml;python39-pysocks;xorg-x11-server-Xwayland;compat-hwloc1;bluez-obexd;bluez-hid2hci;netcf-libs;git-credential-libsecret;texlive-context;flatpak-session-helper;asciidoc;intel-gpu-tools;tigervnc-icons;libasan6;paratype-pt-sans-caption-fonts;pcp-pmda-podman;jmc-core;byteman;libfonts;jaf;jcl-over-slf4j;mariadb-java-client;tagsoup;libguestfs-java;jsoup;apache-commons-cli;sisu-inject;jansi-native;jna;apache-commons-lang3;flute;librepository;javapackages-tools;cdi-api;ongres-scram;java-1.8.0-openjdk-devel;sisu-plexus;istack-commons-runtime;jboss-logging;guava20;java-1.8.0-openjdk-src;maven-resolver-util;geronimo-annotation;hawtjni-runtime;jboss-annotations-1.2-api;ongres-scram-client;maven-resolver-connector-basic;slf4j;sac;apache-commons-codec;atinject;maven-wagon-http;libreoffice-ure;plexus-cipher;jboss-interceptors-1.2-api;jline;pentaho-reporting-flow-engine;httpcomponents-core;liblayout;istack-commons-tools;jdeparser;maven-wagon-provider-api;ee4j-parent;apache-commons-io;maven-resolver-spi;jboss-logging-tools;plexus-sec-dispatcher;plexus-containers-component-annotations;jboss-jaxrs-2.0-api;scala;libbase;libreoffice-core;httpcomponents-client;directory-maven-plugin;java-1.8.0-openjdk;libformula;maven-wagon-file;maven-shared-utils;aopalliance;glassfish-el-api;owasp-java-encoder;postgresql-jdbc;libloader;google-guice;plexus-classworlds;ant-lib;maven-resolver-api;plexus-interpolation;java-1.8.0-openjdk-slowdebug;maven-resolver-impl;java-1.8.0-openjdk-headless-slowdebug;prometheus-jmx-exporter;maven-resolver-transport-wagon;jolokia-jvm-agent;maven-wagon-http-shared;maven-lib;jansi;HdrHistogram;apache-commons-logging;plexus-utils;icedtea-web;libserializer;scala-swing;java-1.8.0-openjdk-headless;java-11-openjdk-devel;java-11-openjdk-headless;libguestfs-java-devel;libguestfs-javadoc;icedtea-web-javadoc;systemtap-runtime-java;java-1.8.0-openjdk-accessibility;java-1.8.0-openjdk-demo;ant;java-atk-wrapper;java-11-openjdk;scala-apidoc;libappstream-glib;PackageKit-gtk3-module;gnome-software;flatpak-libs;PackageKit-glib;PackageKit-gstreamer-plugin;coreos-installer-bootinfra;OpenIPMI;rust;cargo;perf;flatpak;hplip-libs;nautilus;gutenprint-cups;libgtop2;PackageKit;libsane-hpaio;PackageKit-command-not-found;xorg-x11-drv-wacom-serial-support;clutter;clutter-gtk;clutter-gst3;cheese-libs;cheese;gnome-initial-setup;gnome-control-center;clutter-gst2 表2 CentOS 7系列冲突包列表 CentOS版本 冲突包列表 CentOS7.0 texlive-kpathsea-lib;libdhash;libref_array;libbasicobjects;qemu-kvm-tools;texlive-dvipdfm-bin;texlive-dvipdfm;tomcat-servlet-3.0-api;gnuplot-common;postgresql-devel;tigervnc-icons;squid;perf;dovecot;dovecot-mysql;dovecot-pgsql;dovecot-pigeonhole;lvm2-cluster CentOS7.1 texlive-kpathsea-lib;libdhash;libref_array;qemu-kvm-tools;texlive-dvipdfm-bin;tomcat-servlet-3.0-api;gnuplot-common;squid;tigervnc-icons;postgresql-devel;perf;dovecot;dovecot-mysql;dovecot-pgsql;dovecot-pigeonhole;lvm2-cluster;texlive-dvipdfm;libcacard CentOS7.2 texlive-kpathsea-lib;libdhash;qemu-kvm-tools;rdma-ndd;texlive-dvipdfm;texlive-dvipdfm-bin;dstat;tomcat-servlet-3.0-api;gnuplot-common;perf;squid;tigervnc-icons;tigervnc-icons;postgresql-devel;dovecot;dovecot-pgsql;dovecot-pigeonhole;lvm2-cluster;ipa-server-trust-ad CentOS7.3 spice-glib;texlive-kpathsea-lib;libdhash;qemu-kvm-tools;rdma-ndd;texlive-dvipdfm;texlive-dvipdfm-bin;dstat;tomcat-servlet-3.0-api;gnuplot-common;perf;squid;tigervnc-icons;postgresql-devel;dovecot;dovecot-mysql;dovecot-pgsql;dovecot-pigeonhole;lvm2-cluster;pcp-pmda-kvm;pcp-pmda-rpm;spice-gtk3;vinagre;ipa-server;ipa-server-trust-ad CentOS7.4 spice-glib;texlive-kpathsea-lib;libdhash;qemu-kvm-tools;texlive-dvipdfm-bin;texlive-dvipdfm;dstat;tomcat-servlet-3.0-api;gnuplot-common;perf;squid;tigervnc-icons;postgresql-devel;lvm2-cluster;spice-gtk3;vinagre CentOS7.5 spice-glib;texlive-kpathsea-lib;qemu-kvm-tools;texlive-dvipdfm-bin;texlive-dvipdfm;dstat;tomcat-servlet-3.0-api;gnuplot-common;perf;squid;tigervnc-icons;postgresql-devel;lvm2-cluster;spice-gtk3;vinagre CentOS7.6 shim-x64;spice-glib;adwaita-gtk2-theme;texlive-kpathsea-lib;qemu-kvm-tools;texlive-dvipdfm-bin;texlive-dvipdfm;dstat;tomcat-servlet-3.0-api;gnuplot-common;cockpit-ws;perf;squid;tigervnc-icons;postgresql-devel;java-11-openjdk-headless;lvm2-cluster;spice-gtk3;vinagre CentOS7.7 shim-x64;spice-glib;openmpi;adwaita-gtk2-theme;exiv2;texlive-kpathsea-lib;qemu-kvm-tools;texlive-dvipdfm-bin;texlive-dvipdfm;dstat;tomcat-servlet-3.0-api;cockpit-ws;gnuplot-common;perf;squid;tigervnc-icons;postgresql-devel;java-11-openjdk-headless;lvm2-cluster;spice-gtk3;openmpi-devel;vinagre CentOS7.8 shim-x64;spice-glib;openmpi;adwaita-gtk2-theme;exiv2;texlive-kpathsea-lib;qemu-kvm-tools;texlive-dvipdfm-bin;texlive-dvipdfm;dstat;tomcat-servlet-3.0-api;cockpit-ws;gnuplot-common;perf;squid;tigervnc-icons;postgresql-devel;java-11-openjdk-headless;lvm2-cluster;spice-gtk3;openmpi-devel;vinagre CentOS7.9 spice-glib;openmpi;adwaita-gtk2-theme;exiv2;gnuplot-common;texlive-kpathsea-lib;perf;qemu-kvm-tools;texlive-dvipdfm-bin;texlive-dvipdfm;dstat;tomcat-servlet-3.0-api;cockpit-ws;squid;tigervnc-icons;postgresql-devel;java-11-openjdk-headless;lvm2-cluster;spice-gtk3;openmpi-devel 表3 HCE冲突包列表 HCE 冲突包列表 HCE 1.1 spice-glib;openmpi;exiv2;sg3_utils;spice-gtk3;openmpi-devel;kernel-hcek;tomcat-servlet-3.0-api;kernel-hcek-devel;dstat;gnuplot-common;cockpit-ws;perf;squid;postgresql-devel;java-11-openjdk-headless;lvm2-cluster;fcoe-utils;libblockdev;udisks2;python-blivet;device-mapper-multipath;device-mapper-multipath-libs;libblockdev-crypto;libblockdev-fs;libblockdev-loop;libblockdev-mdraid;libblockdev-nvdimm;libblockdev-part;libblockdev-swap;libblockdev-utils;NetworkManager-team;NetworkManager-bluetooth;NetworkManager-wifi;libstorage-uio-static;kiwi-dlimage 表4 EulerOS冲突包列表 EulerOS 冲突包列表 EulerOS 2.9 euleros-release;euleros-latest-release;kiwi-systemdeps;python3-kiwi;NetworkManager-team;NetworkManager-bluetooth;NetworkManager-wifi;libstorage-uio-static;kiwi-dlimage;systemd-udev-compat EulerOS 2.10 euleros-release;euleros-latest-release;kiwi-systemdeps;python3-kiwi;NetworkManager-team;NetworkManager-bluetooth;NetworkManager-wifi;libstorage-uio-static;kiwi-dlimage;systemd-udev-compat 表5 特殊冲突包配置项 配置选项 冲突包列表 specific_conflict openssl110f-libs;openssl110h-libs;openssl111d-libs 特殊冲突包配置项会在执行centos2hce2.py --check all命令时进行校验,如果系统中存在上述列表的软件,迁移过程中与HCE的软件包产生冲突,迁移工具会提示先进行卸载该软件包再进行升级。 父主题: 将操作系统迁移至HCE 2.0
-
/etc/osmt/osmt.conf配置文件说明 本节对OSMT工具的配置文件osmt.conf不建议修改的配置项进行说明。 [auto] # if auto_upgrade is True, the osmt-agent will auto upgrade rpms use osmt.conf and reboot between time interval we specified # the value of cycle_time means the osmt-agent will check upgrade every cycle_time seconds, default 86400s(1 day) # When a configuration item has a line break, you need to leave a space or tab at the beginning of the line auto_upgrade = False cycle_time = 3600 minimal_interval = 3600 auto_upgrade_window = "22:00-05:00" auto_upgrade_interval = 1 [Package] # There are three rules of filters, all enabled by default. severity will be effect only when the types contain security, it is the subtype of security. # The following are the three rules: # 1. whitelist has the highest priority, if whitelist is configured then ignore other rules and filter out the whitelist packages from the full list of packages to be upgrade # 2. Filter the update range by types, when the types contain security, further filter the severity of security updates severity, only upgrade the severity level of security. # 3. Filter blacklist to remove packages in blacklist from types filter results, and packages which depend on packages in blacklist will also be removed. # filters must contain at least one types rule, if the types rule is empty, the -a option will not upgrade any packages (by default all 3 filters are enabled). filters = "types, blacklist" whitelist = "" # types include: security, bugfix, enhancement, newpackage, unknown # if types is empty, no package will be upgrade # types = security, bugfix, enhancement, newpackage, unknown types = "security" # severity is the subtype of security, include: low, moderate, important, critical severity = "important, critical" blacklist = "mysql" # 升级后需要重启系统才能生效的rpm包 need_reboot_rpms = kernel,kernel-debug,glibc,glibc-utils,dbus,dbus-python… preinstalled_only = False [backup] store_path = /var/log backup_dir = /etc,/usr,/boot,/var,/run exclude_dir = recover_service = [resource_needed] #the minimum resources required(MB) #min_req_boot_space = 100 #min_req_backup_space = 8192 #min_req_root_space = 1536 #min_req_memory = 512 [cmdline] cmdline_value = crashkernel=512M resume=/dev/mapper/hce-swap rd.lvm.lv=hce/root rd.lvm.lv=hce/swap crash_kexec_post_notifiers panic=3 nmi_watchdog=1 rd.shell=0 [conflict] #conflict_rpm = test1,test2 [strategy] timeout_action = "stop" timeout_action_before = 0 [check] daemon_whitelist=sysstat-collect.service, sysstat-summary.service, systemd-tmpfiles-clean.service # the timeout of query systemd services check_systemd_running_jobs = True query_timeout = 30 check_rpm_packages = True check_file_attr = True [chroot_config] chroot_switch = False chroot_path = "/root/sut_chroot" rpm_tar_name = "hce-upgrade_pack" sut_config_file = "/etc/sut/sut.conf" storage_dir = "/opt/migrate" web_link_tar = 表1 osmt.conf不建议修改的配置项 配置项 说明 types 按照security、 bugfix、enhancement、newpackage、unknown五个配置项指定RPM包的更新范围,不建议修改。如有特殊需要可以根据系统实际情况进行修改。 severity 升级安全更新,不建议修改。默认升级安全更新。如有特殊需要可以根据系统实际情况进行修改。 [resource_needed] 指升级或更新前进行检查的系统资源限制值,不建议修改。如有特殊需要可以根据系统实际情况进行修改。 [chroot_config] 用于配置是否进行turbo方式升级的相关配置项,仅用于管理面HCE升级,租户面不适用,请保持默认配置。 父主题: 附录
-
debug参数 以下是所属文件在/proc/sys/debug目录下的参数: 系统异常通知 当Linux内核发生Oops时,会先后进入到die流程及panic流程中,此时会调用其他模块注册到die通知链及panic通知链的回调函数,当回调函数中存在使得内核发生Oops的异常时,内核会再次进入Oops流程, 而后在Oops流程中再次调用该回调函数时,又产生Oops,这样便形成了嵌套的Oops,无法走出Oops流程,系统挂死。 为了增强系统可定位性,提高可靠性,引入系统异常通知链特性,在用户注册的 panic/die通知链中出现嵌套Oops异常时,打印错误日志并执行crash流程复位系统。
-
kernel参数 以下是所属文件在/proc/sys/kernel目录下的参数: 扫描任务 自动NUMA平衡会扫描任务的地址空间并取消页面映射,以检测页面放置是否正确,或者数据是否应迁移到靠近任务运行的内存节点。每次“扫描延迟”,任务会扫描其地址空间中的下一个“扫描大小”数量的页面。当达到地址空间的末尾时,扫描器会从头开始。 “扫描延迟”和“扫描大小”共同决定了扫描速率。当“扫描延迟”减少时,扫描速率增加。因此“扫描延迟”和每个任务的扫描速率是自适应的,取决于历史行为。如果页面放置正确,则扫描延迟增加;否则,扫描延迟减少。“扫描大小”不是自适应的,但“扫描大小”越大,扫描速率越高。 更高的扫描速率会带来更高的系统开销,因为必须捕获页面错误,并迁移数据。然而,扫描速率越高,任务的内存迁移到本地节点的速度越快,如果工作负载模式发生变化,可以最小化由于远程内存访问带来的性能影响。表1中的参数控制扫描延迟和扫描页面数量的阈值。
-
准备工作 RPM包的更新方法有两种:使用osmt update命令更新和使用后台osmt-agent服务自动更新。此两种方法,都须先执行本节操作。 确认repo源配置正常。 请检查默认的/etc/yum.repos.d/hce.repo配置文件中参数是否正确,正确的配置如下。 [base] name=HCE $releasever base baseurl=https://repo.huaweicloud.com/hce/$releasever/os/$basearch/ enabled=1 gpgcheck=1 gpgkey=https://repo.huaweicloud.com/hce/$releasever/os/RPM-GPG-KEY-HCE-2 [updates] name=HCE $releasever updates baseurl=https://repo.huaweicloud.com/hce/$releasever/updates/$basearch/ ...... 错误的配置内容可能会导致OSMT升级失败或非预期的升级行为。 执行dnf update osmt -y命令更新OSMT升级工具。 配置/etc/osmt/osmt.conf文件。 OSMT根据配置文件osmt.conf的设置,对RPM包进行更新。请根据需要配置osmt.conf文件。 [auto] #if auto_upgrade is True, the osmt-agent will auto upgrade rpms use osmt.conf and reboot between time interval we specified #the value of cycle_time means the osmt-agent will check upgrade every cycle_time seconds, default 86400s(1 day) #When a configuration item has a line break, you need to leave a space or tab at the beginning of the line auto_upgrade = False cycle_time = 3600 minimal_interval = 3600 auto_upgrade_window = "22:00-05:00" auto_upgrade_interval = 1 [Package] # There are three rules of filters, all enabled by default. severity will be effect only when the types contain security, it is the subtype of security. # The following are the three rules: # 1. whitelist has the highest priority, if whitelist is configured then ignore other rules and filter out the whitelist packages from the full list of packages to be upgrade # 2. Filter the update range by types, when the types contain security, further filter the severity of security updates severity, only upgrade the severity level of security. # 3. Filter blacklist to remove packages in blacklist from types filter results, and packages which depend on packages in blacklist will also be removed. # filters must contain at least one types rule, if the types rule is empty, the -a option will not upgrade any packages (by default all 3 filters are enabled). filters = "types, blacklist" whitelist = "" # types include: security, bugfix, enhancement, newpackage, unknown # if types is empty, no package will be upgrade # types = security, bugfix, enhancement, newpackage, unknown types = "security" # severity is the subtype of security, include: low, moderate, important, critical severity = "important, critical" blacklist = "" # The rpm package that requires a system reboot to take effect after the upgrade need_reboot_rpms = "kernel,kernel-debug,kernel-debuginfo,kernel-debuginfo-common,kernel-devel,kernel-headers,kernel-ori,kernel-tools,kernel-tools-libs,glibc,glibc-utils,glibc-static,glibc-headers,glibc-devel,glibc-common,dbus,dbus-python,dbus-libs,dbus-glib-devel,dbus-glib,dbus-devel,systemd,systemd-devel,systemd-libs,systemd-python,systemd-sysv,grub2,grub2-efi,grub2-tools,openssl,openssl-devel,openssl-libs,gnutls,gnutls-dane,gnutls-devel,gnutls-utils,linux-firmware,openssh,openssh-server,openssh-clients,openssh-keycat,openssh-askpass,python-libs,python,grub2-pc,grub2-common,grub2-tools-minimal,grub2-pc-modules,grub2-tools-extra,grub2-efi-x64,grub2-efi-x64-cdboot,kernel-cross-headers,kernel-source,glibc-all-langpacks,dbus-common,dbus-daemon,dbus-tools,systemd-container,systemd-pam,systemd-udev,grub2-efi-aa64,grub2-efi-aa64-cdboot,grub2-efi-aa64-modules,openssl-perl,openssl-pkcs,kernel-tools-libs-devel,glibc-debugutils,glibc-locale-source,systemd-help,grub2-efi-ia32-modules,grub2-efi-x64-modules,grub2-tools-efi,grub2-help,openssl-pkcs11,grub2-efi-ia32-cdboot,osmt" preinstalled_only = False [backup] store_path = /var/log backup_dir = /etc,/usr,/boot,/var,/run exclude_dir = recover_service = #the minimum resources required(MB) [resource_needed] #min_req_boot_space = 100 #min_req_backup_space = 8192 #min_req_root_space = 1536 #min_req_memory = 512 [cmdline] cmdline_value = [conflict] #conflict_rpm = test1,test2 [strategy] timeout_action = "stop" timeout_action_before = 0 [check] daemon_whitelist = "sysstat-collect.service, sysstat-summary.service, systemd-tmpfiles-clean.service" check_systemd_running_jobs = True # the timeout of query systemd services query_timeout = 30 check_rpm_packages = True check_file_attr = True 表1 osmt.conf主要配置项 配置项 说明 [auto] auto_upgrade:指定更新RPM包更新方式。默认为False。 True:使用osmt update命令更新和使用后台osmt-agent服务自动更新两种方式都支持。 False:仅支持使用osmt update命令更新RPM包。 auto_upgrade为True时,配套如下参数。 cycle_time:检查是否有待更新软件包的周期,单位是秒。默认值为3600秒。 minimal_interval:指定osmt update -b命令参数中开始时间和截止时间的最小时间间隔,单位是秒。默认值为3600秒。 auto_upgrade_window:配置后台osmt-agent服务自动升级的时间窗,格式为"HH:MM-HH:MM",表示升级的开始时间和截止时间。 如果截止时间小于开始时间,则表示本次升级时间段跨越自然日。如“22:00-05:00”表示升级时间段为当日22:00到次日凌晨5:00。 auto_upgrade_interval:指定两次自动升级之间的最小间隔(单位:天)。 auto_upgrade为False时,仅配套如下参数,执行配置文件时[auto]配置项中其他参数不生效。 cycle_time:检查是否有待更新软件包的周期,单位是秒。默认值为3600秒。 minimal_interval:指定osmt update -b命令参数中开始时间和截止时间的最小时间间隔,单位是秒。默认值为3600秒。 motd_setup: 设置登录提示是否开启。默认为True。 True:开启登录提示。 False:关闭登录提示,设置后会立刻删除登录提示,并且不会再次生成。如果重新开启,需要使用osmt update -s或任意升级命令重新触发生成。 [Package] filters:指定更新的范围,包括types、blacklist、whitelist。 例如filters = "blacklist",指升级时不更新黑名单中的RPM包。 types:待更新的RPM包类型。 blacklist:RPM包黑名单列表。 设置黑名单后,不对黑名单中的RPM包进行更新。如果某RPM包依赖黑名单中的包,则不会升级此RPM包。 whitelist:RPM包白名单列表。 如果不设置白名单或者黑名单列表,默认更新所有可更新的RPM包。 白名单优先级大于黑名单,如果某RPM包同时配置在白名单和黑名单,则会升级此RPM包。 说明: 如果使用命令指定了黑名单和白名单,以命令指定的黑名单和白名单为准,不再根据配置文件中的黑名单和白名单列表更新RPM包。 need_reboot_rpms:升级后要重启的RPM包。 后台osmt-agent服务自动升级时,不会更新need_reboot_rpms中的RPM包。若要更新need_reboot_rpms列表中的RPM包,必须使用osmt update --auto --reboot_config always或osmt update --auto --reboot_config “重启时间”命令更新。 preinstalled_only:当设置成True时,只升级/etc/osmt/preinstalled.list中的RPM包。 [backup] store_path:在该目录下创建备份目录。 升级过程中,OSMT会在store_path下创建.osbak目录,如果原先存在该目录,则需要先使用osmt remove将其删除。 backup_dir:需要备份的目录。其中/etc、/usr、/boot、/var、/run为默认的需要备份的目录,且不可以删减。这些目录会在执行版本升级功能的时候自动进行备份。注意不能与exclude_dir中配置的目录相同,否则升级工具会在目录处理时产生冲突而终止升级流程。 exclude_dir:不需要备份的目录。默认没有配置,一般建议配置成业务的数据目录,注意不能与backup_dir中配置的目录相同,否则升级工具会在目录处理时产生冲突而终止升级流程。 recover_service:OSMT会检查升级前后此列表中服务的启用状态是否一致,如果服务的启用状态被修改,OSMT会尝试恢复此服务的状态。 说明: [backup]中的路径需要配置为绝对路径的形式。 [cmdline] cmdline_value:指定升级之后系统的启动项。请配置正确的启动项,确保系统能够正常启动。默认值为HCE的默认启动项。 [conflict] conflict_rpm:指定升级过程中冲突的软件包,升级时系统将自动删除冲突的软件包。 [check] check_systemd_running_jobs:设置是否在升级前检查系统中有正在启动或正在停止的服务,默认为True。 True:升级前检查系统中是否有正在启动或正在停止的服务。 False:不检查系统中是否有正在启动或正在停止的服务。 check_rpm_packages:设置是否在升级前检查系统中rpm包的状态,包括包的依赖是否缺失、是否存在重复的包。默认为True。 True:升级前检查rpm包的状态。 False:升级前不检查rpm包的状态。 check_file_attr:设置是否在升级前检查系统文件是否有只读的属性。默认为True。 True:升级前检查系统中文件是否有只读属性。 False:升级前不检查系统中文件是否有只读属性。 [chroot_config] chroot_switch:是否开启turbo方式的版本升级,默认为False。 True:版本升级流程中开启turbo方式的升级。 False:版本升级流程中不开启turbo方式的升级。 chroot_path:设置turbo升级方式流程中的chroot环境目录。 rpm_tar_name:设置turbo升级方式中预构建的tar包的名字。 sut_config_file:设置sut的配置文件路径,默认是/etc/sut/sut.conf。 storage_dir:设置turbo升级方式流程中的下载预构建的tar包的目录。 web_link_tar:设置turbo升级方式中下载预构建的tar包的url地址。 说明: [chroot_config]中的所有配置仅适用于管理面的HCE版本升级方式,turbo方式指的是使用预构建出来的目标版本的tar包通过chroot方式在指定目录下进行版本升级。 其他配置项不建议修改,详情请参见/etc/osmt/osmt.conf配置文件说明。 父主题: 更新RPM包
-
安装x2hce-ca 确认repo源配置正常。 请检查默认的/etc/yum.repos.d/hce.repo配置文件中参数是否正确,正确的配置如下。 [base] name=HCE $releasever base baseurl=https://repo.huaweicloud.com/hce/$releasever/os/$basearch/ enabled=1 gpgcheck=1 gpgkey=https://repo.huaweicloud.com/hce/$releasever/os/RPM-GPG-KEY-HCE-2 [updates] name=HCE $releasever updates baseurl=https://repo.huaweicloud.com/hce/$releasever/updates/$basearch/ enabled=1 gpgcheck=1 gpgkey=https://repo.huaweicloud.com/hce/$releasever/updates/RPM-GPG-KEY-HCE-2 [debuginfo] name=HCE $releasever debuginfo baseurl=https://repo.huaweicloud.com/hce/$releasever/debuginfo/$basearch/ enabled=0 gpgcheck=1 gpgkey=https://repo.huaweicloud.com/hce/$releasever/debuginfo/RPM-GPG-KEY-HCE-2 如果在CentOS上面安装x2hce-ca,请将上面的$releasever替换为实际使用的HCE版本,以HCE 2.0为例,正确配置如下: [base] name=HCE 2.0 base baseurl=https://repo.huaweicloud.com/hce/2.0/os/$basearch/ enabled=1 gpgcheck=1 gpgkey=https://repo.huaweicloud.com/hce/2.0/os/RPM-GPG-KEY-HCE-2 [updates] name=HCE 2.0 updates baseurl=https://repo.huaweicloud.com/hce/2.0/updates/$basearch/ enabled=1 gpgcheck=1 gpgkey=https://repo.huaweicloud.com/hce/2.0/updates/RPM-GPG-KEY-HCE-2 [debuginfo] name=HCE 2.0 debuginfo baseurl=https://repo.huaweicloud.com/hce/2.0/debuginfo/$basearch/ enabled=0 gpgcheck=1 gpgkey=https://repo.huaweicloud.com/hce/2.0/debuginfo/RPM-GPG-KEY-HCE-2 安装x2hce-ca。 通过yum install -y x2hce-ca-hce命令安装工具。安装完成后,生成表1列表中的目录。 表1 用户相关目录列表 目录 说明 /var/log/x2hce-ca 存放工具日志文件的目录。 /var/log/aparser 存放配置收集器日志文件的目录。 /opt/x2hce-ca/output 报告默认输出目录。 /opt/x2hce-ca/scan 待扫描应用软件包的建议存放目录。 /etc/x2hce-ca/config 存放静态配置文件的目录。 /etc/x2hce-ca/database_2.0.0.630 存放数据库文件的目录。 /usr/local/x2hce-ca 程序文件存放路径。 /usr/local/x2hce-python-3 工具自带python安装目录 为使x2hc-ca命令生效,请按照安装完成后的提示进行相应配置。提示样例如图1所示,此处是提醒用户执行命令alias x2hce-ca="x2hce_python39 /usr/local/x2hce-ca/x2hce-ca.pyc"或重启操作系统使x2hc-ca命令生效。 图1 x2hce-ca-hce安装后提示样例 父主题: x2hce-ca应用兼容性评估
-
安装工具 确认repo源配置正常。 请检查默认的/etc/yum.repos.d/hce.repo配置文件中参数是否正确,正确的配置如下。 [base] name=HCE $releasever base baseurl=https://repo.huaweicloud.com/hce/$releasever/os/$basearch/ enabled=1 gpgcheck=1 gpgkey=https://repo.huaweicloud.com/hce/$releasever/os/RPM-GPG-KEY-HCE-2 [updates] name=HCE $releasever updates baseurl=https://repo.huaweicloud.com/hce/$releasever/updates/$basearch/ ...... 执行yum -y install hce-wae命令安装加速工具。 检查工具是否安装成功。 执行以下命令如果有如图1输出信息,表示工具安装成功。 llvm-bolt --help | more 图1 输出信息示例 不同版本的输出可能有所差异,具体以实际输出为准。 父主题: 应用加速工具
-
安装毕昇编译器 确认repo源配置正常。 请检查默认的/etc/yum.repos.d/hce.repo配置文件中参数是否正确,正确的配置如下。 [base] name=HCE $releasever base baseurl=https://repo.huaweicloud.com/hce/$releasever/os/$basearch/ enabled=1 gpgcheck=1 gpgkey=https://repo.huaweicloud.com/hce/$releasever/os/RPM-GPG-KEY-HCE-2 [updates] name=HCE $releasever updates baseurl=https://repo.huaweicloud.com/hce/$releasever/updates/$basearch/ ...... 执行yum -y install bisheng-compiler命令安装工具。 执行source /usr/local/bisheng-compiler/env.sh命令,导入环境变量。 如果打开了新的终端,需要在新的终端重新导入环境变量才能正常使用毕昇编译器。 检查工具是否安装成功。 执行clang -v查看工具的版本号。若返回结果包含毕昇编译器版本信息,表示工具安装成功。
-
准备工作 执行如下命令检查待优化的二进制文件中是否可以重新定位。可以重新定位表示可以进行应用优化。 其中“application”可替换为待检查的二进制文件。 readelf -a application | grep .rela.text 图1 readelf命令执行示例 如果二进制文件中.rela.text段存在,表示可以重新定位。 如果不存在,为了允许BOLT在程序中重新排列函数,需要将选项--emit-relocs或-q添加到构建二进制文件的命令中。 采集应用运行时的日志数据。 部署并预热应用后,即可使用llvm-bolt -instrument -o -instrumentation-file命令配置应用的日志采集方式。 例如,配置test.so文件运行后每隔30秒收集一次日志,日志保存到运行时test.log文件中请使用如下命令。 llvm-bolt tests.so -instrument -o testd.so -instrumentation-file=test.log -instrumentation-sleep-time=30 -instrumentation-no-counters-clear instrument:配置完日志采集方式后生成的新的动态库文件。本例中新生成的动态库为testd.so。 instrumentation-file:日志保存的文件名称。本例为test.log。 instrumentation-sleep-time:采集日志的时间间隔,单位为秒。本例中每隔30秒采集一次日志。 instrumentation-no-counters-clear:表示每次日志采集后不要清除日志计数器信息,保持日志信息上下文连续 运行testd.so对应的应用程序,应用程序运行日志会自动保存在test.log文件中。 应用加速工具会根据test.log文件中的动态数据来优化应用。
-
使用镜像归档文件启动容器 确认repo源配置正常。 请检查默认的/etc/yum.repos.d/hce.repo配置文件中参数是否正确,正确的配置如下。 [base] name=HCE $releasever base baseurl=https://repo.huaweicloud.com/hce/$releasever/os/$basearch/ enabled=1 gpgcheck=1 gpgkey=https://repo.huaweicloud.com/hce/$releasever/os/RPM-GPG-KEY-HCE-2 [updates] name=HCE $releasever updates baseurl=https://repo.huaweicloud.com/hce/$releasever/updates/$basearch/ ...... 安装docker软件包。 yum install docker -y 使用镜像归档文件创建容器镜像。 mv /tmp/docker_rootfs/hce-docker.x86_64.tar.xz . docker import hce-docker.x86_64.tar.xz 执行docker images命令可查看到容器镜像ID为6cfefae3a541。 图2 查看容器镜像ID 创建镜像可使用如下命令指定镜像的REPOSITORY和TAG参数。 docker import [OPTIONS] file|URL|- [REPOSITORY[:TAG]] 使用指定的镜像运行容器并进入其bash环境。 运行如下命令后,如果shell视图改变,表示成功进入容器的bash环境。6cfefae3a541为上述镜像ID。 docker run -it 6cfefae3a541 bash
-
前提条件 HCE中已安装dnf组件,dnf命令可用。 [root@localhost bin]# dnf usage: dnf [options] COMMAND List of Main Commands: alias List or create command aliases autoremove remove all unneeded packages that were originally installed as dependencies check check for problems in the packagedb check-update check for available package upgrades clean remove cached data deplist [deprecated, use repoquery --deplist] List package's dependencies and what packages provide them distro-sync synchronize installed packages to the latest available versions downgrade Downgrade a package ......
-
升级步骤 检查待更新的RPM包。 执行dnf list updates命令查看所有待更新的RPM包列表。 [root@localhost bin]# dnf list updates Last metadata expiration check: 6:49:11 ago on Tue 28 Jun 2022 01:55:35 PM CS T. hce-config.x86_64 3.0-66.hce2 hce-latest-release.x86_64 2.0-1656179342.2.0.2206.B032.hce2 irqbalance.x86_64 3:1.8.0-7.h9.hce2 kernel.x86_64 5.10.0-60.18.0.50.h316_1.hce2 kernel-tools.x86_64 5.10.0-60.18.0.50.h316_1.hce2 kernel-tools-libs.x86_64 5.10.0-60.18.0.50.h316_1.hce2 kexec-tools.x86_64 2.0.23-4.h8.hce2 libcurl.x86_64 7.79.1-2.h4.hce2 libssh.x86_64 0.9.6-2.h3.hce2 libstdc++.x86_64 10.3.1-10.h10.hce2 libxml2.x86_64 2.9.12-5.h5.hce2 openssh.x86_64 8.8p1-2.h12.hce2 openssh-clients.x86_64 8.8p1-2.h12.hce2 openssh-server.x86_64 8.8p1-2.h12.hce2 Obsoleting Packages dnf-data.noarch 4.10.0-3.h6.hce2 dnf.noarch 4.10.0-3.h5.hce2 dnf-data.noarch 4.10.0-3.h6.hce2 dnf-data.noarch 4.10.0-3.h5.hce2 执行dnf list updates --security命令,仅查看安全更新涉及的RPM包。 [root@localhost bin]# dnf list updates --security Last metadata expiration check: 0:00:03 ago on Fri 08 Jul 2022 04:45:56 PM CST. No security updates needed, but 2 updates available 升级待更新的RPM包。 执行dnf update命令升级所有待更新的RPM包,包括安全更新涉及的RPM包和漏洞修复。执行命令输出信息中会显示组件的目标版本信息(Version列)。 [root@localhost bin]# dnf update Last metadata expiration check: 7:12:18 ago on Tue 28 Jun 2022 01:55:35 PM CST. Dependencies resolved. ================================================================================================ Package Arch Version Repo Size ================================================================================================ Installing: kernel x86_64 5.10.0-60.18.0.50.h316_1.hce2 hce2 47 M Upgrading: hce-config x86_64 3.0-66.hce2 hce2 13 k hce-latest-release x86_64 2.0-1656179342.2.0.2206.B032.hce2 hce2 5.2 k kernel-tools x86_64 5.10.0-60.18.0.50.h316_1.hce2 hce2 230 k kernel-tools-libs x86_64 5.10.0-60.18.0.50.h316_1.hce2 hce2 62 k kexec-tools x86_64 2.0.23-4.h8.hce2 hce2 400 k libcurl x86_64 7.79.1-2.h4.hce2 hce2 284 k libssh x86_64 0.9.6-2.h3.hce2 hce2 194 k libstdc++ x86_64 10.3.1-10.h10.hce2 hce2 535 k libxml2 x86_64 2.9.12-5.h5.hce2 hce2 659 k logrotate x86_64 3.18.1-1.h2.hce2 hce2 60 k mdadm x86_64 4.1-5.h2.hce2 hce2 331 k nftables x86_64 1:1.0.0-1.h3.hce2 hce2 303 k perl x86_64 4:5.34.0-3.h5.hce2 hce2 3.2 M perl-libs x86_64 4:5.34.0-3.h5.hce2 hce2 1.8 M Installing dependencies: grub2-tools-efi x86_64 1:2.06-3.h5.hce2 hce2 472 k Transaction Summary ================================================================================================ Install 2 Packages Upgrade 72 Packages Total download size: 105 M Is this ok [y/N]: 执行dnf update --security命令,仅升级安全更新涉及的RPM包。 [root@localhost bin]# dnf update --security Last metadata expiration check: 7:15:16 ago on Tue 28 Jun 2022 01:55:35 PM CST. No security updates needed, but 73 updates available Dependencies resolved. Nothing to do. Complete! 升级成功后,请及时确认业务运行情况。
-
调用已发布的应用 仅发布的应用支持调用。如果应用的状态为草稿,需要先进行发布才能调用。具体操作,请参见编辑和发布草稿应用。 在“应用管理”页面,在状态为已发布目标应用卡片,单击“调用”,在“调用说明”页面按照页面信息进行调用。 关于创建API Key的操作步骤,请参见在ModelArts Studio(MaaS)管理API Key。 在 函数工作流 FunctionGraph控制台查看应用的调用总量统计及资源用量统计。 数据可能存在1~2小时的时延。
-
编辑和发布草稿应用 您可以在“编辑应用”页面按需修改草稿应用的名称、模型服务、提示词、添加或删除MCP等。 在“应用管理”页面,在状态为草稿的目标应用卡片单击“编辑”。 在“编辑应用”页面,按需修改应用名称、模型服务、提示词、添加或删除MCP等,在右上角单击“保存草稿”或“发布”。 关于参数的说明,请参见表1。单击“发布”后,会出现“计费提醒”对话框,请仔细阅读计费相关信息,然后单击“确定”。关于如何计费,请参见计费说明。 在“应用管理”页面的目标应用卡片中,当应用状态显示为已发布,表示该应用可以调用。
-
前提条件 预置服务或我的服务满足以下条件: 预置服务中商用服务:已开通预置服务中的商用服务。具体操作,请参见在ModelArts Studio(MaaS)预置服务中开通商用服务。 预置服务中免费服务:已领取预置服务中的免费服务额度。具体操作,请参见 免费体验 ModelArts Studio(MaaS)预置服务。 我的服务:已在“我的服务”页面部署模型服务且状态为运行中。具体操作,请参见使用ModelArts Studio(MaaS)部署模型服务。 已在MCP广场开通MCP服务。具体操作,请参见在ModelArts Studio(MaaS)MCP广场开通MCP服务。
-
计费说明 应用发布后,将托管至函数工作流FunctionGraph服务中。实际计费请以FunctionGraph计费为准,详情请参见FunctionGraph函数工作流计费规则。您可以在函数工作流FunctionGraph控制台查看应用的调用总量统计及资源用量统计。 调用应用按调用请求次数、资源用量(函数执行时间)收费。 每个自然月内,您全部的应用的总请求次数 、总资源用量有一定的免费额度。 MCP服务返回的内容将被计入输入Token消耗。
-
场景描述 随着AI智能体技术的快速发展,智能体需要无缝接入企业数据库、代码仓库、 API服务 等多样化数据源,以提升决策质量。然而,传统数据集成方式面临三大核心挑战:异构数据源接口的碎片化导致开发与维护成本居高不下;跨系统间缺乏有效的上下文感知能力;安全管控机制的不统一。 为了解决这些难题,Anthropic推出的Model Context Protocol(MCP)作为一种开放协议标准,通过定义统一的上下文交互接口,实现了AI系统与数据源之间的即插即用式连接。通过在智能体平台中集成MCP协议,可以构建标准化的数据访问层,从而有效支撑智能体在复杂业务场景下的上下文感知能力,为AI决策提供更高质量的支持。借助MCP协议,开发者无需为每个外部工具编写复杂的接口,MaaS应用也能够接入海量第三方工具。
-
MCP服务介绍 模型上下文协议MCP(Model Context Protocol)旨在搭建大模型和外部工具之间的信息传递通道。MCP服务是MaaS提供的标准化中间件能力模块,通过预集成第三方服务或平台自研功能,帮助开发者快速扩展AI应用的专业能力。其核心价值在于将复杂的外部服务(如网页搜索、出行服务、开发功能等)封装为即插即用的功能组件,用户无需开发底层接口即可直接调用,显著降低多能力协同的开发成本。关于MCP的更多信息,请参见MCP官网。 您可以在MCP广场查看MaaS支持的MCP服务,并单击目标服务,查看服务的详细介绍、使用场景和参数说明等信息。
-
取消开通MCP服务 对于已开通但不再需要的MCP服务,您可以取消开通该服务。如果发布的应用已添加该MCP,则无法直接取消开通该服务。 在“MCP广场”页面,单击目标服务卡片,查看服务的详情,然后在右上角单击“取消开通”。 在“取消开通MCP服务”对话框,按需选择以下操作。 如果发布的应用已添加该MCP服务: “取消开通MCP服务”对话框会提示无法取消开通该MCP服务,您可以单击应用名称,在“编辑应用”页面将需要取消的MCP进行删除,然后在右上角单击“更新”。 重复以上操作,确保发布的应用均已删除该MCP服务。 在“取消开通MCP服务”对话框,输入YES,单击“确定”。 如果发布的应用未添加该MCP服务:输入YES,单击“确定”。
-
操作步骤 登录 云监控服务 控制台,在左侧导航栏单击“云服务监控”。 在“云服务监控”页面,单击“MaaS MaaS”看板名称。 在“资源详情”页签的实例列表,查看服务的整体情况。 在实例列表的“操作”列,单击目标服务对应的“查看监控指标”。 在“资源实例”页签或“API Key”页签,查看服务的监控指标详情。 不同监控周期对应聚合方式的聚合时间不同,详情请参见查看监控视图。 监控指标默认保留两位小数。 表1 监控指标说明 指标ID 指标名称 指标含义 单位 进制 监控周期 rpm RPM 每分钟处理的请求数。 times/minute - 1分钟 tpm TPM 每分钟处理的Tokens数(输入+输出)。 thousand tokens/minute - 1分钟 req_count_4xx 4XX数量 服务调用错误4XX次数。 times/minute - 1分钟 req_count_5xx 5XX数量 服务调用错误5XX次数。 times/minute - 1分钟 req_count 调用总量 调用的总量。 times/minute - 1分钟 req_count_2xx 调用成功次数 2XX成功的次数。 times/minute - 1分钟 req_count_error 调用失败次数 调用失败的次数。 调用失败次数可能会超过4XX和5XX错误的总和,因为还可能包含不属于4xx或5xx类别的错误。 调用失败次数仅涵盖模型服务产生的4XX和5XX错误,不包括租户在服务请求中因非模型服务因素导致的错误,例如鉴权失败等。 times/minute - 1分钟 req_error_rate 请求失败率 调用失败次数占调用总次数的比例。 % - 1分钟 prompt_tokens 输入tokens数 服务调用输入Tokens数。 thousand tokens - 1分钟 completion_tokens 输出tokens数 服务调用输出Tokens数。 thousand tokens - 1分钟 total_tokens 调用总tokens数 服务调用总Tokens数。 thousand tokens - 1分钟 prompt_tokens_avg 平均输入token长度 输入Token平均长度。 thousand tokens - 1分钟 completion_tokens_avg 平均输出token长度 输出Token平均长度。 thousand tokens - 1分钟 prompt_tokens_p50 输入token TP 50 50%的输入Token大小低于该值。 thousand tokens - 1分钟 prompt_tokens_p80 输入token TP 80 80%的输入Token大小低于该值。 thousand tokens - 1分钟 prompt_tokens_p90 输入token TP 90 90%的输入Token大小低于该值。 thousand tokens - 1分钟 prompt_tokens_p99 输入token TP 99 99%的输入Token大小低于该值。 thousand tokens - 1分钟 completion_tokens_p50 输出token TP 50 50%的输出Token大小低于该值。 thousand tokens - 1分钟 completion_tokens_p80 输出token TP 80 80%的输出Token大小低于该值。 thousand tokens - 1分钟 completion_tokens_p90 输出token TP 90 90%的输出Token大小低于该值。 thousand tokens - 1分钟 completion_tokens_p99 输出token TP 99 99%的输出Token大小低于该值。 thousand tokens - 1分钟 prompt_tokens_max 最长输入token长度 输入Token最大值。 thousand tokens - 1分钟 completion_tokens_max 最长输出token长度 输出Token最大值。 thousand tokens - 1分钟 ttft TTFT(AVG) 首Token时延,即从接收请求到生成第一个输出Token所需的时间。 ms - 1分钟 tpot TPOT(AVG) 增量Token时延,即生成后续每个输出Token所需的时间间隔。 ms - 1分钟 latency_avg 平均响应时延 单位时间内成功请求的响应时间平均值。 ms - 1分钟 ttft_p50 首token时延 TP50 50%的首Token时延低于该值。 ms - 1分钟 ttft_p80 首token时延 TP80 80%的首Token时延低于该值。 ms - 1分钟 ttft_p90 首token时延 TP90 90%的首Token时延低于该值。 ms - 1分钟 ttft_p99 首token时延 TP99 99%的首Token时延低于该值。 ms - 1分钟 ttft_max 最长首token时延 首Token时延最大值。 ms - 1分钟 tpot_p50 增量 token时延 TP50 50%的增量Token时延低于该值。 ms - 1分钟 tpot_p80 增量 token时延 TP80 80%的增量Token时延低于该值。 ms - 1分钟 tpot_p90 增量 token时延 TP90 90%的增量Token时延低于该值。 ms - 1分钟 tpot_p99 增量 token时延 TP99 99%的增量Token时延低于该值。 ms - 1分钟 tpot_max 最长增量 token时延 增量Token时延最大值。 ms - 1分钟
-
约束限制 统计范围: 仅统计预置服务-商用服务、预置服务-免费服务、我的服务的调用数据。 实例列表:如实例超过一定时长(大于3小时)未上报监控数据,将不会展示在实例列表中。 实例列表-视图页面:如实例指标超过一定时长(大于1小时)未上报监控数据,则该指标将不会展示在视图页面。 时间范围限制: 支持预设时间段:近15分钟、近30分钟、近1小时、近2小时、近3小时、近12小时、近24小时、近7天、近14天、近30天。 自定义时间段:最长不超过30天。
共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