---
title: 通过RPM包安装KAE
description: "RPM软件包包括hisi_hpre，hisi_sec2，hisi_rde，hisi_zip、libkaezip、libkae、uacce和libwd，其中uacce和libwd是必选安装项，其他软件包需要根据实际使用的模块和算法不同选择安装，也可全部安装。当前只有KAE1.0支持RPM包方式安装，KAE2.0暂不支持此安装方式。"
url: https://www.hikunpeng.com/document/detail/zh/kunpengboostkithistory/2300/accel/kunpengaccel_16_0010.html
sourcePath: /source/zh/kunpengboostkithistory/2300/accel/kunpengaccel_16_0010.html
indexId: ecf05a0ce0f70f291ef738999bda0dff8b35ae3d45a41df03a45f9af82f12b3470
---
# 通过RPM包安装KAE

RPM软件包包括hisi_hpre，hisi_sec2，hisi_rde，hisi_zip、libkaezip、libkae、uacce和libwd，其中uacce和libwd是必选安装项，其他软件包需要根据实际使用的模块和算法不同选择安装，也可全部安装。当前只有KAE1.0支持RPM包方式安装，KAE2.0暂不支持此安装方式。

#### 前提条件

- 请先下载指定操作系统相对应的RPM包，下载路径为：  https://gitee.com/kunpengcompute/KAE/releases(https://gitee.com/kunpengcompute/KAE/releases)
。
- RPM工具能正常使用。
- 使用openssl version命令检查OpenSSL是否为1.1.1a及以上版本，若低于1.1.1a版本请参见  安装OpenSSL
安装OpenSSL。
- 设置OpenSSL环境变量
  通过以下命令设置环境变量：如果用户指定安装路径，则下面命令中的/usr/local/lib/engines-1.1应根据实际安装路径进行修改。该环境变量默认为指定挂载到OpenSSL中的引擎路径。

  1 export OPENSSL_ENGINES=/usr/local/lib/engines-1.1


#### 安装步骤

hisi_hpre，hisi_sec2，hisi_rde驱动软件包依赖于uacce软件包；libkae引擎软件包依赖于libwd软件包。

- 如果仅加速RSA/DH算法建议只需要安装uacce、hisi_hpre、libwd、libkae软件包。
- 如果仅加速AES/MD5/SM3/SM4算法建议只需要安装uacce、hisi_sec2、libwd、libkae软件包。


1. 使用SSH远程登录工具，以root账号进入Linux操作系统命令行界面。
2. 将获取到的KAE RPM软件包拷贝到自定义路径下。
3. 安装加速驱动软件包。

  - 方式一：如果OpenSSL已按上述默认方式进行安装，则可以通过rpm -ivh *.rpm安装所有KAE RPM软件包。
    1 rpm -ivh *.rpm

    回显结果如下即表明安装成功。 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 Preparing... ################################# [100%] checking installed modules Updating / installing... 1:uacce-1.0.1-1.centos7.6 ################################# [ 14%] modules installed 2:libwd-1.0.1-1.centos7.6 ################################# [ 29%] 3:libkae-1.0.1-1.centos7.6 ################################# [ 43%] checking installed modules 4:hisi_hpre-1.0.1-1.centos7.6 ################################# [ 57%] modules installed checking installed modules 5:hisi_rde-1.0.1-1.centos7.6 ################################# [ 71%] modules installed checking installed modules 6:hisi_sec2-1.0.1-1.centos7.6 ################################# [ 86%] modules installed checking installed modules

  - 方式二：请依次对RPM包进行安装。以下示例为安装uacce-1.0.1软件包。
    1 rpm -ivh uacce-1.0.1-1.centos7.6.aarch64.rpm

    回显结果如下即表明安装成功。 1 2 3 4 5 Preparing... ################################# [100%] checking installed modules Updating / installing... 1:uacce-1.0.1-1.centos7.6 ################################# [100%] modules installed

    安装hisi_hpre，hisi_sec2，hisi_rde，hisi_zip驱动软件包和libwd，libkae引擎软件包时将命令中的RPM包名称替换即可，其中安装libkae引擎软件包时还需要通过--prefix指定OpenSSL引擎的路径，命令与回显结果如下：

    1 rpm -ivh libkae-1.0.1-1.centos7.6.aarch64.rpm --prefix=/usr/local/openssl/lib/engines-1.1

    --prefix=/usr/local/openssl/lib/engines-1.1即OpenSSL安装路径选择为“/usr/local/openssl”时。

    1 2 3 Preparing... ################################# [100%] Updating / installing... 1:libkae-1.0.1-1.centos7.6 ################################# [100%]

4. 查看RPM软件是否已正常安装到系统内。

  a. 查看uacce是否已安装。
    1 rpm -ql uacce

    回显结果如下。 1 2 /lib/modules/4.14.0-115.el7a.0.1.aarch64/extra/hisi_qm.ko /lib/modules/4.14.0-115.el7a.0.1.aarch64/extra/uacce.ko

  b. 查看hisi_sec2、hisi_hpre、hisi_rde是否已安装。
    1 rpm -ql hisi_sec2 hisi_hpre hisi_rde

    回显结果如下。 1 2 3 4 5 6 /lib/modules/4.14.0-115.el7a.0.1.aarch64/extra/hisi_sec2.ko /etc/modproe.d/hisi_sec2.conf /lib/modules/4.14.0-115.el7a.0.1.aarch64/extra/hisi_hpre.ko /etc/modproe.d/hisi_hpre.conf /lib/modules/4.14.0-115.el7a.0.1.aarch64/extra/hisi_rde.ko /etc/modproe.d/hisi_rde.conf

  c. 查看安装目录下是否生成对应模块。
    1 ls -al /lib/modules/`uname -r`/extra

    回显结果如下。 1 2 3 4 5 6 7 8 total 3672 drwxr-xr-x. 2 root root 118 Nov 17 21:56 . drwxr-xr-x. 7 root root 4096 Nov 17 21:56 .. -rw-r--r--. 1 root root 681104 Nov 12 17:32 hisi_hpre.ko -rw-r--r--. 1 root root 618888 Nov 12 17:32 hisi_qm.ko -rw-r--r--. 1 root root 844728 Nov 12 17:32 hisi_rde.ko -rw-r--r--. 1 root root 729304 Nov 12 17:32 hisi_sec2.ko -rw-r--r--. 1 root root 467160 Nov 12 17:32 uacce.ko

  d. 在“/etc/modprobe.d/”目录下查看是否生成对应的配置文件。
    1 ls -al /etc/modprobe.d/

    回显结果如下。 1 2 3 4 5 6 7 8 total 36 drwxr-xr-x. 2 root root 140 Nov 17 21:56 . drwxr-xr-x. 127 root root 8192 Nov 17 22:14 .. -rw-r--r--. 1 root root 166 Oct 30 2018 firewalld-sysctls.conf -rw-r--r--. 1 root root 44 Nov 17 21:56 hisi_hpre.conf -rw-r--r--. 1 root root 43 Nov 17 21:56 hisi_rde.conf -rw-r--r--. 1 root root 61 Nov 17 21:56 hisi_sec2.conf -rw-r--r--. 1 root root 674 Jul 4 2018 tuned.conf

5. 可选：如果是SUSE操作系统，在加载外部驱动前需要先将配置文件“/etc/modprobe.d/10-unsupported-modules.conf”中的“allow_unsupported_modules”参数值设置为“1”。
6. 加载加速器驱动到内核。

  - 方式一：重启系统加载。
  - 方式二：通过命令行手动依次加载，并查看是否加载成功。

    a. 查询已载入内核的uacce驱动模块。
      1 lsmod | grep uacce

      若没有任何回显内容则执行6.b~6.e将相应的模块加载到内核。

    b. 加载uacce驱动。
      1 modprobe uacce

    c. 加载hisi_sec2驱动，将根据“/etc/modprobe.d/hisi_sec2.conf”下的配置文件加载到内核。
      1 modprobe hisi_sec2

    d. 加载hisi_hpre驱动，将根据“/etc/modprobe.d/hisi_hpre.conf”下的配置文件加载到内核。
      1 modprobe hisi_hpre

    e. 加载hisi_rde驱动，将根据“/etc/modprobe.d/hisi_rde.conf”下的配置文件加载到内核。
      1 modprobe hisi_rde

    f. 再次查询已载入内核的uacce驱动模块。
      1 lsmod | grep uacce

      有以下加载的模块显示则表示加载成功。 1 uacce 36864 3 hisi_sec2,hisi_qm,hisi_hpre,hisi_rde


#### 安装后检查

1. 查看KAE RPM软件包。
  1 rpm -qa uacce hisi_sec2 hisi_hpre hisi_rde

  显示以下格式内容说明安装成功。 1 2 3 4 hisi_rde-1.0.1-1.centos7.6.aarch64 hisi_sec2-1.0.1-1.centos7.6.aarch64 uacce-1.0.1-1.centos7.6.aarch64 hisi_hpre-1.0.1-1.centos7.6.aarch64

2. 查看虚拟文件系统下对应的加速器设备。
  1 ls -al /sys/class/uacce/

  回显结果如下。 1 2 3 4 5 6 7 total 0 lrwxrwxrwx. 1 root root 0 Nov 14 03:45 hisi_hpre-2 -> ../../devices/pci0000:78/0000:78:00.0/0000:79:00.0/uacce/hisi_hpre-2 lrwxrwxrwx. 1 root root 0 Nov 14 03:45 hisi_hpre-3 -> ../../devices/pci0000:b8/0000:b8:00.0/0000:b9:00.0/uacce/hisi_hpre-3 lrwxrwxrwx. 1 root root 0 Nov 17 22:09 hisi_rde-4 -> ../../devices/pci0000:78/0000:78:01.0/uacce/hisi_rde-4 lrwxrwxrwx. 1 root root 0 Nov 17 22:09 hisi_rde-5 -> ../../devices/pci0000:b8/0000:b8:01.0/uacce/hisi_rde-5 lrwxrwxrwx. 1 root root 0 Nov 14 08:39 hisi_sec-0 -> ../../devices/pci0000:74/0000:74:01.0/0000:76:00.0/uacce/hisi_sec-0 lrwxrwxrwx. 1 root root 0 Nov 14 08:39 hisi_sec-1 -> ../../devices/pci0000:b4/0000:b4:01.0/0000:b6:00.0/uacce/hisi_sec-1

3. 查看基于OpenSSL的KAE引擎是否生效。
  以验证RSA性能为例，验证步骤请参见测试同步RSA性能，通过RSA性能命令可以看到指定KAE引擎之后，RSA的性能得到明显提升。

  另外，除上述方法，在执行RSA性能命令过程中，可以在新的终端上同时查看hisi_hpre设备的硬件队列资源情况如下，相同的，SM3/SM4算法可以查看hisi_sec2的硬件队列消耗情况。

```
cat /sys/class/uacce/hisi_hpre-*/attrs/available_instances
```


  显示结果从256变为255，说明RSA算法消耗了HPRE加速器一个硬件单元队列，说明KAE引擎已生效。
