intel / intel-ethernet-operator

K8s operator for Intel E810 Series NICs FW/DDP updates and Flow configuration API
Other
21 stars 10 forks source link

[RFE] IEO to help manage link type using EPCT or other tooling #2

Open novacain1 opened 1 year ago

novacain1 commented 1 year ago

The Intel Ethernet Port Configuration (EPCT) tool is a command line utility used to change the link type of devices. It's Intel hosted URL is here: https://www.intel.com/content/www/us/en/download/19435/ethernet-port-configuration-tool-all-supported-oss.html

These links are often critical in certain customer environments where lower link speeds along with proper cabling connected to QSFP+ ports requires reconfiguration where the defaults (2x1x100 Gbps) isn't applicable.

Example execution in my enviornment where only 2 nic interfaces show up (ens1f0 and ens1f1):

# ./epct64e -nic=1 -get
Ethernet Port Configuration Tool
EPCT version: v1.39.05.05
Copyright 2019 - 2022 Intel Corporation.

Available Port Options:
==========================================================================
        Port                             Quad 0           Quad 1          
Option  Option (Gbps)                    L0  L1  L2  L3   L4  L5  L6  L7  
======= =============================    ================ ================
Active  2x1x100                       -> 100   -   -   -  100   -   -   -
        8x10                          ->  10  10  10  10   10  10  10  10

Warning: Any changes to the port option configuration will require a reboot before the device will function correctly.

All actions succeeded.
# ./epct64e -nic=1 -set 8x10
Ethernet Port Configuration Tool
EPCT version: v1.39.05.05
Copyright 2019 - 2022 Intel Corporation.

New configuration was set: 8x10
Restart the system to apply the changes.

The port options have changed for this device. You must reboot for the device to function correctly.

All actions succeeded.
[root@du1-fec1 ~]# shutdown -r now

After rebooting the system:

# ip addr list | grep ens1f
4: ens1f0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc mq state DOWN group default qlen 1000
7: ens1f1: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc mq state DOWN group default qlen 1000
8: ens1f2: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
9: ens1f3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
10: ens1f4: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc mq state DOWN group default qlen 1000
11: ens1f5: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc mq state DOWN group default qlen 1000
12: ens1f6: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc mq state DOWN group default qlen 1000
13: ens1f7: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc mq state DOWN group default qlen 1000`

Is it a future roadmap item of the Intel Ethernet Operator to manage cards port mode? If not, can we register an RFE? I think it would be a fantastic add-on to have the Operator manage this and have the ability to manipulate this in a cloud-native & declarative fashion.

rafal-lal commented 10 months ago

Sorry for late response. Support for this functionality had been added to our backlog and it might make it to the next release, although it's not 100% guaranteed.

rafal-lal commented 10 months ago

I'll leave this issue opened and update it when we have more specific information on this.