我正在尝试在SmartNIC上运行的ARM linux上启用SPDK crypto vbdev。但是我不知道这样做的步骤。
SPDK加密vbdev使用DPDK的加密dev(crypto_aesni_mb)进行加密/解密。
有人能让我知道在ARM linux上启用SPDK crypto vbdev的步骤吗?
这就是我想要做的:
我有一个带ARM Linux的SmartNIC卡。我在arm linux上运行了iscsiadm以发现并登录到远程LUN。这使远程LUN作为虚拟设备(/ dev / sdb)出现在NIC卡上。 之后,我在现有虚拟LUN(/ dev / sdb)上的NIC卡上运行iscsi_tgt:
此iscsi_tgt是通过编译SPDK 18.10 iscsi_tgt应用程序获得的。 所使用的iscsi.conf如下:
[Global]
ReactorMask 0x80
NoPci Yes
[iSCSI]
NodeBase "iqn.2018-09.000af7ec1574"
AuthFile /etc/iscsi.auth
MinConnectionsPerCore 4
Timeout 30
DiscoveryAuthMethod Auto
DefaultTime2Wait 2
DefaultTime2Retain 60
ImmediateData Yes
ErrorRecoveryLevel 0
[PortalGroup1]
Portal DA1 10.255.255.253:3260@0x80
[InitiatorGroup1]
InitiatorName ANY
Netmask 10.255.255.252/30
[AIO]
AIO /dev/sda AIO0
AIO /dev/sdb AIO1
[TargetNode1]
TargetName d0
TargetAlias iSCSI proxy storage
Mapping PortalGroup1 InitiatorGroup1
AuthMethod Auto
AuthGroup AuthGroup1
UseDigest Auto
LUN0 AIO0
LUN1 AIO1
QueueDepth 128
[crypto]
CRY AIO0 cryptoaio0 0123456789123456 crypto_aesni_mb
此iscsi.conf具有用于在iscsi_tgt上启用加密的配置。这将在卡上设置SPDK加密虚拟bdev。我这样做是为了加密iscsi I / O调用。 在主机上执行此操作之后,我正在运行iscsiadm来使用此目标(NIC卡上的iscsi_tgt)设置iscsi协议。 但是结果是,iscsi协议头(控制信息)和数据都已被加密。我只想加密数据。
我怀疑在iscsi_tgt上启用加密时,我在这里做错了。可能是所使用的配置文件不正确。
有人可以在加密虚拟bdev中帮助我,以便仅对I / O调用进行加密/解密,而不对控制信息进行加密吗?