Giter Site home page Giter Site logo

cmd-forwarder-sriov's Introduction

cmd-forwarder-sriov's People

Contributors

anastasia-malysheva avatar arp-est avatar denis-tingaikin avatar edwarnicke avatar glazychev-art avatar haiodo avatar mixaster995 avatar nikitaskrynnik avatar nsmbot avatar semenov-spirent avatar thetadr avatar tiberivs avatar valeriy-simakov avatar

Stargazers

 avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

cmd-forwarder-sriov's Issues

Add interface injection chain element

Add chain element that injects given VF network interface into the cleint's pod network namespace.
Provided parameters in NetworkServiceRequest.MechanismPreferences.Parameters map:
netnsInode - inode for client's pod network namespace file in /proc/<pid>/net/ns
vfInterfaceName - target interface name

Add retries for the method of device plugin ListAndWatch()

Motivation

In the current implementation, if device plugin server is busy/unavailable for some period then the device plugin stops listen to resources. In this case, to fix the problem user will need to do re-deploy... To avoid this kind of issue we need to add re-tries as we have in monorepo.

Based on
#13 (comment)

Spec: SR-IOV forwarder Device Plugin

User configures Forwarder with the list of PF -> service matches.

0000:00:01.0:
  capabilities:
  - intel
  - 10G
  services:
  - serv.dom.a
  - serv.dom.b
0000:00:02.0:
  capabilities:
  - mlx5
  - 10G
  services:
  - serv.dom.b
  - serv.dom.c

Forwarder creates all available VFs for the given PFs and generates tokens.

0000:00:01.0 -> 32 VF -> 32 * { serv.dom.a/intel, serv.dom.a/10G, serv.dom.b/intel, serv.dom.b/10G }
0000:00:02.0 -> 16 VF -> 16 * { serv.dom.b/mlx5, serv.dom.b/10G, serv.dom.c/mlx5, serv.dom.c/10G }

Total:
- 32 * serv.dom.a/intel
- 32 * serv.dom.a/10G
- 32 * serv.dom.b/intel
- 16 * serv.dom.b/mlx5
- 48 * serv.dom.b/10G
- 16 * serv.dom.c/mlx5
- 16 * serv.dom.c/10G

In the terms of Device Plugin - token is a device. Forwarder advertise tokens. In the beginning all tokens are in free state.
Client pod requests tokens.

resources:
  limits:
    serv.dom.a/intel: "1"
    serv.dom.b/10G: "1"

Device Plugin selects 2 tokens for the client, sets them in allocated state and injects theirs IDs into the Client pod via environment variables.

NSM_SRIOV_TOKENS=serv.dom.a/intel:c2024bf1,serv.dom.b/10G:ad6167d6

Client requests connection using token ID.

Request.MechanismPreferences = []{
    {
        Cls: cls.LOCAL,
        Type: vfio.MECHANISM,
        Parameters: {
            tokenID: "ad6167d6",
        },
    },
}

Forwarder filters available PFs by token and selects VF for the connection. For the selected VF Forwarder sets passed token in in use state and sets 1 token for the other supported by VF token types in closed state and marks them as unhealthy for the Device Plugin. Tokens to become closed first are selected from the free tokens, if there is no free, tokens are selected from the allocated tokens.

token: service-b/10G{ad6167d6}
PFs supported:
- 0000:00:01.0
- 0000:00:02.0
VF selected: 0000:00:02.4
token state changes:
- serv.dom.b/10G{ad6167d6} -> in use
- serv.dom.b/mlx5{b6ce9dc3} -> closed + unhealthy
- serv.dom.c/mlx5{a529b8ef} -> closed + unhealthy
- serv.dom.c/10G{5fbffeb4} -> closed + unhealthy

When client closes connection, in use token becomes allocated and all related closed tokens become free and healthy for the Device Plugin.
When client disconnects from the Forwarder, allocated token becomes free.

Add test Endpoint

Add test Endpoint which accepts Request with the following parameters

  1. Connection.NetworkService - the name of the requested network service
  2. Request.MechanismPreferences[].PCIAddress - each Mechanism(Kernel or VFIO) in MechanismPreferences has PCIAddress field that contains PCI address of physical function that is available on the Forwarder.

Endpoint selects one of the provided PCI addresses in the availablePorts and returns Connection with the following parameters:

  1. Mechanism.PCIAddress - selected PCIAddress.

Endpoint config example

resources:
-  res1:
    networkServiceName: service1.example.com
    sourceHostName: example.org
    sourcePCIAddress: 0000:01:00:0
    capability: 10G
    targetMACAddress: 00:0a:95:9d:68:16
-  res 2:
    networkServiceName: service2.example.com
    sourceHostName: example.org
    sourcePCIAddress: 0000:02:00:0
    capability: 100G
    targetMACAddress: 00:1b:44:11:3a:b7

move device plugin server into common repo

Can we move device plugin server implementation into a common repo like sdk-k8s or sdk-sriov so that it can also be reused by ovs forwarder (going to get implemented) that has support for smartnic based VFs.
The forwarder just have to rely this StartServers API to start the device plugin server with required token pools based on the sriov.conf file.

Add VF selector chain element

Add chain element that will select one from virtual functions across all available NICs based on next info:

  1. Returned endpointPortMacAddress returned by eNSMgr in NetworkServiceRequest.MechanismPreferences.Parameters map
  2. Forwarder config, containing info about which PF is connected to which server port
  3. list of VFs associated with each PF

This chain element has to add vfInterfaceName parameter containing interface name to NetworkServiceRequest.MechanismPreferences.Parameters map

mechanism preferences doesn't work when nsc and nse are in same worker node

icmp responder nse throws the following error cannot support any of the requested mechanism when sriov forwarder sends service request with {"mechanism_preferences":{"+0":{"cls":"REMOTE","type":"NOOP"}}} (is the cls parameter valid when nsc and nse are in the same worker node ?)

Logs at the forwarder side:

Apr  8 09:53:03.591^[[36m [INFO] [name:forwarder-sriov-hctdh] ^[[0m(1.1)   request={"connection":{"id":"5e11978d-90bb-4bcc-9c7b-187022fe1a76","network_service":"icmp-responder","context":{"ip_context":{}},"labels":{"serviceDomain":"bap-worker"},"path":{"index":1,"path_segments":[{"name":"nsc-6797bb944-9w2jf","id":"nsc-6797bb944-9w2jf-0","token":"eyJhbGciOiJFUzI1NiIsInR5cCI6IkpXVCJ9.eyJhdWQiOiJzcGlmZmU6Ly9leGFtcGxlLm9yZy9ucy9uc20tc3lzdGVtL3NhL2RlZmF1bHQiLCJleHAiOjE2MTc4NzkxNzMsInN1YiI6InNwaWZmZTovL2V4YW1wbGUub3JnL25zL25zLXhzdGNmL3NhL2RlZmF1bHQifQ.GvyxG08Ozew2DTn4FsKQXEfPciUqMG7mRdVwyDOJ5UTWQNp6icy5rwF96i1llwKukObtFyXAUozEm2Wc9A4KeQ","expires":{"seconds":1617878850}},{"name":"nsmgr-jn2bg","id":"5e11978d-90bb-4bcc-9c7b-187022fe1a76","token":"eyJhbGciOiJFUzI1NiIsInR5cCI6IkpXVCJ9.eyJhdWQiOiJzcGlmZmU6Ly9leGFtcGxlLm9yZy9ucy9ucy14c3RjZi9zYS9kZWZhdWx0IiwiZXhwIjoxNjE3ODc4ODUwLCJzdWIiOiJzcGlmZmU6Ly9leGFtcGxlLm9yZy9ucy9uc20tc3lzdGVtL3NhL2RlZmF1bHQifQ.fd2fpoaLTDbJTNGRyoC7IqYGPbACNJZ7-SyOF31ly91LRpT9kPoivO9OiFBMVWMbJpThdUfhENuUNkiNd0DOvg","expires":{"seconds":1617878850}}]},"network_service_endpoint_name":"a55348b5-9e77-494a-a95c-6ce46fa8b458-nse-67b49dd695-6r57f"},"mechanism_preferences":[{"cls":"LOCAL","type":"KERNEL","parameters":{"inodeURL":"inode://4/4026536945","name":"nsm-1","tokenID":"6dde8001-239b-48c6-a4e3-7505588b583e"}}]} span=02c23d3477447e81:219cb3c946078ffd:0a3503b18f46d7a8:1
Apr  8 09:53:03.591^[[36m [INFO] [name:forwarder-sriov-hctdh] ^[[0m(1.2)   request-diff={"connection":{"id":"dde93253-e93a-4fd4-b467-f52ce6f05d00","path":{"index":2,"path_segments":{"+2":{"name":"forwarder-sriov-hctdh","id":"dde93253-e93a-4fd4-b467-f52ce6f05d00"},"1":{"token":"eyJhbGciOiJFUzI1NiIsInR5cCI6IkpXVCJ9.eyJhdWQiOiJzcGlmZmU6Ly9leGFtcGxlLm9yZy9ucy9uc20tc3lzdGVtL3NhL2RlZmF1bHQiLCJleHAiOjE2MTc4Nzg4NTAsInN1YiI6InNwaWZmZTovL2V4YW1wbGUub3JnL25zL25zbS1zeXN0ZW0vc2EvZGVmYXVsdCJ9.hGYfMvzAFnh2H-iApv57QNKmCu620nTE85rp3A0oeRax1mVCpfANTITsoymIP8EUcWxf5pgqQ05Exnlu-cTesA"}}}}} span=02c23d3477447e81:219cb3c946078ffd:0a3503b18f46d7a8:1
Apr  8 09:53:03.591^[[36m [INFO] [name:forwarder-sriov-hctdh] ^[[0m(2)  ⎆ sdk/pkg/networkservice/common/authorize/authorizeServer.Request() span=02c23d3477447e81:3e0e87d23c656133:219cb3c946078ffd:1
Apr  8 09:53:03.591^[[36m [INFO] [name:forwarder-sriov-hctdh] ^[[0m(3)   ⎆ sdk/pkg/networkservice/common/serialize/serializeServer.Request() span=02c23d3477447e81:353ca3f8940ee027:3e0e87d23c656133:1
Apr  8 09:53:03.591^[[36m [INFO] [name:forwarder-sriov-hctdh] ^[[0m(4)    ⎆ sdk/pkg/networkservice/common/timeout/timeoutServer.Request() span=02c23d3477447e81:05dbc25a70fb20f7:353ca3f8940ee027:1
Apr  8 09:53:03.592^[[36m [INFO] [name:forwarder-sriov-hctdh] ^[[0m(5)     ⎆ sdk/pkg/networkservice/utils/metadata/metadataServer.Request() span=02c23d3477447e81:1c332aab6f25d1cd:05dbc25a70fb20f7:1
Apr  8 09:53:03.592^[[36m [INFO] [name:forwarder-sriov-hctdh] ^[[0m(6)      ⎆ sdk/pkg/networkservice/common/monitor/monitorServer.Request() span=02c23d3477447e81:737fe5d440393302:1c332aab6f25d1cd:1
Apr  8 09:53:03.592^[[36m [INFO] [name:forwarder-sriov-hctdh] ^[[0m(7)       ⎆ sdk/pkg/networkservice/common/updatetoken/updateTokenServer.Request() span=02c23d3477447e81:1bc7960b44fa7a01:737fe5d440393302:1
Apr  8 09:53:03.592^[[36m [INFO] [name:forwarder-sriov-hctdh] ^[[0m(7.1)         request-diff={"connection":{"path":{"path_segments":{"2":{"expires":{"seconds":1617878850},"token":"eyJhbGciOiJFUzI1NiIsInR5cCI6IkpXVCJ9.eyJhdWQiOiJzcGlmZmU6Ly9leGFtcGxlLm9yZy9ucy9uc20tc3lzdGVtL3NhL2RlZmF1bHQiLCJleHAiOjE2MTc4Nzg4NTAsInN1YiI6InNwaWZmZTovL2V4YW1wbGUub3JnL25zL25zbS1zeXN0ZW0vc2EvZGVmYXVsdCJ9.eLfJxPJsQ1MaS4NWjCoYUFlWIk58J8ss7f70op98ItRxy3A48aUnNjTdDm0qwLb6Pcw6-sinbE_it1b7-Ow3-Q"}}}}} span=02c23d3477447e81:1bc7960b44fa7a01:737fe5d440393302:1
Apr  8 09:53:03.592^[[36m [INFO] [name:forwarder-sriov-hctdh] ^[[0m(8)        ⎆ sdk/pkg/networkservice/common/mechanisms/mechanismsServer.Request() span=02c23d3477447e81:52d6f817ad8066c0:1bc7960b44fa7a01:1
Apr  8 09:53:03.592^[[36m [INFO] [name:forwarder-sriov-hctdh] ^[[0m(9)         ⎆ sdk/pkg/networkservice/core/next/nextServer.Request() span=02c23d3477447e81:53d0e7da1e027ce3:52d6f817ad8066c0:1
Apr  8 09:53:03.592^[[36m [INFO] [name:forwarder-sriov-hctdh] ^[[0m(9.1)           request-diff={"connection":{"mechanism":{"cls":"LOCAL","parameters":{"+inodeURL":"inode://4/4026536945","+name":"nsm-1","+tokenID":"6dde8001-239b-48c6-a4e3-7505588b583e"},"type":"KERNEL"}}} span=02c23d3477447e81:53d0e7da1e027ce3:52d6f817ad8066c0:1
Apr  8 09:53:03.592^[[36m [INFO] [name:forwarder-sriov-hctdh] ^[[0m(10)          ⎆ sdk/pkg/networkservice/common/mechanisms/recvfd/recvFDServer.Request() span=02c23d3477447e81:5cbd59e349ae4ff8:53d0e7da1e027ce3:1
Apr  8 09:53:03.593^[[36m [INFO] [name:forwarder-sriov-hctdh] ^[[0m(10.1)            request-diff={"connection":{"mechanism":{"parameters":{"inodeURL":"file:///proc/1/fd/25"}}},"mechanism_preferences":{"0":{"parameters":{"inodeURL":"file:///proc/1/fd/25"}}}} span=02c23d3477447e81:5cbd59e349ae4ff8:53d0e7da1e027ce3:1
Apr  8 09:53:03.593^[[36m [INFO] [name:forwarder-sriov-hctdh] ^[[0m(11)           ⎆ sdk-sriov/pkg/networkservice/common/vfconfig/vfConfigServer.Request() span=02c23d3477447e81:4fec873cc1b474e5:5cbd59e349ae4ff8:1
Apr  8 09:53:03.593^[[36m [INFO] [name:forwarder-sriov-hctdh] ^[[0m(12)            ⎆ sdk-sriov/pkg/networkservice/common/resetmechanism/resetMechanismServer.Request() span=02c23d3477447e81:5a225825fc7e748f:4fec873cc1b474e5:1
Apr  8 09:53:03.593^[[36m [INFO] [name:forwarder-sriov-hctdh] ^[[0m(13)             ⎆ sdk/pkg/networkservice/core/next/nextServer.Request() span=02c23d3477447e81:77e718d191844c0c:5a225825fc7e748f:1
Apr  8 09:53:03.593^[[36m [INFO] [name:forwarder-sriov-hctdh] ^[[0m(14)              ⎆ sdk-sriov/pkg/networkservice/common/resourcepool/resourcePoolServer.Request() span=02c23d3477447e81:1d3485e3d94d9daf:77e718d191844c0c:1
Apr  8 09:53:03.593^[[36m [INFO] [name:forwarder-sriov-hctdh] [resourcePoolServer:Request] ^[[0m(14.1)                trying to select VF for kernel span=02c23d3477447e81:1d3485e3d94d9daf:77e718d191844c0c:1
Apr  8 09:53:03.593^[[36m [INFO] [name:forwarder-sriov-hctdh] [resourcePoolServer:Request] ^[[0m(14.2)                selected VF: &{address:0000:08:02.0 pciDevicesPath:/sys/bus/pci/devices pciDriversPath:/sys/bus/pci/drivers} span=02c23d3477447e81:1d3485e3d94d9daf:77e718d191844c0c:1
Apr  8 09:53:03.593^[[36m [INFO] [name:forwarder-sriov-hctdh] ^[[0m(15)               ⎆ sdk-kernel/pkg/kernel/networkservice/rename/renameServer.Request() span=02c23d3477447e81:472a92c5cb1444b9:1d3485e3d94d9daf:1
Apr  8 09:53:03.640^[[36m [INFO] [name:forwarder-sriov-hctdh] ^[[0m(16)                ⎆ sdk-kernel/pkg/kernel/networkservice/inject/injectServer.Request() span=02c23d3477447e81:1741b1c1e05150c0:472a92c5cb1444b9:1
Apr  8 09:53:03.676^[[36m [INFO] [injectServer:Request] [name:forwarder-sriov-hctdh] ^[[0m(16.1)                  moved network interface nsm-1 into the Client's namespace for connection dde93253-e93a-4fd4-b467-f52ce6f05d00 span=02c23d3477447e81:1741b1c1e05150c0:472a92c5cb1444b9:1
Apr  8 09:53:03.676^[[36m [INFO] [name:forwarder-sriov-hctdh] ^[[0m(17)                 ⎆ sdk/pkg/networkservice/core/next/nextServer.Request() span=02c23d3477447e81:5560005721351d1d:1741b1c1e05150c0:1
Apr  8 09:53:03.676^[[36m [INFO] [name:forwarder-sriov-hctdh] ^[[0m(18)                  ⎆ sdk/pkg/networkservice/common/clienturl/clientURLServer.Request() span=02c23d3477447e81:7735a0f10b8ff503:5560005721351d1d:1
Apr  8 09:53:03.676^[[36m [INFO] [name:forwarder-sriov-hctdh] ^[[0m(19)                   ⎆ sdk/pkg/networkservice/common/connect/connectServer.Request() span=02c23d3477447e81:721f0ac6c9eb31b4:7735a0f10b8ff503:1
Apr  8 09:53:03.679^[[36m [INFO] [name:forwarder-sriov-hctdh] ^[[0m(20)                    ⎆ sdk/pkg/networkservice/common/mechanismtranslation/mechanismTranslationClient.Request() span=02c23d3477447e81:68f98fc63f37ed38:721f0ac6c9eb31b4:1
Apr  8 09:53:03.679^[[36m [INFO] [name:forwarder-sriov-hctdh] ^[[0m(20.1)                      request-diff={"connection":{"mechanism":{"cls":"","parameters":{"-inodeURL":"file:///proc/1/fd/25","-name":"nsm-1","-tokenID":"6dde8001-239b-48c6-a4e3-7505588b583e"},"type":""}},"mechanism_preferences":{"-0":{"cls":"LOCAL","type":"KERNEL","parameters":{"inodeURL":"file:///proc/1/fd/25","name":"nsm-1","tokenID":"6dde8001-239b-48c6-a4e3-7505588b583e"}}}} span=02c23d3477447e81:68f98fc63f37ed38:721f0ac6c9eb31b4:1
Apr  8 09:53:03.679^[[36m [INFO] [name:forwarder-sriov-hctdh] ^[[0m(21)                     ⎆ sdk/pkg/networkservice/core/next/nextClient.Request() span=02c23d3477447e81:54e6934dfe8ed77d:68f98fc63f37ed38:1
Apr  8 09:53:03.679^[[36m [INFO] [name:forwarder-sriov-hctdh] ^[[0m(22)                      ⎆ sdk/pkg/networkservice/common/updatepath/updatePathClient.Request() span=02c23d3477447e81:75c25c36f5a7489e:54e6934dfe8ed77d:1
Apr  8 09:53:03.679^[[36m [INFO] [name:forwarder-sriov-hctdh] ^[[0m(23)                       ⎆ sdk/pkg/networkservice/common/serialize/serializeClient.Request() span=02c23d3477447e81:450f979dd58d0b53:75c25c36f5a7489e:1
Apr  8 09:53:03.679^[[36m [INFO] [name:forwarder-sriov-hctdh] ^[[0m(24)                        ⎆ sdk/pkg/networkservice/common/heal/healClient.Request() span=02c23d3477447e81:04b9cae0f19b1c7a:450f979dd58d0b53:1
Apr  8 09:53:03.679^[[36m [INFO] [name:forwarder-sriov-hctdh] ^[[0m(25)                         ⎆ sdk/pkg/networkservice/common/refresh/refreshClient.Request() span=02c23d3477447e81:1e202f23114d4143:04b9cae0f19b1c7a:1
Apr  8 09:53:03.679^[[36m [INFO] [name:forwarder-sriov-hctdh] ^[[0m(26)                          ⎆ sdk/pkg/networkservice/utils/metadata/metaDataClient.Request() span=02c23d3477447e81:26ec96a84326b461:1e202f23114d4143:1
Apr  8 09:53:03.680^[[36m [INFO] [name:forwarder-sriov-hctdh] ^[[0m(27)                           ⎆ sdk-sriov/pkg/networkservice/common/mechanisms/noop/noopClient.Request() span=02c23d3477447e81:465ac233bc563035:26ec96a84326b461:1
Apr  8 09:53:03.680^[[36m [INFO] [name:forwarder-sriov-hctdh] ^[[0m(27.1)                             request-diff={"mechanism_preferences":{"+0":{"cls":"REMOTE","type":"NOOP"}}} span=02c23d3477447e81:465ac233bc563035:26ec96a84326b461:1
Apr  8 09:53:03.680^[[36m [INFO] [name:forwarder-sriov-hctdh] ^[[0m(28)                            ⎆ sdk/pkg/networkservice/common/null/nullClient.Request() span=02c23d3477447e81:4215e01fe167a1c9:465ac233bc563035:1
Apr  8 09:53:03.680^[[36m [INFO] [name:forwarder-sriov-hctdh] ^[[0m(29)                             ⎆ api/pkg/api/networkservice/networkServiceClient.Request() span=02c23d3477447e81:7663e0dc29b84912:4215e01fe167a1c9:1
Apr  8 09:53:03.706^[[31m [ERRO] [name:forwarder-sriov-hctdh] ^[[0m(29.1)                               rpc error: code = Unknown desc = Error returned from api/pkg/api/networkservice/networkServiceClient.Request: rpc error: code = Unknown desc = cannot support any of the requested mechanism

Logs at the NSE side (when service request arrived at NSE request handler, it looks mechanism preference is already suppressed by NSMgr, may be because of cls set with Remote ?) :

Apr  8 09:53:03.688^[[36m [INFO] [name:nse-67b49dd695-6r57f] ^[[0m(1.1)   request={"connection":{"id":"780971d5-5b9e-435e-9269-5d11915f60e0","network_service":"icmp-responder","context":{"ip_context":{}},"labels":{"serviceDomain":"bap-worker"},"path":{"index":3,"path_segments":[{"name":"nsc-6797bb944-9w2jf","id":"nsc-6797bb944-9w2jf-0","token":"eyJhbGciOiJFUzI1NiIsInR5cCI6IkpXVCJ9.eyJhdWQiOiJzcGlmZmU6Ly9leGFtcGxlLm9yZy9ucy9uc20tc3lzdGVtL3NhL2RlZmF1bHQiLCJleHAiOjE2MTc4NzkxNzMsInN1YiI6InNwaWZmZTovL2V4YW1wbGUub3JnL25zL25zLXhzdGNmL3NhL2RlZmF1bHQifQ.GvyxG08Ozew2DTn4FsKQXEfPciUqMG7mRdVwyDOJ5UTWQNp6icy5rwF96i1llwKukObtFyXAUozEm2Wc9A4KeQ","expires":{"seconds":1617878850}},{"name":"nsmgr-jn2bg","id":"5e11978d-90bb-4bcc-9c7b-187022fe1a76","token":"eyJhbGciOiJFUzI1NiIsInR5cCI6IkpXVCJ9.eyJhdWQiOiJzcGlmZmU6Ly9leGFtcGxlLm9yZy9ucy9uc20tc3lzdGVtL3NhL2RlZmF1bHQiLCJleHAiOjE2MTc4Nzg4NTAsInN1YiI6InNwaWZmZTovL2V4YW1wbGUub3JnL25zL25zbS1zeXN0ZW0vc2EvZGVmYXVsdCJ9.hGYfMvzAFnh2H-iApv57QNKmCu620nTE85rp3A0oeRax1mVCpfANTITsoymIP8EUcWxf5pgqQ05Exnlu-cTesA","expires":{"seconds":1617878850}},{"name":"forwarder-sriov-hctdh","id":"dde93253-e93a-4fd4-b467-f52ce6f05d00","token":"eyJhbGciOiJFUzI1NiIsInR5cCI6IkpXVCJ9.eyJhdWQiOiJzcGlmZmU6Ly9leGFtcGxlLm9yZy9ucy9uc20tc3lzdGVtL3NhL2RlZmF1bHQiLCJleHAiOjE2MTc4Nzg4NTAsInN1YiI6InNwaWZmZTovL2V4YW1wbGUub3JnL25zL25zbS1zeXN0ZW0vc2EvZGVmYXVsdCJ9.MYa7yCtJ9yPx8LccjW5GDcWdgN5k_U9Hpz80UJTqogQ7gGWts873-1WerbytbB1k8NjTq3YqtPBW32luYuV6uQ","expires":{"seconds":1617878850}},{"name":"nsmgr-jn2bg","id":"780971d5-5b9e-435e-9269-5d11915f60e0","token":"eyJhbGciOiJFUzI1NiIsInR5cCI6IkpXVCJ9.eyJhdWQiOiJzcGlmZmU6Ly9leGFtcGxlLm9yZy9ucy9uc20tc3lzdGVtL3NhL2RlZmF1bHQiLCJleHAiOjE2MTc4Nzg4NTAsInN1YiI6InNwaWZmZTovL2V4YW1wbGUub3JnL25zL25zbS1zeXN0ZW0vc2EvZGVmYXVsdCJ9.6I1k28cAI1WajN596TnYNH-sXtKao68FNRHd8XVigF749VjqwMwyklQQQyddS2LVmg8M3nssJnIsSoyeHYaHjA","expires":{"seconds":1617878850}}]},"network_service_endpoint_name":"a55348b5-9e77-494a-a95c-6ce46fa8b458-nse-67b49dd695-6r57f"}} span=5079e225e672f98a:7536565160c4179b:06e7fafea421142b:1
Apr  8 09:53:03.688^[[36m [INFO] [name:nse-67b49dd695-6r57f] ^[[0m(1.2)   request-diff={"connection":{"id":"51b857f4-7c31-40a6-9e0a-f0701fdc130d","path":{"index":4,"path_segments":{"+4":{"name":"nse-67b49dd695-6r57f","id":"51b857f4-7c31-40a6-9e0a-f0701fdc130d"},"3":{"token":"eyJhbGciOiJFUzI1NiIsInR5cCI6IkpXVCJ9.eyJhdWQiOiJzcGlmZmU6Ly9leGFtcGxlLm9yZy9ucy9ucy14c3RjZi9zYS9kZWZhdWx0IiwiZXhwIjoxNjE3ODc4ODUwLCJzdWIiOiJzcGlmZmU6Ly9leGFtcGxlLm9yZy9ucy9uc20tc3lzdGVtL3NhL2RlZmF1bHQifQ.ZjrRteTOAGPVrUANNgPmzzVudSNx5wM3_Ev3fZSkzraGaiKBJsfr364l0FuECA_OvTdR0K0CHEdbqa-KFnApfQ"}}}}} span=5079e225e672f98a:7536565160c4179b:06e7fafea421142b:1
Apr  8 09:53:03.689^[[36m [INFO] [name:nse-67b49dd695-6r57f] ^[[0m(2)  ⎆ sdk/pkg/networkservice/common/authorize/authorizeServer.Request() span=5079e225e672f98a:3fe47297f3660473:7536565160c4179b:1
Apr  8 09:53:03.689^[[36m [INFO] [name:nse-67b49dd695-6r57f] ^[[0m(3)   ⎆ sdk/pkg/networkservice/common/serialize/serializeServer.Request() span=5079e225e672f98a:30ddfb8a91a6ef0c:3fe47297f3660473:1
Apr  8 09:53:03.689^[[36m [INFO] [name:nse-67b49dd695-6r57f] ^[[0m(4)    ⎆ sdk/pkg/networkservice/common/timeout/timeoutServer.Request() span=5079e225e672f98a:5d11038f1628ebc7:30ddfb8a91a6ef0c:1
Apr  8 09:53:03.689^[[36m [INFO] [name:nse-67b49dd695-6r57f] ^[[0m(5)     ⎆ sdk/pkg/networkservice/utils/metadata/metadataServer.Request() span=5079e225e672f98a:7e92d644c3ec5f55:5d11038f1628ebc7:1
Apr  8 09:53:03.689^[[36m [INFO] [name:nse-67b49dd695-6r57f] ^[[0m(6)      ⎆ sdk/pkg/networkservice/common/monitor/monitorServer.Request() span=5079e225e672f98a:44bdfff1ac6a1028:7e92d644c3ec5f55:1
Apr  8 09:53:03.689^[[36m [INFO] [name:nse-67b49dd695-6r57f] ^[[0m(7)       ⎆ sdk/pkg/networkservice/common/updatetoken/updateTokenServer.Request() span=5079e225e672f98a:077bafde8e362c3b:44bdfff1ac6a1028:1
Apr  8 09:53:03.689^[[36m [INFO] [name:nse-67b49dd695-6r57f] ^[[0m(7.1)         request-diff={"connection":{"path":{"path_segments":{"4":{"expires":{"seconds":1617878850},"token":"eyJhbGciOiJFUzI1NiIsInR5cCI6IkpXVCJ9.eyJhdWQiOiJzcGlmZmU6Ly9leGFtcGxlLm9yZy9ucy9uc20tc3lzdGVtL3NhL2RlZmF1bHQiLCJleHAiOjE2MTc4NzkxNzMsInN1YiI6InNwaWZmZTovL2V4YW1wbGUub3JnL25zL25zLXhzdGNmL3NhL2RlZmF1bHQifQ.btyxWFZx06LE9DK1oG6Rn9EaI_V-G1vv85EXzE6E44BgU_tRlS-XzMqcDbZbnO6LjYn-FQgau2X4HqgdwTiSzA"}}}}} span=5079e225e672f98a:077bafde8e362c3b:44bdfff1ac6a1028:1
Apr  8 09:53:03.689^[[36m [INFO] [name:nse-67b49dd695-6r57f] ^[[0m(8)        ⎆ sdk/pkg/networkservice/ipam/point2pointipam/ipamServer.Request() span=5079e225e672f98a:14f4f33dbc3debb5:077bafde8e362c3b:1
Apr  8 09:53:03.690^[[36m [INFO] [name:nse-67b49dd695-6r57f] ^[[0m(8.1)          request-diff={"connection":{"context":{"ip_context":{"dst_ip_addr":"172.16.1.100/32","dst_routes":{"+0":{"prefix":"172.16.1.101/32"}},"src_ip_addr":"172.16.1.101/32","src_routes":{"+0":{"prefix":"172.16.1.100/32"}}}}}} span=5079e225e672f98a:14f4f33dbc3debb5:077bafde8e362c3b:1
Apr  8 09:53:03.690^[[36m [INFO] [name:nse-67b49dd695-6r57f] ^[[0m(9)         ⎆ sdk/pkg/networkservice/common/mechanisms/recvfd/recvFDServer.Request() span=5079e225e672f98a:10a2454e0e0d6b23:14f4f33dbc3debb5:1
Apr  8 09:53:03.690^[[36m [INFO] [name:nse-67b49dd695-6r57f] ^[[0m(10)          ⎆ sdk/pkg/networkservice/common/mechanisms/mechanismsServer.Request() span=5079e225e672f98a:578deaa3e0f867f5:10a2454e0e0d6b23:1
Apr  8 09:53:03.690^[[31m [ERRO] [name:nse-67b49dd695-6r57f] ^[[0m(10.1)            cannot support any of the requested mechanism span=5079e225e672f98a:578deaa3e0f867f5:10a2454e0e0d6b23:1

Steps to reproduce:

Running this example on a single node k8s cluster.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.